Commit Graph

15169 Commits

Author SHA1 Message Date
Nicolas Goaziou 1d60d5ee03 org-capture: Correctly store position of captured entry
* lisp/org-capture.el (org-capture-place-entry): Store position at the
  beginning of the capture entry, not at its end.
* testing/lisp/test-org-capture.el (test-org-caputre/entry): Add test.
2018-12-06 15:07:03 +01:00
Nicolas Goaziou b423a6187a Merge branch 'master' into next 2018-12-06 00:25:45 +01:00
Nicolas Goaziou 503ede74bc org-clock: Fix resolving clocks
* lisp/org-clock.el (org-clock-resolve-clock): Fix resolving clocks
  when the entry is empty barring the clock itself and possibly the
  clock drawer, and `org-clock-out-remove-zero-time-clocks' is
  non-nil.
2018-12-06 00:24:14 +01:00
Nicolas Goaziou 6f8347a834 org-clock: Use `org-link-display-format'
* lisp/org-clock.el (org-clock--mode-line-heading): Use
  `org-link-display-format'.
2018-12-02 14:49:02 +01:00
Nicolas Goaziou df7b8cdf70 org-colview: Remove `org-columns-compact-links'
* lisp/org-colview.el (org-columns--displayed-value): Use
  `org-link-display-format' instead.
2018-12-02 14:03:53 +01:00
Nicolas Goaziou a253f4f7ff Merge branch 'master' into next 2018-11-30 21:20:56 +01:00
Nicolas Goaziou 04641c4bbe org-pcomplete: Silence byte-compiler 2018-11-30 21:20:39 +01:00
Nicolas Goaziou 4ef9228617 Silence byte-compiler 2018-11-30 21:18:29 +01:00
Nicolas Goaziou b3c40c32b6 ox-latex: Extend LaTeX attributes and captions to "table.el" tables
* lisp/ox-latex.el (org-latex--decorate-table): New function.
(org-latex--org-table): Use new function.
(org-latex--table.el-table): Use new function.
2018-11-30 18:43:30 +01:00
Nicolas Goaziou 366d38633a Merge branch 'master' into next 2018-11-28 15:13:40 +01:00
Nicolas Goaziou d3f9cd0eef ox-latex: Use "french" instead of "frenchb" Babel language
* lisp/ox-latex.el (org-latex-babel-language-alist): Use "french"
  instead of obsolete "frenchb".
2018-11-28 15:12:56 +01:00
Nicolas Goaziou 499a590034 Merge branch 'master' into next 2018-11-28 00:28:53 +01:00
Nicolas Goaziou e3fdef74b9 Improve docstrings
* lisp/org.el (org-latex-default-packages-alist):
(org-latex-packages-alist): Improve docstring.
* lisp/ox-latex.el (org-latex--remove-packages): Small refactoring.
2018-11-28 00:26:24 +01:00
Nicolas Goaziou 01a4f33568 Merge branch 'master' into next 2018-11-27 23:43:36 +01:00
Nicolas Goaziou 3216cbe776 ox: Preserve properties when duplicating buffer before exporting
* lisp/ox.el (org-export--generate-copy-script): Preserve properties
  when duplicating buffer before exporting.

Reported-by: John Kitchin <jkitchin@andrew.cmu.edu>
<http://lists.gnu.org/r/emacs-orgmode/2018-11/msg00329.html>
2018-11-27 23:42:16 +01:00
Nicolas Goaziou 776679ee0a Merge branch 'master' into next 2018-11-27 23:23:09 +01:00
Nicolas Goaziou b16feed40c Normalize blank lines with <C-RET>
* lisp/org.el (org-insert-heading): Make C-RET more predictable.  In
  particular, it should not eat all the blank lines at the end of the
  tree.

Reported-by: David Masterson <dsmasterson@outlook.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-11/msg00275.html>
2018-11-27 23:21:06 +01:00
Nicolas Goaziou 61396763ac Merge branch 'master' into next 2018-11-27 21:47:38 +01:00
Nicolas Goaziou d6e20dbcff ox-latex: Gracefully handle export of source blocks without lang
* lisp/ox-latex.el (org-latex-src-block): Handle export of source
  blocks without language.

Reported-by: John Ciolfi <ciolfi@mathworks.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-11/msg00321.html>
2018-11-27 21:46:18 +01:00
Matt Price 819e98afd0 org-src: Do not restore window config when exiting an edit buffer
org-src.el (org-src--saved-temp-window-config): Remove variable.
* lisp/org-src.el (org-src--edit-element): Apply removal.
2018-11-27 21:32:07 +01:00
Nicolas Goaziou 655c08dcc8 org-clock: Fix failing tests
* lisp/org-clock.el (org-clocktable-steps): Fix type of START and END
  bindings.
2018-11-27 00:18:28 +01:00
Nicolas Goaziou 19a75de480 Merge branch 'master' into next 2018-11-26 23:56:55 +01:00
Nicolas Goaziou cd60a35fe1 Fix opening custom ID links with percent escaped syntax
* lisp/org.el (org-open-at-point): Un-escape percent escaped path.
* testing/lisp/test-org.el (test-org/custom-id): Add test.

Reported-by: stardiviner <numbchild@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-11/msg00303.html>
2018-11-26 23:56:17 +01:00
Nicolas Goaziou 229ed4b475 Merge branch 'master' into next 2018-11-26 19:53:15 +01:00
Nicolas Goaziou 32a7305dda Fix <RET> on table.el tables
* lisp/org.el (org-return): Prevent wrong type error when on
  a table.el table.
2018-11-26 19:51:51 +01:00
Nicolas Goaziou d228909d15 org-element: Be more strict when looking for table.el tables
* lisp/org-element.el (org-element--current-element): Increase number
  of checks to avoid more false positive.

In particular "+-+" is not recognized anymore as a table.el table.
2018-11-26 19:50:08 +01:00
Nicolas Goaziou 86a6087f92 Merge branch 'master' into next 2018-11-25 02:03:14 +01:00
Nicolas Goaziou 8b7ba29b60 org-pcomplete: Fix tag completion
* lisp/org-pcomplete.el (org-thing-at-point): Only complete where tags
  could be located.
(pcomplete/org-mode/tag): Add paring argument to avoid looking at
other arguments on the same line.
* testing/lisp/test-org-pcomplete.el (test-org-pcomplete/tag): New test.

Reported-by: Alain.Cochard@unistra.fr
<http://lists.gnu.org/r/emacs-orgmode/2018-11/msg00154.html>
2018-11-25 02:01:41 +01:00
Nicolas Goaziou a5df655f76 Merge branch 'master' into next 2018-11-17 21:47:12 +01:00
Nicolas Goaziou fc9cf62bf3 org-clock: Fix special strings in :tstart and :tend
* lisp/org-clock.el (org-clocktable-steps): Handle relative time
  strings like "<-1w>".
2018-11-17 21:45:16 +01:00
Nicolas Goaziou b5640ea801 Merge branch 'master' into next 2018-11-17 16:34:45 +01:00
Nicolas Goaziou 7bf3c10819 Fix speed regression introduced in change about repeated timestamps
* lisp/org.el (org-auto-repeat-maybe): Fix speed regression introduced
  in "Also obey to repeaters in inactive time stamps".

Reported-by: Marco Wahl <marcowahlsoft@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-11/msg00078.html>
2018-11-17 16:33:04 +01:00
Marco Wahl e3a0e6fb3c Merge branch 'master' into next 2018-11-12 12:50:37 +01:00
Marco Wahl feb44212b5 org-agenda: slightly changed hints for user about searching again 2018-11-12 12:47:40 +01:00
Nicolas Goaziou b8b7d00864 Merge branch 'master' into next 2018-11-11 22:24:21 +01:00
Nicolas Goaziou afcb1d3899 Fix typo
* lisp/org.el (org-get-tags): Fix typo in docstring.
2018-11-11 22:24:00 +01:00
Nicolas Goaziou 683199e6e1 Merge branch 'master' into next 2018-11-10 22:00:34 +01:00
Nicolas Goaziou 5dfbe46b1e ox-odt: Fix typo
* lisp/ox-odt.el (org-odt-template): Fix typo.
2018-11-10 21:59:52 +01:00
Nicolas Goaziou a97903944b Merge branch 'master' into next 2018-11-10 21:57:29 +01:00
Nicolas Goaziou 9056d2b706 ox-odt: Fix last commit
* lisp/ox-odt.el (org-odt-template): Add missing `org-strip-quote'
  call.
2018-11-10 21:56:10 +01:00
Nicolas Goaziou cd12a9eefe Merge branch 'master' into next 2018-11-10 20:00:31 +01:00
Nicolas Goaziou bea916d9f6 ox-odt: Improve styles file handling
* lisp/ox-odt.el (org-odt-template): Allow double quotes around file
  name.  Better error handling.  Small refactoring.
2018-11-10 20:00:02 +01:00
Nicolas Goaziou af81211fdc Also obey to repeaters in inactive time stamps
* lisp/org.el (org-repeat-re): Accept inactive time stamps.
(org-auto-repeat-maybe): Small refactoring.  Find additional repeaters
also in inactive time stamps.
* testing/lisp/test-org.el (test-org/auto-repeat-maybe): Add test.

Reported-by: Leo Gaspard <orgmode@leo.gaspard.io>
<http://lists.gnu.org/r/emacs-orgmode/2018-11/msg00078.html>
2018-11-10 19:59:48 +01:00
Nicolas Goaziou 88ef9f26de ox-texinfo: Allow quotes around value in TEXINFO_FILENAME keyword
* lisp/ox-texinfo.el (org-texinfo-template): Allow quotes around value
  in TEXINFO_FILENAME keyword.

This is consistent with usual Org behavior: file names can optionally
be enclosed within quotes.
2018-11-10 09:00:45 +01:00
Nicolas Goaziou f5c2659bb8 Use `org-strip-quote' when possible
* lisp/org-macs.el (org-unbracket-string):
(org-strip-quotes): Allow nil values.
* lisp/org-lint.el (org-lint-wrong-include-link-parameter):
* lisp/org-macro.el (org-macro--collect-macros):
* lisp/org.el (org--setup-collect-keywords):
(org-edit-special):
* lisp/ox.el (org-export--get-inbuffer-options):
(org-export--list-bound-variables):
(org-export-expand-include-keyword): Use `org-strip-quote' instead of
`org-unbracket-string' whenever possible.
2018-11-10 08:58:31 +01:00
Nicolas Goaziou fefe3d1a37 org-compat: Fix obsolete alias
* lisp/org-compat.el (org-remove-double-quotes): Suggest to use
  `org-strip-quotes' instead of `org-unbracket-string'.
2018-11-10 08:55:37 +01:00
Kyle Meyer a3741d99b8 Merge branch 'master' into next 2018-11-09 11:02:00 -05:00
Kyle Meyer 9ffd5aabc9 Fix mapcar call from 9df82be07
* lisp/org.el (org-tags-expand): Add missing mapcar argument.
2018-11-09 11:01:53 -05:00
Nicolas Goaziou 4a2ef00804 Merge branch 'master' into next 2018-11-08 18:23:03 +01:00
Nicolas Goaziou 9df82be074 Fix tag groups expansion as a regexp
* lisp/org.el (org--tags-expand-group): New function.
(org-tags-expand): Refactor code.  Fix expansion of identical tag
groups in the same match string.  Fix docstring.  Remove unused
argument.
* testing/lisp/test-org.el (test-org/tags-expand): New test.

