Commit Graph

24682 Commits

Author SHA1 Message Date
Ihor Radchenko 4ae72c6174 Backport commit 0f7ceb480 from Emacs
* lisp/ox.el (org-export-as): Use `buffer-chars-modified-tick' and
avoid extra invocations of `org-set-regexps-and-options' and
`org-update-radio-target-regexp' when the buffer is not changed.
Also, disable folding checks.  Folding is irrelevant inside export
buffer.

org-export-as: Do not update buffer settings when not modified
0f7ceb4803cabcb3c406fa7c27ccb7625096058e
Ihor Radchenko
Thu Jun 16 10:53:16 2022 +0300

[ km: This ported commit comes from main's 076dd92ac.  I'm applying it
  here too for bookkeeping/traceability purposes.  ]
2022-10-04 17:10:50 -04:00
Ihor Radchenko 4f8ea50604 Backport commit d21412df0 from Emacs
* lisp/ox.el (org-export-resolve-id-link): Pre-cache all the ids in
the parse tree for faster lookup.

org-export-resolve-id-link: Pre-cache all the ids in the parse tree
d21412df06b99b551e67d39c097d95e8a284de73
Ihor Radchenko
Thu Jun 16 10:52:54 2022 +0300

[ km: This ported commit comes from main's 84c89ea7c.  I'm applying it
  here too for bookkeeping/traceability purposes.  ]
2022-10-04 17:10:50 -04:00
Ihor Radchenko 07c5d066aa Backport commit 3236dedc2 from Emacs
* lisp/ox.el (org-export-resolve-fuzzy-link): Before matching LINK,
pre-process and cache all the non-nil search cells in the parse tree.
When matching, use the pre-processed info.  Fix the :test function for
the cache hash table.

org-export-resolve-fuzyy-link: Pre-cache all possible search cells
3236dedc2de5975afde877f7460bd012da89a98d
Ihor Radchenko
Thu Jun 16 10:52:36 2022 +0300

[ km: This ported commit comes from main's 792cd4b0a.  I'm applying it
  here too for bookkeeping/traceability purposes.  ]
2022-10-04 17:10:50 -04:00
Ihor Radchenko 303c89350e Backport commit 5b3d4e7bf from Emacs
* lisp/ox.el (org-export-get-footnote-definition): Pre-process parse
tree once to filter out all non-footnote elements.  This speeds up
subsequent footnote definition searches.

org-export-get-footnote-definition: Pre-cache references in parse tree
5b3d4e7bf0b6a1eb576e1c6e6592028e3589f792
Ihor Radchenko
Thu Jun 16 10:52:17 2022 +0300

[ km: This ported commit comes from main's f51c28671.  I'm applying it
  here too for bookkeeping/traceability purposes.  ]
2022-10-04 17:10:50 -04:00
Stefan Kangas 5a81ec0018 Backport commit 253374f81 from Emacs
* lisp/org-clock.el (org-clock-select-task): Remove XEmacs
compat code.

Remove some XEmacs compat code from org-mode
253374f81a13109b73afc8e319ca1fea72f68c72
Stefan Kangas
Sat May 14 15:55:20 2022 +0200
2022-10-04 17:10:50 -04:00
Stefan Kangas e74ea551bf Backport commit cc8b6101f from Emacs
* lisp/ol-eww.el (org-eww-copy-for-org-mode):
* lisp/ol-w3m.el (org-w3m-copy-for-org-mode):
* lisp/org-refile.el (org-refile):
* lisp/org.el (org-change-tag-in-region): Remove XEmacs compat
code.

Remove some XEmacs compat code from org-mode
cc8b6101f4479a80a6af7f9d80c6f9d774a85f40
Stefan Kangas
Fri May 13 23:17:16 2022 +0200
2022-10-04 17:10:50 -04:00
Stefan Kangas c06dc10f39 Backport commit 2fba71cf1 from Emacs
* lisp/org-mouse.el (org-mouse-show-context-menu): Use
'mouse-double-click-time' instead of 'double-click-time'.

Fix handling double-click-time nil or t
2fba71cf1fadc9d681e6be250d152cc156bf6a00
Stefan Kangas
Mon May 2 12:03:08 2022 +0200

[ km: Note that mouse-double-click-time isn't available until Emacs
  29; a follow-up commit will add a compatibility kludge. ]
2022-10-04 17:10:04 -04:00
Paul Eggert 37bb3547c7 Backport commit fa1a7ac61 from Emacs
Byte-compiler problem reported by Lars Ingebrigtsen in:
https://lists.gnu.org/r/emacs-devel/2022-04/msg01256.html
* lisp/org-compat.el (org-at-table.el-p):
Now declared in org-table, not org.
(org-string-collate-lessp): Define the ersatz
org-string-collate-lessp with the same API as the primary form, to
pacify check-declare-file when run on org-macs.
* lisp/org-macs.el (org-time-convert-to-integer): Declare.

Pacify byte compiler etc. on org-compat, org-macs
fa1a7ac617619ef015e02e72950eef219ec62336
Paul Eggert
Thu Apr 28 13:41:35 2022 -0700
2022-10-04 16:59:33 -04:00
Paul Eggert 56ba22b9df Backport commit 3abb3681b from Emacs
* lisp/org-macs.el (org-file-newer-than-p):
Don’t assume list-format timestamps, by using
org-time-convert-to-integer instead of doing it by hand.

Use org-time-convert-to-integer instead of by hand
3abb3681b57d7c8ca7fa808addb0a10b6b109cab
Paul Eggert
Wed Apr 27 00:30:25 2022 -0700
2022-10-04 16:59:33 -04:00
Paul Eggert 723af4afae Backport commit 8ef37913d from Emacs
* lisp/ol.el (org-store-link):
* lisp/org-clock.el (org-clock-sum)
(org-clock-update-time-maybe):
* lisp/org-colview.el (org-colview-construct-allowed-dates):
* lisp/org-macro.el (org-macro--vc-modified-time):
* lisp/org-macs.el (org-2ft, org-matcher-time):
* lisp/org-table.el (org-table-eval-formula):
* lisp/org.el (org-read-date, org-display-custom-time)
(org-time-string-to-time, org-timestamp-change):
Don’t assume Emacs 27 encode-time, since standalone Org still
works with Emacs 25 and it’s easier if we minimize differences
from standalone Org.  Problem reported by Max Nikulin (Bug#54731).
This reverts much of 2021-12-16T17:40:21Z!eggert@cs.ucla.edu.

Port Org encode-time usage back to Emacs 25
8ef37913d3be5ff518018acb6b0144d6e559b5ba
Paul Eggert
Tue Apr 5 17:52:34 2022 -0700

[ km: See main's 8908a1bda (org-macs.el: Introduce a helper for
  `encode-time', 2022-07-17). ]
