unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#58804: Inconsistency between ruler-mode, fill-column and whitespace-mode
@ 2022-10-26 20:22 Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2022-10-27  5:38 ` Eli Zaretskii
  0 siblings, 1 reply; 5+ messages in thread
From: Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-10-26 20:22 UTC (permalink / raw)
  To: 58804

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, but it should be at column 71 because
column numbers start from 0.  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.









^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#58804: Inconsistency between ruler-mode, fill-column and whitespace-mode
  2022-10-26 20:22 bug#58804: Inconsistency between ruler-mode, fill-column and whitespace-mode Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2022-10-27  5:38 ` Eli Zaretskii
  2022-10-27  6:15   ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 1 reply; 5+ messages in thread
From: Eli Zaretskii @ 2022-10-27  5:38 UTC (permalink / raw)
  To: Heime; +Cc: 58804

> Date: Wed, 26 Oct 2022 20:22:37 +0000
> From:  Heime via "Bug reports for GNU Emacs,
>  the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
> 
> 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.

> 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.

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?





^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#58804: Inconsistency between ruler-mode, fill-column and whitespace-mode
  2022-10-27  5:38 ` Eli Zaretskii
@ 2022-10-27  6:15   ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2022-10-27  6:34     ` Eli Zaretskii
  0 siblings, 1 reply; 5+ messages in thread
From: Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-10-27  6:15 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 58804

------- Original Message -------
On Thursday, October 27th, 2022 at 5:38 AM, Eli Zaretskii <eliz@gnu.org> 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" bug-gnu-emacs@gnu.org
> > 
> > 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.






^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#58804: Inconsistency between ruler-mode, fill-column and whitespace-mode
  2022-10-27  6:15   ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2022-10-27  6:34     ` Eli Zaretskii
  2022-10-27  7:10       ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 1 reply; 5+ messages in thread
From: Eli Zaretskii @ 2022-10-27  6:34 UTC (permalink / raw)
  To: Heime; +Cc: 58804

> Date: Thu, 27 Oct 2022 06:15:23 +0000
> From: Heime <heimeborgia@protonmail.com>
> Cc: 58804@debbugs.gnu.org
> 
> > > 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.

So I guess this is a bug in whitespace-mode?  Its doc string says:

   lines-char           lines which have columns beyond
                        ‘whitespace-line-column’ are highlighted via
                        putting a face on the first character that goes
                        beyond the ‘whitespace-line-column’ column.

So highlighting the character whose column is whitespace-line-column,
not whitespace-line-column+1, seems to be a bug?

> 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.

That's what happens now (and box cursor is the default cursor style).
The problem seems to be in whitespace-mode, not in ruler-mode.

> > 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".

I don't think I understand the relevance of the cursor-type to this
issue.

> 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.

That would need some new minor mode or user option, I guess, and
suitable changes in several places to follow the optional behavior.
Patches welcome.





^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#58804: Inconsistency between ruler-mode, fill-column and whitespace-mode
  2022-10-27  6:34     ` Eli Zaretskii
@ 2022-10-27  7:10       ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 0 replies; 5+ messages in thread
From: Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-10-27  7:10 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 58804

------- Original Message -------
On Thursday, October 27th, 2022 at 6:34 AM, Eli Zaretskii <eliz@gnu.org> wrote:


> > Date: Thu, 27 Oct 2022 06:15:23 +0000
> > From: Heime heimeborgia@protonmail.com
> > Cc: 58804@debbugs.gnu.org
> > 
> > > > 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.
> 
> So I guess this is a bug in whitespace-mode? Its doc string says:

Looking carefully, all are correct.  But quite confusing when using them
together.  Particularly for some of us who like to work in an intuitive 
and visual manner. 
 
What would help is for the user to be able to adapt numbering system
to their working style.  Perhaps leave everything as is by default,
but allow some user modifications to ruler-mode and column-number-mode.
"whitespace-mode" works well as it is.

> lines-char lines which have columns beyond
> ‘whitespace-line-column’ are highlighted via
> putting a face on the first character that goes
> beyond the ‘whitespace-line-column’ column.
> 
> So highlighting the character whose column is whitespace-line-column,
> not whitespace-line-column+1, seems to be a bug?
> 
> > 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.
> 
> 
> That's what happens now (and box cursor is the default cursor style).
> The problem seems to be in whitespace-mode, not in ruler-mode.
> 
> > > 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".
> 
> I don't think I understand the relevance of the cursor-type to this
> issue.

The cursor-type is the source of the confusion.  With a bar, one can easily see
that it is the beginning of the character beyond fill-column, which also corresponds
to column-number-mode.  But things get non-intuitive when using 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.
> 
> 
> That would need some new minor mode or user option, I guess, and
> suitable changes in several places to follow the optional behavior.
> Patches welcome.

An option would be easier for users.





^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-10-27  7:10 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-26 20:22 bug#58804: Inconsistency between ruler-mode, fill-column and whitespace-mode Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-27  5:38 ` Eli Zaretskii
2022-10-27  6:15   ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-27  6:34     ` Eli Zaretskii
2022-10-27  7:10       ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors

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).