Subject: bug#58804: Inconsistency between ruler-mode, fill-column and whitespace-mode

From: Heime <[email-masked]>
Date: Thu, 27 Oct 2022 06:15:23 +0000

------- Original Message -------
On Thursday, October 27th, 2022 at 5:38 AM, Eli Zaretskii <[email-masked]> wrote:

> > Date: Wed, 26 Oct 2022 20:22:37 +0000
> > From: Heime via "Bug reports for GNU Emacs,
> > the Swiss army knife of text editors" [email-masked]
> > 
> > Having set both fill-column and whitespace-line-column to 72, I noticed the following.
> > 
> > ruler-mode has the left end marker at column 72
> 
> 
> Do you mean "right end marker"? I see no end marker at the left part
> of the display here, only the ¶ marker at the right.

Right End Marker actually.
 
> > but it should be at column 71 because column numbers start from 0.
> 
> 
> I don't follow: ruler-mode counts columns starting from zero, as
> everything in Emacs. If you move point to a column other than the
> leftmost one, you will see "0" at the left edge of the ruler display.
> So having the marker at column 72 is exactly right.

When one is using a box cursor, it is very confusing.  If one has 
whitespace-style with 'lines-char, the column with the Right Ruler Marker 
gets highlighted.  When users have a box cursor, it is convenient that
the Right Ruler Marker is placed on the last column where it is acceptable
to introduce a last character without exceeding line-column.  Don't have
users always having to remember to add or subtract 1 in their head, but 
have use visual reference for the last valid column.

Perhaps, you could introduce a new marker for that, and decide which one 
to use?  You could have an option to select the starting number, 0 or 1.

Or you might have something better in mind that would work well visually.
Particularly for those of us using box cursor.

> Are you seeing this in "emacs -Q"?
> 
> > Here an improvement would be appreciated. That is, having
> > the ability to show a ruler variant that starts from value 1. When one uses a block cursor,
> > the ruler left marker would then mark exactly column 72. The user will knew that if he inputs
> > the next character he would have reached the line limit and the ruler left marker would coincide
> > with that position.
 
> It sounds like you want column numbers that start from 1, not zero?
> That should be a session-wide mode (if we want such an enhancement),
> since otherwise there could be confusion. We currently support
> one-based column only in the mode-line display under
> column-number-mode. Maybe you have turned that on, which is why you
> think there's a mismatch in ruler-mode?

Yes, to start from 1, not zero - when one uses a "box cursor".  And yes,
I have both ruler-mode, whitespace-mode, and column-number-mode, all three
enabled.  I would appreciate if I could make the necessary customisations
for all three to match.