Commit Graph

15171 Commits

Author SHA1 Message Date
Nicolas Goaziou 1b1797d446 org-list: Fix missing newline in `org-list-make-subtree'
* lisp/org-list.el (org-list-make-subtree): Add missing newline.

Reported-by: Felix Wiemuth
Fixes bug#34334
2019-02-10 23:28:18 +01:00
Nicolas Goaziou d4d681cc15 ox-publish: Fix previous patch
* lisp/ox-publish.el (org-publish-cache-file-needs-publishing): Remove
  unnecessary code, since `time-less-p' also handles integers.

Reported-by: Paul Eggert <eggert@cs.ucla.edu>
<http://lists.gnu.org/r/emacs-orgmode/2019-02/msg00074.html>
2019-02-10 13:57:40 +01:00
Nicolas Goaziou 9b3ca51fa4 Merge branch 'maint' 2019-02-09 18:53:28 +01:00
Nicolas Goaziou b929c3e5e4 Fix typo in docstring
* lisp/org.el (org-get-tags): Fix typo in docstring.
2019-02-09 18:52:54 +01:00
Marco Wahl cdcbc2fa82 org-goto: Remove jump to point-min at every start of search
The jump has been unexpected and confusing and is undocumented AFAICT.
2019-02-09 16:06:06 +01:00
Nicolas Goaziou de54bbd759 reproducibility: Remove absolute file names in ox-odt.elc
* lisp/ox-odt.el (org-odt-schema-dir-list):
(org-odt-styles-dir-list): Remove `eval-when-compile'.
* mk/org-fixup.el (org-make-org-version): Change signature. Do not
  hard-code ODT style directory at build time.

Fixes: bug#34323
2019-02-09 12:31:37 +01:00
Nicolas Goaziou 19baf228c0 org-habit: Silence byte-compiler
* lisp/org-habit.el (org-habit-build-graph): Silence
  byte-compiler.  Tiny refactoring.
2019-02-09 00:41:15 +01:00
Nicolas Goaziou 67d25049ed ox-publish: Use `org-strip-quotes'
* lisp/ox-publish.el (org-publish-cache-file-needs-publishing): Use
  `org-strip-quotes'.
2019-02-09 00:36:12 +01:00
Nicolas Goaziou c7f4e85389 ox-publish: Fix arithmetic range error on some systems
* lisp/ox-publish.el (org-publish-cache-file-needs-publishing):
(org-publish-cache-ctime-of-src): Use internal time format for
timestamps.

Reported-by: Colin Baxter <m43cap@yandex.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-02/msg00072.html>
2019-02-09 00:32:13 +01:00
Marco Wahl 0da4491622 org-habit: Mouse over habit graph displays date
* lisp/org-habit.el (org-habit-build-graph): Display the date also for
  day when the task has not been marked done.  If the task has been
  marked done the string "DONE" appears in the display.

Hint: With { M-x tooltip-mode } the date appears in a tooltip
2019-02-07 23:40:19 +01:00
John Lee 18b85aa3fe org-habit: Use face 'org-agenda-done for habits scheduled for future
* lisp/org-agenda.el (org-agenda-get-scheduled): Use the face.

This has the effect that if you just did the habit, it is "greyed out"
in the agenda.

TINYCHANGE
2019-02-06 22:29:32 +01:00
John Lee ba9111a7de org-habit: Always show time of day designation for habits
* org-agenda.el (org-agenda-get-scheduled): Always show the time of
  day designation for habits

TINYCHANGE
2019-02-06 22:29:29 +01:00
John Lee ba1fba147f org-habit: Add org-habit-scheduled-past-days
* lisp/org-habit.el (org-habit-scheduled-past-days): New variable

* lisp/org-agenda.el (org-agenda-get-scheduled): override
  `org-scheduled-past-days' for habits if
  `org-habit-scheduled-past-days` is not nil

