From d8e47abb75a97db0c4b0240495b60550aa3ae2fe Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 10 Apr 2023 21:33:56 -0400 Subject: [PATCH 01/31] Backport commit 54d40577c from Emacs * lisp/org-table.el (org-table-make-reference): Don't use `eq` to compare against literal strings. (org-table-make-reference): Fix compiler warning 54d40577c4bb64d25db030b7d11ab553364e375d Stefan Monnier Mon Apr 10 21:33:56 2023 -0400 --- lisp/org-table.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/org-table.el b/lisp/org-table.el index 6408f48cc..16c5a0b3d 100644 --- a/lisp/org-table.el +++ b/lisp/org-table.el @@ -2862,7 +2862,7 @@ list, `literal' is for the format specifier L." (if lispp (if (eq lispp 'literal) elements - (if (and (eq elements "") (not keep-empty)) + (if (and (equal elements "") (not keep-empty)) "" (prin1-to-string (if numbers (string-to-number elements) elements)))) From d0c29cfdf96203bbaceccfa1f2c52bc633e65b24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Engdeg=C3=A5rd?= Date: Wed, 24 May 2023 22:36:19 +0200 Subject: [PATCH 02/31] Backport commit af4791b57 from Emacs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * lisp/org.el (org-display-inline-remove-overlay): Update the base variable after performing a destructive deletion, where it was obvious that this was intended. Fix apparently wrong `delete` and `delq` value discards (bug#61730) af4791b5706f494d73fd00c391ff867fb2c5a06d Mattias Engdegård Wed May 24 23:01:10 2023 +0200 --- lisp/org.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/org.el b/lisp/org.el index 3075729d0..eb8792841 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -16437,7 +16437,7 @@ buffer boundaries with possible narrowing." (defun org-display-inline-remove-overlay (ov after _beg _end &optional _len) "Remove inline-display overlay if a corresponding region is modified." (when (and ov after) - (delete ov org-inline-image-overlays) + (setq org-inline-image-overlays (delete ov org-inline-image-overlays)) ;; Clear image from cache to avoid image not updating upon ;; changing on disk. See Emacs bug#59902. (when (overlay-get ov 'org-image-overlay) From f0c0dee11cb1c6e1cd9b53255d27ecadc1b5cb3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Engdeg=C3=A5rd?= Date: Tue, 30 May 2023 10:04:48 +0200 Subject: [PATCH 03/31] Backport commit ace9f6775 from Emacs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * lisp/org.el (org-fontify-meta-lines-and-blocks-1): Replace uses of `any` with `nonl`. Avoid using rx `any` for `not-newline` ace9f6775580459c35254607d866f3bb22a8c45b Mattias Engdegård Tue May 30 17:44:53 2023 +0200 --- lisp/org.el | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lisp/org.el b/lisp/org.el index eb8792841..17b2c84f8 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -5374,7 +5374,7 @@ by a #." (zero-or-more (any " \t")) (group (group (zero-or-more (not (any " \t\n")))) (zero-or-more (any " \t")) - (group (zero-or-more any))))) + (group (zero-or-more nonl))))) limit t) (let ((beg (match-beginning 0)) (end-of-beginline (match-end 0)) @@ -5400,7 +5400,7 @@ by a #." "#+end" ,(match-string 4) word-end - (zero-or-more any))))) + (zero-or-more nonl))))) ;; We look further than LIMIT on purpose. nil t) ;; We do have a matching #+end line. @@ -5473,7 +5473,7 @@ by a #." (beginning-of-line) (looking-at (rx (group (zero-or-more (any " \t")) "#+caption" - (optional "[" (zero-or-more any) "]") + (optional "[" (zero-or-more nonl) "]") ":") (zero-or-more (any " \t"))))) (add-text-properties (line-beginning-position) (match-end 1) From 6eb4aa3e35e7f8c90cab4f424c5a10c4b848dc40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Je=C4=8Dm=C3=ADnek?= Date: Wed, 21 Jun 2023 15:50:31 +0200 Subject: [PATCH 04/31] Backport commit 4c01b0dee from Emacs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * lisp/org-table.el (orgtbl-to-table.el): Perform character replacement in the temp buffer and fix missing cell border. (Bug#64205) Fix orgtbl-to-table.el function to include last cell border 4c01b0deee13808605b05a89e927e67eaf67edbd Jakub Ječmínek Thu Jun 22 17:38:56 2023 +0200 --- lisp/org-table.el | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/lisp/org-table.el b/lisp/org-table.el index 16c5a0b3d..941d8a6de 100644 --- a/lisp/org-table.el +++ b/lisp/org-table.el @@ -6134,9 +6134,13 @@ supported." (with-temp-buffer (insert (orgtbl-to-orgtbl table params)) (org-table-align) - (replace-regexp-in-string - "-|" "-+" - (replace-regexp-in-string "|-" "+-" (buffer-substring 1 (buffer-size)))))) + (goto-char (point-min)) + (while (search-forward "-|" nil t) + (replace-match "-+")) + (goto-char (point-min)) + (while (search-forward "|-" nil t) + (replace-match "+-")) + (buffer-string))) (defun orgtbl-to-unicode (table params) "Convert the `orgtbl-mode' TABLE into a table with unicode characters. From d2eba8b77fb978607f1d9fc40aea7ccf7662e78b Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 2 Aug 2023 23:26:52 +0200 Subject: [PATCH 05/31] Backport commit 0910230be from Emacs ; Prefer HTTPS to HTTP in more links 0910230be6ee858d8d8849a1fc9559bfd163dc38 Stefan Kangas Wed Aug 2 23:32:28 2023 +0200 [km] The http example should remain http. That's reverted in the next commit. --- doc/org-manual.org | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/org-manual.org b/doc/org-manual.org index d91b2d69b..f087c1af5 100644 --- a/doc/org-manual.org +++ b/doc/org-manual.org @@ -3284,7 +3284,7 @@ options: | Link Type | Example | |------------+----------------------------------------------------------| -| http | =http://staff.science.uva.nl/c.dominik/= | +| http | =https://staff.science.uva.nl/c.dominik/= | | https | =https://orgmode.org/= | | doi | =doi:10.1000/182= | | file | =file:/home/dominik/images/jupiter.jpg= | @@ -3619,7 +3619,7 @@ replacement text. Here is an example: #+begin_src emacs-lisp (setq org-link-abbrev-alist - '(("bugzilla" . "http://10.1.2.9/bugzilla/show_bug.cgi?id=") + '(("bugzilla" . "https://10.1.2.9/bugzilla/show_bug.cgi?id=") ("Nu Html Checker" . "https://validator.w3.org/nu/?doc=%h") ("duckduckgo" . "https://duckduckgo.com/?q=%s") ("omap" . "https://nominatim.openstreetmap.org/search?q=%s&polygon=1") @@ -20693,8 +20693,8 @@ adding ~:rewrites~ rules like this: #+texinfo: @noindent Since =example.com/$= is used as a regular expression, it maps -=http://example.com/=, =https://example.com=, -=http://www.example.com/= and similar to +=https://example.com/=, =https://example.com=, +=https://www.example.com/= and similar to =/home/user/example/index.php=. The ~:rewrites~ rules are searched as a last resort if and only if no From 4bd1c59d83cef85c51edd871336a5c47c4b78857 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 4 Aug 2023 09:50:43 +0200 Subject: [PATCH 06/31] Backport commit c75c79971 from Emacs * doc/org.org (External Links): Change an HTTPS link back to HTTP, as it's used as an example to show the supported protocols. Ref: https://lists.gnu.org/r/emacs-devel/2023-08/msg00018.html ; Fix http/https thinko in org manual c75c7997197502189023c9f47140474fa7fd719e Stefan Kangas Fri Aug 4 09:57:27 2023 +0200 --- doc/org-manual.org | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/org-manual.org b/doc/org-manual.org index f087c1af5..69337abf1 100644 --- a/doc/org-manual.org +++ b/doc/org-manual.org @@ -3284,7 +3284,7 @@ options: | Link Type | Example | |------------+----------------------------------------------------------| -| http | =https://staff.science.uva.nl/c.dominik/= | +| http | =http://staff.science.uva.nl/c.dominik/= | | https | =https://orgmode.org/= | | doi | =doi:10.1000/182= | | file | =file:/home/dominik/images/jupiter.jpg= | From 525df5272d69c5e2738f9c7f9095d75253bfc1dd Mon Sep 17 00:00:00 2001 From: Po Lu Date: Tue, 24 Jan 2023 21:37:22 +0800 Subject: [PATCH 07/31] Backport commit 9082b4e6e from Emacs * lisp/org-ctags.el (org-ctags-path-to-ctags): Use new variables. Make binaries distributed with Emacs work on Android 9082b4e6ee27b995cbb61668cb437d7b91c7f5f8 Po Lu Tue Jan 24 21:37:22 2023 +0800 [km] A follow-up commit will adjust this to be compatible with Emacs < 30. --- lisp/org-ctags.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lisp/org-ctags.el b/lisp/org-ctags.el index d58304850..c7239a200 100644 --- a/lisp/org-ctags.el +++ b/lisp/org-ctags.el @@ -156,7 +156,9 @@ Format is: /REGEXP/TAGNAME/FLAGS,TAGTYPE/ See the ctags documentation for more information.") (defcustom org-ctags-path-to-ctags - (if (executable-find "ctags-exuberant") "ctags-exuberant" "ctags") + (if (executable-find "ctags-exuberant") + "ctags-exuberant" + ctags-program-name) "Name of the ctags executable file." :version "24.1" :type 'file) From cd8017e68f261ab5b3fdf1107f99c1231cc1eec5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Engdeg=C3=A5rd?= Date: Wed, 16 Aug 2023 14:57:48 +0200 Subject: [PATCH 08/31] Backport commit 1ad318cf2 from Emacs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * lisp/ob-tangle.el (org-babel-interpret-file-mode): Repair parts of regexp that should only match +, - and =. ob-tangle.el: fix unintended range in regexp 1ad318cf2ae22d945f8bfcd61981d619467a36da Mattias Engdegård Wed Aug 16 16:55:38 2023 +0200 --- lisp/ob-tangle.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/ob-tangle.el b/lisp/ob-tangle.el index 1be97ba55..13c928df3 100644 --- a/lisp/ob-tangle.el +++ b/lisp/ob-tangle.el @@ -357,7 +357,7 @@ Did you give the decimal value %1$d by mistake?" mode))) (error "File mode %S not recognized as a valid format." mode)) ((string-match-p "^o0?[0-7][0-7][0-7]$" mode) (string-to-number (replace-regexp-in-string "^o" "" mode) 8)) - ((string-match-p "^[ugoa]*\\(?:[+-=][rwxXstugo]*\\)+\\(,[ugoa]*\\(?:[+-=][rwxXstugo]*\\)+\\)*$" mode) + ((string-match-p "^[ugoa]*\\(?:[+=-][rwxXstugo]*\\)+\\(,[ugoa]*\\(?:[+=-][rwxXstugo]*\\)+\\)*$" mode) ;; Match regexp taken from `file-modes-symbolic-to-number'. (file-modes-symbolic-to-number mode org-babel-tangle-default-file-mode)) ((string-match-p "^[r-][w-][xs-][r-][w-][xs-][r-][w-][x-]$" mode) From d5925e3e703da54f827c398e10f7f4f8cd693576 Mon Sep 17 00:00:00 2001 From: Po Lu Date: Thu, 17 Aug 2023 08:34:32 +0000 Subject: [PATCH 09/31] Backport commit 5856ea5e4 from Emacs * lisp/org-clock.el (haiku-notifications-notify): New declaration. (org-show-notification): Employ that function. Introduce support for Desktop Notifications on Haiku 5856ea5e4e897f4cb5cd1c3c28d14b335fe5cf54 Po Lu Thu Aug 17 08:34:32 2023 +0000 --- lisp/org-clock.el | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lisp/org-clock.el b/lisp/org-clock.el index 069c851ab..3f534483b 100644 --- a/lisp/org-clock.el +++ b/lisp/org-clock.el @@ -51,6 +51,7 @@ (declare-function org-dynamic-block-define "org" (type func)) (declare-function w32-notification-notify "w32fns.c" (&rest params)) (declare-function w32-notification-close "w32fns.c" (&rest params)) +(declare-function haiku-notifications-notify "haikufns.c") (defvar org-frame-title-format-backup nil) (defvar org-state) @@ -855,6 +856,11 @@ use libnotify if available, or fall back on a message." ((stringp org-show-notification-handler) (start-process "emacs-timer-notification" nil org-show-notification-handler notification)) + ((fboundp 'haiku-notifications-notify) + ;; N.B. timeouts are not available under Haiku. + (haiku-notifications-notify :title "Org mode message" + :body notification + :urgency 'low)) ((fboundp 'w32-notification-notify) (let ((id (w32-notification-notify :title "Org mode message" From a7c8c9d8c261772491ab36b6427f9b14cfbe6148 Mon Sep 17 00:00:00 2001 From: Po Lu Date: Sun, 20 Aug 2023 20:23:56 +0800 Subject: [PATCH 10/31] Backport commit 4f714dc08 from Emacs * lisp/org-clock.el (haiku-notifications-notify): Correct file name in function declaration. (android-notifications-notify): New declaration. (org-show-notification): Use `android-notifications-notify'. Support desktop notifications on Android 4f714dc08137d36d0d1e886814008f2abe5712c0 Po Lu Sun Aug 20 20:25:53 2023 +0800 --- lisp/org-clock.el | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lisp/org-clock.el b/lisp/org-clock.el index 3f534483b..da40a4e04 100644 --- a/lisp/org-clock.el +++ b/lisp/org-clock.el @@ -51,7 +51,8 @@ (declare-function org-dynamic-block-define "org" (type func)) (declare-function w32-notification-notify "w32fns.c" (&rest params)) (declare-function w32-notification-close "w32fns.c" (&rest params)) -(declare-function haiku-notifications-notify "haikufns.c") +(declare-function haiku-notifications-notify "haikuselect.c") +(declare-function android-notifications-notify "androidselect.c") (defvar org-frame-title-format-backup nil) (defvar org-state) @@ -861,6 +862,13 @@ use libnotify if available, or fall back on a message." (haiku-notifications-notify :title "Org mode message" :body notification :urgency 'low)) + ((fboundp 'android-notifications-notify) + ;; N.B. timeouts are not available under Haiku or Android. + (android-notifications-notify :title "Org mode message" + :body notification + ;; Low urgency notifications + ;; are by default hidden. + :urgency 'normal)) ((fboundp 'w32-notification-notify) (let ((id (w32-notification-notify :title "Org mode message" From 860d4fd169ccc4877f44a22a593362978f0a69a3 Mon Sep 17 00:00:00 2001 From: Po Lu Date: Wed, 23 Aug 2023 09:56:35 +0800 Subject: [PATCH 11/31] Backport commit 73b24a414 from Emacs * lisp/org-mouse.el (org-mouse-down-mouse): Characterize as an `ignored-mouse-command'. Make org-mouse compatible with touch screen event emulation 73b24a41412eb97a9451a8310da0ebab379f7534 Po Lu Wed Aug 23 09:56:35 2023 +0800 --- lisp/org-mouse.el | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lisp/org-mouse.el b/lisp/org-mouse.el index 107979aab..35d1b6f1c 100644 --- a/lisp/org-mouse.el +++ b/lisp/org-mouse.el @@ -859,6 +859,10 @@ This means, between the beginning of line and the point." (org-mouse-in-region-p (posn-point (event-start event)))) (mouse-drag-region event))) +;; This function conflicts with touch screen gestures as it relays +;; events to `mouse-drag-region'. +(put 'org-mouse-down-mouse 'ignored-mouse-command t) + (add-hook 'org-mode-hook (lambda () (setq org-mouse-context-menu-function #'org-mouse-context-menu) From bb7473f3d3c3db4fd74a96539e0a573c3e9459df Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 19 Aug 2023 11:48:58 +0200 Subject: [PATCH 12/31] Backport commit 2b311a47d from Emacs * lisp/ox-beamer.el (org-mode): Assume that font-lock is preloaded, which it has been since Emacs 22.1. Assume that font-lock is preloaded 2b311a47dd0cde82fb9d32c303f13700cae4f0b3 Stefan Kangas Fri Aug 25 20:35:38 2023 +0200 --- lisp/ox-beamer.el | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/lisp/ox-beamer.el b/lisp/ox-beamer.el index 2843276a9..771308f47 100644 --- a/lisp/ox-beamer.el +++ b/lisp/ox-beamer.el @@ -924,11 +924,10 @@ holding export options." "Support for editing Beamer oriented Org mode files." :lighter " Bm") -(when (fboundp 'font-lock-add-keywords) - (font-lock-add-keywords - 'org-mode - '((":\\(B_[a-z]+\\|BMCOL\\):" 1 'org-beamer-tag prepend)) - 'prepend)) +(font-lock-add-keywords + 'org-mode + '((":\\(B_[a-z]+\\|BMCOL\\):" 1 'org-beamer-tag prepend)) + 'prepend) (defface org-beamer-tag '((t (:box (:line-width 1 :color "grey40")))) "The special face for beamer tags." From 0e345ecda89d186373e3cad90b548cbfdade69dc Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 25 Aug 2023 01:40:20 +0200 Subject: [PATCH 13/31] Backport commit 642691251 from Emacs ; Delete redundant defvars; font-lock is preloaded 64269125156836060eb95b28b01b877c74e800d8 Stefan Kangas Fri Aug 25 23:54:51 2023 +0200 --- lisp/org.el | 1 - 1 file changed, 1 deletion(-) diff --git a/lisp/org.el b/lisp/org.el index 17b2c84f8..99577626f 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -3760,7 +3760,6 @@ This is needed for font-lock setup.") (defvar calc-embedded-close-formula) (defvar calc-embedded-open-formula) (defvar calc-embedded-open-mode) -(defvar font-lock-unfontify-region-function) (defvar org-agenda-tags-todo-honor-ignore-options) (defvar remember-data-file) (defvar texmathp-why) From 88ac4758a77892329630f17228923ef4dd97b30f Mon Sep 17 00:00:00 2001 From: Po Lu Date: Sun, 10 Sep 2023 09:33:50 +0800 Subject: [PATCH 14/31] Backport commit c0400151f from Emacs * lisp/org.el (org-startup-truncated, org-file-apps): The construct ``allows to '' is not English inasmuch as no direct object to ``allows'' is provided. Correct and rephrase each instance of such a construct within our documentation and commentary. Correct many instances of ``allows to'' c0400151f8880862d460f0e47be287237a6182ad Po Lu Sun Sep 10 09:33:50 2023 +0800 --- lisp/org.el | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/lisp/org.el b/lisp/org.el index 99577626f..7d5f32608 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -1021,7 +1021,7 @@ time." This is useful since some lines containing links can be very long and uninteresting. Also tables look terrible when wrapped. -The variable `org-startup-truncated' allows to configure +The variable `org-startup-truncated' enables you to configure truncation for Org mode different to the other modes that use the variable `truncate-lines' and as a shortcut instead of putting the variable `truncate-lines' into the `org-mode-hook'. If one @@ -1321,14 +1321,15 @@ Possible values for the file identifier are: to open [[file:document.pdf::5]] with evince at page 5. Likely, you will need more entries: without page - number; with search pattern; with cross-reference - anchor; some combination of options. Consider simple - pattern here and a Lisp function to determine command - line arguments instead. Passing argument list to - `call-process' or `make-process' directly allows to - avoid treating some character in peculiar file names - as shell specialls causing executing part of file - name as a subcommand. + number; with search pattern; with + cross-reference anchor; some combination of + options. Consider simple pattern here and a + Lisp function to determine command line + arguments instead. Passing an argument list to + `call-process' or `make-process' directly avoids + treating some character in peculiar file names + as shell specials that prompt parts of said file + names to be executed as subcommands. `directory' Matches a directory `remote' Matches a remote file, accessible through tramp. From b2b9a96192084062daa6a64f3889b6139fea07ff Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Tue, 12 Sep 2023 12:59:03 -0400 Subject: [PATCH 15/31] Backport commit ff87aecf8 from Emacs * lisp/org.el: Remove dead-code. Address "Useless clause following default cond clause" warnings ff87aecf8554042b043467a7aaff1a758df0bbae Stefan Monnier Tue Sep 12 12:59:03 2023 -0400 --- lisp/org.el | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lisp/org.el b/lisp/org.el index 7d5f32608..16f63b879 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -18872,9 +18872,7 @@ ELEMENT." (goto-char start) (current-indentation))) ;; In any other case, indent like the current line. - (t (current-indentation))))) - ;; Finally, no indentation is needed, fall back to 0. - (t (current-indentation)))))) + (t (current-indentation))))))))) (defun org--align-node-property () "Align node property at point. From c49b8f68caaaf6b0f91b94e361d58b9ede3db62a Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sun, 17 Sep 2023 16:49:21 +0200 Subject: [PATCH 16/31] Backport commit 1e270e580 from Emacs ; Grammar fixes ("allow to" et al) 1e270e580d3bb9ca1b3766a296611f76ec13f6f1 Stefan Kangas Sun Sep 17 16:49:21 2023 +0200 --- doc/org-manual.org | 2 +- lisp/ol.el | 4 ++-- lisp/org-element.el | 4 ++-- lisp/org-table.el | 4 ++-- lisp/org.el | 6 +++--- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/doc/org-manual.org b/doc/org-manual.org index 69337abf1..51bbc75e4 100644 --- a/doc/org-manual.org +++ b/doc/org-manual.org @@ -9431,7 +9431,7 @@ the estimated effort of an entry (see [[*Effort Estimates]]). #+vindex: org-agenda-effort-filter-preset #+vindex: org-agenda-regexp-filter-preset Agenda built-in or custom commands are statically defined. Agenda -filters and limits allow to flexibly narrow down the list of agenda +filters and limits allow flexibly narrowing down the list of agenda entries. /Filters/ only change the visibility of items, are very fast and are diff --git a/lisp/ol.el b/lisp/ol.el index 4c84e62f4..d40b44d99 100644 --- a/lisp/ol.el +++ b/lisp/ol.el @@ -1803,7 +1803,7 @@ generate a description as described in `org-link-parameters' docstring. Otherwise, if `org-link-make-description-function' is non-nil, this function will be called with the link target, and the result will be the default link description. When called -non-interactively, don't allow to edit the default description." +non-interactively, don't allow editing the default description." (interactive "P") (let* ((wcf (current-window-configuration)) (origbuf (current-buffer)) @@ -2042,7 +2042,7 @@ Also refresh fontification if needed." (interactive) (let ((old-regexp org-target-link-regexp) ;; Some languages, e.g., Chinese, do not use spaces to - ;; separate words. Also allow to surround radio targets with + ;; separate words. Also allow surrounding radio targets with ;; line-breakable characters. (before-re "\\(?:^\\|[^[:alnum:]]\\|\\c|\\)\\(") (after-re "\\)\\(?:$\\|[^[:alnum:]]\\|\\c|\\)") diff --git a/lisp/org-element.el b/lisp/org-element.el index 796191dd3..01a575286 100644 --- a/lisp/org-element.el +++ b/lisp/org-element.el @@ -2968,7 +2968,7 @@ CONTENTS is verse block contents." ;; object types they can contain will be specified in ;; `org-element-object-restrictions'. ;; -;; Creating a new type of object requires to alter +;; Creating a new type of object requires altering ;; `org-element--object-regexp' and `org-element--object-lex', add the ;; new type in `org-element-all-objects', and possibly add ;; restrictions in `org-element-object-restrictions'. @@ -3523,7 +3523,7 @@ Assume point is at the beginning of the link." ;; ;; Also treat any newline character and associated ;; indentation as a single space character. This is not - ;; compatible with RFC 3986, which requires to ignore + ;; compatible with RFC 3986, which requires ignoring ;; them altogether. However, doing so would require ;; users to encode spaces on the fly when writing links ;; (e.g., insert [[shell:ls%20*.org]] instead of diff --git a/lisp/org-table.el b/lisp/org-table.el index 941d8a6de..acae14281 100644 --- a/lisp/org-table.el +++ b/lisp/org-table.el @@ -417,7 +417,7 @@ It is probably good to never set this variable to nil, for the sake of portability of tables." :group 'org-table-calculation :type '(choice - (const :tag "Allow to cross" t) + (const :tag "Allow crossing hline" t) (const :tag "Stick to hline" nil) (const :tag "Error on attempt to cross" error))) @@ -3900,7 +3900,7 @@ When non-nil, return the overlay narrowing the field." ;; Aligning table from the first row will not shrink again the ;; second row, which was not visible initially. ;; - ;; However, fixing it requires to check every row, which may be + ;; However, fixing it requires checking every row, which may be ;; slow on large tables. Moreover, the hindrance of this ;; pathological case is very limited. (beginning-of-line) diff --git a/lisp/org.el b/lisp/org.el index 16f63b879..803664d9b 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -13228,7 +13228,7 @@ Optional argument DEFAULT provides a default value for PROPERTY." nil nil nil nil default-prop))) (defun org-set-property-and-value (use-last) - "Allow to set [PROPERTY]: [value] direction from prompt. + "Allow setting [PROPERTY]: [value] direction from prompt. When use-default, don't even ask, just use the last \"[PROPERTY]: [value]\" string from the history." (interactive "P") @@ -17655,8 +17655,8 @@ region." (defun org-open-line (n) "Insert a new row in tables, call `open-line' elsewhere. If `org-special-ctrl-o' is nil, just call `open-line' everywhere. -As a special case, when a document starts with a table, allow to -call `open-line' on the very first character." +As a special case, when a document starts with a table, allow +calling `open-line' on the very first character." (interactive "*p") (if (and org-special-ctrl-o (/= (point) 1) (org-at-table-p)) (org-table-insert-row) From d7ee5691cb6088c47020cb74b3f7af98da24e709 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sun, 17 Sep 2023 16:57:20 +0200 Subject: [PATCH 17/31] Backport commit e0070fc57 from Emacs * lisp/ob-eshell.el (org-babel-execute:eshell): Improve docstring. Improve org-babel-execute:eshell docstring e0070fc574a8621b2fbb1aaca678b974a3dc5fd5 Stefan Kangas Sun Sep 17 16:57:25 2023 +0200 --- lisp/ob-eshell.el | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lisp/ob-eshell.el b/lisp/ob-eshell.el index 3e2117ad0..eefb43dc1 100644 --- a/lisp/ob-eshell.el +++ b/lisp/ob-eshell.el @@ -47,11 +47,12 @@ "Execute a block of Eshell code BODY with PARAMS. This function is called by `org-babel-execute-src-block'. -The BODY can be any code which allowed executed in Eshell. -Eshell allow to execute normal shell command and Elisp code. -More details please reference Eshell Info. +The BODY argument is code which can be executed in Eshell. +Eshell allows executing normal shell command and Elisp code. +For more details, see Info node `(eshell) Top'. -The PARAMS are variables assignments." +The PARAMS argument is passed to +`org-babel-expand-body:generic' (which see)." (let* ((session (org-babel-eshell-initiate-session (cdr (assq :session params)))) (full-body (org-babel-expand-body:generic From 53d3fcfbe9ef7c67295d943cb39944ed4be981a2 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sun, 1 Oct 2023 19:00:26 +0200 Subject: [PATCH 18/31] Backport commit 6b2219cd2 from Emacs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * lisp/org.el (org-read-date-analyze): * lisp/ox-html.el (org-html-latex-fragment): Add several "duplicate value in `cond`" FIXMEs. Found by Mattias Engdegård . Ref: https://debbugs.gnu.org/51368#51 ; Add several "duplicate value in `cond`" FIXMEs 6b2219cd2744c711580cc7226554e69c8cec8247 Stefan Kangas Sun Oct 1 19:00:26 2023 +0200 --- lisp/org.el | 1 + lisp/ox-html.el | 1 + 2 files changed, 2 insertions(+) diff --git a/lisp/org.el b/lisp/org.el index 803664d9b..3c754a239 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -14035,6 +14035,7 @@ user." (unless deltadef (let ((now (decode-time))) (setq day (nth 3 now) month (nth 4 now) year (nth 5 now)))) + ;; FIXME: Duplicated value in ‘cond’: "" (cond ((member deltaw '("h" "")) (when (boundp 'org-time-was-given) (setq org-time-was-given t)) diff --git a/lisp/ox-html.el b/lisp/ox-html.el index 5a345a942..1e9185919 100644 --- a/lisp/ox-html.el +++ b/lisp/ox-html.el @@ -3094,6 +3094,7 @@ CONTENTS is nil. INFO is a plist holding contextual information." (let ((latex-frag (org-element-property :value latex-fragment)) (processing-type (plist-get info :with-latex))) (cond + ;; FIXME: Duplicated value in ‘cond’: t ((memq processing-type '(t mathjax)) (org-html-format-latex latex-frag 'mathjax info)) ((memq processing-type '(t html)) From 5e9a60aaae965e5d76da1a4d0bb887d28eb9e250 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 21 Oct 2023 12:26:00 +0200 Subject: [PATCH 19/31] Backport commit 2e19e1163 from Emacs * lisp/ob-lua.el (org-babel-lua-evaluate-session): * lisp/ob-python.el (org-babel-python-initiate-session-by-key): (org-babel-python-evaluate-session): Don't use obsolete 'sleep-for' argument. --- lisp/ob-lua.el | 2 +- lisp/ob-python.el | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lisp/ob-lua.el b/lisp/ob-lua.el index 8bc9f34c4..6d60538e8 100644 --- a/lisp/ob-lua.el +++ b/lisp/ob-lua.el @@ -326,7 +326,7 @@ last statement in BODY, as elisp." If RESULT-TYPE equals `output' then return standard output as a string. If RESULT-TYPE equals `value' then return the value of the last statement in BODY, as elisp." - (let* ((send-wait (lambda () (comint-send-input nil t) (sleep-for 0 5))) + (let* ((send-wait (lambda () (comint-send-input nil t) (sleep-for 0.005))) (dump-last-value (lambda (tmp-file pp) diff --git a/lisp/ob-python.el b/lisp/ob-python.el index 3302eb1e5..1a442a5a0 100644 --- a/lisp/ob-python.el +++ b/lisp/ob-python.el @@ -235,7 +235,7 @@ then create. Return the initialized session." ;; multiple prompts during initialization. (with-current-buffer py-buffer (while (not org-babel-python--initialized) - (sleep-for 0 10))) + (sleep-for 0.01))) (org-babel-comint-wait-for-output py-buffer)) (setq org-babel-python-buffers (cons (cons session py-buffer) @@ -403,7 +403,7 @@ last statement in BODY, as elisp." (body (org-babel-python-format-session-value tmp-src-file tmp-results-file result-params))) (org-babel-python--send-string session body) - (sleep-for 0 10) + (sleep-for 0.01) (org-babel-eval-read-file tmp-results-file))))))) (org-babel-result-cond result-params results From 1bff87bdb7cf299c26e9f8f52eae0b1213289a65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Engdeg=C3=A5rd?= Date: Thu, 5 Oct 2023 14:06:24 +0200 Subject: [PATCH 20/31] Backport commit 67977ae59 from Emacs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * lisp/org/org.el (org-make-tags-matcher): Apply the transform (A+B*)+ -> A(A|B)* Eliminate some nested repetitions in regexps 67977ae5974e54d34034aa7990cf22dd162c179b Mattias Engdegård Sun Oct 29 17:40:36 2023 +0100 --- lisp/org.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/org.el b/lisp/org.el index 3c754a239..eea91d393 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -11346,7 +11346,7 @@ See also `org-scan-tags'." (let ((match0 match) (re (concat "^&?\\([-+:]\\)?\\({[^}]+}\\|LEVEL\\([<=>]\\{1,2\\}\\)" - "\\([0-9]+\\)\\|\\(\\(?:[[:alnum:]_]+\\(?:\\\\-\\)*\\)+\\)" + "\\([0-9]+\\)\\|\\([[:alnum:]_]\\(?:[[:alnum:]_]\\|\\\\-\\)*\\)" "\\([<>=]\\{1,2\\}\\)" "\\({[^}]+}\\|\"[^\"]*\"\\|-?[.0-9]+\\(?:[eE][-+]?[0-9]+\\)?\\)" "\\|" org-tag-re "\\)")) From 68f9abe0cde3e67c73aa972650daf01c6096347a Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Wed, 20 Dec 2023 17:50:09 -0500 Subject: [PATCH 21/31] Backport commit 40dafa9af from Emacs * lisp/org-src.el (org-src-font-lock-fontify-block): Fix point-min /= 1 40dafa9af0ae3b1826409ebed80cb65f56591ffb Stefan Monnier Wed Dec 20 17:50:09 2023 -0500 --- lisp/org-src.el | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lisp/org-src.el b/lisp/org-src.el index ba697cc9c..85339ec95 100644 --- a/lisp/org-src.el +++ b/lisp/org-src.el @@ -658,7 +658,9 @@ as `org-src-fontify-natively' is non-nil." (when new-prop (if (not (eq prop 'invisible)) (put-text-property - (+ start (1- pos)) (1- (+ start next)) prop new-prop + (+ start (- pos (point-min))) + (+ start (- next (point-min))) + prop new-prop org-buffer) ;; Special case. `invisible' text property may ;; clash with Org folding. Do not assign @@ -690,7 +692,8 @@ as `org-src-fontify-natively' is non-nil." (when invisibility-spec (add-to-invisibility-spec invisibility-spec)) (put-text-property - (+ start (1- pos)) (1- (+ start next)) + (+ start (- pos (point-min))) + (+ start (- next (point-min))) 'org-src-invisible new-prop org-buffer))))))) (setq pos next))) From 7564dfd9688590c22c212ae5c869af12752e2844 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 30 Dec 2023 18:01:48 +0100 Subject: [PATCH 22/31] Backport commit 0f3be9596 from Emacs ; Prefer finder keyword "text" to deprecated keyword "wp" 0f3be9596fb3cf2f5e8f10fe2b3ef59546de98bb Stefan Kangas Sat Dec 30 18:14:40 2023 +0100 --- lisp/ol-bbdb.el | 2 +- lisp/ol-bibtex.el | 2 +- lisp/ol-docview.el | 2 +- lisp/ol-gnus.el | 2 +- lisp/ol-info.el | 2 +- lisp/ol-man.el | 2 +- lisp/ol-mhe.el | 2 +- lisp/ol-rmail.el | 2 +- lisp/ol-w3m.el | 2 +- lisp/ol.el | 2 +- lisp/org-agenda.el | 2 +- lisp/org-archive.el | 2 +- lisp/org-capture.el | 2 +- lisp/org-clock.el | 2 +- lisp/org-colview.el | 2 +- lisp/org-compat.el | 2 +- lisp/org-ctags.el | 2 +- lisp/org-datetree.el | 2 +- lisp/org-duration.el | 2 +- lisp/org-element.el | 2 +- lisp/org-entities.el | 2 +- lisp/org-faces.el | 2 +- lisp/org-feed.el | 2 +- lisp/org-footnote.el | 2 +- lisp/org-goto.el | 2 +- lisp/org-habit.el | 2 +- lisp/org-id.el | 2 +- lisp/org-indent.el | 2 +- lisp/org-inlinetask.el | 2 +- lisp/org-lint.el | 2 +- lisp/org-list.el | 2 +- lisp/org-macro.el | 2 +- lisp/org-macs.el | 2 +- lisp/org-mobile.el | 2 +- lisp/org-num.el | 2 +- lisp/org-pcomplete.el | 2 +- lisp/org-protocol.el | 2 +- lisp/org-refile.el | 2 +- lisp/org-src.el | 2 +- lisp/org-table.el | 2 +- lisp/org-tempo.el | 2 +- lisp/org-timer.el | 2 +- lisp/org.el | 2 +- lisp/ox-ascii.el | 2 +- lisp/ox-beamer.el | 2 +- lisp/ox-html.el | 2 +- lisp/ox-icalendar.el | 2 +- lisp/ox-koma-letter.el | 2 +- lisp/ox-latex.el | 2 +- lisp/ox-man.el | 2 +- lisp/ox-md.el | 2 +- lisp/ox-odt.el | 2 +- lisp/ox-org.el | 2 +- lisp/ox-publish.el | 2 +- lisp/ox-texinfo.el | 2 +- lisp/ox.el | 2 +- 56 files changed, 56 insertions(+), 56 deletions(-) diff --git a/lisp/ol-bbdb.el b/lisp/ol-bbdb.el index 2f31fad8d..dba587e34 100644 --- a/lisp/ol-bbdb.el +++ b/lisp/ol-bbdb.el @@ -4,7 +4,7 @@ ;; Authors: Carsten Dominik ;; Thomas Baumann -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/ol-bibtex.el b/lisp/ol-bibtex.el index fd2dce8c0..ea4b54cc2 100644 --- a/lisp/ol-bibtex.el +++ b/lisp/ol-bibtex.el @@ -5,7 +5,7 @@ ;; Authors: Bastien Guerry ;; Carsten Dominik ;; Eric Schulte -;; Keywords: org, wp, capture +;; Keywords: org, text, capture ;; ;; This file is part of GNU Emacs. ;; diff --git a/lisp/ol-docview.el b/lisp/ol-docview.el index 36bcfc4fc..f12d3558d 100644 --- a/lisp/ol-docview.el +++ b/lisp/ol-docview.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2009-2024 Free Software Foundation, Inc. ;; Author: Jan Böcker -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/ol-gnus.el b/lisp/ol-gnus.el index 26924ff34..91af4d10a 100644 --- a/lisp/ol-gnus.el +++ b/lisp/ol-gnus.el @@ -4,7 +4,7 @@ ;; Author: Carsten Dominik ;; Tassilo Horn -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/ol-info.el b/lisp/ol-info.el index 760cadecc..48581bd77 100644 --- a/lisp/ol-info.el +++ b/lisp/ol-info.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2004-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/ol-man.el b/lisp/ol-man.el index b6cada1b3..5ce043300 100644 --- a/lisp/ol-man.el +++ b/lisp/ol-man.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2020-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik ;; Maintainer: Bastien Guerry -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/ol-mhe.el b/lisp/ol-mhe.el index 106cfedc9..52339c0a6 100644 --- a/lisp/ol-mhe.el +++ b/lisp/ol-mhe.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2004-2024 Free Software Foundation, Inc. ;; Author: Thomas Baumann -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/ol-rmail.el b/lisp/ol-rmail.el index f6031ab52..a1af1b949 100644 --- a/lisp/ol-rmail.el +++ b/lisp/ol-rmail.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2004-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/ol-w3m.el b/lisp/ol-w3m.el index 77b4844a6..e89811733 100644 --- a/lisp/ol-w3m.el +++ b/lisp/ol-w3m.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2008-2024 Free Software Foundation, Inc. ;; Author: Andy Stewart -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/ol.el b/lisp/ol.el index d40b44d99..ac0c308da 100644 --- a/lisp/ol.el +++ b/lisp/ol.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2018-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el index 10ca43220..f8195a053 100644 --- a/lisp/org-agenda.el +++ b/lisp/org-agenda.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2004-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-archive.el b/lisp/org-archive.el index f2932da9d..f5c223661 100644 --- a/lisp/org-archive.el +++ b/lisp/org-archive.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2004-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-capture.el b/lisp/org-capture.el index 2ca68cea2..1897c0963 100644 --- a/lisp/org-capture.el +++ b/lisp/org-capture.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2010-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-clock.el b/lisp/org-clock.el index da40a4e04..e79677ad6 100644 --- a/lisp/org-clock.el +++ b/lisp/org-clock.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2004-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-colview.el b/lisp/org-colview.el index d0be87fcc..ccf1ca731 100644 --- a/lisp/org-colview.el +++ b/lisp/org-colview.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2004-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-compat.el b/lisp/org-compat.el index 33a510cd7..e9f68518e 100644 --- a/lisp/org-compat.el +++ b/lisp/org-compat.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2004-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-ctags.el b/lisp/org-ctags.el index c7239a200..2417353ee 100644 --- a/lisp/org-ctags.el +++ b/lisp/org-ctags.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2007-2024 Free Software Foundation, Inc. ;; Author: Paul Sexton -;; Keywords: org, wp +;; Keywords: org, text ;; This file is part of GNU Emacs. ;; diff --git a/lisp/org-datetree.el b/lisp/org-datetree.el index 34837a93e..90581f136 100644 --- a/lisp/org-datetree.el +++ b/lisp/org-datetree.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2009-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-duration.el b/lisp/org-duration.el index 844a3b663..1ab847761 100644 --- a/lisp/org-duration.el +++ b/lisp/org-duration.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2017-2024 Free Software Foundation, Inc. ;; Author: Nicolas Goaziou -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/org-element.el b/lisp/org-element.el index 01a575286..ef96dc024 100644 --- a/lisp/org-element.el +++ b/lisp/org-element.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2012-2024 Free Software Foundation, Inc. ;; Author: Nicolas Goaziou -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/org-entities.el b/lisp/org-entities.el index 709760bbd..5820c7428 100644 --- a/lisp/org-entities.el +++ b/lisp/org-entities.el @@ -4,7 +4,7 @@ ;; Author: Carsten Dominik , ;; Ulf Stegemann -;; Keywords: outlines, calendar, wp +;; Keywords: outlines, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-faces.el b/lisp/org-faces.el index 1bcf03734..cb5c423ad 100644 --- a/lisp/org-faces.el +++ b/lisp/org-faces.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2004-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-feed.el b/lisp/org-feed.el index 96500010f..e4035dd4e 100644 --- a/lisp/org-feed.el +++ b/lisp/org-feed.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2009-2024 Free Software Foundation, Inc. ;; ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-footnote.el b/lisp/org-footnote.el index c25f27346..608d69429 100644 --- a/lisp/org-footnote.el +++ b/lisp/org-footnote.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2009-2024 Free Software Foundation, Inc. ;; ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-goto.el b/lisp/org-goto.el index a6ac1b7e7..e9df4057e 100644 --- a/lisp/org-goto.el +++ b/lisp/org-goto.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2012-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/org-habit.el b/lisp/org-habit.el index ba92e2c36..ca2910e15 100644 --- a/lisp/org-habit.el +++ b/lisp/org-habit.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2009-2024 Free Software Foundation, Inc. ;; Author: John Wiegley -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-id.el b/lisp/org-id.el index 9561f2de1..9586b728e 100644 --- a/lisp/org-id.el +++ b/lisp/org-id.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2008-2024 Free Software Foundation, Inc. ;; ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-indent.el b/lisp/org-indent.el index d7f8d219b..a612e1c9d 100644 --- a/lisp/org-indent.el +++ b/lisp/org-indent.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2009-2024 Free Software Foundation, Inc. ;; ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-inlinetask.el b/lisp/org-inlinetask.el index 81045e5c2..7cbdaae4e 100644 --- a/lisp/org-inlinetask.el +++ b/lisp/org-inlinetask.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2009-2024 Free Software Foundation, Inc. ;; ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; This file is part of GNU Emacs. diff --git a/lisp/org-lint.el b/lisp/org-lint.el index dc12ec272..5a202808e 100644 --- a/lisp/org-lint.el +++ b/lisp/org-lint.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2015-2024 Free Software Foundation, Inc. ;; Author: Nicolas Goaziou -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/org-list.el b/lisp/org-list.el index 502e61bc3..dbef7a82b 100644 --- a/lisp/org-list.el +++ b/lisp/org-list.el @@ -4,7 +4,7 @@ ;; ;; Author: Carsten Dominik ;; Bastien Guerry -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-macro.el b/lisp/org-macro.el index 776d162be..737eab5d2 100644 --- a/lisp/org-macro.el +++ b/lisp/org-macro.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2013-2024 Free Software Foundation, Inc. ;; Author: Nicolas Goaziou -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/org-macs.el b/lisp/org-macs.el index b891284a8..2332c0c92 100644 --- a/lisp/org-macs.el +++ b/lisp/org-macs.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2004-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-mobile.el b/lisp/org-mobile.el index 0a0b63aa4..c34011fc3 100644 --- a/lisp/org-mobile.el +++ b/lisp/org-mobile.el @@ -2,7 +2,7 @@ ;; Copyright (C) 2009-2024 Free Software Foundation, Inc. ;; ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-num.el b/lisp/org-num.el index 9cfc39853..00a25b11e 100644 --- a/lisp/org-num.el +++ b/lisp/org-num.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2018-2024 Free Software Foundation, Inc. ;; Author: Nicolas Goaziou -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/org-pcomplete.el b/lisp/org-pcomplete.el index bb356bccb..c79356357 100644 --- a/lisp/org-pcomplete.el +++ b/lisp/org-pcomplete.el @@ -4,7 +4,7 @@ ;; ;; Author: Carsten Dominik ;; John Wiegley -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-protocol.el b/lisp/org-protocol.el index 15dc225cb..61a9229ad 100644 --- a/lisp/org-protocol.el +++ b/lisp/org-protocol.el @@ -7,7 +7,7 @@ ;; Sebastian Rose ;; Ross Patterson ;; Maintainer: Sebastian Rose -;; Keywords: org, emacsclient, wp +;; Keywords: org, emacsclient, text ;; This file is part of GNU Emacs. ;; diff --git a/lisp/org-refile.el b/lisp/org-refile.el index d10efec3e..4f204c739 100644 --- a/lisp/org-refile.el +++ b/lisp/org-refile.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2010-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-src.el b/lisp/org-src.el index 85339ec95..8cc119658 100644 --- a/lisp/org-src.el +++ b/lisp/org-src.el @@ -5,7 +5,7 @@ ;; Author: Carsten Dominik ;; Bastien Guerry ;; Dan Davison -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-table.el b/lisp/org-table.el index acae14281..bf0f503da 100644 --- a/lisp/org-table.el +++ b/lisp/org-table.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2004-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-tempo.el b/lisp/org-tempo.el index 44b04a9f4..638f0ea3f 100644 --- a/lisp/org-tempo.el +++ b/lisp/org-tempo.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2017-2024 Free Software Foundation, Inc. ;; ;; Author: Rasmus Pank Roulund -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org-timer.el b/lisp/org-timer.el index e9ddfecad..561b2bc0f 100644 --- a/lisp/org-timer.el +++ b/lisp/org-timer.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2008-2024 Free Software Foundation, Inc. ;; Author: Carsten Dominik -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. diff --git a/lisp/org.el b/lisp/org.el index eea91d393..2c5de69a3 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -5,7 +5,7 @@ ;; ;; Author: Carsten Dominik ;; Maintainer: Bastien Guerry -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; Package-Requires: ((emacs "26.1")) diff --git a/lisp/ox-ascii.el b/lisp/ox-ascii.el index 7f4d6cb7b..74fbe20e8 100644 --- a/lisp/ox-ascii.el +++ b/lisp/ox-ascii.el @@ -4,7 +4,7 @@ ;; Author: Nicolas Goaziou ;; Maintainer: Nicolas Goaziou -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/ox-beamer.el b/lisp/ox-beamer.el index 771308f47..3d4d99843 100644 --- a/lisp/ox-beamer.el +++ b/lisp/ox-beamer.el @@ -5,7 +5,7 @@ ;; Author: Carsten Dominik ;; Nicolas Goaziou ;; Maintainer: Nicolas Goaziou -;; Keywords: org, wp, tex +;; Keywords: org, text, tex ;; This file is part of GNU Emacs. diff --git a/lisp/ox-html.el b/lisp/ox-html.el index 1e9185919..cde4f6117 100644 --- a/lisp/ox-html.el +++ b/lisp/ox-html.el @@ -5,7 +5,7 @@ ;; Author: Carsten Dominik ;; Jambunathan K ;; Maintainer: TEC -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/ox-icalendar.el b/lisp/ox-icalendar.el index 116f8820f..1a6d29938 100644 --- a/lisp/ox-icalendar.el +++ b/lisp/ox-icalendar.el @@ -5,7 +5,7 @@ ;; Author: Carsten Dominik ;; Nicolas Goaziou ;; Maintainer: Nicolas Goaziou -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; This file is part of GNU Emacs. diff --git a/lisp/ox-koma-letter.el b/lisp/ox-koma-letter.el index 59168c077..aef25232c 100644 --- a/lisp/ox-koma-letter.el +++ b/lisp/ox-koma-letter.el @@ -7,7 +7,7 @@ ;; Viktor Rosenfeld ;; Rasmus Pank Roulund ;; Maintainer: Marco Wahl -;; Keywords: org, wp, tex +;; Keywords: org, text, tex ;; This file is part of GNU Emacs. diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el index c83728a8f..834fb9573 100644 --- a/lisp/ox-latex.el +++ b/lisp/ox-latex.el @@ -4,7 +4,7 @@ ;; Author: Nicolas Goaziou ;; Maintainer: Daniel Fleischer -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/ox-man.el b/lisp/ox-man.el index 7d1b578d9..2019a531f 100644 --- a/lisp/ox-man.el +++ b/lisp/ox-man.el @@ -4,7 +4,7 @@ ;; Author: Nicolas Goaziou ;; Luis R Anaya -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/ox-md.el b/lisp/ox-md.el index 8d01c746c..35bc4aa64 100644 --- a/lisp/ox-md.el +++ b/lisp/ox-md.el @@ -4,7 +4,7 @@ ;; Author: Nicolas Goaziou ;; Maintainer: Nicolas Goaziou -;; Keywords: org, wp, markdown +;; Keywords: org, text, markdown ;; This file is part of GNU Emacs. diff --git a/lisp/ox-odt.el b/lisp/ox-odt.el index 2c70d1dea..d0d4727e7 100644 --- a/lisp/ox-odt.el +++ b/lisp/ox-odt.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2010-2024 Free Software Foundation, Inc. ;; Author: Jambunathan K -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; URL: https://orgmode.org ;; This file is part of GNU Emacs. diff --git a/lisp/ox-org.el b/lisp/ox-org.el index ce2bcc1a3..fdd0658fb 100644 --- a/lisp/ox-org.el +++ b/lisp/ox-org.el @@ -4,7 +4,7 @@ ;; Author: Nicolas Goaziou ;; Maintainer: Nicolas Goaziou -;; Keywords: org, wp +;; Keywords: org, text ;; This file is part of GNU Emacs. diff --git a/lisp/ox-publish.el b/lisp/ox-publish.el index e0815b3dc..ce45c6f1b 100644 --- a/lisp/ox-publish.el +++ b/lisp/ox-publish.el @@ -3,7 +3,7 @@ ;; Author: David O'Toole ;; Maintainer: Nicolas Goaziou -;; Keywords: hypermedia, outlines, wp +;; Keywords: hypermedia, outlines, text ;; This file is part of GNU Emacs. ;; diff --git a/lisp/ox-texinfo.el b/lisp/ox-texinfo.el index 49d5d17d4..84313645e 100644 --- a/lisp/ox-texinfo.el +++ b/lisp/ox-texinfo.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2012-2024 Free Software Foundation, Inc. ;; Author: Jonathan Leech-Pepin ;; Maintainer: Nicolas Goaziou -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. diff --git a/lisp/ox.el b/lisp/ox.el index b8050bcda..19bf559c9 100644 --- a/lisp/ox.el +++ b/lisp/ox.el @@ -4,7 +4,7 @@ ;; Author: Nicolas Goaziou ;; Maintainer: Nicolas Goaziou -;; Keywords: outlines, hypermedia, calendar, wp +;; Keywords: outlines, hypermedia, calendar, text ;; This file is part of GNU Emacs. From 6c34fd374c9bb6e5c99827b122c0442d6a9053ab Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sun, 21 Jan 2024 15:28:06 +0100 Subject: [PATCH 23/31] Backport commit 9364c2895 from Emacs ; Fix typos in symbol names 9364c28959a5b00e8ffd5d0d283ff0c0042f1bb0 Stefan Kangas Sun Jan 21 15:28:06 2024 +0100 --- lisp/ox-latex.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el index 834fb9573..b409f552a 100644 --- a/lisp/ox-latex.el +++ b/lisp/ox-latex.el @@ -3667,7 +3667,7 @@ CONTENTS is the contents of the object." ;; takes care of tables with a "verbatim" mode. Otherwise, it ;; delegates the job to either `org-latex--table.el-table', ;; `org-latex--org-table', `org-latex--math-table' or -;; `org-latex--org-align-string-tabbing' functions, +;; `org-table--org-tabbing' functions, ;; depending of the type of the table and the mode requested. ;; ;; `org-latex--align-string' is a subroutine used to build alignment From 5a176d76ad3ccb6396a2ae7e60afd16ce7ee3718 Mon Sep 17 00:00:00 2001 From: Robert Pluim Date: Thu, 29 Feb 2024 09:29:04 +0100 Subject: [PATCH 24/31] Backport commit 862dfef88 from Emacs * lisp/org-macs.el (org-split-string): Escape control chars. * lisp/ox-latex.el (org-latex-guess-babel-language): And here. Pacify more docstring control char warnings 862dfef88d8e62d12bac3ca2e44e035a2ff5b298 Robert Pluim Thu Feb 29 09:31:41 2024 +0100 --- lisp/org-macs.el | 2 +- lisp/ox-latex.el | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lisp/org-macs.el b/lisp/org-macs.el index 2332c0c92..aafbdf0e0 100644 --- a/lisp/org-macs.el +++ b/lisp/org-macs.el @@ -982,7 +982,7 @@ Otherwise, return nil." "Splits STRING into substrings at SEPARATORS. SEPARATORS is a regular expression. When nil, it defaults to -\"[ \f\t\n\r\v]+\". +\"[ \\f\\t\\n\\r\\v]+\". Unlike `split-string', matching SEPARATORS at the beginning and end of string are ignored." diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el index b409f552a..bca387e59 100644 --- a/lisp/ox-latex.el +++ b/lisp/ox-latex.el @@ -1632,7 +1632,7 @@ explicitly been loaded. Then it is added to the rest of package's options. The optional argument to Babel or the mandatory argument to -`\babelprovide' command may be \"AUTO\" which is then replaced +`\\babelprovide' command may be \"AUTO\" which is then replaced with the language of the document or `org-export-default-language' unless language in question is already loaded. From 338ff105c5b28b0c092559358e5ac37e72450ffe Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Sat, 2 Mar 2024 14:48:29 -0500 Subject: [PATCH 25/31] Backport commit 5254c582e from Emacs * lisp/ox-texinfo.el: Remove redundant `:group` arguments. Prefer #' to quote function names. (org-texinfo-template): Use sane defaults for `@direntry`. * doc/org.org (Texinfo specific export settings): Adjust accordingly. ox-texinfo:: Require only TEXINFO_DIR_CATEGORY 5254c582efb3e7171e955dde653e7530d2d3ffef Stefan Monnier Sun Mar 3 16:57:56 2024 -0500 --- doc/org-manual.org | 11 +++++++-- lisp/ox-texinfo.el | 58 ++++++++++++++++++++++------------------------ 2 files changed, 37 insertions(+), 32 deletions(-) diff --git a/doc/org-manual.org b/doc/org-manual.org index 51bbc75e4..65a5aaca3 100644 --- a/doc/org-manual.org +++ b/doc/org-manual.org @@ -15322,11 +15322,18 @@ the general options (see [[*Export Settings]]). #+cindex: @samp{TEXINFO_DIR_TITLE}, keyword The directory title of the document. + This is the short name under which the ~m~ command will find your + manual in the main Info directory. It defaults to the base name of + the Texinfo file. + + If you need more control, it can also be the full entry using the + syntax ~* TITLE: (FILENAME).~. - =TEXINFO_DIR_DESC= :: #+cindex: @samp{TEXINFO_DIR_DESC}, keyword The directory description of the document. + Defaults to the title of the document. - =TEXINFO_PRINTED_TITLE= :: @@ -15422,7 +15429,7 @@ Here is an example that writes to the Info directory file: #+begin_example ,#+TEXINFO_DIR_CATEGORY: Emacs -,#+TEXINFO_DIR_TITLE: Org Mode: (org) +,#+TEXINFO_DIR_TITLE: Org Mode ,#+TEXINFO_DIR_DESC: Outline-based notes management and organizer #+end_example @@ -15830,7 +15837,7 @@ Texinfo code. ,#+TEXINFO_HEADER: @syncodeindex pg cp ,#+TEXINFO_DIR_CATEGORY: Texinfo documentation system -,#+TEXINFO_DIR_TITLE: sample: (sample) +,#+TEXINFO_DIR_TITLE: sample ,#+TEXINFO_DIR_DESC: Invoking sample ,#+TEXINFO_PRINTED_TITLE: GNU Sample diff --git a/lisp/ox-texinfo.el b/lisp/ox-texinfo.el index 84313645e..5065c3fb6 100644 --- a/lisp/ox-texinfo.el +++ b/lisp/ox-texinfo.el @@ -110,6 +110,10 @@ (:subtitle "SUBTITLE" nil nil parse) (:subauthor "SUBAUTHOR" nil nil newline) (:texinfo-dircat "TEXINFO_DIR_CATEGORY" nil nil t) + ;; FIXME: The naming of these options is unsatisfactory: + ;; TEXINFO_DIR_DESC corresponds (and defaults) to the document's + ;; title, whereas TEXINFO_DIR_TITLE corresponds (and defaults) to + ;; its filename. (:texinfo-dirtitle "TEXINFO_DIR_TITLE" nil nil t) (:texinfo-dirdesc "TEXINFO_DIR_DESC" nil nil t) (:texinfo-printed-title "TEXINFO_PRINTED_TITLE" nil nil t) @@ -147,12 +151,10 @@ "Default document encoding for Texinfo output. If nil it will default to `buffer-file-coding-system'." - :group 'org-export-texinfo :type 'coding-system) (defcustom org-texinfo-default-class "info" "The default Texinfo class." - :group 'org-export-texinfo :type '(string :tag "Texinfo class")) (defcustom org-texinfo-classes @@ -205,7 +207,6 @@ The sectioning structure of the class is given by the elements following the header string. For each sectioning level, a number of strings is specified. A %s formatter is mandatory in each section string and will be replaced by the title of the section." - :group 'org-export-texinfo :version "27.1" :package-version '(Org . "9.2") :type '(repeat @@ -233,7 +234,6 @@ TEXT the main headline text (string). TAGS the tags as a list of strings (list of strings or nil). The function result will be used in the section format string." - :group 'org-export-texinfo :type 'function :version "26.1" :package-version '(Org . "8.3")) @@ -244,38 +244,32 @@ The function result will be used in the section format string." "Column at which to start the description in the node listings. If a node title is greater than this length, the description will be placed after the end of the title." - :group 'org-export-texinfo :type 'integer) ;;;; Timestamps (defcustom org-texinfo-active-timestamp-format "@emph{%s}" "A printf format string to be applied to active timestamps." - :group 'org-export-texinfo :type 'string) (defcustom org-texinfo-inactive-timestamp-format "@emph{%s}" "A printf format string to be applied to inactive timestamps." - :group 'org-export-texinfo :type 'string) (defcustom org-texinfo-diary-timestamp-format "@emph{%s}" "A printf format string to be applied to diary timestamps." - :group 'org-export-texinfo :type 'string) ;;;; Links (defcustom org-texinfo-link-with-unknown-path-format "@indicateurl{%s}" "Format string for links with unknown path type." - :group 'org-export-texinfo :type 'string) ;;;; Tables (defcustom org-texinfo-tables-verbatim nil "When non-nil, tables are exported verbatim." - :group 'org-export-texinfo :type 'boolean) (defcustom org-texinfo-table-scientific-notation nil @@ -285,7 +279,6 @@ The format should have \"%s\" twice, for mantissa and exponent \(i.e. \"%s\\\\times10^{%s}\"). When nil, no transformation is made." - :group 'org-export-texinfo :type '(choice (string :tag "Format string") (const :tag "No formatting" nil))) @@ -297,7 +290,6 @@ This should an indicating command, e.g., \"@code\", \"@kbd\" or \"@samp\". It can be overridden locally using the \":indic\" attribute." - :group 'org-export-texinfo :type 'string :version "26.1" :package-version '(Org . "9.1") @@ -323,7 +315,6 @@ to typeset and protects special characters. When no association is found for a given markup, text is returned as-is." - :group 'org-export-texinfo :version "26.1" :package-version '(Org . "9.1") :type 'alist @@ -341,7 +332,6 @@ The function must accept two parameters: The function should return the string to be exported. The default function simply returns the value of CONTENTS." - :group 'org-export-texinfo :version "24.4" :package-version '(Org . "8.2") :type 'function) @@ -361,7 +351,6 @@ The function must accept six parameters: CONTENTS the contents of the inlinetask, as a string. The function should return the string to be exported." - :group 'org-export-texinfo :type 'function) ;;;; LaTeX @@ -374,7 +363,6 @@ fragments as Texinfo \"@displaymath\" and \"@math\" commands respectively. Alternatively, when set to `detect', the exporter does so only if the installed version of Texinfo supports the necessary commands." - :group 'org-export-texinfo :package-version '(Org . "9.6") :type '(choice (const :tag "Detect" detect) @@ -391,7 +379,6 @@ body but is followed by another item, then the second item is transcoded to `@itemx'. See info node `(org)Plain lists in Texinfo export' for how to enable this for individual lists." :package-version '(Org . "9.6") - :group 'org-export-texinfo :type 'boolean :safe t) @@ -406,7 +393,6 @@ relative file name, %F by the absolute file name, %b by the file base name (i.e. without directory and extension parts), %o by the base directory of the file and %O by the absolute file name of the output file." - :group 'org-export-texinfo :version "26.1" :package-version '(Org . "9.1") :type '(repeat :tag "Shell command sequence" @@ -416,8 +402,8 @@ the output file." '("aux" "toc" "cp" "fn" "ky" "pg" "tp" "vr") "The list of file extensions to consider as Texinfo logfiles. The logfiles will be remove if `org-texinfo-remove-logfiles' is + non-nil." - :group 'org-export-texinfo :type '(repeat (string :tag "Extension"))) (defcustom org-texinfo-remove-logfiles t @@ -815,19 +801,31 @@ holding export options." (format "@copying\n%s@end copying\n\n" (org-element-normalize-string (org-export-data copying info)))) - ;; Info directory information. Only supply if both title and - ;; category are provided. - (let ((dircat (plist-get info :texinfo-dircat)) - (dirtitle - (let ((title (plist-get info :texinfo-dirtitle))) - (and title - (string-match "^\\(?:\\* \\)?\\(.*?\\)\\(\\.\\)?$" title) - (format "* %s." (match-string 1 title)))))) - (when (and dircat dirtitle) + ;; Info directory information. Only supply if category is provided. + ;; FIXME: A Texinfo doc without a direntry is significantly less useful + ;; since it won't appear in the main Info-directory, so maybe we should + ;; use a default category like "misc"? + (let* ((dircat (plist-get info :texinfo-dircat)) + (dt (plist-get info :texinfo-dirtitle)) + (file (file-name-sans-extension + (or (org-strip-quotes (plist-get info :texinfo-filename)) + (plist-get info :output-file)))) + (dirtitle + (cond + ((and dt + (or (string-match "\\`\\* \\(.*?\\)\\(\\.\\)?\\'" dt) + (string-match "\\`\\(.*(.*)\\)\\(\\.\\)?\\'" dt))) + ;; `dt' is already "complete". + (format "* %s." (match-string 1 dt))) + ((and dt (not (equal dt file))) + (format "* %s: (%s)." dt file)) + (t (format "* %s." file))))) + (when dircat (concat "@dircategory " dircat "\n" "@direntry\n" (let ((dirdesc - (let ((desc (plist-get info :texinfo-dirdesc))) + (let ((desc (or (plist-get info :texinfo-dirdesc) + title))) (cond ((not desc) nil) ((string-suffix-p "." desc) desc) (t (concat desc ".")))))) @@ -1590,7 +1588,7 @@ information." (concat "@noindent" (mapconcat - 'identity + #'identity (delq nil (list (let ((closed (org-element-property :closed planning))) From fb4d2b96dc9b25b5ed20e4d5bba823a57aa3e530 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Sat, 2 Mar 2024 15:23:17 -0500 Subject: [PATCH 26/31] Backport commit 99483e214 from Emacs Set org-macro-templates more lazily 99483e214fdafa76e8001c7009dff13a76c33f32 Stefan Monnier Sun Mar 3 16:57:56 2024 -0500 --- lisp/org-macro.el | 8 +++++--- lisp/org-macs.el | 4 +++- lisp/org.el | 21 ++++++++++----------- 3 files changed, 18 insertions(+), 15 deletions(-) diff --git a/lisp/org-macro.el b/lisp/org-macro.el index 737eab5d2..acc8f5e59 100644 --- a/lisp/org-macro.el +++ b/lisp/org-macro.el @@ -78,12 +78,14 @@ ;;; Variables -(defvar-local org-macro-templates nil +(defvar-local org-macro-templates t "Alist containing all macro templates in current buffer. Associations are in the shape of (NAME . TEMPLATE) where NAME stands for macro's name and template for its replacement value, -both as strings. This is an internal variable. Do not set it -directly, use instead: +both as strings. +`t' means that it has not yet been initialized. + +This is an internal variable. Do not set it directly, use instead: #+MACRO: name template") diff --git a/lisp/org-macs.el b/lisp/org-macs.el index aafbdf0e0..53943d343 100644 --- a/lisp/org-macs.el +++ b/lisp/org-macs.el @@ -132,6 +132,8 @@ Version mismatch is commonly encountered in the following situations: ;; Use `with-silent-modifications' to ignore cosmetic changes and ;; `org-unmodified' to ignore real text modifications. +;; FIXME: Won't "real text modifications" break the undo data if +;; `buffer-undo-list' is let-bound to t? (defmacro org-unmodified (&rest body) "Run BODY while preserving the buffer's `buffer-modified-p' state." (declare (debug (body))) @@ -141,7 +143,7 @@ Version mismatch is commonly encountered in the following situations: (let ((buffer-undo-list t) (inhibit-modification-hooks t)) ,@body) - (set-buffer-modified-p ,was-modified))))) + (restore-buffer-modified-p ,was-modified))))) (defmacro org-with-base-buffer (buffer &rest body) "Run BODY in base buffer for BUFFER. diff --git a/lisp/org.el b/lisp/org.el index 2c5de69a3..151580a30 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -716,8 +716,9 @@ defined in org-duration.el.") "Load all extensions listed in `org-modules'." (when (or force (not org-modules-loaded)) (dolist (ext org-modules) - (condition-case nil (require ext) - (error (message "Problems while trying to load feature `%s'" ext)))) + (condition-case err (require ext) + (error (message "Problems while trying to load feature `%s':\n%S" + ext err)))) (setq org-modules-loaded t))) (defun org-set-modules (var value) @@ -855,7 +856,7 @@ depends on, if any." :group 'org-export :version "26.1" :package-version '(Org . "9.0") - :initialize 'custom-initialize-set + :initialize #'custom-initialize-set :set (lambda (var val) (if (not (featurep 'ox)) (set-default-toplevel-value var val) ;; Any back-end not required anymore (not present in VAL and not @@ -905,9 +906,9 @@ depends on, if any." (eval-after-load 'ox '(dolist (backend org-export-backends) - (condition-case nil (require (intern (format "ox-%s" backend))) - (error (message "Problems while trying to load export back-end `%s'" - backend))))) + (condition-case err (require (intern (format "ox-%s" backend))) + (error (message "Problems while trying to load export back-end `%s':\n%S" + backend err))))) (defcustom org-support-shift-select nil "Non-nil means make shift-cursor commands select text when possible. @@ -4772,7 +4773,7 @@ This is for getting out of special buffers like capture.") (require 'org-pcomplete) (require 'org-src) (require 'org-footnote) -(require 'org-macro) +;; (require 'org-macro) ;; babel (require 'ob) @@ -4852,8 +4853,6 @@ The following commands are available: (when (and org-element-cache-persistent org-element-use-cache) (org-persist-load 'org-element--cache (current-buffer) t)) - ;; Initialize macros templates. - (org-macro-initialize-templates) ;; Initialize radio targets. (org-update-radio-target-regexp) ;; Indentation. @@ -10459,7 +10458,7 @@ EXTRA is additional text that will be inserted into the notes buffer." org-log-note-this-command this-command org-log-note-recursion-depth (recursion-depth) org-log-setup t) - (add-hook 'post-command-hook 'org-add-log-note 'append)) + (add-hook 'post-command-hook #'org-add-log-note 'append)) (defun org-skip-over-state-notes () "Skip past the list of State notes in an entry." @@ -10488,7 +10487,7 @@ EXTRA is additional text that will be inserted into the notes buffer." "Pop up a window for taking a note, and add this note later." (when (and (equal org-log-note-this-command this-command) (= org-log-note-recursion-depth (recursion-depth))) - (remove-hook 'post-command-hook 'org-add-log-note) + (remove-hook 'post-command-hook #'org-add-log-note) (setq org-log-setup nil) (setq org-log-note-window-configuration (current-window-configuration)) (delete-other-windows) From 5dc2b6ee75ce400795f76dca4057913f1cdb9d8e Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Sun, 3 Mar 2024 22:09:19 -0500 Subject: [PATCH 27/31] Backport commit 1a37fe3a6 from Emacs Revert "Set org-macro-templates more lazily" 1a37fe3a66930bb8151a29c722dbe3bebc20d033 Stefan Monnier Sun Mar 3 22:09:19 2024 -0500 --- lisp/org-macro.el | 8 +++----- lisp/org-macs.el | 4 +--- lisp/org.el | 21 +++++++++++---------- 3 files changed, 15 insertions(+), 18 deletions(-) diff --git a/lisp/org-macro.el b/lisp/org-macro.el index acc8f5e59..737eab5d2 100644 --- a/lisp/org-macro.el +++ b/lisp/org-macro.el @@ -78,14 +78,12 @@ ;;; Variables -(defvar-local org-macro-templates t +(defvar-local org-macro-templates nil "Alist containing all macro templates in current buffer. Associations are in the shape of (NAME . TEMPLATE) where NAME stands for macro's name and template for its replacement value, -both as strings. -`t' means that it has not yet been initialized. - -This is an internal variable. Do not set it directly, use instead: +both as strings. This is an internal variable. Do not set it +directly, use instead: #+MACRO: name template") diff --git a/lisp/org-macs.el b/lisp/org-macs.el index 53943d343..aafbdf0e0 100644 --- a/lisp/org-macs.el +++ b/lisp/org-macs.el @@ -132,8 +132,6 @@ Version mismatch is commonly encountered in the following situations: ;; Use `with-silent-modifications' to ignore cosmetic changes and ;; `org-unmodified' to ignore real text modifications. -;; FIXME: Won't "real text modifications" break the undo data if -;; `buffer-undo-list' is let-bound to t? (defmacro org-unmodified (&rest body) "Run BODY while preserving the buffer's `buffer-modified-p' state." (declare (debug (body))) @@ -143,7 +141,7 @@ Version mismatch is commonly encountered in the following situations: (let ((buffer-undo-list t) (inhibit-modification-hooks t)) ,@body) - (restore-buffer-modified-p ,was-modified))))) + (set-buffer-modified-p ,was-modified))))) (defmacro org-with-base-buffer (buffer &rest body) "Run BODY in base buffer for BUFFER. diff --git a/lisp/org.el b/lisp/org.el index 151580a30..2c5de69a3 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -716,9 +716,8 @@ defined in org-duration.el.") "Load all extensions listed in `org-modules'." (when (or force (not org-modules-loaded)) (dolist (ext org-modules) - (condition-case err (require ext) - (error (message "Problems while trying to load feature `%s':\n%S" - ext err)))) + (condition-case nil (require ext) + (error (message "Problems while trying to load feature `%s'" ext)))) (setq org-modules-loaded t))) (defun org-set-modules (var value) @@ -856,7 +855,7 @@ depends on, if any." :group 'org-export :version "26.1" :package-version '(Org . "9.0") - :initialize #'custom-initialize-set + :initialize 'custom-initialize-set :set (lambda (var val) (if (not (featurep 'ox)) (set-default-toplevel-value var val) ;; Any back-end not required anymore (not present in VAL and not @@ -906,9 +905,9 @@ depends on, if any." (eval-after-load 'ox '(dolist (backend org-export-backends) - (condition-case err (require (intern (format "ox-%s" backend))) - (error (message "Problems while trying to load export back-end `%s':\n%S" - backend err))))) + (condition-case nil (require (intern (format "ox-%s" backend))) + (error (message "Problems while trying to load export back-end `%s'" + backend))))) (defcustom org-support-shift-select nil "Non-nil means make shift-cursor commands select text when possible. @@ -4773,7 +4772,7 @@ This is for getting out of special buffers like capture.") (require 'org-pcomplete) (require 'org-src) (require 'org-footnote) -;; (require 'org-macro) +(require 'org-macro) ;; babel (require 'ob) @@ -4853,6 +4852,8 @@ The following commands are available: (when (and org-element-cache-persistent org-element-use-cache) (org-persist-load 'org-element--cache (current-buffer) t)) + ;; Initialize macros templates. + (org-macro-initialize-templates) ;; Initialize radio targets. (org-update-radio-target-regexp) ;; Indentation. @@ -10458,7 +10459,7 @@ EXTRA is additional text that will be inserted into the notes buffer." org-log-note-this-command this-command org-log-note-recursion-depth (recursion-depth) org-log-setup t) - (add-hook 'post-command-hook #'org-add-log-note 'append)) + (add-hook 'post-command-hook 'org-add-log-note 'append)) (defun org-skip-over-state-notes () "Skip past the list of State notes in an entry." @@ -10487,7 +10488,7 @@ EXTRA is additional text that will be inserted into the notes buffer." "Pop up a window for taking a note, and add this note later." (when (and (equal org-log-note-this-command this-command) (= org-log-note-recursion-depth (recursion-depth))) - (remove-hook 'post-command-hook #'org-add-log-note) + (remove-hook 'post-command-hook 'org-add-log-note) (setq org-log-setup nil) (setq org-log-note-window-configuration (current-window-configuration)) (delete-other-windows) From e8fe9642b06ef7c646e9e43581eb1e47be832c82 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Sun, 3 Mar 2024 22:09:24 -0500 Subject: [PATCH 28/31] Backport commit 445f376e4 from Emacs Revert "ox-texinfo:: Require only TEXINFO_DIR_CATEGORY" 445f376e4e613ebee94d2844926269bfa8793858 Stefan Monnier Sun Mar 3 22:09:24 2024 -0500 --- doc/org-manual.org | 11 ++------- lisp/ox-texinfo.el | 58 ++++++++++++++++++++++++---------------------- 2 files changed, 32 insertions(+), 37 deletions(-) diff --git a/doc/org-manual.org b/doc/org-manual.org index 65a5aaca3..51bbc75e4 100644 --- a/doc/org-manual.org +++ b/doc/org-manual.org @@ -15322,18 +15322,11 @@ the general options (see [[*Export Settings]]). #+cindex: @samp{TEXINFO_DIR_TITLE}, keyword The directory title of the document. - This is the short name under which the ~m~ command will find your - manual in the main Info directory. It defaults to the base name of - the Texinfo file. - - If you need more control, it can also be the full entry using the - syntax ~* TITLE: (FILENAME).~. - =TEXINFO_DIR_DESC= :: #+cindex: @samp{TEXINFO_DIR_DESC}, keyword The directory description of the document. - Defaults to the title of the document. - =TEXINFO_PRINTED_TITLE= :: @@ -15429,7 +15422,7 @@ Here is an example that writes to the Info directory file: #+begin_example ,#+TEXINFO_DIR_CATEGORY: Emacs -,#+TEXINFO_DIR_TITLE: Org Mode +,#+TEXINFO_DIR_TITLE: Org Mode: (org) ,#+TEXINFO_DIR_DESC: Outline-based notes management and organizer #+end_example @@ -15837,7 +15830,7 @@ Texinfo code. ,#+TEXINFO_HEADER: @syncodeindex pg cp ,#+TEXINFO_DIR_CATEGORY: Texinfo documentation system -,#+TEXINFO_DIR_TITLE: sample +,#+TEXINFO_DIR_TITLE: sample: (sample) ,#+TEXINFO_DIR_DESC: Invoking sample ,#+TEXINFO_PRINTED_TITLE: GNU Sample diff --git a/lisp/ox-texinfo.el b/lisp/ox-texinfo.el index 5065c3fb6..84313645e 100644 --- a/lisp/ox-texinfo.el +++ b/lisp/ox-texinfo.el @@ -110,10 +110,6 @@ (:subtitle "SUBTITLE" nil nil parse) (:subauthor "SUBAUTHOR" nil nil newline) (:texinfo-dircat "TEXINFO_DIR_CATEGORY" nil nil t) - ;; FIXME: The naming of these options is unsatisfactory: - ;; TEXINFO_DIR_DESC corresponds (and defaults) to the document's - ;; title, whereas TEXINFO_DIR_TITLE corresponds (and defaults) to - ;; its filename. (:texinfo-dirtitle "TEXINFO_DIR_TITLE" nil nil t) (:texinfo-dirdesc "TEXINFO_DIR_DESC" nil nil t) (:texinfo-printed-title "TEXINFO_PRINTED_TITLE" nil nil t) @@ -151,10 +147,12 @@ "Default document encoding for Texinfo output. If nil it will default to `buffer-file-coding-system'." + :group 'org-export-texinfo :type 'coding-system) (defcustom org-texinfo-default-class "info" "The default Texinfo class." + :group 'org-export-texinfo :type '(string :tag "Texinfo class")) (defcustom org-texinfo-classes @@ -207,6 +205,7 @@ The sectioning structure of the class is given by the elements following the header string. For each sectioning level, a number of strings is specified. A %s formatter is mandatory in each section string and will be replaced by the title of the section." + :group 'org-export-texinfo :version "27.1" :package-version '(Org . "9.2") :type '(repeat @@ -234,6 +233,7 @@ TEXT the main headline text (string). TAGS the tags as a list of strings (list of strings or nil). The function result will be used in the section format string." + :group 'org-export-texinfo :type 'function :version "26.1" :package-version '(Org . "8.3")) @@ -244,32 +244,38 @@ The function result will be used in the section format string." "Column at which to start the description in the node listings. If a node title is greater than this length, the description will be placed after the end of the title." + :group 'org-export-texinfo :type 'integer) ;;;; Timestamps (defcustom org-texinfo-active-timestamp-format "@emph{%s}" "A printf format string to be applied to active timestamps." + :group 'org-export-texinfo :type 'string) (defcustom org-texinfo-inactive-timestamp-format "@emph{%s}" "A printf format string to be applied to inactive timestamps." + :group 'org-export-texinfo :type 'string) (defcustom org-texinfo-diary-timestamp-format "@emph{%s}" "A printf format string to be applied to diary timestamps." + :group 'org-export-texinfo :type 'string) ;;;; Links (defcustom org-texinfo-link-with-unknown-path-format "@indicateurl{%s}" "Format string for links with unknown path type." + :group 'org-export-texinfo :type 'string) ;;;; Tables (defcustom org-texinfo-tables-verbatim nil "When non-nil, tables are exported verbatim." + :group 'org-export-texinfo :type 'boolean) (defcustom org-texinfo-table-scientific-notation nil @@ -279,6 +285,7 @@ The format should have \"%s\" twice, for mantissa and exponent \(i.e. \"%s\\\\times10^{%s}\"). When nil, no transformation is made." + :group 'org-export-texinfo :type '(choice (string :tag "Format string") (const :tag "No formatting" nil))) @@ -290,6 +297,7 @@ This should an indicating command, e.g., \"@code\", \"@kbd\" or \"@samp\". It can be overridden locally using the \":indic\" attribute." + :group 'org-export-texinfo :type 'string :version "26.1" :package-version '(Org . "9.1") @@ -315,6 +323,7 @@ to typeset and protects special characters. When no association is found for a given markup, text is returned as-is." + :group 'org-export-texinfo :version "26.1" :package-version '(Org . "9.1") :type 'alist @@ -332,6 +341,7 @@ The function must accept two parameters: The function should return the string to be exported. The default function simply returns the value of CONTENTS." + :group 'org-export-texinfo :version "24.4" :package-version '(Org . "8.2") :type 'function) @@ -351,6 +361,7 @@ The function must accept six parameters: CONTENTS the contents of the inlinetask, as a string. The function should return the string to be exported." + :group 'org-export-texinfo :type 'function) ;;;; LaTeX @@ -363,6 +374,7 @@ fragments as Texinfo \"@displaymath\" and \"@math\" commands respectively. Alternatively, when set to `detect', the exporter does so only if the installed version of Texinfo supports the necessary commands." + :group 'org-export-texinfo :package-version '(Org . "9.6") :type '(choice (const :tag "Detect" detect) @@ -379,6 +391,7 @@ body but is followed by another item, then the second item is transcoded to `@itemx'. See info node `(org)Plain lists in Texinfo export' for how to enable this for individual lists." :package-version '(Org . "9.6") + :group 'org-export-texinfo :type 'boolean :safe t) @@ -393,6 +406,7 @@ relative file name, %F by the absolute file name, %b by the file base name (i.e. without directory and extension parts), %o by the base directory of the file and %O by the absolute file name of the output file." + :group 'org-export-texinfo :version "26.1" :package-version '(Org . "9.1") :type '(repeat :tag "Shell command sequence" @@ -402,8 +416,8 @@ the output file." '("aux" "toc" "cp" "fn" "ky" "pg" "tp" "vr") "The list of file extensions to consider as Texinfo logfiles. The logfiles will be remove if `org-texinfo-remove-logfiles' is - non-nil." + :group 'org-export-texinfo :type '(repeat (string :tag "Extension"))) (defcustom org-texinfo-remove-logfiles t @@ -801,31 +815,19 @@ holding export options." (format "@copying\n%s@end copying\n\n" (org-element-normalize-string (org-export-data copying info)))) - ;; Info directory information. Only supply if category is provided. - ;; FIXME: A Texinfo doc without a direntry is significantly less useful - ;; since it won't appear in the main Info-directory, so maybe we should - ;; use a default category like "misc"? - (let* ((dircat (plist-get info :texinfo-dircat)) - (dt (plist-get info :texinfo-dirtitle)) - (file (file-name-sans-extension - (or (org-strip-quotes (plist-get info :texinfo-filename)) - (plist-get info :output-file)))) - (dirtitle - (cond - ((and dt - (or (string-match "\\`\\* \\(.*?\\)\\(\\.\\)?\\'" dt) - (string-match "\\`\\(.*(.*)\\)\\(\\.\\)?\\'" dt))) - ;; `dt' is already "complete". - (format "* %s." (match-string 1 dt))) - ((and dt (not (equal dt file))) - (format "* %s: (%s)." dt file)) - (t (format "* %s." file))))) - (when dircat + ;; Info directory information. Only supply if both title and + ;; category are provided. + (let ((dircat (plist-get info :texinfo-dircat)) + (dirtitle + (let ((title (plist-get info :texinfo-dirtitle))) + (and title + (string-match "^\\(?:\\* \\)?\\(.*?\\)\\(\\.\\)?$" title) + (format "* %s." (match-string 1 title)))))) + (when (and dircat dirtitle) (concat "@dircategory " dircat "\n" "@direntry\n" (let ((dirdesc - (let ((desc (or (plist-get info :texinfo-dirdesc) - title))) + (let ((desc (plist-get info :texinfo-dirdesc))) (cond ((not desc) nil) ((string-suffix-p "." desc) desc) (t (concat desc ".")))))) @@ -1588,7 +1590,7 @@ information." (concat "@noindent" (mapconcat - #'identity + 'identity (delq nil (list (let ((closed (org-element-property :closed planning))) From ab62bdd79ff18cf4c88db9e803d51233f4cb71d6 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Sun, 3 Mar 2024 23:08:16 -0500 Subject: [PATCH 29/31] Backport commit 2b5d43081 from Emacs * lisp/ox.el (org-export-to-buffer): Modernize docstring accordingly. * lisp/ox-latex.el (org-latex-export-as-latex): * lisp/ox-koma-letter.el (org-koma-letter-export-as-latex): * lisp/ox-beamer.el (org-beamer-export-as-latex): Use `major-mode-remap` when available. (major-mode-remap(-defaults)): New var and function (bug#69191) 2b5d43081a30f816dd38a16c7b5bfbad712a779b Stefan Monnier Sun Mar 3 23:58:18 2024 -0500 --- lisp/ox-beamer.el | 5 ++++- lisp/ox-koma-letter.el | 4 +++- lisp/ox-latex.el | 5 ++++- lisp/ox.el | 2 +- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/lisp/ox-beamer.el b/lisp/ox-beamer.el index 3d4d99843..d3a90179d 100644 --- a/lisp/ox-beamer.el +++ b/lisp/ox-beamer.el @@ -1008,7 +1008,10 @@ will be displayed when `org-export-show-temporary-export-buffer' is non-nil." (interactive) (org-export-to-buffer 'beamer "*Org BEAMER Export*" - async subtreep visible-only body-only ext-plist (lambda () (LaTeX-mode)))) + async subtreep visible-only body-only ext-plist + (if (fboundp 'major-mode-remap) + (major-mode-remap 'latex-mode) + #'LaTeX-mode))) ;;;###autoload (defun org-beamer-export-to-latex diff --git a/lisp/ox-koma-letter.el b/lisp/ox-koma-letter.el index aef25232c..38460d174 100644 --- a/lisp/ox-koma-letter.el +++ b/lisp/ox-koma-letter.el @@ -911,7 +911,9 @@ non-nil." (let (org-koma-letter-special-contents) (org-export-to-buffer 'koma-letter "*Org KOMA-LETTER Export*" async subtreep visible-only body-only ext-plist - (lambda () (LaTeX-mode))))) + (if (fboundp 'major-mode-remap) + (major-mode-remap 'latex-mode) + #'LaTeX-mode)))) ;;;###autoload (defun org-koma-letter-export-to-latex diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el index bca387e59..98b388081 100644 --- a/lisp/ox-latex.el +++ b/lisp/ox-latex.el @@ -4160,7 +4160,10 @@ will be displayed when `org-export-show-temporary-export-buffer' is non-nil." (interactive) (org-export-to-buffer 'latex "*Org LATEX Export*" - async subtreep visible-only body-only ext-plist (lambda () (LaTeX-mode)))) + async subtreep visible-only body-only ext-plist + (if (fboundp 'major-mode-remap) + (major-mode-remap 'latex-mode) + #'LaTeX-mode))) ;;;###autoload (defun org-latex-convert-region-to-latex () diff --git a/lisp/ox.el b/lisp/ox.el index 19bf559c9..8e2fdd22a 100644 --- a/lisp/ox.el +++ b/lisp/ox.el @@ -6608,7 +6608,7 @@ use it to set a major mode there, e.g., (interactive) (org-export-to-buffer \\='latex \"*Org LATEX Export*\" async subtreep visible-only body-only ext-plist - #\\='LaTeX-mode)) + (major-mode-remap 'latex-mode))) When expressed as an anonymous function, using `lambda', POST-PROCESS needs to be quoted. From 014f85f55f4966cba9221a8fd7bdb4c617342cf8 Mon Sep 17 00:00:00 2001 From: "Basil L. Contovounesios" Date: Mon, 4 Mar 2024 07:19:22 +0100 Subject: [PATCH 30/31] Backport commit 6dacb60bb from Emacs ; Fix last major-mode-remap-defaults change. 6dacb60bb135dbb002c2ce1c70f70430c5d1bbff Basil L. Contovounesios Mon Mar 4 07:19:22 2024 +0100 --- lisp/ox.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/ox.el b/lisp/ox.el index 8e2fdd22a..bf2d9b569 100644 --- a/lisp/ox.el +++ b/lisp/ox.el @@ -6608,7 +6608,7 @@ use it to set a major mode there, e.g., (interactive) (org-export-to-buffer \\='latex \"*Org LATEX Export*\" async subtreep visible-only body-only ext-plist - (major-mode-remap 'latex-mode))) + (major-mode-remap \\='latex-mode))) When expressed as an anonymous function, using `lambda', POST-PROCESS needs to be quoted. From d12f8b8624be4ebf82c6784db1f25cf4c8ab3a13 Mon Sep 17 00:00:00 2001 From: Tim Landscheidt Date: Tue, 12 Mar 2024 00:21:06 +0000 Subject: [PATCH 31/31] Backport commit 6d1c1fca0 from Emacs * lisp/ob-calc.el: (org-babel-execute:calc): * lisp/org-agenda.el (org-agenda-use-sticky-p): Replace (with-current-buffer (get-buffer ...) ...) with (with-current-buffer ...). ; Simplify (with-current-buffer (get-buffer ...) ...) 6d1c1fca0aa7c5a1ff0254af3f89a34d5309ea0d Tim Landscheidt Thu Mar 14 12:40:26 2024 +0200 --- lisp/ob-calc.el | 2 +- lisp/org-agenda.el | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lisp/ob-calc.el b/lisp/ob-calc.el index d335aab74..f834f05cb 100644 --- a/lisp/ob-calc.el +++ b/lisp/ob-calc.el @@ -93,7 +93,7 @@ (mapcar #'org-trim (split-string (org-babel-expand-body:calc body params) "[\n\r]")))) (save-excursion - (with-current-buffer (get-buffer "*Calculator*") + (with-current-buffer "*Calculator*" (prog1 (calc-eval (calc-top 1)) (calc-pop 1))))) diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el index f8195a053..06249ed48 100644 --- a/lisp/org-agenda.el +++ b/lisp/org-agenda.el @@ -3883,7 +3883,7 @@ generating a new one." ;; buffer found (get-buffer org-agenda-buffer-name) ;; C-u parameter is same as last call - (with-current-buffer (get-buffer org-agenda-buffer-name) + (with-current-buffer org-agenda-buffer-name (and (equal current-prefix-arg org-agenda-last-prefix-arg)