Commit Graph

14582 Commits

Author SHA1 Message Date
Yue Zhu c6e5aa1da8 ox-md: Fix ToC on unnumbered headings
(org-md--build-toc): When exporting markdown with ToC, if heading
numbering is not enabled, ToC will be shown as an unordered list.

TINYCHANGE
2018-04-21 10:59:47 +02:00
Nicolas Goaziou 3719cdd48e org-table: Fix shrunk hlines
* lisp/org-table.el (org-table--shrink-field): Handle properly shrunk
  hlines with a width cookie.
* testing/lisp/test-org-table.el (test-org-table/toggle-column-width):
  Add test.  Fix tests.

Reported-by: William Denton <wtd@pobox.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-04/msg00306.html>
2018-04-20 11:57:37 +02:00
Nicolas Goaziou 95af956cfd Merge branch 'maint' 2018-04-20 11:05:56 +02:00
Andrew Eggenberger 8c3d4fbde7 Document `org-timestamp-up' and `org-timestamp-down' behavior
* org.el (org-timestamp-up): Document undocumented behavior.
(org-timestamp-up): The function changes the timestamp type when
the point is on the enclosing bracket.  The documentation now
reflects that behavior.

* org.el (org-timestamp-down): Document undocumented behavior.
(org-timestamp-down): The function changes the timestamp type when
the point is on the enclosing bracket.  The documentation now
reflects that behavior.

TINYCHANGE
2018-04-20 11:05:28 +02:00
Nicolas Goaziou 4d152b994e Rewrite tags setting functions
* lisp/org.el (org-setting-tags): Remove variable.
(org-set-tags-command): Change signature.  For interactive use only.
(org-set-tags-to): Remove function.
(org-align-all-tags): Remove function.
(org-align-tags): New function.
(org-set-tags): Change signature.  For non-interactive use only.
(org-promote):
(org-demote):
(org-refile):
(org-todo):
(org-priority):
(org-toggle-tag):
(org-entry-put):
(org-fix-tags-on-the-fly):
(org-ctrl-c-ctrl-c):
(org-delete-indentation):
(org-return):
(org-kill-line): Apply signature change.  Use new functions.
* lisp/ox-beamer.el (org-beamer-property-changed):
(org-beamer-select-environment): Apply signature change.  Use new
functions.
* testing/lisp/test-org-archive.el (test-org-archive/to-archive-sibling):
  Update test.
