all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: Leo <sdl.web@gmail.com>
Cc: emacs-devel@gnu.org
Subject: Re: visual-line-mode and line wrapping
Date: Mon, 24 May 2010 16:26:44 -0400	[thread overview]
Message-ID: <jwvr5l1awn3.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <xbaiwrutf6qx.fsf@cam.ac.uk> (Leo's message of "Mon, 24 May 2010 20:18:46 +0100")

> There's clearly desire for it.  Otherwise Lennart wouldn't have created
> that wrap fill mode.  Screens are getting wider so having lines of 200
> chars is painful to read.

You're preaching to the choir here (why do you think we have an "80
columns max" limit on C and Elisp code?).
But some people have been using >=1600 horizontal pixels for more than
10 years and that's not been a problem.  The real problem is not that
screens are getting larger, but that people don't have to pay real money
for that real-estate any more, so they don't care about using
it efficiently, and they end up suffering from their sloppiness.

I think that adjusting margins is an absurd waste of screen real-estate,
but at least (compared to your suggestion) it doesn't leave the fringe
icons far away from the text, so I think it's a better solution than
a wrap-width.  Of course, splitting windows is an even better solution.

> Using fringes or margins (now that I have tried it and I can imagine how
> Lennart implement his mode) are all workarounds and they are not much
> different than opening up a frame with the desired width but then it is
> a waste of screen estate and it has impact on productivity.

How would a wrap-width waste less screen estate or have less impact
on productivity?

>> You can also split the window to set its width as desired. That will let
>> you use the extra horizontal space for something useful.
> This is also another workaround,

Not at all.  And it's additionally a first step to working more efficiently.

> The thing is very easy to lose the setup, C-x 1, switch buffer etc etc.

Ah, now you're talking.  Sadly for your two examples, sadly, I don't know
what to tell you:
- why would you do C-x 1 in a "whole screen" Emacs frame?
- switch-to-buffer is not a problem as long as all your buffers use the
  same width.  Hence the "80 columns" rule.
But indeed window management is something that requires improvement.
Better UI to access and manipulate window configurations might be
a good solution.

But also, we could introduce a buffer-local var "natural-width" which
would be similar to wrap-width but would not directly control anything
related to display: it would simply declare that the buffer's content
was formatted with the intention of seeing/editing it in a buffer of
that width.  Then the window-management (via things like
fit-window-to-buffer or by resizing margins if you so prefer) could
better automatically resize windows, so that switch-to-buffer could DTRT
when switching between buffers of different "natural-width".
The only problem I have with that, is that there are very few good
reasons to set natural-width to anything significantly different from 80
since it is related not so much to computer technology as to the human's
vision system.


        Stefan



  parent reply	other threads:[~2010-05-24 20:26 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-24 14:09 visual-line-mode and line wrapping Leo
2010-05-24 14:12 ` Lennart Borgman
2010-05-24 15:08   ` Leo
2010-05-24 15:29     ` Lennart Borgman
2010-05-24 16:42       ` Leo
2010-05-24 17:41         ` Lennart Borgman
2010-05-24 17:34 ` Stefan Monnier
2010-05-24 19:18   ` Leo
2010-05-24 19:31     ` Chong Yidong
2010-05-24 19:53       ` Leo
2010-05-24 20:33         ` Lennart Borgman
2010-05-24 19:58       ` Lennart Borgman
2010-05-24 20:27         ` Leo
2010-05-24 20:36           ` Lennart Borgman
2010-05-25  1:05         ` Johan Bockgård
2010-05-24 20:26     ` Stefan Monnier [this message]
2010-05-24 21:26       ` Lennart Borgman
2010-05-25 12:59         ` Sean Sieger
2010-05-25  5:10       ` Leo
2010-05-25  7:37   ` Miles Bader
2010-05-25 10:05     ` João Távora
2010-05-25 11:11       ` Lennart Borgman
2010-05-25 13:27         ` João Távora
2010-05-25 11:09     ` Lennart Borgman
2010-05-25 14:04     ` Stefan Monnier
2010-05-25 14:18       ` Lennart Borgman
2010-05-25 15:06         ` Drew Adams
2010-05-25 14:49       ` Drew Adams
2010-05-25 16:33       ` Leo
2010-05-25  8:36   ` Uday S Reddy
2010-05-25 11:48     ` Stephen J. Turnbull
2010-05-25 13:16       ` Uday S Reddy
2010-05-25 14:40         ` Drew Adams
2010-06-05  9:21     ` Uday S Reddy
2010-06-07 20:34       ` Stefan Monnier
  -- strict thread matches above, loose matches on Subject: below --
2010-05-25  2:52 MON KEY

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=jwvr5l1awn3.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=emacs-devel@gnu.org \
    --cc=sdl.web@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.