From: gusbrs <gusbrs.2016@gmail.com>
To: Ihor Radchenko <yantar92@posteo.net>
Cc: org-mode list <emacs-orgmode@gnu.org>
Subject: Re: [BUG] org-insert-heading changed behavior with Emacs 29.2 [9.6.15 (release_9.6.15 @ /usr/local/share/emacs/29.2/lisp/org/)]
Date: Sat, 3 Feb 2024 10:27:03 -0300 [thread overview]
Message-ID: <CAM9ALR_cj_qsU-XwWELhYTcbHbtRzcEhCxCKieZhpqCh+YBp_g@mail.gmail.com> (raw)
In-Reply-To: <877cjl67z6.fsf@localhost>
Hi Ihor,
Thanks for looking into this.
On Sat, 3 Feb 2024 at 09:32, Ihor Radchenko <yantar92@posteo.net> wrote:
> The number of blank lines after newly inserted is not defined by Org
> mode, unlike the number of blank lines before heading that is controlled
> by `org-blank-before-new-entry'.
Well, "not defined" is strong, I'd say. There is no exposed option.
But the behavior used to be regular, and "do the right thing" (OK, you
may wish to debate that). And now the behavior has changed.
The commit basically only changes from:
(org-end-of-subtree)
to:
(org-end-of-subtree invisible-ok 'to-heading)
Which essentially changes the point position before the task of
actually inserting the heading is carried out.
It goes from here:
#+begin_src org
,* Sec1
,** SubSec1
text<point>
,** SubSec2
text
#+end_src
To here:
#+begin_src org
,* Sec1
,** SubSec1
text
,<point>** SubSec2
text
#+end_src
In practice, the previous behavior would "honor" whatever blank lines
existed in the current heading. That's why
`org-blank-before-new-entry' was needed, but something like
`org-blank-after-new-entry' not so much. Consistency was naturally
kept, because of this regularity.
> If you use M-<RET> rather then C-<RET> and set
> (setq org-blank-before-new-entry '((heading) (plain-list-item)))
> , you will get no newlines after the new heading inserted before current:
>
> * Sec1
>
> ** <point>SubSec1
>
> M-<RET> will yield
>
> * Sec1
> ** <point>
> ** SubSec1
Not the same thing, C-RET calls `org-insert-heading-respect-content'
and `org-meta-return' calls `org-insert-heading'. Besides, what we get
seems to align with what you asked in `org-blank-before-new-entry'. I
tend to use mostly C-RET, because it is more regular, and I use lists
a lot, so that's the issue I'm raising.
> Would it make sense to add a new `org-blank-after-new-entry'
> customization that will provide explicit user control over what Org does
> when inserting a new heading?
Looking from the perspective of C-RET alone, I'd be inclined to
restate my suggestion of treating the issue that motivated that commit
as a "visibility / folding" problem. However, including M-RET into the
mix, I think you have a good point, and something like
`org-blank-after-new-entry' would possibly help improve blank line
consistency in general.
Best regards,
gusbrs
next prev parent reply other threads:[~2024-02-03 13:28 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-01 18:46 [BUG] org-insert-heading changed behavior with Emacs 29.2 [9.6.15 (release_9.6.15 @ /usr/local/share/emacs/29.2/lisp/org/)] gusbrs
2024-02-02 15:22 ` Max Nikulin
2024-02-03 12:35 ` Ihor Radchenko
2024-02-03 13:27 ` gusbrs [this message]
2024-02-03 13:42 ` gusbrs
2024-05-10 9:19 ` Ihor Radchenko
2024-05-10 10:19 ` gusbrs
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAM9ALR_cj_qsU-XwWELhYTcbHbtRzcEhCxCKieZhpqCh+YBp_g@mail.gmail.com \
--to=gusbrs.2016@gmail.com \
--cc=emacs-orgmode@gnu.org \
--cc=yantar92@posteo.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.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).