* testing/lisp/test-org.el (test-org/set-tags): Add tests.
(test-org/set-tags-command): New test.
(test-org/set-tags-to): Remove test.
2018-04-20 10:51:21 +02:00
Nicolas Goaziou be31a0c459 Standardize tag regexps
* lisp/org.el (org-tag-re):
(org-tag-group-re): New variable
(org-tag-string-to-alist):
(org-scan-tags):
(org-make-tags-matcher):
(org-fast-tag-selection): Use new variables.
* lisp/org-agenda.el (org-agenda-list-stuck-projects):
(org-agenda-format-item):
(org-agenda-fix-displayed-tags):
* lisp/org-archive.el (org-archive-subtree): Use new variables.
2018-04-19 14:28:54 +02:00
Nicolas Goaziou edc159c2f2 Remove `org-get-tags-string'
* lisp/org.el (org-get-tags-string): Move to "org-compat".
(org-make-tag-string): New function
(org-set-tags-to):
(org-set-tags):
(org-set-current-tags-overlay):
(org-entry-properties):
(org-agenda-prepare-buffers):
* lisp/org-mouse.el (org-mouse-set-tags):
* lisp/ox-ascii.el (org-ascii--build-title):
* lisp/ox-beamer.el (org-beamer-select-environment):
* lisp/ox-latex.el (org-latex-format-inlinetask-default-function):
* lisp/ox-md.el (org-md-headline):
(org-md--build-toc):
* lisp/ox-texinfo.el (org-texinfo-format-headline-default-function):
(org-texinfo-format-inlinetask-default-function):
* contrib/lisp/ox-groff.el (org-groff-headline):
(org-groff-inlinetask): Use new function.
* lisp/org-compat.el (org-get-tags-string): New function.
2018-04-19 11:52:07 +02:00
Nicolas Goaziou 2a293843ad org-lint: Remove useless checker
* lisp/org-lint.el (org-lint--checkers): Remove useless checker.
(org-lint-empty-headline-with-tags): Remove function.
* testing/lisp/test-org-lint.el (test-org-lint/empty-headline-with-tags):
  Remove test.
2018-04-19 11:52:07 +02:00
Nicolas Goaziou e87ebca2a7 Use `org-tag-line-re'
* lisp/org.el (org-activate-tags):
(org-toggle-tag):
(org--align-tags-here):
(org-fast-tag-selection):
(org-kill-line):
* lisp/org-agenda.el (org-agenda-align-tags): Use `org-tag-line-re'.
2018-04-19 11:52:07 +02:00
Nicolas Goaziou 7d2ebc3ffa Deprecate `org-get-local-tags' and `org-get-local-tags-at'
* contrib/lisp/org-drill.el (org-drill-entry-p):
(org-drill-entry-leech-p):
* lisp/org-bibtex.el (org-bibtex-headline):
(org-get-local-tags-at): Use `org-get-tags'.
* lisp/org.el (org-get-local-tags-at):
(org-get-local-tags): Move to...
* lisp/org-compat.el: ... here.
2018-04-19 11:51:54 +02:00
Nicolas Goaziou f05493504a Replace `org-get-tags-at' with `org-get-tags'
* contrib/lisp/org-drill.el (org-part-of-drill-entry-p):
* lisp/org-agenda.el (org-agenda-finalize):
(org-search-view):
(org-agenda-get-todos):
(org-agenda-get-timestamps):
(org-agenda-get-sexps):
(org-agenda-get-progress):
(org-agenda-get-deadlines):
(org-agenda-get-scheduled):
(org-agenda-get-blocks):
(org-agenda-change-all-lines):
* lisp/org-bibtex.el (org-bibtex-headline):
* lisp/org-clock.el (org-clock-get-table-data):
* lisp/org-pcomplete.el (org-get-tags):
* lisp/org.el (org-trust-scanner-tags):
(org-get-local-tags-at):
(org-get-local-tags):
(org-set-tags):
(org-map-entries):
(org-entry-properties): Use `org-get-tags' instead of
`org-get-tags-at'.
2018-04-19 11:51:54 +02:00
Nicolas Goaziou fbe56f89f7 Change `org-get-tags' specifications
* lisp/org.el (org-tag-line-re): New variable.
(org-hide-archived-subtrees):
(org-get-buffer-tags): Use new function.
(org--get-local-tags): New function.
(org-get-tags): Change meaning.  Now get all inherited tags.  Change
signature.
* lisp/org-archive.el (org-archive-subtree):
* lisp/org-mobile.el (org-mobile-apply):
(org-mobile-edit):
* lisp/org-mouse.el (org-mouse-tag-menu):
* lisp/org-pcomplete.el (pcomplete/org-mode/tag): Apply change

* testing/lisp/test-org.el (test-org/get-tags): New test.
(test-org/tags-at): Remove test.
2018-04-19 11:51:54 +02:00
Nicolas Goaziou 6457a9e4e6 Merge branch 'maint' 2018-04-18 22:18:47 +02:00
Nicolas Goaziou 8814988d1c Fix error message
* lisp/org.el (org-kill-line): Fix error message.
2018-04-18 22:18:23 +02:00
Nicolas Goaziou ee5fa18430 Remove `org<>' function
* lisp/org.el (org<>): Remove function.
2018-04-17 16:08:23 +02:00
Nicolas Goaziou ff3f3876a8 Move time related functions from "org.el" to "org-macs.el"
* lisp/org.el (org-2ft):
(org-time=):
(org-time<):
(org-time<=):
(org-time>):
(org-time>=):
(org-time<>):
(org-matcher-time): Move from here to...
* lisp/org-macs.el: ... here
2018-04-17 16:06:09 +02:00
Nicolas Goaziou 1171d5ef0c Merge branch 'maint' 2018-04-16 13:45:52 +02:00
Nicolas Goaziou 8b6a617ff5 Remove inlinetask END part from Agenda view
* lisp/org-inlinetask.el (org-inlinetask-end-p): New function.
(org-inlinetask-at-task-p):
(org-inlinetask-in-task-p):
(org-inlinetask-goto-beginning):
(org-inlinetask-goto-end):
* lisp/org.el (org-scan-tags): Use new function.

