Subject: bug#21710: 25.0.50; self-insert-command before a folded outline inserts after the outline

From: Eli Zaretskii <[email-masked]>
Date: Sun, 15 Aug 2021 20:32:46 +0300

> From: Lars Ingebrigtsen <[email-masked]>
> Date: Sun, 15 Aug 2021 19:01:42 +0200
> Cc: [email-masked]
> 
> Oleh Krehel <[email-masked]> writes:
> 
> > To reproduce with "emacs -Q", create a file ~/outline-test with the
> > following contents:
> >
> > * foo
> > some text
> > * bar
> > some text
> >
> > Open the file, move to start, "M-x" `outline-minor-mode',
> > "M-x" `outline-hide-sublevels'.
> >
> > Move to the end of bar and insert "tt" - it works correctly.
> >
> > But move to the end of foo and insert "tt": here's what it looks like
> > ("|" is the point):
> >
> > * foo...t|
> > * bartt...
> >
> > Here's the full text after "M-x" `outline-show-all':
> >
> > * foot
> > some textt
> > * bartt
> > some text
> 
> (I'm going through old bug reports that unfortunately weren't
> resolved at the time.)
> 
> I'm not seeing quite what you're seeing here in Emacs 26.1 or 28.  I'm getting:
> 
> * foo...ttttt|
> * bar...

I get in Emacs 28 exactly what the OP describes.

But isn't that expected, given the way outline-minor-mode uses the
invisible property?

> On the other hand, I'm not sure quite what it's supposed to do if you
> type after the dots.

He was typing _before_ the dots.  He said "move to the end of foo".