Reported-by: Omari Norman <omari@smileystation.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00360.html>
2018-11-08 18:20:57 +01:00
Nicolas Goaziou 1e063b401a Merge branch 'master' into next 2018-11-04 23:40:27 +01:00
Nicolas Goaziou bfb946c7da ox-odt: Read list values in ODT_STYLES_FILE
* lisp/ox-odt.el (org-odt-template): Read value for ODT_STYLES_FILE
  when it is enclosed in round brackets.

Reported-by: Christian Moe <mail@christianmoe.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00418.html>
2018-11-04 23:00:01 +01:00
Nicolas Goaziou 470bf6e27e Merge branch 'master' into next 2018-11-04 16:44:30 +01:00
Nicolas Goaziou 503a1d4d94 Fix coderefs links in non-source buffers
* lisp/org-src.el (org-src-source-file-name): New variable.
(org-src--edit-element): Set new variable.
* lisp/org.el (org-store-link): Store the source file along with the
  coderef so as to insert link in other documents than the one
  where the code block is located.

Reported-by: stardiviner <numbchild@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00293.html>
2018-11-04 16:43:36 +01:00
Nicolas Goaziou 77b417f01a Merge branch 'master' into next 2018-11-04 15:28:07 +01:00
Nicolas Goaziou 44d5286dbf Fix storing links in non-source edit buffers
* lisp/org-src.el (org-src--source-buffer): Rename to `org-src-source-buffer'.
(org-src-source-type): New function.
(org-edit-src-save): Apply renaming.
* lisp/org.el (org-store-link): When in an edit buffer not editing
  a source block, there is no point in inserting a coderef.
2018-11-04 15:26:04 +01:00
Nicolas Goaziou 91153ff14f Tiny refactoring
* lisp/org.el (org-link-search): Tiny refactoring.
2018-11-04 09:06:28 +01:00
Nicolas Goaziou 6e51b42e16 org-clock: Fix wrong type error
* lisp/org-clock.el (org-clocktable-steps): Fix wrong type error.
2018-11-03 21:46:19 +01:00
Nicolas Goaziou 3387666750 Merge branch 'master' into next 2018-11-03 21:00:14 +01:00
Nicolas Goaziou 7d30f5f44a Silence byte-compiler 2018-11-03 20:59:42 +01:00
Nicolas Goaziou 19317db78f Merge branch 'master' into next 2018-11-03 17:06:37 +01:00
Nicolas Goaziou eb8041ef82 Fix storing coderef link on when a code ref already exists
* lisp/org.el (org-store-link): Fix storing coderef link on when
  a code ref already exists.
2018-11-03 17:04:01 +01:00
Nicolas Goaziou ae03104402 org-attach: Attach buffers to tasks
* lisp/org-attach.el (org-attach-buffer): New function.
(org-attach): Call new function.
* doc/org-manual.org (Attachments): Document new function.
2018-11-02 02:04:38 +01:00
Nicolas Goaziou 4241815770 Merge branch 'master' into next 2018-11-01 23:32:32 +01:00
Nicolas Goaziou 6382a6bbb3 org-attach: Fix command string
* lisp/org-attach.el (org-attach): Add missing command letters.
2018-11-01 23:31:57 +01:00
Nicolas Goaziou 363df82b19 Change default value for `org-email-link-description-format'
* lisp/org.el (org-email-link-description-format): Change default
  value.  No longer truncate subject by default.  Add `:safe' keyword.
* doc/org-manual.org (Handling Links): Document change.

Reported-by: "Garreau, Alexandre" <galex-713@galex-713.eu>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00344.html>
2018-11-01 23:00:45 +01:00
Nicolas Goaziou ce37725926 Merge branch 'master' into next 2018-11-01 22:44:36 +01:00
Nicolas Goaziou 85a675b939 org-archive: Fix `org-all-archive-files'
* lisp/org-archive.el (org-all-archive-files): Fix comparison
  function.

Reported-by: Nils Gustafsson <nils.gustafsson@bredband2.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00395.html>
2018-11-01 22:43:43 +01:00
Nicolas Goaziou e02d8cd811 Merge branch 'master' into next 2018-11-01 22:27:01 +01:00
Nicolas Goaziou 42eebb3755 Use `cl-signum' instead of `signum'
* lisp/org.el (org-modify-ts-extra): Use `cl-signum' instead of
  `signum'.
2018-11-01 22:26:21 +01:00
Kevin Brubeck Unhammer 17deb1c7eb org-clock: Handle DST in clocktable
* lisp/org-clock.el (org-clocktable-steps): new fn
  org-clocktable-increment-day to add/subtract days that are not
  exactly 24 hours
* testing/lisp/test-org-clock.el (test-org-clock/clocktable/step): Add
  test for DST.
2018-11-01 19:00:28 +01:00
Nicolas Goaziou dd1d15dcd8 Merge branch 'master' into next 2018-11-01 18:30:25 +01:00
Nicolas Goaziou 67cea44c9f Add docstring for `org-at-heading-p'
* lisp/org.el (org-at-heading-p): Add docstring.

Reported-by: Will Pierce <pierwill@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-11/msg00006.html>
2018-11-01 18:29:35 +01:00
Nicolas Goaziou dabcddfb85 Merge branch 'master' into next 2018-10-26 17:36:19 +02:00
Nicolas Goaziou 4b905774ac org-macs: Fix last commit
* lisp/org-macs.el (org--string-from-props): Do not raise an error on
  unsupported display properties.  Change signature to avoid creating
  new strings unnecessarily.  Update docstring accordingly.
(org-string-width): Apply signature change.
* testing/lisp/test-org-macs.el (test-org/string-width): Add test.

Reported-by: Colin Baxter <m43cap@yandex.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00346.html>
2018-10-26 14:37:57 +02:00
Nicolas Goaziou 9b9fa671b5 Merge branch 'master' into next 2018-10-25 16:55:17 +02:00
Nicolas Goaziou 4832a432f0 ox-ascii: Add missing ASCII and UTF-8 conversion functions
* lisp/ox-ascii.el (org-ascii-convert-region-to-ascii):
(org-ascii-convert-region-to-utf8): New functions.
* doc/org-manual.org (Export in Foreign Buffers): Document new
  functions.

Reported-by: Alexander Adolf <alexander.adolf@condition-alpha.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00294.html>
2018-10-25 16:53:30 +02:00
Nicolas Goaziou 7776482e36 Merge branch 'master' into next 2018-10-25 16:47:25 +02:00
Nicolas Goaziou b886ebbc89 org-macs: `org-string-width' handles images
* lisp/org-macs.el (org--string-from-props): Handle image display
  properties.
(org-string-width): Improve docstring.
2018-10-25 15:34:05 +02:00
stardiviner 2c5df17ed1 ob-clojure: Support new CIDER using sesman to manage sessions
* ob-clojure.el (org-babel-clojure-initiate-session): Improve ob-clojure
  initialize session way to support CIDER new API.
* etc/ORG-NEWS: Add declare for new :session support feature.
2018-10-25 10:33:16 +02:00
stardiviner 4456dc8809 ob-clojure: Support `org-babel-initiate-session'
* ob-clojure.el (org-babel-clojure-initiate-session): Initialize session
for source block.
(org-babel-prep-session:clojure): Prepare Clojure session.
(org-babel-clojure-var-to-clojure): Convert header argument :var into
clojure variables definitions.
(org-babel-variable-assignments:clojure): Support assigning variables
when initializing a session.
2018-10-25 10:28:41 +02:00
Nicolas Goaziou 8da5168dd1 Merge branch 'master' into next 2018-10-23 23:28:38 +02:00
Nicolas Goaziou 17e28d6467 org-capture: Various fixes to item capture
* lisp/org-capture.el (org-capture-place-item): Rewrite function.
* testing/lisp/test-org-capture.el (test-org-capture/abort): Add test.
(test-org-capture/item): New test.
2018-10-23 23:27:28 +02:00
Nicolas Goaziou ea47ed0d76 Merge branch 'master' into next 2018-10-23 01:53:54 +02:00
Nicolas Goaziou 9dbd2993f6 org-capture: Tiny refactoring
* lisp/org-capture.el (org-capture-place-entry): Tiny refactoring.
2018-10-23 01:53:18 +02:00
Nicolas Goaziou b46d4e7b1c org-capture: Remove unnecessary checks
* lisp/org-capture.el (org-capture-place-plain-text): Remove
  unnecessary checks.
2018-10-23 01:46:57 +02:00
Nicolas Goaziou c76486d4e4 org-capture: Fix off-by-one error
* lisp/org-capture.el (org-capture-place-table-line): Fix narrowing.
2018-10-23 01:32:55 +02:00
Nicolas Goaziou 7a4a10dea0 org-capture: Fix plain capture at the end of the buffer.
* lisp/org-capture.el (org-capture-place-plain-text): Fix plain
  capture at the end of the buffer.
* testing/lisp/test-org-capture.el (test-org-capture/plain): New test.
2018-10-23 01:26:17 +02:00
Nicolas Goaziou ad0fce50eb org-capture: Small fix to table line capture
* lisp/org-capture.el (org-capture-place-table-line): Handle abort
  table line insertion more gracefully.
* testing/lisp/test-org-capture.el (test-org-capture/abort): Add tests
2018-10-23 00:43:59 +02:00
Nicolas Goaziou e7b5cc4d29 Merge branch 'master' into next 2018-10-22 23:42:07 +02:00
Nicolas Goaziou aaa3372b8b org-capture: Fix capture aborting
* lisp/org-capture.el (org-capture-place-entry): Fix delimiters for
  region to delete when aborting capture.
* testing/lisp/test-org-capture.el (test-org-capture/abort): Add test.
2018-10-22 23:40:49 +02:00
Nicolas Goaziou 796a7c4c0e Merge branch 'master' into next 2018-10-22 22:26:41 +02:00
Nicolas Goaziou 0fa8bb4c51 org-capture: Inserting an entry doesn't break structure
* lisp/org-capture.el (org-capture-place-entry): Carefully narrow
  buffer to not alter following headline.  Also include leading empty
  lines in region to remove when cancelling capture.
* testing/lisp/test-org-capture.el (test-org-caputre/entry): New test.
(test-org-capture/abort): Rename test.

Reported-by: Martin Yrjölä <martin.yrjola@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00256.html>
2018-10-22 22:22:21 +02:00
Nicolas Goaziou 42abd18c6d Merge branch 'master' into next 2018-10-20 10:53:01 +02:00
Nicolas Goaziou 4a2e7c8db9 ox-beamer: Do not add automatic label when "allowframebreaks" is set
* lisp/ox-beamer.el (org-beamer--format-frame): Do not add automatic
  label when "allowframebreaks" is set in default options.  Do not
  check only headline properties.
2018-10-20 10:51:06 +02:00
Mark A. Hershberger eb806aa503 ox-odt: Add support for text:start-value
* lisp/ox-odt.el (org-odt-item): Support starting lists at a set
number via "text:start-value".  Without this, ODF files just restart
numbering when they should continue with the specified number.
2018-10-19 21:49:54 +02:00
Nicolas Goaziou 1f913ecc36 Merge branch 'master' into next 2018-10-18 18:15:59 +02:00
Nicolas Goaziou 9e05a6ac8a org-pcomplete: Small reorganization 2018-10-18 18:15:30 +02:00
Nicolas Goaziou a6a7edc1cb org-pcomplete: Silence byte-compiler 2018-10-18 18:01:33 +02:00
Nicolas Goaziou c25ac5ecd4 org-pcomplete: Fix search string completion
* lisp/org-pcomplete.el (pcomplete/org-mode/tag): Use
  `org-get-heading'.