Reported-by: Alain.Cochard@unistra.fr
<http://lists.gnu.org/r/emacs-orgmode/2018-04/msg00235.html>
2018-04-16 13:44:52 +02:00
Feng Shu b4422add37 org-capture: Do not save buffer when running `org-capture-finalize'
* lisp/org-capture.el (org-capture-finalize): Do not run
  `save-buffer'.
2018-04-16 12:11:00 +02:00
Nicolas Goaziou bb03551246 ob-shell: Small refactoring
* lisp/ob-shell.el (org-babel-sh-evaluate): Slightly refactor code.
2018-04-15 12:26:03 +02:00
Nicolas Goaziou cc9233c1f4 Merge branch 'maint' 2018-04-14 19:32:05 +02:00
Nicolas Goaziou 1a1e47198f Fix `org-{w3m|eww}-copy-for-org-mode' on blank links
* lisp/org-w3m.el (org-w3m-copy-for-org-mode):
* lisp/org-eww.el (org-eww-copy-for-org-mode): Do not error when
  called on blank links.

Reported-by: Bob Newell <bobnewell@bobnewell.net>
<http://lists.gnu.org/r/emacs-orgmode/2018-04/msg00255.html>
2018-04-14 19:30:17 +02:00
stardiviner d7e12d1df7 * ob-clojure: Support :ns header argument
* lisp/ob-clojure.el (org-babel-clojure-default-ns): New variable.
(org-babel-clojure-cider-current-ns): New function.
(org-babel-expand-body:clojure):
(org-babel-execute:clojure): Support :ns header argument.

Remove optional parameter (cider-current-ns) to better handle
namespaces.
2018-04-14 18:21:55 +02:00
Nicolas Goaziou 434d232ca7 Merge branch 'maint' 2018-04-12 21:46:25 +02:00
Nicolas Goaziou 1976c02af0 Fix docstring
* lisp/org.el (org-file-apps): Fix regexp in docstring.
2018-04-12 21:46:05 +02:00
stardiviner b088389c6b ob-core: Add document and test for "graphics" format
* doc/org-manual.org: Document value.

* lisp/ob-core.el (org-babel-common-header-args-w-values): Handle
  symbol "graphics".

* testing/lisp/test-ob.el (test-ob/result-graphics-link-type-header-argument):
  New test.
2018-04-12 15:16:04 +02:00
stardiviner 296b0de4e8 ob-core: Add "link" results format
* lisp/ob-core.el (org-babel-execute-src-block): Handle "link" :results
  format.

* doc/org-manual.org: Add document for new result format "link".

* testing/lisp/test-ob.el (test-ob/result-file-link-type-header-argument):
  New test.
2018-04-12 15:15:59 +02:00
Nicolas Goaziou 52ba1a27ad Merge branch 'maint' 2018-04-11 23:03:01 +02:00
Nicolas Goaziou d20fc4d7c5 org-capture: Properly handle `org-extend-today-until' in templates
* lisp/org-capture.el (org-capture-set-target-location): Handle
  non-default `org-extend-today-until'.

Reported-by: Robert Irelan <rirelan@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-04/msg00023.html>
2018-04-11 23:01:16 +02:00
Nicolas Goaziou 384d763447 Move some functions into "org-macs.el"
* lisp/org.el (org-file-newer-than-p):
(org-compile-file): Move...
* lisp/org-macs.el: ... here.
2018-04-11 22:03:18 +02:00
Nicolas Goaziou cbbca2991b Merge branch 'maint' 2018-04-11 21:43:37 +02:00
Nicolas Goaziou b7a7dd1492 Update version keyword 2018-04-11 21:42:46 +02:00
Nicolas Goaziou 575d66625d org-table: Fix alignment with long links
* lisp/org-table.el (org-table-align): Fix alignment with long links.
2018-04-09 21:55:33 +02:00
Nicolas Goaziou fb58727f32 Merge branch 'maint' 2018-04-08 18:39:36 +02:00
Nicolas Goaziou f05c2eae33 Fix RET on multi-line links
* lisp/org.el (org-return): Follow multi-line links.
* testing/lisp/test-org.el (test-org/return): Add tests.

Reported-by: Brent Goodrick <bgoodr@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-04/msg00105.html>
2018-04-08 18:35:40 +02:00
Rasmus 39837b4b31 org: Change org-insert-structure-template to C-c C-,
* lisp/org.el (org-mode-map):
* doc/org-manual.org (With): Change keybinding of
  org-insert-structure-template.

See the thread titled "Poll: new keybinding for
org-insert-structure-template?" in December 2017 for details.
2018-04-08 12:47:12 +02:00
Rasmus d04c20deec org: Change structure insertion
* lisp/org.el (org-insert-structure-template): Change newline
  behavior.
* testing/lisp/test-org.el (test-org/insert-template): New tests.

`org-insert-structure-template' considers indentation and also insert
newlines between the beginning and the end of the block.
2018-04-08 12:47:12 +02:00
Rasmus e5f6cb6c8b org-tempo: Various improvements
* lisp/org-tempo.el (org-tempo-keywords-alist): Improve docstring.
(org-tempo--update-maybe):
(org-tempo--keys): New function.
(org-tempo-complete-tag):
(org-tempo-setup):
(org-tempo-add-templates): Use new functions.
(org-tempo-add-block): Smarter position of point.
* testing/lisp/test-org-tempo.el (test-org-tempo/cursor-placement):
 (test-org-tempo/space-first-line): New tests.