TINYCHANGE
2019-02-06 22:29:21 +01:00
Nicolas Goaziou 230cc1ee07 Merge branch 'maint' 2019-02-06 19:34:10 +01:00
Nicolas Goaziou 03d7441813 Fix `org-edit-special' on INCLUDE with additional parameters
* lisp/org.el (org-edit-special): Correctly parse filenames with
  quotes and additional parameters.

Reported-by: Joon Ro <joon.ro@outlook.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-02/msg00066.html>
2019-02-06 19:32:30 +01:00
Nicolas Goaziou ef1edfc25c org-num: Add missing :package-version keywords
* lisp/org-num.el (org-num-face):
(org-num-format-function):
(org-num-max-level):
(org-num-skip-commented):
(org-num-skip-footnotes):
(org-num-skip-tags):
(org-num-skip-unnumbered): Add missing :package-version keyword.
2019-02-05 09:19:56 +01:00
Nicolas Goaziou 0b5ce28f1e Fix :package-version value
* lisp/org.el (org-email-link-description-format):
  Fix :package-version value.
2019-02-05 09:17:51 +01:00
Nicolas Goaziou 42d9c0d24d org-num: Silence byte-compiler 2019-02-05 08:43:40 +01:00
Nicolas Goaziou 0e5e01ba76 Merge branch 'maint' 2019-02-04 18:02:54 +01:00
Nicolas Goaziou 70dde3f617 ob-core: Fix Noweb reference regexp
* lisp/ob-core.el (org-babel-noweb-wrap): Fix regexp, which could not
  match 2 character long references.  Add docstring.
2019-02-04 18:02:38 +01:00
Kyle Meyer 2d88cfbc08 Merge branch 'maint' 2019-02-03 12:05:49 -05:00
Kyle Meyer c6d37c6ebd org-attach: Autoload org-attach-dired-to-subtree
* lisp/org-attach.el (org-attach-dired-to-subtree): Autoload.

A code snippet in the manual suggests binding this command in
dired-mode-map.  Autoload it so that the snippet works without an
implicit (require 'org-attach).
2019-02-03 12:04:57 -05:00
Nicolas Goaziou 96cc9b58c2 Bump Org version 2019-02-03 14:54:58 +01:00
Nicolas Goaziou ce48c6b0d1 Merge branch 'maint' 2019-02-03 14:42:18 +01:00
Nicolas Goaziou 70c90c2cb5 Fix nested VISIBILITY property
* lisp/org.el (org-set-visibility-according-to-property): Fix nested
  VISIBILITY property. Small refactoring.
* testing/lisp/test-org.el (test-org/set-visibility-according-to-property):
  Add test.

Reported-by: Michael Maurer <maurer.michael@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00402.html>
2019-02-03 14:23:44 +01:00
Nicolas Goaziou 0586b0e45a Merge branch 'maint' 2019-02-02 22:51:14 +01:00
Anders Johansson 4761fab2ff org-faces: Use regexp-opt in org-set-tag-faces
* org-faces.el (org-set-tag-faces): Use appropriate call to regexp-opt

TINYCHANGE
2019-02-02 22:50:07 +01:00
Kyle Meyer 646d4a5fe9 Merge branch 'maint' 2019-01-31 23:04:06 -05:00
Kyle Meyer af7795533a Revert "(current-time) => nil" for Emacs 24 compatibility
* lisp/org-clock.el (org-clock-resolve-clock):
(org-clock-resolve):
(org-resolve-clocks-if-idle):
* lisp/org-element.el (org-element--cache-interrupt-p):
(org-element--cache-sync):
* lisp/org-habit.el (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): Revert nil to (current-time) replacement for
compatibility with Emacs 24.

This reverts many changes introduced by eb10ad936 (Backport commit
c75f505de from Emacs, 2017-10-20).

Reported-by: Samuel Wales <samologist@gmail.com>
<https://lists.gnu.org/archive/html/emacs-orgmode/2019-01/msg00427.html>
2019-01-31 23:03:10 -05:00
Nicolas Goaziou 683df456a4 org-list: Remove fancy description list indentation
* lisp/org-list.el (org-list-description-max-indent): Remove variable.
(org-list-item-body-column): No longer indent specially description
items.
* lisp/org.el (org-indent-line): Prune reference to removed variable
  in docstring.

Special indentation on description items breaks indentation in
sub-items.
2019-01-31 00:26:00 +01:00
Nicolas Goaziou 94f67273c6 org-list: Remove unused variable
* lisp/org-list.el (org-list-export-context): Remove variable.
2019-01-31 00:12:57 +01:00
Nicolas Goaziou 6c03dc77c9 Merge branch 'maint' 2019-01-30 23:42:48 +01:00
Brad Knotwell bf9bf7a174 ob-lua: Fix multi-line :var input
* lisp/ob-lua.el (org-babel-lua-var-to-lua): Support multi-line :var
  input using Lua's [=[ ... ]=] syntax instead of the syntactically
  invalid and pythonesque """.

TINYCHANGE
2019-01-30 23:42:32 +01:00
Nicolas Goaziou ee29cdc40e Merge branch 'maint' 2019-01-30 22:36:14 +01:00
Nicolas Goaziou a6adc9831d Add new `org-todo-repeat-hook'
* lisp/org.el (org-todo-repeat-hook): New variable.
(org-auto-repeat-maybe): Use it.

See <http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00102.html>.
2019-01-30 22:35:30 +01:00
Nicolas Goaziou 5e47e49832 Revert actionable repeaters in inactive timestamps
* 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>
2019-01-30 22:19:28 +01:00
Nicolas Goaziou 8ba23b9ce1 Merge branch 'maint' 2019-01-29 10:08:51 +01:00
Nicolas Goaziou 5fe9e6cbea Extend pcomplete binding to C-M-i
* lisp/org.el (org-mode-map): Add TAB equivalent to <tab> binding.

