Commit Graph

897 Commits

Author SHA1 Message Date
Marco Wahl 22d2b0ac84 org-table: Insert column at point
* lisp/org-table.el (org-table-insert-column): Adjust the function to
insert the column at point (and not to the right.)

Org-manual, ORG-NEWS and testing are changed accordingly.
2020-04-18 00:13:24 +02:00
Nicolas Goaziou fb593f7556 Handle ".+" repeater with hours step
* doc/org-manual.org (Repeated tasks): Document new feature.
* lisp/org.el (org-auto-repeat-maybe): Repeat from now when ".+" is
used in conjunction of hours increment.
* testing/lisp/test-org.el (test-org/auto-repeat-maybe): Add tests.
2020-04-06 15:18:48 +02:00
Kyle Meyer ba685555c4 org-clock: Mention semimonth step in manual and add test
* doc/org-manual.org (The clock table): Mention new semimonth :step
value.
* testing/lisp/test-org-clock.el (test-org-clock/clocktable/step):
Test :step semimonth.

Add a NEWS entry as well.
2020-03-26 21:04:00 -04:00
Nicolas Goaziou 041138e47c Remove `org-export-link-as-file'
* lisp/ol.el (org-link-parameters): Remove reference to the function.
* lisp/ox.el (org-export-link-as-file): Remove function.
* testing/lisp/test-ox.el (test-org-export/link-as-file): Remove test.

The current implementation is not satisfactory, and not useful in the
code base. Using a pre-export hook turning custom link type into
"file" is enough for now. See "attachement" links for an example.
2020-02-28 01:30:30 +01:00
Nicolas Goaziou 5d4314ce9e ORG-NEWS: Improve suggested fix
* etc/ORG-NEWS (Possibly broken internal file links: please check and
fix): Improve code.  Limit false positives.
2020-02-26 16:36:21 +01:00
Bastien 1a84a8b611 etc/ORG-NEWS: Add incompatible change about possibly broken links 2020-02-25 20:29:17 +01:00
Bastien 3a543a981b Enhancements to `org-latex-to-html-convert-command'
* lisp/org.el (org-latex-to-html-convert-command): Fix option.

* etc/ORG-NEWS: Document `org-latex-to-html-convert-command'
as a new option.
2020-02-24 11:21:40 +01:00
Nicolas Goaziou fe5962ce9b Fix some time stamps regexps
* lisp/org.el (org-ts--internal-regexp): New variable.
(org-ts-regexp):
(org-ts-regexp-inactive):
(org-ts-regexp-both): Use new variable.
(org-maybe-keyword-time-regexp): Remove variable.
(org-logbook-drawer-re): Simplify regexp.

Also move "Timestamp" section higher in the library (topological
order). This change should pacify "Relint" checks.
2020-02-23 12:41:33 +01:00
Bastien 4d23aa19d5 etc/ORG-NEWS: Tiny rephrasing and formatting fixes 2020-02-23 09:42:02 +01:00
Bastien 08428fed78 ob-shell.el: Delete `org-babel-shell-return-value-is-exit-status'
* lisp/ob-shell.el (org-babel-sh-evaluate): Return the output
by default.  Return exit status as the "value" when :result is
explicitely set to "value".

* lisp/ob-shell.el
(org-babel-shell-return-value-is-exit-status): Delete option.

* doc/org-manual.org (Collection): Be more accurate.

See the whole thread here:
https://lists.gnu.org/archive/html/emacs-orgmode/2020-02/msg00715.html

Thanks to everyone in this discussion.
2020-02-22 10:58:55 +01:00
Bastien e360cd8f3a Change the default values for several options
* doc/org-manual.org (Execute commands in the active region):
Update the manual given the new defaults.

* etc/ORG-NEWS (New default settings for some options): New
section.

* lisp/org.el (org-loop-over-headlines-in-active-region):
Change the default value to `t'.
(org-fontify-done-headline): Ditto.

* lisp/org-agenda.el
(org-agenda-loop-over-headlines-in-active-region): Ditto.

* lisp/org-src.el (org-src-tab-acts-natively): Ditto.
2020-02-21 16:35:56 +01:00
Bastien 0c02928eb2 ob-shell.el: Rename `ob-shell-return-value-is-exit-status'
* lisp/ob-shell.el
(org-babel-shell-return-value-is-exit-status): Rename from
`ob-shell-return-value-is-exit-status'.
(org-babel-execute:shell, org-babel-sh-evaluate): Use new name.
(org-babel--variable-assignments:bash_assoc): Fix indentation.
2020-02-21 08:26:37 +01:00
Nicolas Goaziou afd3b04ecc ol: Extend open tooling in link parameters
* lisp/ol.el (org-link-parameters): Extend :follow parameter to handle
a second argument.
(org-link-open): Call custom-link functions after internal ones.
(org-link-open-as-file): New function.
(org-link-parameters): Reference new function.
(org-link-open): Use new function.
2020-02-19 18:42:47 +01:00
Bastien ac1498ec6e etc/ORG-NEWS: Document `ob-shell-return-value-is-exit-status'
* etc/ORG-NEWS: Document `ob-shell-return-value-is-exit-status'.
2020-02-19 16:57:15 +01:00
Bastien 325962c003 org.el: New option `org-startup-numeroted' and #+startup: num
* lisp/org.el (org-startup-numeroted): New option.
(org-startup-options): New "num" and "nonum" startup keywords.
(org-mode): Startup according `org-startup-numeroted' or the
local #+startup setup.

* doc/org-manual.org (Dynamic Headline Numbering)
(Summary of In-Buffer Settings): Document
`org-startup-numeroted' and #startup: num.

* etc/ORG-NEWS: Document the new startup option.

Thanks to Guillaume MULLER for this idea.
2020-02-18 13:27:33 +01:00
Bastien fc3f1e6b28 Revert "ob-python: Session returns empty string if no return value"
This reverts commit 5fc4576548.
2020-02-17 23:46:49 +01:00
Bastien b8a2ad9288 org-agenda.el: New hook `org-agenda-filter-hook'
* lisp/org-agenda.el (org-agenda-filter-hook): New hook.
(org-agenda-finalize): Enhance docstring.
(org-agenda-filter): Use the new hook.
(org-agenda-filter-expand-tags, org-agenda-filter-apply): ):
Fix docstrings.

* etc/ORG-NEWS: Document the new hook.
2020-02-17 18:40:11 +01:00
Jack Kamm 5fc4576548 ob-python: Session returns empty string if no return value
* lisp/ob-python.el (org-babel-python--eval-ast): Change sessions to
return an empty string, instead of None, if there is no return value.
2020-02-17 18:30:47 +01:00
Bastien 055742562c org-colview.el: Allow text rescaling
* lisp/org-colview.el (org-columns-header-line-remap): New
variable.
(org-columns--display-here): Don't rigidly inherit the :height
from the default face, allow text-scale-* to also rescale the
temporary column view header-line.
(org-columns-remove-overlays): If
`org-columns-header-line-remap' is non-nil, remove the
header-line face relative remapping.

* etc/ORG-NEWS (Allow text rescaling in column view): Document
the ability to scale text in column view.

Thanks to Marco Wahl for this suggestion.
2020-02-17 13:59:19 +01:00
Bastien 1d8d83d875 etc/ORG-NEWS: Add more details on ob-clojure.el enhancements 2020-02-17 00:12:48 +01:00
Bastien e561bac519 etc/ORG-NEWS: Document ob-clojure.el changes and reorder 2020-02-16 11:39:19 +01:00
Bastien 684ab0f2a4 etc/ORG-NEWS: Add a section about the 7yo bug, rephrasing 2020-02-14 14:46:31 +01:00
Bastien bfe404c933 etc/ORG-NEWS: Fix typo and formatting 2020-02-13 17:04:04 +01:00
Bastien 32cffa9ce4 etc/ORG-NEWS: Add a new entry about ob-clojure.el updates 2020-02-13 17:03:41 +01:00
Dan Drake 554a3fc643 org-clock.el: Add `t' option to `org-clock-resolve'
* org-clock.el (org-clock-resolve): add `t' option.  This works like
`k', but asks the user to specify a time instead of a number of
minutes.

TINYCHANGE

Often when you are interrupted at a task and get back to it, you know
what time the interruption happened. This option makes it easy to tell
org-resolve-clocks about that. For example, say you clocked into task A
at, say, 9:37:

    * original task A
      :LOGBOOK:
      CLOCK: [2020-01-21 Mon 09:37]
      :END:

While working on task A, you get a phone call. When the call is done,
you'd like to update your time logging to reflect the phone call. Your
phone says the call was at 11:09.

With C-c C-x C-z, you can use the `K' option, but you need to figure out
the number of minutes to keep. It's easier to look at the phone, or to
mentally note the time when an interruption starts. With the new option,
you can select `T', and just specify a time of 11:09. The state is now:

    * original task A
      :LOGBOOK:
      CLOCK: [2020-01-21 Mon 09:37]--[2020-01-21 Mon 11:09] => 1:32
      :END:

You add the phone call to your org buffer and do C-c C-x C-i to clock
in. Org asks you to start the time from when the previous task ended,
you say yes, and the state is now:

    * original task A
      :LOGBOOK:
      CLOCK: [2020-01-21 Mon 09:37]--[2020-01-21 Mon 11:09] => 1:32
      :END:
    * task B, phone call
      :LOGBOOK:
      CLOCK: [2020-01-21 Mon 11:09]
      :END:

At this point, you can clock back into task A, or any other task.

The key feature here is to be able to just type in a time -- in any
format accepted by org-read-date -- instead of specifying a number of
minutes.
2020-02-13 07:48:04 +01:00
Bastien 8e9f78f612 Revert "etc/ORG-NEWS: Add a note about new way to resolve clock"
This reverts commit 550db5f014.
2020-02-13 07:37:49 +01:00
Bastien 550db5f014 etc/ORG-NEWS: Add a note about new way to resolve clock 2020-02-13 01:27:48 +01:00
Bastien 1a05da36b8 etc/ORG-NEWS: Add incompatible change 2020-02-12 19:10:45 +01:00
Bastien eaa220f6a7 Small code enhancement
* doc/org-manual.org (Checkboxes): Minor update.

* lisp/org-list.el (org-at-radio-list-p): Respect the
attributes #+ATTR_* syntax.
2020-02-12 08:40:46 +01:00
Bastien 4028cc731b Use "#+attr_org: :radio" before lists to enable radio buttons
* doc/org-manual.org (Checkboxes): Document the use of
"#+attr_org".

* lisp/org.el (org-ctrl-c-ctrl-c): When the list at point is
preceded by "#+attr_org: :radio" use `org-toggle-radio-button'
instead of `org-toggle-checkbox'.

* lisp/org-list.el (org-at-radio-list-p): New defsubst.
(org-toggle-checkbox): Use it.

* etc/ORG-NEWS: Document the use of "#+attr_org".
2020-02-12 01:51:46 +01:00
Bastien 561feb128d Add `org-toggle-radio-button' and related minor mode
* doc/org-manual.org (Checkboxes): Document the new minor mode
and command.

* lisp/org-keys.el (org-mode-map): Bind C-c C-x C-r to
`org-toggle-radio-button'.

* lisp/org-list.el (org-list-checkbox-radio-mode): New minor
mode to let C-c C-c call `org-toggle-radio-button' instead of
`org-toggle-checkbox'.
(org-toggle-radio-button): New command.

* lisp/org.el (org-ctrl-c-ctrl-c): Use `org-toggle-radio-button'.

* etc/ORG-NEWS: Document the new minor mode and command.

Thanks to Phil Sainty for sharing this idea and links to similar
implementations.
2020-02-11 23:55:53 +01:00
Bastien 85363d4867 etc/ORG-NEWS: Allowed empty HTML extension 2020-02-11 09:34:17 +01:00
Bastien d0cc865623 Rearrange etc/ORG-NEWS 2020-02-11 09:02:19 +01:00
Bastien 23fa7b9796 etc/ORG-NEWS: Delete an obsolete change
* etc/ORG-NEWS: Delete an obsolete change.
2020-02-10 23:25:54 +01:00
Bastien d9b586ce34 etc/ORG-NEWS: Document a change
* etc/ORG-NEWS: Document the ability to scroll up and down in the
agenda commands dispatch window.
2020-02-10 23:21:34 +01:00
Bastien e3b79ad2bf Allow a new value for `org-adapt-indentation'
* doc/org-manual.org (Hard indentation): Add a footnote
mentioning the new value for `org-adapt-indentation'

* etc/ORG-NEWS: Mention the new value for
`org-adapt-indentation'.

* lisp/org.el (org-logbook-drawer-re): New constant.
(org-adapt-indentation): Allow 'headline-data as a new value
to only adapt indentation for headline data.
(org-fixup-indentation, org--get-expected-indentation): Handle
`org-adapt-indentation' set to 'headline-data.

* lisp/org-indent.el (org-indent-mode)
(org-indent-add-properties): Handle `org-adapt-indentation'
set to 'headline-data.

* lisp/org-clock.el (org-clock-in): Call `org-indent-line'
after clock timestamp insertion.
2020-02-09 17:30:42 +01:00
Bastien 88794cab06 New option `org-clock-auto-clockout-timer'
* etc/ORG-NEWS (New option ~org-clock-auto-clockout-timer~):
Mention the new option `org-clock-auto-clockout-timer'.

* doc/org-manual.org (Clocking out automatically after some
idle time): Document `org-clock-auto-clockout-timer'.

* lisp/org.el (org-clock-auto-clockout-insinuate): New
function to add a hook for auto-clocking out the current tasks
after `org-clock-auto-clockout-timer' seconds.

* lisp/org-clock.el (org-clock-auto-clockout-timer): New option.
(org-clock-auto-clockout): New function, use the new option.
2020-02-09 11:05:12 +01:00
Bastien 0e75ebc523 Implement and document looping over headlines in agenda
* doc/org-manual.org (Execute commands in the active region):
New section, documenting both
`org-loop-over-headlines-in-active-region' and
`org-agenda-loop-over-headlines-in-active-region' options.

* etc/ORG-NEWS (Looping agenda commands over headlines): Add
an entry about "Looping agenda commands over headlines".

* lisp/org-agenda.el (org-agenda-do-in-region): New function.
(org-agenda-maybe-loop): New macro.
(org-agenda-kill, org-agenda-archive-default)
(org-agenda-archive-default-with-confirmation)
(org-agenda-archive, org-agenda-archive-to-archive-sibling)
(org-agenda-archive-with, org-agenda-todo)
(org-agenda-set-property, org-agenda-set-effort)
(org-agenda-toggle-archive-tag, org-agenda-date-prompt)
(org-agenda-schedule, org-agenda-deadline)
(org-agenda-add-entry-to-org-agenda-diary-file): Use
`org-agenda-maybe-loop' to DTRT when the region is active.
(org-agenda-loop-over-headlines-in-active-region): New option.
2020-02-08 12:17:40 +01:00
Bastien b988796a45 etc/ORG-NEWS: Mention the new org-refile.el file
* etc/ORG-NEWS (New =org-refile.el= file): Mention the new
org-refile.el file.
2020-02-05 15:49:13 +01:00
Bastien c452dc38dc org-table.el: Enhancements to table header mode
* lisp/org-faces.el (org-table-header): New face.

