Commit Graph

5069 Commits

Author SHA1 Message Date
Nicolas Goaziou 60483fbfc3 Merge branch 'maint' 2018-04-26 14:18:07 +02:00
Nicolas Goaziou e2e5495239 Fix "(wrong-number-of-arguments max 0)" with fast tag selection
* lisp/org.el (org-fast-tag-selection): Fix
  "(wrong-number-of-arguments max 0)" error when setting tag and no
  tag is defined.
2018-04-26 14:16:17 +02:00
Nicolas Goaziou ea6825cf1f Improve docstring
* lisp/org.el (org-set-tags-command): Improve docstring.
2018-04-26 13:52:19 +02:00
Bastien 886ab9c766 Modify syntax entry for < and > globally
* lisp/org.el (org-mode): Let < and > be recognized as opening
and ending characters.

These characters are typically used in timestamps where it is useful
to use C-M-f and C-M-b to manipulate them.
2018-04-26 11:29:30 +02:00
Bastien 5a0162097a org.el (org-mode): Don't modify syntax entry for "@" globally
* lisp/org.el (org-mode): Don't modify syntax entry for "@" globally.

This syntax entry dates from commit fe939ecb when it was used to allow
"@" in tags.   Now "@" is a word constituent in tags, not anywhere.
2018-04-26 11:26:18 +02:00
Nicolas Goaziou 2056b60aae Fix merge with maint
Re-introduce commit "Fix multiple tag selection" (f1b43fe9e).
2018-04-26 02:44:23 +02:00
Nicolas Goaziou 8a90b34aa6 Fix error when setting more than one tag
* lisp/org.el (org-set-tags-command): Fix type of history argument in
  `completing-read'.
2018-04-26 02:30:09 +02:00
Nicolas Goaziou f1b43fe9e6 Fix multiple tag selection
* lisp/org.el (org--tag-add-to-alist): Preserve order when merging tag
  alists.  Remove duplicates only when they are outside a group.
  Rename from `org-tag-add-to-alist'.
(org-set-regexps-and-options):
(org-global-tags-completion-table):
(org-make-tags-matcher):
(org-set-tags):
(org-change-tag-in-region):
(org-agenda-prepare-buffers): Apply renaming.

Reported-by: Alex Branham <alex.branham@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-04/msg00311.html>
2018-04-23 15:24:23 +02:00
Kyle Meyer 08e196d7fa Merge branch 'maint' 2018-04-22 11:13:14 -04:00
Kyle Meyer e3b1c664e7 Update version keyword 2018-04-22 11:09:36 -04: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 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
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
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 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 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
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
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
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
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
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 0de3f78c28 Merge branch 'maint' 2018-03-18 21:27:19 +01:00
Nicolas Goaziou e1f1acbbfb Improve docstring for `org-time-stamp-inactive'
* lisp/org.el (org-time-stamp-inactive): Improve docstring.
2018-03-18 21:26:42 +01:00
Nicolas Goaziou 594b2dbae8 Merge branch 'maint' 2018-03-17 14:57:25 +01:00
Nicolas Goaziou ea4cb14883 Fix `org-set-tags-to'.
* lisp/org.el (org-set-tags-to): Do not throw an error on empty
  headlines.
* testing/lisp/test-org.el (test-org/set-tags): Move test.
(test-org/set-tags-to): New test.

Reported-by: Adrian Bradd <a.bradd@columbia.edu>
<http://lists.gnu.org/r/emacs-orgmode/2018-03/msg00210.html>
2018-03-17 14:56:49 +01:00
Nicolas Goaziou 5aaf3dfc7e Move `org-heading-delete-metadata' into "org-list.el"
* lisp/org.el (org-heading-delete-metadata): Move to...
* lisp/org-list.el (org-list--delete-metadata): ... here.  Refactor
  code.
(org-toggle-item): Use new function.

* testing/lisp/test-org-list.el (test-org-list/toggle-item): Add test.

At the moment, this function is only used internally in "org-list.el",
so it belongs there.

Also refrain from removing log or clock drawers, because they may not
contain all clocks or notes anyway. Besides, the information they
contain may still make sense in a plain list.
2018-03-17 11:49:16 +01:00
Nicolas Goaziou 409a62e5c9 Move some string functions to "org-macs.el"
* lisp/org.el (org-string<):
(org-string<=):
(org-string>=):
(org-string>):
(org-string<>): Move to...
* lisp/org-macs.el: ... here.
2018-03-13 09:26:53 +01:00
Sebastian Reuße 0d6ee386a1 Fix alphabetic string matching operators
* org.el (org-string<): Add.
(org-op-to-function): Use it.
(org-string> etc.): Use collated comparison.

Cf. commit 551d2f1fe.
2018-03-13 09:09:32 +01:00
Kyle Meyer f74f55cc75 Merge branch 'maint' 2018-03-07 22:07:42 -05:00
Paul Eggert 9ac80ede5e Backport commit f2caf08ca from Emacs
; Spelling fixes
f2caf08ca625f64c7eeea8dfa8f65a5b1bac58e2
Paul Eggert
Sun Mar 4 17:10:34 2018 -0800
2018-03-07 22:07:25 -05:00
Bastien 69c5b6c999 Remove headings' metadata when turning them into list items
* lisp/org-list.el (org-toggle-item): Delete headings'
metadata before turning them into list items.

* lisp/org.el (org-log-drawer-start-re): New variable.
(org-log-drawer-end-re, org-log-drawer-re): New constants.
(org-heading-delete-metadata): New function.
(org-setting-tags): Fix comment.
2018-03-05 10:57:43 +01:00
Nicolas Goaziou 6a56ae53f2 `org-mark-ring-push' also populates Emacs mark ring
* lisp/org.el (org-mark-ring-push): Also populate Emacs mark ring.

Fixes: Bug#23745
2018-02-27 01:02:22 +01:00
Nicolas Goaziou 8ebf4b7274 Change `org-paste-subtree' behavior
* lisp/org.el (org-paste-subtree): Never split a section. Instead
  always insert tree before the headline after point.  Use `org-yank'
  to split the section.
* testing/lisp/test-org.el (test-org/paste-subtree): New test.
2018-02-27 00:03:31 +01:00
Nicolas Goaziou e445894c0d Merge branch 'maint' 2018-02-26 12:16:34 +01:00
Nicolas Goaziou a0104599dc Fix `org-paste-subtree'
* lisp/org.el (org-paste-subtree): Use `org-outline-regexp-bol'.

The function cannot detect the proper level when a headline around
point contains spurious white spaces after the stars.
2018-02-26 12:14:24 +01:00
Nicolas Goaziou 5e8fa13610 Re-instate `C-c C-x m' binding
Reported-by: Kyle Meyer <kyle@kyleam.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-02/msg00322.html>
2018-02-24 23:03:28 +01:00
Nicolas Goaziou 1b259f95aa Merge branch 'maint' 2018-02-24 22:38:27 +01:00
Nicolas Goaziou fffd300efd Update version keyword 2018-02-24 22:36:54 +01:00
Sebastian Reuße 551d2f1fe7 Fix alphabetic sorting for headlines, tags
* org.el (org-sort-entries): Use collated sorting.
(org-tags-sort-function): Use collated sorting.
(org-string-collate-greaterp): Add helper-function to use as defcustom
option, since there is no ‘string-collate-greaterp’ in Emacs.

* org-compat.el (org-string-collate-lessp): Add proxy to fall-back on
string-lessp when string-collate-lessp is missing (Emacs ≤ 24).

* test-org.el (test-org/string-collate-lessp): Add test.
(test-org/sort-entries): Add regression test for non-ASCII inputs.

‘org-sort-entries’ and ‘org-tags-sort-function’ advertise alphabetic
sorting, but actually sort based only on character code.  This
produces non-alphabetic orderings of strings in non-ASCII locales.

E. g., German Umlauts “Ä Ü Ö” are alphabetically sorted as if they
were “A U O”, whereas sorting based on character-code will place them
after “Z”, which is unexpected.
2018-02-12 14:57:54 +01:00
Kaushal Modi b505a5b6ad Merge branch 'maint' 2018-02-11 15:29:57 -05:00
Kaushal Modi fe7619cd18 Do not auto-fill when point is in Org property drawer
* lisp/org.el (org-return): Set auto-fill-function to nil when point
  is in an Org property drawer.
* testing/lisp/test-org.el (test-org/return): Add test.

<http://lists.gnu.org/r/emacs-orgmode/2018-02/msg00102.html>
2018-02-11 15:19:49 -05:00
Nicolas Goaziou 2956408f75 Move `org-flag-region' to "org-macs.el"
* lisp/org.el (org-flag-region): Move function...
* lisp/org-macs.el (org-flag-region): ... here.
2018-02-11 11:27:53 +01:00
Matt Lundin c72304b95e Fix S-<return> and M-S-<return> keybindings for GUI
This prevents these key combinations from being translated to M-RET in
window systems. These bindings already have extra keys defined for
TTY.
2018-02-10 13:53:11 +01:00
Nicolas Goaziou 75ece16507 Move bindings together 2018-02-01 13:54:25 +01:00
Nicolas Goaziou 68b076bf52 Re-organize some bindings 2018-01-31 17:56:21 +01:00
Nicolas Goaziou 55e8c6f9c3 Merge branch 'maint' 2018-01-28 17:10:13 +01:00
Nicolas Goaziou 5b4a711949 Fix fontification of macro spanning over multiple lines
* lisp/org.el (org-fontify-macros): Handle macros spanning over
  multiple lines.
2018-01-28 17:08:03 +01:00
Nicolas Goaziou 33a9eef11f Allow editing partially shrunk columns
* lisp/org-table.el (org-table-with-shrunk-field): New macro.
(org-table-get-field):
(org-table-toggle-column-width): Use new macro.
(org-table--shrunk-field): Update function.
(org-table--shrink-field): When there is a width cookie, leave first
characters editable.

* lisp/org.el (org-self-insert-command):
(org-delete-backward-char):
(org-delete-char): Small refactoring.  Handle shrink overlays.

* testing/lisp/test-org-table.el (test-org-table/toggle-column-width):
  Update tests.
2018-01-25 23:57:11 +01:00
Nicolas Goaziou 8ecc4c4365 Move `org-match-any-p' in "org-macs.el"
* lisp/org-macs.el (org-match-any-p): Moved from "org.el".
* lisp/org.el (org-match-any-p): Removed.
2018-01-23 09:48:01 +01:00
Nicolas Goaziou 7a20ccafb5 Merge branch 'maint' 2018-01-20 15:55:36 +01:00
Nicolas Goaziou b891e46ccb Fix typo in docstring
* lisp/org.el (org-reload): Fix typo.
2018-01-20 15:55:13 +01:00
Nicolas Goaziou b7e94882ea Move some indentation functions in "org-macs.el", remove others
* lisp/org-macs.el (org-get-indentation): Moved from "org.el"
(org-get-string-indentation):
(org-fix-indentation): Remove functions.
2018-01-20 15:54:20 +01:00
Nicolas Goaziou 73861065fc Tiny cleanup 2018-01-20 15:45:28 +01:00
Nicolas Goaziou f1bc02f03b Merge branch 'maint' 2018-01-20 13:41:41 +01:00
Nicolas Goaziou c06f906f02 Fix typos in docstrings
* lisp/org.el (org-category):
(org-preview-latex-image-directory):
(org-hidden-keywords):
(org-scan-tags):
(org-find-exact-heading-in-directory):
(org-revert-all-org-buffers): Change "org" to "Org" where appropriate.
2018-01-20 13:40:57 +01:00
Nicolas Goaziou d6729e3eda Merge branch 'maint' 2018-01-20 13:29:49 +01:00
Nicolas Goaziou c2576f349b Re-hide archived subtrees when showing branches
* lisp/org.el (org-kill-note-or-show-branches): Re-hide archived
  subtrees when showing branches.

Reported-by: Allen Li <vianchielfaura@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-01/msg00340.html>
2018-01-20 13:28:53 +01:00
Nicolas Goaziou d378d9ec7e Do not hijack keybindings in Calendar mode
* lisp/org-compat.el (org-calendar-to-agenda-key):
(org-calendar-insert-diary-entry-key): Moved from "org.el".
(org--setup-calendar-bindings): New function.

Fixes: Bug#10289
2018-01-20 13:07:46 +01:00
Nicolas Goaziou 0155441358 Merge branch 'maint' 2018-01-19 18:22:00 +01:00
Tim Landscheidt b289a65be7 Use https for links to orgmode.org
TINYCHANGE
2018-01-19 18:14:58 +01:00
Nicolas Goaziou 2372276883 Merge branch 'maint' 2018-01-18 23:10:51 +01:00
Nicolas Goaziou daceceb424 Fix `org-store-link'
* lisp/org.el (org-store-link): Fix parameter to `completing-read',
  which expects a string, not a symbol.

Reported-by: "Stefan-W. Hahn" <stefan.hahn@s-hahn.de>
2018-01-18 23:09:12 +01:00
Nicolas Goaziou c3fffcd8d2 Fix C-<return> binding 2018-01-15 22:59:40 +01:00
Nicolas Goaziou 6965098a53 Use a single keybinding representation
* lisp/org.el (org-replace-disputed-keys): Fix docstring.

Use `kbd' macro everywhere.  Also add missing "ESC" equivalents for
"M-" bindings.
2018-01-15 16:13:37 +01:00
Nicolas Goaziou d5b70fa68b Silence byte-compiler 2018-01-13 14:19:50 +01:00
Nicolas Goaziou 000b943ebd Re-order visibility functions in "org.el"
* lisp/org-macs.el (org-outline-overlay-data):
(org-set-outline-overlay-data): Moved from "org.el".
* lisp/org.el (org-remove-empty-overlays-at):
(org-show-empty-lines-in-parent):
(org-files-list):
(org-entry-beginning-position):
(org-entry-end-position):
(org-subtree-end-visible-p):
(org-first-headline-recenter):
(org-flag-region):
(org-show-entry):
(org-show-children):
(org-show-subtree):
(org-hide-block-toggle-maybe):
(org-hide-block-toggle):
(org-hide-block-toggle-all):
(org-hide-block-all):
(org-cycle-hide-drawers):
(org-flag-drawer):
(org-previous-block):
(org-next-block): Move functions.
2018-01-13 14:15:53 +01:00
Nicolas Goaziou a8ee20d23d Replace `outline-flag-region' with `org-flag-region'
* lisp/org-inlinetask.el (org-inlinetask-toggle-visibility):
* lisp/org-list.el (org-list-set-item-visibility):
* lisp/org.el (org-flag-subtree):
(org-cycle-internal-local):
(org-cycle-show-empty-lines):
(org-set-outline-overlay-data):
(org-move-subtree-down):
(org-set-tags):
(org-flag-heading):
(org-show-children):
(org-show-subtree):
(org-show-entry): Replace `outline-flag-region' with
`org-flag-region'.
2018-01-10 15:58:21 +01:00
Nicolas Goaziou 4dbb4a76a7 Implement `org-show-all'
* lisp/org.el (org-show-all): New function.
(org-cycle):
(org-cycle-internal-global):
(org-global-cycle):
(org-set-startup-visibility):
(org-set-outline-overlay-data):
(org-hide-block-all):
(org-mode-hook):
(org-tree-to-indirect-buffer):
(org-sort-entries):
(org-mode-map):
(org-org-menu):
* lisp/ob-lilypond.el (org-babel-lilypond-mark-error-line):
* lisp/org-archive.el (org-archive-subtree):
* lisp/org-capture.el (org-capture-place-template):
* lisp/org-mouse.el (org-mouse-popup-global-menu):
* lisp/ox-org.el (org-org-publish-to-org):
* testing/org-test.el (org-test-at-id):
(org-test-in-example-file): Use new function.

* lisp/org-compat.el (org-show-block-all): Mark as obsolete.
2018-01-10 15:58:21 +01:00
Nicolas Goaziou d30bea7cee Fold CLOCK and LOGBOOK drawers upon creating them
* lisp/org-clock.el (org-clock-find-position): Use a faster call to hide
  clock drawer.
* lisp/org.el (org-log-beginning): Make sure logbook drawer is folded as
  soon as inserted.
(org-store-log-note): Remove unnecessary call to
`org-cycle-hide-drawers'.
2018-01-10 15:58:21 +01:00
Nicolas Goaziou 4403d4685e Give drawers their own invisibility spec
* lisp/org.el (org-mode): Add special invisibility spec for drawers.
(org-show-set-visibility): Handle new invisibility spec.
(org-clean-visibility-after-subtree-move): Fix argument for
`org-cycle-hide-drawers'.  `overview' is a no-op.
(org-cycle-hook):
(org-cycle-internal-local):
(org-flag-drawer):
(org-move-subtree-down):
(org-show-entry):
* lisp/org-agenda.el (org-agenda-clock-in):
* lisp/org-clock.el (org-clock-goto):
* lisp/org-feed.el (org-feed-update):
* lisp/org-inlinetask.el (org-inlinetask-toggle-visibility): Do not hide
  drawers when expanding a headline.

Drawers and headlines visibility are now unrelated.  As a consequence,
there is no need to hide drawers every time a headline is expanded.
2018-01-10 15:58:21 +01:00
Nicolas Goaziou 4f74aa4c0e Change signature for `org-set-visibility-according-to-property'
* lisp/org.el (org-set-visibility-according-to-property): Remove unused
  argument.
(org-set-startup-visibility):
(org-overview): Apply signature change.
2018-01-10 15:58:21 +01:00
Nicolas Goaziou e886d1566d Implement `org-flag-region'
* lisp/org.el (org-flag-region): New function.
(org-hide-block-toggle): Use new function.

Unlike `outline-flag-region', this function handles multiple invisible
specs.
2018-01-10 15:55:46 +01:00
Nicolas Goaziou bbf1c26aaf Remove `org-hide-block-overlays' variable
* lisp/org.el (org-hide-block-overlays): Remove variable.
(org-show-block-all): Use `remove-overlays' to remove block-related
overlays instead of relying on a global state.
(org-hide-block-toggle): Do not update removed variable.  Tiny
refactoring.
2018-01-10 15:55:46 +01:00
Nicolas Goaziou 728920a8ed Rename `org-timestamp--to-internal-time' into `org-timestamp-to-time'
* lisp/org.el (org-timestamp-to-time): New function.
(org-timestamp--to-internal-time): Remove function.
(org-timestamp-format): Use new function.

* testing/lisp/test-org.el (test-org/timestamp-to-time): New test.
2018-01-10 15:05:11 +01:00
Nicolas Goaziou ee27fb010e Fix docstring
* lisp/org.el (org-timestamp-from-time): Fix docstring.
2018-01-10 14:37:02 +01:00
Nicolas Goaziou d3cdc35e06 Implement `org-timestamp-from-string', `org-timestamp-from-time'
* lisp/org.el (org-timestamp-from-string):
(org-timestamp-from-time): New functions.

* testing/lisp/test-org.el (test-org/timestamp-from-string):
(test-org/timestamp-from-time): New tests.
2018-01-10 14:35:32 +01:00
Nicolas Goaziou e2b47eb5e7 Merge branch 'maint' 2018-01-04 16:35:24 +01:00
Marco Wahl 6c3c06273e org.el (org-copy-subtree): Correct typo 2018-01-04 16:26:08 +01:00
Nicolas Goaziou ff3d23e64e Do not use `called-interactively-p' in `org-store-link'
* lisp/org.el (org-store-link): Do not use `called-interactively-p'.

Fixes: 19915
2018-01-03 18:04:55 +01:00
Nicolas Goaziou d6369e9ac6 Use completion in `org-set-effort'
* contrib/manual.org: Document change.
* lisp/org.el (org-set-effort): Change signature.
(org-inc-effort): Apply signature change.

Fixes: 22776, 22597
2018-01-02 22:00:35 +01:00
Nicolas Goaziou b030475575 Merge branch 'maint' 2018-01-02 14:14:18 +01:00
Nicolas Goaziou 16c7ae7996 Fix handling nested VISIBILITY properties
* lisp/org.el (org-set-visibility-according-to-property): Fix handling
  nested VISIBILITY properties.
* testing/lisp/test-org.el (test-org/set-visibility-according-to-property):
  New test.