Reported-by: Johannes Altmanninger <aclopte@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00373.html>
2019-01-29 10:06:19 +01:00
Marco Wahl 5b39d8e61d org-goto: Remove needless line 2019-01-28 09:33:51 +01:00
Marco Wahl 9018e755fe org-attach: update dired when attaching with the mv method
* lisp/org-attach.el (org-attach-dired-to-subtree): Revert dired
  buffer when the mv method is active.
2019-01-28 09:26:18 +01:00
Jamie Forth 5c07b4522c ox-beamer: Export overlay specification for notes
* ox-beamer.el (org-beamer-headline): Pass overlay specification to
beamer `\note{}' command.

This is useful for animating multiple slides within a single frame and
displaying only relevant note for each step.

TINYCHANGE
2019-01-26 18:23:42 +01:00
Marco Wahl 32a17b0a63 Merge branch 'maint' 2019-01-26 16:12:15 +01:00
Marco Wahl f9a8cccafa org-goto: Fix org-goto interface 'outline
* lisp/org-goto.el (org-goto-location): Set relevant variables for the
  call of `with-output-to-temp-buffer' for predictable behavior.
2019-01-26 15:56:09 +01:00
Marco Wahl ed7ea512c2 org: Fix match of todo items
* lisp/org.el (org-show-todo-tree): Don't match headlines that start
  with a todo kwd as prefix.
2019-01-25 10:32:07 +01:00
Nicolas Goaziou deb5c4f39a Merge branch 'maint' 2019-01-24 15:05:13 +01:00
Nicolas Goaziou 24030ef62b Fix consecutive radio links
* lisp/org.el (org-activate-target-links): Properly match consecutive
  radio links.

Reported-by: Jay Dresser <jay@jaydresser.us>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00327.html>
2019-01-24 15:03:47 +01:00
Nicolas Goaziou 102142b1a5 ox-latex: Fix environment for tables without caption, take 2
* lisp/ox-latex.el (org-latex--decorate-table): Check if caption is
  the empty string.
2019-01-24 14:47:04 +01:00
Nicolas Goaziou c413bbb3b0 org-keys: Re-instate <return> bindings
Reported-by: Bernt Hansen <bernt@norang.ca>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00312.html>
2019-01-24 14:17:49 +01:00
Daniel Kraus 465255f82f org-src: Fix `org-edit-src-exit' with `split-window-below'
* lisp/org-src.el: (org-src-switch-to-buffer): Delete window when
exiting source buffer instead of splitting it again.
2019-01-23 15:32:04 +01:00
Nicolas Goaziou 3fc7b0639d Merge branch 'maint' 2019-01-22 09:02:45 +01:00
Nicolas Goaziou 010a35f193 Fix last commit
* lisp/org-element.el (org-element-parse-secondary-string): Fix last
  commit.
2019-01-22 09:02:14 +01:00
Nicolas Goaziou a23a483245 Merge branch 'maint' 2019-01-21 21:45:50 +01:00
Nicolas Goaziou 5a63156b01 org-element: Parse secondary strings in read-only documents
* lisp/org-element.el (org-element-parse-secondary-string): Parse
  secondary strings in read-only documents.

Reported-by: Michael Brand <michael.ch.brand@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00271.html>
2019-01-21 21:45:10 +01:00
stardiviner bcdb2b5568 ob-clojure: Don't tangle with auto prepend ns statement
* lisp/ob-clojure.el: (org-babel-expand-body:clojure,
  org-babel-header-args:clojure): whether auto prepend Clojure (ns ..)
  statement depend on whether have :ns header argument specified.

* testing/test-ob-clojure.el: Add a test.
2019-01-21 21:17:47 +01:00
Yasushi SHOJI 4a076ed545 Allow cloning subtrees while shifting them backward in time
* 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>
2019-01-21 18:47:49 +01:00
Nicolas Goaziou c7e306d665 Merge branch 'maint' 2019-01-21 18:44:25 +01:00
Nicolas Goaziou fadc83d4fe ox-texinfo: Fix anchors for all elements and objects
* lisp/ox-texinfo.el (org-texinfo--get-node): Fix function, too strict
  about allowed types.  One can always fallback to
  `org-export-get-reference'.

Reported-by: wlharvey4@mac.com
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00274.html>
2019-01-21 18:40:54 +01:00
Nicolas Goaziou 73d5ac74de Merge branch 'maint' 2019-01-19 17:28:46 +01:00
Nicolas Goaziou 372e033724 ob-exp: Fix "strip-export" noweb value
* lisp/ob-exp.el (org-babel-exp-results): Use :eval instead of :export
  since the function is used to evaluate a source block before
  exporting it.

Reported-by: Alexandre Duret-Lutz <adl@lrde.epita.fr>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00226.html>
2019-01-19 17:27:20 +01:00
Nicolas Goaziou c28eb3c2cb ox-latex: Fix export of tables with caption
* lisp/ox-latex.el (org-latex--decorate-table): Fix thinko.

Reported-by: Jens Lechtenboerger <lechten@wi.uni-muenster.de>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00262.html>
2019-01-19 16:05:12 +01:00
Nicolas Goaziou e7901c3aec Merge branch 'maint' 2019-01-17 14:48:31 +01:00
Nicolas Goaziou b70cb5b7d0 org-capture: Fix item capture
* lisp/org-capture.el (org-capture-place-table-line): Remove
  unnecessary call to `org-table-align', which could insert a spurious
  newline character.

