bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#56176: 28.1.50; csv-align-mode misaligns when display-line-numbers-m


From: Stefan Monnier
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
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)

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 via email to

[Prev in Thread] Current Thread [Next in Thread]