unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Monnier via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
To: Lars Ingebrigtsen <larsi@gnus.org>
Cc: Joost Kremers <joostkremers@fastmail.fm>, 56176@debbugs.gnu.org
Subject: bug#56176: 28.1.50; csv-align-mode misaligns when display-line-numbers-mode is on
Date: Mon, 27 Jun 2022 08:55:07 -0400	[thread overview]
Message-ID: <jwvczeu6zrb.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <87zgi2qu3r.fsf@gnus.org> (Lars Ingebrigtsen's message of "Fri, 24 Jun 2022 11:38:32 +0200")

Lars Ingebrigtsen [2022-06-24 11:38:32] wrote:
> Joost Kremers <joostkremers@fastmail.fm> writes:
>> I work with csv files with long lines, which do not fit the window. If I
>> activate csv-align-mode and display-line-numbers-mode, then move to the end of a
>> line (so that the first few columns are not visible anymore), the columns that
>> are visible are no longer properly aligned. If I disable
>> display-line-numbers-mode, they are propely aligned again.
>>
>> I could attach some screen shots showing the problem, but I'm not sure
>> attachments are allowed here. Let me know if I should.
> Attachments are allowed, but I can reproduce the problem without them.
> The problem seems to be in the computations in csv--jit-align, which
> don't take the line numbers mode area into account.  But after poking at
> it for a couple of minutes, it's not immediately clear to me what the
> algorithm is actually doing, so I've added Stefan to the CCs.

I'm not sure the problem is on `csv-mode.el`, tho.
I just tried it on a TSV file of mine where I can indeed see incorrect
alignment (tho it is correct both when displaying the leftmost columns
and when displaying the rightmost column: the errors show up only when
I scrolled in the middle for me).

But when I look with `C-u C-x =` at the TAB separator between two
columns, I see that two misaligned separators both show:

  display              (space :align-to 63)

and when I try `M-: (current-column)` I see that one of them says 60 and
the other says 61, so both elastic spaces *should* end at the same
column 63, AFAICT, even tho they clearly don't on my screen.  Also, the
60 -vs- 61 is odd because the column position on screen of those two
positions differs by 3 rather than by 1, according to my eyes.

So, my crystal ball suggests the error might be in the redisplay.


        Stefan






  reply	other threads:[~2022-06-27 12:55 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-23 19:26 bug#56176: 28.1.50; csv-align-mode misaligns when display-line-numbers-mode is on Joost Kremers
2022-06-24  9:38 ` Lars Ingebrigtsen
2022-06-27 12:55   ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors [this message]
2022-06-27 13:03     ` Eli Zaretskii
2022-06-27 15:27       ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-06-29 17:19         ` Eli Zaretskii
2022-06-30  9:23           ` Lars Ingebrigtsen

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=jwvczeu6zrb.fsf-monnier+emacs@gnu.org \
    --to=bug-gnu-emacs@gnu.org \
    --cc=56176@debbugs.gnu.org \
    --cc=joostkremers@fastmail.fm \
    --cc=larsi@gnus.org \
    --cc=monnier@iro.umontreal.ca \
    /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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).