[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Is there an IT test for a tab-width spacer?
From: |
Keith David Bershatsky |
Subject: |
Is there an IT test for a tab-width spacer? |
Date: |
Tue, 24 Oct 2017 17:59:47 -0700 |
I am working on implementing crosshairs (17684) and multiple fake cursors
(22873).
it.c lets us know whether we are on the initial tab that has been assigned a
character by the user with the buffer-display-table, e.g., 187/ยป.
it.c also lets us know whether we have moved beyond that location to a tab
without a character; i.e., 9, aka (char-to-string 9).
I am having trouble calculating the X and HPOS for each and every location
between the initial tab and the next textual character. A buffer-display-table
for a tab that is assigned a leading 187 followed by a 9 has a minimum
tab-width of 2. Even though the buffer-local value for tab-width may be 2,
that combination of 187/9 might be a total of 3 characters wide depending upon
the circumstances. And as the user increases the buffer-local tab-width value,
it seemingly becomes more difficult to predict the X and HPOS.
Inching along with a test similar to line 22682 in xdisp.c seems insufficient
for this particular project: while (it.current_x + it.pixel_width <= target_x).
To analyze the width of the spacer and calculate the X and HPOS for each
location within that space, is it necessary to go to the next character and
then mathematically determine what the previous tab-width was?
Thanks,
Keith
- Is there an IT test for a tab-width spacer?,
Keith David Bershatsky <=