2018-10-18 17:54:35 +02:00
Nicolas Goaziou 961367bf6a org-pcomplete: Add colons when completing abbrev links
* lisp/org-pcomplete.el (pcomplete/org-mode/todo): Add colons when
  completing abbrev links.
2018-10-18 17:54:35 +02:00
Nicolas Goaziou ccfb9d44de org-pcomplete: Complete drawer names
* lisp/org-pcomplete.el (pcomplete/org-mode/drawer): New function.
2018-10-18 17:54:35 +02:00
Nicolas Goaziou 9d4af29feb org-pcomplete: Complete lower case node properties
* lisp/org-pcomplete.el (pcomplete/org-mode/block-option/src):
  Complete lower case node properties.
2018-10-18 17:54:35 +02:00
Nicolas Goaziou 2c7ea57ede org-pcomplete: Fix glitches in completion
* lisp/org-pcomplete.el (org-thing-at-point): Fix various parts of the
  function.
2018-10-18 17:54:33 +02:00
Nicolas Goaziou 2a1179a946 Merge branch 'master' into next 2018-10-14 16:52:25 +02:00
Nicolas Goaziou 823d9048e7 org-goto: Fix fontification in deep levels
* lisp/org-goto.el (org-goto-local-auto-isearch): Sill fontify when
  diving in deeper outline levels.
2018-10-14 16:51:06 +02:00
Nicolas Goaziou 9d6a9e1739 Merge branch 'master' into next 2018-10-14 09:58:55 +02:00
Nicolas Goaziou f12f9b4f28 Fix fontification of links within verbatim markup
* lisp/org.el (org-do-emphasis-faces): Prevent fontification of links
  within verbatim markup.
2018-10-14 09:57:47 +02:00
Nicolas Goaziou b9d0e7e7f6 Merge branch 'master' into next 2018-10-13 23:31:09 +02:00
Nicolas Goaziou ee4af96202 org-clock: Fix typo in docstring
* lisp/org-clock.el (org-clock-special-range): Fix typo in docstring.
2018-10-13 23:27:47 +02:00
Gong Qijian 2b96fc9171 ob-core: Fix `org-babel--string-to-number'
* lisp/ob-core.el (org-babel--string-to-number): Fix the regular expression.
* testing/lisp/test-ob.el (test-ob/string-to-number): Test cases.

If people write the data in the form "0001"", it means that he wants to
treat it as a string.

TINYCHANGE

> #+name: TBL
> |   id | name   | age |
> |------|--------|-----|
> | 0001 | Apollo |  16 |
> | 0002 | Bmw    |  16 |
>
> #+BEGIN_SRC emacs-lisp :results value pp :var tbl=TBL
> (mapc 'print tbl)
> #+END_SRC
>
> #+RESULTS:
> : (("0001" "Apollo" 16)
> :  ("0002" "Bmw" 16))

TINYCHANGE
2018-10-13 23:22:05 +02:00
Kyle Meyer 1c5339e974 Merge branch 'master' into next 2018-10-13 12:17:17 -04:00
Kyle Meyer aa4e0a5453 Merge branch 'maint' 2018-10-13 12:13:06 -04:00
Kyle Meyer e2f2502757 Fix typo in docstring
* lisp/org-agenda.el
(org-agenda-move-date-from-past-immediately-to-today): Fix typo.
2018-10-13 11:55:04 -04:00
Nicolas Goaziou 36c7bada28 Merge branch 'master' into next 2018-10-13 16:54:39 +02:00
Michaël Cadilhac d9fdc204cc org.el: Fix typo
* lisp/org.el (org-enforce-todo-checkbox-dependencies): Fix typo.

TINYCHANGE
2018-10-13 16:54:01 +02:00
Nicolas Goaziou 100edaccd1 Implement `month' and `year' steps in clock tables
* doc/org-manual.org (The clock table): Update manual.
* lisp/org-clock.el (org-clocktable-steps): Rewrite function.  Add
  `month' and `year' steps.
* testing/lisp/test-org-clock.el (test-org-clock/clocktable/step): Add
  tests.
2018-10-13 16:22:43 +02:00
Nicolas Goaziou 5341312b79 Merge branch 'master' into next 2018-10-11 00:02:46 +02:00
Nicolas Goaziou 2fda33bfef ob-tangle: Fix tangling order
* lisp/ob-tangle.el (org-babel-tangle-collect-blocks): Preserver order
  of code blocks from the source document.
* testing/lisp/test-ob-tangle.el (ob-tangle/block-order): New test.

Reported-by: Kaushal Modi <kaushal.modi@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00062.html>
2018-10-11 00:01:50 +02:00
Nicolas Goaziou 6a12f65453 Merge branch 'master' into next 2018-10-09 18:27:39 +02:00
Nicolas Goaziou 0df6d9f782 org-clock: Fix `org-clock-in'
* lisp/org-clock.el (org-clock-in): Do not stop clock when clocking-in
  a task already being clocked.

Reported-by: Marcin Borkowski <mbork@mbork.pl>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00095.html>
2018-10-09 18:25:11 +02:00
Nicolas Goaziou cbe1d76dc2 ox-texinfo: Fix quotations
* lisp/ox-texinfo.el (org-texinfo-quote-block): Do not use NAME
  keyword as the emphasized tag.  Use a dedicated :tag attribute
  instead.  Also add :author attribute.
* doc/org-manual.org (Quotations in Texinfo export): New section.
2018-10-07 22:32:03 +02:00
Nicolas Goaziou 100541b53c Bump version keyword to 9.3 2018-10-06 12:12:13 +02:00
Nicolas Goaziou ffad253307 Merge branch 'master' into next 2018-10-06 09:50:52 +02:00
Nicolas Goaziou 1fbae137da Silence byte-compiler 2018-10-06 09:50:32 +02:00
Nicolas Goaziou da87967602 Merge branch 'master' into next 2018-10-06 09:45:01 +02:00
Nicolas Goaziou e7911a0fb1 org-macs: Add missing docstring
* lisp/org-macs.el (org-current-line-string): Add missing docstring.
2018-10-06 09:44:35 +02:00
Nicolas Goaziou 1b62a56498 Merge branch 'master' into next 2018-10-06 09:42:04 +02:00
Nicolas Goaziou 5cc69a9ebf Deprecate `org-babel-strip-quotes' in favor of `org-strip-quotes'
* lisp/ob-core.el (org-babel-strip-quotes): Remove function.
* lisp/org-macs.el (org-strip-quotes): New function.
* lisp/org-compat.el (org-babel-strip-quotes): Alias for new function.
* lisp/ob-haskell.el (org-babel-execute:haskell):
* lisp/ob-octave.el (org-babel-octave-evaluate-session): Use new function.
2018-10-06 09:40:33 +02:00
Nicolas Goaziou 26ed66b233 ob: :file and :file-ext no longer imply :results file
* lisp/ob-core.el (org-babel-execute-src-block): ":results file" must
  be specified in order to return a file.
(org-babel-merge-params): :file and :file-ext no longer imply :results
file.
* testing/lisp/test-ob.el (test-ob/indented-cached-org-bracket-link):
(test-ob/result-file-link-type-header-argument):
(test-ob/result-graphics-link-type-header-argument): Update tests.

Deducing the results from some other arguments is not obvious.
Moreover, it prevents users from setting, e.g., :file-ext, in a node
property, as every block would then create a file.

Reported-by: Alex Fenton <alex@pressure.to>
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00469.html>
2018-10-06 08:56:05 +02:00
Nicolas Goaziou 0954d4c258 Merge branch 'master' into next 2018-10-04 22:52:53 +02:00
Nicolas Goaziou 2ada40b796 Fix `org-paste-subtree' when called at the end of a headline
* lisp/org.el (org-paste-subtree): Fix `org-paste-subtree' when called
  at the end of a headline.

Reported-by: Dale Sedivec <dale@codefu.org>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00050.html>
2018-10-04 22:50:09 +02:00
Nicolas Goaziou bb36c0c8ab Refactor `org-babel-load-file'
* lisp/org.el (org-babel-load-file): Refactor code.
2018-10-03 18:44:34 +02:00
Benjamin Motz 3cb4ffe957 org-colview: Add property :exclude-tags to column view table
* lisp/org-colview.el (org-columns--capture-view): Add parameter.
(org-dblock-write:columnview): Add new property.
* doc/org-manual.org (Capturing column view): Document feature.
* testing/lisp/test-org-colview.el (test-org-colview/dblock): Add
  test.

This addition allows to specify a list of tags to exclude from column
view tables.

TINYCHANGE
2018-10-03 18:44:34 +02:00
Nicolas Goaziou bfd481be42 ob-core: Remove `org-babel-set-current-result-hash'
* lisp/ob-core.el (org-babel-set-current-result-hash): Remove
  function, unused through the code base.
2018-10-03 18:44:34 +02:00
Nicolas Goaziou 144c27e39d org-keys: Extract key bindings into their own library
* lisp/org.el (org-replace-disputed):
(org-use-extra-keys):
(org-disputed-keys):
(org-key):
(org-defkey):
(org-use-speed-commands):
(org-speed-commands-user):
(org-follow-link-hook):
(org-tab-follows-link):
(org-return-follows-link):
(org-return-follows-link):
(org-mouse-1-follows-link):
(org-mouse-map):
(org-read-date-minibuffer-local-map):
(org-remap):
(org-speed-commands-default):
(org-print-speed-command):
(org-speed-command-help):
(org-speed-move-safe):
(org-speed-command-activate):
(org-babel-speed-command-activate):
(org-speed-command-hook): Move to "org-keys.el".
* lisp/org-keys.el: New file.
* lisp/ob-keys.el: Remove file.
2018-10-03 18:44:34 +02:00
Tobias Schlemmer 3fddb59ddc ox-icalendar: Add support for the iCalendar CLASS property
* ox-icalendar.el (org-icalendar-entry): Pick the CLASS
property and pass it to `org-icalendar--vevent' and
`org-icalendar--vtodo'.
(org-icalendar--vevent,org-icalendar--vtodo): Add a new parameter
`class' and use it to generate a `CLASS' field in the `VEVENT'
entry.

TINYCHANGE
2018-10-03 18:44:34 +02:00
Nicolas Goaziou 0266c36645 Do not use `org-refresh-effort-properties' when initializing Org
* lisp/org.el (org-mode): Do not call `org-refresh-effort-properties'.
(org-set-effort): Avoid using `effort' text property.
* lisp/org-timer.el (org-timer-set-timer): Avoid using
  `effort-minutes' text property.

