I like to leave a blank line at the end of items that have bodies, but I found functions like org-metaup, org-metadown, and org-refile were leaving that blank line behind. Here's a patch to fix that:
--8<---------------cut here---------------start------------->8--- diff --git a/lisp/org.el b/lisp/org.el index 5eb0bc8..e3d71b7 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -18448,7 +18448,7 @@ Taken from `count' in cl-seq.el with all keyword arguments "Move backwards over whitespace, to the beginning of the first empty line. Returns the number of empty lines passed." (let ((pos (point))) - (skip-chars-backward " \t\n\r") + (forward-line -1) (beginning-of-line 2) (goto-char (min (point) pos)) (count-lines (point) pos))) --8<---------------cut here---------------end--------------->8--- I can't think of a reason you would want to leave trailing blank lines behind, but in case some people rely on that behavior, here's an alternate patch that creates an option called org-preserve-trailing-blank-lines: --8<---------------cut here---------------start------------->8--- diff --git a/lisp/org.el b/lisp/org.el index 5eb0bc8..e90798c 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -1098,6 +1098,11 @@ breaking the list structure." (const :tag "Always" t) (const :tag "Auto" auto))))) +(defcustom org-preserve-trailing-blank-lines t + "Non-nil means preserve blank lines at the end of an item." + :group 'org-edit-structure + :type 'boolean) + (defcustom org-insert-heading-hook nil "Hook being run after inserting a new heading." :group 'org-edit-structure @@ -18448,7 +18453,9 @@ Taken from `count' in cl-seq.el with all keyword arguments "Move backwards over whitespace, to the beginning of the first empty line. Returns the number of empty lines passed." (let ((pos (point))) - (skip-chars-backward " \t\n\r") + (if org-preserve-trailing-blank-lines + (forward-line -1) + (skip-chars-backward " \t\n\r")) (beginning-of-line 2) (goto-char (min (point) pos)) (count-lines (point) pos))) --8<---------------cut here---------------end--------------->8--- If this is accepted, perhaps the function org-back-over-empty-lines should be renamed to org-back-over-lines. Regards, Jason _______________________________________________ Emacs-orgmode mailing list Please use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode