branch: externals/org-transclusion commit 2251c596e0ea3f246c39efb6e81f69098099d386 Merge: 6a553d48b6 5b6107ec26 Author: Noboru Ota <m...@nobiot.com> Commit: Noboru Ota <m...@nobiot.com>
Merge branch 'main' into dev/detach --- .elpaignore | 1 - NEWS | 43 +++++++++++++++++++++++++++++++++++++++---- org-transclusion.el | 11 ++++++----- test/test-2.1-lines.org | 2 +- 4 files changed, 46 insertions(+), 11 deletions(-) diff --git a/.elpaignore b/.elpaignore index 6454d3112f..05f3d68864 100644 --- a/.elpaignore +++ b/.elpaignore @@ -7,4 +7,3 @@ Makefile .github text-clone-docs .dir-locals.el -org-transclusion-pkg.el \ No newline at end of file diff --git a/NEWS b/NEWS index 511cd6d07a..5270d0e499 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,39 @@ +* 1.3.2 + + - fix: Delete superfluous trailing space on remove + + Before the fix, function 'org-transclusion-keyword-plist-to-string' + would add a superfluous trailing space when converting #+transclude + keyword's properties back to the string. This does not cause any + harm in normal circumstances. + + The issue would occur with a rare combination of the case where: + + + You have a buffer with a large number of transclusions activated, + around 50 or more + + + You set a 'whitespace-cleanup' in 'before-save' hook + + + You have 'auto-save-visited-mode' or similar that automatically saves + a buffer + + If you had combination, and then saved the buffer with the + transclusions, you might get an error mid-way of the save + operation. You would not lose any data in the buffer, but the buffer + would not re-activate all the transclusions that had been active + before buffer-save. + + This was because of the superfluous trailing spaces and automatic + removal of them, which caused the mismatch of the point of each + transclusion that Org-transclusion remembered during the save + operation. + +* Version 1.3.1 + + - build: fix #154 missing org-transclusion-pkg.el + + Nix requires -pkg.el. It was in ‘.elpaignore’. No functional change. + * Version 1.3.0 - Feature :: @@ -6,7 +42,7 @@ use :expand-links per transclusion - Fix :: - + - fix: #131. For non-Org files, now the transcluded text respects the indent level of the #+transclude keyword. This does not affect Org files. @@ -53,7 +89,7 @@ - Other :: - README, Info doc user manual, online user manual - + * Version 1.0.1 - Add .elpaignore @@ -77,8 +113,7 @@ - =org-transclusion-before-kill= now checks if the buffer to be killed contains any transclusion AND it is visting a file before saving. This - fixes some issues related to temp buffers, etc. + fixes some issues related to temp buffers, etc. - fix: search options for src-lines extension for =:lines=, =:src=, and =:end= properties † Changes before Version 1.0.0 are in CHANGELOG file. - diff --git a/org-transclusion.el b/org-transclusion.el index 33a4c22ded..267ac4bb43 100644 --- a/org-transclusion.el +++ b/org-transclusion.el @@ -17,12 +17,12 @@ ;; Author: Noboru Ota <m...@nobiot.com> ;; Created: 10 October 2020 -;; Last modified: 04 February 2023 +;; Last modified: 05 February 2023 ;; URL: https://github.com/nobiot/org-transclusion ;; Keywords: org-mode, transclusion, writing -;; Version: 1.3.0 +;; Version: 1.3.2 ;; Package-Requires: ((emacs "27.1") (org "9.4")) ;; This file is not part of GNU Emacs. @@ -872,9 +872,10 @@ keyword. If not, returns nil." (setq custom-properties-string (dolist (fn org-transclusion-keyword-plist-to-string-functions custom-properties-string) - (when-let ((str (funcall fn plist))) - (setq custom-properties-string - (concat custom-properties-string " " str ))))) + (let ((str (funcall fn plist))) + (when (and str (not (string-empty-p str))) + (setq custom-properties-string + (concat custom-properties-string " " str )))))) (concat "#+transclude: " link (when level (format " :level %d" level)) diff --git a/test/test-2.1-lines.org b/test/test-2.1-lines.org index 9d86c6a1ec..8911179adb 100644 --- a/test/test-2.1-lines.org +++ b/test/test-2.1-lines.org @@ -8,7 +8,7 @@ Including lines of source code [[file:./paragraph.org::/Lorem/]] -#+transclude: [[id:2022-06-26T141859]] +#+transclude: [[id:2022-06-26T141859]] #+transclude: [[file:./paragraph.org]] :lines 1-5 #+transclude: [[id:2022-06-26T141859]] :lines 0-5 #+transclude: [[id:2022-06-26T141859]] :end "Heading 1"