Subject: bug#34858: indent-relative called with prefix calls tab-to-tab-stop

From: Eli Zaretskii <[email-masked]>
Date: Thu, 14 Mar 2019 20:02:32 +0200

> From: Alex <[email-masked]>
> Cc: Alex Branham <[email-masked]>,  [email-masked]
> Date: Thu, 14 Mar 2019 10:45:32 -0600
> 
> Eli Zaretskii <[email-masked]> writes:
> 
> >> From: Alex Branham <[email-masked]>
> >> Date: Thu, 14 Mar 2019 10:35:13 -0500
> >> 
> >> If the previous nonblank line has no indent points beyond the
> >> column point starts at, then `tab-to-tab-stop' is done, if both
> >> FIRST-ONLY and UNINDENTED-OK are nil, otherwise nothing is done
> >> in this case.
> >> 
> >> Yet in a buffer like this:
> >> 
> >> foo
> >> 
> >> with point at the beginning of line, C-u M-x indent-relative results in:
> >> 
> >>         test
> >> 
> >> I'm happy to submit a patch fixing this, but should it update the
> >> documentation to match what happens or should it update the code to
> >> match the documentation?
> >
> > I think this is a documentation bug, as it doesn't describe the
> > special case of "no previous nonblank line".
> 
> I believe that the case of "no previous nonblank line" could be
> considered as there being a single indent point at column 0, so if
> FIRST-ONLY is non-nil, then `tab-to-tab-stop' shouldn't be called. How
> about the following patch instead?

I don't understand what you are saying here.  The doc string says "no
indent point _beyond_" the column where point starts, so assuming a
single indent point at column zero doesn't change anything.