Limit use of `effort' and `effort-minutes' properties to "org-agenda".
2018-10-03 18:44:34 +02:00
Nicolas Goaziou fc5ee0f87b org-colview: Plain numbers are minutes instead of hours
* lisp/org-colview.el (org-columns--summary-apply-times): Use the same
  rule as everywhere else in Org.
* doc/org-manual.org (Column attributes): Document change.

Reported-by: Bernt Hansen <bernt@norang.ca>
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00294.html>
2018-10-03 18:44:34 +02:00
Nicolas Goaziou 0dd2985509 `org-fill-paragraph' leaves buffer unmodified when doing nothing
* lisp/org.el (org-fill-paragraph): Leave buffer unmodified when
  nothing was filled.
* lisp/org-compat.el: Add forward compatibility with `buffer-hash'
  function.
2018-10-03 18:44:34 +02:00
Nicolas Goaziou 0ff4076cb4 ob-eshell: Silence byte-compiler
* lisp/ob-eshell.el (org-babel-eshell-initiate-session): Remove
  unnecessary code.
2018-10-03 18:44:34 +02:00
Chris Kauffman 09f9507238 Added keybindings for `org-table-move-cell-*' functions
* lisp/org.el (org-shiftup):
(org-shiftdown):
(org-shiftright):
(org-shiftleft): Dispatch `org-table-move-cell-*' commands.
2018-10-03 18:44:34 +02:00
Chris Kauffman d0a5308435 org-table: Adding single cell movement functions
* lisp/org-table.el (org-table--swap-cells):
(org-table--move-cell):
(org-table-move-cell-up):
(org-table-move-cell-down):
(org-table-move-cell-left):
(org-table-move-cell-right): New functions.

* testing/lisp/test-org-table.el (test-org-table/move-cell-down):
(test-org-table/move-cell-up):
(test-org-table/move-cell-right):
(test-org-table/move-cell-left): New tests.

* doc/org-manual.org (Column and row editing): Document functions and
  keybindings for single cell movement.
2018-10-03 18:44:34 +02:00
Nicolas Goaziou 74f769f850 ob-shell: Silence byte-compilation
* lisp/ob-eshell.el (org-babel-eshell-initiate-session): Silence
  byte-compilation.
2018-10-03 18:44:34 +02:00
Pierre Téchoueyres d956ae0431 Add new :coding parameter to #+include keyword
* lisp/ox.el (org-export-expand-include-keyword): Add new parameter
  `:coding' for specify the file encoding whith the `#+include:'
  keyword.

This allow to use something like:

  #+include: "./myfile" :coding cp850-dos

when your Org file is encoded in utf-8 for example.
2018-10-03 18:44:34 +02:00
stardiviner 1b81d6e07b ob-eshell.el: Add Eshell support for Babel
* lisp/ob-eshell.el (org-babel-execute:eshell): Execute Eshell code in Babel.
(org-babel-prep-session:eshell):
(ob-eshell-session-live-p):
(org-babel-eshell-initiate-session):
(org-babel-variable-assignments:eshell):
(org-babel-load-session:eshell):

* testing/test-ob-eshell.el: Write test for ob-eshell.

* doc/org-manual.org (Languages): Add Babel language eshell identity.
2018-10-03 18:44:34 +02:00
rjhwelsh 7809484fe1 ob-plantupml: Added LaTeX output support
* lisp/ob-plantuml.el (org-babel-execute:plantuml): Added LaTeX output
 support.

TINYCHANGE
2018-10-03 18:44:34 +02:00
Nicolas Goaziou 524be7cdb1 ox-html: Fix consistency between footnote definitions
* lisp/ox-html.el (org-html-footnote-section): Wrap inline inline
  footnote definitions within a paragraph.

Reported-by: Matthias Paulmier <matthias.paulmier@etu.u-bordeaux.fr>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00006.html>
2018-10-03 15:26:14 +02:00
Nicolas Goaziou 0122746f5b ox: Fix a docstring
* lisp/ox.el (org-export-get-node-property): Fix docstring.
2018-10-03 13:10:35 +02:00
Marcin Borkowski d229dd9662 Lift the artificial limit on the clock history length.
The default limit of 35 was hard-coded, and was especially annoying
when using an alternative way of selecting from history,
e.g. https://github.com/unhammer/org-mru-clock.
2018-10-03 12:50:05 +02:00
Nicolas Goaziou 77aadd569c Improve a docstring
* lisp/org.el (org-complete-tags-always-offer-all-agenda-tags):
  Improve docstring.

Reported-by: No Wayman <iarchivedmywholelife@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-10/msg00027.html>
2018-10-03 12:40:58 +02:00
Marco Wahl d3e286257b org: Fix dangling parens in org-info-find-node 2018-10-03 09:21:58 +02:00
Marco Wahl 4ec502fc98 Merge branch 'master' into contextual-docu 2018-10-02 16:34:58 +02:00
Marco Wahl 3be61dff2f org: Unify a few settings in the org-mode-map 2018-10-02 15:05:59 +02:00
Marco Wahl 9968e66b64 org: Dropped one non-functional keybinding 2018-10-01 23:40:27 +02:00
Marco Wahl b19e7737dd org,org-agenda: New: open info depending on context
* lisp/org.el (org-info-find-node): Function to jump to info depending
  on context.  For an org file the context is the element type at point.
2018-10-01 22:47:33 +02:00
Nicolas Goaziou 3be2260806 Silence byte-compiler
* lisp/ob-emacs-lisp.el:
* lisp/org-macro.el: Silence byte-compiler.
2018-10-01 21:33:49 +02:00
Nicolas Goaziou 591c63dd57 org-mobile: Fix a docstring
* lisp/org-mobile.el (org-mobile-inbox-for-pull): Fix a docstring.
2018-09-29 16:14:30 +02:00
Nicolas Goaziou d99cc7fb4d org-mobile: Remove references to "MobileOrg" specific application
* lisp/org-mobile.el (org-mobile-files):
(org-mobile-use-encryption):
(org-mobile-encryption-password):
(org-mobile-capture-file):
(org-mobile-index-file):
(org-mobile-agendas):
(org-mobile-action-alist):
(org-mobile-edit): Remove reference to "MobileOrg" since the protocol
is not tied to a specific implementation.
2018-09-29 13:43:32 +02:00
Sigmund Tzeng 0d0cd9694f ob-dot: Fix error with utf-8 encoded dot files
* lisp/ob-dot.el (org-babel-execute:dot): Add utf-8 support.

When trying to render a dot file with utf-8 encoded characters, Org
Babel complains about the encodings.  This patch makes utf-8 dot files
work.

TINYCHANGE
2018-09-29 08:44:39 +02:00
Marco Wahl e22d32b023 org-agenda: Reveal bulk mark pesistent feature for user
* lisp/org-agenda.el (org-agenda-bulk-action): Added a hint to "p"
  for toggling the persitent mark state for bulk action.
2018-09-27 16:28:51 +02:00
Marco Wahl 3f8b1b0265 org: Enable planning lines for special edit
* lisp/org.el (org-edit-special): Add a case for element type
  'planning.
2018-09-27 13:46:19 +02:00
Marco Wahl 7ae1230816 Merge remote-tracking branch 'origin/master' 2018-09-26 22:22:46 +02:00
Marco Wahl 6e584d06fd org: Show planning type in prompt when editing
* lisp/org.el (org-add-planning-info): Call `org-read-date' with either
  DEADLINE or SCHEDULED as value for the prompt.
2018-09-26 22:20:15 +02:00
Marco Wahl fe72a05ba5 org: Show planning type in prompt when editing
* lisp/org.el (org-add-planning-info): Call `org-read-date' with either
  DEADLINE or SCHEDULED as value for the prompt.
2018-09-26 14:15:34 +02:00
Marco Wahl 8766780bc5 Merge branch 'maint' 2018-09-23 16:33:05 +02:00
Marco Wahl 3eefa73afe org-bbdb: fix anniversary with format MM-DD
* lisp/org-bbdb.el (org-bbdb-anniv-extract-date): Fix the pattern to
  be able to match a pair.

Reported by

From: leandro@disroot.org
Subject: Anniversaries from BBDB
Newsgroups: gmane.emacs.orgmode
To: emacs-orgmode@gnu.org
Date: Thu, 20 Sep 2018 22:08:12
2018-09-23 16:01:27 +02:00
Nicolas Goaziou fbb5c97bd6 ox-latex: Tiny refactoring
* lisp/ox-latex.el (org-latex-footnote-reference): Tiny refactoring.
2018-09-22 08:45:43 +02:00
Nicolas Goaziou 408eaccf1c ox-latex: Fix footnotes in items' tags
* lisp/ox-latex.el (org-latex-footnote-reference): Delay footnotes in
  item's tag.
(org-latex-item): Footnotes in item's tag appear before footnotes in
contents.
2018-09-22 01:35:44 +02:00
Nicolas Goaziou 70f77e7f12 ox-org: Fix typo in docstring
* lisp/ox-org.el (org-org-export-to-org):
(org-org-publish-to-org): Use "Org" instead of "org".
2018-09-21 14:19:04 +02:00
Nicolas Goaziou 13626a47ad ox-latex: Fix typos in docstrings
* lisp/ox-latex.el (org-latex-custom-lang-environments):
(org-latex-known-warnings): Turn "latex" into "LaTeX".
2018-09-20 11:28:05 +02:00
Nicolas Goaziou 17edaf8c14 "src block" -> "source block" in documentation and comments
* etc/ORG-NEWS (Maxima: new headers ~:prologue~ and ~:epilogue~):
(Texinfo exports inline source blocks as ~@code{}~):
(Default lexical evaluation of emacs-lisp source blocks):
* lisp/ob-clojure.el (org-babel-clojure-default-ns):
* lisp/ob-core.el (org-babel-named-src-block-regexp-for-name):
(org-babel-current-src-block-location):
(org-babel-mark-block):
(org-babel-insert-result):
* lisp/ob-emacs-lisp.el (org-babel-default-header-args:emacs-lisp):
* lisp/ob-exp.el (org-babel-exp-process-buffer):
* lisp/ob-lob.el (org-babel-lob-ingest):
* lisp/ob-ref.el:
* lisp/org-element.el (org-element-object-restrictions):
(org-element-src-block-parser):
(org-element-inline-src-block-parser):
* lisp/org-lint.el:
(org-lint--checkers):
* lisp/org-pcomplete.el (pcomplete/org-mode/block-option/src):
* lisp/org-src.el (org-edit-inline-src-code):
* lisp/org.el (org-ctrl-c-ctrl-c):
(org-in-src-block-p):
(org-fill-element):
* lisp/ox-html.el (org-html--textarea-block):
(org-html-format-code):
* lisp/ox-latex.el (org-latex-minted-options):
(org-latex-custom-lang-environments):
* lisp/ox-md.el:
* lisp/ox-odt.el (org-odt-format-code):
* lisp/ox.el (org-export-collect-listings):
* testing/lisp/test-ob-exp.el (ob-exp/src-block-with-affiliated-keyword):
* testing/lisp/test-ob.el (test-ob/preserve-results-indentation):
  Correct "src block" occurrences when they do not specifically refer
  to the element type `src-block'.
2018-09-20 11:23:49 +02:00
Nicolas Goaziou 50aca8422b ox-html: Remove references to Github
* lisp/ox-html.el (org-html-htmlize-generate-css):
(org-html-fontify-code): Remove references to Github.

Fixes: bug#32722
2018-09-18 23:03:24 +02:00
Marco Wahl 13090d114b org: Add special edit on timestamps
* lisp/org.el (org-edit-special): Added a case to call a suitable
  function to edit the timestamp at hand.
2018-09-18 17:59:52 +02:00
Nicolas Goaziou fa3dab48d0 org-capture: Save buffer in `org-capture-refile'
* lisp/org-capture.el (org-capture-refile): When :kill-buffer option
  is active, save buffer before killing it.