Reported-by: Michael Maurer <maurer.michael@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-01/msg00012.html>
2018-01-02 14:13:46 +01:00
Nicolas Goaziou e9f30779de Merge branch 'maint' 2017-12-31 15:49:55 +01:00
Nicolas Goaziou af58a6dbf7 Change Org-mode into Org mode
* lisp/ob-core.el (org-babel-result-to-file):
* lisp/ob-picolisp.el:
* lisp/org-agenda.el (org-check-for-org-mode):
(org-search-view):
(org-tags-view):
(org-agenda-cleanup-fancy-diary):
(org-agenda-get-day-entries):
* lisp/org-table.el (orgtbl-mode):
* lisp/org-w3m.el (org-w3m-copy-for-org-mode):
* lisp/org.el (org-modules):
(org-startup-options):
(org-fontify-meta-lines-and-blocks):
* mk/default.mk:
* mk/manfull.pl:
* mk/org-fixup.el (org-make-org-version):
(org-make-org-loaddefs):
* mk/orgcard2txt.pl (rep_esc):
* mk/targets.mk ($(info):
* testing/README:
(Example):
* testing/examples/no-heading.org:
* testing/examples/normal.org: Change Org-mode into Org mode
2017-12-31 15:48:09 +01:00
Nicolas Goaziou a374b8b92a Silence byte-compiler 2017-12-31 15:16:12 +01:00
Nicolas Goaziou 2b96b08eaf Remove reference to Message mode
* lisp/org.el (org-adaptive-fill-function):
(org-fill-element): Remove reference to Message mode.  These functions
are Org mode specific.
2017-12-30 10:28:50 +01:00
Nicolas Goaziou eeb4c22090 Remove OrgStruct mode
* lisp/org.el (org-overview): Use `org-outline-regexp-bol' instead of
  `outline-regexp'.
(org-heading-components): Ignore orgstruct-mode.
(orgstruct-heading-prefix-regexp):
(orgstruct-setup-hook):
(org-local-vars):
(orgstruct-mode):
(turn-on-orgstruct):
(orgstruct-is-++):
(org-fb-vars):
(orgstruct++-mode):
(turn-on-orgstruct++):
(orgstruct-error):
(orgstruct-setup):
(orgstruct-make-binding):
(org-run-like-in-org-mode):
(org-indent-line):
(org-fill-paragraph):
(org-show-children): Remove Orgstruct mode

* doc/org.texi (Orgstruct mode): Remove node.
2017-12-30 10:28:50 +01:00
Bastien 199908ba62 org: Enhance non-interactive calls to `org-insert-link`
* org.el (org-insert-link): When called non-interactivily,
don't allow to edit the default description.
2017-12-29 18:43:40 +01:00
Bastien 29dd9a6605 org.el: New value for `org-todo-repeat-to-state'
* lisp/org.el (org-todo-repeat-to-state): Allow `t' to use
the previous TODO state.

* doc/org.texi (Repeated tasks): Document the new optional
value of `org-todo-repeat-to-state'.
2017-12-29 18:36:27 +01:00
Nicolas Goaziou a88bd87787 Merge branch 'maint' 2017-12-27 23:57:37 +01:00
Adrian Bradd ff0f3e4723 Fix `org-todo'
* org.el (org-todo): Use marker `change-plist' position property to
  permit triggering through "org-depend.el" with parent heading
  statistics.

When TODO statistics in parent headings were updated it shifted the point
defining the :position property in `change-plist' causing headlines
with TRIGGER properties to fail to evaluate.

TINYCHANGE
2017-12-27 23:57:15 +01:00
Nicolas Goaziou b30afa39b0 Merge branch 'maint' 2017-12-27 23:24:08 +01:00
Nicolas Goaziou f2c712a6a4 Fix inserting link
* lisp/org.el (org-insert-link): Fix when search option in a file link
  contains two consecutive slashes.

Reported-by: Ag Ibragimov <agzam.ibragimov@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2017-12/msg00560.html>
2017-12-27 23:22:07 +01:00
Nicolas Goaziou 7b6ec64e0e Merge branch 'maint' 2017-12-25 23:54:36 +01:00
Nicolas Goaziou 85ed1fd01d Fix visibility cycling when point is invisible
* lisp/org.el (org-cycle-internal-local): Fix visibility cycling when
  point is invisible.

Reported-by: Ruy Exel <ruyexel@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2017-12/msg00314.html>
2017-12-25 23:53:26 +01:00
Nicolas Goaziou fdb2eb6701 Preserve file local variables during some operations
* lisp/org-macs.el (org-preserve-local-variables): New macro.
* lisp/org-footnote.el (org-footnote--clear-footnote-section):
(org-footnote--goto-local-insertion-point):
(org-footnote-create-definition):
(org-footnote-delete):
(org-footnote-renumber-fn:N):
(org-footnote-sort):
(org-footnote-normalize):
* lisp/org.el (org-move-subtree-down):
(org-copy-subtree):
(org-sort-entries):
(org-refile): Use new macro.
* testing/lisp/test-org-footnote.el (test-org-footnote/normalize):
(test-org-footnote/delete):
(test-org-footnote/sort):
(test-org-footnote/normalize):
* testing/lisp/test-org.el (test-org/sort-entries): Add tests.

Operations affected include copying, killing, refiling, archiving and
moving subtrees.  It also affects sorting, creating and deleting
footnotes.
2017-12-18 16:01:41 +01:00
Nicolas Goaziou 9bbee7d3c8 Add some `:safe' keywords
* lisp/org-src.el (org-edit-src-content-indentation):
* lisp/org.el (org-adapt-indentation): Add :safe keyword.
2017-12-17 11:01:25 +01:00
Marco Wahl 3f2968c650 org: Insert a blank with structure template type "src" 2017-12-16 18:17:10 +01:00
Nicolas Goaziou c9bbc4eca7 Merge branch 'maint' 2017-12-15 23:21:34 +01:00
Nicolas Goaziou 5e30bbcd34 Silence byte-compiler 2017-12-15 23:21:15 +01:00
Nicolas Goaziou 6fc4a1c53b Merge branch 'maint' 2017-12-14 22:40:55 +01:00
Nicolas Goaziou fe98379fce Fix fuzzy link escaping
* lisp/org.el (org-make-link-string): Properly escape square brackets
  and percent sings in fuzzy links.

* testing/lisp/test-org-clock.el (test-org-clock/clocktable/link):
  Update tests.

Reported-by: Paulo Matos <paulo@matos-sorge.com>
<http://lists.gnu.org/r/emacs-orgmode/2017-12/msg00269.html>
2017-12-14 22:39:54 +01:00
Nicolas Goaziou 60831c4606 Merge branch 'maint' 2017-12-14 00:40:58 +01:00
Nicolas Goaziou 263a0cf00e Fix defcustom type
* lisp/org-agenda.el (org-agenda-custom-commands-local-options):
* lisp/org-duration.el (org-duration-units):
* lisp/org.el (org-occur-case-fold-search): Remove spurious quote.

Fixes: 29694

lignes
2017-12-14 00:40:27 +01:00
Nicolas Goaziou 5d2517ba5a Merge branch 'maint' 2017-12-14 00:18:20 +01:00
Nicolas Goaziou d9a6408baf Fix defgroups
* lisp/org.el (org-structure-template-alist): Use `org-edit-structure'
  instead of non-existent `org-completion'.
* lisp/ox-publish.el (org-export-publish): Rename from `org-publish'.
* lisp/org-pcomplete.el (org-complete): Remove unused group.

Fixes: 29698
2017-12-14 00:16:18 +01:00
Nicolas Goaziou a36d18caa4 Merge branch 'maint' 2017-12-13 23:52:06 +01:00
Nicolas Goaziou 08fa2ae056 Fix some defcustoms types
* lisp/ob-stan.el (org-babel-stan-cmdstan-directory):
* lisp/org.el (org-latex-default-packages-alist):
* lisp/ox-odt.el (org-odt-with-latex): Fix type mismatch.

Fixes: 29695
2017-12-13 23:51:10 +01:00
Nicolas Goaziou 076cba6b2d Fix last commit
* lisp/org.el (org-show-all): Remove function.
2017-12-10 23:50:30 +01:00
Nicolas Goaziou 6f89177ee6 Move `org-unlogged-message' to "org-macs.el"
* lisp/org.el (org-unlogged-message): Move function to...
* lisp/org-macs.el: ... here.
2017-12-10 23:37:59 +01:00
Rasmus 94f1a58438 org-tempo.el: New file for expansion of templates
* lisp/org-tempo.el: New file.
* doc/org.texi (Structure templates):
* lisp/org.el (org-modules): Add org-tempo.
* testing/lisp/test-org-tempo.el: New file.
2017-12-08 00:29:08 +01:00
Nicolas Goaziou 3695415199 Merge branch 'maint' 2017-12-06 23:16:55 +01:00
Nicolas Goaziou b570175d76 Fix `org-files-list'
* lisp/org.el (org-files-list): Prevent duplicates in result.

Reported-by: Renato Ferreira <renatofdds@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2017-12/msg00134.html>
2017-12-06 23:15:59 +01:00
Nicolas Goaziou 15df8db7ad Merge branch 'maint' 2017-12-04 22:43:31 +01:00
Nicolas Goaziou 0e7e3bc6df Remove some references to reserved keybinding prefix `C-c a'
* lisp/org-agenda.el (org-stuck-projects):
(org-agenda-menu):
* lisp/org.el (org-org-menu): Remove references to reserved keybinding
  prefix `C-c a'.

Fixes: 28263
2017-12-04 22:42:16 +01:00
Nicolas Goaziou a0e3f1d505 Merge branch 'maint' 2017-12-03 18:14:48 +01:00
Nicolas Goaziou 037db00f40 Fix last commit
* lisp/org.el (org-org-menu): Fix last commit.
2017-12-03 18:14:21 +01:00
Nicolas Goaziou 7fc901ca0f Merge branch 'maint' 2017-12-03 18:04:18 +01:00
Nicolas Goaziou b4079bb894 Activate CDLatex entry in menu only if `cdlatex' is loaded
* lisp/org.el (org-org-menu): Activate CDLatex entry in menu only if
  `cdlatex' is loaded.

Fixes: 4068
2017-12-03 18:03:19 +01:00
Nicolas Goaziou 259656a76e Merge branch 'maint' 2017-12-03 09:03:37 +01:00
Nicolas Goaziou 2faaacfeeb Revert the whole time zone mess
* lisp/org.el (org-time-string-to-time):
(org-time-string-to-seconds): Remove optional ZONE argument.
(org-2ft):
(org-check-before-date):
(org-check-after-date):
(org-check-dates-range):
(org-parse-time-string):
* lisp/org-clock.el (org-clock-get-sum-start):
(org-clock-out):
(org-clock-timestamps-change):
(org-clock-sum):
(org-clock-update-time-maybe):
* lisp/org-colview.el (org-columns--age-to-minutes): Apply change.
* testing/lisp/test-org-clock.el (org-test-clock-create-clock):
(test-org-clock/clocktable/scope):
* testing/lisp/test-org-colview.el (test-org-colview/columns-summary):
  Apply change.  Simplify tests to avoid daylight saving time issue.
2017-12-03 08:57:37 +01:00
Nicolas Goaziou 14620fdf0c Yet another tweak to fontification
* lisp/org.el (org-do-emphasis-faces): Handle properly asterisks at
  the beginning of line.
2017-12-02 23:21:36 +01:00
Nicolas Goaziou 8bd9839952 Revert "Fix headline fontification"
This reverts commit 5873d99121.
2017-12-02 23:07:51 +01:00
Nicolas Goaziou bdaf5dacf4 Merge branch 'maint' 2017-12-02 17:27:53 +01:00
Nicolas Goaziou ca43c1f262 Fix RET past the last column of a table
* lisp/org.el (org-return): Split the table before first column or
  after last one.
* lisp/org-table.el (org-table-next-row): Remove code handling split.

* testing/lisp/test-org.el (test-org/return): Add test.
2017-12-02 17:23:03 +01:00
Nicolas Goaziou 7a3cae65a7 Merge branch 'maint' 2017-12-01 19:35:54 +01:00
Nicolas Goaziou 0cc231a7bb Call store link functions only once
* lisp/org.el (org-store-link): Call store link functions only once.

Fixes: 19914
2017-12-01 19:33:35 +01:00
Alex Branham ee7ead62aa Make `org-comment-dwim' check if on a heading
* lisp/org.el (org-comment-dwim): If on a heading, comment the
  heading.

* testing/lisp/test-org.el: Add test.

TINYCHANGE
2017-11-29 14:41:12 +01:00
Nicolas Goaziou 68544f4f21 Merge branch 'maint' 2017-11-27 23:02:26 +01:00
Nicolas Goaziou 5873d99121 Fix headline fontification
* lisp/org.el (org-do-emphasis-faces): Do not emphasize stars in
  headlines.

Reported-by: swflint@flintfam.org (Samuel W. Flint)
<http://lists.gnu.org/r/emacs-orgmode/2017-11/msg00363.html>
2017-11-27 22:54:41 +01:00
Nicolas Goaziou 579fa12f50 Merge branch 'maint' 2017-11-26 11:02:14 +01:00
Nicolas Goaziou ac4b756588 Silence byte-compiler 2017-11-26 11:01:55 +01:00
Nicolas Goaziou d7f2c8b8e1 Merge branch 'maint' 2017-11-25 15:42:33 +01:00
Nicolas Goaziou ed06b159c3 Small fix to emphasis fontification
* lisp/org.el (org-do-emphasis-faces): Do not span over paragraph
  separators.

Reported-by: Kaushal Modi <kaushal.modi@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-11/msg00202.html>
2017-11-25 15:42:10 +01:00
Eric Abrahamsen c04e357f3d Replace easy templates with org-insert-structure-template
* lisp/org.el (org-insert-structure-template): New function for
  wrapping region (or element at point) in a begin/end block.
  (org-structure-predefined-blocks): New option holding predefined
  blocks, for completion.
  (org-try-structure-completion,
  org-complete-expand-structure-template): Remove functions.
* doc/org.texi (Inserting structure templates): Document.
* testing/lisp/test-org.el (test-org/insert-template): New test.
2017-11-05 09:56:26 +01:00
Nicolas Goaziou 9bee79a102 Merge branch 'maint' 2017-11-03 23:11:07 +01:00
Nicolas Goaziou 08c9de2a74 Fix typo in docstring
* lisp/org.el (org-speed-commands-user): Fix typo in docstring.
2017-11-03 23:10:38 +01:00
Nicolas Goaziou 36578fda46 Merge branch 'maint' 2017-10-31 19:34:35 +01:00
Nicolas Goaziou 8860fe2938 Fix `org-display-inline-images'
* lisp/org.el (org-display-inline-images): Fix regexp.

Reported-by: Leslie Watter <watter@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-10/msg00455.html>
2017-10-31 19:33:55 +01:00
Nicolas Goaziou 4388bdf852 Merge branch 'maint' 2017-10-30 00:51:31 +01:00
Nicolas Goaziou 2567fee3c9 Fix Org corruption when `org-agenda-files' is invalid
* lisp/org.el (org-install-agenda-files-menu): Prevent errors in
  `org-agenda-files' from corrupting Org initialization.

Reported-by: Allen Li <vianchielfaura@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-10/msg00424.html>
2017-10-30 00:50:11 +01:00
Nicolas Goaziou e1c2db37ed Extract "org-goto" code into a dedicated library
* lisp/org-goto.el: New file.

* lisp/org.el (org-goto-interface):
(org-goto-max-level):
(org-goto-auto-isearch):
(org-goto-local-auto-isearch):
(org-goto-ret):
(org-goto-left):
(org-goto-right):
(org-goto-quit):
(org-goto): Move to new file.
(org-goto-location): Change signature. Move to new file.
(org-goto-map): Remove function.

* lisp/org-id.el (org-id-get-with-outline-drilling): Update to new
  `org-goto-location' signature.
2017-10-22 16:49:17 +02:00
Nicolas Goaziou 87116700e6 Move some invisibility check functions to "org-macs.el"
* lisp/org.el (org-invisible-p):
(org-truely-invisible-p):
(org-invisible-p2): Move...

* lisp/org-macs.el: ... there.
2017-10-22 16:20:58 +02:00
Nicolas Goaziou 59d21881b1 Revert "Move `org-key' and `org-defkey' into "org-macs.el""
This reverts commit 7f56a9920f.

`org-key' is specific to Org keybinding, therefore not generic enough
to fit in "org-macs.el". So is `org-defkey'.
2017-10-22 15:38:35 +02:00
Nicolas Goaziou 486331e323 Move some generic functions into "org-macs.el"
* lisp/org.el (org-do-wrap): Remove function.
(org-base-buffer):
(org-find-base-buffer-visiting):
(org-overlay-display):
(org-overlay-before-string):
(org-find-overlays):
(org-reverse-string):
(org-shorten-string):
(org-remove-tabs):
(org-wrap):
(org-remove-indentation):
(org-do-remove-indentation):
(org-uniquify-alist):
(org-combine-plists):
(org-skip-whitespace):
(org-in-regexp):
(org-point-in-group):
(org-get-at-eol):
(org-find-text-property-in-string):
(org-display-warning):
(org-eval):
* lisp/org-compat.el (org-add-props): Move ...

* lisp/org-macs.el: ... there.
(org--do-wrap): New function.
2017-10-22 15:34:26 +02:00
Nicolas Goaziou 7f56a9920f Move `org-key' and `org-defkey' into "org-macs.el"
* lisp/org.el (org-key):
(org-defkey): Move...

* lisp/org-macs.el: ... there.
2017-10-22 15:05:48 +02:00
Nicolas Goaziou 7554012cef Move compatibility functions in "org-compat.el"
* lisp/org.el (org-imenu-and-speedbar):
(org-imenu-markers):
(org-imenu-new-marker):
(org-imenu-get-tree):
(org-speedbar-restriction-lock-overlay):
(org-speedbar-set-agenda-restriction):
(org--flyspell-object-check-p):
(org-mode-flyspell-verify):
(org-remove-flyspell-overlays-in):
(org-bookmark-jump-unhide):
(org-mark-jump-unhide): Move...

* lisp/org-compat.el: ... there.
2017-10-22 15:01:43 +02:00
Nicolas Goaziou 95b76608a6 Merge branch 'maint' 2017-10-22 14:40:45 +02:00
Nicolas Goaziou a2a034f5b9 Prevent leaking fontification across table fields' borders
* lisp/org.el (org-do-emphasis-faces): Prevent leaking fontification
  across table fields' borders.

Reported-by: Ryan <rct@thompsonclan.org>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-10/msg00321.html>
2017-10-22 14:39:36 +02:00
Nicolas Goaziou cd9cccb4b2 Merge branch 'maint' 2017-10-18 22:49:10 +02:00
Allen Li 8c5c030c64 Fix `org-insert-todo-heading'
* lisp/org.el (org-insert-todo-heading): Insert TODO keyword relative
  to the original headline, not to the headline above.

* testing/lisp/test-org.el (test-org/insert-todo-heading-respect-content):
  Add test.
2017-10-18 22:48:16 +02:00
Nicolas Goaziou 52d4ca4b29 Merge branch 'maint' 2017-10-17 23:31:45 +02:00
Allen Li 90d283f189 Update documentation on org-protocol template placeholders
* doc/org.texi (@code{capture} protocol): Fix placeholder names
(Template expansion): Add org-protocol placeholders

* lisp/org.el (org-store-link-plist): Fix docstring grammar
(org-store-link-props): Fix docstring grammar
2017-10-17 23:28:53 +02:00
Nicolas Goaziou 7ac8883394 Move `org-completing-read' into "org-macs.el"
* lisp/org-macs.el (org-completing-read): Moved here...
* lisp/org.el: ... from there.
2017-10-17 10:11:21 +02:00
Nicolas Goaziou 45a1918efe Move `org-xor' into "org-macs.el"
* lisp/org.el (org-xor): Move...
* lisp/org-macs.el: ... there.
2017-10-17 09:37:34 +02:00
Nicolas Goaziou 2525dc6c72 Merge branch 'maint' 2017-10-14 12:32:25 +02:00
Nicolas Goaziou 1d5142601a Silence byte-compiler 2017-10-14 12:32:08 +02:00
Nicolas Goaziou 4ffddc2a93 Merge branch 'maint' 2017-10-14 11:01:32 +02:00
Nicolas Goaziou 5861a55740 `org-file-contents': Improve error message
* lisp/org.el (org-file-contents): Improve error message.
2017-10-14 10:59:51 +02:00
Kyle Meyer 0b83168465 Adjust version numbers of unreleased changes
* lisp/org-table.el (org-table-shrunk-column-indicator):
* lisp/org.el (org-startup-shrink-all-tables): Update Org version to 9.2
and Emacs version to 27.1.
(customize-package-emacs-version-alist): Map Org 9.2 to Emacs 27.1.

Emacs 26.1 is now in the pretest phase, and the version for Emacs's
development branch is 27.1.
2017-10-08 13:44:33 -04:00
Nicolas Goaziou fa56da61a7 Merge branch 'maint' 2017-10-08 10:36:48 +02:00
Nicolas Goaziou d747e51fbf Consider headlines as sentences by themselves
* lisp/org.el (org-forward-sentence): Consider headlines as sentences
  by themselves.

* testing/lisp/test-org.el (test-org/forward-sentence): Add test.

Reported-by: Mat Vibrys <vibrysec@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-10/msg00130.html>
2017-10-08 10:35:22 +02:00
Nicolas Goaziou 7f56bfe0c2 Merge branch 'maint' 2017-10-08 10:08:53 +02:00
Nicolas Goaziou 6432fcd433 C-c C-c on a planning info timestamp fixes day
* lisp/org.el (org-ctrl-c-ctrl-c): On a timestamp in a planning line,
  fix day, like regular timestamps.

Reported-by: Aaron Jensen <aaronjensen@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-10/msg00132.html>
2017-10-08 10:07:36 +02:00
Nicolas Goaziou 44e3745c78 Merge branch 'maint' 2017-10-06 19:35:25 +02:00
Nicolas Goaziou fb403ca34e Fix `org-backward-paragraph' on an empty heading
* lisp/org.el (org-backward-paragraph): Fix behavior on greater
  elements without contents.

* testing/lisp/test-org.el (test-org/backward-paragraph): Add test.

Reported-by: Omar Antolin <omar.antolin@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-10/msg00099.html>
2017-10-06 19:34:28 +02:00
Nicolas Goaziou 1b12ad5cf6 Merge branch 'maint' 2017-10-04 12:58:41 +02:00
Nicolas Goaziou ef6dac812b Fix `org-backward-paragraph' on block opening line
* lisp/org.el (org-backward-paragraph): Do not error when called from
  a block opening line.
* testing/lisp/test-org.el (test-org/backward-paragraph): Add tests.

Reported-by: Omar Antolin <omar.antolin@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-10/msg00051.html>
2017-10-04 12:57:14 +02:00
Nicolas Goaziou 428368af2f Merge branch 'maint' 2017-10-01 19:02:47 +02:00
Nicolas Goaziou 018fb0149d Fix parsing properties with title or summary type
* testing/lisp/test-org.el (test-org/buffer-property-keys): Ignore
  title and summary type when extracting name.

Reported-by: Adrian Bradd <adrian.bradd@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-10/msg00001.html>
2017-10-01 19:01:58 +02:00
Marco Wahl 193d5b5c7a Remove the overwrite of the C-c TAB binding
See also 44c46176e.
2017-09-26 12:28:14 +02:00
Nicolas Goaziou 6e7d152699 Move `org-get-at-bol' into "org-macs.el"
* lisp/org.el (org-get-at-bol): Move...
* lisp/org-macs.el: ... here.
2017-09-18 21:26:18 +02:00
Nicolas Goaziou 32890ea5a5 Move `org-uniquify' into "org-macs.el"
* lisp/org.el (org-uniquify): Move function...
* lisp/org-macs.el: ... here.
2017-09-18 21:25:15 +02:00
Nicolas Goaziou 18ee77f62a Silence byte-compiler 2017-09-18 21:15:31 +02:00
Nicolas Goaziou 442a2b430d Move `org-trim' in "org-macs.el"
* lisp/org.el (org-trim): Move function...
* lisp/org-macs.el: ... here.
2017-09-18 21:07:13 +02:00
Nicolas Goaziou 44c46176ec Re-bind `org-show-children' to C-c TAB
* lisp/org.el (org-ctrl-c-tab): New function.
2017-09-18 20:20:35 +02:00
Nicolas Goaziou ff6b380999 Merge branch 'maint' 2017-09-17 12:48:59 +02:00
Nicolas Goaziou 80cbf909ea Remove useless binding
* lisp/org.el (org-mode-map): Remove [(meta return)] binding, handled
  by (kbd "M-RET").

Suggested-by: Allen Li <vianchielfaura@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-09/msg00411.html>
2017-09-17 12:48:17 +02:00
Kyle Meyer 297acd7517 Merge branch 'maint' 2017-09-17 01:17:10 -04:00
Paul Eggert ff0dcf52a5 Backport commit bc511a64f from Emacs
Prefer HTTPS to FTP and HTTP in documentation
bc511a64f6da9ab51acc7c8865e80c4a4cb655c2
Paul Eggert
Wed Sep 13 15:54:37 2017 -0700
2017-09-17 00:28:38 -04:00
Nicolas Goaziou 2021b98b83 Merge branch 'maint' 2017-09-16 17:19:55 +02:00
Nicolas Goaziou 9fb98f4c9c Add M-RET binding for terminal
* lisp/org.el (org-mode-map): Add M-RET binding.

Reported-by: Allen Li <vianchielfaura@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-09/msg00386.html>
2017-09-16 17:19:00 +02:00
Nicolas Goaziou 85acebdc2e Remove auto-repair of malformed property drawers
* lisp/org.el (org-buffer-property-keys): Remove optional argument
  IGNORE-MALFORMED.
* lisp/org-pcomplete.el (pcomplete/org-mode/prop): Update call to
  previous function.

* testing/lisp/test-org.el (test-org/buffer-property-keys): Remove
  a test.

More often than not, the question just gets in the way.  Use `M-x
org-lint' instead.
2017-09-16 14:15:57 +02:00
Nicolas Goaziou 8383f7e08b Change emphasis regexp
* lisp/org.el (org-emphasis-regexp-components): Change emphasis
  regexp.

Reported-by: Reuben Thomas <rrt@sc3d.org>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-09/msg00363.html>
2017-09-15 00:14:09 +02:00
Nicolas Goaziou 9e062df65d Merge branch 'maint' 2017-09-14 15:44:06 +02:00
Nicolas Goaziou 25f12218d2 Fix `org-auto-repeat-maybe'
* lisp/org.el (org-auto-repeat-maybe): Fix `org-auto-repeat-maybe'.

* testing/lisp/test-org.el (test-org/auto-repeat-maybe): Add test.

Reported-by: Samuel Wales <samologist@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-09/msg00298.html>
2017-09-14 15:40:28 +02:00
Nicolas Goaziou c59cb987eb Merge branch 'maint' 2017-09-12 09:02:43 +02:00
Nicolas Goaziou 95271315cc Fix `org-forward-sentence' on a headline
* lisp/org.el (org-forward-sentence): Fix `org-forward-sentence' on a headline.

* testing/lisp/test-org.el (test-org/forward-sentence): Add tests.

Reported-by: Mat Vibrys <vibrysec@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-09/msg00282.html>
2017-09-12 09:02:02 +02:00
Nicolas Goaziou 289539e119 Merge branch 'maint' 2017-09-08 07:00:00 +02:00
Reuben Thomas a307011136 Fix logic of calling org-make-link-desciption-function
* lisp/org.el (org-insert-link): Simplify so that description is only
prompted for once, if auto-desc is not set, and takes as its default
value, in order, default-description, the return value of
org-make-link-description-function (if the variable is non-nil), and
the current desc. Update the docstring to reflect that
default-description takes precedence over
org-make-link-description-function.
(org-make-link-description-function): Remove from docstring the
statement that if the variable is nil, then the link will be used as
the default description. This is undesirable, and was not in any case
implemented.
2017-09-08 06:59:30 +02:00
Kyle Meyer 88ffcf54d8 Merge branch 'maint' 2017-09-07 16:59:39 -04:00
Kyle Meyer 79d9f0c0ce Update customize-package-emacs-version-alist
* lisp/org.el (customize-package-emacs-version-alist): Add entries for
all existing ":package-version" values, and remove entries for
versions that aren't used as ":package-version" values.

Note that this alist has a limited effect because we specify
":version" in almost all of our defcustoms.  Two functions make use of
this alist: describe-variable-custom-version-info and
customize-changed-options.  The former only looks at the alist if
:version isn't specified, and the latter only looks at :version if an
entry for :package-version isn't found in the alist.

We should consider removing the defcustom :version specifications so
that the package-version->version mapping only needs to be maintained
in one place.
2017-09-07 16:56:15 -04:00
Kyle Meyer 6496d0ca95 Correct defcustom version information
* lisp/ob-lilypond.el (org-babel-lilypond-commands):
* lisp/ob-lua.el (org-babel-lua-command):
(org-babel-lua-mode):
(org-babel-lua-hline-to):
(org-babel-lua-None-to):
* lisp/org-agenda.el (org-agenda-search-view-max-outline-level):
* lisp/org.el (org-mouse-1-follows-link):
(org-src-fontify-natively):
(orgstruct-heading-prefix-regexp):
* lisp/ox-ascii.el (org-ascii-format-inlinetask-function):
* lisp/ox-latex.el (org-latex-format-drawer-function):
(org-latex-listings-langs):
* lisp/ox-odt.el (org-odt-format-drawer-function):
* lisp/ox.el (org-export-with-properties): Correct ":version" value.

* lisp/org-attach.el (org-attach-annex-auto-get): Correct
":package-version" value.
2017-09-07 16:56:11 -04:00
Nicolas Goaziou d15a4a4a9b Silence byte-compiler 2017-09-07 18:21:01 +02:00
Nicolas Goaziou ad1c0faa7e Merge branch 'maint' 2017-09-07 14:38:23 +02:00
Nicolas Goaziou ea4e3dac6d Use `split-string' instead of `org-split-string'
* contrib/lisp/org-depend.el (org-depend-trigger-todo):
(org-depend-block-todo):
* contrib/lisp/ox-bibtex.el (org-bibtex-get-arguments):
* contrib/lisp/ox-koma-letter.el (org-koma-letter-template):
* contrib/lisp/ox-taskjuggler.el (org-taskjuggler--build-unique-id):
(org-taskjuggler-resolve-dependencies):
* lisp/ob-core.el (org-babel-insert-result):
* lisp/org-agenda.el (org-search-view):
* lisp/org-lint.el (org-lint-duplicate-target):
(org-lint-wrong-header-value):
* lisp/org.el (org--setup-collect-keywords):
(org-make-org-heading-search-string):
(org-search-radio-target):
(org-local-logging):
(org-entry-add-to-multivalued-property):
(org-entry-remove-from-multivalued-property):
(org-entry-member-in-multivalued-property):
(org-entry-get-multivalued-property):
(org-entry-put-multivalued-property):
(org-wrap):
* lisp/ox-beamer.el (org-beamer-allowed-property-values):
* lisp/ox.el (org-export--get-subtree-options):
(org-export--get-inbuffer-options): Use `split-string' instead of
`org-split-string'.
2017-09-07 14:36:50 +02:00
Nicolas Goaziou 73bf9b8887 org-table: Allow to shrink tables upon opening a document
* lisp/org-table.el (org-table-shrink): New function.
* lisp/org.el (org-startup-align-all-tables): Update docstring.
(org-startup-shrink-all-tables): New variable.
(org-mode): Use new function and new variable.
2017-09-06 15:18:37 +02:00
Nicolas Goaziou 23a2fde6fe Remove visual effect of width cookies in tables
* lisp/org-colview.el (org-dblock-write:columnview): Remove :width
  parameter.

* lisp/org-table.el (org-narrow-column-arrow): Remove variable.
(org-table-cleanup-narrow-column-properties): Remove function.
(org-table-align): Ignore width cookies when aligning table.
(org-table-justify-field-maybe):
(org-table-finish-edit-field):
(org-table-follow-fields-with-editor):
(orgtbl-setup): Remove reference to `org-cwidth' property.

* lisp/org.el (org-mode):
(org-hide-wide-columns): Remove function.
(org-set-font-lock-defaults): Apply previous removal.
(org-shorten-string): Ignore `org-cwidth' property.

* testing/lisp/test-org-colview.el (test-org-colview/dblock): Remove
  a test.

Export back-ends may still use width cookie to alter table's output.
2017-09-06 15:18:37 +02:00
Nicolas Goaziou 6d6a30d4cd org-table: Implement shrunk columns
* lisp/org-table.el (org-table-shrunk-column-indicator): New variable.
(org-table-with-shrunk-columns): New macro.
(org-table--shrunk-field):
(org-table--list-shrunk-columns):
(org-table--shrink-field):
(org-table--read-column-selection):
(org-table--expand-all-columns):
(org-table-toggle-column-width): New functions.

(org-table-align):
(org-table-get-field):
(org-table-insert-column):
(org-table-delete-column):
(org-table-move-column):
(org-table-move-row):
(org-table-insert-row):
(org-table-insert-hline):
(org-table-kill-row):
(org-table-sort-lines): Use new functions.

(org-table-overlay-coordinates):
(org-table-toggle-coordinate-overlays): Tiny refactoring.

* testing/lisp/test-org-table.el (test-org-table/toggle-column-width):
(test-org-table/shrunk-columns): New tests.
2017-09-06 15:18:37 +02:00
Nicolas Goaziou c01b62305e Merge branch 'maint' 2017-08-30 08:12:29 +02:00
Nicolas Goaziou 7d18632a73 Fix "Symbol’s function definition is void: org-clocking-buffer"
* lisp/org.el (org-sort-entries): Fix "Symbol’s function definition is
void: org-clocking-buffer".

Reported-by: Ian Garmaise <ian.g@phorixsol.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-08/msg00647.html>

Reported-by: Allen Choong <allencch@hotmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-08/msg00649.html>
2017-08-30 00:14:42 +02:00
Nicolas Goaziou 8b5b2cf49e Merge branch 'maint' 2017-08-28 09:15:54 +02:00
Nicolas Goaziou ab65bc13d6 Fix deleting a region in a table (part 2)
* lisp/org.el (org-delete-backward-char): Fix deleting a region in
  a table.
2017-08-28 09:14:57 +02:00
Nicolas Goaziou e0682619dd Merge branch 'maint' 2017-08-26 00:12:46 +02:00
Nicolas Goaziou a6840598ed Fix `org-copy-visible'
* lisp/org.el (org-copy-visible): Rewrite function.  Do not use
  dubious `org-find-visible' and `org-find-invisible'.

* testing/lisp/test-org.el (test-org/copy-visible): New test.

Reported-by: Gary Cheng <garycheng12@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-08/msg00568.html>
2017-08-26 00:09:51 +02:00
Nicolas Goaziou 6a590738b1 Remove `org-enable-table-editor'
* doc/org.texi (Built-in table editor): Document removal.
* lisp/org-table.el (orgtbl-optimized):
(org-table-auto-blank-field): Ignore removed variable.
2017-08-19 23:39:22 +02:00
Nicolas Goaziou 9638de598c `org-enable-table-editor' does not affect syntax
* lisp/org-table.el (org-table-paste-rectangle):
* lisp/org.el (org-at-table-p):
(org-at-table.el-p):
(org-at-table-hline-p):
(org-ctrl-c-ctrl-c):
(org-tbl-menu): Ignore `org-enable-table-editor'.
2017-08-19 21:44:47 +02:00
Nicolas Goaziou ac6b6a45de Merge branch 'maint' 2017-08-17 18:17:39 +02:00
Nicolas Goaziou 91c68865c6 Fix deleting region in a table
* lisp/org.el (org-self-insert-command): Fix deleting region in
  a table.

Reported-by: Nick Helm <nick@tenpoint.co.nz>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-08/msg00346.html>
2017-08-17 18:16:22 +02:00
Nicolas Goaziou 3fb025137b Fix previous commit
* lisp/org.el (org-display-inline-images): Fix thinko in previous
  commit.  Also remove code related to nested links as this is no
  longer possible in Org syntax.
2017-08-17 15:55:15 +02:00
Nicolas Goaziou 6ec148a263 Allow link abbreviations to be displayed as inline images
* lisp/org.el (org-display-inline-images): Also display link
  abbreviations when they point to a valid image file.

Reported-by: Fabrice Popineau <fabrice.popineau@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-08/msg00395.html>
2017-08-17 15:45:47 +02:00
Nicolas Goaziou 2fb129b5c7 `org-scan-tags' retrieve all TODO keywords, not only not-done ones
* lisp/org.el (org-scan-tags): Retrieve all TODO keywords.  DONE
  keywords can be filtered using "/!" matcher syntax or equivalent.

Reported-by: Julien Cubizolles <j.cubizolles@free.fr>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-08/msg00367.html>
2017-08-17 15:16:07 +02:00
Galen Menzel 10b1cfb031 Fix `org-toggle-tag
* lisp/org.el (org-toggle-tag): Fix
  d777d5e0b7.

Reported-by: Josh Moller-Mara <jmm@cns.nyu.edu>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-08/msg00278.html>
2017-08-11 11:02:01 +02:00
Grant Rettke 33e0dc6155 Add Easy Template for COMMENT (C)
* lisp/org.el: (org-structure-template-alist): Added `COMMENT' block template
  bound to `C'

* doc/org.texi: Add documentation for `COMMENT' Easy Template.

* contrib/orgmanual.org: Add documentation for `COMMENT' Easy
  Template.

* etc/ORG-NEWS: Added note for 9.1 release under Miscellaneous
2017-08-10 12:45:02 +02:00
Nicolas Goaziou 829ffa977c Merge branch 'maint' 2017-08-10 12:42:51 +02:00
Nicolas Goaziou 313d22dec6 org.el: Fix org-open-at-point for tags.
lisp/org.el (org-open-at-point): Move case for tags up so that it's
not shortcutted by the case for no valid context.

TINYCHANGE
2017-08-10 12:41:35 +02:00
Nicolas Goaziou f1b2a95bee Merge branch 'maint' 2017-08-07 23:27:51 +02:00
Nicolas Goaziou 1876514e26 Fix customize interface
* lisp/org.el (org-tag-alist, org-tag-persistent-alist): Add non-keyed
tag type.
2017-08-07 23:27:10 +02:00
Nicolas Goaziou bfbaf1caa4 Merge branch 'maint' 2017-08-07 14:47:14 +02:00
Nicolas Goaziou ec129f8e10 Silence byte-compiler 2017-08-07 14:46:59 +02:00
Nicolas Goaziou e805aba972 Add "vala" to org-babel-load-languages
* lisp/org.el (org-babel-load-languages): Add "vala".
2017-08-07 14:44:38 +02:00
Nicolas Goaziou d777d5e0b7 Fix thinko
* lisp/org.el (org-toggle-tag): Do not call `match-string' after
  `replace-match'.
2017-08-07 13:13:56 +02:00
Nicolas Goaziou 7d21349dbe Merge branch 'maint' 2017-08-07 13:12:32 +02:00
Nicolas Goaziou f6a28ba1c2 Tiny refactoring
* lisp/org.el (org-sort-entries): Use keyword instead of symbol.
2017-08-07 13:11:54 +02:00
Nicolas Goaziou c8f3833e9b Merge branch 'maint' 2017-08-07 12:56:20 +02:00
Nicolas Goaziou 6a9fc48097 Fix `org-sort-entries' loosing clock marker
* lisp/org.el (org-sort-entries): Properly restore clock marker, when
  appropriate.

Reported-by: Samuel Wales <samologist@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-08/msg00177.html>
2017-08-07 12:51:35 +02:00
Nicolas Goaziou e83255c993 Silence byte-compiler 2017-08-07 11:43:50 +02:00
Nicolas Goaziou 15f112259b Fix spurious colons next to TODO keywords
* lisp/org.el (org-toggle-tag): Fix spurious colons next to TODO
  keywords.

Reported-by: Colin Baxter <m43cap@yandex.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-08/msg00075.html>
2017-08-07 11:32:39 +02:00
Nicolas Goaziou bd9f63a22a Merge branch 'maint' 2017-08-07 10:53:22 +02:00
Nicolas Goaziou e8fe579a17 Silence byte-compiler
* lisp/org-macs.el (org-unique-local-variables):
(org-get-local-variables):
(org-clone-local-variables): Moved from "org.el".
2017-08-07 10:52:37 +02:00
Nicolas Goaziou a7e11643a9 Merge branch 'maint' 2017-08-06 10:31:06 +02:00
Nicolas Goaziou fca0dbcc61 Fix `org-clone-local-variables'
* lisp/org.el (org-clone-local-variables): Prevent errors that could
  happen when trying to set local variables that cannot be set,
  e.g. `enable-multibyte-characters'.
2017-08-06 10:26:01 +02:00
Nicolas Goaziou 9d7f8a71a9 Merge branch 'maint' 2017-08-06 02:17:25 +02:00
Nicolas Goaziou 62b4edb263 Fix `org-refile' with prefix argument
* lisp/org.el (org-refile): Handle special file targets.

Reported-by: Michaël Cadilhac <michael@cadilhac.name>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-08/msg00045.html>
2017-08-06 02:16:15 +02:00
Nicolas Goaziou dd6be5d161 Allow emphasis markers after an hyphen
* lisp/org.el (org-emphasis-regexp-components): Allow emphasis markers
  after an hyphen.
(org-do-emphasis-faces): Do not strike-through table hlines.

Hypen is already allowed after emphasis markers.  This allows one to
write, e.g., 2017-*09*-27.
2017-08-04 18:40:28 +02:00
Nicolas Goaziou 80d7025770 Fix `org-store-log-note'
* lisp/org.el (org-store-log-note): Ignore empty log buffers.

The regression was introduced in
f776e65373. From then, (org-split-string
"") no longer returns nil.

Suggested-by: Dale Sedivec <dale@codefu.org>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-08/msg00013.html>
2017-08-01 20:14:23 +02:00
Nicolas Goaziou e79b0bd9f3 Merge branch 'maint' 2017-07-28 10:15:35 +02:00
Nicolas Goaziou 808089ee04 `org-forward/backward-paragraph' do not error at buffer boundaries
* lisp/org.el (org-forward-paragraph):
(org-backward-paragraph): Do not error at buffer boundaries.

Reported-by: Omar Antolín Camarena <omar.antolin@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-07/msg00478.html>
2017-07-28 10:07:53 +02:00
Nicolas Goaziou 648b12d57d Remove `org-dwidth' and `org-dwidth-n' properties
* lisp/org.el (org-raise-scripts):
(org-display-custom-time): Remove `org-dwidth' and `org-dwidth-n'
properties.
2017-07-27 15:32:06 +02:00
Nicolas Goaziou 9a60db0ec3 Move `org-string-width' to "org-macs.el"
* lisp/org.el (org-string-width): Move from here...
* lisp/org-macs.el (org-string-width): ... to here.
2017-07-27 15:23:31 +02:00
Nicolas Goaziou 27466a38bc Fix `org-string-width'
* lisp/org.el (org-string-width): Better handle various invisible
  characters.
2017-07-27 15:22:45 +02:00
Nicolas Goaziou f776e65373 Move `org-split-string' to "org-macs.el"
* lisp/org.el (org-split-string): Move the function...
* lisp/org-macs.el (org-split-string): ... here.  Also clarify
  docstring with regards to `split-string'.
2017-07-27 13:39:52 +02:00
Marco Wahl 534678382f org: User interface message at tag edit slightly more legible 2017-07-19 00:16:23 +02:00
Kyle Meyer 5e4bb2627c Merge branch 'maint' 2017-07-18 13:32:38 -04:00
Kyle Meyer 52e0966fd4 Document STATE parameter for org-cycle-hide-* functions
* lisp/org.el (org-cycle-hide-archived-subtrees):
(org-cycle-hide-drawers): Mention STATE parameter in docstring.
2017-07-18 13:31:07 -04:00
Kyle Meyer 8ed27480aa org-cycle-hide-drawers: Remove an unnecessary state check
* lisp/org.el (org-cycle-hide-drawers): Don't check whether STATE is
`contents' within the `when' body because the `when' condition will
not pass in this case.
2017-07-18 13:24:32 -04:00
Kyle Meyer d39ccc17d4 Merge branch 'maint' 2017-07-09 11:28:54 -04:00
Paul Eggert b7fdc30388 Backport commit 20e9a00fb from Emacs
* lisp/org-table.el (org-table-sort-lines): Fix misspelling in prompt.
* lisp/ox-ascii.el (org-ascii--describe-datum): Fix misspelling in
call to org-element-lineage.

Spelling fixes
20e9a00fb5d12ad408f9dd15adcfcd205783c1b0
Paul Eggert
Thu Jul 6 00:24:56 2017 -0700
2017-07-09 11:27:12 -04:00
Kaushal Modi 73907bee5b Merge branch 'maint' 2017-07-07 17:35:41 -04:00
Kaushal Modi 21df3a3c2f Fix curved quotes in error message
* lisp/org.el (org-create-formula-image): Use back-quote + single
  quote to get the correct rendering of curved quotes.

Message displayed before this fix: "Please adjust ’imagemagick’ .."

Message displayed after this fix:  "Please adjust ‘imagemagick’ .."

The effect of this fix is visible on emacs 25.1 and newer (See Emacs
NEWS).
2017-07-07 17:18:22 -04:00
Nicolas Goaziou 97a1a49895 Fix failing tests in non-daylight saving time zones
* lisp/org.el (org-time-string-to-time): Remove optional POS and
  BUFFER arguments.  Accept new optional ZONE argument.
(org-time-string-to-seconds): Accept optional ZONE argument.
(org-check-before-date):
(org-check-after-date):
(org-check-dates-range):
(org-goto-calendar):
* lisp/ob-gnuplot.el (org-time-string-to-time):
* lisp/org-agenda.el (org-agenda-get-blocks):
* lisp/org-clock.el (org-clock-timestamps-change):
* lisp/org-list.el (org-time-string-to-seconds): Use UTC for time
  difference and time comparison.

* testing/lisp/test-org-clock.el (org-test-clock-create-clock): Use
  UTC for time differences.
2017-07-07 18:23:10 +02:00
Nicolas Goaziou fd6a6b5cb4 Merge branch 'maint' 2017-07-06 19:21:48 +02:00
Jan Seeger 1849f391bc org.el: Fix custom timestamps for date ranges
* org.el (org-activate-dates): Change `org-activate-dates' to activate
custom timestamps for both dates in date ranges. Formerly, only the
second date would be activated. The reason was a misplaced
`if'. Replaced it with `when'. Also added doc comments.

TINYCHANGE
2017-07-06 19:21:06 +02:00
Nicolas Goaziou 8c548b81b9 Merge branch 'maint' 2017-07-04 01:13:03 +02:00
Nicolas Goaziou a3d02c49a0 Do not cancel note when `org-add-log-note' is called with a prefix argument
* lisp/org.el (org-add-log-note):
(org-store-log-note): Ignore prefix argument.

The behaviour is undocumented and can lead to data loss.

Reported-by: Kyle Meyer <kyle@kyleam.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-07/msg00024.html>
2017-07-04 01:11:57 +02:00
Nicolas Goaziou a20c17fa51 Merge branch 'maint' 2017-07-04 00:20:12 +02:00
Nicolas Goaziou cc5a9bf538 Fix wrong data in clock table using :block
* lisp/org.el (org-2ft): Use new signature for
  `org-parse-time-string'.
2017-07-04 00:19:47 +02:00
Rasmus 2e02581cbf Merge branch 'maint' 2017-07-03 12:05:47 +02:00
Rasmus ad8e508e93 Fix bug in org-inside-LaTeX-fragment-p
* lisp/org.el (org-inside-LaTeX-fragment-p): Also work correctly in
  first paragraph.
2017-07-03 12:05:36 +02:00
Nicolas Goaziou f4f921ce5a Merge branch 'maint' 2017-07-01 14:24:29 +02:00
Nicolas Goaziou 4f372457f2 Fix `org-check-before-invisible-edit', part 2
* lisp/org.el (org-check-before-invisible-edit): Fix error before
  first headline.  Handle nested overlays.
2017-07-01 14:23:41 +02:00
Nicolas Goaziou 9ed5674dcb Merge branch 'maint' 2017-06-29 16:32:08 +02:00
Nicolas Goaziou f409c13be1 Fix `org-check-before-invisible-edit' before first headline
* lisp/org.el (org-check-before-invisible-edit): Fix "Before first
  heading" error.

Invisible characters can come from overlays and text properties.  The
current implementation tries to remove outline overlays, even though
it may be something else.

Reported-by: John Kitchin <jkitchin@andrew.cmu.edu>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-06/msg00365.html>
2017-06-29 16:29:20 +02:00
Nicolas Goaziou 87a6e3970a Merge branch 'maint' 2017-06-26 23:40:35 +02:00
Nicolas Goaziou 6c498f1337 Forbid empty string as org-ellipsis value
* lisp/org.el (org-ellipsis): Harden :safe value.
(org-display-table): Fix typo.
(org-mode): Only change ellipsis if `org-ellipsis' is a non-empty
string.  Remove obsolete checks.

Reported-by: Michael Ax <michaelax@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/114283>
2017-06-26 23:38:23 +02:00
Kyle Meyer 3741196060 Merge branch 'maint' 2017-06-22 21:33:24 -04:00
Kyle Meyer 1930a8f05a org-todo: Display state change message when headline is not visible
* lisp/org.el (org-todo): Display state change message when headline
is not visible, reversing unintentional modification from dd17e9d29.

Prior to dd17e9d29 (2014-05-31), a message was displayed when changing
the state of a headline that was *not* visible, helping the user know
what the new state was even though the headline was off the screen.
While extending this code, dd17e9d29 unintentionally reversed the
visibility check, resulting in the message only being shown when the
headline is visible.

Reported-by: Russell Adams <RLAdams@AdamsInfoServ.Com>
<https://lists.gnu.org/archive/html/emacs-orgmode/2017-06/msg00442.html>
2017-06-22 21:29:43 -04:00
Nicolas Goaziou a0d1ad325d Merge branch 'maint' 2017-06-22 18:32:38 +02:00
Nicolas Goaziou 5d99560ddf Fix open-at-point in example blocks and diary-sexps
* lisp/org.el (org-open-at-point): Also open links in example blocks
  and diary-sexps.

* testing/lisp/test-org.el (test-org/open-at-point/keyword):
(test-org/open-at-point/property):
(test-org/open-at-point/comment): Add tests.

Reported-by: Dieter Faulbaum <Dieter.Faulbaum@helmholtz-berlin.de>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-06/msg00277.html>
2017-06-22 18:30:58 +02:00
Nicolas Goaziou 92e8c85381 Merge branch 'maint' 2017-06-21 22:57:44 +02:00
Nicolas Goaziou 521734d51f Fix link fontification
* lisp/org.el (org-activate-links): Fix link fontification.

Reported-by: John Kitchin <jkitchin@andrew.cmu.edu>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-06/msg00381.html>
2017-06-21 22:55:10 +02:00
Nicolas Goaziou 080dc4b445 Merge branch 'maint' 2017-06-16 07:59:18 +02:00
Nicolas Goaziou 673fe87b05 Fix compilation warning
* lisp/org.el (org-parse-time-string): Fix compilation warning.
2017-06-16 07:58:18 +02:00
Kaushal Modi 62ce814130 Merge branch 'maint' 2017-06-15 09:03:35 -04:00
Kaushal Modi 3bcfed071d Fix breakage due to outline-invisible-p defn change in emacs 26+
* lisp/org.el (org-invisible-p): New function.  Restore the behavior
of outline-invisible-p prior to the following commint on emacs master
<http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=9cc59ffbbb2f20fbbf1c72d2e0c9dc47c7906a99>.

* lisp/org.el (org-cycle-internal-local)
(org-clean-visibility-after-subtree-move, org-goto)
(org-get-location, org-move-subtree-down, org-copy-subtree)
(org-paste-subtree, org-next-link, org-mark-ring-goto)
(org-todo, org-deadline, org-schedule, org-set-tags)
(org-truely-invisible-p, org-invisible-p2)
(org-forward-heading-same-level, org-forward-paragraph)
(org-backward-paragraph, org-down-element)
(org-bookmark-jump-unhide, org-mark-jump-unhide):
* lisp/org-list.el (org-insert-item):
* lisp/org-crypt.el (org-encrypt-entry, org-decrypt-entry):
* lisp/org-clock.el (org-clock-load):
* lisp/org-archive.el (org-archive-subtree)
(org-archive-to-archive-sibling, org-toggle-archive-tag)
(org-archive-set-tag):
* contrib/lisp/org-drill.el (org-drill-hide-subheadings-if): Use
org-invisible-p instead of outline-invisible-p.

Reference:
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-06/msg00230.html>
2017-06-15 08:10:47 -04:00
Nicolas Goaziou 1c7cf61bd7 Merge branch 'maint' 2017-06-14 11:03:40 +02:00
Nicolas Goaziou b47920ed20 org-colview: Fix failing test
* lisp/org.el (org-parse-time-string): Allow to specify zone as an
  optional argument.
* lisp/org-colview.el (org-columns--age-to-seconds): Apply change
  above.
* testing/lisp/test-org-colview.el (test-org-colview/columns-summary):
  Update tests.
2017-06-14 11:00:01 +02:00
Kaushal Modi 1e92f5ed39 Allow org-file-contents to fetch file contents from a URL
* lisp/org.el (org--file-cache): New variable.
(org-reset-file-cache):
(org-file-url-p): New function.
(org-mode-restart): Use new function.

* lisp/org.el (org-file-contents): Allow the FILE argument to be a
URL.  If the URL contents are already cached, return the cache
contents, else download the file and return contents of that.  The
file is automatically cached each time it is downloaded.  Add a new
optional argument NOCACHE.  If this is non-nil, the URL is always
downloaded afresh.  Use `org--file-cache' and `org-file-url-p'.

* lisp/org.el (org-edit-special): Do not allow editing the "file" if a
URL is specified for the "#+SETUPFILE".

* lisp/ox.el (org-export--list-bound-variables)
(org-export--prepare-file-contents):
* lisp/org-macro.el (org-macro--collect-macros) : Adapt to the
possibility that the input to `org-file-contents' can be a URL too.

* doc/org.texi (Export settings, In-buffer settings)
(The very busy C-c C-c key): Mention that #+SETUPFILE keyword can now
take a URL as a value, and that C-c C-c on the #+SETUPFILE line will
clear the org file cache.

* testing/lisp/test-org.el (test-org/org-file-contents-url)
(test-org/org-file-contents-file): Add tests for org-file-contents.

* testing/lisp/test-ox.el (test-org-export/get-inbuffer-options): Add
test for reading setupfile specified via a URL.
2017-06-13 11:41:58 -04:00
Nicolas Goaziou e7147682f3 Merge branch 'maint' 2017-06-05 23:40:48 +02:00
Nicolas Goaziou 439fcfbbf2 Fix link fontification
* lisp/org.el (org-activate-links): Delegate to
  `org-element-link-parser' to handle blanks and link expansion.
2017-06-05 23:39:42 +02:00
Nicolas Goaziou 6059fd9f34 Merge branch 'maint' 2017-06-04 09:17:39 +02:00
Nicolas Goaziou faace6f05d Fix last commit
* lisp/org-agenda.el (org-agenda-mode):
* lisp/org.el (org-clone-local-variables): Fix match pattern.
2017-06-04 09:17:07 +02:00
Nicolas Goaziou 1a69d99ce1 Merge branch 'maint' 2017-06-03 22:45:14 +02:00
Nicolas Goaziou 355b0012d1 Fix local variable handling
* lisp/org.el (org-clone-local-variables):
* lisp/org-agenda.el (org-agenda-mode): Do not assume
  `buffer-local-variables' returns only cons cells.

Reported-by: "Stefan-W. Hahn" <stefan.hahn@s-hahn.de>
<http://permalink.gmane.org/gmane.emacs.orgmode/113793>
2017-06-03 22:43:35 +02:00
Kyle Meyer 0d25d2b061 Silence byte-compiler under "make single"
* lisp/org.el (org-comment-string): Wrap definition in an
eval-and-compile because this variable is used within the body of
eval-when-compile, leading to an error under "make single".
(org-at-timestamp-p): Use bound-and-true-p to check
org-agenda-include-inactive-timestamps because org-agenda may not be
loaded yet.

Reported-by: Kaushal Modi <kaushal.modi@gmail.com>
<https://lists.gnu.org/archive/html/emacs-orgmode/2017-05/msg00326.html>
2017-05-31 20:45:34 -04:00
Nicolas Goaziou 82a50381a1 Merge branch 'maint' 2017-05-28 09:40:39 +02:00
Chunyang Xu 1afcf2c9aa Exclude '[' and ']' in `org-plain-link-re'
* lisp/org.el (org-make-link-regexps): Do it.

TINYCHANGE
2017-05-28 09:39:29 +02:00
Nicolas Goaziou 49b3d67ec3 Merge branch 'maint' 2017-05-26 11:58:25 +02:00
Nicolas Goaziou 2d29269bb1 Fix link fontification
* lisp/org.el (org-activate-links): New function.
(org-set-font-lock-defaults): Use new function.
(org-activate-angle-links):
(org-activate-bracket-links):
(org-activate-plain-links): Remove functions.
* lisp/org-agenda.el (org-agenda-get-some-entry-text):
(org-agenda-finalize): Use new function.

Reported-by: 林镇国 <mistkafka@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/113485>
2017-05-26 11:56:53 +02:00
Kyle Meyer b92eb81731 Merge branch 'maint' 2017-05-26 00:21:14 -04:00
Kyle Meyer 6d4c188e3e Silence byte-compiler under "make single" 2017-05-26 00:03:29 -04:00
Nicolas Goaziou 957850043a Prevent filling before a "n" macro where it could create list items
* lisp/org.el (org-fill-n-macro-as-item-nobreak-p): New function.
(org-setup-filling): Use new function.

* testing/lisp/test-org.el (test-org/fill-element): Add tests.

Reported-by: Kaushal Modi <kaushal.modi@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/113587>
2017-05-25 12:33:16 +02:00
Nicolas Goaziou c2f4eec5dc `org-fill-paragraph' handles region
* lisp/org.el (org-fill-element): New function.
(org-fill-paragraph): Use new function.  Also handle region, when
called interactively.

* testing/lisp/test-org.el (test-org/fill-element): Renamed from
  test-org/fill-paragraph.  Update tests.

Reported-by: Oskar Kvist <oskar.kvist@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/113542>
2017-05-22 15:02:34 +02:00
Nicolas Goaziou 2b44a1a74c Remove `org-protect-slash'
* lisp/org.el (org-protect-slash): Remove function.
(org-refile-get-targets): Apply removal.

This internal function is used only once throughout the code base.
2017-05-22 08:31:53 +02:00
Nicolas Goaziou f10e19eabf Merge branch 'maint' 2017-05-22 08:25:56 +02:00
Nicolas Goaziou d7599e3f27 Preserve targets order according to rules
* lisp/org.el (org-refile-get-targets): Keep targets grouped according
  to `org-refile-targets' value.
2017-05-22 08:24:56 +02:00
Nicolas Goaziou cadbef99f0 Merge branch 'maint' 2017-05-22 08:19:12 +02:00
Nicolas Goaziou 7560a49459 Remove duplicates in refile targets
* lisp/org.el (org-refile-get-targets): Remove duplicates in refile
  targets.
2017-05-22 08:16:42 +02:00
Kyle Meyer 23ac37da7c Merge branch 'maint' 2017-05-21 14:54:59 -04:00
Kyle Meyer 0de7ad0430 org-store-link: Don't roll C-u behavior into C-u C-u behavior
* lisp/org.el (org-store-link): When a double C-u prefix argument is
given, do not reverse the meaning of the org-context-in-file-links
option.
* testing/lisp/test-org.el (test-org/store-link): Add tests.

This allows the user to fall back to the core link storing functions
without also reversing their org-context-in-file-links preference,
because wanting to do the former does not mean a user also wants to do
the latter.

Reported-by: York Zhao <gtdplatform@gmail.com>
<https://lists.gnu.org/archive/html/emacs-orgmode/2017-05/msg00254.html>
2017-05-21 14:52:30 -04:00
Nicolas Goaziou 68429a99cc Merge branch 'maint' 2017-05-20 09:10:13 +02:00
Nicolas Goaziou 85a26f0cfe Fix "Stack overflow in regexp matcher" in `org-refresh-stats-properties'
* lisp/org.el (org-refresh-stats-properties): Simplify regexp.  Small
  refactoring.

Reported-by: Kevin Zettler <kevzettler@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/113555>
2017-05-20 09:09:03 +02:00
Kyle Meyer bda9a49056 Merge branch 'maint' 2017-05-18 14:50:42 -04:00
Kyle Meyer 9d9f5179e7 org-sort: Read compare-func in interactive calls
* lisp/org-macs.el (org-read-function): New function.
* lisp/org-table.el (org-table-sort-lines): Make WITH-CASE an optional
argument to match org-sort-entries and org-sort-list.
* lisp/org.el (org-sort-entries):
* lisp/org-table.el (org-table-sort-lines):
* lisp/org-list.el (org-sort-list): Read COMPARE-FUNC when called
interactively rather than being restricted to the default behavior of
sort-subr's PREDICATE parameter.  Only prompt for for GETKEY-FUNC and
COMPARE-FUNC during an interactive call, like org-table-sort-lines
already did for GETKEY-FUNC, but use an argument rather than relying
on the brittle called-interactively-p.

Suggested-by: Zhitao Gong <zhitaao.gong@gmail.com>
<https://lists.gnu.org/archive/html/emacs-orgmode/2017-05/msg00040.html>
2017-05-18 14:46:33 -04:00
Sebastian Reuße 2906e50177 org-refile: Fix inconsistency when listing refile targets
* org.el (org-refile-get-targets): Setting org-refile-use-outline-path
to `file' or `buffer-name' causes an additional target for the file’s
root node to be inserted. This functionality was absent when using
`full-file-path'. We now add this since it is convenient and makes the
behavior more consistent.
2017-05-17 14:37:54 +02:00
Nicolas Goaziou dbe2424b07 Adjust `org-at-timestamp-p' behavior
* lisp/org.el (org-at-timestamp-p): Change optional argument
  behaviour.  Remove interactive call.
(org-follow-timestamp-link):
(org-get-repeat):
(org-auto-repeat-maybe):
(org-time-stamp):
(org-timestamp-up-day):
(org-timestamp-down-day):
(org-toggle-timestamp-type):
(org-timestamp-change):
(org-goto-calendar):
(org-date-from-calendar):
(org-shiftup):
(org-shiftdown):
(org-shiftright):
(org-shiftleft):
(org-org-menu):
(org-fill-paragraph-with-timestamp-nobreak-p):
(org-shiftcontrolup):
(org-shiftcontroldown):
* lisp/org-agenda.el (org-agenda-date-later):
(org-agenda-date-prompt):
* lisp/org-clock.el (org-clock-timestamps-change):
* lisp/org-mouse.el (org-mouse-delete-timestamp):
(org-mouse-context-menu):
* lisp/org-table.el (org-table-copy-down): Update callers.

* testing/lisp/test-org.el (test-org/at-timestamp-p): Add tests.
2017-05-14 10:54:25 +02:00
Nicolas Goaziou de2a8b31e4 Fix typo in code comment 2017-05-14 00:21:18 +02:00
Nicolas Goaziou b72d29d685 Merge branch 'maint' 2017-05-13 09:21:31 +02:00
Nicolas Goaziou c0369a7984 org-element: Fix $...$ fragments followed by an apostrophe
* lisp/org-element.el (org-element-latex-fragment-parser):
* lisp/org.el (org-latex-regexps): Allow an apostrophe right after
  a fragment.

* testing/lisp/test-org-element.el (test-org-element/latex-fragment-parser):
  Add test.

In Text mode, and, as a consequence, in Org mode, "'" is not treated
as punctuation, but as word constituent.  The apostrophe isn't caught
by "\s." regexp.

Reported-by: Joe Corneli <holtzermann17@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/113464>
2017-05-13 09:18:07 +02:00
Nicolas Goaziou 79ac71d175 Tiny fix
* lisp/org.el (org-N-empty-lines-before-current): Insert empty lines
  before point, not after.
* testing/lisp/test-org.el (test-org/insert-heading): Add test.
2017-05-12 17:45:46 +02:00
Kyle Meyer c801ef0328 org-sort: Go back to calling org-sort-* functions interactively
* lisp/org.el (org-sort): Revert change from c1addc825 that replaced
org-call-with-arg with funcall because org-table-sort-lines changes
its behavior based on the return value of called-interactively-p.
2017-05-08 23:57:30 -04:00
Kyle Meyer c1addc8252 org-sort: Call org-sort-* functions non-interactively
* lisp/org.el (org-sort): Use funcall instead of org-call-with-arg,
and make WITH-CASE an optional argument.
* lisp/org-table.el (org-table-sort-lines): Make WITH-CASE an optional
argument.
2017-05-08 11:13:19 -04:00
Sebastian Reuße 1188beaa3b org-refile: Optionally prefix refile targets with buffer name
* org.el (org-refile-get-targets): Add case to optionally prefix
refile targets with the buffer name.
(org-refile-use-outline-path): Add new option setting and document.

Having an option to use the buffer name as a prefix is convenient,
since this will work hand in hand with uniquify to only show those
parts of the filesystem path needed to disambiguate buffers of
identically named files, as opposed to prefixing refile targets with
the full filesystem path.
2017-05-06 12:01:20 -04:00
Sebastian Reuße 53bcf91a96 org-refile: Escape slashes only in headline of refile target
* org.el (org-refile-get-targets): Only escape slashes in headline
part of refile target; leave any file-system path component (when
enabled) unescaped.

The reason to escape slashes in refile targets is to make it clear
when a slash was part of a headline vs. part of the outline path.  It
makes sense to treat slashes in the file system part the same way as
outline paths, since this won’t result in any confusion and serves to
make target selection less noisy.
2017-05-06 12:01:09 -04:00
Nicolas Goaziou 5bc540eae1 Merge branch 'maint' 2017-04-30 22:26:52 +02:00
Nicolas Goaziou 3502e6fa7c Fix indentation bug
* lisp/org.el (org--get-expected-indentation): Correctly indent line
  when last element in an item is not a greater element.
* testing/lisp/test-org.el (test-org/indent-line): Add test.
2017-04-30 22:26:10 +02:00
Nicolas Goaziou 571dfe2a3f Merge branch 'maint' 2017-04-17 10:38:24 +02:00
Marc Ihm 165f7c3950 Fix explanation, if state change is blocked by contained checkboxes
* lisp/org.el (org-todo): Fix explanation, if state change is blocked
  by contained checkboxes.

Consider a node, which contains unchecked checkboxes; if you have set
org-enforce-todo-checkbox-dependencies and try to change the node to
DONE, you will be denied with a message explaining why. However in this
special case the explanation would be wrong in talking of an unrelated
node instead of the checkboxes.

The fix uses the already existing variable org-blocked-by-checkboxes
(which is handled in org-block-todo-from-checkboxes).  Similar code is
already present in org-agenda-dim-blocked-tasks within org-agenda.el.
2017-04-17 10:33:51 +02:00
Nicolas Goaziou 42f24c167c Merge branch 'maint' 2017-04-15 16:52:46 +02:00
Nicolas Goaziou 74379eaaa2 Fix `org-forward-heading-same-level'
* lisp/org.el (org-forward-heading-same-level): Do not fail when
  heading is at the beginning of the buffer.
* testing/lisp/test-org.el (test-org/forward-heading-same-level): New
  test.

Reported-by: Rafael Laboissière <rafael@laboissiere.net>
<http://permalink.gmane.org/gmane.emacs.orgmode/113084>
2017-04-15 16:51:33 +02:00
Kyle Meyer 1336347065 Merge branch 'maint' 2017-04-09 20:52:41 -04:00
Kyle Meyer 10301ab1ff org-insert-link: Correct changes from a08dd527d
* lisp/org.el (org-insert-link): Fix regexp and undefined variable.
2017-04-09 20:49:03 -04:00
Nicolas Goaziou e65be54b91 Merge branch 'maint' 2017-03-30 12:48:08 +02:00
Nicolas Goaziou 31f3725ba8 Fix `org-startup-with-latex-preview' handling
* lisp/org.el (org-mode): When honoring
  `org-startup-with-latex-preview', make sure to preview the whole
  buffer.

Reported-by: Diego Nicola Barbato
<http://permalink.gmane.org/gmane.emacs.orgmode/112925>
2017-03-30 12:46:46 +02:00
Nicolas Goaziou d4cae34eaa Merge branch 'maint' 2017-03-29 15:34:50 +02:00
Nicolas Goaziou a08dd527d9 Small refactoring
* lisp/org.el (org-insert-link): Small refactoring.
2017-03-29 15:34:27 +02:00
Matt Lundin d9038a01c1 Allow insertion of links with multi-line search strings
* lisp/org.el: (org-insert-link): Fix regexps to match across
  newlines.
2017-03-29 14:28:48 +02:00
Nicolas Goaziou a126020e56 Merge branch 'maint' 2017-03-29 14:18:14 +02:00
Nicolas Goaziou 109c86998e Allow blank lines in text search link
* lisp/org.el (org-link-search): Allow blank lines.

This is a follow-up to 4dde26f08.
2017-03-29 14:12:58 +02:00
Nicolas Goaziou 72c3c42259 Merge branch 'maint' 2017-03-27 13:36:49 +02:00
Nicolas Goaziou 4dde26f086 Fix lsearch strings with newline characters
* lisp/org.el (org-link-search): Fix regexp.
* testing/lisp/test-org.el (test-org/fuzzy-links): Add test.

Reported-by: Matt Lundin <mdl@imapmail.org>
<http://permalink.gmane.org/gmane.emacs.orgmode/112876>
2017-03-27 13:34:04 +02:00
Marco Wahl 772dc6ea27 Merge branch 'maint' 2017-03-26 15:40:10 +02:00
Marco Wahl 82310e34b9 org: Fix tag setter
* lisp/org.el (org-set-tags): Treat ':' and '::' as no tag.
2017-03-26 15:39:20 +02:00
Marco Wahl 1d35684c56 org: Liberate org-property-action
* lisp/org.el (org-property-action): Remove unnecessary restriction
  for property action.
2017-03-23 11:03:10 +01:00
Nicolas Goaziou f2e5920f41 Fix display bug when inserting a heading
* lisp/org.el (org-N-empty-lines-before-current): Do not hide newline
  character before current headline.

* testing/lisp/test-org.el (test-org/insert-heading): Add test.

Reported-by: Rick Frankel <rick@rickster.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/112751>
2017-03-16 13:01:39 +01:00
Carsten Dominik 0f1b5ec496 Consolidate capture targets and allow outline path in datetree targets
* doc/org.texi: Document the new capture templates target.
* lisp/org-capture.el (org-capture-upgrade-templates): New function.
(org-capture-templates): Implement the new file+olp+datetree target.
(org-capture): Document the C-1 prefix.
(org-capture-sanitize-olp): New function.
(org-capture-select-template): Make sure upgraded version of templates
variable is used.
* lisp/org-datetree.el (org-datetree-find-date-create): Accept
`subtree-at-point' as a value for the KEEP-RESTRICTION argument.
(org-datetree-find-iso-week-create): Accept `subtree-at-point'
as a value for the KEEP-RESTRICTION argument.
* lisp/org.el (org-find-olp): Throw an error when called in a
buffer that is not in Org mode.
* lisp/org-capture.el (org-capture-fill-template): Use overriding time
also in `?<>' escapes.
2017-03-16 08:18:55 +01:00
Simon Michael 09ee728c64 Babel support for hledger accounting tool
* lisp/ob-hledger.el: New file.
* lisp/org.el (org-babel-load-languages):
* lisp/ox-html.el (org-html-style-default): Allow calling hledger from
  Babel.
2017-03-14 18:19:26 +01:00
Nicolas Goaziou f9b501bc18 Merge branch 'maint' 2017-02-23 14:19:06 +01:00
Anders Johansson 4084337dbe org.el: Make faces org-quote and org-verse be appended
* lisp/org.el (org-fontify-quote-and-verse-blocks): Append faces.  Use
  `add-face-text-property'.

This means fontification of emphasis, links etc. is kept in quote and
verse blocks even with org-fontify-quote-and-verse-blocks non-nil.

TINYCHANGE
2017-02-23 14:17:56 +01:00
Nicolas Goaziou 542890cd3f Fix: Prevent spurious newlines when inserting a new heading
* lisp/org.el (org-insert-heading): Do not insert spurious newline
  characters when inserting a headline.

* testing/lisp/test-org.el (test-org/insert-heading): Add tests.

Reported-by: Kyle Sherman <kylewsherman@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/112205>
2017-02-17 21:51:16 +01:00
Nicolas Goaziou 67c84c161f Prefer `compilation-mode' over `special-mode' for log buffers
* lisp/org.el (org-compile-file): Use `compilation-mode' instead of
  `special-mode'.
2017-02-17 13:35:07 +01:00
Nicolas Goaziou 5018803f60 Use `special-mode' for compilation output
* lisp/org.el (org-compile-file): Switch to `special-mode' for log
  buffer.

Suggested-by: Florian Lindner <mailinglists@xgm.de>
<http://permalink.gmane.org/gmane.emacs.orgmode/112164>
2017-02-17 13:32:05 +01:00
Nicolas Goaziou 7e8cf5f4c2 Use Org duration library
* contrib/lisp/org-depend.el (org-depend-trigger-todo): Use new
  functions.

* contrib/lisp/org-invoice.el (org-invoice-heading-info):
(org-invoice-info-to-table):
(org-invoice-list-to-table): Use new functions.

* contrib/lisp/ox-taskjuggler.el (org-taskjuggler--build-task): Use
  new functions.

* lisp/org-agenda.el (org-agenda-show-clocking-issues):
(org-agenda-format-item):
(org-agenda-filter-effort-form): Use new functions.

* lisp/org-clock.el (org-clock-get-clock-string):
(org-clock-modify-effort-estimate):
(org-clock-notify-once-if-expired):
(org-clock-out):
(org-clock-display):
(org-clock-put-overlay):
(org-clocktable-write-default): Use new functions.

* lisp/org-table.el (org-table-sort-lines): Use new functions.

* lisp/org.el (org-properties-postprocess-alist):
(org-refresh-effort-properties):
(org-set-effort):
(org-entry-properties):
(org-property-next-allowed-value): Use new functions.

(org-time-clocksum-format):
(org-time-clocksum-use-fractional):
(org-time-clocksum-use-fractional-format):
(org-time-clocksum-use-effort-durations): Declare as obsolete.  Move
to "org-compat.el".

(org-minutes-to-clocksum-string):
(org-hh:mm-string-to-minutes):
(org-duration-string-to-minutes): Declare as obsolete.  Move to
"org-compat.el".
(org-hours-to-clocksum-string): Remove function.

* lisp/org-colview.el (org-columns--collect-values): Use new
  functions.
(org-columns--duration-re): Remove variable.
(org-columns--time-to-seconds): Rename to...
(org-columns--age-to-minutes): ... this.
(org-columns--format-age): New function.
(org-columns--summary-apply-times):
(org-columns--summary-min-age):
(org-columns--summary-max-age):
(org-columns--summary-mean-age): Use new functions.

* testing/lisp/test-org-clock.el (test-org-clock-clocktable-contents-at-point):
* testing/lisp/test-org-colview.el (test-org-colview/columns-summary):
  Update tests.
2017-02-13 14:41:15 +01:00
Nicolas Goaziou 80cc5c6e3b Merge branch 'maint' 2017-02-11 18:38:02 +01:00
Nicolas Goaziou 91d82f7a87 Silence byte-compiler 2017-02-11 18:37:32 +01:00
Nicolas Goaziou 0fe987e060 Merge branch 'maint' 2017-02-11 02:36:15 +01:00
Nicolas Goaziou 9070b97f0e Fix header in LaTeX snippets
* lisp/ox-latex.el (org-latex-make-preamble): Add optional argument.
* lisp/org.el (org-create-formula-image): Use it.

Reported-by: plus <ctre@users.sourceforge.net>
<http://permalink.gmane.org/gmane.emacs.orgmode/112015>
2017-02-11 02:35:00 +01:00
Nicolas Goaziou 6632ce537e Change `org-get-repeater' signature
* lisp/org.el (org-get-repeater): Change optional argument meaning.
* lisp/org-habit.el (org-habit-parse-todo): Apply signature change.
* testing/test-org.el (test-org/get-repeater): Add tests.
2017-02-04 21:45:35 +01:00
Nicolas Goaziou 737ada43c6 Fix "Fix `org-get-repeat'"
* lisp/org.el (org-get-repeat): Make sure matching group refers to the
  proper regexp.
* testing/lisp/test-org.el (test-org/get-repeat): New test.

The bug was introduced in aef7eef0f.
2017-02-04 21:26:17 +01:00
Nicolas Goaziou 9a0b519b4e Merge branch 'maint' 2017-02-03 22:53:30 +01:00
Nicolas Goaziou 9eda09eab4 Notes associated to CLOCKs are located after the clock
* lisp/org.el (org-store-log-note): Make sure a note added after
  clocking out is inserted right after the CLOCK line.

Reported-by: Jorge Morais Neto <jorge13515@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/111795>
2017-02-03 22:46:15 +01:00
Nicolas Goaziou 9da78f3e8d Merge branch 'maint' 2017-02-03 22:04:12 +01:00
Nicolas Goaziou 6da9d0a416 Fix indentation of some elements
* lisp/org.el (org--get-expected-indentation): Tiny refactoring.
(org-indent-line): Ignore LaTex environments.
(org-indent-region): Better handling for export blocks, LaTeX
environments and example blocks.

* testing/lisp/test-org.el (test-org/indent-line):
(test-org/indent-region): Add tests.
2017-02-03 22:03:25 +01:00
Nicolas Goaziou 515e75d093 Fix `org-auto-repeat-maybe'
* lisp/org.el (org-auto-repeat-maybe): Properly find clocks in entry.
  Ignore invalid time stamps.
2017-02-03 00:34:01 +01:00
Nicolas Goaziou ec285b1057 Harden `org-at-clock-log-p'
* lisp/org.el (org-at-clock-log-p): Do strict checking.
2017-02-03 00:33:25 +01:00
Nicolas Goaziou aef7eef0f9 Fix `org-get-repeat'
* lisp/org.el (org-get-repeat): Prevent false positive.
2017-02-03 00:32:16 +01:00
Nicolas Goaziou 2a59d2f76f Harden `org-at-timestamp-p'
* lisp/org.el (org-ts-what): Remove variable.
(org-at-timestamp-p): Do strict checking.  Also return a value instead
of setting `org-ts-what'.  Improve docstring.
(org-timestamp-change): Remove use of `org-ts-what'.
(org-shiftcontrolup):
(org-shiftcontroldown): Optimize.
* lisp/org-clock.el (org-clock-timestamp-change): Remove use of `org-ts-what'.
2017-02-03 00:20:12 +01:00
Nicolas Goaziou adfc9fb4dd Merge branch 'maint' 2017-02-02 19:54:24 +01:00
Nicolas Goaziou 37bd3586e9 Fix repeating entries without a TODO keyword
* lisp/org.el (org-auto-repeat-maybe): Allow repeating entries without
  a TODO keyword.
2017-02-02 14:17:04 +01:00
Nicolas Goaziou 2b5fbfa473 Implement `org-edit-latex-environment'
* lisp/org-src.el (org-edit-latex-environment): New function.
* lisp/org.el (org-edit-special): Use new function.
2017-02-01 21:30:54 +01:00
Marco Wahl 195151a153 Merge branch 'maint' 2017-01-29 16:14:29 +01:00
Marco Wahl 39682d4854 Fix: keep repeaters at rescheduling
* lisp/org.el (org--deadline-or-schedule): Removed a blank in a regexp.
* testing/lisp/test-org.el (test-org/schedule): New test.
2017-01-29 16:11:35 +01:00
Marco Wahl 2c27b89fe7 Merge remote-tracking branch 'origin/master' 2017-01-28 00:27:28 +01:00
Marco Wahl 50a53b3f2c Explicitly use `current-time' to set 'LAST_REPEAT'
* lisp/org.el (org-auto-repeat-maybe): Explicitly use `current-time'
  to set LAST_REPEAT.  The behavior of the function remains the same.

This allows to advice current-time to use a different time.  Which
might help with testing and with functions which bend the time.
2017-01-28 00:17:19 +01:00
Nicolas Goaziou 2fbf8cb986 Merge branch 'maint' 2017-01-27 23:58:09 +01:00
Nicolas Goaziou ebb9da0d03 Allow C-c C-c on blank lines within src blocks
* lisp/org.el (org-ctrl-c-ctrl-c): Act on blank lines if they are
  located within a src block.

Reported-by: John Hendy <jw.hendy@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/111720>
2017-01-27 23:56:30 +01:00
Marco Wahl 6cb6a39443 Merge branch 'maint' 2017-01-27 19:37:35 +01:00
Marco Wahl d715cc42fa Fix `org-refresh-property'
* lisp/org.el(org-refresh-property): Fixed by comparison to the code
  before the refactoring.

With commit 126a1cd7c the "Effort" property broke the agenda.
2017-01-27 19:35:16 +01:00
Marco Wahl b2a232286d Revert "Fix `org-refresh-property'"
This reverts commit 2132c008d6.
2017-01-27 19:28:19 +01:00
Marco Wahl 2132c008d6 Fix `org-refresh-property'
* lisp/org.el(org-refresh-property): Fixed by comparison to the code
  before the refactoring.

With commit 126a1cd7c the "Effort" property broke the agenda.
2017-01-27 19:17:48 +01:00
Nicolas Goaziou 0ba5e35082 Merge branch 'maint' 2017-01-27 00:29:14 +01:00
Kyle Meyer d2b93613ad Add missing quote to previous commit
* lisp/org.el (org-link-parameters): Quote :package-version value.
2017-01-26 18:26:46 -05:00
Nicolas Goaziou 919e864968 Fix internal function name
* lisp/org.el (org-property--local-values): Rename to...
(org--property-local-values): ... this.
(org-entry-get):
(org-entry-get-with-inheritance): Apply renaming.
2017-01-27 00:24:15 +01:00
Nicolas Goaziou 126a1cd7c1 Fix "APPT_WARNTIME" inheritance
* lisp/org.el (org-refresh-properties): Handle inheritance from global
  values (e.g., from "#+PROPERTY:" keyword).
(org-refresh-property): Handle property inheritance with a new
optional argument.

* testing/lisp/test-org.el (test-org/refresh-properties): New test.
2017-01-27 00:21:42 +01:00
Nicolas Goaziou f2e861e0be Small refactoring
* lisp/org.el (org--property-global-value): New function.
(org-entry-get-with-inheritance): Use new function.
2017-01-27 00:10:10 +01:00
Nicolas Goaziou 1f8fb3cf54 Fix `org-property-inherit-p'
* lisp/org.el (org-property-inherit-p): Properties are case insensitive.
2017-01-26 23:10:53 +01:00
Nicolas Goaziou c9b7e0ba46 Remove undocumented "message:" link type
* lisp/org.el (org-link-parameters): Remove "message:" link type.
  Update defcustom keywords.
2017-01-26 22:54:29 +01:00
Kyle Meyer 7278899697 Merge branch 'maint' 2017-01-26 00:05:29 -05:00
Kyle Meyer 7c710f6f57 Change :version in defcustoms from "25.2" to "26.1"
* lisp/ob-J.el (org-babel-J-command):
* lisp/ob-core.el (org-babel-hash-show-time):
* lisp/ob-exp.el (org-babel-exp-inline-code-template):
* lisp/ob-lisp.el (org-babel-lisp-eval-fn):
* lisp/org-agenda.el (org-agenda-view-columns-initially):
* lisp/org-attach.el (org-attach-commit):
(org-attach-archive-delete):
(org-attach-annex-auto-get):
* lisp/org-bibtex.el (org-bibtex-inherit-tags):
* lisp/org-clock.el (org-clock-into-drawer):
* lisp/org-colview.el (org-columns-summary-types):
* lisp/org-faces.el (org-block):
* lisp/org-src.el (org-src-block-faces):
* lisp/org-table.el (org-table-copy-increment):
(org-table-formula-create-columns):
(org-table-convert-region-max-lines):
* lisp/org-timer.el (org-timer-default-timer):
* lisp/org.el (org-export-backends):
(org-show-context-detail):
(org-cycle-hook):
(org-occur-case-fold-search):
(org-preview-latex-default-process):
(org-preview-latex-process-alist):
(org-preview-latex-image-directory):
(org-latex-default-packages-alist):
(org-sparse-tree-default-date-type):
(org-structure-template-alist):
(org-effort-durations):
(org-agenda-ignore-properties): Change :version from "25.2" to "26.1".
(customize-package-emacs-version-alist): Fix associations between Org
and Emacs releases.
* lisp/ox-ascii.el (org-ascii-list-margin):
* lisp/ox-beamer.el (org-beamer-subtitle-format):
* lisp/ox-html.el (org-html-format-headline-function):
(org-html-format-inlinetask-function):
(org-html-viewport):
* lisp/ox-latex.el (org-latex-caption-above):
(org-latex-prefer-user-labels):
(org-latex-subtitle-format):
(org-latex-hyperref-template):
(org-latex-footnote-defined-format):
(org-latex-images-centered):
(org-latex-default-figure-position):
(org-latex-text-markup-alist):
(org-latex-format-inlinetask-function):
(org-latex-custom-lang-environments):
(org-latex-compiler-file-string):
(org-latex-compiler):
(org-latex-bib-compiler):
(org-latex-logfiles-extensions):
(org-latex-known-warnings):
* lisp/ox-md.el (org-md-footnotes-section):
(org-md-footnote-format):
* lisp/ox-odt.el (org-odt-format-headline-function):
(org-odt-format-inlinetask-function):
(org-odt-inline-image-rules):
* lisp/ox-texinfo.el (org-texinfo-format-headline-function):
* lisp/ox.el (org-export-with-creator):
(org-export-with-title):
(org-export-with-broken-links):
(org-export-copy-to-kill-ring): Change :version from "25.2" to "26.1".

It looks like the goal is to sync Org 9.0.* (maint) with the Emacs
master branch (what will be version 26.1):
https://lists.gnu.org/archive/html/emacs-orgmode/2017-01/msg00558.html
2017-01-26 00:02:03 -05:00
Kyle Meyer c1822e5560 Clean up spacing to pass Emacs's pre-commit check
Like 00dacdcc5 (2015-08-10), this is in preparation for syncing with
the Emacs repo.
2017-01-25 22:21:59 -05:00
Nicolas Goaziou 3d7c221a45 Merge branch 'maint' 2017-01-25 23:29:40 +01:00
Nicolas Goaziou 7d52a8c3cc Fix `org-schedule' with repeater
* lisp/org.el (org--deadline-or-schedule): New function.
(org-schedule):
(org-deadline): Use new function.

* testing/lisp/test-org.el (test-org/deadline):
(test-org/schedule): New tests.

Reported-by: Michael Welle <mwe012008@gmx.net>
<http://permalink.gmane.org/gmane.emacs.orgmode/111569>
2017-01-25 23:27:33 +01:00
Nicolas Goaziou 2348d18343 Merge branch 'maint' 2017-01-24 22:02:47 +01:00
Nicolas Goaziou c77b658b39 Fix `org-entry-get' with "TIMESTAMP" or "TIMESTAMP_IA"
* lisp/org.el (org-entry-properties): Fix special property value in
  current entry, do not leak into next entry.
* testing/lisp/test-org.el (test-org/entry-properties): Add test.

Reported-by: Samuel Wales <samologist@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/111648>
2017-01-24 22:01:19 +01:00
Nicolas Goaziou eda4684d35 Merge branch 'maint' 2017-01-22 14:29:05 +01:00
Nicolas Goaziou 12a23d6c61 `org-entry-delete' can remove erroneous special properties
* lisp/org.el (org-entry-delete): Also remove erroneously inserted
  special properties in properties drawer.  Small refactoring.

* testing/lisp/test-org.el (test-org/entry-delete): Add test.

Reported-by: Michael Welle <mwe012008@gmx.net>
<http://permalink.gmane.org/gmane.emacs.orgmode/111564>
2017-01-22 14:28:02 +01:00
Nicolas Goaziou 37bffbb347 Merge branch 'maint' 2017-01-21 11:59:12 +01:00
Nicolas Goaziou 53bc58c433 Rename `org-latex--make-preamble' into `org-latex-make-preamble'
* contrib/lisp/ox-koma-letter.el (org-koma-letter-template):
* lisp/org.el (org-create-formula-image):
* lisp/ox-beamer.el (org-beamer-template):
* lisp/ox-latex.el (org-latex-make-preamble): Renamed from
  `org-latex--make-preamble'.  Add an optional argument.  Autoload
  function.
(org-latex-template): Use new function name.
2017-01-21 11:31:25 +01:00
Nicolas Goaziou 6dc6eb3b02 Fix failing test
* lisp/org.el (org-link-search): Remove priority cookie from headlines
  during a fuzzy search.  Tiny optimization.
* testing/lisp/test-org.el (test-org/get-heading): Add tests.
2017-01-19 00:22:49 +01:00
Matt Price 53ee147f45 Add support for new switches to org-get-heading
* lisp/org.el (org-get-heading): NO-COMMENT tag, if non-nil, will not
return the COMMENT string with heading.  Likewise, NO-PRIORITY, if
non-nil, will not return the priority cookie.
2017-01-19 00:07:03 +01:00
Kyle Meyer c3d67b3556 Merge branch 'maint' 2017-01-17 21:22:11 -05:00
Kyle Meyer 1fbc7a424f org-clone-subtree-with-time-shift: Fix SHIFT check
* lisp/org.el (org-clone-subtree-with-time-shift): Don't choke on a
  blank SHIFT argument.
* testing/lisp/test-org.el (test-org/clone-with-time-shift): Add
  test.

This fixes a regression introduced by c31462f33.
2017-01-17 21:16:24 -05:00
Marco Wahl 69b22b6590 org: Improved consistency + tests
* lisp/org.el (org-get-valid-level): The function now returns 1 for
  parameters level=0, change=1 and `org-odd-levels-only'=t.  Before
  it returned 3.
2017-01-17 23:06:56 +01:00
Marco Wahl 738d3b4def org: Delete useless code line
* lisp/org.el (org-refile): Dropped useless call of `looking-at'.
2017-01-17 21:59:49 +01:00
Nicolas Goaziou 9e45783661 Save position before searching for a search option in case of error
* lisp/org.el (org-open-file): Save position with `org-mark-ring-push'
  before calling `org-link-search'.
2017-01-17 10:42:13 +01:00
Nicolas Goaziou 1ac8e29605 Merge branch 'maint' 2017-01-17 10:00:55 +01:00
Nicolas Goaziou 181dc50d11 Small fix
* lisp/org.el (org-clone-subtree-with-time-shift): Handle nil shift
  case.
2017-01-17 09:59:53 +01:00
Nicolas Goaziou 985ffb13d2 Merge branch 'maint' 2017-01-17 09:53:36 +01:00
Nicolas Goaziou c31462f33e Fix `org-clone-subtree-with-time-shift'
* lisp/org.el (org-clone-subtree-with-time-shift): Fix commit
  8fc9ab83b. Small refactoring.
* testing/lisp/test-org.el (test-org/clone-with-time-shift): Add
  tests.

Reported-by: Kyle Meyer <kyle@kyleam.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/111477>
2017-01-17 09:49:48 +01:00
Nicolas Goaziou fe9e60d61b Merge branch 'maint' 2017-01-16 22:27:24 +01:00
Kyle Meyer 8fc9ab83b4 org-clone-subtree-with-time-shift: Fix timestamp search
* lisp/org.el (org-clone-subtree-with-time-shift): Move to the
  beginning of the heading before the timestamp search so that the
  user will be prompted for a time shift even if point is after the
  timestamp.

This also prevents an "Invalid search bound" error if point is on the
blank line following a body-less heading:

   * single line <2017-02-28 Wed>
    <point here>

Reported-by: Karl Voit <devnull@Karl-Voit.at>
<http://permalink.gmane.org/gmane.emacs.orgmode/111456>
2017-01-16 22:24:25 +01:00
Nicolas Goaziou 4d9857f97b Merge branch 'maint' 2017-01-14 23:25:13 +01:00
Nicolas Goaziou f0c08e3cbb Fix `org-drag-element-backward' with point just below a headline
* lisp/org.el (org-drag-element-backward): When point is on empty
  lines below a headline, call `org-move-subtree-up'.
* testing/lisp/test-org.el (test-org/drag-element-backward): Add test.
2017-01-14 23:23:26 +01:00
Nicolas Goaziou bd3eb74509 Remove unnecessary workaround
* lisp/org.el (org-open-at-point): Links can no longer be nested.
  Remove workaround.
2017-01-11 12:31:53 +01:00
Kyle Meyer 0d3683f2cd Merge branch 'maint' 2017-01-05 20:23:58 -05:00
Kyle Meyer 713f785017 Update copyright years 2017-01-05 20:19:37 -05:00
Bastien d0d05e5df1 Delete org-bullets.el from the contrib/ directory
* lisp/org.el (org-modules): Don't mention org-bullets.el,
which is now deleted from the contrib/ directory.

See https://github.com/sabof/org-bullets/issues/18
2017-01-03 12:22:38 +01:00
Nicolas Goaziou 1fac906174 Fix `org-N-empty-lines-before-current'
* lisp/org.el (org-N-empty-lines-before-current): Preserve point when
  calling the function from the beginning of a line.

* testing/lisp/test-org.el (test-org/insert-heading): Add tests.
2017-01-02 23:21:53 +01:00
Nicolas Goaziou 6f6c2ea8d9 Merge branch 'maint' 2016-12-29 16:39:07 +01:00
Alexey Lebedeff 3e68d01bdd Reveal tags after setting them
* lisp/org.el (org-set-tags): Reveal newly inserted tags.
* testing/lisp/test-org.el (test-org/set-tags): New test.

Sometimes freshly added tags can be sucked into invisible outline
region (denoted by ellipsis) - and to see them you need to do the full
global visibilty cycle.
2016-12-29 16:38:38 +01:00
Nicolas Goaziou 517fed8d4d Merge branch 'maint' 2016-12-26 10:32:42 +01:00
Nicolas Goaziou 4cf56e6e89 Fix following links starting with square brackets
* lisp/org.el (org-link-search): Improve regexp.
* testing/lisp/test-org.el (test-org/fuzzy-links): Add tests.
2016-12-26 10:32:26 +01:00
Bastien c98a343f8d Fix commit 1c89082.
* lisp/org.el (org-speed-command-hook): Do not use removed alias name.
2016-12-24 12:21:42 +01:00
Nicolas Goaziou 709dad2f3a Fix last commit
* lisp/org.el (org-speed-command-hook): Do not use removed alias name.
2016-12-24 11:30:19 +01:00
Nicolas Goaziou 1ddadefd37 Merge branch 'maint' 2016-12-22 13:13:08 +01:00
Nicolas Goaziou 820d1eb617 Fix `org-compile-file'
* lisp/org.el (org-compile-file): Ensure `out-dir' is always a string.
2016-12-22 13:12:19 +01:00
Nicolas Goaziou 901d2470dd Merge branch 'maint' 2016-12-15 14:24:46 +01:00
Nicolas Goaziou 51227cff94 Fix C-c C-c on inline tasks
* lisp/org.el (org-ctrl-c-ctrl-c): Properly recognize inlinetasks as
  a valid context.
2016-12-15 14:24:01 +01:00
Nicolas Goaziou f5b7de222d Fix level of newly inserted headlines
* lisp/org.el (org-insert-heading): Fix level of new headline when
  creating it from a regular text line.

* testing/lisp/test-org.el (test-org/insert-heading): Add tests.

Reported-by: swflint@flintfam.org (Samuel W. Flint)
<http://permalink.gmane.org/gmane.emacs.orgmode/110842>
2016-12-15 00:15:12 +01:00
Nicolas Goaziou 23a9492055 Fix bold emphasis around headlines
* lisp/org.el (org-do-emphasis-faces): Fix bold emphasis around
  headlines.  In particular, stars at the beginning of a headline are
  not bold markup, and bold markup cannot end with stars at the
  beginning of a headline.

Reported-by: Ian Dunn <dunni@gnu.org>
<http://permalink.gmane.org/gmane.emacs.orgmode/110814>
2016-12-14 11:14:29 +01:00
Nicolas Goaziou 9fb2e047d2 Split `org-emph-re' and `org-verbatim-re'
* lisp/org.el (org-set-emph-re): Refactor code.  Rip "~" and "="
  markers off `org-emph-re'.
(org-do-emphasis-faces):
(org-sort-remove-invisible): Handle both `org-emph-re' and
`org-verbatim-re'.
(org-in-verbatim-emphasis): Use `org-verbatim-re' instead of
`org-emph-re'.

* lisp/org-element.el (org-element-code-parser):
(org-element-verbatim-parser): Use `org-verbatim-re' instead of
`org-emph-re'.
* testing/lisp/test-org-element.el (test-org-element/bold-parser):

(test-org-element/code-parser):
(test-org-element/italic-parser):
(test-org-element/strike-through-parser):
(test-org-element/underline-parser):
(test-org-element/verbatim-parser): Update tests, which no longer need
to bind `org-emph-re'.
2016-12-12 22:21:17 +01:00
Nicolas Goaziou c8da8529f5 `org-insert-heading' doesn't create items anymore
* lisp/org.el (org-insert-heading): Specialize function for headlines,
  not items.
(org-meta-return): Update according to new specifications above.
* lisp/org-list.el (org-insert-item): Add interactive spec.
* doc/org.texi (Structure editing): Update documentation.

* testing/lisp/test-org.el (test-org/insert-heading): Remove tests.
* testing/lisp/test-org-list.el (test-org-list/insert-item): Add test.
2016-12-10 00:32:15 +01:00
Nicolas Goaziou 68d8f860cd Improve blank line handling in `org-insert-heading'
* lisp/org.el (org--blank-before-heading-p): New function.
(org-insert-heading): Use previous function.  Major refactoring.

* testing/lisp/test-org.el (test-org/insert-heading):
(test-org/insert-todo-heading-respect-content): Update tests.
2016-12-10 00:32:14 +01:00
Nicolas Goaziou 64efc0cd45 Remove Org Timeline
* lisp/org-agenda.el (org-timeline-show-empty-dates):
(org-agenda-only-exact-dates): Remove variables.
(org-timeline):
(org-get-all-dates): Remove functions.

(org-agenda): Remove reference to `org-timeline'

* lisp/org-mouse.el (org-mouse-popup-global-menu): Remove reference to
  `org-timeline'.
* lisp/org.el (org-org-menu): Likewise.
2016-12-09 22:19:13 +01:00
Nicolas Goaziou e32aca36a4 Simplify matching headlines in `org-link-search'
* lisp/org.el (org-link-search): Simplify matching headlines.
2016-12-08 22:40:18 +01:00
Nicolas Goaziou 6ed3fc8010 Fix SCHEDULED removal when repeating a task
* lisp/org.el (org-auto-repeat-maybe): Fix bug where repeating a task
  containing a timestamp without a repeater would remove the scheduled
  date.

Reported-by: 毛晓伟 <maoweirm@126.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/110633>
2016-12-07 00:10:29 +01:00
Nicolas Goaziou e336f39ce7 Fix dpi calculation when previewing LaTeX snippets
* lisp/org.el (org--get-display-dpi): Fix docstring.
(org-create-formula-image): Use function above.

Reported-by: Scott Otterson <scotto@sharpleaf.org>
<http://permalink.gmane.org/gmane.emacs.orgmode/110526>
2016-11-30 21:55:45 +01:00
Lixin Chin f5916c4fbb Relax the match criteria for MathML header line
* lisp/org.el (org-create-math-formula): Allow the xmlns attribute to
  be preceded by any other mathml header attribute.

The problem here was that the match criteria for MathML assumed that
the xmlns attribute is the first listed in the top level MathML <math>
element.  Some LaTeX -> MathML converters (e.g., pandoc) will add
attributes before xmlns, which is still valid MathML.
2016-11-29 09:28:06 +01:00
Kyle Meyer 6983f8e8bf Issue user-error when trying to drag before first element
* lisp/org.el (org-drag-element-backward):
(org-drag-element-forward): Check that org-element-at-point returns a
non-nil value to avoid a type-error when called before first element.

* testing/lisp/test-org.el (test-org/drag-element-backward):
(test-org/drag-element-forward): Add test for when point is before
first element.  Adjust existing should-error calls to specify
user-error.
2016-11-28 18:40:43 -05:00
Nicolas Goaziou 2998a139c4 Tiny fix
* lisp/org.el (org-at-clock-log-p): Use `beginning-of-line' instead of
  `move-beginning-of-line'.
2016-11-27 23:09:15 +01:00
Nicolas Goaziou 7fc980f75e Tiny docstring fix
* lisp/org.el (org-compile-file): Fix docstring.
2016-11-27 12:20:01 +01:00
Nicolas Goaziou 289363d510 Fix LaTeX preview
* lisp/org.el (org-compile-file): Introduce new %O placeholder.
(org-preview-latex-process-alist): Use it.

* lisp/ox-latex.el (org-latex-pdf-process):
* lisp/ox-man.el (org-man-pdf-process):
* lisp/ox-texinfo.el (org-texinfo-info-process): Document it.

Reported-by: Scott Otterson <scotto@sharpleaf.org>
<http://permalink.gmane.org/gmane.emacs.orgmode/110464>
2016-11-27 12:07:11 +01:00
Nicolas Goaziou 69ec6258b6 org-agenda: Fix scheduled dates display
* lisp/org.el (org-time-string-to-absolute): Change signature.
* lisp/org-agenda.el (org-agenda-get-scheduled): Fix various glitches
  in scheduled dates display.  Also fix such dates when
  `org-agenda-repeating-timestamp-show-all' is nil.  Apply signature
  change.

Reported-by: Samuel Wales <samologist@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/110116>
2016-11-25 01:51:42 +01:00
Paul Eggert ad5e2aed21 Backport commit dc152c5 from Emacs
Apple changed the spelling of its operating system again, to "macOS",
effective with macOS 10.12 Sierra (2016-09-20).  Change Emacs
documentation and comments to match this.  Stick with older OS
spellings ("OS X", "Mac OS X") when talking about older releases where
the older names are more correct.

Modernize usage of 'macOS' in doc and comments
dc152c54f4e44f5f2040883b03f71ff6aa66c893
Paul Eggert
Sun Nov 6 00:42:03 2016 -0700
2016-11-19 16:49:15 -05:00
Nicolas Goaziou 8a5e54f1cc Small fix to documentation
* doc/org.texi (Setting tags): Remove misleading information.
* lisp/org.el (org-tag-alist): Fix consistency with
  `org-tag-persistent-alist'.
2016-11-13 18:08:15 +01:00
Nicolas Goaziou cec084584d Fix docstring
* lisp/org.el (org-link-search-must-match-exact-headline): Fix
  docstring.  Add :safe keyword.
2016-11-13 11:37:53 +01:00
Nicolas Goaziou ebbc675bd9 Fix TODO keywords case sensitivity
* lisp/org.el (org-todo-regexp):
(org-not-done-regexp):
(org-not-done-heading-regexp):
(org-todo-line-regexp):
(org-complex-heading-regexp): Improve docstrings.

(org-insert-todo-heading):
(org-fix-position-after-promote):
(org-link-search):
(org-block-todo-from-children-or-siblings-or-parent):
(org-get-todo-state):
(org-priority):
(org-point-at-end-of-empty-headline):
* lisp/org-agenda.el (org-fix-agenda-info):
(org-agenda-get-todos):
(org-cmp-alpha):
* lisp/org-archive.el (org-archive-subtree):
(org-archive-all-done):
* lisp/org-list.el (org-toggle-item):
* lisp/org-pcomplete.el (pcomplete/org-mode/searchhead): Bind
`case-fold-search' to nil when matching aginst one of the regexp
above.

* testing/lisp/test-org.el (test-org/fuzzy-links): Add tests.
2016-11-13 11:26:17 +01:00
Nicolas Goaziou ff0748beac Small documentation fixes
* doc/org.texi (The very busy C-c C-c key):
* lisp/org.el (org-startup-folded): Documentation fixes.
2016-11-12 01:45:05 +01:00
Nicolas Goaziou 393f490386 Remove dependency on "gs" for preview LaTeX
* lisp/org.el (org-preview-latex-process-alist): Remove "gs"
  requirement.

Reported-by: Frederick Giasson <fred@fgiasson.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/110216>
2016-11-12 01:21:25 +01:00
Nicolas Goaziou 004bd64948 Fix docstring
* lisp/org.el (org-compile-file): Fix docstring.
2016-11-08 17:53:22 +01:00
Nicolas Goaziou 120f8c09f4 Fix file compilation in a different directory than current one
* lisp/org.el (org-compile-file): Do not set default directory.
(org-preview-latex-process-alist): Update since base-name may no be
located in current directory.
* lisp/ox-latex.el (org-latex-compile): Remove auxiliary files in
  default directory instead of ".tex" file directory.

Reported-by: Alex Fenton <alex.fenton@pressure.to>
<http://permalink.gmane.org/gmane.emacs.orgmode/110078>
2016-11-08 11:44:28 +01:00
Nicolas Goaziou 13dbea95af Fix documentation
* doc/org.texi (Installation):
(Feedback):
(Handling links):
(Setting tags):
(Matching tags and properties):
(Storing searches):
(The very busy C-c C-c key):
(org-crypt):
(Adding hyperlink types):
* lisp/org-agenda.el (org-agenda-todo-ignore-deadlines):
(org-agenda-show-inherited-tags):
(org-agenda-week-view):
(org-agenda-fortnight-view):
(org-agenda-month-view):
(org-agenda-year-view):
* lisp/org-archive.el (org-archive-to-archive-sibling):
* lisp/org-capture.el (org-capture-templates):
* lisp/org-table.el:
* lisp/org.el (org-startup-folded):
(org-tag-alist):
(org-match-sparse-tree): Provide more accurate documentation.

Reported-by: Jorge Morais Neto <jorge13515@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/110080>
2016-11-07 01:14:04 +01:00
Nicolas Goaziou 58dbdb25a1 Fix repeated tasks in certain languages
* lisp/org.el (org-timestamp-change): Handle `after' position.

`after' position needs to take into consideration changes in time-stamp
length.  Some time locales have variable lengths for abbreviated day
names throughout the week.

Reported-by: "Bruce V. Chiarelli" <mano155@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/109951>
2016-11-01 09:38:56 +01:00
Nicolas Goaziou 1d7150319b Fix docstrings
* lisp/org-clock.el (org-clock-get-table-data):
* lisp/org-element.el (org-element--cache-objects):
(org-element--cache-generate-key):
* lisp/org-footnote.el (org-footnote--collect-references):
* lisp/org-list.el (org-list-to-lisp):
* lisp/org-table.el (orgtbl-to-generic):
* lisp/org.el (org-file-apps):
(org-execute-file-search-functions):
(org-after-todo-statistics-hook):
(org-find-olp):
* lisp/ox-html.el (org-html-table-row-open-tag): Do not escape
  parenthesis in docstring when not at column 0.
2016-10-31 10:01:33 +01:00
Nicolas Goaziou a94493f5a2 Properly fontify short captions
* lisp/org.el (org-fontify-meta-lines-and-blocks-1): Properly fontify
  short captions.
2016-10-29 01:09:26 +02:00
Nicolas Goaziou 7bbe9202c2 Match `org-complex-heading-regexp' with a nil `case-fold-search'
* lisp/org-agenda.el (org-agenda-goto):
* lisp/org-clock.el (org-clock-in):
(org-clock-out):
(org-clock-put-overlay):
(org-clock-load):
* lisp/org-element.el (org-element-context):
* lisp/org-footnote.el (org-footnote--allow-reference-p):
* lisp/org-mobile.el:
* lisp/ox.el (org-export--get-subtree-options):
* lisp/org.el (org-insert-heading):
(org-edit-headline):
(org-open-at-point):
(org-refile-get-targets):
(org--get-outline-path-1):
(org-toggle-comment):
(org-set-tags-to):
(org-set-tags):
(org-entry-properties):
(org-delete-indentation):
(org-beginning-of-line):
(org-end-of-line):
(org-mode-flyspell-verify): Bind `case-fold-search' to nil when matching
`org-complex-heading-regexp'.

(org-complex-heading-regexp): Add a note about the necessity to have
`case-fold-search' bound to nil.
2016-10-29 00:38:15 +02:00
Nicolas Goaziou e8b4eeb482 Fix `org-return' on non-keyword
* lisp/org.el (org-return): Recognize non-keywords and split text
  accordingly.
* testing/lisp/test-org.el (test-org/return): Add test.

Reported-by: Samuel Wales <samologist@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/109929>
2016-10-29 00:00:32 +02:00
Nicolas Goaziou fe4c6a8529 Fix S-TAB when called on a block
* lisp/org.el (org-cycle): Call `org-hide-block-toggle-maybe' after
  universal argument check.  Also remove the function from
  `org-tab-first-hook' to that effect.
2016-10-19 20:08:09 +02:00
Nicolas Goaziou 9aeee623fd Silence byte-compiler 2016-10-19 16:09:59 +02:00
Nicolas Goaziou 6ca5cc8efb Better integration between Babel and `C-c C-c'
* lisp/org.el (org-ctrl-c-ctrl-c): Handle Babel context without relying
  to user hooks.
* lisp/ob-core.el (org-babel-execute-maybe):
(org-babel-hash-at-point): Do not functions in `C-c C-c' hook.
2016-10-19 16:08:09 +02:00
Nicolas Goaziou 4ccd1dfff1 Small refactoring
* lisp/org.el (org-ctrl-c-ctrl-c): Small refactoring.
2016-10-19 15:48:42 +02:00
Nicolas Goaziou a7169be6b2 Remove unnecessary calls to `org-update-radio-target-regexp'
* lisp/org-ctags.el (org-ctags-append-topic): Remove call to
  `org-update-radio-target-regexp' since topic uses regular targets.
* lisp/org.el (org-ctrl-c-ctrl-c): Do not update radio targets when
  point is on a target.
2016-10-19 15:31:10 +02:00
Nicolas Goaziou e4d4c6e1bc Fix code typo
* lisp/org.el (org-beginning-of-line):
(org-end-of-line): Fix typo in pattern matching.

Reported-by: Matt Lundin <mdl@imapmail.org>
<http://permalink.gmane.org/gmane.emacs.orgmode/109829>
2016-10-17 22:55:57 +02:00
Nicolas Goaziou 0cf58cc208 Improve docstrings
* lisp/ob-core.el (org-confirm-babel-evaluate):
(org-babel-no-eval-on-ctrl-c-ctrl-c):
(org-babel-hash-at-point):
* lisp/org-agenda.el (org-agenda-custom-commands):
(org-stuck-projects):
(org-agenda):
(org-timeline):
(org-todo-list):
(org-agenda-filter-by-tag):
(org-agenda-log-mode):
(org-agenda-refile):
(org-agenda-show-and-scroll-up):
(org-agenda-tree-to-indirect-buffer):
(org-agenda-show-the-flagging-note):
(org-agenda-to-appt):
* lisp/org-capture.el (org-capture-mode):
(org-capture-use-agenda-date):
(org-capture):
* lisp/org-clock.el (org-clock-in):
(org-clock-display):
* lisp/org-colview.el (org-columns--display-here):
(org-columns):
* lisp/org-footnote.el (org-footnote-section):
* lisp/org-gnus.el (org-gnus-prefer-web-links):
* lisp/org-lint.el (org-lint):
* lisp/org-list.el (org-plain-list-ordered-item-terminator):
(org-list-allow-alphabetical):
(org-list-automatic-rules):
(org-list-use-circular-motion):
* lisp/org-protocol.el (org-protocol-store-link):
(org-protocol-create-for-org):
* lisp/org-src.el (org-src-preserve-indentation):
(org-edit-src-content-indentation):
(org-src-mode-hook):
(org-src-mode):
(org-edit-table.el):
(org-edit-export-block):
(org-edit-src-code):
(org-edit-fixed-width-region):
* lisp/org-table.el (org-table-automatic-realign):
(org-table-copy-increment):
(org-table-formula-evaluate-inline):
(org-table-allow-automatic-line-recalculation):
(org-table-edit-field):
(orgtbl-ascii-plot):
* lisp/org-timer.el (org-timer):
* lisp/org.el (org-deadline-string):
(org-comment-string):
(org-ellipsis):
(org-show-context-detail):
(org-indirect-buffer-display):
(org-cycle-global-at-bob):
(org-insert-heading-respect-content):
(org-enable-table-editor):
(org-context-in-file-links):
(org-display-internal-link-with-indirect-buffer):
(org-file-apps):
(org-refile-targets):
(org-todo-keywords):
(org-use-fast-todo-selection):
(org-treat-insert-todo-heading-as-state-change):
(org-time-clocksum-use-fractional):
(org-time-clocksum-use-effort-durations):
(org-agenda-files):
(org-cycle-hide-archived-subtrees):
(org-cycle):
(org-global-cycle):
(org-tree-to-indirect-buffer):
(org-insert-heading):
(org-store-link):
(org-insert-link):
(org-mark-ring-push):
(org-refile):
(org-todo):
(org-show-todo-tree):
(org-reveal):
(org-check-deadlines):
(org-switchb):
(org-cdlatex-mode):
(org-toggle-latex-fragment):
(org-ctrl-c-ctrl-c):
(org-toggle-heading):
(org-indent-line):
(org-yank):
(org-speedbar-set-agenda-restriction):
* lisp/ox-html.el (org-html-htmlize-output-type):
* lisp/ox-icalendar.el (org-icalendar-combined-agenda-file):
* lisp/ox-publish.el (org-publish-project-alist):
* lisp/ox.el (org-export-in-background):
(org-export-stack-mode):
(org-export--stack-source-at-point):
(org-export-dispatch): Improve quotes and formatting in docstrings.
2016-10-15 17:43:54 +02:00
Nicolas Goaziou 21c6148bbe Handle comments in source blocks with `comment-line'
* lisp/org.el (org-comment-or-uncomment-region): Caller is not
  necessarily `comment-dwim'.  Also handle `comment-line'.

Reported-by: Xebar Saram <zeltakc@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/109809>
2016-10-15 12:31:25 +02:00
Nicolas Goaziou 8d2f0a4411 Fix `C-a' with visual lines and arguments
* lisp/org.el (org-beginning-of-line): Move to beginning of visual line
  when appropriate.  Fix docstring.

* testing/lisp/test-org.el (test-org/beginning-of-line): Add tests.
2016-10-15 12:00:43 +02:00
Nicolas Goaziou 5c85409464 Remove unnecessary workaround
* lisp/org.el (org-end-of-line): Remove unnecessary workaround for bug
  #14346.
2016-10-15 11:36:10 +02:00
Nicolas Goaziou 45048eb783 Fix `C-e' with visible lines and arguments
* lisp/org.el (org-end-of-line): Correctly go to the end of visible
  line, when appropriate.
* testing/lisp/test-org.el (test-org/end-of-line): Add tests.
2016-10-15 11:36:09 +02:00
Nicolas Goaziou 2971c48cf1 Remove unnecessary workaround
* lisp/org.el (org-beginning-of-line): Remove unnecessary workaround for
  bug #14346.

* testing/lisp/test-org.el (test-org/beginning-of-line): Update tests.
2016-10-15 11:26:10 +02:00
Nicolas Goaziou b9b14376f8 Tiny refactoring
* lisp/org.el (org-beginning-of-line): Tiny refactoring.  Remove useless
  comment.  Fix docstring.
2016-10-15 00:51:33 +02:00
Nicolas Goaziou 756bb87d81 Fix regression in `org-beginning-of-line'
* lisp/org.el (org-beginning-of-line): Leave point before any invisible
  character at column 0.  Small refactoring.
* testing/lisp/test-org.el (test-org/beginning-of-line): Add tests.

The regression was introduced in
3baf246f4f.
2016-10-13 09:41:54 +02:00
Nicolas Goaziou e00dfe0ee3 Fix typo in docstring
* lisp/org.el (org-link-search): Fix typo.
2016-10-10 00:44:36 +02:00
Nicolas Goaziou 191fe8209f Make use of `org-ellipsis' face
* lisp/org.el (org-ellipsis): Do not allow to specify a face since
  `org-ellipsis' face can be modified instead.
(org-mode): Use `org-ellipsis', independently on the value of
`org-ellipsis' (the string).

Reported-by: Vasilij Schneidermann <v.schneidermann@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/109543>
2016-10-09 21:41:25 +02:00
Nicolas Goaziou 966e0bff56 Change `org-align-tags-here' into `org--align-tags-here'
* lisp/org.el (org-align-tags-here): Renamed to...
(org--align-tags-here): ... this.

This change emphasizes the fact that, as an internal function, it
shouldn't be used without special care.  This also prevents confusing
between this function and `org-set-tags' called with a non-nil ALIGN
argument.
2016-10-05 11:54:49 +02:00
Nicolas Goaziou d907041911 Change :version in defcustoms from "25.1" to "25.2"
* lisp/ob-exp.el (org-babel-exp-inline-code-template):
* lisp/ob-lisp.el (org-babel-lisp-eval-fn):
* lisp/org-agenda.el (org-agenda-view-columns-initially):
* lisp/org-attach.el (org-attach-commit):
(org-attach-archive-delete):
(org-attach-annex-auto-get):
* lisp/org-bibtex.el (org-bibtex-inherit-tags):
* lisp/org-clock.el (org-clock-into-drawer):
* lisp/org-colview.el (org-columns-summary-types):
* lisp/org-table.el (org-table-copy-increment):
(org-table-formula-create-columns):
(org-table-convert-region-max-lines):
* lisp/org-timer.el (org-timer-default-timer):
* lisp/org.el (org-export-backends):
(org-cycle-hook):
(org-occur-case-fold-search):
(org-preview-latex-image-directory):
(org-latex-default-packages-alist):
(org-sparse-tree-default-date-type):
(org-structure-template-alist):
(org-effort-durations):
(org-agenda-ignore-properties): Change :version from "25.1" to "25.2".
(customize-package-emacs-version-alist): Fix associations between Org
and Emacs releases.
* lisp/ox-ascii.el (org-ascii-list-margin):
* lisp/ox-beamer.el (org-beamer-subtitle-format):
* lisp/ox-html.el (org-html-format-headline-function):
(org-html-format-inlinetask-function):
(org-html-viewport):
* lisp/ox-latex.el (org-latex-caption-above):
(org-latex-prefer-user-labels):
(org-latex-subtitle-format):
(org-latex-hyperref-template):
(org-latex-images-centered):
(org-latex-text-markup-alist):
(org-latex-format-inlinetask-function):
(org-latex-custom-lang-environments):
(org-latex-compiler-file-string):
(org-latex-compiler):
(org-latex-bib-compiler):
(org-latex-logfiles-extensions):
(org-latex-known-warnings):
* lisp/ox-md.el (org-md-footnotes-section):
(org-md-footnote-format):
* lisp/ox-odt.el (org-odt-format-headline-function):
(org-odt-format-inlinetask-function):
(org-odt-inline-image-rules):
* lisp/ox-texinfo.el (org-texinfo-format-headline-function):
* lisp/ox.el (org-export-with-creator):
(org-export-with-title):
(org-export-with-broken-links):
(org-export-copy-to-kill-ring): Change :version from "25.1" to "25.2".

Neither Org 8.3 nor Org 9.0 were released with Emacs 25.1.
2016-10-05 11:18:39 +02:00
Nicolas Goaziou 30fc890acd Change "Org-mode" into "Org mode"
* lisp/org.el (org-version):
(org-mode-hook):
(org-modules):
(org-support-shift-select):
(org-startup):
(org-replace-disputed-keys):
(org-disputed-keys):
(org-keywords):
(org-cycle):
(org-edit-structure):
(org-sparse-trees):
(org-imenu-and-speedbar):
(org-table):
(org-enable-table-editor):
(org-link):
(org-link-store):
(org-link-follow):
(org-refile):
(org-todo):
(org-progress):
(org-priorities):
(org-time):
(org-tags):
(org-properties):
(org-agenda):
(org-latex):
(org-archive):
(org-fontify-like-in-org-mode):
(orgstruct-mode):
(org-run-like-in-org-mode):
(org-open-link-from-string):
(org-mark-ring):
(org-cdlatex-mode):
(org-shiftselect-error):
(org-submit-bug-report):
(org-create-customize-menu):
(org-speedbar-set-agenda-restriction): Change "Org-mode" into "Org
mode".
2016-10-05 10:10:54 +02:00
Nicolas Goaziou 12f883cd02 Consistently align tags under Org Indent mode
* lisp/org.el (org-set-tags): Refactor alignment part using
  `org-align-tags-here'.
(org-fix-tags-on-the-fly):
(org-delete-indentation):
(org-return): Use `org-set-tags' instead of low-level
`org-align-tags-here' so as to handle virtual indentation.
2016-10-05 10:05:08 +02:00
Nicolas Goaziou 7b42b4a62e Fix `org-ctrl-c-ctrl-c'
* lisp/org.el (org-ctrl-c-ctrl-c): Correctly set tags when called on an
  unsupported object type (e.g., a code snippet) in a headline or
  inlinetask.
2016-10-04 17:32:24 +02:00
Nicolas Goaziou 50f2061418 Improve docstring
* lisp/org.el (org-insert-heading): Document limitation on where
  a headline can be split.

Reported-by: Jorge <jorge13515@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/109510>
2016-10-04 12:01:41 +02:00
Nicolas Goaziou d4c63febc9 Fix typo in docstring
* lisp/org.el (org-insert-heading): Fix typo.
2016-10-04 11:38:33 +02:00
Nicolas Goaziou 2b03e945a1 Fix consistency with `org-insert-heading' called with an argument
* lisp/org.el (org-insert-heading): Consistently add a new heading at
  the end of the subtree when called with an universal argument, even if
  point is at beginning of line.

Reported-by: Jorge <jorge13515@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/109510>
2016-10-04 11:33:10 +02:00
Nicolas Goaziou eda8ac493f Fix inconsistencies in `org-occur' binding
* doc/org.texi (Sparse trees): Add C-c / / binding for `org-occur'.
* lisp/org.el (org-sparse-tree): Mention "r" suffix for consistency with
  other entries in the help menu.
2016-10-02 00:30:14 +02:00
Nicolas Goaziou 005b3c07bb Fix a docstring
* lisp/org.el (org-insert-heading): Fix docstring.
2016-10-01 23:59:34 +02:00
Nicolas Goaziou b3c556d83a Fix tags alignment when headline contains invisible text
* lisp/org.el (org-align-tags-here): Do not use `org-move-to-column',
  which may move point on the other side of some invisible text.
  Refactor code.

* testing/lisp/test-org.el (test-org/tag-align): Add test.

Reported-by: Michael Fiano <michael.fiano@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/109435>
2016-09-30 00:58:21 +02:00
Nicolas Goaziou 12196b8472 Fix documentation
* doc/org.texi (Conventions): Remove unhelpful and wrong footnote.
(Initial visibility): Remove spurious paragraph.
(Global and local cycling):
(Motion): Fix function name.
(Plain lists): Reverse prefix argument action.
(Column width and alignment):
(Column groups):
(Tag inheritance):
(Tag hierarchy):
(The date/time prompt): Fix typo
(Link abbreviations):
(Tag searches):
(Timers): Fix wording.
(Checkboxes): Improve accuracy of footnote.  Correctly describe the
behaviour of `org-toggle-checkbox' on a headline.
(Filtering/limiting agenda items): More accurate description for `+' and
`-'.  Also remove unused `\' key.
(Agenda commands): Fix behaviour description.

* lisp/org-agenda.el (org-agenda-filter-by-tag): Fix docstring
  appearance.
(org-agenda-show-and-scroll-up): Fix wording.

* lisp/org-id.el (org-id-link-to-org-use-id): Fix function name.
(org-id-update-id-locations): Remove reference to unused argument.

* lisp/org.el (org-insert-heading): Improve docstring.
(org-insert-todo-heading): Describe behavior on a plain list item.
(org-update-statistics-cookies): Describe behavior when called with
a prefix argument.
(org-metaright): Fix typo.
(org-kill-note-or-show-branches): Fix function name.
(org-yank): Fix wording.

Reported-by: Jorge <jorge13515@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/109428>
2016-09-29 22:22:56 +02:00
Nicolas Goaziou a1199f040f Move obsolete function to "org-compat"
* lisp/org.el (org-in-fixed-width-region-p): Move to...
* lisp/org-compat.el (org-in-fixed-width-region-p): ... here.
2016-09-26 23:03:49 +02:00
Aaron Ecay 9bbd9e5ae2 org.el: Omit redundant optional argument
* lisp/org.el (org-ctrl-c-ctrl-c): Omit redundant optional argument to
`local-variable-p'.
2016-09-26 16:56:19 +01:00
Aaron Ecay 7772ba6e69 org.el: assume `display-warning' is defined
* lisp/org.el (org-display-warning): Assume `display-warning' is
defined.

It is present in emacs since at least 2002
2016-09-26 16:56:19 +01:00
Aaron Ecay 092acf7e67 org.el: obsolete org-in-fixed-width-region-p
* lisp/org.el (org-in-fixed-width-region-p): Make obsolete.

It has no calls in core or contrib, and its function would be better
served by using the parser.
2016-09-26 16:56:19 +01:00
Aaron Ecay 7b930dd201 org.el: Assume `command-remapping' is defined.
* lisp/org.el (org-remap): Assume `command-remapping' is defined.

It was added to emacs in 2003.
2016-09-26 16:56:19 +01:00
Aaron Ecay d00d44d6ff Tiny refactoring
* lisp/org.el: (org-dvipng-color, org-latex-color): Use *-color-format
functions.
(org-dvipng-color-format, org-latex-color-format): Use sharp-quotes.
2016-09-26 16:56:19 +01:00
Aaron Ecay aafb3b5fdd Fix docstring typo.
* lisp/org.el (org-shorten-string): Fix docstring typo.
2016-09-25 16:39:30 +01:00
Aaron Ecay 140aacbf2f Use ‘eq’ instead of ‘equal’ for symbols
* lisp/ob-C.el (org-babel-C-val-to-C-type):
* lisp/ob-core.el (org-babel-get-colnames):
(org-babel-disassemble-tables):
* lisp/ob-lua.el (org-babel-lua-var-to-lua):
(org-babel-lua-table-or-string):
* lisp/ob-python.el (org-babel-python-var-to-python):
(org-babel-python-table-or-string):
* lisp/ob-ruby.el (org-babel-ruby-var-to-ruby):
(org-babel-ruby-table-or-string):
* lisp/ob-shell.el (org-babel-sh-var-to-string):
* lisp/ob-sqlite.el (org-babel-sqlite-table-or-scalar):
* lisp/org-agenda.el (org-agenda-prepare-window):
(org-compile-prefix-format):
* lisp/org-bibtex.el (org-bibtex-headline):
* lisp/org-capture.el (org-capture):
* lisp/org-colview.el (org-columns-next-allowed-value):
* lisp/org-mhe.el (org-mhe-store-link):
(org-mhe-get-message-real-folder):
(org-mhe-get-message-folder):
(org-mhe-get-message-num):
(org-mhe-get-header):
(org-mhe-follow-link):
* lisp/org-table.el (org-define-lookup-function):
* lisp/org.el (format-spec):
* lisp/ox-odt.el (org-odt--translate-description-lists):
* lisp/ox-publish.el (org-publish-compare-directory-files):
Use `eq' instead of `equal' when comparing to symbols.
* lisp/org-timer.el (org-timer-set-mode-line):
* lisp/org-capture.el (org-capture-finalize):
Use `cl-case' instead of `(cond ((eq x 'foo) ...) ...)'.
2016-09-25 16:29:06 +01:00
Nicolas Goaziou eb3dd6186d Silence byte-compiler
* lisp/org-faces.el (org-src-block-faces): Move it from here...
* lisp/org-src.el (org-src-block-faces): ... to here.
2016-09-24 10:52:49 +02:00
Nicolas Goaziou 5bc8492388 Tiny refactoring
* lisp/org.el (org-edit-special): Tiny refactoring.
2016-09-24 09:07:12 +02:00
Nicolas Goaziou 038c50a721 Fix a docstring
* lisp/org.el (org-copy-special): Fix docstring.  Tiny refactoring.
2016-09-24 09:04:40 +02:00
Nicolas Goaziou 3880789ea5 Fix a docstring
* lisp/org.el (org-cut-special): Fix docstring.  Tiny refactoring.
2016-09-24 09:03:00 +02:00
Aaron Ecay 48e7f17bc6 Use assq instead of assoc with quoted symbols
* lisp/ob-core.el (org-babel-merge-params):
* lisp/org-agenda.el (org-agenda-prepare-window):
(org-agenda-to-appt):
* lisp/org-capture.el (org-capture-finalize):
* lisp/org.el (org-find-invisible-foreground):
(org-open-file):
(org-todo-trigger-tag-changes):
(org-back-over-empty-lines):
* lisp/ox-odt.el (org-odt-get-table-cell-styles):
Use assq instead of assoc with quoted symbols.
2016-09-23 11:20:55 +01:00
Aaron Ecay 79650ffbbd Use assq instead of assoc for :keywords
* lisp/ob-C.el (org-babel-C-execute):
* lisp/ob-J.el (org-babel-execute:J):
* lisp/ob-R.el (org-babel-edit-prep:R):
(org-babel-expand-body:R):
(org-babel-execute:R):
(org-babel-variable-assignments:R):
(org-babel-R-initiate-session):
* lisp/ob-abc.el (org-babel-execute:abc):
* lisp/ob-asymptote.el (org-babel-execute:asymptote):
* lisp/ob-awk.el (org-babel-execute:awk):
* lisp/ob-clojure.el (org-babel-expand-body:clojure):
(org-babel-execute:clojure):
* lisp/ob-core.el (org-babel-expand-body:generic):
(org-babel-load-in-session):
(org-babel-initiate-session):
(org-babel-open-src-block-result):
(org-babel-process-params):
(org-babel-insert-result):
(org-babel-expand-noweb-references):
* lisp/ob-ditaa.el (org-babel-execute:ditaa):
* lisp/ob-dot.el (org-babel-execute:dot):
* lisp/ob-ebnf.el (org-babel-execute:ebnf):
* lisp/ob-emacs-lisp.el (org-babel-expand-body:emacs-lisp):
(org-babel-execute:emacs-lisp):
* lisp/ob-exp.el (org-babel-exp-process-buffer):
(org-babel-exp-do-export):
(org-babel-exp-code):
* lisp/ob-forth.el (org-babel-execute:forth):
* lisp/ob-fortran.el (org-babel-execute:fortran):
* lisp/ob-gnuplot.el (org-babel-gnuplot-process-vars):
(org-babel-expand-body:gnuplot):
(org-babel-execute:gnuplot):
* lisp/ob-groovy.el (org-babel-execute:groovy):
* lisp/ob-haskell.el (org-babel-execute:haskell):
* lisp/ob-io.el (org-babel-execute:io):
* lisp/ob-java.el (org-babel-execute:java):
* lisp/ob-js.el (org-babel-execute:js):
* lisp/ob-latex.el (org-babel-execute:latex):
* lisp/ob-ledger.el (org-babel-execute:ledger):
* lisp/ob-lilypond.el (org-babel-lilypond-process-basic):
* lisp/ob-lisp.el (org-babel-expand-body:lisp):
(org-babel-execute:lisp):
* lisp/ob-lua.el (org-babel-execute:lua):
* lisp/ob-maxima.el (org-babel-execute:maxima):
* lisp/ob-mscgen.el (org-babel-execute:mscgen):
* lisp/ob-ocaml.el (org-babel-execute:ocaml):
* lisp/ob-octave.el (org-babel-execute:octave):
* lisp/ob-org.el (org-babel-execute:org):
* lisp/ob-perl.el (org-babel-execute:perl):
* lisp/ob-picolisp.el (org-babel-execute:picolisp):
* lisp/ob-plantuml.el (org-babel-execute:plantuml):
* lisp/ob-python.el (org-babel-execute:python):
* lisp/ob-ruby.el (org-babel-execute:ruby):
* lisp/ob-sass.el (org-babel-execute:sass):
* lisp/ob-scala.el (org-babel-execute:scala):
* lisp/ob-scheme.el (org-babel-execute:scheme):
* lisp/ob-screen.el (org-babel-execute:screen):
(org-babel-prep-session:screen):
* lisp/ob-shell.el (org-babel-execute:shell):
(org-babel-variable-assignments:shell):
(org-babel-sh-evaluate):
* lisp/ob-shen.el (org-babel-execute:shen):
* lisp/ob-sql.el (org-babel-execute:sql):
* lisp/ob-sqlite.el (org-babel-execute:sqlite):
* lisp/ob-tangle.el (org-babel-tangle):
(org-babel-tangle-single-block):
* lisp/org-src.el (org-src-associate-babel-session):
* lisp/org.el (org-next-link):
Use `assq' instead of `assoc' with :keyword keys.
2016-09-23 11:20:09 +01:00
Konubinix 3dbb74c4f4 Indicate what happens to CLOCK entries in cloned subtrees
* lisp/org.el (org-clone-subtree-with-time-shift): Add into the documentation
  string a precision about the deletion of the CLOCK entries into the cloned
  subtrees.  Indicate the rationale for this decision.
2016-09-22 21:55:09 +02:00
Nicolas Goaziou 149b8046ac `org-open-line' ignores tables at the very beginning of the document
* lisp/org.el (org-open-line): Ignore tables at the very beginning of
  the document.
* testing/lisp/test-org.el (test-org/open-line): New test.
2016-09-18 17:22:48 +02:00
Nicolas Goaziou e1982a0a92 org.el: Respect user-defined reftex-cite-format
* lisp/org.el (org-reftex-citation): Respect user-defined reftex
  citation formats.

Suggested-by: Sebastian Boehm <sebastian@sometimesfood.org>
<http://permalink.gmane.org/gmane.emacs.orgmode/109175>
2016-09-17 10:28:41 +02:00
Nicolas Goaziou d1c1b7f8fa Move obsolete functions to "org-compat.el"
* lisp/org.el (org-sublist):
(org-table-recognize-table.el):
(org-minutes-to-hh:mm-string):
(org-remove-angle-brackets):
(org-remove-double-quotes): Move functions...
* lisp/org-compat.el: ... here.
2016-09-07 16:12:10 +02:00
Aaron Ecay 6e3ff4acc5 Deprecate org-remove-(angle-brackets,double-quotes)
* lisp/org.el (org-remove-angle-brackets, org-remove-double-quotes):
Deprecate.
* lisp/org-gnus.el (org-gnus-store-link):
* lisp/org-lint.el (org-lint-non-existent-setupfile-parameter):
(org-lint-wrong-include-link-parameter):
* lisp/org-macro.el (org-macro--collect-macros):
* lisp/org-mhe.el (org-mhe-store-link):
* lisp/org-rmail.el (org-rmail-store-link):
* lisp/org.el (org--setup-collect-keywords):
(org-insert-link):
(org-translate-link-from-planner):
(org-offer-links-in-entry):
* lisp/ox-publish.el (org-publish-cache-file-needs-publishing):
* lisp/ox.el (org-export--get-inbuffer-options):
(org-export--list-bound-variables):
(org-export-expand-include-keyword): Replace with `org-unbracket-string'.
2016-09-03 02:22:11 +01:00
Aaron Ecay 1c18efb615 String handling improvements.
* lisp/org-agenda.el (org-agenda-export-csv-mapper): Use `replace-regexp-in-string'.
* lisp/org-capture.el (org-capture): Use `string-prefix-p'.
* lisp/org-compat.el (string-blank-p, string-remove-prefix):
* lisp/org-compat.el (string-remove-suffix): Add compatibility defuns
for emacs 24.3.
* lisp/org-datetree.el (org-datetree-cleanup): Use `string-suffix-p'.
* lisp/org-footnote.el (org-footnote-normalize-label): Use
`string-remove-prefix'.
* lisp/org-gnus.el (org-gnus-group-link): Use `string-prefix-p'.
* lisp/org-list.el (org-list-struct):
(org-list-get-list-type, org-list-send-item):
(org-list-use-alpha-bul-p): Use `string-match-p'.
* lisp/org.el (org-paste-subtree): Use `string-suffix-p'.
(org-open-file, org-refile-get-targets): Use `replace-regexp-in-string'.
(org-make-tags-matcher): Use `string-prefix-p'.
(org-set-tags): Use `string-(prefix,suffix)-p'.
* lisp/ox-beamer.el (org-beamer--element-has-overlay-p):
(org-beamer--format-block):
Use `string-(prefix,suffix)-p'.
* lisp/ox-html.el (org-html-fix-class-name): Use `replace-regexp-in-string'.
* lisp/ox-md.el (org-md-verbatim): Use `string-(prefix,suffix)-p'.
(org-md-paragraph): Use `string-prefix-p'.
2016-09-03 02:05:10 +01:00
Aaron Ecay ab04bab4d6 Use org-with-wide-buffer where appropriate
* lisp/org-agenda.el (org-agenda-get-some-entry-text):
(org-agenda-refile, org-agenda-open-link):
(org-agenda-change-all-lines, org-agenda-clock-out):
* lisp/org-capture.el (org-capture-refile):
(org-capture-bookmark-last-stored-position):
* lisp/org-clock.el (org-with-clock-position):
(org-clock-in):
* lisp/org-table.el (org-table-recalculate-buffer-tables):
(org-table-iterate-buffer-tables):
* lisp/org.el (org-table-map-tables):
(org-outline-overlay-data, org-refresh-properties):
(org-refresh-stats-properties, org-offer-links-in-entry):
(org-refile, org-refile-check-position):
(org-refile-new-child, org-map-entries):
(org-find-exact-headline-in-buffer):
(org-reftex-citation, org-imenu-get-tree):
Use `org-with-wide-buffer'.
2016-09-03 01:44:58 +01:00
Nicolas Goaziou 7a14bd172c Merge branch 'maint' 2016-08-28 12:02:51 +02:00
Aaron Ecay 6b52bc6a21 Clean up string handling.
* lisp/org-compat.el (string-prefix-p, string-suffix-p):
Add compatibility definitions for 24.3.

* lisp/ob-R.el (org-babel-edit-prep:R):
* lisp/ob-core.el (org-babel-demarcate-block):
* lisp/ob-js.el (org-babel-js-read):
* lisp/ob-latex.el (org-babel-execute:latex):
* lisp/ob-ref.el (org-babel-ref-parse):
* lisp/ob-shell.el (org-babel-variable-assignments:shell):
* lisp/org-protocol.el (org-protocol-create):
* lisp/org-table.el (org-table-field-info):
* lisp/org.el (org-get-buffer-for-internal-link):
* lisp/ox-publish.el (org-publish-compare-directory-files):
* lisp/ox-texinfo.el (org-texinfo-template):
Use `string-{suffix,prefix}-p' instead of `string-match(-p)'.

* lisp/ob-python.el (org-babel-python-read-string):
Ditto, also use `substring' rather than `match-string'.

* lisp/org-table.el (org-table-copy-down):
(org-table-insert-hline, org-table-current-field-formula):
(org-table-get-formula): Use `string-match-p' instead of
`string-match'.
2016-08-24 16:05:54 +01:00
Nicolas Goaziou de24694f05 Turn org-mode into Org or Org mode
Use Org or Org mode instead of org-mode or Org-mode according to
"Documentation standards".
2016-08-23 22:13:56 +02:00
Nicolas Goaziou 250567b133 Fix typo in a docstring
* lisp/org.el (org-link-abbrev-alist): Fix typo.
2016-08-23 10:47:18 +02:00
Nicolas Goaziou 112463cbff Handle tooltips on abbreviated links
* lisp/org.el (org-activate-bracket-links): Expand abbreviations before
  adding :help-echo property.

Reported-by: mc <mc@aiguphonie.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/108785>
2016-08-23 09:34:29 +02:00
Nicolas Goaziou 71a3331aaf Move org-eww to core
* lisp/org-eww.el: Move file from contrib/lisp/ to lisp/.
* lisp/org.el (org-modules): Apply change.
* lisp/org-capture.el (org-capture-templates):
* doc/org.texi: Document changes.
2016-08-20 02:59:56 +02:00
Nicolas Goaziou fea6dd167a Fix `org-store-link' in edit buffers
* lisp/org.el (org-store-link): Properly handle coderef insertion in an
  edit buffer.

This patch also removes check for duplicate coderef labels, so as to be
on par with other link types.
2016-08-17 23:45:38 +02:00
Nicolas Goaziou 910755208d Small fix to `org-store-link'
* lisp/org.el (org-store-link): Only call `org-with-limited-levels' in
  Org buffers.
2016-08-17 23:40:16 +02:00
Nicolas Goaziou ff9ae29d03 Fix overlay breakage when updating statistics cookies
* lisp/org.el (org-update-parent-todo-statistics): Do not move overlay
  when updating statistics cookies.

Overlay moving was introduced in
28b88bbb11 to fix a bug that no longer
seems to be reproducible.  In any case, even if needed, this fix should
happen in "org-colview.el".

Reported-by: Clément Pit--Claudel <clement.pitclaudel@live.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/108601>
2016-08-08 21:56:11 +02:00
Nicolas Goaziou 9798da77b2 Fix `org-map-tree' when called in an invisible heading
* lisp/org.el (org-map-tree): Move to closest heading above even if it
  is invisible.

Suggested-by: talwrii talwrii <talwrii@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/108590>
2016-07-31 00:20:35 +02:00
Nicolas Goaziou 406ad6eb52 `org-get-heading' is more consistent on empty headlines
* lisp/org.el (org-get-heading): Ensure that return value is always
  a string.
* testing/lisp/test-org.el (test-org/get-heading): Add tests.

Reported-by: Joe Schafer <joesmoe10@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/108559>
2016-07-30 22:30:19 +02:00
Nicolas Goaziou 72461eaeaf Use `string-match-p' instead of `org-string-match-p'
* contrib/lisp/org-contacts.el (org-contacts-filter):
(org-contacts-complete-group):
(org-contacts-complete-tags-props):
* contrib/lisp/org-wl.el (org-wl-open):
* contrib/lisp/ox-bibtex.el (org-bibtex-merge-contiguous-citations):
* lisp/ob-core.el (org-babel-demarcate-block):
* lisp/ob-processing.el (org-babel-processing-view-sketch):
* lisp/ob-stan.el (org-babel-execute:stan):
* lisp/org-agenda.el (org-agenda-get-category-icon):
* lisp/org-clock.el (org-clock-into-drawer):
* lisp/org-element.el (org-element-link-parser):
* lisp/org-lint.el (org-lint-orphaned-affiliated-keywords):
(org-lint-invalid-babel-call-block):
(org-lint-colon-in-name):
* lisp/org-list.el (org-list-item-body-column):
* lisp/org-macro.el (org-macro-replace-all):
* lisp/org-plot.el (org-plot/gnuplot-script):
* lisp/org-table.el (org-table-export):
(org-table-align):
(org-table-get-range):
(org-table-recalculate):
(org-table-expand-lhs-ranges):
(org-table-formula-substitute-names):
(org-table-show-reference):
(orgtbl-to-texinfo):
(org-table-remote-reference-indirection):
* lisp/org.el (org-make-link-string):
(org--open-elisp-link):
(org-open-at-point):
(org-store-log-note):
(org-cached-entry-get):
(org--valid-property-p):
(org-entry-properties):
(org-buffer-property-keys):
(org-insert-drawer):
(org-display-inline-images):
(org-in-commented-heading-p):
* lisp/ox-ascii.el (org-ascii-keyword):
* lisp/ox-beamer.el (org-beamer--format-frame):
* lisp/ox-html.el (org-html-keyword):
* lisp/ox-latex.el (org-latex--label):
(org-latex-headline):
(org-latex-item):
(org-latex-keyword):
(org-latex--inline-image):
(org-latex-src-block):
* lisp/ox-odt.el (org-odt-styles-dir):
(org-odt-keyword):
(org-odt--translate-latex-fragments):
* lisp/ox-texinfo.el (org-texinfo-template):
(org-texinfo-keyword):
(org-texinfo-src-block):
* lisp/ox.el (org-export-inline-image-p):
(org-export-file-uri):
* testing/lisp/test-org-table.el (test-org-table/to-generic):
(test-org-table/to-latex):
(test-org-table/to-html):
(test-org-table/named-field):
(test-org-table/named-column):
(test-org-table/tab-indent):
(test-org-table/first-rc):
(test-org-table/last-rc): Use `string-match-p' instead of
`org-string-match-p'.
2016-07-25 15:21:12 +02:00
Nicolas Goaziou 9d3a4a8a5f Improve docstring
* lisp/org.el (org-file-apps): Fix backslash escaping in examples within
  docstring.
2016-07-25 13:35:12 +02:00
Nicolas Goaziou 3893fe2ccd Remove outdated code comment
* lisp/org.el (org-open-at-point): Remove outdated code comment.
2016-07-25 12:32:07 +02:00
Nicolas Goaziou 8fe6f27512 Deprecate "file+application" link types
* doc/org.texi (External links): Remove "file+emacs" and "file+sys"
  syntax.
* lisp/org-compat.el (org): Support "file+emacs" and "file+sys" for the
  time being.
* lisp/org-lint.el (org-lint--checkers): Add checker for obsolete link
  types.
(org-lint-file-application): New function.
* lisp/org.el (org-link-parameters): Remove deprecated link types.
2016-07-18 23:45:52 +02:00
Nicolas Goaziou aa822a4614 Remove unnecessary link application handler
* lisp/org.el (org-linkg-parameters): Use default follow function
  instead of providing one.
(org--open-file-link): Remove function.
2016-07-18 23:14:15 +02:00
Nicolas Goaziou 7552b67ac2 Externalize hard-coded type links
* lisp/org.el (org-link-parameters): Add follow function for "doi",
  "elisp", "ftp", "help", "http", "https", "mailto", "message", "news"
  and "shell" link types.
(org--open-elisp):
(org--open-doi):
(org--open-help):
(org--open-shell): New functions.
(org-open-at-point): Remove hard-coded follow functions.
2016-07-18 22:56:02 +02:00
John Kitchin 82f1f46052 Make plain and bracketed link properties stick
* lisp/org.el (org-set-font-lock-defaults): If t is after the face, than
  org-link clobbers everything from the activation functions.
2016-07-18 22:47:49 +02:00
John Kitchin 5c17aa7994 Update `org-activate-bracket-links'
* lisp/org.el (org-activate-bracket-links): Use `org-link-parameters' to
  build link properties.
2016-07-18 22:47:49 +02:00
John Kitchin b4dd8245b7 Update `org-activate-plain-links'
* lisp/org.el (org-activate-plain-links): Use `org-link-parameters' to
  create the link properties.
2016-07-18 22:47:48 +02:00
John Kitchin de6858f293 Get the complete function from `org-link-parameters'
* lisp/org.el (org-link-try-special-completion):
Get the follow function from `org-link-parameters'

Only follow when a function is defined.

* lisp/org.el (org-open-at-point): Some links don't have a :follow
  function, so we should not call nil in that case.
2016-07-18 22:47:48 +02:00
John Kitchin a5f5fedf3e Remove `org-link-protocols' variable
* lisp/org.el (org-link-protocols): Remove variable org-link-protocols.
The data in this variable is now retrieved with org-link-get-parameter.

* lisp/org.el: Enable file links to use the application link property to
  determine the follow action. Also add a space after let*.
2016-07-18 22:47:48 +02:00
John Kitchin 9bc2940034 Create `org-link-parameters'
* lisp/org-element.el: Replace `org-link-types' variable with
  `org-link-types' function.

* lisp/org.el: Replace the `org-link-types' variable with
  `org-link-types' function. Create `org-link-get-parameter' and
  `org-link-set-parameters' functions. Remove `org-add-link-type'. Add
  `org-store-link-functions' function and remove
  `org-store-link-functions' variable. Add `org--open-file-link' for use
  as a :follow function for file type links.

* lisp/org.el: Set :follow functions for file links in `org-link-parameters.
Define `org-open-file-link' that opens a file link with an app.

* testing/lisp/test-ox.el: Remove usage of the `org-link-types'
  variable.

* lisp/org-compat.el: Move `org-add-link-type' and mark it as obsolete.

* lisp/ox.el: Change org-add-link-type comment in ox.el.
2016-07-18 22:47:42 +02:00
Nicolas Goaziou e1f24f537e Fix `org-compile-file' error
* lisp/org.el (org-compile-file): Fix error when source file is not
  located in current directory.

Reported-by: "Charles C. Berry" <ccberry@ucsd.edu>
<http://permalink.gmane.org/gmane.emacs.orgmode/108245>
2016-07-17 14:28:00 +02:00
Nicolas Goaziou 610ec90cf4 Move `org-toggle-item' in "org-list.el"
* lisp/org.el (org-toggle-item): Move function ...
* lisp/org-list.el (org-toggle-item): ... here.

* testing/lisp/test-org-list.el (test-org-list/toggle-item): New test.
2016-07-04 23:52:40 +02:00
Nicolas Goaziou 1b8e1fc63f Merge branch 'maint' 2016-07-04 23:23:51 +02:00
Nicolas Goaziou cd3a552ef4 Fix toggling multiple headings with a TODO keyword
* lisp/org.el (org-toggle-item): Remove TODO keyword in each headling
  when changed to an item.
2016-07-04 14:12:13 +02:00
Nicolas Goaziou adcaf91648 Mark `org-link-escape-browser' as obsolete
* lisp/org-compat.el (org-link-escape-browser): Make function an alias
  for `url-encode-url'.
* lisp/org.el (org-link-escape-chars-browser): Remove variable.
(org-link-escape-browser): Remove function.
(org-open-at-point):
* lisp/ox-html.el (org-html-link): Use `url-encode-url'.
* testing/lisp/test-org.el(test-org/org-link-escape-chars-browser):
  Remove test.
2016-07-01 12:00:23 +02:00
Don March 86e592cb66 Reschedule "++" repeaters on same day if in future
* lisp/org.el (org-auto-repeat-maybe): Include the time in a
  timestamp (hours and minutes) when checking if a repeat occurrence is
  in the future.
* doc/org.texi (Repeated Tasks): Document repeat occurrences with a time
  in the timestamp.
2016-07-01 10:59:20 +02:00
Nicolas Goaziou b2091f6d75 Move obsolete declarations into "org-compat.el"
* lisp/org-agenda.el (org-agenda-list):
(org-agenda-goto-today):
(org-agenda-reset-view): Remove reference to obsolete
`org-agenda-ndays'.
2016-06-30 15:20:51 +02:00
Nicolas Goaziou 2f90a60bd8 Remove Emacs 22 related code
* contrib/lisp/htmlize.el (htmlize-face-color-internal):
(htmlize-face-to-fstruct):
* lisp/org-agenda.el (org-anniversary):
(org-cyclic):
(org-block):
(org-date):
* lisp/org-compat.el (org-region-active-p):
* lisp/org.el (org-use-extra-keys):
(occur-mode-find-occurrence-hook): Remove Emacs 22 related code and
comments.

(org-diary-class): Remove function.
2016-06-26 14:35:22 +02:00
Michael Brand e4baab8e10 Extend a docstring
* lisp/org.el (org-startup-truncated): Extend docstring.
(org-set-font-lock-defaults): Also the last top level expression on an
own line.
2016-06-25 17:04:43 +02:00
Nicolas Goaziou f364229176 Merge branch 'maint' 2016-06-24 09:22:00 +02:00
Nicolas Goaziou 0d72c34937 Improve a docstring
* lisp/org.el (org-delete-all): Improve docstring.
2016-06-24 09:21:38 +02:00
Nicolas Goaziou ee7aa9878f Deprecate `org-no-warnings' in favor of `with-no-warnings'
* lisp/org-macs.el (org-no-warnings): Rewove macro.
* lisp/org-compat.el (org-no-warnings): Mark `org-no-warnings' as
  obsolete.
* contrib/lisp/org-contacts.el (defvar):
* contrib/lisp/org-wl.el (org-wl-open):
* lisp/org-agenda.el (defvar):
(org-anniversary):
(org-cyclic):
(org-block):
(org-date):
* lisp/org-bbdb.el (defvar):
* lisp/org-clock.el (org-clock-out):
(org-clock-cancel):
* lisp/org-mouse.el (org-mouse-show-context-menu):
* lisp/org.el (org-modify-ts-extra):
(org-order-calendar-date-args): Small refactoring.
* lisp/ox-odt.el (org-odt-htmlfontify-string):
2016-06-23 15:20:32 +02:00
Nicolas Goaziou 999f224299 Deprecate `org-called-interactively-p' in favor of `called-interactively-p'
* lisp/org-compat.el (org-called-interactively-p): Make it an obsolete
  alias for `called-interactively-p'.
* lisp/org-macs.el (org-called-interactively-p): Remove function.
* contrib/lisp/org-expiry.el (org-expiry-insinuate):
(org-expiry-deinsinuate):
(org-expiry-process-entry):
(org-expiry-process-entries):
(org-expiry-archive-subtree):
(org-expiry-add-keyword):
* lisp/ob-core.el (org-babel-expand-src-block):
(org-babel-sha1-hash):
* lisp/org-agenda.el (org-toggle-sticky-agenda):
(org-agenda-write):
(org-agenda-dim-blocked-tasks):
(org-agenda-redo):
(org-agenda-show-1):
(org-agenda-set-tags):
* lisp/org-lint.el (org-lint):
* lisp/org-table.el (org-table-blank-field):
(org-table-current-column):
(org-table-current-dline):
(org-table-sort-lines):
(org-table-sum):
(org-table-rotate-recalc-marks):
(org-table-eval-formula):
(orgtbl-send-table):
* lisp/org.el (org-mode):
(org-copy-subtree):
(org-paste-subtree):
(org-store-link):
(org-todo):
(org-occur):
(org-create-math-formula):
(org-toggle-inline-images):
(org-mark-subtree):
(org-mark-element): Apply removal.
2016-06-23 15:08:03 +02:00
Nicolas Goaziou 75f61e11c3 Remove `org-inhibit-invisibility'
* lisp/org-macs.el (org-inhibit-invisibility): Remove function.
* lisp/org.el (org-set-tags): Apply removal.
2016-06-23 14:28:20 +02:00
Nicolas Goaziou 5721fd890a Remove `org-maybe-intangible'
* lisp/org-macs.el (org-maybe-intangible): Remove macro.
* lisp/org.el (org-activate-bracket-links):
(org-hide-wide-columns): Apply removal.
2016-06-23 14:25:51 +02:00
Nicolas Goaziou ff80654617 Mark `org-bound-and-true-p' as obsolete
* lisp/org-macs.el (org-bound-and-true-p): Remove macro.
* lisp/org-compat.el (org-bound-and-true-p): Deprecated alias for
  `bound-and-true-p'.
* lisp/ob-core.el (org-babel-confirm-evaluate):
* lisp/org-agenda.el (org-agenda-write):
(org-agenda-add-entry-text):
(org-agenda-todo):
* lisp/org-clock.el (org-clocktable-defaults):
(org-clocktable-write-default):
* lisp/org-colview.el (org-columns):
(org-columns--compute-spec):
(org-agenda-columns):
* lisp/org-indent.el (org-indent-set-line-properties):
* lisp/org-inlinetask.el (org-inlinetask-fontify):
* lisp/org-mobile.el (org-mobile-write-agenda-for-mobile):
* lisp/org-pcomplete.el (pcomplete/org-mode/file-option/options):
(pcomplete/org-mode/file-option/infojs_opt):
* lisp/org-src.el (org-src-mode-configure-edit-buffer):
(org-edit-table.el):
* lisp/org.el (org-store-link):
(org-refile):
(org-get-export-keywords):
(org-set-tags):
(org-order-calendar-date-args):
(org-mode-restart):
(org-tbl-menu):
(org-beginning-of-line):
(org-end-of-line):
(org-kill-line):
(org-truely-invisible-p):
(org-remove-flyspell-overlays-in): Use `bound-and-true-p' instead of
`org-bound-and-true-p'.
2016-06-23 14:23:52 +02:00
Nicolas Goaziou 23d84285bf Deprecate `org-char-to-string' in favor of `char-to-string'
* lisp/org-macs.el (org-char-to-string): Remove function.
* lisp/org-compat.el (org-char-to-string): Declare function as obsolete.
* lisp/org.el (org-link-unescape-compound): Apply removal.
2016-06-23 14:10:34 +02:00
Nicolas Goaziou d13b0745dc Mark a few functions as obsolete
* lisp/ob-R.el (org-babel-variable-assignments:R):
* lisp/ob-ref.el (org-babel-ref-goto-headline-id):
* lisp/org-agenda.el (org-agenda-prepare-window):
(org-agenda-switch-to):
* lisp/org-capture.el (org-capture-goto-target):
* lisp/org-clock.el (org-clock-goto):
(org-clock-special-range):
* lisp/org-ctags.el (org-ctags-visit-buffer-or-file):
* lisp/org-eshell.el (org-eshell-open):
* lisp/org-feed.el (org-feed-show-raw-feed):
* lisp/org-id.el (org-id-goto):
* lisp/org-irc.el (org-irc-visit-erc):
* lisp/org-macs.el (org-string-nw-p):
* lisp/org-mobile.el (org-mobile-apply):
* lisp/org-src.el (org-src-switch-to-buffer):
* lisp/org.el (org-get-location):
(org-tree-to-indirect-buffer):
(org-mark-ring-goto):
(org-refile):
(org-add-log-note):
(org-revert-all-org-buffers):
(org-switchb):
(org-cycle-agenda-files):
(org-submit-bug-report):
(org-goto-marker-or-bmk):
* lisp/ox-html.el (org-html-htmlize-generate-css): Silence byte
  compiler.

The following functions are marked as obsolete:
- `org-string-match-p'
- `org-number-sequence'
- `org-floor*'
- `org-pop-to-buffer-same-window'
- `org-delete-directory'
- `org-buffer-narrowed-p'
2016-06-23 10:00:00 +02:00
Nicolas Goaziou 705904552c Deprecate `org-find-if' in favor of `cl-find-if'
* lisp/org.el (org-find-if): Remove function.
(org-key):
* contrib/lisp/org-contacts.el (org-contacts-db-need-update-p):
(org-contacts-filter):
(org-contacts-test-completion-prefix):
(org-contacts-remove-ignored-property-values): Use `cl-find-if'
* lisp/org-compat.el (org-find-if): Mark function as an obsolete alias
  for `cl-find-if'.
2016-06-23 09:22:49 +02:00
Nicolas Goaziou a24f339f58 Work around a display bug when previewing LaTeX fragments
* lisp/org.el (org-format-latex): Change signature.
(org-toggle-latex-fragment):
* lisp/ox-html.el (org-html-format-latex): Apply signature change.
2016-06-23 00:56:18 +02:00
Nicolas Goaziou 2f2e6625ac Work around a display bug when previewing LaTeX fragments
* lisp/org.el (org-format-latex): Change signature.
(org-toggle-latex-fragment):
* lisp/ox-html.el (org-html-format-latex): Apply signature change.
2016-06-23 00:33:22 +02:00
Nicolas Goaziou 24852ef060 Merge branch 'maint' 2016-06-22 22:43:19 +02:00
Nicolas Goaziou ecffcbcf1c Tiny fix to `org-set-effort'
* lisp/org.el (org-set-effort): Use `equal' instead of `string='.

Since (string= "nil" nil) is non-nil, a "nil" heading could be mistaken
for the current clocked task if `org-clock-current-task' is not bound,
or if there is no current clocked task.
2016-06-22 22:39:50 +02:00
Nicolas Goaziou 4f63cfabb3 Deprecate `org-babel-trim' in favor of `org-trim'
* lisp/org.el (org-trim): Add optional argument.

* contrib/lisp/ob-mathematica.el (org-babel-execute:mathematica):
* contrib/lisp/org-bibtex-extras.el (obe-html-export-citations):
* contrib/lisp/org-mime.el (org-mime-compose):
* lisp/ob-C.el (org-babel-C-execute):
* lisp/ob-calc.el (org-babel-execute:calc):
* lisp/ob-clojure.el (org-babel-expand-body:clojure):
* lisp/ob-core.el (org-babel-initiate-session):
(org-babel-parse-multiple-vars):
(org-babel-read-element):
(org-babel-insert-result):
(org-babel-expand-noweb-references):
(org-babel-trim): Mark obsolete.
* lisp/ob-forth.el (org-babel-forth-session-execute):
* lisp/ob-fortran.el (org-babel-execute:fortran):
* lisp/ob-haskell.el (org-babel-execute:haskell):
* lisp/ob-latex.el (org-babel-expand-body:latex):
* lisp/ob-lisp.el (org-babel-expand-body:lisp):
* lisp/ob-ocaml.el (org-babel-execute:ocaml):
* lisp/ob-octave.el (org-babel-octave-evaluate-session):
* lisp/ob-python.el (org-babel-python-evaluate-external-process):
(org-babel-python-evaluate-session):
* lisp/ob-ref.el (org-babel-ref-split-args):
* lisp/ob-ruby.el (org-babel-ruby-evaluate):
* lisp/ob-shell.el (org-babel-sh-evaluate):
* lisp/ob-table.el (org-sbe):
* lisp/ob-tangle.el (org-babel-spec-to-string):
* lisp/org-bibtex.el (org-bibtex-get):
* testing/lisp/test-ob.el (test-ob/parse-header-args): Use `org-trim'
  instead of `org-babel-trim'.
2016-06-21 15:33:00 +02:00
Kyle Meyer 160efb5129 Merge branch 'maint' 2016-06-19 14:18:10 -04:00
Kyle Meyer 792bb9b655 org-set-effort: Fix void variable error
* lisp/org.el (org-set-effort): Check if org-clock-current-task is
  defined because org-clock.el may not be loaded yet.
2016-06-19 14:11:25 -04:00
Kyle Meyer b237d4df04 org-set-effort: Remove extra space in prompt
* lisp/org.el (org-set-effort): Make spacing across different prompt
  cases consistent.  Simplify prompt concatenation.
2016-06-19 14:11:20 -04:00
Nicolas Goaziou 4b3bdd019e Merge branch 'maint' 2016-06-17 00:41:54 +02:00
Nicolas Goaziou 75238d25ed Fix refiling to an empty headline
* lisp/org.el (org-refile): Do not assume the headline is not empty.

Reported-by: Fabrice Popineau <fabrice.popineau@supelec.fr>
<http://permalink.gmane.org/gmane.emacs.orgmode/107772>
2016-06-17 00:39:52 +02:00
Nicolas Goaziou 65e4370d46 Merge branch 'maint' 2016-06-11 13:40:52 +02:00
Nicolas Goaziou 819cdb3a09 Preserve list visibility when inserting a new item
* lisp/org.el (org-insert-heading): Do not reveal gratuitously too much
  context before inserting an item.
* testing/lisp/test-org.el (test-org/insert-heading): Add test.

Reported-by: Steinar Bang <sb@dod.no>
<http://permalink.gmane.org/gmane.emacs.orgmode/107665>
2016-06-11 13:33:50 +02:00
Nicolas Goaziou b9c64b1ecb Merge branch 'maint' 2016-06-10 18:24:55 +02:00
Nicolas Goaziou c07175bfaa Remove reference to removed function in menu
* lisp/org.el (org-org-menu): Remove reference to
  `org-beamer-insert-options-template'.

Reported-by: Giacomo M <jackjackk@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/107658>
2016-06-10 18:22:16 +02:00
Rasmus af463605f1 Document org-block face changes
* doc/org.texi (Editing source code): Document org-block and
  org-block-LANG faces.
* lisp/org-faces.el (org-block): Mention org-block-LANG faces.
* lisp/org.el (org-src-fontify-natively): Add reference to org-block.
* etc/ORG-NEWS: Update entry.
2016-06-10 10:11:03 +02:00
Rasmus b0def38b4b org-src: Allow per language block face
* lisp/org-src.el (org-src-font-lock-fontify-block):
* lisp/org.el (org-fontify-meta-lines-and-blocks-1): Allow per-block
  face.

Suggested-by: Karl Voit <devnull <at> Karl-Voit.at>
<http://thread.gmane.org/gmane.emacs.orgmode/103833/focus=107645
2016-06-10 09:20:30 +02:00
Marco Wahl 7e57cf5d40 org: Fix tags extraction
* lisp/org.el (org-get-tags-at): Use non-greedy match up to colon to
  match all tags (and not just the last.)
* testing/lisp/test-org.el (test-org/tags-at): One test to cover the
  issue.
2016-06-09 10:06:14 +02:00
Don March bd49486db9 Make today's deadlines "close" without lead time
* lisp/org.el (org-deadline-close): A timestamp is close if the days
  between now and the timestamp are less then or equal to the days of
  lead time.

* testing/lisp/test-org.el: Add tests for org-deadline-close.
2016-06-04 20:45:41 +02:00
Don March 42620c1efa Rename org-deadline-is-close to have -p suffix
* lisp/org-agenda.el
  (org-agenda-check-for-timestamp-as-reason-to-ignore-todo-item):
* lisp/org.el (org-deadline-close): Rename to...
  (org-deadline-close-p): ...this.

* testing/lisp/test-org.el (test-org/deadline-close): Rename to...
  (test-org/deadline-close-p): ...this.
2016-06-04 20:39:15 +02:00
Don March 43b5ca1626 Make today's deadlines "close" without lead time
* lisp/org.el (org-deadline-close): A timestamp is close if the days
  between now and the timestamp are less then or equal to the days of
  lead time.

* testing/lisp/test-org.el: Add tests for org-deadline-close.
2016-06-04 20:39:15 +02:00
Nicolas Goaziou 3fd361eb77 Merge branch 'maint' 2016-06-02 13:33:34 +02:00
Yasushi SHOJI 361fa80eba Fix tag width calculation for multi-column chars
* lisp/org.el (org-align-tags-here): Fix tag width calculation for
  multi-column chars.

Some characters have multiple column width.  Calculating string width
with points gives a wrong value than actual display width.  Use
`string-width' instead.

Here is an ECM for this problem.  `M-x org-update-statistics-cookies` or
`C-c #` on bar moves the tag on the headline.

* foo [0/0]								🔤
** child
* bar [0/0]							     :日本語:
** child
12345678901234567890123456789012345678901234567890123456789012345678901234567890
         1         2         3         4         5         6         7         8
2016-06-02 13:31:09 +02:00
Nicolas Goaziou ecf20715e2 Merge branch 'maint' 2016-06-01 14:54:20 +02:00
Nicolas Goaziou 1f3d72e8b4 Fix TODO case-sensitivity in `org-get-heading'
* lisp/org.el (org-get-heading): Prevent removing false-positive TODO
  keywords due to case-insensitivity.
* testing/lisp/test-org.el (test-org/get-heading): New test.
2016-06-01 14:49:59 +02:00
Nicolas Goaziou 319c05f1dc Merge branch 'maint' 2016-06-01 00:44:55 +02:00
Nicolas Goaziou a1df8cfe71 Fix case-sensitivity of TODO keywords in imenu
* lisp/org.el (org-imenu-get-tree): Todo keywords are case-sensitive.

Reported-by: Georgiy Tugai <georgiy.tugai@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/107500>
2016-06-01 00:43:28 +02:00
Nicolas Goaziou 11d6ebc60f Fix `org-in-regexp'
* lisp/org.el (org-in-regexp): Fix VISUALLY optional argument.  Also
  prevent useless searches past the point.  Improve docstring.

* testing/lisp/test-org.el (test-org/in-regexp): New test.
2016-05-31 23:34:14 +02:00