From: Eli Zaretskii <eliz@gnu.org>
To: Michael Brand <michael.ch.brand@gmail.com>
Cc: 5018@debbugs.gnu.org
Subject: bug#5018: 23.1.50; Feature request: truncate-lines text property
Date: Mon, 05 Jun 2017 18:42:12 +0300 [thread overview]
Message-ID: <83fufea1bf.fsf@gnu.org> (raw)
In-Reply-To: <CALn3zoj8xJc+pQv_Qa9PMEgS75on7X3=c=TG9K-7Gh0XATmGKQ@mail.gmail.com> (message from Michael Brand on Mon, 5 Jun 2017 11:29:54 +0200)
> From: Michael Brand <michael.ch.brand@gmail.com>
> Date: Mon, 5 Jun 2017 11:29:54 +0200
> Cc: 5018@debbugs.gnu.org
>
> > Would you like to work on implementing this feature? I can provide
> > guidance if needed.
>
> I can try. Maybe too ambitious for me or at least for me alone. I am
> new for example to the style of C in Emacs and to the display engine.
> And as usual for everybody my time is limited but as I have a need for
> this feature since maybe years I could compensate a bit with patience
> unless anybody wants to beat me.
If you decide to try it, I suggest to start by looking at my recent
changes that introduced hscrolling of only the current line. This
feature should use similar techniques and touch the same places.
> > . what text is supposed to have this property to mark the line as
> > truncated, and how will Emacs know where the effect of the
> > property ends? e.g., will we require the property to be set on
> > the entire line, including the newline, or will it be enough to
> > set it only on part of the line?
>
> The property only on \n looks good at first sight
The property on a newline makes the preceding line truncated or the
following line? If the former, than what about the last line in a
buffer that doesn't end in a newline? Also, looking for the property
in a very long line could slow down redisplay, since it would need to
know about this when it gets to the first character of the line.
> Anyway, I don't know if a text property will be the right solution in
> the end.
What other solution is possible?
> > . when point moves along a line which is being truncated, and goes
> > outside of the visible portion of the window, how do we want to
> > hscroll the text in the window, in those parts that display lines
> > which wrap?
>
> This made me think most.
>
> My first thought was:
>
> Truncate on the left in sync with truncated lines and rewrap on the
> right
>
> : #################
> : trunc1 tr#$unc2 trunc3 t$#
> : wrap1 wra#$p2 wrap3 wrap\#
> : 4 wrap5 w#$rap6 wrap7 wr\#
> : ap8 # #
> : #################
>
> would lower or avoid column-related problems like with rectangle edit
> or ruler-mode. On the other hand I hope that changing what is the
> buffer bottom line after rewrap would not call for other problems.
>
> But what would it help to wrap on the right when information is
> already hidden on the left? So...
>
> My second thought is:
>
> Fall back to truncate all lines
>
> : #################
> : trunc1 tr#$unc2 trunc3 t$#
> : wrap1 wra#$p2 wrap3 wrap$#
> : more line#$s #
> : even more#$ lines #
> : #################
>
> until column 0 becomes visible again is probably much easier, also for
> the user to understand what happens.
It could well be that the first variant is easier to implement.
> Should this discussion move to emacs-devel to reach more developers?
I'm not sure. Most if not all of the relevant people read the bug
list as well. Perhaps post a short message to emacs-devel telling the
interested people to read this discussion either via the bug tracker
or via the bug-gnu-emacs list.
next prev parent reply other threads:[~2017-06-05 15:42 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-23 10:33 bug#5018: 23.1.50; Feature request: truncate-lines text property Carsten Dominik
2017-06-04 18:11 ` bug#5018: Michael Brand
2017-06-04 19:05 ` bug#5018: 23.1.50; Feature request: truncate-lines text property Eli Zaretskii
2017-06-05 9:29 ` Michael Brand
2017-06-05 15:42 ` Eli Zaretskii [this message]
2017-06-06 19:40 ` Michael Brand
2017-06-07 4:53 ` Eli Zaretskii
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=83fufea1bf.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=5018@debbugs.gnu.org \
--cc=michael.ch.brand@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.