Reported-by: Andrew Burgess <andrew.burgess@embecosm.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-09/msg00052.html>
2018-09-15 16:56:35 +02:00
Nicolas Goaziou 5fe1650034 Fix `org-copy-visible'
* lisp/org.el (org-copy-visible): Deactivate region before adding
  visible part to kill ring.

See https://lists.gnu.org/archive/html/emacs-devel/2018-09/msg00476.html
2018-09-11 12:06:22 +02:00
Adam Porter 98755f6296 org-agenda: `org-agenda-get-progress' set type text-property
* lisp/org-agenda.el (org-agenda-get-progress): Set "type"
  text-property according to why the item was matched.

Previously, the "type" text-property was always set to "closed", even
when an item was actually matched because of its "Clock" or "State"
line.

Note: it's possible that some code might expect the value to be
"closed" in all 3 cases, in which case this could cause a minor
regression, so this change should be carefully considered.  However,
in the long run, it seems like the correct thing to do and a
worthwhile change to make.
2018-09-06 21:41:07 +02:00
Nicolas Goaziou c475cc2886 org-table: Fix thinko
* lisp/org-table.el (org-table-line-to-dline): Do not assume dichotomy
  failed.

Reported-by: Lem Ming <ramboman777@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-09/msg00035.html>
2018-09-05 18:50:03 +02:00
Adam Porter 83fa313cf8 Fix logbook list bullets with 2+ spaces
* lisp/org-agenda.el (org-agenda-get-progress): Accept multiple spaces
between the list bullet and "State" in the state-change regexp.

Previously, logbook list entries with more than one space between the
bullet and the beginning of the entry would be ignored.  I.e., if
a bullet is defined in org-list-two-spaces-after-bullet-regexp, two
spaces will be inserted after the bullet, and that prevents
state-changed entries from appearing in the Agenda Log Mode view.
2018-09-02 14:28:45 +02:00
Nicolas Goaziou cbb7be9c25 Revert "org-footnote: Fix location after moving to definition"
This reverts commit 8500501984.
2018-08-30 23:59:01 +02:00
Nicolas Goaziou ee4dbaff60 org-table: Avoid unnecessary table align
* lisp/org-table.el (org-table-copy-down): Avoid unnecessary table
  align.
2018-08-30 23:49:57 +02:00
Nicolas Goaziou 318d5bab64 Fix failing test
* lisp/ob-core.el (org-babel-import-elisp-from-file): Refactor code.
  Fix error when `org-table-to-lisp' return value contains `hline'.
2018-08-30 23:48:41 +02:00
Nicolas Goaziou 1334572582 org-macs: Optimize `org-string-width'
* lisp/org-macs.el (org--string-from-props): New function.
(org-string-display): Remove function.
(org-string-width): Use new function.
2018-08-30 21:09:57 +02:00
Nicolas Goaziou 9a816fe3ea org-macs: Optimize `org-split-string'
* lisp/org-macs.el (org-split-string): Do less consing. Do not rely on
  `split-string'.
2018-08-30 21:09:57 +02:00
Kyle Meyer 4931fc8e2b Update version keyword 2018-08-26 13:12:09 -04:00
Nicolas Goaziou 80d334085f ox: Add missing "it" translation
* lisp/ox.el (org-export-dictionary): Add missing translation.
2018-08-21 21:51:00 +02:00
HIRATA Tadashi bdf92cfcf7 org-indent: Add `org-indent' face to `org-indent-boundary-char'
* lisp/org-indent.el (org-indent--compute-prefixes): When
`org-indent-boundary-char' doens't have `org-indent' face property in
Org Indent mode, it causes an appearance issue.  When you use Org mode
with Whitespace mode, you can't control `org-indent-boundary-char''s
face neither `whitespace-space' face nor `org-indent' face.

TINYCHANGE
2018-08-21 21:50:53 +02:00
Nicolas Goaziou 638f329838 ox: Add "it" translations
* lisp/ox.el (org-export-dictionary): Add "it" translations.
2018-08-20 11:09:13 +02:00
Leslie H. Watter 00e863bedd pt_BR added/fixed translations of org-export-dictionary
* lisp/ox.el (org-export-dictionary): Add or pt_BR translations.

TINYCHANGE
2018-08-19 10:40:48 +02:00
Matt Lundin 5e27b2fd32 Ensure that org-get-tags returns all local tags
* lisp/org.el: (org-get-tags) Create a clearer separation between
  local and inherited tags in the function, so that
  org-remove-uninherited tags is only run on inherited tags. This is
  important to avoid destroying existing tags when adding new tags.
* testing/lisp/test-org.el: (test-org/get-tags) Add regression test
2018-08-19 10:28:27 +02:00
Kyle Meyer ab1f7712de org-attach: Don't query unnecessarily about archiving
* lisp/org-attach.el (org-attach-archive-delete-maybe): Don't query
about deleting attachments if the entry doesn't have any attachments.
2018-08-10 21:24:54 -04:00
Bastien 18998fd4c2 Merge branch 'maint' 2018-08-05 08:02:14 +02:00
Charles Celerier 30498ef932 ox-odt: Fix `org-odt-template' styles file retrieval
* lisp/ox-odt.el (org-odt-template): Fix `org-odt-template' styles
  file retrieval.

TINYCHANGE

Signed-off-by: Charles Celerier <chckyn@gmail.com>
2018-08-05 08:02:00 +02:00
Nicolas Goaziou d975b44fd4 Fix `org-kill-line' on tag lines
* lisp/org.el (org-kill-line): Preserve tags when `org-special-ctrl-k'
  is non-nil.
* testing/lisp/test-org.el (test-org/kill-line): New test.

Reported-by: Matt Lundin <mdl@imapmail.org>
<http://lists.gnu.org/r/emacs-orgmode/2018-07/msg00122.html>
2018-07-17 22:24:01 +02:00
Nicolas Goaziou 417479238b org-macs: Move a macro 2018-07-17 11:41:58 +02:00
Nicolas Goaziou a2636b5286 org-clock: Fix `org-clock-in' with (4) argument.
* lisp/org-clock.el (org-clock-in): Use `org-get-heading' so one can
  select an empty task.  Also check base buffer instead of comparing
  current buffer.  Small refactoring.

Reported-by: Robert Irelan <rirelan@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-07/msg00116.html>
2018-07-17 10:54:28 +02:00
Nicolas Goaziou 65ebb128bc org-macro: Fix "results" macro
* lisp/org-macro.el (org-macro-initialize-templates): Do not
  initialize the special "results" macro.
(org-macro-replace-all): Do not raise an error if "results" macro has
no associated template yet.
* lisp/ox.el (org-export-as): Update code comments.
* testing/lisp/test-ox.el (test-org-export/expand-macro): Add test.
2018-07-07 12:53:13 +02:00
Nicolas Goaziou 623cc46259 org-macro: Small refactoring
* lisp/org-macro.el (org-macro--get-property): New function.
(org-macro-initialize-templates): Use new function.
2018-07-07 12:37:24 +02:00
Nicolas Goaziou 84d87d990e org-macro: Fix a docstring
* lisp/org-macro.el (org-macro-initialize-templates): Add missing
  macros to docstring.

Reported-by: "Berry, Charles" <ccberry@ucsd.edu>
<http://lists.gnu.org/r/emacs-orgmode/2018-07/msg00032.html>
2018-07-07 12:10:48 +02:00
Nicolas Goaziou 445dc6af6f org-colview: Do not move point when initializing columns
* lisp/org-colview.el (org-columns): Do not move point.

Reported-by: Benjamin Motz <benni.motz@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-07/msg00040.html>
2018-07-07 09:27:04 +02:00
Nicolas Goaziou d3774fba77 Limit `org-open-at-point'
* lisp/org.el (org-open-at-point): Do not open everything that looks
  like a link, in particular in verbatim or code objects.  However,
  still conveniently open links in comments, node properties and
  keywords.
2018-07-05 13:35:26 +02:00
Nicolas Goaziou 120f871f41 Small refactoring
* lisp/ob-core.el (org-babel-open-src-block-result): Fix docstring,
  refactor code.
* lisp/org.el (org-open-at-point): Refactor so as to not call
  `org-babel-open-src-block-result' unconditionally.
2018-07-05 13:15:30 +02:00
Nicolas Goaziou 3f601e218d org-src: Fix auto-saving of remote editing buffers
* lisp/org-src.el (org-src--auto-save-timer): No longer buffer-local.
(org-src-mode): Tiny refactoring so as to keep code under 80 columns.

Reported-by: Andreas Fuchs <asf@boinkor.net>
http://lists.gnu.org/archive/html/emacs-orgmode/2018-07/msg00002.html
2018-07-02 00:45:12 +02:00
Nicolas Goaziou 7d9e4da447 Prevent spurious newline character in fixed-width area value
* lisp/org-element.el (org-element-fixed-width-parser): Prevent
  spurious newline character at the end of the value.
* lisp/ox-latex.el (org-latex-fixed-width):
* lisp/ox-man.el (org-man-fixed-width):
* lisp/ox-texinfo.el (org-texinfo-fixed-width):
* contrib/lisp/ox-groff.el (org-groff-fixed-width): Adapt to change.
* testing/lisp/test-org-element.el (test-org-element/fixed-width-parser):
  Update tests.

Reported-by: 孙振祥 <sunznx@icloud.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2018-07/msg00003.html>
2018-07-02 00:24:38 +02:00
Nicolas Goaziou 937e7ce76b org-macs: Fix last commit
* lisp/org-macs.el (org-parse-time-string): Fix typo in last commit.
* testing/lisp/test-org-element.el (test-org-element/timestamp):
  Rename to `test-org-element/timestamp-parser'.
2018-07-02 00:18:44 +02:00
Nicolas Goaziou e1884a0985 org-macs: Tiny refactoring
* lisp/org-macs.el (org-parse-time-string): Refactor code.

`org-parse-time-string' does not need to handle non-Org timestamps,
like "<tomorrow>" or "<+2d>" so we remove the cond branch.
2018-07-01 23:25:56 +02:00
Nicolas Goaziou 6f8fdabf35 org-macs: Fix circular dependency
* lisp/org-macs.el (org-matcher-time): Fix circular dependency between
  `org-parse-time-string', `org-matcher-time' and `org-2ft'.  Improve
  docstring.

Reported-by: Allen Li <vianchielfaura@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2017-11/msg00023.html>
2018-06-28 22:40:51 +02:00
Robert Irelan fda1d27610 org-clock: Properly handle `org-extend-today-until' in clock tables
* lisp/org-clock.el (org-clock-special-range): Handle non-default
   `org-extend-today-until' when generating a clock table with the
   `:block` directive.

 Reported-by: Robert Irelan <rirelan@gmail.com>
 <http://lists.gnu.org/archive/html/emacs-orgmode/2018-04/msg00294.html>