2022-10-04 16:59:15 -04:00
Sam Steingold 5d5a7832ec Backport commit 18b680cfd from Emacs
* lisp/ol-eshell.el (org-eshell-open): Pass
'display-comint-buffer-action' to 'pop-to-buffer' instead of using
'pop-to-buffer-same-window'.

Fix bug#52467 by adding a new custom variable 'display-comint-buffer-action'
18b680cfd177e877991be2bd70ead628bbdc0aa0
Sam Steingold
Tue Dec 28 17:28:49 2021 -0500

[ km: Note that display-comint-buffer-action isn't available until
  Emacs 29.  A compatibility kludge will be added in a follow-up
  commit. ]
2022-10-04 16:57:09 -04:00
Stefan Kangas 1a3dd6ec85 Backport commit 5f57b41aa from Emacs
; Minor license statement fixes
5f57b41aa612e5f190f5a3c1ea013be114493a03
Stefan Kangas
Mon Dec 20 22:31:31 2021 +0100
2022-10-04 16:57:09 -04:00
Paul Eggert 659646f135 Backport commit e0ca8f791 from Emacs
* lisp/ox-icalendar.el (org-icalendar-template)
(org-icalendar-export-current-agenda)
(org-icalendar--combine-files):
Prefer (format-time-string "%Z") to (cadr (current-time-zone)).

Prefer format-time-string to current-time-zone
e0ca8f791c2e4396f1e40d86c136ae547b40185d
Paul Eggert
Thu Dec 16 11:17:26 2021 -0800

[ km: The org-icalendar--combine-files change has a typo that will be
  fixed in a follow-up commit. ]