* testing/lisp/test-org-tempo.el (test-org-tempo/completion): Adapt
  test to changes.

Org Tempo more carefully checks for new definitions.  When inserting
blocks point will differ depending on whether it is source block.
2018-04-08 12:47:12 +02:00
Rasmus b56df737b7 org: org-structure-template-alist uses string keys
* lisp/org-tempo.el (org-tempo-keywords-alist):
  (org-tempo-setup):
  (org-tempo-add-templates):
* testing/lisp/test-org-tempo.el (test-org-tempo/add-new-templates):
* lisp/org.el (org-structure-template-alist): Use string keys.
  (org--insert-structure-template-mks):
  (org--insert-structure-template-unique-keys): New functions for block selection.
  (org-insert-structure-template): Use new functions.
* etc/ORG-NEWS:
* doc/org-manual.org: Reflect changes.
2018-04-08 12:47:12 +02:00
Rasmus ac4d5fe1b3 org-macs: Make tab, space and RET equivalent in org-mks
* lisp/org-macs.el (org--mks-read-key): New function.
  (org-mks): Use new function and make space, tab and RET equivalent.
2018-04-08 12:47:08 +02:00
Rasmus 06ab656f42 org-macs: Move org-mks from org-capture to org-macs
* lisp/org-capture.el (org-mks): Moved to org-macs.el.
* lisp/org-macs.el (org-mks): Added from org-capture.el.

The move is being done to accommodate the usage of org-mks in other
Org libraries.
2018-04-07 13:03:18 +02:00
Nicolas Goaziou 3485523821 Merge branch 'maint' 2018-04-05 16:48:46 +02:00
Brad Knotwell 8e5d74ca4c ob-sed: Use -f instead of --file to support BSD sed
lisp/ob-sed.el (org-babel-execute:sed): Change file flag to "-f"
instead of "--file" to support BSD sed as well.