2018-06-27 08:31:38 +02:00
Nicolas Goaziou cad692c276 ox: Fix Italian translation for "Figure"
* lisp/ox.el (org-export-dictionary): Fix Italian translation for
  "Figure".

Reported-by: Franco Pasut <franco.pasut@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00373.html>
2018-06-26 12:00:30 +02:00
Nicolas Goaziou accf99cbc0 Deprecate `org-effort-durations'
* lisp/org.el (org-effort-duration): Remove unused variable.
* lisp/org-compat.el (org-effort-durations): Make
  `org-effort-duration' an alias for `org-duration-units'.
* lisp/org-clock.el (org-clock-modify-effort-estimate): Fix docstring.
* doc/org-manual.org (Footnotes): Clarify footnote.

The variable is inactive since introduction of "org-duration" library.
2018-06-25 17:13:04 +02:00
Nicolas Goaziou 7c14efd3e9 org-info: Fix typo
* lisp/org-info.el (org-info-follow-link): Fix typo in regexp.
2018-06-24 19:55:11 +02:00
Nicolas Goaziou 1f9e1cce62 org-footnote: Fix last commit
* lisp/org-footnote.el (org-footnote-next-reference-or-definition):
  Fix typo introduced in last commit.
2018-06-24 19:47:41 +02:00
Nicolas Goaziou c37c6bda3c org-footnote: Fix footnote predicates
* lisp/org-footnote.el (org-footnote-at-reference-p):
(org-footnote-at-definition-p): Rewrite using Elements library.
(org-footnote-get-next-reference): Use `org-footnote-at-reference-p'.
(org-footnote-next-reference-or-definition): Use old definition for
`org-footnote-at-definition-p' and `org-footnote-at-definition-p'.

This patch aims at reducing the calls to the inaccurate
`org-footnote-in-valid-context-p' function.  However,
`org-footnote-next-reference-or-definition' still uses it because the
function is for fontification only, so 1. accuracy matters less
2. Elements has a slower worse case scenario.
2018-06-24 14:57:49 +02:00
Nicolas Goaziou 627cb7f578 org-footnote: Fix `org-footnote-goto-previous-reference'
* lisp/org-footnote.el (org-footnote-goto-previous-reference): Only
  add to mark ring on a successful match.  Improve error message when
  reference is outside visible part of buffer.
(org-footnote-get-next-reference): Avoid using
`org-footnote-at-reference-p', which is inaccurate, due to
`org-footnote-in-valid-context-p'.
* testing/lisp/test-org-footnote.el (test-org-footnote/goto-previous-reference):
  New test.
2018-06-24 11:25:15 +02:00
Marco Wahl 9553896b11 Merge branch 'keep-text-scale-in-agenda-at-reload' 2018-06-24 09:58:01 +02:00
Marco Wahl a6b4cec691 org-agenda: Refactored. Add test.
* lisp/org-agenda.el (org-agenda-mode): Factored out a function for a
  loop occuring two times.
* testing/lisp/test-org-agenda.el: test the text scale after
  agenda-undo.
2018-06-24 09:52:29 +02:00
Nicolas Goaziou 58b512013e org-clock: Fix `org-clock-display'
* lisp/org-clock.el (org-clock-put-overlay): Do not expand links when
  displaying clocked times.

Reported-by: Sheng Yang (杨圣) <yangsheng6810@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00024.html>
2018-06-23 23:55:01 +02:00
Nicolas Goaziou 8e54cafeb2 Fix noweb expansion during export
* lisp/ob-core.el (org-babel-sha1-hash): Add optional argument to
  specify context.
(org-babel-execute-src-block): Use new argument.
* lisp/ob-exp.el (org-babel-exp-src-block): Use new argument.
(org-babel-exp-results): Fix context.

Reported-by: Ken Mankoff <mankoff@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00117.html>
2018-06-23 23:04:45 +02:00
Marco Wahl d6ebe38e2c Merge branch 'keep-some-local-variables-at-rebuild' into keep-text-scale-in-agenda-at-reload 2018-06-23 20:36:04 +02:00
Nicolas Goaziou 62dd2cc829 Fix regression in tags alignment
* lisp/org.el (org--align-tags-here): Correctly preserve column.
* testing/lisp/test-org.el (test-org/tag-align): Add test.

The regression was introduced in
593058e4a6.

Reported-by: Bernt Hansen <bernt@norang.ca>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00245.html>
2018-06-22 18:49:11 +02:00
Henry Blevins 9c8de985a5 ob-scheme: Fix scheme blocks ignoring :results in formatting
* ob-scheme.el (org-babel-execute:scheme): Process the :result header
argument to conditionally and appropriately format output.

Currently, `org-babel-execute:scheme' ignores the user specified :result header
argument found in the :result-param parameter and process all output as a table.
The fix is to pass the `result' and :result-param to the `org-babel-result-cond'
function to invoke the corresponding formatting.

For example, the following block incorrectly formats its output as a table:

(list 1 2 3)

| 1 | 2 | 3 |

This patch results in the correct behavior:

(list 1 2 3)

: (1 2 3)

Bringing it inline with the result using Emacs lisp:

(list 1 2 3)

: (1 2 3)
2018-06-21 22:00:19 +02:00
Nicolas Goaziou fbd138f527 org-agenda: Fix SPC in agenda
* lisp/org-agenda.el (org-agenda-show-and-scroll-up): Properly display
  drawers when SPC is pressed.  Hide them again with a universal
  prefix argument.

Reported-by: Bernt Hansen <bernt@norang.ca>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00254.html>
2018-06-21 20:25:03 +02:00
Nicolas Goaziou 9b7191001c org-capture: Silence byte-compiler 2018-06-21 18:13:31 +02:00
Nicolas Goaziou 031c53103a org-capture: Fix formulas when capturing rows
* lisp/org-capture.el (org-capture-finalize): Possibly update formula
  when inserting the captured rows in the table.

* testing/lisp/test-org-capture.el (test-org-capture/table-line): Add
  tests.

Reported-by: "Holst Thomas (PS-EC/ESE4)" <Thomas.Holst@de.bosch.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00276.html>
2018-06-21 18:09:40 +02:00
Nicolas Goaziou 547b431e70 org-capture: Fix row insertion in a table with a formula
* lisp/org-capture.el (org-capture-place-table-line): Insert new row
  above the formula, not below.
* testing/lisp/test-org-capture.el (test-org-capture/table-line): Add
  test.
2018-06-21 12:17:07 +02:00
Nicolas Goaziou c891b840d2 org-table: `org-table-fix-formulas-confirm' is not safe.
* lisp/org-table.el (org-table-fix-formulas-confirm): Funcall'ing
  a symbol is never safe, no matter what the symbol is.
2018-06-21 11:48:54 +02:00
Marco Wahl 00c1184a04 org-agenda: Keep local-variables defining text-scale
* lisp/org-agenda.el (org-agenda-mode): Save and restore local
	   variables text-scale-mode-amount, text-scale-mode,
	   text-scale-mode-lighter, face-remapping-alist.  In effect
	   this keeps the text-scale at agenda rebuild and redo.

This commit is predicated on the newsgroup post of Samuel Wales "point
moves and zoom level reverts when refreshing agenda" at Sun, 27 May
2018.
2018-06-20 17:22:52 +02:00
Nicolas Goaziou 460d83831a Silence byte-compiler 2018-06-19 22:53:59 +02:00
Nicolas Goaziou 6c3ce3c17b org-macs: Fix `provide' location 2018-06-19 22:42:11 +02:00
Nicolas Goaziou 7fbb705d13 org-capture: Do not force newline on empty capture templates
* lisp/org-capture.el (org-capture-fill-template): Do not force
  newline on empty capture templates.

Reported-by: xristos <xristos@sdf.org>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00052.html>
2018-06-19 16:38:09 +02:00
Nicolas Goaziou 075e79de4f org-archive: Do not create multiple archive subtrees
* lisp/org-archive.el (org-archive-subtree): Fix regexp.

Reported-by: Bernt Hansen <bernt@norang.ca>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00056.html>
2018-06-19 13:44:38 +02:00
Nicolas Goaziou 9ff77b1e57 org-info: Fix path parsing
* lisp/org-info.el (org-info-follow-link):
(org-info-export): Manual is separated from node name by either "#" or
"::", not ":".
2018-06-19 10:44:56 +02:00
Nicolas Goaziou 593058e4a6 `org-set-tags' modifies buffer only when necessary
* lisp/org.el (org--align-tags-here):
(org-set-tags): Modify buffer only when necessary.

* testing/lisp/test-org.el (test-org/set-tags): Add tests.

Reported-by: Allen Li <darkfeline@felesatra.moe>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00242.html>
2018-06-19 09:40:00 +02:00
Nicolas Goaziou 2e1daf14e0 Update "Version" keyword 2018-06-17 10:25:35 +02:00
Nicolas Goaziou 54abd0f0ea org-capture: Fix last commit
* lisp/org-capture.el (org-capture-fill-template): Properly handle
  allowed values when target sets them.
2018-06-16 23:15:34 +02:00
Christian Schwarzgruber 7fcceecf5d Improve `org-log-reschedule` and `org-log-redeadline' docstrings
* lisp/org.el (org-log-reschedule):
(org-log-redeadline): Improve docstring.

TINYCHANGE
2018-06-16 21:51:37 +02:00
Nicolas Goaziou 42a2c248eb org-capture: Fix completion for properties in capture buffer
* lisp/org.el (org-read-property-value):
* lisp/org-capture.el (org-capture-fill-template): Sidestep
  `org-set-property'.  Use previous function and `org-entry-put'
  instead.

Reported-by: Eric Danan <eric.danan@u-cergy.fr>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00061.html>
2018-06-16 17:03:22 +02:00
stardiviner dcf1796636 ob-shell: Initialize header arguments for other shell names
* lisp/ob-shell.el (org-babel-shell-initialize) Initialize
  org-babel-default-header-args: for shell names.
2018-06-15 22:46:11 +02:00
Nicolas Goaziou b3981d6ad0 Fix `org-metaup' and `org-metadown' on regions
* lisp/org.el (org-metaup): Do not leave a character behind when
  transposing regions.
(org-metadown): Fix "Transposed regions overlap" error.

Reported-by: Adam Porter <adam@alphapapa.net>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00184.html>
2018-06-15 18:52:09 +02:00
Nicolas Goaziou 1704a25b98 org-tempo: Fix docstring
* lisp/org-tempo.el (org-tempo-keywords-alist): Fix docstring.
2018-06-14 16:39:28 +02:00
Nicolas Goaziou 956a5a4cb1 Ignore inlinetasks in `org-before-first-heading-p'
* lisp/org.el (org-before-first-heading-p): Ignore inlinetasks.
2018-06-13 22:20:27 +02:00
Nicolas Goaziou f50f373389 Add facility for commit log messages from Org documents
* lisp/org-compat.el (org-add-log-current-headline): New function.
* lisp/org.el (org-mode): Use new function.
2018-06-13 22:15:56 +02:00
Nicolas Goaziou 3f26c9bd2e `org-get-heading' returns nil instead of erroring out
* lisp/org.el (org-get-heading): Return nil instead of throwing an
  error before first headline.
