* lisp/org-clock.el (org-clock-out-if-current): Autoload function.
* lisp/org.el (org-todo): Do not call `org-clock-out-if-current' if
`org-clock' is not loaded yet.
* lisp/org-clock.el (org-clock-out-if-current): Ignore narrowing.
* lisp/org.el (org-todo): Call directly previous function instead of
relying on a hook.
Reported-by: Leo Vivier <leo.vivier@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-02/msg00132.html>
* lisp/org.el (org-open-at-point): On a tag open a tags view for just
the tag at point. Recent behavior for multiple tags was to open a
tags view for the complete tag string.
* lisp/org-colview.el (org-columns-compute-all):
* lisp/org-timer.el (org-timer-start):
(org-timer-pause-or-continue):
(org-timer-seconds):
* lisp/org.el (org-read-date-analyze): Favor nil argument to
explicitly passing current-time result to float-time and decode-time.
Most of these "(current-time) => nil" changes were made in the Emacs
codebase, but we stayed with the original state because we relied on
explicitly overriding current-time in the tests. As of the last
commit, we no longer need to do this and can use org-test-at-time
instead.
* lisp/org.el (org-repeat-re): Repeaters are for active timestamps
only.
* testing/lisp/test-org.el (test-org/auto-repeat-maybe): Update test.
Reported-by: cesar mena <cesar.mena@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00095.html>
* lisp/org.el (org-clone-subtree-with-time-shift): Accept a negative
value to shift the timestamp backward in time.
* testing/lisp/test-org.el (test-org/clone-with-time-shift): Add test.
Reported-by: Scott Randby <srandby@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00151.html>
Signed-off-by: Yasushi SHOJI <yasushi.shoji@gmail.com>
* lisp/org.el:
* lisp/ox-publish.el:
Prefer ash to lsh when either will do.
Audit use of lsh and fix glitches
f18af6cd5cb7dbbf7420ec2d3efed4e202c4f0dd
Paul Eggert
Tue Aug 21 13:44:32 2018 -0700
* lisp/org-colview.el (org-columns-compute-all):
* lisp/org-timer.el (org-timer-start):
(org-timer-pause-or-continue):
(org-timer-seconds):
(org-timer-set-timer):
* lisp/org.el (org-read-date-analyze): Restore use of `current-time`
for testing purposes.
In these spots, we call (current-time) so that it can be overriden in
tests. Add a comment about this in the cases that don't have one.
* lisp/org-agenda.el (org-agenda-to-appt):
* lisp/org-clock.el (org-clock-resolve-clock)
(org-clock-resolve, org-resolve-clocks-if-idle):
* lisp/org-colview.el (org-columns-edit-value, org-columns)
(org-agenda-columns):
* lisp/org-element.el (org-element--cache-interrupt-p)
(org-element--cache-sync):
* lisp/org-habit.el (org-habit-get-faces)
(org-habit-insert-consistency-graphs):
* lisp/org-indent.el (org-indent-add-properties):
* lisp/org-timer.el ((org-timer-show-remaining-time):
* lisp/org.el (org-babel-load-file, org-current-time)
(org-today, org-auto-repeat-maybe)
(org-small-year-to-year, org-goto-calendar):
* lisp/ox.el (org-export-insert-default-template):
Use nil instead of (current-time) where either will do, as nil is
a bit more efficient and should have less timing error.
Prefer nil to (current-time) when either works
c75f505dea6a560b825384cf3d277690f86840bf
Paul Eggert
Fri Oct 20 19:42:23 2017 -0700
Note(km): The changes that will reverted in the next commit have been
dropped from the ChangeLog entries above.
* lisp/org.el (org-get-tags): Now org-get-tags returns tags list with
tags from #+filetags in the beginning.
* testing/lisp/test-org.el (test-org/get-tags): Add test.
Fixes regression caused by commit
<5e27b2fd32>.
Bug reported in
<https://lists.gnu.org/r/emacs-orgmode/2019-01/msg00052.html>.
* lisp/org.el (org-align-tags): Move point to the beginning of the
visible buffer first before attempting to look for Org headline
tags.
* testing/lisp/test-org.el (test-org/tag-align): Add test.
Fixes a regression in
1615261cdc.
Bug reported in
<https://lists.gnu.org/r/emacs-orgmode/2019-01/msg00051.html>.
* lisp/org.el: add a 'native value to org-highlight-latex-and-related
that allows to use tex native font locking by means of
org-src-font-lock-fontify-block.
* etc/ORG-NEWS: add note about new feature.
* lisp/org.el: remove :use-xcolor option and make dvipng use xcolor
since usage of CLI fg and bg color args is incompatible with docs
that themselves use xcolor (e.g. through tikz).
* etc/ORG-NEWS: add incompatible change note.
* lisp/org.el (org-dynamic-block-insert-dblock,
org-dynamic-block-alist, org-dynamic-block-functions,
org-dynamic-block-types, org-dynamic-block-define,
org-dynamic-block-function): New variables, New functions.
* lisp/org-keys.el (org-dynamic-block-insert-dblock): Add binding for
the function.
(org-clock-report, org-columns-insert-dblock): Remove function
keybindings. Mark them as obsolete.
* doc/org-manual.org (Dynamic Blocks): : Add manual for dispatch
command `org-dynamic-block-insert-dblock'.
* testing/lisp/test-org-clock.el: New test.
* lisp/org.el (org-fontify-extend-region): New function.
(org-compute-latex-and-related-regexp):
(org-do-latex-and-related): Revert recent changes.
(org-set-font-lock-defaults): Use new function.
* lisp/org.el (org-insert-heading): Make C-RET more predictable. In
particular, it should not eat all the blank lines at the end of the
tree.
Reported-by: David Masterson <dsmasterson@outlook.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-11/msg00275.html>
* lisp/org.el (org-auto-repeat-maybe): Fix speed regression introduced
in "Also obey to repeaters in inactive time stamps".
Reported-by: Marco Wahl <marcowahlsoft@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-11/msg00078.html>
* lisp/org.el (org-repeat-re): Accept inactive time stamps.
(org-auto-repeat-maybe): Small refactoring. Find additional repeaters
also in inactive time stamps.
* testing/lisp/test-org.el (test-org/auto-repeat-maybe): Add test.
Reported-by: Leo Gaspard <orgmode@leo.gaspard.io>
<http://lists.gnu.org/r/emacs-orgmode/2018-11/msg00078.html>
* lisp/org.el (org--tags-expand-group): New function.
(org-tags-expand): Refactor code. Fix expansion of identical tag
groups in the same match string. Fix docstring. Remove unused
argument.
* testing/lisp/test-org.el (test-org/tags-expand): New test.
Reported-by: Omari Norman <omari@smileystation.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00360.html>
* lisp/org-src.el (org-src-source-file-name): New variable.
(org-src--edit-element): Set new variable.
* lisp/org.el (org-store-link): Store the source file along with the
coderef so as to insert link in other documents than the one
where the code block is located.
Reported-by: stardiviner <numbchild@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00293.html>
* lisp/org-src.el (org-src--source-buffer): Rename to `org-src-source-buffer'.
(org-src-source-type): New function.
(org-edit-src-save): Apply renaming.
* lisp/org.el (org-store-link): When in an edit buffer not editing
a source block, there is no point in inserting a coderef.
* lisp/org.el (org-mode): Do not call `org-refresh-effort-properties'.
(org-set-effort): Avoid using `effort' text property.
* lisp/org-timer.el (org-timer-set-timer): Avoid using
`effort-minutes' text property.
Limit use of `effort' and `effort-minutes' properties to "org-agenda".
* lisp/org.el: (org-get-tags) Create a clearer separation between
local and inherited tags in the function, so that
org-remove-uninherited tags is only run on inherited tags. This is
important to avoid destroying existing tags when adding new tags.
* testing/lisp/test-org.el: (test-org/get-tags) Add regression test
* lisp/org.el (org-kill-line): Preserve tags when `org-special-ctrl-k'
is non-nil.
* testing/lisp/test-org.el (test-org/kill-line): New test.
Reported-by: Matt Lundin <mdl@imapmail.org>
<http://lists.gnu.org/r/emacs-orgmode/2018-07/msg00122.html>
* lisp/org.el (org-open-at-point): Do not open everything that looks
like a link, in particular in verbatim or code objects. However,
still conveniently open links in comments, node properties and
keywords.
* lisp/ob-core.el (org-babel-open-src-block-result): Fix docstring,
refactor code.
* lisp/org.el (org-open-at-point): Refactor so as to not call
`org-babel-open-src-block-result' unconditionally.
* lisp/org.el (org-effort-duration): Remove unused variable.
* lisp/org-compat.el (org-effort-durations): Make
`org-effort-duration' an alias for `org-duration-units'.
* lisp/org-clock.el (org-clock-modify-effort-estimate): Fix docstring.
* doc/org-manual.org (Footnotes): Clarify footnote.
The variable is inactive since introduction of "org-duration" library.
* lisp/org.el (org--align-tags-here):
(org-set-tags): Modify buffer only when necessary.
* testing/lisp/test-org.el (test-org/set-tags): Add tests.
Reported-by: Allen Li <darkfeline@felesatra.moe>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00242.html>
* lisp/org.el (org-read-property-value):
* lisp/org-capture.el (org-capture-fill-template): Sidestep
`org-set-property'. Use previous function and `org-entry-put'
instead.
Reported-by: Eric Danan <eric.danan@u-cergy.fr>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00061.html>
* lisp/org.el (org-metaup): Do not leave a character behind when
transposing regions.
(org-metadown): Fix "Transposed regions overlap" error.
Reported-by: Adam Porter <adam@alphapapa.net>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00184.html>
* org.el (org--check-org-structure-template-alist): New function
yielding user-error if using old org-structure-template-alist
format.
(org--insert-structure-template-mks):
* org-tempo.el (org-tempo-add-templates): Use new function