Commit Graph

14402 Commits

Author SHA1 Message Date
Nicolas Goaziou 122bf29974 ob-core: Tiny refactoring
* lisp/ob-core.el (org-babel-execute-src-block): Tiny refactoring.
  Keep lines under 80 columns.
2018-03-03 10:07:21 +01:00
Nicolas Goaziou 3fab011755 org-element: Better indentation for `org-element-adopt-elements'
* lisp/org-element.el (org-element-adopt-elements): Define a better
  indentation rule.
2018-03-03 10:00:06 +01:00
Bastien Guerry 0c96d5066f Merge branch 'develop' of stardiviner/org-mode into master 2018-03-02 08:52:42 +00:00
stardiviner 39bd69b08d
* ob-core.el: (org-babel-execute-src-block) handle :results graphics :file case.
Don't write result to file if result is graphics.
2018-03-02 14:22:52 +08:00
Nicolas Goaziou a1659053d5 Merge branch 'maint' 2018-03-01 10:56:01 +01:00
Nicolas Goaziou 428ab7942a org-agenda: Obey to "++" prefix when bulk rescheduling/resetting deadline
* lisp/org-agenda.el (org-agenda-bulk-action): When date starts with
  "++", shift every marked entry.

Reported-by: Michael Hoffman <gmane4-hoffman@sneakemail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2018-03/msg00001.html>
2018-03-01 10:53:35 +01:00
Nicolas Goaziou d87148057e Update .dir-locals
* .dir-locals.el (org-mode): Update default values.
* lisp/org-list.el (org-list-description-max-indent): Add :safe
  keyword.
2018-02-27 19:17:18 +01:00
Nicolas Goaziou 2c93a0b2d7 org-tempo: Fix TAB behaviour
* lisp/org-tempo.el (org-tempo-complete-tag): Use a different trick to
  handle failed completions.

Reported-by: Brent Goodrick <bgoodr@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-02/msg00164.html>
2018-02-27 02:02:56 +01:00
Alex Branham f521400a08 New face for upcoming deadlines in agenda
* lisp/org-faces.el (org-upcoming-distant-deadline-face): New face.
2018-02-27 01:44:49 +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
Nicolas Goaziou 6ef5d2497c Revert "org-agenda: Fix lprops when recreating sticky agendas"
This reverts commit b306aa2245.
2018-02-24 22:36:29 +01:00
Nicolas Goaziou 6e10c268de Merge branch 'maint' 2018-02-24 22:01:32 +01:00
Nicolas Goaziou 65d6d3b043 org-capture: Silence byte-compiler 2018-02-24 22:01:04 +01:00
Nicolas Goaziou be93bacfa1 Merge branch 'maint' 2018-02-24 21:59:23 +01:00
Nick Dokos 84a3d03dff Replace dash by underscore in temp file names.
* org-babel-groovy-evaluate: replace '-' by '_' in temp file names.

Apparently, the JVM uses file names in the construction of names of internal
objects and dashes are illegal in that context. See

   https://stackoverflow.com/questions/48893994/groovy-in-org-mode-babel

for an example.
2018-02-24 21:39:50 +01:00
Nicolas Goaziou f3c20eb912 Merge branch 'maint' 2018-02-22 14:38:35 +01:00
Nicolas Dudebout db90aadd38 org-agenda: make log and clockreport modes local
* lisp/org-agenda.el (org-agenda-mode): Only set `org-agenda-show-log'
  and `org-agenda-clock-report-mode' to their default values when
  constructing an agenda buffer, and not when redoing it.
* lisp/org-agenda.el (org-agenda-log-mode,
  org-agenda-clockreport-mode): Do not set the global default value
  `org-agenda-start-with-log-mode' (respectively
  `org-agenda-start-with-clockreport-mode') with the current value of
  `org-agenda-log-mode' (respectively `org-agenda-clockreport-mode'),
  which, with sticky agendas is even buffer local.

`org-agenda-show-log' indicates if the the current agenda buffer has
log-mode enabled.  When building a new agenda buffer, it gets its
value from `org-agenda-start-with-log-mode'.  It is is semantically a
buffer local variable: when creating a new agenda buffer you expect it
to be set to the value in `org-agenda-start-with-log-mode'.  However,
2e9c2d71 while fixing an issue with sticky agendas rendered the
variable `org-agenda-log-mode' effectively global: toggling log mode
in a given agenda buffer modifies the global default for all agenda
buffers.  The same reasoning holds for clockreport mode.

This change ensures that a log or clockreport mode change made in one
agenda buffer does not propagate to other agenda buffers, existing or
new.  The change is however preserved on org-agenda-redo in the
initial agenda buffer, whether using sticky agendas or not.