2022-10-04 16:57:09 -04:00
Paul Eggert 772c44779c Backport commit dd0727e1e from Emacs
* lisp/ol.el (org-store-link):
* lisp/org-clock.el (org-clock-sum)
(org-clock-update-time-maybe):
* lisp/org-colview.el (org-colview-construct-allowed-dates):
* lisp/org-macro.el (org-macro--vc-modified-time):
* lisp/org-macs.el (org-2ft, org-matcher-time):
* lisp/org-table.el (org-table-eval-formula):
* lisp/org.el (org-read-date, org-display-custom-time)
(org-time-string-to-time, org-timestamp-change):
Prefer (encode-time L) to (apply #'encode-time L) where either will do.
* lisp/org-clock.el (org-clocktable-steps):
Prefer (encode-time S M ...) to (apply #'encode-time (list S M ...)).

encode-time simplifications
dd0727e1ec1f535b9b06be88173b4d3ccd55abcb
Paul Eggert
Thu Dec 16 11:17:25 2021 -0800

[ km: Note that these changes will be reverted by the port of Emacs's
  8ef37913d. ]
2022-10-04 16:55:56 -04:00
Paul Eggert 1a2d2fd5e4 Backport commit c1145c31a from Emacs
* lisp/org-compat.el (file-attribute-modification-time):
Update doc string to match that of builtin Emacs.

Update org-compat doc string
c1145c31adf143460911dd87b408d35ea88a1a92
Paul Eggert
Sun Dec 5 23:24:10 2021 -0800
2022-10-04 16:27:45 -04:00
Stefan Kangas f99a8ea434 Backport commit 104e90d93 from Emacs
* lisp/org-clock.el (org-clock-persist-file):
* lisp/org-id.el (org-id-locations-file): Prefer
'locate-user-emacs-file' to fiddling with 'user-emacs-directory'
directly.

Prefer locate-user-emacs-file
104e90d93664892ed1a7a1631c5b0141d0552a60
Stefan Kangas
Tue Nov 9 07:51:27 2021 +0100
2022-10-04 16:27:45 -04:00
Stefan Kangas c7e1bbfd1c Backport commit 664094222 from Emacs
* lisp/org-capture.el (org-capture-fill-template):
* lisp/org-refile.el (org-refile-get-location): Prefer format-prompt
when it is fboundp.

Use format-prompt for many more prompts
66409422214a0a90e1d2a12ef2c4ebf86f2c01a9
Stefan Kangas
Tue Oct 5 03:44:56 2021 +0200
2022-10-04 16:27:45 -04:00
Stefan Kangas e7572fa86c Backport commit 616dcf27e from Emacs
; Fix typos in Lisp symbols
616dcf27e57388403d4c28d441bf7310bb665241
Stefan Kangas
Tue Sep 20 12:21:40 2022 +0200
2022-10-04 16:27:36 -04:00
Stefan Kangas de5bdb090d Backport commit 19de241a7 from Emacs
* doc/org-manual.org (Using CDLaTeX to enter math, Footnotes): Recommend
NonGNU ELPA over MELPA.

Recommend NonGNU ELPA over MELPA
19de241a7dc193c0d0423019824627adb28f8944
Stefan Kangas
Fri Sep 16 14:04:27 2022 +0200
2022-10-04 16:27:35 -04:00
Bastien 8ef6205a56 lisp/org.el: Bump version to 9.5.5 2022-09-03 20:54:27 +02:00
Eric S Fraga 4dff42f6a6
lisp/ob-julia.el: Fix session support for Julia
* ob-julia.el (org-babel-julia-evaluate-session, commentary): Add line
to initialize ESS so that Julia sessions work.  Also added text in
commentary about Julia packages that sessions require.  Fix
contributed by Stephen Eglen.  See discussion:
https://stat.ethz.ch/pipermail/ess-help/2022-August/013113.html.
2022-08-20 13:54:43 +08:00
Ihor Radchenko 70a311b001
ox-icalendar: Avoid processing ignored elements
* lisp/ox-icalendar.el (icalendar): Use nil transcoders instead of
`ignore' for ignored element types.  Otherwise, `org-export-data'
still exports the ignored element contents, including resolving links,
and the result is ignored.  The contents might contain broken links
and hence lead to errors despite the whole element not supposed to be
exported.

Fixes https://orgmode.org/list/45aa417a-7eb1-1070-b0dd-17bdd7d1448f@mailbox.org
2022-08-11 13:33:15 +08:00
Stefan Kangas 6e991f4bb9 Backport commit 10b691987 from Emacs
; Fix typos
10b69198708105655c49b62ac7d6185abb7e02a7
Stefan Kangas
Sat Jul 16 10:07:38 2022 +0200
2022-07-24 16:22:34 -04:00
Stefan Kangas 745bdebe73 Backport commit ba0871bef from Emacs
; Fix typos: prefer American spelling
ba0871bef1e7d321f1124a6ad20e9be158a976dd
Stefan Kangas
Wed Jul 13 13:04:22 2022 +0200
2022-07-24 16:22:33 -04:00
Kyle Meyer 2e36ac2ac1 Merge single quote fixes from Emacs's master
This brings in ports of bbf389ea6de (Audit quoting the quote character
in doc strings, 2022-04-22), 2d71fd3b041 (Further doc string quoting
fixes, 2022-04-22), and b2bce107b15 (Further audits of single quotes
in Lisp doc strings, 2022-05-24) from Emacs's master branch, resolving
conflicts with 01b0fb14b (Backport from main: Escape single left
quotes in docstrings, 2022-07-24).

In all cases, take Emacs's side.  There are two cases where I think
Org's version is preferable, org-babel-lua-read-string and
org-agenda-sorting-strategy.  Don't keep those _on bugfix_ to avoid
conflicts when Emacs's emacs-28 branch is merged to its master branch.
When I merge bugfix to main, I'll keep Org's variant, so they'll
eventually make it to Emacs's tree, just not as part of the Org 9.5.x
to emacs-28 syncing.
2022-07-24 16:18:15 -04:00
Lars Ingebrigtsen 9d29de23cf Backport commit b2bce107b from Emacs
* lisp/org.el (org-latex-to-html-convert-command):
* lisp/org-agenda.el (org-agenda-sorting-strategy): Audit use of
various single quotes in Lisp doc strings.

Further audits of single quotes in Lisp doc strings
b2bce107b15d6e0c2b773704179c6bf463525459
Lars Ingebrigtsen
Tue May 24 13:17:53 2022 +0200

[km] Org's bugfix branch is currently receiving commits from emacs-28,
     but this commit comes from Emacs's master branch.  I'm porting it
     because it has conflicts with bugfix's 01b0fb14b (Backport from
     main: Escape single left quotes in docstrings, 2022-07-24) and
     only touches docstrings.
2022-07-24 16:17:23 -04:00
Lars Ingebrigtsen 5fdbf159f2 Backport commit 2d71fd3b0 from Emacs
* lisp/ob-table.el (org-sbe): Further quoting fixes in doc strings.

Further doc string quoting fixes
2d71fd3b041506c68b5f1cd1e409e09e25778c34
Lars Ingebrigtsen
Fri Apr 22 17:16:42 2022 +0200

[km] Org's bugfix branch is currently receiving commits from emacs-28,
     but this commit comes from Emacs's master branch.  I'm porting it
     because it has conflicts with bugfix's 01b0fb14b (Backport from
     main: Escape single left quotes in docstrings, 2022-07-24) and
     only touches docstrings.