* lisp/org-table.el (org-table-header-set-header): Rename from
`org-table-header-set-line'.  Use the new face.
2020-02-05 01:20:54 +01:00
Jack Kamm cc89d5523f ob-python: Fix several issues with :session :results value
* lisp/ob-python.el (org-babel-python-evaluate-session): Fix a few
related issues with :session :results value blocks, including broken
if-else statements, indented blocks with blank lines, and returning
the wrong value when underscore has been used.
(org-babel-python--eval-ast): New constant variable, a string
consisting of Python code to execute a source block using ast.

Previously, python blocks with parameters ":session :results value"
were entered line-by-line into the Python session, which could cause
issues around indentation and new lines.  Now, such python blocks are
written to temp files, then the built-in ast python module is used to
parse and execute them, and to extract the last line separately to
return as a result.  Introduces a change in behavior, requiring that
the last line must be a top-level expression statement if its result
is to be saved (otherwise, the result is None).
2020-02-03 21:17:38 -08:00
Jack Kamm dcdb470177 Add inline remote image display
* lisp/org.el (org-display-inline-images): Add inline remote image
display. Remote image display is controlled by the new option
`org-display-remote-inline-images'.
2020-02-01 11:50:08 +01:00
Bastien 110b034151 Replace "org-table-electric-header" by "org-table-header-line"
* lisp/org-table.el (org-table-header-line-p)
(org-table-header-line-mode): Replace
"org-table-electric-header" by "org-table-header-line".

* doc/org-manual.org (Miscellaneous): Ditto.

Thanks to Samuel Wales for suggesting this name.
2020-02-01 09:52:57 +01:00
Bastien 3d0282ef87 New option `org-archive-subtree-save-file-p'
* lisp/org-agenda.el (org-agenda-archive-with): Bind
`org-archive-from-agenda' to `t' when archiving from agenda.

* lisp/org-archive.el (org-archive-subtree-save-file-p): New option.
(org-archive-subtree): Use the new option.

* doc/org-manual.org (Moving a tree to an archive file):
Mention the new option.

Thanks to Russ Allbery for suggesting a similar idea.
2020-01-31 10:42:40 +01:00
Bastien 4f98694bf7 Allow numeric values for priorities
* lisp/org.el (org-priority-highest, org-priority-default):
Allow integer.
(org-priority-get-priority-function): Tiny docstring change.
(org-priority-to-value): New defsubst.
(org--setup-collect-keywords, org-priority-regexp)
(org-priority, org-get-priority): Allow numeric values.

* doc/org-manual.org (Priorities): Illustrate the use of
numeric values for priorities.
2020-01-30 23:01:29 +01:00
Bastien e11f506484 Continue previous commit and document it in etc/ORG-NEWS
* lisp/org.el (org-priority-enable-commands)
(org-priority-highest, org-priority-get-priority-function):
Define aliases.

(org-priority): Use `org-priority-show'.

* lisp/org-agenda.el (org-agenda-priority, org-agenda-menu):
Ditto.
2020-01-30 15:16:44 +01:00
Bastien e1dfda96fd etc/ORG-NEWS: Various rephrasing 2020-01-30 00:38:32 +01:00
Bastien b476ffd266 Implement the `org-table-electric-header-mode' minor mode
* lisp/org-table.el (org-table-electric-header-p): New option.
(org-table-temp-header-line, org-table-electric-header-mode): New
variables.
(org-table-set-header-line-format)
(org-table-electric-header-mode): New minor mode to display the
table's current first row as the header line when this first row
is not visible anymore.

* doc/org-manual.org (Miscellaneous): Document
`org-table-electric-header-mode'.
2020-01-29 15:17:32 +01:00
Marco Wahl 45a0fe531c agenda: C-c C-c deactivates columns
* lisp/org-agenda.el (org-agenda-ctrl-c-ctrl-c):  New function.

This is to unify and thereby harmonize the behavior of C-c C-c with
regard to Org files and columns.
2020-01-28 00:00:05 +01:00
Bastien 8a12b125a8 org.el: New default value for `org-file-apps'
* lisp/org.el (org-file-apps): Add emacs as the application for
opening directories.
2020-01-26 19:33:53 +01:00
Bastien f9c34a7d51 org-clock.el: New option `org-show-notification-timeout'
* lisp/org-clock.el (org-show-notification-timeout): New option.
(org-show-notification): Use `w32-notification-notify' and the new
option.
2020-01-26 17:35:18 +01:00
Jack Kamm 7d5e931f79 org-src: Add option `plain' to org-src-window-setup
* lisp/org-src.el (org-src-window-setup): Add option `plain' for
org-src-window-setup, that uses vanilla display-buffer to show the
source window.
2020-01-24 23:06:40 -05:00
Gustav Wikström edefb2835d Additional option for org-attach-store-link-p
* doc/org-manual.org (Attachment options)
* etc/ORG-NEWS (New option in ~org-attach-store-link-p~)
* lisp/org-attach.el (org-attach-store-link-p)
  (org-attach-attach): Add option to store a link to the attached file
  with a file link.
2020-01-19 10:50:14 +01:00
Jack Kamm d833920def org-src: restore windows for some values of org-src-window-setup 2020-01-16 16:09:42 +01:00
Nicolas Goaziou 2fde90aa2e org-duration: Read and write duration in compact form
* lisp/org-duration.el (org-duration-format): Add `compact' symbol.
(org-duration-set-regexps): Make white space between duration parts
optional
(org-duration-from-minutes): Handle `compact' symbol.
* testing/lisp/test-org-duration.el (test-org-duration/from-minutes):
(test-org-duration/p): Add tests.
2020-01-04 18:39:05 +01:00
Kyle Meyer 93c11da002 Merge branch 'maint' 2020-01-01 13:39:26 -05:00
Kyle Meyer ff5fc050d3 Update copyright year to 2020 2020-01-01 13:38:46 -05:00
Jarmo Hurri ac939125a4 ob-java: Add header argument to pass command line args
* lisp/ob-java.el (org-babel-execute:java): Handle new header argument `:cmdargs` and pass its value as the last element in call to java.
2019-12-27 09:56:11 +01:00
Terje Larsen 2dddaf474b org: Add customization to fontify TODO headlines
* lisp/org.el (org-fontify-todo-headline): Add new boolean customization to
  toggle this behavior.
* lisp/org.el (org-set-font-lock-defaults): Apply face org-headline-todo to
  lines starting with keywords in org-not-done-keywords.
* lisp/org-faces (org-headline-todo): New face.

TINYCHANGE
2019-12-22 16:00:39 +01:00
Nicolas Goaziou 2eeafcaf34 Merge branch 'maint' 2019-12-22 14:58:14 +01:00
Nicolas Goaziou 546cbad531 Link syntax require to escape every square bracket
* lisp/ol.el (org-link-make-regexps): Update regexp to forbid any
un-escaped square bracket in the URI.
(org-link-escape):
(org-link-unescape):
* testing/lisp/test-ol.el (test-ol/escape):
(test-ol/unescape):
(test-ol/store-link):
* testing/lisp/test-org.el (test-org/custom-id):
(test-org/fuzzy-links):
* testing/lisp/test-ox.el (test-org-export/resolve-fuzzy-link): Adapt
to new syntax.
* doc/org-manual.org (Link Format): Update documentation.

The new syntax allowed un-escaped opening square brackets in the URI
part of bracket links. Unfortunately, it led to bug as described here:

  <https://lists.gnu.org/archive/html/emacs-orgmode/2019-12/msg00312.html>

Now, we require to escape every square bracket in the URI.
2019-12-22 14:52:53 +01:00
Kyle Meyer 955e531d24 Merge branch 'maint' 2019-12-11 21:24:45 -05:00
Paul Eggert f9a55cba31 Backport commit b0f20651e from Emacs
; Spelling fixes
b0f20651e3cbb8a66f11ffae4c18634019c20cd4
Paul Eggert
Tue Dec 10 20:05:49 2019 -0800
2019-12-11 21:22:50 -05:00
Paul Eggert ac90e86c32 Backport commit d1a791f8e from Emacs
Spelling fixes
d1a791f8edc1b8f2189b6f1b3be7b946fef1edbc
Paul Eggert
Mon Dec 9 18:45:18 2019 -0800
2019-12-11 21:19:55 -05:00
Marco Wahl 2c0f936e88 ORG-NEWS: Fix the location of the entries from last commit 2019-12-09 21:09:52 +01:00
Jason Dunsmore a410413be8 org-capture: Add support for month trees
* doc/org-manual.org: Add `:tree-type month' option for capture
  templates.
* lisp/org-capture.el (org-capture-set-target-location): Add
  `:tree-type month' option to capture templates to group entries by
  month.
* lisp/org-datetree.el (org-datetree-find-month-create): Add
  `org-datetree-find-month-create' function to add datetree entries
  grouped by month.
* testing/lisp/test-org-datetree.el
  (test-org-datetree/find-month-create): Add test for new function.
2019-12-09 20:08:28 +01:00
Marco Wahl b8f43ecbf4 org,colview: Quit column-view with C-c C-c. manual,news: Update
* lisp/org-colview.el (org-columns-toggle-or-columns-quit): New
  function.  Takes the place of removed function
  org-columns-set-tags-or-toggle.
2019-12-04 23:36:33 +01:00
Bastien 36753ee650 etc/ORG-NEWS: Rename "Version Next" to "Version 9.4 (not yet released)" 2019-12-04 10:41:06 +01:00
Bastien 7d3d14daa3 Merge branch 'next' of code.orgmode.org:bzg/org-mode 2019-12-03 16:36:50 +01:00
Bastien efe4c85fa2 etc/ORG-NEWS: Use blank lines between paragraphs consistently 2019-12-03 16:25:32 +01:00
Kyle Meyer a4fa04bbd4 Merge branch 'master' into next 2019-11-16 17:19:11 -05:00
Jonas Bernoulli 5117d8a159 Fix typos 2019-11-16 17:17:36 -05:00
Gustav Wikström cffe44ba94 Merge branch 'master' into next 2019-10-21 14:58:39 +02:00
Gustav Wikström 42b8db0d34 Improve handling of org attach id to path functions
* doc/org-manual.org (Attachment options)
* etc/ORG-NEWS (Org-Attach has been refactored and extended)
(New ID method based on timestamp)
* lisp/org-attach.el (org-attach-id-uuid-folder-format)
(org-attach-id-ts-folder-format)
(org-attach-id-to-path-function-list, org-attach-dir)
(org-attach-dir-from-id): Better handling of id to path
functionality. At the same time adding an id-to-path function
for timestamp-based ID that easily can be promoted to the
primary function by customization of the user.
2019-10-20 02:49:48 +02:00
Gustav Wikström 1bdff9f73d Org document property-drawers
Add functionality to define property-blocks on document level, in
addition to at headline level.

* doc/org-manual.org:
* etc/ORG-NEWS: Document new functionality.

* lisp/org.el (org-keyword-regexp): Define constant instead of
  hardcoding.
(org-file-properties): Renamed, see next line.
(org-keyword-properties): Renamed from above.  Due to the fact that
  properties can be defined for the whole document using property
  drawers this local variable needs a rename to make its name less
  ambigous.
(org-refresh-properties, org-refresh-property, org-entry-properties)
(org-refresh-category-properties, org-get-property-block)
(org-entry-get-with-inheritance, org-entry-put)
(org-insert-property-drawer, org-end-of-subtree): Made to work before
  first headline.
(org-at-property-block-p): New function to validate if point is at the
start of a property block.
(org-property-global-value): Renamed, see next line.
(org-property-global-or-keyword-value): Renamed from above to match
  its functionality better.
(org-back-to-heading-or-point-min): New function to make a document
  work as a level 0 node in the outline.
(org-at-keyword-p): Predicate function to answer to if we're currently
at a keyword line or not.
(org-up-heading-or-point-min): New function to make a document work as
a level 0 node in the outline.

* lisp/org-element.el (org-element--current-element): Can now detect
  property-blocks before first headline according to it's positional
  rules.

* lisp/org-attach.el (org-attach): Make it possible to call the
  attachment dispatcher also before the first headline, since document
  property drawers make attachments possible for the whole document
  now.

* lisp/org-capture.el: Modified only due to rename of function in
  org.el.

* lisp/org-compat.el (org-file-properties)
(org-property-global-value): Renamed functions declared obsolete.

* testing/lisp/test-org.el (org/insert-property-drawer)
(org/set-property, org/delete-property, org/delete-property-globally):
  Additions of tests to check if they work before first headline.
(org/at-property-p, org/at-property-block-p, org/get-property-block)
(org/entry-get, org/refresh-properties): New tests

* testing/examples/property-inheritance.org: Switch from
  property-keywords to a property-drawer in the testfile.
  Functionality should be the same, but now using a document drawer
  instead of property-keywords.

  Reason for switching is that I'd like us to slowly depricate
  property-keywords.

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

* contrib/lisp/ox-taskjuggler.el: A comment is modified only due to
  rename of function in org.el.
2019-10-19 14:07:58 +02:00
Jens Lechtenboerger aa8500505f Mention option html-wrap-src-lines in ORG-NEWS
* etc/ORG-NEWS: Mention new option html-wrap-src-lines.
2019-10-16 19:06:23 +02:00
Nicolas Goaziou f2f646b6c9 ox-icalendar: Allow ignoring done scheduled or deadlines tasks
* lisp/ox-icalendar.el (org-icalendar-use-deadline):
(org-icalendar-use-scheduled): Add a value to ignore done tasks.
2019-09-05 21:54:50 +02:00
Nicolas Goaziou 4f3d1eefbd Remove `org-enable-fixed-width-editor'
* lisp/org.el (org-enable-fixed-width-editor): Remove variable.
2019-08-19 12:22:22 +02:00
Eric S Fraga 9218b028f0 Add NEWS item for split-window-right option for editing src blocks
* ORG-NEWS: added news item for new split-window-right option
2019-08-17 15:26:42 +02:00
Gustav Wikström b082de626d org-id: Additional id method; ISO8601 timestamp
* New choice in org-id-method