2018-06-13 22:15:17 +02:00
Nicolas Goaziou f440ff0a6a Fix imenu compatibility with non-contiguous structure
* lisp/org.el (org-mode): Move imenu compatibility to "org-compat.el".
* lisp/org-compat.el (org-imenu-new-marker): Remove function.
(org-imenu-get-tree): Handle non-contiguous structure.

Reported-by: Thibault Polge <thibault@thb.lt>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00088.html>
2018-06-13 01:13:16 +02:00
Nicolas Goaziou 3745c0af9f Fix indentation when wrapping a block around a region
* lisp/org.el (org-insert-structure-template): Indent like the first
  line, not the line the point happens to be on.

Reported-by: stardiviner <numbchild@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00107.html>
2018-06-12 09:03:33 +02:00
Marco Wahl 842002f9f7 org-archive: Fix insert of extra blank line at archiving
* lisp/org-archive.el (org-archive-subtree): Remove insertion of extra
  blank line in case of org-archive-reversed-order.
2018-06-07 15:52:26 +02:00
Marco Wahl 13a09b3ba5 Merge branch 'maint' 2018-06-06 16:05:26 +02:00
Marco Wahl 2b76aebfc6 org-element: Fix interpretation as todo kwd when prefix of headline
* lisp/org-element.el (org-element-headline-parser): Check for space
  after todo-kwd.
* testing/lisp/test-org-element.el (test-org-element/headline-todo-keyword):
  Respective tests.
2018-06-06 15:58:20 +02:00
Nicolas Goaziou 8b9c1e15df ob-tangle: Fix `org-babel-detangle'
* lisp/ob-tangle.el (org-babel-tangle-jump-to-org): Preserve position
  in source block only if it doesn't put point outside of the block.

Reported-by: Frederick Giasson <fred@curbside.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00008.html>
2018-06-05 11:55:55 +02:00
Nicolas Goaziou ed7d1dc6d7 Fix quirks in `org-insert-structure-template'
* lisp/org.el (org-insert-structure-template): Fix some issues.
  Refactor code.
* testing/lisp/test-org.el (test-org/insert-structure-template):
  Update tests.

Reported-by: stardiviner <numbchild@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00553.html>
2018-06-02 23:41:56 +02:00
Nicolas Goaziou 97fac41194 Revert "ob-C: Provide `ob-C++' and `ob-D'"
This reverts commit f35994b314.
2018-05-30 12:57:21 +02:00
Rasmus 7ac46c52b7 Check format of org-structure-template-alist
* org.el (org--check-org-structure-template-alist): New function
  yielding user-error if using old org-structure-template-alist
  format.
  (org--insert-structure-template-mks):
* org-tempo.el (org-tempo-add-templates): Use new function
2018-05-28 23:44:51 +02:00
Nicolas Goaziou dac180ea0d org-footnote: Improve :safe values
* lisp/org-footnote.el (org-footnote-auto-label):
(org-footnote-auto-adjust): Use simpler :safe value.

The point of the :safe value is to determine if the variable is safe,
not to check correctness of its value. Besides, lambda functions
appear as the following in *Help* buffer:

  This variable is safe as a file local variable if its value
  satisfies the predicate which is a byte-compiled expression.

which is not particularly clear.  Let's keep :safe values simple.
2018-05-28 21:18:28 +02:00
Aaron Ecay c32938b7fd Revert "Un-fontlock sub/superscripts when point enters them"
This reverts commit 102832e66f.

See <https://lists.gnu.org/archive/cgi-bin/namazu.cgi?query=%2Bmessage-id%3A%3C87y3g43mjy.fsf%40nicolasgoaziou.fr%3E&submit=Search&idxname=emacs-orgmode>
2018-05-27 21:29:57 +01:00
Nicolas Goaziou f35994b314 ob-C: Provide `ob-C++' and `ob-D'
Reported-by: Van L <van@scratch.space>
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00492.html>
2018-05-27 22:21:15 +02:00
Nicolas Goaziou c698c8e959 Fix tags completion
* lisp/org.el (org-tags-completion-function): Refactor function. Fix
  tag completion.

Reported-by: Alain.Cochard@unistra.fr
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00450.html>
2018-05-27 22:13:00 +02:00
Nicolas Goaziou 2086ea42cf org-footnote: Tiny refactoring
* lisp/org-footnote.el (org-footnote-section): Tiny refactoring.
2018-05-27 21:59:19 +02:00
Aaron Ecay c56bb9d59a org-footnote: add :safe properties to the defcustoms 2018-05-27 17:33:44 +01:00
Aaron Ecay 102832e66f Un-fontlock sub/superscripts when point enters them
* lisp/org.el (org-remove-font-lock-display-properties): Rename to
‘org-remove-font-lock-display-properties’.  It is a more
specific/accurate name.
(org-match-substring-with-braces-regexp):
(org-match-substring-regexp): Add a note to docstrings about what the
match groups are.
(org-raise-scripts--post-command-hook): New function, modeled on
‘prettify-symbols--post-command-hook’.
(org-raise-scripts): Use the above.

Inspired by
<https://lists.gnu.org/archive/cgi-bin/namazu.cgi?query=%2Bmessage-id%3A%3C518DCC34-E435-42F7-A15E-FAE7727033F8%40scratch.space%3E&submit=Search&idxname=emacs-orgmode>
2018-05-27 17:13:59 +01:00
Aaron Ecay 5192e810ae Add “summary” to ‘org-html-html5-elements’
* lisp/ox-html.el (org-html-html5-elements): Add “summary”

As suggested by Kaushal Modi in
<https://lists.gnu.org/archive/cgi-bin/namazu.cgi?query=%2Bmessage-id%3A%3CCAFyQvY2YoLDpM9PWLV86FwvPOVkuxg9O8KdryG3z%3D5QRm7Aujg%40mail.gmail.com%3E&submit=Search&idxname=emacs-orgmode>
2018-05-27 16:59:15 +01:00
Aaron Ecay 1117d65622 org.el: remove trailing whitespace 2018-05-27 16:58:39 +01:00
Nicolas Goaziou 2c5a8740ad Remove spurious colon in tags view
* lisp/org.el (org-scan-tags): Remove spurious colon in tags view.
  Small refactoring.

The regression was introduced in
be31a0c459.

Reported-by: Rainer Stengele <rainer.stengele@online.de>
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00478.html>
2018-05-26 12:30:46 +02:00
Nicolas Goaziou 2918894f36 org-table: Tiny refactoring
* lisp/org-table.el (org-table-get-formula): Tiny refactoring.
(org-table-get-stored-formulas): Fix string.
2018-05-22 10:46:57 +02:00
Nicolas Goaziou 9d51a8b5a0 org-capture: Fix table line capture with custom location
* lisp/org-capture.el (org-capture-place-table-line): Fix error when
  a precise location is given, e.g. with `file+function' target.

* testing/lisp/test-org-capture.el (test-org-capture/table-line): Add
test.

Reported-by: Thomas Holst <thomas_holst@gmx.de>
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00359.html>
2018-05-17 22:57:49 +02:00
Nicolas Goaziou 1cfd5d04e3 Fix a docstring
* lisp/org.el (org-store-link): Use "link" instead of puzzling
  "org-link".
2018-05-17 16:55:31 +02:00
Nicolas Goaziou 463664bdd0 Merge branch 'maint' 2018-05-16 22:07:33 +02:00
Nicolas Goaziou 2b26644b3a Fix `org-skip-over-state-notes'
* lisp/org.el (org-skip-over-state-notes): Allow empty TODO states.

Reported-by: Michael Brand <michael.ch.brand@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00337.html>
2018-05-16 22:06:39 +02:00
Nicolas Goaziou c46fcd9874 org-lint: Add checker for spurious colons in tags
* lisp/org-lint.el (org-lint--checkers): Add checker.
(org-lint-spurious-colons): New function.
* testing/lisp/test-org-lint.el (test-org/spurious-colons): New test.
2018-05-14 17:41:04 +02:00
Nicolas Goaziou 7143ae0355 Fix typo
* lisp/org.el (org-tag-alist): Fix typo in docstring.
2018-05-14 15:38:05 +02:00
Nicolas Goaziou ac21151c4a Fix typo in docstring
* lisp/org.el (org-tag-persistent-alist): Fix typo.