2022-07-24 16:17:23 -04:00
Lars Ingebrigtsen cea0263784 Backport commit bbf389ea6 from Emacs
* lisp/ox-publish.el (org-publish-find-property):
* lisp/ox-html.el (org-html--unlabel-latex-environment):
* lisp/org-table.el (org-table-collapse-header):
* lisp/org-plot.el (org--plot/prime-factors):
* lisp/org-agenda.el (org-agenda--mark-blocked-entry):
(org-agenda-set-restriction-lock):
* lisp/ob-lua.el (org-babel-lua-read-string):
* lisp/ob-julia.el (org-babel-julia-evaluate-external-process):
(org-babel-julia-evaluate-session):
* lisp/ob-core.el (org-babel-default-header-args): Fix
quoting in doc strings.  In code examples, the ' character is
quoted with \\=, and regularize 'foo to `foo', and quote strings
like "foo" instead of 'foo'.

Audit quoting the quote character in doc strings
bbf389ea6deab229ba18dc519fe712ec982609d1
Lars Ingebrigtsen
Fri Apr 22 16:17:22 2022 +0200

[km] Org's bugfix branch is currently receiving commits from emacs-28,
     but this commit comes from Emacs's master branch.  I'm porting it
     because it has conflicts with bugfix's 01b0fb14b (Backport from
     main: Escape single left quotes in docstrings, 2022-07-24) and
     only touches docstrings.