Timestamps can be chosen as org-id-method.  This id-method has the
benefit of being human-readable and has synergies with org-attach if
one likes to organize attachment directories by timestamp instead of
by random names.
2019-08-02 17:02:01 +02:00
Gustav Wikström 9104c0c52d org-id: New customization, org-id-locations-file-relative
* org-id-locations-file-relative

New customization that allows the user to specify that filenames
should be saved relative to the file specified in
org-id-locations-file, instead of being absolute paths.

* org-id-locations-save

Respects new custom variable, org-id-locations-file-relative, and
can save locations with relative filenames.

* org-id-locations-load

Updated to be able to deal with relative filenames if they exist.
2019-08-02 17:00:01 +02:00
Marco Wahl dc2198971b org-agenda: Respect narrowing for agenda restricted to buffer
* lisp/org-agenda.el (org-agenda): Add a condition to check if
  narrowing is in effect and in case set the agenda restriction markers.
* etc/ORG-NEWS (Respect narrowing when agenda command is restricted to buffer):
* doc/org-manual.org (The Agenda Dispatcher): Mention the behavior.
2019-07-15 00:22:51 +02:00
Marco Wahl 63b9c2634e Merge branch 'master' into compact-folding-refinement 2019-07-13 23:21:12 +02:00
Marco Wahl a1499af673 ORG-NEWS: Announce changes in org-ctrl-c-tab, org-kill-note-or-show-branches 2019-07-13 23:19:33 +02:00
Nicolas Goaziou 2c8e8b4a18 contrib: Remove Org Drill
* contrib/README:
* lisp/org.el (org-modules): Remove reference to Org Drill.
contrib/lisp/org-drill.el: Remove file.