Signed-off-by: Bjarte Johansen <bjarte.johansen@gmail.com>
2018-04-05 16:47:41 +02:00
Nicolas Goaziou 717b0f039d Merge branch 'maint' 2018-04-05 16:46:11 +02:00
Pierre Téchoueyres befc92b9c0 org-agenda: Call `recenter' only if buffer has a window
* lisp/org-agenda.el (org-agenda-list): Condition the call to
  `recenter` only when the buffer has a window associated.

This permit to call `org-agenda-list` in a `with-temp-buffer` like
below:

(with-temp-buffer
  (let ((org-agenda-sticky nil)
        (org-agenda-buffer-tmp-name (buffer-name)))
    (org-agenda-list 1)
    (buffer-string))
2018-04-05 16:45:40 +02:00
Nicolas Goaziou a1ca78d5b8 Merge branch 'maint' 2018-04-03 21:28:37 +02:00
Nicolas Goaziou 3e1f111c3b ob-python: Small refactoring
* lisp/ob-python.el (org-babel-python-evaluate-session): Small
  refactoring.
2018-04-03 21:27:59 +02:00
Gong Qijian 1966d58b25 ob-python: Insert blank line when sending code to interpreter
* lisp/ob-python.el (org-bable-python-evaluate-session):

Syntax error occurs when evaluating the following code block:

\#+begin_src python :session
if True:
    1
2
\#+end_src

A blank line is required for top level module code to end an indented block, such as a for loop, try/except, or if statement.

https://www.python.org/dev/peps/pep-0008/#blank-line

TINYCHANGE
2018-04-03 21:24:18 +02:00
Marco Wahl 873caa6ad7 org.el: Fix two docstrings
* lisp/org.el (org-beginning-of-line, org-end-of-line): Fixed
  documentation of org-beginning-of-line; synchronized with
  documentation of org-end-of-line.
2018-04-03 17:03:34 +02:00
Nicolas Goaziou 003af466c5 ob-core: Fix failing tests.
* lisp/ob-core.el (org-babel-result-to-file): Do not assume current
  buffer is visiting a file.
2018-04-03 00:11:14 +02:00
Nicolas Goaziou 20b5d8aaec ob-js: Fix `indium-run-node' call.
* lisp/ob-js.el (org-babel-execute:js): `indium-run-node' expects
  a command to run.
2018-04-02 23:45:29 +02:00
stardiviner 174e9d1ec9 Fix org-babel-js-initiate-session
* ob-js.el (org-babel-js-initiate-session): Add required optional
 second argument.
2018-04-02 20:42:42 +02:00
stardiviner f57df8fc74 ob-shell: Add zsh and fish shells.
* ob-shell.el (org-babel-shell-names) add "zsh" and "fish".
2018-04-02 20:42:16 +02:00
Nicolas Goaziou e462125cfc org-table: Improve shrinking on right-aligned and centered columns
* lisp/org-table.el (org-table--make-shrinking-overlay): New function.
(org-table--shrink-field): Use new function.
(org-table--shrink-columns): Update function.
* testing/lisp/test-org-table.el (test-org-table/toggle-column-width):
  Update test.
2018-04-02 20:30:40 +02:00
Nicolas Goaziou 834f6d100b org-tempo: Require `org' 2018-03-31 08:51:10 +02:00
Nicolas Goaziou 83f4627679 Change default value for scientific notation related variables
* lisp/ox-latex.el (org-latex-table-scientific-notation):
* lisp/ox-texinfo.el (org-texinfo-table-scientific-notation): Change
  default value to nil.

Reported-by: Günter Lichtenberg <mail@guenterlichtenberg.de>
<http://lists.gnu.org/r/emacs-orgmode/2018-03/msg00527.html>
2018-03-30 22:20:30 +02:00
Kyle Meyer 052fc2226b Merge branch 'maint' 2018-03-27 18:22:29 -04:00
Rasmus ab488dc438 org.el: Fix whitespace issue blocking upstream commit 2018-03-27 18:21:31 -04:00
Nicolas Goaziou 30b7fba2ae Merge branch 'maint' 2018-03-26 23:27:07 +02:00
Nicolas Goaziou 1b3cc4e463 Update version 2018-03-26 23:24:00 +02:00
Nicolas Goaziou 842a5ba6d3 org-agenda: Fix temporary delays
* lisp/org-agenda.el (org-agenda-get-scheduled): Ignore "--Xd" delays
  after first repeat.

Reported-by: hhkg@protonmail.com
<http://lists.gnu.org/r/emacs-orgmode/2018-03/msg00481.html>
2018-03-26 23:22:38 +02:00
Kyle Meyer be8f76cbe9 Merge branch 'maint' 2018-03-26 00:07:03 -04:00
Glenn Morris b45c1ff4d4 Backport commit a6a821d29 from Emacs
* lisp/ob-lisp.el (org-babel-lisp-eval-fn): Tweak type.

Avoids type mismatch when relevant library is not present/loaded.