2022-07-24 15:58:18 -04:00
Ihor Radchenko 1c3a46268f
Backport from main: Fix compatibility with Emacs 26
* lisp/org-compat.el (org-replace-buffer-contents): Add compatibility
function for `replace-buffer-contents'.

* lisp/org-src.el (org-edit-src-save, org-edit-src-exit): Use
`org-replace-buffer-contents'.
2022-07-24 20:23:48 +08:00
Ihor Radchenko a0a078049b
Fix compiler warnings
* lisp/oc-basic.el (org-open-file): Declare function.
2022-07-24 20:19:47 +08:00
Robert Pluim 01b0fb14bc
Backport from main: Escape single left quotes in docstrings
* lisp/ob-core.el (org-babel-default-header-args):
* lisp/ob-julia.el (org-babel-julia-evaluate-external-process):
(org-babel-julia-evaluate-session):
* lisp/ob-lua.el (org-babel-lua-read-string):
* lisp/ob-table.el (org-sbe):
* lisp/oc-basic.el (org-cite-basic--shorten-names):
* lisp/org-agenda.el (org-agenda-sorting-strategy):
(org-agenda--mark-blocked-entry):
(org-agenda-set-restriction-lock):
* lisp/org-fold-core.el (org-fold-core--specs):
(org-fold-core-remove-folding-spec):
(org-fold-core-get-folding-spec):
(org-fold-core--isearch-overlays):
* lisp/org-plot.el (org--plot/prime-factors):
* lisp/org-table.el (org-table-collapse-header):
* lisp/org.el (org-special-ctrl-o):
(org-latex-to-html-convert-command):
* lisp/ox-html.el (org-html--unlabel-latex-environment):
* lisp/ox-publish.el (org-publish-find-property):
Use \\=' when there's a need for a single left quote in a docstring.