Reported-by: Thomas Holst <Thomas_Holst@gmx.de>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00233.html>
2019-01-17 14:47:07 +01:00
Kyle Meyer baa98a4a6f babel: Fix incorrect merge resolution from ba321d0e4
* lisp/org.el (org-babel-load-file): Fix type error introduced by
merge ba321d0e4.

Reported-by: Gregor Zattler <telegraph@gmx.net>
<https://lists.gnu.org/archive/html/emacs-orgmode/2019-01/msg00208.html>
2019-01-14 17:09:03 -05:00
Kyle Meyer ba321d0e44 Merge branch 'maint' 2019-01-13 15:14:37 -05:00
Paul Eggert 5a958f3fae Backport commit c5e02f2bc from Emacs
* lisp/org-protocol.el (org-protocol-flatten):
Rewrite as top-level alias, as per Stefan’s suggestion,
to avoid compiler warnings.

Make org-protocol-flatten always an alias
c5e02f2bce28f3b1f2006ce1f208f4a92ca05ed9
Paul Eggert
Mon Dec 17 13:32:52 2018 -0800
2019-01-13 12:43:04 -05:00
Paul Eggert 7937b26867 Backport commit ef144113f from Emacs
* lisp/org-protocol.el (org-protocol-flatten): Make it an alias for
flatten-tree if available.

Some more flatten-tree aliases
ef144113f3473f39d3df3e96e780c832e0d5420e
Paul Eggert
Mon Dec 17 10:26:15 2018 -0800
2019-01-13 12:43:04 -05:00
Kyle Meyer d782b01d35 org-compat: Add org-current-time-as-list
* lisp/org-compat.el (org-current-time-as-list): New function for
compatibility with Emacsen before 27.1.