TINYCHANGE
2018-02-22 14:37:45 +01:00
Nicolas Goaziou 79b36b6a8d Merge branch 'maint' 2018-02-21 15:04:37 +01:00
Nicolas Goaziou 6655429b8d org-capture: Refresh clock mode line when finalizing capture
* lisp/org-capture.el (org-capture-finalize): Refresh clock mode line.
* lisp/org-clock.el (org-clock--mode-line-heading): New function.
(org-clock-get-clock-string): Small refactoring.
(org-clock-update-mode-line): Add optional argument. Use new function.
(org-clock-in): Use new function.
2018-02-21 15:02:33 +01:00
Kyle Meyer 47908228e7 Merge branch 'maint' 2018-02-18 16:33:04 -05:00
Glenn Morris ec8590d5e2 Backport commit 69107f347 from Emacs
; Fix doc typos related to indefinite articles
69107f347b3ac7f51cd22333f57393fd735915f2
Glenn Morris
Fri Feb 16 17:33:57 2018 -0500
2018-02-18 16:32:41 -05:00
Glenn Morris 4ddfc6bd69 Backport commit 66a4e651f from Emacs
; Fix doc typos related to indefinite articles
66a4e651f3cf38c320d1a9d5ae6f88dcc641792b
Glenn Morris
Fri Feb 16 15:16:15 2018 -0500
2018-02-18 16:32:41 -05:00
Nicolas Goaziou bbcf2f939c Merge branch 'maint' 2018-02-15 15:04:59 +01:00
Nicolas Goaziou 1562d4e293 ox-publish: Fix last commit
* lisp/ox-publish.el (org-publish-org-to):
(org-publish-collect-index):
(org-publish--store-crossrefs):
(org-publish-resolve-external-link): Use `file-truename' instead of
`expand-file-name'.

Do not preserve symbolic links when a unique identifier is needed,
e.g., when storing or retrieving file properties from cache.
2018-02-15 14:51:26 +01:00
Nicolas Goaziou 58da7d4d17 org-table: Fix shrunk columns on hlines
* lisp/org-table.el (org-table--shrunk-field): Fix function when on
  a hline.
* testing/lisp/test-org-table.el (test-org-table/shrunk-columns): Add
  tests.

Reported-by: Kaushal Modi <kaushal.modi@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-02/msg00231.html>
2018-02-14 18:48:48 +01:00
Nicolas Goaziou af824a9b39 Merge branch 'maint' 2018-02-14 18:00:38 +01:00
Nicolas Goaziou 1a5151c51d org-clock: Fix default clocktable properties priority
* lisp/org-clock.el (org-clock-report): Improve docstring.  Refactor
  code.  Ensure user-defined properties have precedence over automatic
  ones.

Reported-by: Tyler Smith <tyler@plantarum.ca>
<http://lists.gnu.org/r/emacs-orgmode/2018-02/msg00215.html>
2018-02-14 17:57:21 +01:00
Nicolas Goaziou 61c8903c87 Fix failing tests
* lisp/org-compat.el (org-string-collate-lessp): Reinstate function,
  inadvertently removed in last merge with maint branch.
2018-02-13 14:17:00 +01:00
Nicolas Goaziou 2a7a4a65ad Merge branch 'maint' 2018-02-13 14:10:28 +01:00
Nicolas Goaziou 7c21dfc771 ox-publish: Follow symlink directories
* lisp/org-compat.el (directory-files-recursively): Remove
  compatibility function, no longer needed.
* lisp/ox-publish.el (org-publish--expand-file-name):
(org-publish-org-to):
(org-publish-collect-index):
(org-publish--store-crossrefs):
(org-publish-resolve-external-link): Preserve symlinks in file name.
(org-publish-get-base-files): Follow symlink directories.
(org-publish-get-project-from-filename): Preserve symlinks in file
name.  Do not use `file-in-directory-p', which ignores symlinks.

Reported-by: Michel Damiens <michel.damiens@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-02/msg00186.html>
2018-02-13 14:06:56 +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 da78ccc690 org-tempo: Do not activate Org Tempo in export output buffers and agenda
* lisp/org-tempo.el (b): Do not activate Org Tempo in export output
  buffers and agenda.
2018-02-11 12:06:42 +01:00
Nicolas Goaziou 6791fd29d3 org-tempo: Fix obnoxious `ding' when expanding templates
* lisp/org-tempo.el (org-tempo-complete-tag): New function.

Reported-by: Brent Goodrick <bgoodr@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-02/msg00080.html>
2018-02-11 12:03:15 +01:00
Nicolas Goaziou 6cb6ddc671 org-macs.el: Tiny re-ordering 2018-02-11 11:45:07 +01:00
Nicolas Goaziou f487fccbec org-macs: Use `define-key' instead of `org-defkey'
* lisp/org-macs.el (org-completing-read): Use `define-key' instead of
  `org-defkey'.

For bootstrapping reasons, "org-macs.el" isn't expected to require
functions from "org.el". Besides, minibuffer isn't supposed to depend
of `org-disputed-keys' either.
2018-02-11 11:40:21 +01:00
Nicolas Goaziou 013941de86 `org-save-outline-visibility' preserve outline, blocks and drawers
* lisp/org-macs.el (org-save-outline-visibility): Also preserve blocks
  and drawers visibility.  Re-implement without helper functions.
  (org-outline-overlay-data):
  (org-set-outline-overlay-data): Remove functions.
2018-02-11 11:37:50 +01: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
Nicolas Goaziou b73f7c013d ox-ascii: Use angle brackets for external links
* lisp/ox-ascii.el (org-ascii--describe-links):
(org-ascii-link): Use angle brackets for external links.

Reported-by: Samuel Wales <samologist@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-02/msg00105.html>
2018-02-10 14:16:37 +01:00
Nicolas Goaziou da26490208 org-colview: Fix typo in docstring
* lisp/org-colview.el (org-columns-summary-types): Fix typo.
2018-02-10 14:03:59 +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 3558e6e835 Merge branch 'maint' 2018-02-05 15:37:15 +01:00
Tim Landscheidt 61a885a399 Make manual and URL links in docstrings clickable 2018-02-05 15:27:12 +01:00