The emacs-29 byte compiler complains about such usage.
2022-07-24 20:19:11 +08:00
Ihor Radchenko afe50b7132
Fix Emacs 26 compatibility
* lisp/org-plot.el (org-plot/gnuplot): Do not use `if-let'.
* lisp/ox-ascii.el (org-ascii--describe-links):
* lisp/ox-md.el (org-md--headline-referred-p): Do not use
`ignore-error'.
* testing/org-test.el (org-test-at-time): Fallback to older definition
of `decode-time' when it cannot accept 3 arguments.
2022-07-24 20:11:03 +08:00
Ihor Radchenko e5cf0bc840
org-export: Do not use broken link handler on non-link elements
* lisp/ox.el (org-export-data): Only catch 'org-link-broken on link
objects.  Signaling 'org-link-broken for other element types, should
not happen and we should _not_ export such elements as "" or "[BROKEN
LINK...]".
2022-07-23 14:10:45 +08:00
Ihor Radchenko 14532ec6a5
ox-md: Fix export with broken links
* lisp/ox-md.el (org-md--headline-referred-p): Allow exporting
headlines when the document contains broken links and
`org-export-with-broken-links' is non-nil.  For broken links,
`org-export-resolve-link' throws an error - catch it and do not match
the headline against such broken link.
2022-07-23 14:10:19 +08:00
Ihor Radchenko 4631790fb9
ox-ascii: Fix export with broken links
* lisp/ox-ascii.el (org-ascii--describe-links): Skip broken links.
2022-07-23 14:10:13 +08:00
Ihor Radchenko c779b7aa0e
org-babel-detangle: Fix :comments link for src blocks before first heading
* lisp/ob-tangle.el (org-babel-tangle-jump-to-org): Allow fuzzy
matching when following the backlink to src block from tangles
source.  The current default value of
`org-link-search-must-match-exact-headline` makes
`org-link-open-from-string` treat fuzzy links as headlines without
falling back to fuzzy text search.  Bind it to nil to force fuzzy text
matching while detangling.

Fixes https://orgmode.org/list/87zgh1qxfk.fsf@posteo.net
2022-07-23 10:10:24 +08:00
Stefan Kangas 6dc785288d Backport commit 1f6750b53 from Emacs
Avoid treating number as an enum in the org manual
1f6750b53a872a5747dff92b8f61cfede0c5a6a6
Stefan Kangas
Fri Jun 24 19:18:50 2022 +0200

[km] This same change was sent to the Org list and applied to main in
     db3870bfc.
2022-06-26 22:53:26 -04:00
David Lukes 0dc27a8837
oc-basic.el: Stringify year from CSL-JSON date-parts
* lisp/oc-basic.el (org-cite-basic--parse-json): Make sure year
extracted from date-parts is returned as string.  Raise error if
original type other than number or string.

The stringifiation is motivated by errors like the following on Emacs 28
with nativecomp:

Error during redisplay: (jit-lock-function 544) signaled
(wrong-type-argument "Argument is not a string or a secondary string:
2007")

Additionally, the type check will warn users about problems in their
CSL-JSON bibliographies.

Fixes https://list.orgmode.org/875ykv4k2q.fsf@localhost/T/#t

TINYCHANGE
2022-06-23 21:20:53 +08:00
Stefan Kangas 02a22d6fad Backport commit 9a4862a97 from Emacs
doc/misc/org.org: Remove spurious markup.
9a4862a9738c2abab8fb4fb2e4e57b69dea679d7
Stefan Kangas
Wed Jun 8 13:16:32 2022 +0200
2022-06-19 16:29:01 -04:00
Bastien e0b05b0752 lisp/org.el: Bump version to 9.5.4 2022-06-03 08:37:30 +02:00
Bastien 4aaa2683b6 lisp/org-clock.el: Fix `read-number' prompt
* lisp/org-clock.el (org-clock-resolve): Fix `read-number' prompt.
2022-05-22 22:01:19 +02:00
Ihor Radchenko ef41f385fb
fixup! org-babel-load-file: Fix loading with non-nil COMPILE argument 2022-05-14 19:34:08 +08:00
Ihor Radchenko 4fe59b688f
org-babel-load-file: Fix loading with non-nil COMPILE argument
* lisp/org.el (org-babel-load-file): Use correct file name to load
compiled file.

Fixes https://orgmode.org/list/t5j75h$dbo$1@ciao.gmane.io
2022-05-13 18:35:13 +08:00
Ihor Radchenko f8bb414615
org-at-timestamp-p: Fix compatibility with Emacs 26
* lisp/org.el (org-at-timestamp-p): Do not use variables in regexp rx
form.  They are not yet supported in Emacs 26.  Expand them at runtime
instead.
2022-05-02 12:03:52 +08:00
Kyle Meyer d5410433e9 ORG-NEWS: Drop spurious headings added by recent commit
8aff82568 (Revert "org-faces.el: Use fixed-pitch", 2022-04-19) broke
the "New options" section for 9.5 by inserting two headings, both
already covered by 9.5 entries, between the heading and body for the
new org-babel-plantuml-svg-text-to-path option.
2022-04-24 21:03:48 -04:00
Bastien 7142392646 etc/ORG-NEWS: Remove outdated entry
This entry is not relevant since commit 8aff82568.
2022-04-24 11:29:53 +02:00
Bastien 79959c4ee4 etc/ORG-NEWS: Update reference to a mail 2022-04-24 11:23:57 +02:00
Bastien 69c588947d lisp/org.el: Bump version to 9.5.3 2022-04-19 11:24:07 +02:00
Bastien 8aff825682 Revert "org-faces.el: Use fixed-pitch"
This reverts commit 667cb6f1ae.
2022-04-19 11:23:35 +02:00
Ihor Radchenko 1f617727f1
org-at-timestamp-p: Fix invalid regexp groups for 'agenda scope
* lisp/org.el (org-at-timestamp-p): Make sure that match groups follow
the docstring in `agenda' scope.  Update docstring explaining return
values for sexp timestamps.

Reported in https://orgmode.org/list/CAKJdtO8bqdbW5N6pRFNQRATjm2daEBDCpJj0njwcd4fmhSJSKQ@mail.gmail.com
2022-04-18 22:54:28 +08:00