* lisp/org.el (org-open-at-mouse): Suppress parser warning when
attempting to open fontified Org links outside Org mode (for example,
in agenda buffers). This is not a real fix - parser may still fail in
buffers where the surrounding link contents makes parser use
Org-specific local variables; but we at least recover from
deterioration of the behaviour when opening links worked _most of the
time_ without issues.
Reported-by: Nikolay Kudryavtsev <nikolay.kudryavtsev@gmail.com>
Link: https://orgmode.org/list/a864b26f-433e-49a8-8d58-74c9210e0fbd@gmail.com
* lisp/org.el (org-comment-or-uncomment-region): When calculating
region boundaries inside src edit buffer, do not assume that region
length does not change - it may, when the indentation inside src edit
buffer is different from the Org buffer.
Reported-by: Stephanus Comnenus <linjt267@gmail.com>
Link: https://orgmode.org/list/CAHqtn=fWq6E5_pm72AB9vFxwjS0a8ma=UvVjMrgeivE9pa13ZQ@mail.gmail.com
TINYCHANGE
* lisp/ob-core.el (org-babel-get-src-block-info): Use `copy-tree'
when using `org-babel-default-header-args*' variables to prepare the
`info' variable used in src block evaluation. The `info' variable gets
modified, and the modifications were affecting the values of the user
variables. In particular, the `:file' setting was modified in the presence
of a `:output-dir' setting, concatenating more and more copies of the directory
every time the block was evaluated.
Reported-by: @lyndhurst on SE Emacs
Link: https://emacs.stackexchange.com/questions/82261/
* lisp/org-persist.el (org-persist--write-cache):
* lisp/org-persist.el (org-persist-read):
(org-persist-write): Remove `org-persist--write-cache'. The values,
after reading, might sometimes be modified in place. The
modifications, when done inside some kind of deeply nested structure,
will propagate to the cache, polluting what was originally written in
the persist file.
This was a difficult bug to spot - the modification hapenned when an
Org buffer was saved to a different file (C-x C-w), modified, leading
to `org-element--cache' modification, and then closed. This
modification propagated to `org-persist--write-cache', leading to
incorrect cache value being assigned to the original buffer (before
C-x C-w).
Reported-by: Gregor Zattler <telegraph@gmx.net>
* lisp/ox-texinfo.el (org-texinfo-supports-math-p): Two
improvements: (1) Fix the incorrect `.info' extension used for the
temporary `.texi' file. This removes the warning "makeinfo: warning:
input file testXXX.info; did you mean testXXX.texi?" (2) Suppress
output when compiling the "Is math supported?" test file. This is to
avoid user confusion, as the user cares about their Texinfo file, not
implementation details. This removes the message "Processing Texinfo
file /var/.../testXXX.info...".
* lisp/ob-core.el (org-babel-view-src-block-info): Query in-buffer
header arguments (`org-entry-get') from Org buffer. It does nothing
from *Help* buffer.
In the previous version, when the user interactively calls
`org-babel-view-src-block-info' and the point is on a code block, these
two warnings are shown in the buffer *Warnings*:
⛔ Warning (org-element): ‘org-element-at-point’ cannot be used in non-Org buffer #<buffer *Help*> (help-mode)
⛔ Warning (org-element): ‘org-element-at-point’ cannot be used in non-Org buffer #<buffer *Help*> (help-mode)
This happened because `org-babel-view-src-block-info'
calls (org-entry-get (point) "header-args" t) while being in
the *Help* buffer. `org-babel-view-src-block-info' should call
org-entry-get while being in the Org Mode buffer and then switch to
the *Help* buffer once it has all the information that is then
displayed in the *Help* buffer.
In the introduced changes, we execute (org-entry-get (point)
"header-args" t) while being in the Org Mode buffer and we switch
to *Help* when we have the necessary information that is then shown in
the *Help* buffer.
TINYCHANGE
* lisp/org.el (org-fontify-meta-lines-and-blocks-1): Add "export" to
list of block types that are fontified if `org-src-fontify-natively'
is non-nil. This brings back the previous undocumented behaviour.
Link: https://list.orgmode.org/87h6aejf17.fsf@localhost/
TINYCHANGE
* doc/org-manual.org (Global and local cycling):
(Initial visibility): Replace `org-set-startup-visibility' with
`org-cycle-set-startup-visibility' as per "This function is obsolete
since 9.6; use ‘org-cycle-set-startup-visibility’ instead."
* lisp/org-persist.el (org-persist-write:index): Disable
pretty-printing when writing index. This is simply too slow once
index reaches ~1000 items. `pp' is slow. See bug#58687.
(org-persist--write-elisp-file): Add FIXME explaining that using PP
argument is probably not a good idea.
Reported-by: Visuwesh <visuweshm@gmail.com>
Link: https://orgmode.org/list/87r0axvu7y.fsf@gmail.com
* lisp/org.el (org--get-expected-indentation): Allow ELEMENT to be nil.
(org-indent-line): Account for element at point possibly being
nil (`org-element-at-point' returns nil at blank lines at the
beginning of buffer).
Reported-by: Jens Schmidt <jschmidt4gnu@vodafonemail.de>
Link: https://orgmode.org/list/87ed7tb4ja.fsf@sappc2.mail-host-address-is-not-set
* lisp/org.el (org-insert-subheading): Make sure that `forward-char'
never happens at the end of buffer. Also, only move char when we are
at actual heading/item - that's the only case when we need to adjust
point position to avoid `org-insert-heading' inserting above.
* lisp/org-agenda.el (org-agenda-category-icon-alist): Refer to
`org-agenda-prefix-format' in the docstring, as it is what controls
whether the icons are rendered at all.