Reported-by: Bernt Hansen <bernt@norang.ca>
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00293.html>
2018-05-13 22:36:09 +02:00
Nicolas Goaziou 640e05523a org-agenda: Fix the last fix...
* lisp/org-agenda.el (org-tags-view): Fix last commit.
2018-05-11 21:55:23 +02:00
Nicolas Goaziou 68b376dee0 org-agenda: Fix "org-agenda: one-armed “if” -> “when”"
* lisp/org-agenda.el (org-tags-view): Re-instate delete `else' part.

Reported-by: Bernt Hansen <bernt@norang.ca>
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00286.html>
2018-05-11 21:49:25 +02:00
Nicolas Goaziou 92b03d161a ox-texinfo: Change sentence ending
* lisp/ox-texinfo.el (org-texinfo-plain-text): Sentences can end with
  a capital letter without a special symbol in Org.

It is simpler to provide a non-breaking space when a capital letter
followed by a period should not end than providing a way to force
ending a sentence.
2018-05-11 19:40:10 +02:00
Nicolas Goaziou 13fb6a3fae Move obsolete declarations into "org-compat.el" 2018-05-10 15:41:50 +02:00
Aaron Ecay 7106eab974 Many small code improvements
* lisp/org-capture.el (org-capture-member): Make obsolete; the old
definition was identical to ‘org-capture-get’ anyway.
(org-capture-mode-map): Move the calls to ‘define-key’ up to where the
variable is defined.
(org-capture-mode-hook): Small docstring tweak.
(org-capture-mode): Fix typo in mode lighter.
(org-capture-set-target-location, org-capture-place-item):
(org-capture-place-plain-text, org-capture-narrow):
(org-capture-empty-lines-after):
(org-capture-import-remember-templates): ‘if’ without else -> ‘when’
* lisp/org-colview.el (org-columns-edit-value): Change an error to a
user-error.
(org-columns-uncompile-format): Improve docstring.
* lisp/org-compat.el (org-remove-from-invisibility-spec): Make
obsolete, the underlying emacs function exists since 1997, commit 31aa282e.
(org-in-invisibility-spec-p, org-count-lines): ‘if’ without else -> ‘when’.
* lisp/org-element.el (org-element-swap-A-B):
* lisp/org-entities.el (org-entities-create-table):
* lisp/org-list.el (org-insert-item):
* lisp/org-macs.el (org-with-point-at, org-base-buffer):
(org-preserve-local-variables, org-overlay-display):
(org-overlay-before-string): ‘if’ without else -> ‘when’.
* lisp/org-eshell.el (org-eshell-open): Fix docstring typo.
* lisp/org-pcomplete.el (pcomplete/org-mode/file-option/language):
(pcomplete/org-mode/file-option/startup):
(pcomplete/org-mode/file-option/options):
(pcomplete/org-mode/file-option/infojs_opt):
(pcomplete/org-mode/link, pcomplete/org-mode/tex):
(pcomplete/org-mode/todo, pcomplete/org-mode/searchhead):
(pcomplete/org-mode/tag, pcomplete/org-mode/prop): Avoid the formerly
misspelled ‘pcomplete-uniqify-list’ function.  It has a defalias in
emacs >= 27; we add our own for older emacsen.
(pcomplete/org-mode/file-option/bind): ‘if’ without else -> ‘when’.
* lisp/org-protocol.el (org-protocol-capture):
(org-protocol-convert-query-to-plist): ‘if’ without else -> ‘when’.
(org-protocol-do-capture): Pacify byte compiler, simplify conditional
logic.
* lisp/org-table.el (org-table-create-with-table.el): Simplify conditional
logic.
(org-table-create, org-table-convert-region, org-table-next-field):
(org-table-beginning-of-field, org-table-end-of-field):
* lisp/org-w3m.el (org-w3m-copy-for-org-mode): ‘if’ without else ->
‘when’.
* lisp/org.el (org-babel-do-load-languages, org-previous-link):
(org-refile): Use ‘(foo ...)’ instead of ‘(funcall 'foo ...)’.
(org-add-log-note): Convert a long cond into a cl-case.
(org-priority): Improve docstring, show a deprecation warning if the
‘show’ argument is passed (which was previously silently ignored).
Also, use ?\s instead of ?\ as a character literal for space.
(org-fast-tag-insert): Fix docstring typo.
(org-fill-element): ‘if’ without else -> ‘when’.
(org-on-target-p): Remove ancient compatibility alias.
2018-05-10 04:22:30 +01:00
Aaron Ecay 9d5852e3b8 org-agenda: misc code improvements
* lisp/org-agenda.el:
(org-agenda-todo-nextset, org-agenda-set-tags): Use “(foo ...)”
instead of “(funcall 'foo ...)”.
(org-agenda-add-entry-to-org-agenda-diary-file): Convert a cond to a
cl-case.

Also remove some compatibility code to work around an emacs feature
that was changed in 2005 (emacs commit 9a20c79b)
2018-05-10 04:22:30 +01:00
Aaron Ecay c9dd7a6a9d org-agenda: one-armed “if” -> “when”
* lisp/org-agenda.el (org-agenda-mode):
(org-agenda-undo, org-agenda):
(org-agenda-get-restriction-and-command):
(org-batch-agenda-csv, org-fix-agenda-info):
(org-agenda-get-some-entry-text):
(org-agenda-prepare, org-agenda-finalize):
(org-agenda-fontify-priorities, org-agenda-entry-text-hide):
(org-agenda-list, org-agenda-ndays-to-span):
(org-search-view, org-todo-list):
(org-tags-view, org-modify-diary-entry-string):
(org-agenda-get-day-entries, org-agenda-get-progress):
(org-agenda-get-deadlines, org-prefix-category-max-length):
(org-agenda-format-item, org-agenda-fix-displayed-tags):
(org-compile-prefix-format):
(org-agenda-before-sorting-filter-function):
(org-agenda-limit-interactively, org-cmp-time):
(org-agenda-set-restriction-lock-from-agenda):
(org-agenda-get-represented-tags, org-agenda-filter-apply):
(org-agenda-filter-top-headline-apply):
(org-agenda-remove-filter, org-agenda-compute-starting-span):
(org-unhighlight, org-unhighlight-once):
(org-agenda-show-tags, org-agenda-check-no-diary):
(org-agenda-date-later-minutes, org-agenda-diary-entry-in-org-file):
(org-agenda-add-entry-to-org-agenda-diary-file):
(org-agenda-bulk-unmark, org-agenda-to-appt): Convert ‘if’ without
‘else’ to ‘when,’ or ‘unless’ in the case of “(if (not ...))”
(org-batch-agenda-csv): Also convert while-catch to dolist.
(org-agenda-prepare): Also simplify a quasiquoted structure.
(org-agenda-entry-text-hide): Also convert a bogus ‘mapcar’ to ‘mapc’.
(org-compile-prefix-format): Also convert sequential ‘if’s to ‘cl-case’.
2018-05-10 04:22:30 +01:00
Aaron Ecay 673165c035 ox-*: single-armed “if” -> “when”
* lisp/ox-html.el (org-html-htmlize-generate-css):
(org-html-template, org-html-final-function):
* lisp/ox-publish.el (org-publish-cache-set-file-property):
* lisp/ox-texinfo.el (org-texinfo-quote-block): Transform ‘if’ with no
else to ‘when’.
2018-05-10 01:17:12 +01:00
Aaron Ecay ccfe51d83c ob-*: single armed “if” -> “when”
* lisp/ob-C.el (org-babel-C-val-to-base-type):
* lisp/ob-comint.el (org-babel-comint-buffer-livep):
* lisp/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
* lisp/ob-octave.el (org-babel-octave-import-elisp-from-file):
* lisp/ob-scheme.el (org-babel-scheme-get-repl): Transform ‘if’ with
no else branch to ‘when’
* lisp/ob-lua.el (org-babel-lua-evaluate-external-process):
* lisp/ob-python.el (org-babel-python-evaluate-external-process):
Simplify conditional logic slightly.
2018-05-10 01:14:24 +01:00
Aaron Ecay 2b7677c097 ob-js.el: fix declare-function calls for external library fns
Otherwise, check-declare gives us errors if these dependencies are not
installed.
2018-05-10 01:10:52 +01:00
Aaron Ecay 581fd90645 Fix declare-function and friends in org.el
* lisp/org-table.el (org-table-with-shrunk-field): Move from here...
* lisp/org-macs.el: ...to here

The move is necessary because this macro is used (at compile time) in
org.el.  We cannot leave its definition in org-table, because that
would lead to a require loop.  So we need to put it in org-macs, and
require the latter file in org.el also at compile time.

Finally, update and sort the declare-function calls.
2018-05-10 01:07:57 +01:00
Aaron Ecay 4afb7f747b Update declare-function calls for functions that have moved.
In cases where functions have moved from org.el into org-macs.el, it
is often possible to replace declare-function by (require 'org-macs)
2018-05-10 01:04:12 +01:00
Nicolas Goaziou 0dda9bf1c1 Mark `org-get-indentation' as obsolete
* lisp/org-macs.el (org-get-indentation): Move function...
* lisp/org-compat: ... here.
* lisp/ob-core.el (org-babel-demarcate-block):
(org-babel-insert-result):
(org-babel-update-block-body):
* lisp/ob-exp.el (org-babel-exp-process-buffer):
* lisp/org-agenda.el (org-agenda-get-some-entry-text):
* lisp/org-capture.el (org-capture-place-item):
* lisp/org-clock.el (org-clock-in):
* lisp/org-element.el (org-element-swap-A-B):
* lisp/org-feed.el (org-feed-format-entry):
* lisp/org-indent.el (org-indent-add-properties):
* lisp/org-list.el (org-in-item-p):
(org-list-struct):
(org-list-struct-apply-struct):
(org-list-item-body-column):
(org-toggle-item):
* lisp/org-src.el (org-src--edit-element):
* lisp/org.el (org-fixup-indentation):
(org-cdlatex-environment-indent):
(org--get-expected-indentation):
(org-indent-region):
(org-toggle-fixed-width):
* lisp/ox.el (org-export-expand-include-keyword): Use
  `current-indentation' instead.
2018-05-09 01:26:31 +02:00
Nicolas Goaziou 0c03971b09 org-list: Avoid unnecessary call to `org-in-item-p'
* lisp/org-list.el (org-list-insert-item): Compute item containing POS
  based on the list structure instead of the buffer.
2018-05-07 23:23:12 +02:00
Kyle Meyer 1dbc506086 Merge branch 'maint' 2018-05-06 02:33:55 -04:00
Kyle Meyer 732aa477b0 Update version keyword 2018-05-06 02:28:09 -04:00
Nicolas Goaziou e8a4f39e73 Merge branch 'maint' 2018-05-04 00:26:37 +02:00
Nicolas Goaziou 064caac937 ox-html: Make use of :html-preamble/postamble-format
* lisp/ox-html.el (org-html--build-pre/postamble): Use
`:html-preamble-format' and `:html-postamble-format' instead of
relying on the global variables.

Reported-by: Brady Trainor <mail@bradyt.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00073.html>
2018-05-04 00:24:36 +02:00
Carsten Dominik ee336b8cf7 Fix typo in docstring 2018-05-03 09:25:56 +02:00
Nicolas Goaziou b148cb0864 Merge branch 'maint' 2018-05-02 23:55:12 +02:00
Nicolas Goaziou 631c4b703e org-src: Clear overlay in Org buffer after major mode change
* lisp/org-src.el (org-src--allow-write-back):
(org-src--auto-save-timer):
(org-src--babel-info):
(org-src--beg-marker):
(org-src--block-indentation):
(org-src--end-marker):
(org-src--from-org-mode):
(org-src--overlay):
(org-src--preserve-indentation):
(org-src--remote):
(org-src--saved-temp-window-config):
(org-src--source-type):
(org-src--tab-width): Define as local and permanent variable.

(org-src--edit-element):
(org-edit-src-code):
(org-edit-inline-src-code): Use `setq' instead of `setq-local'.

When major mode is changed in an edit buffer, the variables above
would be cleared and the overlay in the source buffer could not be
removed anymore.
2018-05-02 23:52:35 +02:00
Nicolas Goaziou eacf403172 org-src: Do not use `setq-local' when not necessary
* lisp/org-src.el (org-src--contents-for-write-back):
(org-src-mode):
(org-src-mode-configure-edit-buffer): Use `setq' instead of
`setq-local' on variable automatically buffer-local when set.
2018-05-02 23:35:00 +02:00
Nicolas Goaziou cac45d5469 ox-beamer: Fix `org-beamer-select-environment'
* lisp/ox-beamer.el (org-beamer-select-environment): Fix thinko.

The error prevents the function to complete: only the tag is added,
not the property.
2018-05-01 23:27:37 +02:00
Nicolas Goaziou 8efcb62dc4 org-src: Add association between beamer and `latex-mode'
* lisp/org-src.el (org-src-lang-modes): Add an entry for "beamer".
  Improve docstring.
2018-05-01 23:17:40 +02:00
Nicolas Goaziou 9ab45860a6 Merge branch 'maint' 2018-05-01 15:06:57 +02:00
Nicolas Goaziou 80eb69b648 org-list: Proper error message when trying to indent top level item
* lisp/org-list.el (org-list-struct-indent): Return proper error
  message upon trying to indent a top-level item.  Use `user-error'.
* testing/lisp/test-org-list.el (test-org-list/indent-item): Add test.
2018-05-01 15:06:08 +02:00
Nicolas Goaziou ede4b999b8 Silence byte-compiler 2018-04-30 14:23:26 +02:00
Nicolas Goaziou 4a3c1a414b org-macs: Silence byte-compiler 2018-04-30 13:59:34 +02:00
Nicolas Goaziou 6d4e0b3dd1 Move `org-no-popups' to "org-macs.el"
* lisp/org-compat.el (org-no-popups): Move function...
* lisp/org-macs.el : ... here.
2018-04-30 13:58:25 +02:00
Nicolas Goaziou 5c12c21a73 org-capture: Narrow to current captured row
* lisp/org-capture.el (org-capture-place-table-line): Narrow to
  current captured row and obey :unnarrowed property, like every other
  target type.
2018-04-30 11:42:01 +02:00