all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Young Arto <jifengsi@hotmail.com>
Cc: 68441@debbugs.gnu.org
Subject: bug#68441: 回复: bug#68441: Fix the unaligned tab in whitespace mode
Date: Sun, 28 Jan 2024 13:09:50 +0200	[thread overview]
Message-ID: <86bk9567ep.fsf@gnu.org> (raw)
In-Reply-To: <MEYP282MB1766C761E3608C605C0A25F3907F2@MEYP282MB1766.AUSP282.PROD.OUTLOOK.COM> (message from Young Arto on Sun, 28 Jan 2024 10:43:16 +0000)

> From: Young Arto <jifengsi@hotmail.com>
> CC: "68441@debbugs.gnu.org" <68441@debbugs.gnu.org>
> Date: Sun, 28 Jan 2024 10:43:16 +0000
> 
>  So this patch changes long-standing behavior in non-trivial ways, and
>  I'm not sure what it can break, after so many years.  I understand
>  that it makes certain customizations in whitespace-mode look better on
>  display in some cases, but display-tables are used in Emacs not just
>  in whitespace-mode.
> 
> Yes, You are right. In fact, I'm not sure what it can break either. So I have
> used this patch locally for about one year with self-compiled emacs29.
> Fortunately, it didn't bring any side effects for me.  However, of course,
> I cannot cover every function and every package for emacs.
> 
> It is really fundamental code. On the other hand, it is also annoying to
> use whitespace-mode with unaligned tabs-mark. Would you be happy
> if I add an option for this behavior like 'display-vector-limit-tab' which
> defaults to nil? Finally, it won't change default behavior for all emacsers
> and anybody like me who has trouble with this issue can turn it on in
> their configuration file so they can test if it has side effects for them or
> they can share this fix.

Adding an option is better, but I'm not sure I understand in what
circumstances that option will affect the display of a TAB that comes
from a display vector.  Your changes seem to have some conditions
whose exact rationale and effect are not clear to me.  I mean the
following conditions:

   . it->current.dpvec_index > 0
   . absolute_x % it->tab_width == 0

What are the reasons for each of these conditions, and what kinds of
display-table entries they are supposed to support?

Also, did you test the results in situations like line-truncation and
display-line-numbers-mode, including the combination of the two?  And
what about visual-line-mode?  And what about line-prefix and
wrap-prefix?

See, the Emacs display engine supports a gazillion of features, so the
effect of these changes in each of these situations should be well
understood, otherwise we will be unable to document the expected
effect of the option you are suggesting to introduce.

Thanks.





      reply	other threads:[~2024-01-28 11:09 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-13 12:23 bug#68441: Fix the unaligned tab in whitespace mode Young Arto
2024-01-14 10:14 ` Eli Zaretskii
2024-01-28 10:43   ` bug#68441: 回复: " Young Arto
2024-01-28 11:09     ` Eli Zaretskii [this message]

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=86bk9567ep.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=68441@debbugs.gnu.org \
    --cc=jifengsi@hotmail.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.