a6a821d29bda3e45fb26289e6119359ea3b91ebb
Glenn Morris
Thu Mar 22 14:37:45 2018 -0400
2018-03-26 00:01:40 -04:00
Nicolas Goaziou 9aaa035e88 Merge branch 'maint' 2018-03-25 22:56:01 +02:00
Nicolas Goaziou 8c9ebc81f0 Revert "ob-table: Fix org-sbe's handling of quotes in cell values"
This reverts commit 5b59e16c9e.
2018-03-25 22:55:24 +02:00
Nicolas Goaziou 9e70db6bab Revert "ob-table: Fix org-sbe's handling of list arguments"
This reverts commit c9d617b322.
2018-03-25 22:55:14 +02:00
Nicolas Goaziou 6261bbd20b Revert "ob-table: Mention passing ranges as lists in org-sbe's documentation"
This reverts commit 02b1574ea9.
2018-03-25 22:54:56 +02:00
stardiviner 6bb4134cdd ob-js: Small refactoring.
* lisp/ob-js.el (org-babel-prep-session:js): Replace `mapc' + `lambda'
  with `dolist'.
2018-03-25 22:47:27 +02:00
stardiviner 5ee6c45953 ob-js: support :session for js-comint REPL.
* lisp/ob-js.el (org-babel-js-cmd): Add js-comint.
(org-babel-js-initiate-session): Add support for js-comint.
2018-03-25 22:47:03 +02:00
stardiviner b4e2fed77e ob-js: support :session for Indium Node REPL.
* lisp/ob-js.el (org-babel-js-cmd): Add "indium".
(org-babel-execute:js): Handle Indium REPL.
2018-03-25 22:41:05 +02:00
stardiviner 1a1e2286ba ob-js: support :session for skewer-mode REPL.
* lisp/ob-js.el (org-babel-js-cmd): Add "skewer-mode".
(org-babel-execute:js):
(org-babel-js-initiate-session): Handle skewer mode.
2018-03-25 22:38:02 +02:00
Nicolas Goaziou d33e6eae51 org-macro: Refactoring
* lisp/org-macro.el (org-macro-initialize-templates): Refactor function.
* testing/lisp/test-org-macro.el (test-org/macro-replace-all): Remove
  duplicate tests.  Add new test.
2018-03-23 23:40:56 +01:00
Nicolas Goaziou 28977b719c Merge branch 'maint' 2018-03-23 23:32:00 +01:00
Nicolas Goaziou 143a87e45c org-macro: Fix infloop when re-defining built-in macros
* lisp/org-macro.el (org-macro-initialize-templates): User-defined
  macros have higher precedence than built-in macros.

Reported-by: Eric S Fraga <esflists@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-03/msg00413.html>
2018-03-23 23:30:06 +01:00
Kyle Meyer 2ddb26f95d Merge branch 'maint' 2018-03-22 09:26:49 -04:00
Kyle Meyer fa15abe6e8 Update version keyword
As of fffd300ef (Update version keyword, 2018-02-24), this should be
bumped with each release.
2018-03-22 09:18:32 -04:00
Bastien 366d80a6f2 Merge branch 'maint' 2018-03-22 02:28:02 +01:00
Bastien a9139d9976 lisp/org-list.el: Enhance error message
* lisp/org-list.el (org-list-indent-item-generic): Use
`user-error' and enhance the error message.
2018-03-22 02:22:15 +01:00
Nicolas Goaziou 6713c2792f Merge branch 'maint' 2018-03-21 12:52:43 +01:00
Nicolas Goaziou b5a90a7ab5 Silence byte-compiler 2018-03-21 12:52:19 +01:00
Nicolas Goaziou 4a631383dd Remove unused regexp
* lisp/org.el (org-log-drawer-start-re):
(org-log-drawer-end-re)
(org-log-drawer-re): Remove variables.
2018-03-21 12:49:41 +01:00
Bastien f0958d559c Merge branch 'maint' 2018-03-21 02:13:21 +01:00
Martin Kampas 894ec00e9f org.el: Fix recursion stop condition when expanding tags
* lisp/org.el (org-expand-tags): Fix recursion stop condition.

See http://lists.gnu.org/r/emacs-orgmode/2018-03/msg00228.html