Org Drill is now developed externally, and available through an
ELPA (MELPA at this point).
2019-07-11 22:55:02 +02:00
Gustav Wikström ae9cd4370b org-attach*, org, org-manual, org-news, ox-html, testing/*
* lisp/org-attach.el

Changed the way attachments deal with property-inheritance.  It now
adheres to the =org-use-property-inheritance= setting by default but
it can be customized if needed (I recommend to enable it!).
The property ATTACH_DIR is deprecated in favour of the shorter and simpler
property DIR.

Added an explicit option to =org-attach= for unsetting
attachment-directories (i.e. remove DIR property and deal with the
attachments by interaction).

Added attachment link type with the prefix "attachment:".

Added customizations:
- org-attach-dir-relative
- org-attach-preferred-new-method
- org-attach-use-inheritance
- org-attach-id-to-path-function

Hooks added:
- org-attach-after-change-hook
- org-attach-open-hook

A new linktype "attachment" is added in order to reduce
link-duplication when wanting to link to files in attached folders of
nodes.  This works for both ID and DIR properties.  The goal is to
make the functionality for attachment links mirror the functionality
for file links.

* lisp/org-attach-git.el

New file, existing functionality.  Code here has been factored out
from org-attach.el and if GIT-functionality is to be used this module
needs to be required sepatately.  It extends org-attach by use of its
hooks.

Activating git functionality in org-attach is done by loading
org-attach-git from now on, instead of customizing a variable.

Naming of both functions and tests has been modified to match the move
of functionality into its own module.

* lisp/org.el

Inline images are shown also using attachment-links, exactly the same
as it works for file-links today.

Make org-open-at-point respect ARG when opening attachment-dir.

* lisp/org-compat.el

org-attach-directory has been deprecated in favour for
org-attach-id-dir.  The new name matches its purpose better.

* lisp/ox-html.el

Export attachment links to images as inline images, in the same way as
file links work today.

* etc/ORG-NEWS

Mention the changes in this patch.

* doc/org-manual.org

The chapter "Refile, Copy, Archive" has been split into two separate
chapters.
- "Refile, Copy and Archiving" for information related to moving
  existing data around.

- "Capture, Attachments, RSS Feeds and Protocols" for information
  related to working with external data.

The attachment-part has been rewritten and extended to match the
changes in this patch.

The new attachment link type is mentioned both inside the attachments
chapter and in the chapter dealing with links.

Documentation related to external links has been improved.

* testing/lisp/test-org-attach-annex.el

Require org-attach-git instead of org-attach, since this file tests
the GIT-functionality.

* testing/lisp/test-org-attach.el

Add tests for org-attach.

* testing/org-test.el

Define a symbol for a file to test attachments with.

* testing/examples/*

A bunch of new example files and folders are created and are used in
testing of org-attach to verify its functionality.
2019-07-07 19:55:49 +02:00
Nicolas Goaziou 0201d1c0cc Fix inserting capture templates at point
* lisp/org-capture.el (org-capture):
(org-capture-set-target-location):
(org-capture-place-entry):
(org-capture-place-item):
(org-capture-place-table-line): Fix inserting capture templates at
point.  Insert a new internal property for capture
template: :insert-here.
(org-capture-insert-template-here): Remove function.

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

Reported-by: Dominic Surano <sk8ingdom@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-07/msg00002.html>
2019-07-06 16:02:37 +02:00
Nicolas Goaziou 9ddfe45314 org-table: Improve `org-table-copy-down'
* lisp/org-table.el (org-table--increment-field): New function.
(org-table-copy-down): Use new function.
* testing/lisp/test-org-table.el (test-org-table/copy-down): New test.
* doc/org-manual.org (Calculations): Update documentation.
2019-06-28 00:07:25 +02:00
Nicolas Goaziou 0ff65e9f4c org-list: Change `org-list-to-subtree' signature
* lisp/org-list.el (org-list-to-subtree): Add optional argument to
  specify level of the subtree.
(org-list-make-subtree):
* lisp/org.el (org-toggle-heading): Adapt to signature change.

Reported-by: Felix Wiemuth <felixwiemuth@hotmail.de>
<http://lists.gnu.org/r/emacs-orgmode/2019-06/msg00010.html>
2019-06-10 00:19:32 +02:00
Sacha Chua a41e9950ae Add :target option for the TOC keyword
* doc/org-manual.org, etc/ORG_NEWS: Document :target option
  for the TOC keyword.

* lisp/ox.el (org-export-resolve-link): New function.

* lisp/ox-ascii.el (org-ascii-keyword): Added :target to the TOC
  keyword.
  (org-ascii--build-toc): Changed LOCAL argument to SCOPE.

* lisp/ox-html.el (org-html-keyword): Added :target to the TOC keyword.

* lisp/ox-md.el (org-md-keyword): Added :target to the TOC keyword.
  (org-md--build-toc): Changed LOCAL argument to SCOPE.

* lisp/ox-odt.el (org-odt-keyword): Added :target to the TOC keyword.

* testing/lisp/test-ox.el (test-org-export/collect-headlines): Added
  tests for specifying scope by CUSTOM_ID or by fuzzy matching.
  (test-org-export/resolve-link): New test.
2019-05-30 15:25:46 +02:00
Eric Danan fb866077db ORG-NEWS: Mention new variable org-attach-commands 2019-05-03 00:00:59 +02:00
Emmanuel Charpentier ffccea7d73 Document the LATEX_ATTR :scale parameter in ORG-NEWS
* etc/ORG-NEWS: document the new builtin LaTeX exporters' LATEX_ATTR
  :scale parameter
2019-04-23 10:23:42 +02:00
Stefano Rodighiero f3e7dcd174 ORG-NEWS: Mention parameter :dbconnection for org-babel-execute:sql 2019-04-17 14:24:18 +02:00
Nicolas Goaziou e5d05e881a ORG-NEWS: Use less conservative link update function 2019-04-02 23:15:22 +02:00
Nicolas Goaziou a39ee98873 Turn `org-dynamic-block-alist' into a defvar
* lisp/org.el (org-dynamic-block-alist): Make it a defvar.  Update docstring.
2019-03-22 18:32:40 +01:00
Feng Shu 967f6c0dd0 org-agenda: Add org-agenda-breadcrumbs-separator
* lisp/org-agenda.el (org-agenda-breadcrumbs-separator): New variable.
(org-agenda-format-item): Use org-agenda-breadcrumbs-separator
* etc/ORG-NEWS (New variable: ~org-agenda-breadcrumbs-separator~): New variable.
2019-03-21 21:46:10 +01:00
Nicolas Goaziou 07d0c9edbc Complete ORG-NEWS entry about new link syntax 2019-03-21 14:45:32 +01:00
Marco Wahl 2e92b9abb9 org-habit: C-u K in agenda toggles display all/today habits
* lisp/org-habit.el (org-habit-toggle-display-in-agenda): New command.
2019-03-18 17:06:28 +01:00
Sebastian Miele a2deb8ce76 ob-emacs-lisp: Set `lexical-binding' in edit buffers
* lisp/ob-emacs-lisp.el (org-babel-execute:emacs-lisp,
  org-babel-emacs-lisp-lexical): Factor out the conversion of the
  :lexical source block argument to a form that is appropriate for
  `lexical-binding' and the LEXICAL argument to `eval'.

* lisp/ob-emacs-lisp.el (org-babel-edit-prep:emacs-lisp): Set
  `lexical-binding'.

* lisp/ob-emacs-lisp.el (org-babel-default-header-args:emacs-lisp):
  Update docstring.
2019-03-14 15:41:11 +01:00
Nicolas Goaziou 67de9a6865 ox-texinfo: Support lettered lists
* lisp/ox-texinfo.el (org-texinfo-plain-list): Add :enum attribute.
* doc/org-manual.org (Plain lists in Texinfo export): Document :enum
  attribute.
2019-03-13 15:38:43 +01:00
Nicolas Goaziou 1c936fd2ac org-manual: Document new link syntax
* doc/org-manual.org (Link Format): Document rules for escaping
  sensitive characters in a link.
2019-03-10 18:00:36 +01:00
stardiviner 8b5941330b ob-core: Make :mkdirp work for :dir too
* lisp/ob-core.el (org-babel-execute-src-block): Make directory if
  ":dir path" does not exist when ":mkdirp yes" exist.

* doc/org-manual.org (Header arguments): Document it.

* testing/lisp/test-ob.el: Add a specific testing file for ob-core.el,
  and add a testing for ":mkdir yes" work with :dir header argument
  usage.
2019-03-04 22:25:48 +01:00
Nicolas Goaziou 6d9022df22 Make LaTeX preview toggle more useful and predictable
* lisp/org.el (org-remove-highlights-with-change):
(org-mode): Update.
(org--format-latex-make-overlay):
(org--list-latex-overlays): Remove functions.
(org--make-preview-overlay):
(org-clear-latex-preview):
(org--latex-preview-region):
(org-latex-preview): New functions.
(org-format-latex): Use new function
* lisp/org-compat.el (org-toggle-latex-fragment):
(org-remove-latex-fragment-image-overlays): Deprecate.
* doc/org-manual.org (Previewing LaTeX fragments): Update
  documentation about `org-latex-preview'.

See <http://lists.gnu.org/archive/html/emacs-orgmode/2019-02/msg00138.html>.
2019-02-14 00:14:25 +01:00
Kyle Meyer 87836e14e6 Merge branch 'maint' 2019-02-03 19:17:37 -05:00
Kyle Meyer 69c9f632f4 ORG-NEWS: Fix copyright year 2019-02-03 19:16:36 -05:00
Nicolas Goaziou 683df456a4 org-list: Remove fancy description list indentation
* lisp/org-list.el (org-list-description-max-indent): Remove variable.
(org-list-item-body-column): No longer indent specially description
items.
* lisp/org.el (org-indent-line): Prune reference to removed variable
  in docstring.

Special indentation on description items breaks indentation in
sub-items.
2019-01-31 00:26:00 +01:00
Nicolas Goaziou e1dab51d4d Mention `org-todo-repeat-hook' in ORG-NEWS 2019-01-30 22:37:31 +01:00
Jamie Forth 5c07b4522c ox-beamer: Export overlay specification for notes
* ox-beamer.el (org-beamer-headline): Pass overlay specification to
beamer `\note{}' command.

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

TINYCHANGE
2019-01-26 18:23:42 +01:00
stardiviner bcdb2b5568 ob-clojure: Don't tangle with auto prepend ns statement
* lisp/ob-clojure.el: (org-babel-expand-body:clojure,
  org-babel-header-args:clojure): whether auto prepend Clojure (ns ..)
  statement depend on whether have :ns header argument specified.

* testing/test-ob-clojure.el: Add a test.
2019-01-21 21:17:47 +01:00
Yasushi SHOJI 4a076ed545 Allow cloning subtrees while shifting them backward in time
* lisp/org.el (org-clone-subtree-with-time-shift): Accept a negative
value to shift the timestamp backward in time.
* testing/lisp/test-org.el (test-org/clone-with-time-shift): Add test.

Reported-by: Scott Randby <srandby@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-01/msg00151.html>

Signed-off-by: Yasushi SHOJI <yasushi.shoji@gmail.com>
2019-01-21 18:47:49 +01:00
Marco Wahl 2862bea69b org: Option for user to force non fast tag selection interface
* lisp/org.el (org-set-tags-command): Disable the fast tag selection
  interface when the command is prefixed by C-u C-u.
2019-01-05 13:16:31 +01:00
memeplex 7db8ebc1df Add option to natively fontify LaTeX snippets and environments
* lisp/org.el: add a 'native value to org-highlight-latex-and-related
  that allows to use tex native font locking by means of
  org-src-font-lock-fontify-block.
* etc/ORG-NEWS: add note about new feature.
2019-01-04 14:22:11 +01:00
memeplex 0e26444fe0 Use xcolor for all latex preview converters
* lisp/org.el: remove :use-xcolor option and make dvipng use xcolor
  since usage of CLI fg and bg color args is incompatible with docs
  that themselves use xcolor (e.g. through tikz).
* etc/ORG-NEWS: add incompatible change note.
2019-01-04 14:20:23 +01:00
stardiviner 34b71a0ca9 Add a dispatcher command for inserting dynamic blocks
* lisp/org.el (org-dynamic-block-insert-dblock,
  org-dynamic-block-alist, org-dynamic-block-functions,
  org-dynamic-block-types, org-dynamic-block-define,
  org-dynamic-block-function): New variables, New functions.

* lisp/org-keys.el (org-dynamic-block-insert-dblock): Add binding for
  the function.
(org-clock-report, org-columns-insert-dblock): Remove function
keybindings. Mark them as obsolete.

* doc/org-manual.org (Dynamic Blocks): : Add manual for dispatch
command `org-dynamic-block-insert-dblock'.

* testing/lisp/test-org-clock.el: New test.
2019-01-02 15:55:51 +01:00
Nicolas Goaziou 69c300bbf6 Add Org Num minor mode
* doc/org-manual.org (Headlines): Refer to new section.
(Dynamic Headline Numbering): New section.
* lisp/org-num.el:
* testing/lisp/test-org-num.el: New files.
2019-01-01 22:08:24 +01:00
Bastien 7a22b8f93b Merge branch 'maint' 2019-01-01 11:54:01 +01:00
Bastien f584d37a67 Update copyright year 2019-01-01 11:50:56 +01:00
Toon Claes e37412b5d2 ox-html: Make it possible to self link headlines
* lisp/ox-html.el (org-html-self-link-headlines): New variable.
(org-html-headline): Create a hyperlink on headlines
when :html-self-link-headlines is set.
2018-12-29 14:58:43 +01:00
Jens Lechtenboerger 94d2dbf95f ox-html: New property HTML_HEADLINE_CLASS for class of headline
* lisp/ox-html.el (org-html-headline): Add new property
HTML_HEADLINE_CLASS to assign class attribute to headline.

* doc/org-manual.org (CSS support): Document new property
HTML_HEADLINE_CLASS.
2018-12-08 12:45:22 +01:00
Nicolas Goaziou 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
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 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 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
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
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
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
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 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 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 72cadea3c0 ORG-NEWS: Document "CLASS" property
* etc/ORG-NEWS (iCalendar export respects a =CLASS= property): New
  section.
2018-10-03 18:44:34 +02:00
Nicolas Goaziou 19d545a0a8 ORG-NEWS: Document last change
* etc/ORG-NEWS (Plain numbers are hours in Column View mode): New
  section.
2018-10-03 18:44:34 +02:00
Nicolas Goaziou db56e096e8 ORG-NEWS: Document :coding parameter for INCLUDE keywords 2018-10-03 18:44:34 +02:00
Nicolas Goaziou 37f3fbf3c6 ORG-NEWS: Document cell movement in tables 2018-10-03 18:44:34 +02:00
Nicolas Goaziou 537748b7b7 ORG-NEWS: Update 2018-10-03 18:44:34 +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 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 a8a8f70039 ORG-NEWS: Fix typo
* etc/ORG-NEWS (Change in the structure template expansion): Fix typo.
2018-05-07 22:50:56 +02:00
Bastien 79eb1e889f etc/ORG-NEWS: Advertize `org-browse-news' and its menu item 2018-04-30 00:29:33 +02:00
Bastien dc4896aeef etc/ORG-NEWS: Mention outshine 2018-04-29 12:37:34 +02:00
Nicolas Goaziou cc9ae41738 Mark `org-preserve-lc' as obsolete
* lisp/org-macs.el (org-preserve-lc): Move function...
* lisp/org-compat.el (org-preserve-lc): ... here.

The function is no longer used in code base.
2018-04-29 00:44:26 +02:00
Nicolas Goaziou 4c13d0a1a8 Do not load Org Tempo by default
* lisp/org.el (org-modules): Do not load Org Tempo by default.

Org Tempo is a backward compatible substitute for the new expansion
mechanism.  It is only available for either die-hard "<s" users or
power users that need advanced templates.
2018-04-28 17:29:00 +02:00
Bastien 2debcd5b22 org.el: New command `org-toggle-narrow-to-subtree'
* lisp/org.el (org-toggle-narrow-to-subtree): New command.
(org-speed-commands-default): Use the new command for the "s"
speed command.
2018-04-28 14:00:25 +02:00
Bastien 4c14e0d1f2 org.el: New speed command "k" to kill the subtree at point
* lisp/org.el (org-speed-commands-default): Add "k" to kill
the subtree at point.
2018-04-28 12:57:15 +02:00
Bastien 011f1c6181 Let `org-agenda-set-restriction-lock' remove restriction at point
* lisp/org-compat.el (org-speedbar-set-agenda-restriction):
* lisp/org-agenda.el (org-agenda-set-restriction-lock):
If there is an agenda restriction at point, remove it.

* doc/org-manual.org:
* etc/ORG-NEWS: Document the new feature.
2018-04-28 12:09:56 +02:00
Bastien ff12c29338 etc/ORG-NEWS: Advertize solutions for complex templates 2018-04-28 08:15:10 +02:00
Bastien f42f15a2a1 etc/ORG-NEWS: Explicit a few incompatible changes 2018-04-28 00:59:07 +02:00
Bastien 5071776f97 etc/ORG-NEWS: Mention orgalist.el 2018-04-28 00:49:47 +02:00
Bastien f80f7ed98b org-clock.el: New option :tags to insert tags in clock reports
* lisp/org-clock.el (org-clocktable-defaults)
(org-clocktable-write-default, org-clock-get-table-data):
Rename :tags to :match and use :tags to insert a column with
the headline's tags.

Thanks to Raymond Zeitler for suggesting this.
2018-04-26 20:55:27 +02:00
Bastien 8ebe4aa678 etc/ORG-NEWS: Document a new feature for 9.2 2018-04-26 20:51:26 +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
stardiviner 296b0de4e8 ob-core: Add "link" results format
* lisp/ob-core.el (org-babel-execute-src-block): Handle "link" :results
  format.

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

* testing/lisp/test-ob.el (test-ob/result-file-link-type-header-argument):
  New test.
2018-04-12 15:15:59 +02:00
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
Nicolas Goaziou 83f4627679 Change default value for scientific notation related variables
* lisp/ox-latex.el (org-latex-table-scientific-notation):
* lisp/ox-texinfo.el (org-texinfo-table-scientific-notation): Change
  default value to nil.

Reported-by: Günter Lichtenberg <mail@guenterlichtenberg.de>
<http://lists.gnu.org/r/emacs-orgmode/2018-03/msg00527.html>
2018-03-30 22:20:30 +02:00
stardiviner 5ee6c45953 ob-js: support :session for js-comint REPL.
* lisp/ob-js.el (org-babel-js-cmd): Add js-comint.
(org-babel-js-initiate-session): Add support for js-comint.
2018-03-25 22:47:03 +02:00
stardiviner b4e2fed77e ob-js: support :session for Indium Node REPL.
* lisp/ob-js.el (org-babel-js-cmd): Add "indium".
(org-babel-execute:js): Handle Indium REPL.
2018-03-25 22:41:05 +02:00
stardiviner 1a1e2286ba ob-js: support :session for skewer-mode REPL.
* lisp/ob-js.el (org-babel-js-cmd): Add "skewer-mode".
(org-babel-execute:js):
(org-babel-js-initiate-session): Handle skewer mode.
2018-03-25 22:38:02 +02:00
Nicolas Goaziou 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
stardiviner 00938bc98b org-src: New option for `org-src-window-setup'.
org-src.el: (org-src-window-setup) support open edit src window below.

TINYCHANGE
2018-03-17 08:11:24 +01:00
Pierre Téchoueyres 0edf344e2a ob-sql.el: Improve Oracle connection and usage for ob-sql.
* lisp/ob-sql.el (org-babel-sql-dbstring-oracle): Don't use empty
args.  This allows use of alias defined in Oracle's TNSNAMES files.
(org-babel-execute:sql): Don't feed lines with trailing spaces.  This
also improve speed for retrieving data.
2018-03-14 14:30:51 +01:00
Sebastian Reuße e64ff15f67 Fix alphabetic sorting for tables, plain lists
* org-table.el (org-table-sort-lines): Use collated sorting.
* org-list.el (org-sort-list): Use collated sorting.

Cf. commit 551d2f1fe.
2018-03-13 09:09:07 +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
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 8e70f5d02d ORG-NEWS: Document ~org-paste-subtree~ change 2018-02-27 00:17:12 +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
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
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 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 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
thibault 3604f24f95 ORG-NEWS: Add note about links to equations in HTML export 2018-01-19 18:38:07 +01:00
Nicolas Goaziou d316405ffd Merge branch 'maint' 2018-01-19 18:25:45 +01:00
Nicolas Goaziou 05bb961454 ORG-NEWS: Update git link abbrev 2018-01-19 18:24:32 +01:00
Nicolas Goaziou 0155441358 Merge branch 'maint' 2018-01-19 18:22:00 +01:00
Tim Landscheidt e40bc24c8b Use https for links to orgmode.org in old news entries
TINYCHANGE
2018-01-19 18:15:07 +01:00
Tim Landscheidt b289a65be7 Use https for links to orgmode.org
TINYCHANGE
2018-01-19 18:14:58 +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 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
Kyle Meyer d94f7024bc Merge branch 'maint' 2018-01-07 00:28:35 -05:00
Kyle Meyer 3e1641ef0a Update copyright years 2018-01-07 00:27:54 -05: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 423b5b2f94 ORG-NEWS: Mention removal of OrgStruct and Radio lists 2017-12-31 15:36:18 +01:00
Rasmus 153cd2b355 ORG-NEWS: Fix typo 2017-12-19 18:22:40 +01:00
Nicolas Goaziou 3ac619c8ac org-macro: Placeholders in (eval ...) macros are always strings
* lisp/org-macro.el (org-macro-initialize-templates): Update
  templates.
(org-macro-expand): Ensure placeholders in "eval" macros are strings.

* testing/lisp/test-org-macro.el (test-org/macro-replace-all): Update
  tests.
2017-12-17 09:40:56 +01:00
Marco Wahl 3e845a3bf6 ORG-NEWS: Take note of org-attach-dired-to-subtree 2017-12-14 10:30:58 +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 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
Alex Branham 33d554aacc ORG-NEWS: Document new behavior of org-comment-dwim on headings 2017-11-29 21:17:06 +01:00
Kyle Meyer 5cd7eb3d53 Merge branch 'maint' 2017-11-26 20:35:57 -05:00
Paul Eggert adfbfd42b2 Backport commit a89f0b6f3 from Emacs
maint: shorten https://lists.gnu.org/archive/html/... links
a89f0b6f33f9eb8910a1fceda9028d76ef50b05d
Paul Eggert
Sat Nov 25 22:48:12 2017 -0800
2017-11-26 20:35:46 -05:00
Nicolas Goaziou b8d473a04f org-table: Insert new column to the right instead of the left
* lisp/org-table.el (org-table-insert-column): Insert new column to
  the right instead of the left.

* testing/lisp/test-org-table.el (test-org-table/insert-column): New
  test.
2017-11-19 23:22:16 +01:00
Nicolas Goaziou 05034ec6ed ORG-NEWS: Document user-visible changes with new template system 2017-11-06 14:47:55 +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 99dbca3d4f Remove `org-babel-use-quick-and-dirty-noweb-expansion'
* lisp/ob-core.el (org-babel-use-quick-and-dirty-noweb-expansion):
  Remove variable.
(org-babel-expand-noweb-references): Update function.

* doc/org.texi (noweb-ref): Document new behaviour.
(Noweb reference syntax): Delete reference to removed variable.

`org-babel-use-quick-and-dirty-noweb-expansion' main use is to speed
up Noweb expansion when expanding only by name.  By distinguishing
name and reference expansion, we no longer need this variable.  In the
first case, the expansion is quicker anyway, and in the second case,
we most certainly need an accurate expansion.
2017-10-26 13:09:23 +02:00
Nicolas Goaziou b401d3a44b Implement `org-export-excluded-from-toc-p'
* lisp/ox.el (org-export-excluded-from-toc-p): New function.

* testing/lisp/test-ox.el (test-org-export/excluded-from-toc-p): New
  test.
2017-10-15 16:51:13 +02:00
Nicolas Goaziou 9b13e44ad7 ox: Implement "notoc" UNNUMBERED value
* lisp/ox.el (org-export-collect-headlines): Exclude headlines with
  UNNUMBERED property set to "notoc".

* doc/org.texi (Export settings):
(Table of contents): Document new value.

* testing/lisp/test-ox.el (test-org-export/collect-headlines): Add
  test.
2017-10-15 16:51:10 +02:00
Kyle Meyer eeaf9aec10 Merge branch 'maint' 2017-10-04 10:44:35 -04:00
Paul Eggert 710a3d1131 Backport commit 5172fa02c from Emacs
Prefer HTTPS to HTTP for gnu.org
5172fa02cccaab2500ecf85aaf65b8deed54d42e
Paul Eggert
Sun Oct 1 19:59:01 2017 -0700
2017-10-04 10:43:02 -04:00
Kyle Meyer 1a946d04e4 Merge branch 'maint' 2017-10-01 20:56:08 -04:00
Paul Eggert 5d3e17bf85 Backport commit bbda601d1 from Emacs
; Spelling fixes
bbda601d1d4e125c9d3c374b56eee3e2e9623f1d
Paul Eggert
Fri Sep 29 16:41:50 2017 -0700
2017-10-01 20:00:42 -04:00
Jay Kamat 6456febb0a ORG-NEWS: Add an entry for supporting export in org-irc.el 2017-09-25 15:52:21 +02:00
Nicolas Goaziou ad0662bbe7 Revert "Table of contents ignore unnumbered headlines"
This reverts commit bd2378161e.
2017-09-21 21:14:41 +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 bd2378161e Table of contents ignore unnumbered headlines
* doc/org.texi (Table of contents): Document behavior.
* lisp/ox-texinfo.el (org-texinfo-classes): Use @heading commands and
  alike for unnumbered sections.
* lisp/ox.el (org-export-collect-headlines): Ignore unnumbered
  headlines.

* testing/lisp/test-ox.el (test-org-export/collect-headlines): Add
  test.
2017-09-10 15:53:20 +02:00
Stig Brautaset 2b2314d46d org-colview: Allow custom COLLECT functions for derived properties
* lisp/org-colview.el (org-columns-summary-types): Allow new format.
(org-columns--summarize): Update to new summary type format.
(org-columns--collect): New function.
(org-columns--compute-spec): Apply changes.

* testing/lisp/test-org-colview.el (test-org-colview/columns-summary):
  Add test.

In addition to (LABEL . SUMMARIZE), org-columns-summary-types now
accepts (LABEL SUMMARIZE COLLECT) entries. The new COLLECT function is
called with one argument, the property being summarized.

TINYCHANGE
2017-09-10 11:06:43 +02:00
Nicolas Goaziou 007bbddbcc ox-html: Prevent spurious target below headlines
* lisp/ox-html.el (org-html-headline):
(org-html-link): Do not insert an additional target.

* lisp/ox-publish.el (org-publish-resolve-external-link): Add an
  optional argument.

* lisp/ox.el (org-export-get-reference): Improve docstring.

* testing/examples/pub/a.org:
* testing/examples/pub/b.org: New files.
* testing/lisp/test-ox-publish.el (test-org-publish/resolve-external-link):
  New test.
2017-09-10 00:23:42 +02:00
Nicolas Goaziou ad1c0faa7e Merge branch 'maint' 2017-09-07 14:38:23 +02:00
Nicolas Goaziou f1a1cad93a ORG-NEWS: Add incompatible change about `org-split-string' 2017-09-07 14:37:49 +02:00
Nicolas Goaziou 6e5598dc31 Document new column display
* doc/org.texi (Column width and alignment): Document new column
  display.
2017-09-06 15:21:20 +02:00
Jay Kamat 331ba68495 org-archive.el: Update statistic cookies when archiving
* lisp/org-archive.el (org-archive-subtree): Update todo statistics
  when calling `org-archive-subtree'.
(org-archive-to-archive-sibling): Update cookie statistics when
calling `org-archive-to-archive-sibling'.

* testing/lisp/test-org-archive.el: New file.

This can be disabled by setting `org-provide-todo-statistics' to nil.
2017-09-06 14:31:01 +02:00
Nicolas Goaziou 6dfcb98f13 Fix ORG-NEWS 2017-09-06 13:22:13 +02:00
Adam Porter b6c5a174da org-agenda: Refactor org-agenda-overriding-header code
* lisp/org-agenda.el (org-agenda--insert-overriding-header): Add macro.
(org-agenda-list)
(org-search-view)
(org-todo-list)
(org-tags-view): Use macro.
(org-agenda-overriding-header): Update docstring.

* etc/ORG-NEWS: Explain that header can be disabled with empty string.

Replace org-agenda-overriding-header tests in these four functions with
calls to a macro, eliminating the duplicate code.  Also, disable the
header when the variable is set to the empty string.
2017-09-06 13:13:59 +02:00
Nicolas Goaziou 64bfa2d931 Remove `inline-only' option for `org-export-use-babel'
* lisp/ob-exp.el (org-export-use-babel): Remove `inline-only' option.
(org-babel-exp-process-buffer): Ignore `inline-only' value.

* doc/org.texi (Exporting code blocks): Remove documentation.

* testing/lisp/test-ob-exp.el (ob-export/babel-evaluate): Remove tests.
2017-08-26 10:32:26 +02:00
Eric Abrahamsen 7973ec1057 Inherit TIMEZONE and LOCATION properties in iCalendar export
* lisp/ox-icalendar.el (org-icalendar-entry): Both properties now
optionally inherit, depending on value of
`org-use-property-inheritance'.
* doc/org.texi: Mention change.
2017-08-20 00:12:57 +02:00
Eric Abrahamsen 42458e682d Add per-entry timezone support for icalendar export
* lisp/ox-icalendar.el (org-icalendar-entry): Look for a "TIMEZONE"
  property.
(org-icalendar--vevent, org-icalendar--vtodo): Accept additional
timezone argument.
(org-icalendar-convert-timestamp): Change parameter name to "tz", and
accept a wider variety of values.

* doc/org.texi: Mention in manual.
2017-08-20 00:11:18 +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
Bastien 90986a8e2f Remove ob-scala.el
See https://github.com/ensime/emacs-scala-mode/issues/114#issuecomment-323281255
2017-08-18 09:35:14 +02:00
Bastien 5176370129 Move the library-of-babel.org to Worg 2017-08-18 09:34:34 +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
Nicolas Goaziou db0ef4d06e Revert "org-agenda: `tags-todo' command type includes DONE keywords"
This reverts commit 942b6267a0.
2017-08-17 14:51:11 +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
Adam Porter 7e46af419c org-agenda.el: Add option to automatically align tags in agenda
* lisp/org-agenda.el (org-agenda-tags-column): Add 'auto setting.
(org-agenda-align-tags): Handle automatic alignment.

TINYCHANGE
2017-08-08 15:18:50 -04:00
Christian Garbs 4d2c8354ee ob-vala.el: Add Vala support to Babel
* lisp/ob-vala.el: Add support for the Vala language to Babel.

* testing/lisp/test-ob-vala.el: Add tests for ob-vala.el.

* doc/org.texi (Working with source code): Add Vala to the list of
  supported languages.
2017-08-07 11:40:25 +02:00
Nicolas Goaziou 1cf48fc2e7 Merge branch 'maint' 2017-08-01 18:47:56 +02:00
Jay Kamat f320f05192 ORG-NEWS: Fix a small typo in new org babel header example
* etc/ORG-NEWS (Using): Fix typo in babel :header-args: conversion

TINYCHANGE
2017-08-01 18:47:07 +02:00
Jay Kamat 0c1b4da1f6 ob-C.el: Add support for specifying namespaces in C/C++
* lisp/ob-C.el (org-babel-C-expand-C): Add a :namespaces export option
  to C++ org babel blocks. Namespaces specified here will be added to
  the file in the format 'using namespace %s;'. Multiple namespaces
  can be specified, separated by spaces.

TINYCHANGE
2017-08-01 10:20:15 +02:00
Nicolas Goaziou 720b213a35 ox-texinfo: Default process includes "--no-split" option
* lisp/ox-texinfo.el (org-texinfo-info-process): Add "--no-split"
  option.

Reported-by: Jonas Bernoulli <jonas@bernoul.li>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-07/msg00458.html>
2017-07-27 13:52:12 +02:00
Nicolas Goaziou 0623c1c753 org-colview: Allow simultaneous columns views
* lisp/org-colview.el (org-columns-overlays):
(org-columns-begin-marker):
(org-columns-top-level-marker): Make variables buffer local.

(org-columns-remove-overlays): Assume columns view are to be removed
in current buffer.

(org-columns-edit-allowed): Small refactoring.  Raise an error when
called although no columns view is active in current buffer.

(org-columns-goto-top-level):
(org-columns):
(org-agenda-columns): Do not assume `org-columns-begin-marker' and
`org-columns-top-level-marker' are markers.

(org-columns-store-format):
(org-columns-redo): Skip if no columns view is current active.

(org-agenda-colview-compute): Do not let-bind
`org-columns-begin-marker' and `org-columns-top-level-marker'.
2017-07-25 09:54:06 +02:00
José L. Doménech bb6e40b086 ob-scheme: Handle tables and :prologue params
* lisp/ob-scheme.el (org-babel-scheme-null-to): New variable.
(org-babel-scheme--table-or-string): New function.
(org-babel-execute-src-block): Changed to allow the return of a table
  for the output.
(org-babel-expand-body:scheme) Add :prologue param support.

TINYCHANGE
2017-07-24 12:01:03 +02:00
Alex Branham f88f913c35 org-agenda: change order of items, support custom time grid string
* lisp/org-agenda.el (org-agenda-time-grid): Users may now customize
the string to display after the time in the agenda.  The order of
items was updated to reflect the order that they are displayed in the
agenda.

TINYCHANGE
2017-07-11 10:02:45 +02: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
Florian Lindner da99ee0fa6 org-attach: Make org-attach move directories, when attachment dir changes
* lisp/org-attach.el (org-attach-set-directory): Make org-attach move
  directories, when attachment dir changes.
(org-attach): Update docstring.
2017-07-09 17:16:24 +02: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
Mario Martelli 840b907dfb ORG-NEWS: org-protocol's date style URL support is mentioned 2017-06-29 14:46:41 +02:00
Nicolas Goaziou 9389563356 org-entities: Add \dollar and \USD
* lisp/org-entities.el (org-entities): Add \dollar and \USD.
2017-06-26 22:13:01 +02:00
Kyle Meyer 305a0cb67e Merge branch 'maint' 2017-06-22 13:32:58 -04:00
Kyle Meyer 17a1cd23b9 etc/styles/README: Update copyright year
This has not been getting updated during the bulk copyright year
updates.
2017-06-22 13:31:04 -04:00
Kyle Meyer f2980782c4 Clean up spacing to pass Emacs's pre-commit check
This is in preparation for syncing with the Emacs repo.
2017-06-22 13:31:04 -04:00
Paul Eggert 549c2cb75e ORG-NEWS: Backport commit dc152c54f from Emacs
Modernize usage of 'macOS' in doc and comments
dc152c54f4e44f5f2040883b03f71ff6aa66c893
Paul Eggert
Sun Nov 6 00:42:03 2016 -0700
2017-06-22 13:30:44 -04:00
Paul Eggert 265ee374c0 ORG-NEWS: Backport commit 62803a2ef from Emacs
Specify coding if Latin-1 Emacs would misinterpret.
62803a2ef134e37f1ba2c404dda15bf5e2a2a036
Paul Eggert
Sat May 24 15:23:47 2014 -0700
2017-06-22 13:30:44 -04:00
Nicolas Goaziou 20795aae27 ox-texinfo: Change Texinfo class definition
* lisp/ox-texinfo.el (org-texinfo-classes): Change default value and
  structure.
(org-texinfo--structuring-command): New function.
(org-texinfo-headline): Use new function.

The new structure handles properly appendices at sub-levels.
2017-06-22 18:46:44 +02:00
Nicolas Goaziou 70b3c35710 Update ORG-NEWS 2017-06-14 19:16:07 +02:00
Nicolas Goaziou 1a31a43578 Update ORG-NEWS 2017-06-14 19:13:38 +02:00
Nicolas Goaziou 3e35a78287 Update ORG-NEWS 2017-06-14 11:07:20 +02:00
Nicolas Goaziou ce21e0a8db org-table: Add missing keywords to a defcustom
* lisp/org-table.el (org-table-duration-hour-zero-padding):
  Add :package-version and :safe. Fix :version and docstring.
2017-06-14 09:48:13 +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 cf505d2ebb ox-texinfo: Export example blocks as @example
* lisp/ox-texinfo.el (org-texinfo-example-block): Export as @example.

Escape @, {, }, however, so as to get proper verbatim contents.
2017-06-09 22:03:08 +02:00
Nicolas Goaziou 8dc31ed680 ox-texinfo: Implement the :sep attribute in plain lists
* lisp/ox-texinfo.el (org-texinfo-item):
* doc/org.texi (Plain lists in Texinfo export):
2017-06-07 22:17:08 +02:00
Nicolas Goaziou 0ff8ba5907 ox-texinfo: Use @code instead of @verb for inline src blocks
* lisp/ox-texinfo.el (org-texinfo-inline-src-block): Use @code.
2017-06-07 00:16:35 +02:00
Nicolas Goaziou fdac3c0140 ox-texinfo: By default, use @samp instead of @verb for =...=
* lisp/ox-texinfo.el (org-texinfo-text-markup-alist): Change default
  value.
(org-texinfo--text-markup): Handle protected @samp{...} command.

@samp{} is more versatile than @verb{} as it can belong to more
commands.  So, it makes more sense as a default value.
2017-06-07 00:00:31 +02:00
Nicolas Goaziou 124b47fc25 ORG-NEWS: Update news 2017-06-05 23:03:38 +02:00
Nicolas Goaziou ad89390219 org-macro: Implement the "n" macro
* lisp/org-macro.el (org-macro--counter-table): New variable.
(org-macro--counter-initialize):
(org-macro--counter-increment): New functions.
(org-macro-initialize-templates): Use new functions.

* doc/org.texi (Macro replacement): Document new macro.

* testing/lisp/test-org-macro.el (test-org-macro/n):
(test-org-macro/property): New tests.
2017-05-25 12:25:13 +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 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 9a297d6531 org-attach: Silence byte-compiler
* lisp/org-attach.el (org-attach-attach): Tiny refactoring.
2017-05-09 17:56:24 +02:00
Sebastian Reuße c4b2ac861f ORG-NEWS: Update new features 2017-05-06 16:18:36 -04:00
Nicolas Goaziou 5e1f7ff04b ox: Ignore INCLUDE keywords in commented headlines
* lisp/ox.el (org-export-expand-include-keyword): Ignore INCLUDE
  keywords in commented headlines.
* testing/lisp/test-ox.el (test-org-export/expand-include): Add test.
2017-04-23 19:48:50 +02:00
Nicolas Goaziou 942b6267a0 org-agenda: `tags-todo' command type includes DONE keywords
* lisp/org-agenda.el (org-agenda):
(org-agenda-run-series): Do not restrict `tags-todo' searches to
non-DONE TODO keywords.

Reported-by: Kevin Foley <kfoley15@gmail.com>
2017-04-18 11:55:27 +02:00
Andreas Gerler 8ba336ea0c
ob-sql: Add vertica engine
* lisp/ob-sql.el (org-babel-sql-dbstring-vertica): New function.
  (org-babel-execute:sql): Add `vertica' engine.

Signed-off-by: Andreas Gerler <baron@bundesbrandschatzamt.de>
2017-04-06 08:46:04 +02:00
Rasmus 9faf000e6a ox-latex: Support caption for latex-environment
* lisp/ox-latex.el (org-latex--environment-type): New function
  determining type of a latex-environment.
  (org-latex-latex-environment): Add support for caption.
  (org-latex--caption/label-string): Use correct type for non-floating
  latex-environments.
* etc/ORG-NEWS: Add entry.
2017-03-24 17:22:11 +01:00
Nicolas Goaziou e5d660e233 ORG-NEWS: Update changes 2017-03-17 08:28:50 +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 6341de0117 ORG-NEWS: Update latest change to `org-attach' 2017-03-11 15:31:00 +01:00
Nicolas Goaziou 2370a885e7 ox-md: Implement native table of contents
* lisp/ox-md.el (org-md--headline-referred-p): Try hard to limit
  anchors for headlines really referred to, either globally, or
  locally, in a table of contents.
(org-md-keyword): Add support for "TOC" keyword.
(org-md--build-toc): New function.
(org-md-inner-template): Use new function.
2017-03-11 15:21:27 +01:00
Nicolas Goaziou d73942cf99 org-agenda: Implement `org-deadline-past-days'
* lisp/org-agenda.el (org-deadline-past-days): New variable.
(org-scheduled-past-days): Set :safe keyword.
(org-agenda-get-deadlines): Use new variable.
2017-03-07 08:46:38 +01:00
Eduardo Bellani 78bddaca1f org-clock.el: Add nullary function evaluation as a clocktable scope parameter
* lisp/org-clock.el (org-dblock-write:clocktable): Funcall the scope
  argument if it is a function.

* doc/org.texi: Document the feature of using a nullary function as the
  scope for the clocktable.

* testing/lisp/test-org-clock.el: Adds a test for the above
  feature.  Also, fix the number of hours of a test that seemed to be
  broken.

TINYCHANGE
2017-03-06 18:00:19 +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 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
Martin Vuk e01000a94c ox.el: Slovenian translations for exporting
* lisp/ox.el (org-export-dictionary): Slovenian translations.

* lisp/ox.el (org-export-smart-quotes-alist): Slovenian quotes and
apostrophes for exporting documents.

TINYCHANGE
2017-02-03 22:17:31 +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
Bastien eb87e9b8fe Delete contrib/lisp/org-mime.el
See https://github.com/melpa/melpa/pull/4497#issuecomment-275907926
2017-01-29 18:47:37 +01:00
Kyle Meyer 9c111f63d3 ob-core: Add org-babel-uppercase-example-markers option
* lisp/ob-core.el (org-babel-capitalize-example-region-markers): Mark
as obsolete.
(org-babel-uppercase-example-markers): New defcustom to replace defvar
org-babel-capitalize-example-region-markers.
(org-babel-examplify-region): Use new option.

Rather than moving org-babel-capitalize-example-region-markers to a
defcustom, give the option a new name that makes it clearer that all
characters, not just the first, will be in upper case.

Suggested-by: Vicente Vera <vicentemvp@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/111656>
2017-01-26 20:06:39 -05:00
Nicolas Goaziou 3553c0a524 org-agenda: Make `org-agenda-skip-(entry|subtree)-when.*' obsolete
* lisp/org-agenda.el (org-agenda-skip-entry-if):
(org-agenda-skip-entry-if):
(org-agenda-skip-entry-if): Move to...
* lisp/org-compat.el (org-agenda-skip-entry-when-regexp-matches):
(org-agenda-skip-subtree-when-regexp-matches):
(org-agenda-skip-entry-when-regexp-matches-in-subtree): ... here and
mark as obsolete.

These functions are not used in code base anymore, and they are easily
replaced with `org-agenda-skip-if'.
2017-01-22 13:52:43 +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
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 a2950b00c1 Computed dates in tables appear as inactive time stamps
* lisp/org-table.el (org-table-eval-formula): Replace active time
  stamps, as produced by Calc package, with inactive ones.

Reported-by: "Doherty, Daniel" <ded@ddoherty.net>
<http://permalink.gmane.org/gmane.emacs.orgmode/111458>
2017-01-17 10:14:24 +01:00
Nicolas Goaziou b5bd91e218 ORG-NEWS: Update 2017-01-09 00:37:52 +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
Marco Wahl bb258a4f07 org-agenda: Set restriction lock from agenda
* lisp/org-agenda.el (org-agenda-set-restriction-lock-from-agenda):
  New function.  Allows to set the restriction lock from an agenda
  buffer.

Further bind C-c C-x < to
`org-agenda-set-restriction-lock-from-agenda' in the
`org-agenda-mode-map'.  This is the same binding as for Org files.
2017-01-06 01:09:38 +01: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 2b9da32227 ORG-NEWS: Fix typo 2016-12-21 10:31:49 +01:00
Nicolas Goaziou 91dc1b34e3 ox: Add EXPORT_FILE_NAME keyword
* lisp/ox.el (org-export-output-file-name): Support EXPORT_FILE_NAME
  keyword.
* doc/org.texi (Export settings): Document new keyword.
* testing/lisp/test-ox.el (test-org-export/output-file-name): Add
  tests.
2016-12-20 17:10:46 +01:00
Nicolas Goaziou bd828e2d1c ox: Add `org-export-global-macros'
* lisp/ox.el (org-export-global-macros): New variable.
(org-export-as): Use new variable.
* doc/org.texi (Macro replacement): Document new variable.
* testing/lisp/test-ox.el (test-org-export/expand-macro): Add tests.
2016-12-19 23:00:38 +01:00
Nicolas Goaziou 83827952db ox-publish: Provide relative file in sitemap generation
* doc/org.texi (Sitemap):
* lisp/ox-publish.el (org-publish-project-alist): Document change.

(org-publish-property):
(org-publish--expand-file-name): New functions

(org-publish-get-base-files):
(org-publish-file):
(org-publish-projects):
(org-publish--sitemap-files-to-lisp):
(org-publish-sitemap):
(org-publish-find-property):
(org-publish-find-title):
(org-publish-find-date):
(org-publish-sitemap-default-entry):
(org-publish-sitemap-default): Use new functions.

* testing/lisp/test-ox-publish.el (test-org-publish/sitemap): Update
  test.
2016-12-19 17:36:19 +01:00
Nicolas Goaziou 6663452588 ox-publish: Remove :sitemap-sans-extension
* lisp/ox-publish.el (org-publish-sitemap): Remove property.

* doc/org.texi (Sitemap):
* lisp/ox-publish.el (org-publish-project-alist): Remove documentation.

Caches uses absolute file names as keys.  We cannot provide file names
without extension to `:sitemap-format-entry' as they are no longer
existing key, and cannot be used for `org-publish-find-property' or
`org-publish-find-title'.
2016-12-19 12:19:59 +01:00
Nicolas Goaziou d5dbf761eb ox-publish: Include directories in site-map
* lisp/ox-publish.el (org-publish-temp-files): Remove variable.
(org-publish-get-base-files-1):
(org-publish-compare-directory-files): Remove functions.
(org-publish-get-base-files): Remove optional argument.  Rewrite
function.
(org-publish-projects):
(org-publish-sitemap):
(org-publish-index-generate-theindex): Apply signature change.
(org-publish-sitemap-sort-folders): Allow to include or ignore
directories in the site-map.

* doc/org.texi (Sitemap):
* lisp/ox-publish.el (org-publish-project-alist): Document change.
2016-12-19 12:19:59 +01:00
Nicolas Goaziou ca0ad0a84b ox-publish: Implement `org-publish-find-property'
* lisp/ox-publish.el (org-publish-find-property): New function.
(org-publish-find-title): Use new function.  Remove unused optional
argument.
(org-publish-find-date): Use new function.

(org-publish-project-alist):
* doc/org.texi (Sitemap): Update documentation.

Suggested-by: Rasmus <rasmus@gmx.us>
<http://permalink.gmane.org/gmane.emacs.orgmode/107219>
2016-12-19 12:19:58 +01:00
Nicolas Goaziou 2d3e3f562a ox-publish: Improve control over site map
* lisp/ox-publish.el (org-publish-project-alist): Document
  new :sitemap-format-entry property, and change to `:sitemap-function'.
(org-publish-sitemap-file-entry-format): Make variable obsolete.
(org-publish-org-sitemap): Remove function.
(org-publish--sitemap-files-to-lisp):
(org-publish-sitemap):
(org-publish-sitemap-default-entry):
(org-publish-sitemap-default): New functions.
(org-publish-projects): Use new functions.
* lisp/org-compat: Implement directory-name-p when not available.

* doc/org.texi (Sitemap): Update documentation.

:sitemap-function is more specialized so it is easier to manipulate.  In
particular, it can make use of built-in `org-list-to-*' functions.
Also, :sitemap-format-entry, as a function, is less limited than
`org-publish-sitemap-file-entry-format' format string.
2016-12-19 12:19:58 +01:00
Nicolas Goaziou 45d57bb4db org-list: Implement `org-list-to-org'
* lisp/org-list.el (org-list-to-org): New function.
* testing/lisp/test-org-list.el (test-org-list/to-org): New test.
2016-12-19 12:19:58 +01:00
Nicolas Goaziou 835b8e05e5 org-list: Tweak `org-list-to-generic'
* lisp/org-list.el (org-list-to-generic): :istart, :icount, :iend
  and :isep are now called with an additional argument, the type of the
  list.  Also add a new property :ifmt.
(org-list--to-generic-item): Use new property.
(org-list-to-subtree): Adapt to new requirements for :istart and :iend.

* testing/lisp/test-org-list.el (test-org-list/to-generic): Update
  tests.
2016-12-19 12:14:48 +01:00
Nicolas Goaziou 5ffb373a2c Implement `org-export-insert-image-links'
* lisp/ox.el (org-export-insert-image-links):
* lisp/ox-odt.el (org-odt--translate-image-links):
* lisp/ox-latex.el (org-latex-image-link-filter):
* lisp/ox-html.el (org-html-image-link-filter): New functions.
2016-12-17 11:36:49 +01:00
thibault 6c8c51c8a1 * etc/ORG-NEWS: Header arguments support for PlantUML source blocks 2016-12-10 17:04:52 +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
Eric Danan 9e80c64d79 New `org-bibtex-headline-format-function'
* lisp/org-bibtex.el (org-bibtex-write): Make this function read the
headline format from the newly created variable
`org-bibtex-headline-format-function' instead of systematically using
the entry title.
(org-bibtex-headline-format-function): Create this variable to hold
a function of one argument, the entry alist, and return the string to
be inserted as headline.  The default value replicates the current
behavior of returning the entry title.

TINYCHANGE
2016-12-09 21:44:06 +01:00
MaDhAt2r 0063075f65 ob-sql: Add sqsh engine
* lisp/ob-sql.el (org-babel-sql-dbstring-sqsh): New function.
(org-babel-execute:sql): Add `sqsh' engine.
2016-12-05 22:45:25 +01:00
Nicolas Goaziou 3a4d16deab Improve repeated entries handling
* lisp/org-agenda.el (org-agenda-show-future-repeats):
(org-agenda-prefer-last-repeat): New variables.
(org-agenda-repeating-timestamp-show-all): Remove variable.
(org-agenda-get-timestamps):
(org-agenda-get-deadlines):
(org-agenda-get-scheduled): Use new variables.
2016-12-03 23:35:42 +01:00
Nicolas Goaziou 2c466ebff2 ob-clojure: Normalize :show-process syntax
* lisp/ob-clojure.el (org-babel-execute:clojure): :show-process
  requires a non-nil (and non "no") value.
2016-11-19 07:39:05 +01:00
Frederick Giasson 56c0ce4a8d ob-clojure: Add :show-process
* lisp/ob-clojure.el (org-babel-clojure-sync-nrepl-timeout): New variable.
(org-babel-execute:clojure): Implement :show-process.  Better error
handling.
2016-11-19 00:30:39 +01:00
Nicolas Goaziou 2c0d8774b4 ox-latex: Allow horizontal rules in table math mode
* lisp/ox-latex.el (org-latex--math-table): Handle horizontal rules.
* doc/org.texi (Tables in @LaTeX{} export): Update documentation.
2016-11-06 23:31:54 +01:00
Nicolas Goaziou f5645675a3 Disallow S-exp in capture templates
* lisp/org-capture.el (org-capture-expand-file): Disallow S-exp.
(org-capture-templates):
* doc/org.texi (Template elements): Update documentation.

A function is equivalent to using S-exp, without tainting code with an
yet another call to `eval'.
2016-11-04 17:41:27 +01:00
Bastien e8fe974ab8 etc/ORG-NEWS: more formatting minor enhancements 2016-11-01 21:38:19 +01:00
Bastien 877f35800e etc/ORG-NEWS: Small formatting enhancements. 2016-11-01 11:38:08 +01:00
Nicolas Goaziou 13b3e426f4 ORG-NEWS: Update 2016-10-19 12:33:18 +02:00
Nicolas Goaziou e7969f29d7 ORG-NEWS: Document new parsed link :format property 2016-10-09 10:33:46 +02:00
Nicolas Goaziou 1a4ace507e ORG-NEWS: Fix typo 2016-10-04 17:43:46 +02:00
Nicolas Goaziou 29830f7214 ob-core: Make `org-babel-hash-show-time' a defcustom
* lisp/ob-core.el (org-babel-hash-show-time): Change into a defcustom.
2016-10-01 10:35:14 +02:00
Jakob Lombacher 2a95984afe ORG-NEWS support of header argument for postgresql 2016-09-22 21:48:32 +02:00
Rasmus e03e837168 org-src: New syntax for source blocks faces
* doc/org.texi (Editing source code): Document changes.
* lisp/org-faces.el (org-block): Update docstring.
  (org-src-block-faces): New defcustom for source-block faces.
* lisp/org-src.el (org-src-font-lock-fontify-block): Use
  org-src-block-faces.
* etc/ORG-NEWS: Update NEWS entry.
2016-09-22 09:31:43 +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
Marco Wahl e37cb08dc5 ORG-NEWS: update about babel J 2016-09-14 11:54:37 +02:00
Jake Romer d4a073f5be ox-md.el: Export footnotes section as Markdown
* lisp/ox-md.el (org-md--headline-title): New function.
(org-md-headline): Use `org-md-headline-title' to generate section
headers.
(org-md--footnote-formatted): New function.
(org-md--footnote-section): New function.
(org-md-inner-template): Update to use `org-md-footnote-section'.
(org-md-footnotes-section): New customizable variable.
(org-md-footnote-format): New customizable variable.

Update ox-md.el to export the Footnotes section as Markdown, using HTML
only where necessary - namely, in footnote and footnote reference links.
2016-09-01 18:41:52 +02:00
Nicolas Goaziou 0b75848228 ORG-NEWS: Notify ob-lua addition 2016-08-29 15:39:56 +02:00
Nicolas Goaziou 579569cc84 ox-html: Number source blocks with listings
* lisp/ox-html.el (org-html-src-block): Number source block if it has
  a caption.  Numbering is done among source blocks with a caption,
  only.

Suggested-by: Clément Pit--Claudel <clement.pit@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/108808>
2016-08-22 22:07:34 +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 af181d315a Update ORG-NEWS 2016-08-08 14:11:07 +02:00
Jarmo Hurri 04e0bc0b00 ox-html: Provide a default CSS class for embedded SVG images
* lisp/ox-html.el (org-html--svg-image): Set CSS class of embedded SVG
images to be org-svg if no other class is set in attributes.
org-html-style-default: Provide default properties for new CSS class.

* doc/org.texi (CSS support): Documentation of default CSS class
org-svg for SVG images embedded into exported HTML.
2016-07-26 10:37:17 +02:00
Nicolas Goaziou 096f4287a6 ox-latex: Allow toggling centering of images
* lisp/ox-latex.el (latex): Introduce new
  property :latex-images-centered.
(org-latex-images-centered): New variable.
(org-latex--inline-image): Handle new attribute :center, in addition to
variable above.
* doc/org.texi (Images in @LaTeX{} export): Document new behaviour
(Publishing options): Reference :latex-images-centered.
2016-07-25 23:31:25 +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
John Kitchin e920819911 Update NEWS with link announcement 2016-07-18 22:47:51 +02:00
Nicolas Goaziou f38f83b4f1 Remove deprecated syntax for Babel properties
* doc/org.texi (Header arguments in Org mode properties): Remove
  reference to deprecated syntax.
* lisp/ob-core.el (org-babel-params-from-properties): Ignore deprecated
  syntax.
* testing/examples/babel.org:
* testing/examples/normal.org:
* testing/examples/ob-header-arg-defaults.org:
* testing/examples/property-inheritance.org:
* testing/lisp/test-ob-header-arg-defaults.el
(test-ob-header-arg-defaults/global/noweb):
(test-ob-header-arg-defaults/global/call):
(test-ob-header-arg-defaults/tree/overwrite/call):
(test-ob-header-arg-defaults/tree/overwrite/noweb):
(test-ob-header-arg-defaults/tree/accumulate/call):
(test-ob-header-arg-defaults/tree/accumulate/noweb):
(test-ob-header-arg-defaults/tree/complex/call):
(test-ob-header-arg-defaults/tree/complex/noweb):
* testing/lisp/test-ob.el (test-ob/elisp-in-header-arguments):
* testing/lisp/test-property-inheritance.el
(test-org-property-accumulation-overwrite-use): Update syntax.
(test-org-property-accumulation-append-use): Use new syntax.
(test-org-property-accumulation-top-val)
(test-org-property-accumulation-overwrite-val)
(test-org-property-accumulation-append-val): Remove tests.
2016-07-04 00:41:56 +02:00
Don March 43303e4e92 ORG-NEWS: document last "++" repeater change 2016-07-03 00:23:11 +02:00
Nicolas Goaziou 5cd793c59a ox-publish: Change signature for preparation and completion functions
* doc/org.texi (Sources and destinations): Document new signature.
* lisp/ox-publish.el (org-publish-project-alist): Update docstring.
(org-publish-projects): Call preparation and
completion functions with the project properties as the sole argument.

`project-plist' used to be dynamically scoped.  This is no longer
possible due to the switch to lexical binding.

Reported-by: Arun Isaac <arunisaac@systemreboot.net>
<http://permalink.gmane.org/gmane.emacs.orgmode/107856>
2016-06-22 15:31:48 +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
Nicolas Goaziou 61a0fafb44 ORG-NEWS: Document last change to radio lists 2016-06-17 10:20:57 +02:00
Nicolas Goaziou 3781a3dbbd org-table: Allow multiple receiver locations for radio tables
* lisp/org-table.el (orgtbl-send-replace-tbl): Allow multiple receiver
  locations.
* testing/lisp/test-org-table.el (test-org-table/send-region): Add test.
2016-06-17 10:05:40 +02:00
Xi Shen 35df86c5c0 ob-sql.el: Support sqlcmd in Cygwin environment
* lisp/ob-sql.el (org-babel-sql-dbstring-mssql): Format Microsoft
  `sqlcmd' command line args.
(org-babel-sql-convert-standard-filename): Convert a Posix path to
Windows long path in Cygwin environment, or do nothing.
(org-babel-execute:sql): Add `mssql' engine support and remove support
for `msosql' engine.

The `osql' command line tool was last updated in 2004,
https://technet.microsoft.com/en-us/library/aa214012(v=sql.80).aspx, and
could not output the query result in a way that morden `org-table.el'
expects.  The `sqlcmd' is the preferred command line tool to connect the
Microsoft SQL Server and it also has a Linux version,
https://msdn.microsoft.com/en-us/library/hh568447(v=sql.110).aspx.

TINYCHANGE
2016-06-17 00:26:20 +02:00
Rasmus 16d42a8001 Cleanup white-space in af463605f1 2016-06-10 10:14:31 +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 81af689d0f org-src: Src-blocks also inherit org-block face
* lisp/org-src.el (org-src-font-lock-fontify-block): Inherit org-block
  face in addition to language specific faces.
* etc/ORG-NEWS: Add entry.
2016-06-09 16:18:17 +02:00
Brian J. Carlson 3179d30683 org.texi: Updated doc for [+-]n in SRC/EXAMPLE export
* doc/org.texi (Timers): Added information about optional argument to
  -n/+n line-numbering
* etc/ORG-NEWS: Added infomation for "Provide offset to [+-]n in
  SRC/EXAMPLE export"  (commit af8e3d8)
2016-05-31 22:35:21 +02:00
Rasmus 888ebfdeaf ox-latex: More robust repeated footnote references
* lisp/ox-latex.el (org-latex--delayed-footnotes-definitions): Fix typo
  in docstring.
(org-latex-footnote-defined-format): New defcustom.
(org-latex-footnote-reference): Refer to repeated footnotes using
labels.  Format using new defcustom.
* etc/ORG-NEWS: Mention change.
* doc/org.texi (Publishing options): Add new defcustom.
2016-05-25 09:14:52 +02:00
Nicolas Goaziou 2d846210eb Implement conditional case-fold search in org-occur
* lisp/org.el (org-occur-case-fold-search): New variable.
(org-occur): Use new variable.

* testing/lisp/test-org.el (test-org/occur): Add tests.
2016-05-20 14:04:04 +02:00
Nicolas Goaziou 8eb582b951 ox-texinfo: Allow :options attribute on special blocks
* lisp/ox-texinfo.el (org-texinfo-special-block): Handle :options
  attribute.
* doc/org.texi (Texinfo specific attributes): Add special block section.
2016-05-19 19:15:55 +02:00
Rasmus 291938d0b0 org-macro.el: Allow modification-time from vc.el
* org-macro.el (org-macro--vc-modified-time): New function.
* org-macro.el (org-macro-initialize-templates): Add support for new
  function.
* doc/org.texi (Macro replacement): Document new behavior.
* etc/ORG-NEWS: Mention new behavior.
2016-05-18 21:39:37 +02:00
Nicolas Goaziou bc327e0b23 ORG-NEWS: Document new plantuml output formats 2016-05-10 22:19:40 +02:00
John Kitchin 516bbf417c ob-emacs-lisp: Make lexical eval default for elisp src blocks
* lisp/ob-emacs-lisp.el (org-babel-header-args:emacs-lisp):
(org-babel-default-header-args:emacs-lisp): New variables.
(org-babel-execute:emacs-lisp): Add an optional argument to the eval
function.
2016-04-19 21:40:21 +02:00
stardiviner d79835a821 ob-lisp: Add SLY support
* ob-lisp.el (org-babel-lisp-eval-fn): New variable.
(org-babel-execute:lisp): Support using SLY to evaluate lisp src block.

Let user can evaluate Lisp src block with SLY.

Modified from a patch proposal by stardiviner.

TINYCHANGE
2016-04-10 10:07:38 +02:00
Nicolas Goaziou 716e339c96 Allow angular links within link descriptions
* lisp/org-element.el (org-element-object-restrictions):
(org-element--object-lex): Allow angular links as equivalent to plain
links in description.

* testing/lisp/test-org-element.el (test-org-element/link-parser): Add
  test.
2016-04-06 11:08:53 +02:00
Nicolas Goaziou 506ff0d76e ORG-NEWS: Document NAME handling for blocks 2016-04-02 10:44:09 +02:00
Richard Kim 8e1c2a39f3 org-info.el: Generate HTML links to gnu.org
* lisp/org-info.el (org-info-export): Convert info links to HTML URL's
that point to appropriate gnu.org or other pages.  User's can customize
the behavior using `org-info-emacs-documents' and
`org-info-other-documets' new variables.

TINYCHANGE
2016-03-30 15:56:02 +02:00
Nicolas Goaziou ea80df6a2e Merge branch 'maint' 2016-03-04 01:16:11 +01:00
Nicolas Goaziou fda14f8d18 Fix typo 2016-03-04 01:15:59 +01:00
Nicolas Goaziou de439a68c8 org-colview: Allow multiple summaries for a single property
* lisp/org-colview.el (org-columns--collect-values):
(org-agenda-colview-summarize): Use column format specification as the
  unique identifier for the returned alist.

* lisp/org-colview.el (org-columns--display-here): Store column format
  specification in a new overlay property.

(org-columns--set-widths):
(org-columns--display-here): Use column format specification instead of
(org-columns--displayed-value): Since the same property can have
multiple titles, use column specification instead of property as keys.

(org-columns--collect-values): Apply signature change.

(org-columns-update): Handle multiple columns for the same property.
Also apply signature change to `org-columns--displayed-value'.

(org-columns--compute-spec): New function.
(org-columns-compute):
(org-columns-compute-all): Use new function.

* testing/lisp/test-org-colview.el (test-org-colview/columns-summary):
(test-org-colview/columns-update): Add tests.

* doc/org.texi (Column attributes): Document computation with multiple
  summary types for a given property.
2016-02-23 13:18:34 +01:00
Nicolas Goaziou fedd6be97a org-colview: Introduce custom summary types
* lisp/org-colview.el (org-columns-summary-types): New variable.
(org-columns-compile-map): Rename into...
(org-columns-summary-types-default): ... this.

(org-columns-new):
(org-columns-compile-format): Use new variables.

* testing/lisp/test-org-colview.el (test-org-colview/columns-summary):
  Add test.

* doc/org.texi (Column attributes): Document new variable.  Improve
  description of time and age based summary types.
2016-02-21 00:44:17 +01:00
Nick Dokos 73d5733d01 Fix typo. 2016-02-20 09:55:08 -05:00
Nicolas Goaziou 3debe06bdd Rename `org-insert-columns-dblock' into `org-columns-insert-dblock'
* lisp/org-colview.el (org-columns-dblock-insert): Rename to...
(org-columns-insert-dblock): ... this.  Also fix a bug that would insert
"local" instead of `local' as the :id value.

* lisp/org.el (org-mode-map):
(org-org-menu): Use new name.
2016-02-17 22:49:19 +01:00
Nicolas Goaziou 23f1119042 org-colview: Allow to force global column view
* lisp/org-colview.el (org-columns): Add new argument to force global
  column view.

* doc/org.texi (Using column view): Document change.
2016-02-17 22:49:19 +01:00
Nicolas Goaziou 3196b14342 Make `org-agenda-view-columns-initially' a defcustom
* lisp/org-agenda.el (org-agenda-view-columns-initially): New variable,
2016-02-17 22:49:19 +01:00
John Foerch ff98903015 org-attach: Make use of git optional
* lisp/org-attach.el (org-attach-commit): New variable.
(org-attach-attach): Use new variable.

TINYCHANGE
2016-02-14 17:56:18 +01:00
Nicolas Goaziou d846817f9d Allow to preview LaTeX fragments in temporary buffers
* lisp/org.el (org-toggle-latex-fragment): Allow to preview fragments
  even when current buffer is not visiting a file.
2016-02-14 00:11:28 +01:00
Nicolas Goaziou 99697abdb9 org-colview: Add :indent parameter
* lisp/org-colview.el (org-dblock-write:columnview): Handle :indent
  parameter.
* doc/org.texi (Capturing column view): Document new feature.
2016-02-04 23:06:03 +01:00
Nicolas Goaziou 00f0c70418 Special property "ITEM" contains headline without stars
* lisp/org.el (org-entry-properties): "ITEM" contains headline without
  stars.
* lisp/org-colview.el (org-columns-display-here): Apply changes.
* doc/org.texi (Special properties): Update documentation.
* testing/lisp/test-org.el (test-org/entry-properties): Update tests.
2016-02-04 23:06:03 +01:00
Kyle Meyer c53936dcfb org-agenda: Fix org-agenda-filter-by-tag-refine
* lisp/org-agenda.el (org-agenda-filter-by-tag-refine): Remove command
  because this functionality is redundant with org-agenda-filter-by-tag
  as of 6c6ae99.

Reported-by: Viktor Rosenfeld <v.rosenfeld@gmx.de>
<http://permalink.gmane.org/gmane.emacs.orgmode/104605>
2016-02-03 23:49:48 -05:00
Nicolas Goaziou c8a3ab1e4c `org-file-apps' accept functions instead of sexp
* lisp/org.el (org-file-apps-defaults-macosx): Tiny re-ordering.
(org-file-apps-defaults-windowsnt): Default values provide functions
instead of sexp.
(org-file-apps): Use a function instead of a sexp.

See <http://permalink.gmane.org/gmane.emacs.orgmode/104272>.
2016-02-03 18:30:17 +01:00
Fabrice Popineau 6af83e0aa7 ox-html: Fix org-html-table-row wrt lexical binding
* lisp/ox-html.el (org-html-table-row-open-tag):
(org-html-table-row-close-tag): New variables.
(org-html-table-row-tags): Remove variable.

(org-html-table-row): Use new variables.
2016-02-03 00:10:24 +01:00
Nicolas Goaziou 435bbc0e3c ORG-NEWS: Document removal of ido and iswitchb variables 2016-02-02 22:23:02 +01:00
Alan Schmitt f3f4b21c57 ORG-NEWS: signal new option for org-latex-custom-lang-environments 2016-01-18 15:40:43 +01:00
Nicolas Goaziou 9db78611b4 Tweak `org-auto-repeat-maybe'
* lisp/org.el (org-auto-repeat-maybe): Only clear non-repeated SCHEDULED
  information in a repeated task.

* doc/org.texi (Repeated tasks): Document behavior.

Do not clear non-repeated DEADLINE information however, as it could be
a global deadline for all occurrences of the task.  Also, this case is
taken care of by `org-agenda-skip-scheduled-if-deadline-is-shown' with
a value set to `repeated-after-deadline'.
2016-01-11 12:11:22 +01:00
Kyle Meyer 6345de2d05 Merge branch 'maint' 2016-01-09 17:43:27 -05:00
Kyle Meyer 6bc48c5f41 Update copyright years 2016-01-09 17:12:03 -05:00
Nicolas Goaziou 74c46ad006 ORG-NEWS: Signal :export-block keyword removal 2016-01-06 19:11:40 +01:00
Nicolas Goaziou 5758bfbedb ORG-NEWS: Fix typo 2015-12-29 22:45:19 +01:00
Rüdiger Sonderfeld 3e252a4dea org-capture.el: Add support for week trees
* lisp/org-capture.el (org-capture-templates): Add
  file+weektree(+prompt) options.
  (org-capture-set-target-location): Add support for week trees.
* doc/org.texi (Template elements): Document file+weektree(+prompt)
  options.
2015-12-29 21:57:58 +01:00
Nicolas Goaziou 3699558452 org.texi: Update footnotes documentation
* doc/org.texi (Footnotes): Be more accurate about footnote marker.
  Remove useless information.  Inline definitions need not start with
  a whitepace.
2015-12-22 16:55:17 +01:00
Sacha Chua 25eb14bc2c org-protocol: Allow key=val&key2=val2-style URLs
* lisp/org-protocol.el: Update documentation.
  (org-protocol-store-link, org-protocol-capture,
  org-protocol-open-source): Accept new-style links.
  (org-protocol-check-filename-for-protocol): Update documentation.
  (org-protocol-parse-parameters, org-protocol-assign-parameters):
  New functions.

  This allows the use of org-protocol on KDE 5 and makes org-protocol
  links more URI-like.  New-style links are of the form:
  org-protocol://store-link?title=TITLE&url=URL

* testing/lisp/test-org-protocol.el: New file.
2015-12-22 13:41:45 +01:00
Nicolas Goaziou 54318add34 Change export block syntax
* lisp/org-element.el (org-element-export-block-parser):
(org-element--current-element): Use new syntax for export blocks.
(org-element-block-name-alist): Remove.

* lisp/ox.el (org-export-register-backend):
(org-export-define-derived-backend): Remove :export-block keyword from
back-end's definition.
(org-export-expand-include-keyword): Use new syntax for include
keywords.

* lisp/ox-ascii.el (ascii):
* lisp/ox-beamer.el (beamer):
* lisp/ox-html.el (html):
* lisp/ox-latex.el (latex):
(org-latex-prefer-user-labels):
* lisp/ox-man.el (man):
* lisp/ox-md.el (md):
* lisp/ox-odt.el (odt):
* lisp/ox-texinfo.el (texinfo): Propagate changes to "ox.el".

* lisp/ob-core.el (org-babel-insert-result):
* lisp/ob-haskell.el (org-babel-haskell-export-to-lhs): Use new syntax.

* lisp/org.el (org-structure-template-alist): Use new syntax.
(org-protecting-blocks): Add "export" to protected blocks.  Remove
  back-ends blocks, which are now special blocks.
(org-fontify-meta-lines-and-blocks-1): Fontify correctly new blocks.

* lisp/org-footnote.el (org-footnote-forbidden-blocks):
* lisp/org-list.el (org-list-forbidden-blocks): Add "export" to
  forbidden blocks.  Remove back-ends blocks, which are now special
  blocks.

* contrib/lisp/ox-extra.el: Update comments.

* testing/lisp/test-org-element.el (test-org-element/export-block-parser):
(test-org-element/export-block-interpreter):
* testing/lisp/test-ob.el (test-ob/org-babel-remove-result--results-html):
(test-ob/org-babel-remove-result--results-latex):
* testing/lisp/test-ox.el (test-org-export/expand-include): Update tests.

Export blocks are explicitly marked as such at the syntax level to
disambiguate their parsing from special blocks.  The new syntax is

  #+BEGIN_EXPORT backend
  ...
  #+END_EXPORT

instead of

  #+BEGIN_backend
  ...
  #+END_backend

As a consequence, =INCLUDE= keywords syntax is modified, e.g.,

  #+INCLUDE: "file.org" HTML

becomes

  #+INCLUDE: "file.org" export html
2015-12-20 21:56:27 +01:00
Peter Feigl cf8bfc178d ob-sql.el: Add support for Oracle via sqlplus
* lisp/ob-sql.el: Add a database type 'oracle that uses sqlplus to
support running SQL blocks against an Oracle database.

Use with properties like this (all mandatory):
 :engine oracle :dbhost <host.com> :dbport <1521> :dbuser <username>
 :database <database> :dbpassword <secret>

TINYCHANGE
2015-12-20 16:54:21 +01:00
Thomas Alexander Gerds 73803c1cf9 org-gnus.el: change nnir group reference
* lisp/org-gnus.el (org-gnus-store-link): Articles in an nnir group
  refer to the original group.

TINYCHANGE
2015-12-18 22:42:32 +01:00
Nicolas Goaziou 7c08d5c12f ORG-NEWS: Fix an entry 2015-12-05 13:50:19 +01:00
Nicolas Goaziou 11291ffcd0 org-list: Radio lists use Org Export library
* lisp/org-list.el (org-list-to-lisp): New function.
(org-list-parse-list): Mark function obsolete.

(org-list-send-list):
(org-list-to-generic):
(org-list-make-subtree): Use new function.

(org-list-item-trim-br): Remove function.

(org-list-to-generic): Use Org Export library.
(org-list--depth):
(org-list--trailing-newlines):
(org-list--generic-eval):
(org-list--to-generic-plain-list):
(org-list--to-generic-item): New functions.

(org-list-to-latex):
(org-list-to-html):
(org-list-to-texinfo): Apply changes.  Allow parameters.
(org-list-to-subtree): Apply changes.

* lisp/org.el (org-toggle-heading):
* lisp/ob-core.el (org-babel-insert-result): Apply changes.

* doc/org.texi (Radio lists): Update documentation.

* testing/lisp/test-org-list.el (test-org-list/to-generic): New test.
2015-12-03 09:54:49 +01:00
Nicolas Goaziou bd3a2cbf2f org-capture: Prevent recursive evaluation of %(...) placeholders
* lisp/org-capture.el (org-capture-templates): Improve docstring.
(org-capture-fill-template): Prevent recursive evaluation of %(...)
placeholders.  Fix escaping of % character in templates.
* testing/lisp/test-org-capture.el: New file.

Reported-by: Thomas Preindl <thomas.preindl@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/103018>
2015-11-29 16:58:14 +01:00
Kyle Meyer e686ab0716 ORG-NEWS: Merge near-duplicate entries 2015-11-14 01:46:08 -05:00
Nicolas Goaziou d24a9b7645 Change references from Org 8.4 to 9.0
According to <http://mid.gmane.org/87oai4w69i.fsf@gnu.org>, master is
the root for Org 9.0, not Org 8.4.
2015-11-07 17:11:48 +01:00
Aaron Ecay 51623c2ac8 News for 0d000f5 2015-11-06 12:53:59 +00:00
Aaron Ecay eb2774b17d News entries for several commits
Namely:
861b6b1, d29d9a0, a676853, e4cd3dd, c7f1b55, 4809656, 40356ae
2015-11-06 12:50:56 +00:00
Aaron Ecay 0d000f5680 babel: small change in API.
* lisp/ob-core.el (org-babel--get-vars): New function.
(org-babel-get-header): Delete.
* lisp/ob-C.el (org-babel-C-expand-C):
(org-babel-C-expand-D):
* lisp/ob-R.el (org-babel-variable-assignments:R):
* lisp/ob-abc.el (org-babel-expand-body:abc):
* lisp/ob-asymptote.el (org-babel-variable-assignments:asymptote):
* lisp/ob-awk.el (org-babel-execute:awk):
* lisp/ob-calc.el (org-babel-execute:calc):
* lisp/ob-clojure.el (org-babel-expand-body:clojure):
* lisp/ob-dot.el (org-babel-expand-body:dot):
* lisp/ob-emacs-lisp.el (org-babel-expand-body:emacs-lisp):
* lisp/ob-fortran.el (org-babel-expand-body:fortran):
(org-babel-fortran-ensure-main-wrap):
* lisp/ob-gnuplot.el (org-babel-gnuplot-process-vars):
* lisp/ob-haskell.el (org-babel-variable-assignments:haskell):
* lisp/ob-js.el (org-babel-variable-assignments:js):
* lisp/ob-latex.el (org-babel-expand-body:latex):
* lisp/ob-lilypond.el (org-babel-expand-body:lilypond):
* lisp/ob-lisp.el (org-babel-expand-body:lisp):
* lisp/ob-maxima.el (org-babel-maxima-expand):
* lisp/ob-ocaml.el (org-babel-variable-assignments:ocaml):
* lisp/ob-octave.el (org-babel-variable-assignments:octave):
* lisp/ob-org.el (org-babel-expand-body:org):
* lisp/ob-perl.el (org-babel-variable-assignments:perl):
* lisp/ob-picolisp.el (org-babel-expand-body:picolisp):
* lisp/ob-processing.el (org-babel-variable-assignments:processing):
* lisp/ob-python.el (org-babel-variable-assignments:python):
* lisp/ob-ruby.el (org-babel-variable-assignments:ruby):
* lisp/ob-scheme.el (org-babel-expand-body:scheme):
* lisp/ob-shell.el (org-babel-variable-assignments:shell):
* lisp/ob-shen.el (org-babel-expand-body:shen):
* lisp/ob-sql.el (org-babel-expand-body:sql):
* lisp/ob-sqlite.el (org-babel-expand-body:sqlite): Adapt to change.
* etc/ORG-NEWS: Document change.
2015-10-29 19:26:11 +00:00
Nicolas Goaziou c29eee4836 org-agenda: Rename `org-agenda-todayp' as `org-agenda-today-p'
* lisp/org-agenda.el (org-agenda-today-p): New function.
(org-agenda-todayp): Deprecate function.
(org-agenda-get-day-face):
(org-agenda-get-deadlines):
(org-agenda-todo): Apply renaming.
2015-10-28 14:48:43 +01:00
Nicolas Goaziou ebe2d83eea Partly revert "Change `org-agenda-repeating-timestamp-show-all' targets"
* lisp/org.el (org-closest-date): Handle every type of repeater.

Reported-by: Matt Lundin <mdl@imapmail.org>
<http://permalink.gmane.org/gmane.emacs.orgmode/102021>
2015-10-25 16:48:50 +01:00
Nicolas Goaziou 59761024b1 ox: Add an option to ignore broken links
* lisp/ox.el (org-export-with-broken-links): New variable.
(org-export-options-alist): Add new OPTIONS item.
(org-link-broken): New error type.
(org-export-resolve-coderef):
(org-export-resolve-fuzzy-link):
(org-export-resolve-id-link): Raise appropriate error symbol when a link
cannot be resolved.
(org-export-data): Handle new error type.

* doc/org.texi (Export settings): Document new feature.

* testing/lisp/test-ox.el (test-org-export/resolve-id-link):
(test-org-export/resolve-fuzzy-link):
(test-org-export/resolve-coderef): Update tests.
2015-10-17 14:42:07 +02:00
Nicolas Goaziou a427098b57 Change `org-agenda-repeating-timestamp-show-all' targets
* lisp/org.el (org-closest-date): Rewrite function with less arguments.
  Improve readability.
(org-time-string-to-absolute): Apply changes to `org-closest-date'.
Improve docstring.

* testing/lisp/test-org.el (test-org/closest-date): New test.

This change implies specific repeaters (i.e., ".+" and "++") are no
longer treated the same as regular one (i.e. "+") wrt
`org-agenda-repeating-timestamp-show-all'.  Indeed, only the latter
represents multiple dates.  The former represent another date only when
TODO state changes, which could then skip some occurrences.

This fixes issue raised at
<http://permalink.gmane.org/gmane.emacs.orgmode/101884> and
<http://article.gmane.org/gmane.emacs.orgmode/26154>.
2015-10-16 18:18:49 +02:00
Nicolas Goaziou 3beb530e50 ORG-NEWS: Document ox-beamer change wrt `org-latex-prefer-user-labels' 2015-10-15 18:26:27 +02:00
Nicolas Goaziou 89c0c2e30b ORG-NEWS: Document :preparation-function change 2015-10-15 10:26:24 +02:00
Nick Dokos 75f91f0bb7 Allow early-warning anniversaries in agenda.
* lisp/org-bbdb.el (org-bbdb-anniversaries-future, org-bbdb-date-list): New functions.

* doc/org.texi: Document the usage of `org-bbdb-anniversaries-future'.

* etc/ORG-NEWS: Feature description.

Feature requested by Julien Cubizolles:

http://thread.gmane.org/gmane.emacs.orgmode/99344
2015-10-13 09:00:16 -04:00
Nicolas Goaziou 348890f79b org-element: Remove now useless function
* lisp/org-element.el (org-element-remove-indentation): Mark as
  an obsolete replacement for `org-remove-indentation'.
(org-element-example-block-parser):
(org-element-example-block-interpreter):
(org-element-src-block-parser):
* lisp/ox.el (org-export-unravel-code): Apply obsolescence.
2015-10-08 16:25:29 +02:00
Rasmus 1e4b7e4bec ox-latex: Support changable TeX compilers
* org.el (org-latex-default-packages-alist): Only use inputenc
and fontenc in pdftex.
* ox-latex.el (latex): Add :latex-compiler.
(org-latex-compiler): New defcustom.
(org-latex-compilers): New defconst.
(org-latex--remove-packages): New function.
(org-latex-template): Use new function and variables.
(org-latex-pdf-process): Update to use %latex shorthand.
(org-latex-compile): Check and use intended compiler.
* org.texi (@LaTeX{} and PDF export): Document changes.
* ORG-NEWS: Add entry.

Adds #+latex_compiler: keyword.

Note, rubber is dropped from `org-latex-pdf-process' since it does not
allow arbitrary latex commands.

Suggested-by: Suvayu Ali <fatkasuvayu+linux@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/98921>
2015-09-27 23:49:32 +02:00
Nicolas Goaziou ea7ac0e412 org-entities: New "vbar" entity
* lisp/org-entities.el (org-entities): Add "vbar".

Suggested-by: Denis Bitouzé <dbitouze-39ZsbGIQGT5GWvitb5QawA@public.gmane.org>
<http://permalink.gmane.org/gmane.emacs.orgmode/101163>
2015-09-16 14:56:52 +02:00
Rasmus 204ac9fd67 org.el: Remove fixltx2e LaTeX dependency
* org.el (org-latex-default-packages-alist): Remove fixltx2e.

fixltx2e is obsolete.  See LaTeX News 22 for details:
<http://latex-project.org/ltnews/ltnews22.pdf>
2015-09-13 18:12:59 +02:00
Nicolas Goaziou a395da96f7 ORG-NEWS: Signal new Stan language support 2015-09-03 13:55:46 +02:00
Nikolai Weibull d4a4877f9a Add news about org-agenda-insert-diary-strategy 2015-08-25 08:05:00 +02:00
Bastien 86170ff501 Merge branch 'maint' 2015-08-16 16:02:20 +02:00
Bastien 55544780e2 ox-html.el (org-html-use-unicode-chars): Delete.
* ox-html.el (org-html-use-unicode-chars): Delete.
(html, org-html-final-function): Update.

* org.texi (Publishing options): Don't mention
`org-html-use-unicode-chars'.

Thanks to Vladimir Alexiev for raising this.
2015-08-16 16:01:57 +02:00
Bastien 97ae158e88 Merge branch 'maint' 2015-08-16 15:22:22 +02:00
Bastien 43fa7d9535 etc/ORG-NEWS: Minor rephrasing 2015-08-16 15:21:38 +02:00
Bastien d25d9fd447 Merge branch 'maint' 2015-08-16 14:59:24 +02:00