0

Q: how do I fix/restore the behavior of org-metaright and org-metaleft after an org-mode upgrade?

After upgrading to Emacs v. 28.1 (and therefore org-mode v. 9.5.2) via Fedora's package manager, org-metaright and org-metaleft no longer function as they had in my previous version of org-mode (v. 9.4).

Specifically: when I run the commands on an entry's header, they no longer add/subtract whitespace at the beginning of plain list items to keep them aligned with the header text (as in previous versions).

An example is as follows. When running org-metaright on the header of the following entry:

* header text

  - item 1 (note that the bullet lines up with the "h" in header)
  - item 2

What should happen (what used to happen) is the following:

** header text

   - item 1 (note that the bullet *still* lines up with the "h" in header)
   - item 2

But what now happens is:

** header text

  - item 1 (note that the bullet didn't move to line up with the "h" in header)
  - item 2
  

Something always breaks with org-mode when I upgrade, which is why I'm loathe to do it. I can't imagine this was intended behavior, so I'm wondering if there's a rogue site file somewhere screwing things up.

Yes, I get this behavior from emacs -q.

3
  • Are you using org-indent mode?
    – NickD
    Jul 26 at 20:44
  • @NickD: no, I am not. I didn't even know it existed until you mentioned it.
    – Dan
    Jul 27 at 13:25
  • 1
    @NickD: thanks, that got me started down the correct rabbit hole to find the solution.
    – Dan
    Jul 27 at 14:02

1 Answer 1

0

We can resolve this problem with:

(setq org-adapt-indentation t)

Here's the first part of the docstring:

org-adapt-indentation is a variable defined in ‘org.el’.

Its value is t
Original value was nil

Non-nil means adapt indentation to outline node level.

When set to t, Org assumes that you write outlines by indenting
text in each node to align with the headline, after the stars.
...

I'd never even heard about this variable before, and had certainly never set it myself. So how did I find out about this? Only because @NickD asked about org-indent-mode, which I then inspected, saw a brief mention of org-adapt-indentation, and then looked it up.

Presumably someone flipped a switch, turned a knob, or changed a default somewhere in the bowels of the org source code between 9.4 and 9.5, which results in a treasure hunt for a fix.

2
  • Breaking changes are supposed to be described in the etc/ORG-NEWS file. It's always a good idea to peruse the portion of that file between your new and old versions. There is a description of this change in there, together with a link to a FAQ: search for indent.
    – NickD
    Jul 27 at 17:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.