TINYCHANGE
2018-03-21 02:12:42 +01:00
Bastien 27d0c469c0 Merge branch 'maint' 2018-03-21 01:58:25 +01:00
Bastien e28a5a66ad org.el: Enhance `org-tag-add-to-alist' and use it more
* lisp/org.el (org-tag-add-to-alist): Check against the car of
the ("tag") or ("tag" . ?k) element.
(org-global-tags-completion-table, org-make-tags-matcher)
(org-set-tags, org-change-tag-in-region)
(org-agenda-prepare-buffers): Use `org-tag-add-to-alist'.
2018-03-21 01:57:45 +01:00
Matt Lundin 393b98ae8e Include buffer tags in global tags completion
* lisp/org.el: (org-global-tags-completion-table): Return all tags,
  including tags in the buffer.

This fixes a bug that caused buffer tags to be excluded if user
configured tags either via `org-tag-alist' or the #+TAGS keyword.
2018-03-21 00:56:25 +01:00
Bastien a402419716 Merge branch 'maint' 2018-03-20 17:23:29 +01:00
Bastien b0cca9656d org.el: Fix bug when adding persistent tags
* lisp/org.el (org-tag-add-to-alist): New function.
(org-set-regexps-and-options): Use the new function to only
append persistent tags if they are not already in the tags
alist.
2018-03-20 17:23:18 +01:00
Bastien f18823b80a Merge branch 'maint' 2018-03-20 14:58:40 +01:00
Bastien b7f350f7ef org.el: Fix bug when building tags groups
* lisp/org.el (org-tag-alist-to-groups): Fix bug.
2018-03-20 14:58:20 +01:00
Bastien 8548dfa33f Merge branch 'maint' 2018-03-20 12:38:31 +01:00
Bastien b2d3dbabf7 org-capture.el: Fix docstring
* lisp/org-capture.el (org-capture-templates-contexts): Fix docstring.
2018-03-20 12:38:24 +01:00
Nicolas Goaziou f6b74a5649 Remove `org-context-p'
* lisp/org.el (org-context-p): Remove function.

The function is not used anywhere, and is deprecated
`org-element-at-point'.
2018-03-20 09:34:26 +01:00
Sebastian Reuße 1af7f303d5 Guard against empty headings when sorting
* org.el (org-sort-entries): Guard against empty headings when sorting
alphabetically, numerically.

Due to how ‘org-complex-heading-regexp’ is defined, the title capture group
currently returns nil in empty headings, which we don’t want to pass on to
‘org-sort-remove-invisible’.
2018-03-20 09:25:14 +01:00
Nicolas Goaziou 55d807f348 Merge branch 'maint' 2018-03-20 00:02:26 +01:00
Vladimir Panteleev 02b1574ea9 ob-table: Mention passing ranges as lists in org-sbe's documentation
* ob-table.el (org-sbe): Add documentation note.
2018-03-20 00:01:13 +01:00
Vladimir Panteleev c9d617b322 ob-table: Fix org-sbe's handling of list arguments
* ob-table.el (org-sbe): Add an explicit case for handling list
arguments. This avoids doing the wrong thing (%s-formatting a list,
thus losing syntax like double-quotes). This enables passing org-table
ranges through org-sbe in a simple and correct manner.

* test-ob-table.el: Add test.
2018-03-20 00:01:09 +01:00
Vladimir Panteleev 5b59e16c9e ob-table: Fix org-sbe's handling of quotes in cell values
* ob-table.el (org-sbe): org-sbe did the wrong thing when given a
reference to a cell containing quotes or backslashes, because it would
simply wrap any $-prefixed value in quotes, without any escaping. Fix
this by using "%S" (instead of "\"%s\"").

* test-ob-table.el: Add test.
2018-03-20 00:01:05 +01:00
Nicolas Goaziou beeb4bf23f ox: Fix regression in INCLUDE keywords
* lisp/ox.el (org-export--prepare-file-contents): Activate Org mode in
  temporary buffer so all regexps are set.  Also, be more strict when
  updating links, i.e., do not bother if both includer and includee
  belong to the same directory, or if there's no includer at all.
  Eventually, only update links within lines specifications, if any.

* testing/lisp/test-ox.el (test-org/expand-include/links): Add tests.

Reported-by: Kaushal Modi <kaushal.modi@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-03/msg00394.html>
2018-03-19 23:48:38 +01:00
Nicolas Goaziou 0de3f78c28 Merge branch 'maint' 2018-03-18 21:27:19 +01:00