summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien <bzg@gnu.org>2021-05-03 06:23:03 +0200
committerBastien <bzg@gnu.org>2021-05-03 06:35:33 +0200
commit945c019176b2d23c5006377c95ce8d69b4b4de66 (patch)
tree3dc23fc2872340d83e49cca471a52bc012632d48
parent9014577df289322e4eb294ebcf7c7fbfb9d1a414 (diff)
downloadorg-mode-945c019176b2d23c5006377c95ce8d69b4b4de66.tar.gz
lisp/org.el: Fix indentation when `org-adapt-indentation' is 'headline-data
* lisp/org.el (org--get-expected-indentation): Fix indentation of non-headllines with `org-adapt-indentation' set to 'headline-data. (org-indent-line): When `org-adapt-indentation' is 'headline-data, don't indent when point is at the first line after a headline. Update the docstring to make it explicit that indenting relatively to current level only happens when `org-adapt-indentation' is set to `t'.
-rw-r--r--lisp/org.el10
1 files changed, 7 insertions, 3 deletions
diff --git a/lisp/org.el b/lisp/org.el
index 57a58a8..434feda 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -18973,7 +18973,7 @@ ELEMENT."
(org--get-expected-indentation
(org-element-property :parent previous) t))))))))))
;; Otherwise, move to the first non-blank line above.
- ((not (eq org-adapt-indentation 'headline-data))
+ (t
(beginning-of-line)
(let ((pos (point)))
(skip-chars-backward " \r\t\n")
@@ -19050,7 +19050,7 @@ Indentation is done according to the following rules:
Else, indent like parent's first line.
3. Otherwise, indent relatively to current level, if
- `org-adapt-indentation' is non-nil, or to left margin.
+ `org-adapt-indentation' is `t', or to left margin.
- On a blank line at the end of an element, indent according to
the type of the element. More precisely
@@ -19075,7 +19075,11 @@ list structure. Instead, use \\<org-mode-map>`\\[org-shiftmetaleft]' or \
Also align node properties according to `org-property-format'."
(interactive)
- (unless (org-at-heading-p)
+ (unless (or (org-at-heading-p)
+ (and (eq org-adapt-indentation 'headline-data)
+ (save-excursion
+ (move-beginning-of-line 0)
+ (org-at-heading-p))))
(let* ((element (save-excursion (beginning-of-line) (org-element-at-point)))
(type (org-element-type element)))
(cond ((and (memq type '(plain-list item))