Like many of us, I use org-mode for two different things:
- As a TODO list manager
- As a text outliner
I'd like my blank lines to work differently based on context.
- TODO list: no blank lines
- text outline: automatically insert 1 blank line when non-heading text precedes a heading
In other words, when I'm doing a TODO list when I have many headings in a row, I don't want stray line breaks between them.
TODO list mode, no line breaks:
* Organize Party [33%] ** TODO Call people [1/2] *** TODO Peter *** DONE Sarah ** TODO Buy food ** DONE Talk to neighbor
However, when I'm writing text, I want line breaks for the sake of visual whitespace / ease of reading.
outline mode, blank line before heading:
* Heading This is a document that has a heading, and a body. The body will consist of two paragraphs with sub-headings. * Body This is an introduction to the body. The body has two sub-headings, each of which have their own paragraph. ** The First Paragraph This is the first of two paragraphs. ** The Second Paragraph This is the second of two paragraphs.
I've already set org-blank-before-new-entry to auto:
((heading . auto) (plain-list-item . auto))
But I think org-blank-before-new-entry works by detecting other blank lines in the area. I want it to detect whether the preceding line of text is a heading or a non-heading.
How can I modify org-blank-before-new-entry so that when I'm in a TODO list consisting only of headings,
org-meta-return doesn't add a line break? but after a block of text, it does?