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

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

bug#51530: 28.0.50; allout cannot advance to next visible heading


From: Stephen Berman
Subject: bug#51530: 28.0.50; allout cannot advance to next visible heading
Date: Sun, 31 Oct 2021 23:48:12 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.60 (gnu/linux)

On Sun, 31 Oct 2021 16:10:06 -0400 Edmund Kademan <ed@kademan.org> wrote:

> Eli Zaretskii <eliz@gnu.org> writes:
>
>>> From: Edmund Kademan <ed@kademan.org>
>>> Date: Sun, 31 Oct 2021 12:26:57 -0400
>>>
>>> When you:
>>>   - are in allout mode and
>>>   - are not truncating lines and
>>>   - have your cursor on the heading of an entry that contains a line so
>>>     long that it wraps around to the left margin and
>>>   - try to run the command allout-next-visible-heading (C-c C-o C-a C-n)
>>> the command never completes.
>>
>> Thanks.
>>
>> I don't use this mode, so could you please send the minimal file
>> needed to reproduce this issue?
>
> Thank you for responding so promptly.  The attached file demonstrates
> the problem.  I have a personal work-around so there's no urgency as
> far as I'm concerned.
>
> -*- mode: allout -*-
>
> * topic 1
> Configure emacs so that
> lines in this topic fit
> the screen without hitting the right
> margin.  To go to topic 2 put
> your cursor on the asterisk
> above and hit "n" to run
> `allout-next-visible-heading'.
>
> * topic 2
> Now with your cursor on topic 2's
> asterisk, hit "n" again to go to
> topic 3.  This time emacs just
> spins its wheels.
> Here is a very long line that wraps around on your display when you are not 
> truncating lines.  Make your emacs window narrow enough so that this displays 
> as at least two "visual" lines.
>
> * topic 3
> You can get here by hitting "n"
> as above if you
> `toggle-truncate-lines' or
> get rid of topic 2's long line.

I can reproduce the problem and the following patch seems to fix it, but
I don't know if it causes undesirable behavior in other cases.

Steve Berman

diff --git a/lisp/allout.el b/lisp/allout.el
index 5102ee7341..c1698c1eb4 100644
--- a/lisp/allout.el
+++ b/lisp/allout.el
@@ -3079,7 +3079,7 @@ allout-next-visible-heading
          (backward (if (< arg 0) (setq arg (* -1 arg))))
         (step (if backward -1 1))
          (progress (allout-current-bullet-pos))
-        prev got)
+        prev got line-move-visual)

     (while (> arg 0)
       (while (and

reply via email to

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