This is a follow-up to the backport of Emacs's 93fe42094.
2019-01-13 12:43:04 -05:00
Paul Eggert 2b6c7e14f2 Backport commit 93fe42094 from Emacs
This follows on a suggestion by Stefan Monnier in:
https://lists.gnu.org/r/emacs-devel/2018-08/msg00991.html
(Bug#32902).

* lisp/org-id.el (org-id-uuid, org-id-time-to-b36):
Don't assume timestamps default to list form.

New (TICKS . HZ) timestamp format
93fe420942c08111a6048af7c4d7807c61d80a09
Paul Eggert
Sat Oct 6 23:31:04 2018 -0700
2019-01-13 12:43:04 -05:00
Kyle Meyer 6c4acc8ded org-compat: Define file-attribute accessors
* lisp/org-compat.el (file-attribute-modification-time,
file-attribute-size): New functions for compatibility with Emacsen
before 26.1.

This is a follow-up to the backport of Emacs's 662bee7d7.
2019-01-13 12:43:04 -05:00
Paul Eggert d64c9a996b Backport commit 662bee7d7 from Emacs
* lisp/ob-eval.el (org-babel--shell-command-on-region):
* lisp/org-attach.el (org-attach-commit):
* lisp/org-macro.el (org-macro-initialize-templates):
* lisp/org.el (org-babel-load-file)
(org-file-newer-than-p):
* lisp/ox-html.el (org-html-format-spec):
* lisp/ox-publish.el (org-publish-find-date)
(org-publish-cache-ctime-of-src):
Prefer (file-attribute-size A) to (nth 7 A), and similarly
for other file attributes accessors.
* lisp/ox-publish.el (org-publish-cache-ctime-of-src):
Prefer float-time to doing time arithmetic by hand.

file-attributes cleanup
662bee7d70ccd3903e123b08c7ec9108a1a2ce0b
Paul Eggert
Sun Sep 23 18:32:59 2018 -0700
2019-01-13 12:43:04 -05:00
Paul Eggert 9a8462771f Backport commit a4a3c92e9 from Emacs
* lisp/org-agenda.el (org-cmp-ts): Avoid arbitrary limit to
most-positive-fixnum or to most-negative-fixnum.
* lisp/org-footnote.el (org-footnote-new): Simplify.
* lisp/org-element.el (org-element--cache-generate-key):
Document fixnum limitation.

Prune most-positive-fixnum from Lisp source
a4a3c92e9de59bd0251f36326375cce898919edc
Paul Eggert
Wed Aug 22 20:46:08 2018 -0700
2019-01-13 12:43:04 -05:00
Paul Eggert 28d2c81709 Backport commit f18af6cd5 from Emacs
* 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
2019-01-13 12:43:04 -05:00
Kyle Meyer da31714c10 org-compat: Define proper-list-p
* lisp/org-compat.el (proper-list-p): New function for compatibility
with Emacsen before 27.1.

This is a follow-up to the backport of Emacs's 2fde6275b.
2019-01-13 12:43:04 -05:00
Basil L. Contovounesios ede0d19feb Backport commit 2fde6275b from Emacs
* lisp/ob-core.el (org-babel-insert-result): Use proper-list-p.

Add predicate proper-list-p
2fde6275b69fd113e78243790bf112bbdd2fe2bf
Basil L. Contovounesios
Mon Jul 9 19:00:43 2018 -0700
2019-01-13 12:43:04 -05:00
Glenn Morris f73cc4811b Backport commit 18de2ada2 from Emacs
* lisp/org.el (org-CUA-compatible)
(org-popup-calendar-for-date-prompt):
Move aliases before targets, to silence new compiler warning.

More alias-related tedium
18de2ada243653ece98b18044233e5d29eee5903
Glenn Morris
Fri Apr 20 18:55:04 2018 -0400
2019-01-13 12:43:04 -05:00
Glenn Morris 3d11e4c69b Backport commit 9c3eeba4d from Emacs
* lisp/org-agenda.el (org-agenda-search-view-search-words-only)
(org-agenda-remove-tags-when-in-prefix)
(org-agenda-align-tags-to-column, org-agenda-keymap):
* lisp/org.el (org-special-ctrl-a)
(org-log-state-notes-into-drawer)
(org-agenda-multi-occur-extra-files):
Move aliases before targets, to silence new compiler warning.

The tedious game of whack-a-mole with compiler warnings continues
9c3eeba4db26ddaeead100beea7a96f9fa640918
Glenn Morris
Fri Apr 20 18:34:39 2018 -0400
2019-01-13 12:43:04 -05:00
Paul Eggert 32dbbfa26c Backport commit 20b858ef1 from Emacs
Prefer \... to control chars in .el literals
20b858ef13f8f71fae6cbce5cdac31c4dd130600
Paul Eggert
Thu Mar 29 17:43:08 2018 -0700
2019-01-13 12:43:04 -05:00
Glenn Morris d5a7a1a22c Backport commit 1c7db8aa3 from Emacs
* lisp/org-ctags.el:
* lisp/org-macs.el: Explicitly require cl-lib as needed.

Explicitly require cl-lib where needed
1c7db8aa30969d0bc0e6d35b9bd57c70314ed9d0
Glenn Morris
Fri Mar 16 20:41:17 2018 -0400
2019-01-13 12:43:04 -05:00
Glenn Morris 6a5082fccf Backport commit b1d7e5852 from Emacs
* lisp/org-agenda.el (org-agenda-mode):
* lisp/org-indent.el (org-indent-mode):
Replace filter-buffer-substring-functions, obsolete since 24.4.

Replace some obsolete uses of filter-buffer-substring-functions
b1d7e58520dc42a4eda902aa934a250fda6a04ca
Glenn Morris
Thu Mar 15 20:23:09 2018 -0400
2019-01-13 12:43:04 -05:00
Glenn Morris 16c8187db1 Backport commit d5f6ff99c from Emacs
* lisp/org.el (image-refresh):
* lisp/ox-odt.el (clear-image-cache, image-size): Declare.

Quieten without-x org compilation
d5f6ff99c2b594919931b277a2d94d3a289ca764
Glenn Morris
Wed Feb 28 16:55:41 2018 -0500
2019-01-13 12:43:04 -05:00
Kyle Meyer 6df3e8880e Partially revert backport of c75f505de
* 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.
2019-01-13 12:43:04 -05:00
Paul Eggert eb10ad9360 Backport commit c75f505de from Emacs
* 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.
2019-01-13 12:43:03 -05:00
Paul Eggert d4a295e46a Backport commit 2fcf2dff0 from Emacs
Fix copyright years by hand
2fcf2dff00a55ece17f4342a934cb1d69ae1a743
Paul Eggert
Tue Jan 1 01:02:40 2019 +0000
2019-01-13 12:43:03 -05:00
Kyle Meyer c11b147d1d org-parse-time-string: Describe time stamp matching behavior
* lisp/org-macs.el (org-parse-time-string): Document matching of
YYYY-MM-DD substring.

org-clock-special-range used to pass in <-50001-11-30 Tue 00:00> with
the expectation that the year would be parsed as -50001, not 0001.
Mention this YYYY-MM-DD format assumption in the docstring to help
avoid such cases.
2019-01-13 12:43:03 -05:00
Kyle Meyer 9ceb723602 org-clock: Simplify `untilnow' range logic
* lisp/org-clock.el (org-clock-special-range): Use nil to represent
`untilnow'.
* lisp/org-clock.el (org-clocktable-steps): For `untilnow' block, set
set timestamp to 2003.
* doc/org-manual.org (The clock table): Document `untilnow' floor when
used with :step.

For `untilnow', org-clock-special-range sets the start to
"<-50001-11-30 Tue 00:00>", but org-parse-time-string actually assumes
a YYYY-MM-DD format and parses the year as 0001.  By chance, this is
still a really old date, so no one noticed.  However, with the port of
Emacs's fde99c729c (Port recent org-clock fix to POSIX time_t,
2018-03-28), test-org-clock/clocktable/ranges would fail if the system
supports the oldest date tried, "<-67715-09-22 Tue 17:51>".

But this "encode-time -> format-time-string -> org-parse-time-string"
dance is mostly unnecessary.  All the current org-clock-special-range
callers except for org-clocktable-steps (1) explicitly check if the
starting time is nil, (2) don't use the starting time, or (3) pass it
directly to org-clock-sum, which handles nil values.  And
org-clock-sum executes the same codepath when nil is passed instead of
"really old date".

Update org-clocktable-steps to use 2003 (the year Org was created) as
the starting point when org-clock-special-range returns nil for the
starting time.  This is more efficient because we don't needlessly
calculate steps over a large chunk of time that almost certainly
doesn't have any clocked time.  And it won't run into the portability
issues like Emacs's fde99c729c.  2003 _should_ be an appropriate
effective starting date, since we don't expect clocked time before the
existence of Org.  If this turns out to be an issue (e.g., someone
converted reports from a pre-Org and still makes clock tables that
include those times), we can make this value configurable.
2019-01-13 12:41:29 -05:00
Marco Wahl 067c8dc6c4 Merge branch 'maint' 2019-01-13 15:10:21 +01:00
Marco Wahl 295d149f46 agenda: Fix get category for habit lines
* lisp/org-agenda.el (org-agenda-get-category): New function to wrap
  the identification of the category of an agenda line.
2019-01-13 15:09:04 +01:00
Kyle Meyer 6972cce38b Merge branch 'maint' 2019-01-13 00:13:46 -05:00
Kyle Meyer f3584ecc3b org-clock: Correctly locate heading when resolving clock
* lisp/org-clock.el (org-clock-resolve-clock): Store heading location
as marker instead of raw position to ensure that org-clock-in is
called in the correct buffer.

This fixes a regression introduced by 503ede74b (org-clock: Fix
resolving clocks, 2018-12-06).
2019-01-13 00:13:33 -05:00
Kyle Meyer 87c4635c88 Fix docstring typo
* lisp/org.el (org-insert-link): Fix docstring typo.
2019-01-12 23:47:36 -05:00
Kyle Meyer cbc43c1f01 Fix docstring typo
* lisp/org-clock.el (org-clocktable-steps): Fix docstring typo.
2019-01-12 23:46:00 -05:00
Nicolas Goaziou 354e2d4a2d org-keys: Fix last commit 2019-01-12 12:01:38 +01:00
Nicolas Goaziou 8a1957d592 org-keys: Use RET instead of <return> where possible
* lisp/org-keys.el (org-mode-map): Use RET instead of <return> where
  possible.

Reported-by: Kévin Le Gouguec <kevin.legouguec@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00162.html>
2019-01-12 11:54:02 +01:00
Nicolas Goaziou 871119986a Merge branch 'maint' 2019-01-12 11:50:37 +01:00
Nicolas Goaziou f9596eb472 Fix following timestamp in planning lines
* lisp/org.el (org-open-at-point): Open calendar when called on
  a timestamp in a planning line.

Reported-by: Bob Hepple <bob.hepple@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00158.html>
2019-01-12 11:49:50 +01:00
Nicolas Goaziou 4bc21b135b Merge branch 'maint' 2019-01-12 11:40:33 +01:00
Nicolas Goaziou ae497f365e org-table: Also copy special star marker upon creating a row
* lisp/org-table.el (org-table-insert-row): Copy "*" character when in
  first column, as it is considered as a special marker then.
2019-01-12 11:36:40 +01:00
Nicolas Goaziou fa71fdbb53 org-num: Clear numbering overlays upon changing major mode
* lisp/org-num.el (org-num--clear): New function.
(org-num-mode): Use new function.

Reported-by: stardiviner <numbchild@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00088.html>
2019-01-09 23:25:57 +01:00
Kaushal Modi 8a5d8f79a1 Merge branch 'maint' 2019-01-08 11:35:34 -05:00
Kaushal Modi 34e5dcfb06 Fix the order of org-get-tags collected tags from #+filetags
* 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>.
2019-01-08 11:29:58 -05:00
Marco Wahl 2862bea69b org: Option for user to force non fast tag selection interface
* lisp/org.el (org-set-tags-command): Disable the fast tag selection
  interface when the command is prefixed by C-u C-u.
2019-01-05 13:16:31 +01:00
Marco Wahl 99f0c53418 Merge branch 'maint' 2019-01-05 11:41:57 +01:00
Marco Wahl e8ad394c74 org: Fix docstring
* lisp/org.el (org-loop-over-headlines-in-active-region): Complete the
  list of concerned functions.
2019-01-05 11:35:26 +01:00
Kaushal Modi b334a59902 Merge branch 'maint' 2019-01-04 08:59:10 -05:00
Kaushal Modi 539091799b Fix C-u M-x org-align-tags not aligning all tags in buffer
* 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>.
2019-01-04 08:57:10 -05:00
memeplex 7db8ebc1df Add option to natively fontify LaTeX snippets and environments
* 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.
2019-01-04 14:22:11 +01:00
memeplex 0e26444fe0 Use xcolor for all latex preview converters
* 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.
2019-01-04 14:20:23 +01:00
Kyle Meyer 23ef240aa6 Merge branch 'maint' 2019-01-03 20:43:15 -05:00
Van L 98407c111d Fix two docstring typos
* lisp/org.el (org-read-date-force-compatible-dates): Fix docstring
typos.

TINYCHANGE
2019-01-03 20:43:01 -05:00
Nicolas Goaziou f1de41e172 org-compat: Remove unnecessary obsolete definitions 2019-01-02 16:10:25 +01:00
stardiviner 34b71a0ca9 Add a dispatcher command for inserting dynamic blocks
* 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.
2019-01-02 15:55:51 +01:00
Nicolas Goaziou 69c300bbf6 Add Org Num minor mode
* doc/org-manual.org (Headlines): Refer to new section.
(Dynamic Headline Numbering): New section.
* lisp/org-num.el:
* testing/lisp/test-org-num.el: New files.
2019-01-01 22:08:24 +01:00
Nicolas Goaziou 43fbf8a540 Fix last commit
* lisp/org.el (org-do-latex-and-related): Silence byte-compiler.
2019-01-01 17:40:38 +01:00
Carlos Pita 80268c0e07 Fix fontification of LaTeX environments
* 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.
2019-01-01 17:31:18 +01:00
Nicolas Goaziou 1aaee28545 org-colview: Re-apply `org-columns-compact-links' removal
* lisp/org-colview.el (org-columns--displayed-value): Do not call
  removed function.
2019-01-01 17:19:49 +01:00
Nicolas Goaziou b35bda573a Merge branch 'maint' 2019-01-01 17:17:59 +01:00
Nicolas Goaziou 284799a2e8 Fix `org-insert-link' with nil description
* lisp/org.el (org-insert-link): DESC may be nil; do not use
  `string-match' directly on it.
2019-01-01 17:16:50 +01:00
Bastien 7a22b8f93b Merge branch 'maint' 2019-01-01 11:54:01 +01:00
Bastien f584d37a67 Update copyright year 2019-01-01 11:50:56 +01:00
Toon Claes e37412b5d2 ox-html: Make it possible to self link headlines
* lisp/ox-html.el (org-html-self-link-headlines): New variable.
(org-html-headline): Create a hyperlink on headlines
when :html-self-link-headlines is set.
2018-12-29 14:58:43 +01:00
Nicolas Goaziou 6aa7c798d5 Merge branch 'master' into next 2018-12-19 22:39:24 +01:00
Renato Ferreira 255c9c1655 org-protocol: Fix `org-protocol-capture' return value
* lisp/org-protocol.el: Make sure protocols with :kill-client do
not return a string.

TINYCHANGE
2018-12-19 16:23:59 +01:00
Nicolas Goaziou 2d9b08b897 org-colview: Remove asterisks from ITEM in Agenda mode
* lisp/org-colview.el (org-columns--displayed-value): Add new optional
  argument.
(org-columns--collect-values): Use new argument when called from
Agenda mode.

Reported-by: Allen Li <darkfeline@felesatra.moe>
<http://lists.gnu.org/r/emacs-orgmode/2018-12/msg00040.html>
2018-12-18 12:07:43 +01:00
Nicolas Goaziou 9c3a9a9687 Merge branch 'master' into next 2018-12-18 11:10:38 +01:00
Nicolas Goaziou 4f0d8a008f org-colview: Improve docstring
* lisp/org-colview.el (org-dblock-write:columnview): Improve docstring.
2018-12-18 11:08:48 +01:00
Nicolas Goaziou 045cfce67a Merge branch 'master' into next 2018-12-18 09:54:51 +01:00
Nicolas Goaziou 13f299fe8b org-colview: Fix docstrings
* lisp/org-colview.el (org-columns--overlay-text):
(org-columns--summary-min-age):
(org-columns--summary-max-age):
(org-columns--summary-mean-age): Fix docstrings.
2018-12-18 09:54:24 +01:00
Nicolas Goaziou 845d028bac Merge branch 'master' into next 2018-12-18 09:42:17 +01:00
Nicolas Goaziou 5949d9352b org-capture: Tiny refactoring
* lisp/org-capture.el (org-capture): Use `when' instead of one-armed
  `if'.  Use `error-message-string' when possible.
2018-12-18 09:40:58 +01:00
Nicolas Goaziou 09d20cfff7 Merge branch 'master' into next 2018-12-18 09:33:23 +01:00
Nicolas Goaziou fbd1deca57 org-protocol: Fix capture protocol without a URL
* lisp/org-protocol.el (org-protocol-capture): Do not corrupt
  `org-stored-links' when there is no URL to capture.
(org-protocol-do-capture): Remove function.

Reported-by: Allen Li <darkfeline@felesatra.moe>
<http://lists.gnu.org/r/emacs-orgmode/2018-12/msg00131.html>
2018-12-18 09:30:32 +01:00
Nicolas Goaziou 974bfcb0fa Merge branch 'master' into next 2018-12-18 01:07:47 +01:00
Nicolas Goaziou abbe5d3958 Fix a docstring
* lisp/org.el (org-store-link-functions): Fix docstring.
2018-12-18 01:07:21 +01:00
Nicolas Goaziou ddf6f2e8eb Merge branch 'master' into next 2018-12-18 00:44:17 +01:00
Nicolas Goaziou 0811af50b4 ox-latex: Improve subscript and superscript
* lisp/ox-latex.el (org-latex--wrap-latex-math-block): Ignore
  superscript and subscript.
(org-latex--script-size): Remove function.
(org-latex-subscript): Use \textsubscript.
(org-latex-superscript): Use \textsuperscript.

Reported-by: Ken Mankoff <mankoff@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-12/msg00221.html>
2018-12-18 00:42:07 +01:00
Nicolas Goaziou dd26f03e18 Merge branch 'master' into next 2018-12-16 11:14:16 +01:00
Nicolas Goaziou 6656f11596 Fix typo
* lisp/org.el (org-do-latex-and-related): Fix typo.
2018-12-16 11:13:49 +01:00
Nicolas Goaziou cc594e6fba Merge branch 'master' into next 2018-12-16 11:09:35 +01:00
Nicolas Goaziou af3e2b1856 Fix fontification of LaTeX elements (take two)
* lisp/org.el (org-do-latex-and-related): Fix last commit.
2018-12-16 11:08:00 +01:00
Nicolas Goaziou 5da146626d Merge branch 'master' into next 2018-12-13 21:30:01 +01:00
Nicolas Goaziou a86b14253b Fix fontification of LaTeX environments
* lisp/org.el (org-compute-latex-and-related-regexp):
(org-do-latex-and-related): Fix fontification of LaTeX environments.
2018-12-13 21:28:14 +01:00
Kaushal Modi bd2a666a17 Merge branch 'master' into next 2018-12-13 14:11:08 -05:00
Kaushal Modi a60a0edc6f Add :no-save keyword for Org capture templates
* lisp/org-capture.el (org-capture-finalize): Do not save the target
  capture file if :no-save keyword is non-nil in the capture template.
* doc/org-manual.org (Template elements),
  lisp/org-capture.el (org-capture-templates): Document :no-save.

Ref: https://lists.gnu.org/r/emacs-orgmode/2018-09/msg00325.html
2018-12-13 14:09:39 -05:00
Kaushal Modi 54123cd7f2 Revert "org-capture: Do not save buffer when running `org-capture-finalize'"
This reverts commit b4422add37.

Revert the regression in Org capture + auto-saving behavior.

Ref: https://lists.gnu.org/r/emacs-orgmode/2018-09/msg00325.html
2018-12-13 10:11:25 -05:00
Nicolas Goaziou 63e58ac22d Merge branch 'master' into next 2018-12-09 23:37:19 +01:00
Allen Li 601f373e3f Document %i prefix in capture templates
* doc/org-manual.org (Template expansion): Fix documentation.
* lisp/org-capture.el (org-capture-templates): Fix docstring.
2018-12-09 23:34:20 +01:00
Nicolas Goaziou f8533978db Merge branch 'master' into next 2018-12-08 21:21:10 +01:00
Jens Lechtenboerger 3b5e26651b ox-html: Export attributes specified with :attr_html for links
* lisp/ox-html.el (org-html-link): Export :attr_html from link.
2018-12-08 21:20:18 +01:00
Jens Lechtenboerger 94d2dbf95f ox-html: New property HTML_HEADLINE_CLASS for class of headline
* lisp/ox-html.el (org-html-headline): Add new property
HTML_HEADLINE_CLASS to assign class attribute to headline.

* doc/org-manual.org (CSS support): Document new property
HTML_HEADLINE_CLASS.
2018-12-08 12:45:22 +01:00
Nicolas Goaziou 1eea78d1a5 Merge branch 'master' into next 2018-12-08 11:50:30 +01:00