mirror of
https://git.savannah.gnu.org/git/emacs/org-mode.git
synced 2025-01-22 19:47:07 +00:00
Newline-and-indent respects list structure
* lisp/org.el (org-return): when called from inside an item with the indent flag, function should keep text moved inside the item. This allows to use C-j to separate lines in an item: cursor won't go back to column 0.
This commit is contained in:
parent
dcf23c416f
commit
89c066a10c
12
lisp/org.el
12
lisp/org.el
@ -17490,6 +17490,18 @@ See the individual commands for more information."
|
||||
((org-at-table-p)
|
||||
(org-table-justify-field-maybe)
|
||||
(call-interactively 'org-table-next-row))
|
||||
;; when `newline-and-indent' is called within a list, make sure
|
||||
;; text moved stays inside the item.
|
||||
((and (org-in-item-p) indent)
|
||||
(if (and (org-at-item-p) (>= (point) (match-end 0)))
|
||||
(progn
|
||||
(newline)
|
||||
(org-indent-line-to (length (match-string 0))))
|
||||
(let ((ind (org-get-indentation)))
|
||||
(newline)
|
||||
(if (org-looking-back org-list-end-re)
|
||||
(org-indent-line-function)
|
||||
(org-indent-line-to ind)))))
|
||||
((and org-return-follows-link
|
||||
(eq (get-text-property (point) 'face) 'org-link))
|
||||
(call-interactively 'org-open-at-point))
|
||||
|
Loading…
Reference in New Issue
Block a user