From: storm@cua.dk (Kim F. Storm)
Cc: cyd@stupidchicken.com, emacs-devel@gnu.org
Subject: Re: Line wrapping during redisplay
Date: Fri, 22 Jul 2005 11:12:51 +0200 [thread overview]
Message-ID: <m3irz3dx0s.fsf@kfs-l.imdomain.dk> (raw)
In-Reply-To: <E1DvpZb-00034j-87@fencepost.gnu.org> (Richard M. Stallman's message of "Fri, 22 Jul 2005 00:55:47 -0400")
"Richard M. Stallman" <rms@gnu.org> writes:
> Perhaps you would like to experiment a little with the following patch
> which implements non-destructive line-wrapping during redisplay, i.e.
> it automatically breaks _displayed_ lines at suitable spaces and tabs.
>
> With this approach, the commands that operate on lines in the buffer
> will all treat the paragraph as one line, even though it appears as
> several. That is extremely inconvenient. There is a package that
> redefines the most common commands, but there are others, including
> M-x occur. User programs also look at lines.
It is no different from how continued lines are handled in the
current code. The only real difference is that continued lines
break at spaces rather than at some arbitrary column which happens
to be the width of the window.
So although it is not useful for line wrapping in general,
perhaps it could be useful for a nicer way to handle continued lines.
For example, we could have a setting wrap-column = t which means
to use the actual width of the window for wrapping -- to get the
effect of continuation lines, but with a "human touch" to where
redisplay actually breaks continued lines.
I don't claim that the wrap-column functionality would replace any
of the existing packages -- but it may be useful for some things...
>
> I strongly prefer the approach in longlines.el, because the line
> breaks are there in the buffer, so that all sorts of commands that
> look for line breaks will see them where the user sees them.
I am not against the approach of longlines -- if it can be fixed to
work with proportional-width fonts, images, overlays, etc.
But IIRC longlines also has some problems with line movement -- wasn't
that what longlines-2 should fix ... ?
>
> Here's a peculiar idea. Make it possible for an overlay to make a
> space "appear" as a newline or vice versa. The result is a change in
> the apparent contents of the buffer, for display purposes and for some
> commands. But killing and yanking would not copy these overlays
> (since they don't copy any overlays).
Would it have the same problems with line movement being out of sync
with what's displayed in the window...
--
Kim F. Storm <storm@cua.dk> http://www.cua.dk
next prev parent reply other threads:[~2005-07-22 9:12 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-07-11 23:41 longlines.el problems David Kastrup
2005-07-12 17:05 ` Chong Yidong
2005-07-21 13:59 ` Line wrapping during redisplay (was: longlines.el problems...) Kim F. Storm
2005-07-21 16:59 ` Line wrapping during redisplay David Kastrup
2005-07-22 11:43 ` Chong Yidong
2005-07-22 22:52 ` Richard M. Stallman
2005-07-22 4:55 ` Line wrapping during redisplay (was: longlines.el problems...) Richard M. Stallman
2005-07-22 9:12 ` Kim F. Storm [this message]
2005-07-22 22:51 ` Line wrapping during redisplay Richard M. Stallman
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=m3irz3dx0s.fsf@kfs-l.imdomain.dk \
--to=storm@cua.dk \
--cc=cyd@stupidchicken.com \
--cc=emacs-devel@gnu.org \
/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.