"John Wiegley" <jo...@gnu.org> writes: > I like to avoid blank lines between Org-mode entries, but have found that when > archiving (and not use datetrees), that this is not supported by Org-mode > out-of-the-box. Mainly it’s due to these lines: > ... > ;; Subtree narrowing can let the buffer end on > ;; a headline. `org-paste-subtree' then deletes it. > ;; To prevent this, make sure visible part of buffer > ;; always terminates on a new line, while limiting > ;; number of blank lines in a date tree. > ---> (unless (and datetree-date (bolp)) (insert "\n")))) > ;; Paste > (org-paste-subtree (org-get-valid-level level (and heading 1))) > > The line indicated above always appends a newline at the end of the buffer, > so that the pasted tree appears after this newline. It would be nice if this > followed the configuration of ‘org-blank-before-new-entry’, for example.
+1 Ideally, we should use something more Elisp-friendly compared to interactive context-dependent `org-paste-subtree'. In the current state, things are way too fragile to touch them without risking unexpected breakage in various corner cases. It would be nice to factor out context-sensitive handling in `org-paste-subtree' into some kind of API function. Then, we can use that function more safely in other places like org-archive. -- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at <https://orgmode.org/>. Support Org development at <https://liberapay.com/org-mode>, or support my work at <https://liberapay.com/yantar92>