org-mode.git
7 hours ago`org-edit-special' edits export blocks master
Nicolas Goaziou [Sun, 23 Nov 2014 23:05:32 +0000]
`org-edit-special' edits export blocks

* lisp/org.el (org-edit-special): Allow to edit export blocks.
* etc/ORG-NEWS: Document feature.

7 hours agoorg-src: Fix docstring
Nicolas Goaziou [Sun, 23 Nov 2014 22:34:47 +0000]
org-src: Fix docstring

* lisp/org-src.el (org-src-ask-before-returning-to-edit-buffer): Fix
  docstring.  Move variable in appropriate section.

7 hours agoFix failing test
Nicolas Goaziou [Sun, 23 Nov 2014 16:30:59 +0000]
Fix failing test

* lisp/org.el (org-indent-region): Fix failing test.

7 hours agoorg-src: Unify source editing tools
Nicolas Goaziou [Sat, 22 Nov 2014 23:31:23 +0000]
org-src: Unify source editing tools

* lisp/org-src.el (org-src-strip-leading-and-trailing-blanklines,
  org-edit-src-force-single-line, org-edit-src-picture,
  org-edit-src-from-org-mode, org-edit-src-allow-write-back-p,
  org-edit-src-beg-marker, org-edit-src-end-marker,
  org-edit-src-overlay, org-edit-src-block-indentation,
  org-edit-src-saved-temp-window-config, org-edit-src-code-timer):
  Remove variables.
(org-src--allow-write-back-p, org-src--beg-marker,
org-src--block-indentation, org-src--code-timer, org-src--end-marker,
org-src--end-marker, org-src--from-org-mode, org-src--overlay,
org-src--saved-temp-window-config, org-src--type,
org-src--babel-info): New variables.

(org-src--construct-edit-buffer-name, org-src--edit-buffer,
org-src--source-buffer, org-src--get-lang-mode, org-src--coordinates,
org-src--goto-coordinates, org-src--element-contents-area,
org-src--make-source-overlay, org-src--on-element-p,
org-src--contents-for-write-back, org-src--edit-element,
org-edit-table.el, org-edit-export-block): New functions.
(org-edit-src-find-buffer, org-src-construct-edit-buffer-name,
org-src-tangle, org-src-in-org-buffer): Remove functions.

(org-edit-src-code, org-edit-fixed-width-region, org-edit-src-abort,
org-edit-src-save): Use new functions and variables.
(org-edit-src-exit): Use new functions and variables.  Change
signature.

* lisp/org.el (org-edit-special, org-indent-line, org-indent-region):
  Use new functions and variables.

* lisp/ob-core.el (org-babel-do-in-edit-buffer): Remove useless check.
(org-babel-expand-src-block): Apply signature change.

This patches resolves discrepancies between source editing tools and
globally simplifies process (auto-save feature, region
preservation...).  It introduces export block editing.  It also moves
internal variables and functions into an appropriate namespace and
delete some unused functions.

34 hours agoorg-src: Remove unused functions and variables
Nicolas Goaziou [Tue, 11 Nov 2014 16:31:40 +0000]
org-src: Remove unused functions and variables

* lisp/org-src.el (org-edit-src-region-extra): Remove variable.
(org-edit-src-find-region-and-lang, org-edit-src-get-lang,
org-edit-src-get-label-format, org-edit-src-get-indentation,
org-src-fontify-block, org-src-fontify-buffer): Remove functions.

(org-src-font-lock-fontify-block): Remove reference to removed
function in docstring.

Remove all functions and variables related to parsing, which is now
delegated to org-element.el.  Also reorder a defcustom and
a declaration in the library.

2 days agoMerge branch 'maint'
Nicolas Goaziou [Fri, 21 Nov 2014 23:04:51 +0000]
Merge branch 'maint'

2 days agoob-js: Fix passing multiline variables maint
Peter Moresi [Tue, 18 Nov 2014 23:58:17 +0000]
ob-js: Fix passing multiline variables

* lisp/ob-js.el (org-babel-js-var-to-js): Replace newline characters
  with "\n" in strings.

Let's say I have a multi-line string stored in an example block.

I want to store my CSV in an example block.

  ColA,ColB,ColC
  1,2,3
  4,5,6

I have a JavaScript function that accepts a string named 'csv' and passing in 'my-csv-data'.

  console.log(csv);

When I expand the source block I end up with:

var csv="ColA,ColB,ColC
  1,2,3
  4,5,6";
console.log(csv);

This will not execute correctly because JavaScript does not support newlines in strings.

What I want instead is:

  var csv="ColA,ColB,ColC\n  1,2,3\n  4,5,6";
  console.log(csv);

TINYCHANGE

3 days agoOpen outer link on nested links
Nicolas Goaziou [Thu, 20 Nov 2014 22:35:28 +0000]
Open outer link on nested links

* lisp/org.el (org-open-at-point): Open outer link on nested links.

* testing/lisp/test-org.el (test-org/open-at-point/inline-image): New
  test.

Suggested-by: Daniel Bausch <bausch@dvs.tu-darmstadt.de>
<http://permalink.gmane.org/gmane.emacs.orgmode/92796>

4 days agoorg-entities.el: Add parallel symbol
rasmus [Wed, 19 Nov 2014 13:47:15 +0000]
org-entities.el: Add parallel symbol

* org-entities.el (org-entities): Add parallel symbol.

From patch proposal by Brady Trainor.

TINYCHANGE

5 days agoMerge branch 'maint'
Nicolas Goaziou [Tue, 18 Nov 2014 18:46:44 +0000]
Merge branch 'maint'

5 days agoorg-element: Fix 'search failed ":"' error
Nicolas Goaziou [Tue, 18 Nov 2014 18:44:46 +0000]
org-element: Fix 'search failed ":"' error

* lisp/org-element.el (org-element-context): Fix 'search failed ":"'
  error when point is on a blank line after a keyword.

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

5 days agoTiny refactoring
Nicolas Goaziou [Tue, 18 Nov 2014 09:43:50 +0000]
Tiny refactoring

* lisp/org.el (org-entry-properties): Tiny refactoring.

5 days agoFix CATEGORY property retrieval
Nicolas Goaziou [Tue, 18 Nov 2014 09:27:45 +0000]
Fix CATEGORY property retrieval

* lisp/org.el (org-entry-properties): Fix returned CATEGORY property
  when no specific keyword is provided.

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

5 days agoFix SCHEDULED property retrieval
Nicolas Goaziou [Tue, 18 Nov 2014 09:11:35 +0000]
Fix SCHEDULED property retrieval

* lisp/org.el (org-entry-properties): Fix storing SCHEDULED property
  when specific argument is not specified.

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

Reported-by: Richard Lawrence <richard.lawrence@berkeley.edu>
<http://permalink.gmane.org/gmane.emacs.orgmode/92728>

6 days agoFix order of TODO keywords with S-right
Nicolas Goaziou [Mon, 17 Nov 2014 16:41:31 +0000]
Fix order of TODO keywords with S-right

* lisp/org.el (org-set-regexps-and-options): Fix order of TODO
  keywords with S-right.

Thanks to Sébastien Vauban for reporting it.
<http://permalink.gmane.org/gmane.emacs.orgmode/92708>

7 days agoox-latex: Do not message "PDF file produced" for fragments
Nicolas Goaziou [Sun, 16 Nov 2014 16:58:11 +0000]
ox-latex: Do not message "PDF file produced" for fragments

* lisp/ox-latex.el (org-latex-compile): Do not message "PDF file
  produced" for fragments.

7 days agoFix `org-indent-line' on blank lines after a paragraph
Nicolas Goaziou [Sun, 16 Nov 2014 16:39:04 +0000]
Fix `org-indent-line' on blank lines after a paragraph

* lisp/org.el (org--get-expected-indentation): Properly compute
  expected indentation on blank lines after a paragraph.
(org-indent-line): Update docstring.

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

7 days agoorg-element: Fix docstring
Nicolas Goaziou [Sun, 16 Nov 2014 15:49:18 +0000]
org-element: Fix docstring

* lisp/org-element.el (org-element-lineage): Fix docstring.

7 days agoMerge branch 'maint'
Nicolas Goaziou [Sun, 16 Nov 2014 14:51:13 +0000]
Merge branch 'maint'

7 days agoFix `org-insert-heading'
Nicolas Goaziou [Sun, 16 Nov 2014 14:47:40 +0000]
Fix `org-insert-heading'

* lisp/org.el (org-insert-heading): Fix some corner case when point is
  in an invisible list.

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

Reported-by: Luke Crook <luke@balooga.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/92619>

7 days agoORG-NEWS: Document `org-element-lineage'
Nicolas Goaziou [Sun, 16 Nov 2014 13:09:00 +0000]
ORG-NEWS: Document `org-element-lineage'

7 days agoFix `org-return'
Nicolas Goaziou [Sun, 16 Nov 2014 12:57:21 +0000]
Fix `org-return'

* lisp/org.el (org-return): Avoid false positives in function.

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

Thanks to Sébastien Vauban for reporting it.

<http://permalink.gmane.org/gmane.emacs.orgmode/92657>

7 days agoox: Deprecate `org-export-get-genealogy' for `org-element-lineage'
Nicolas Goaziou [Sun, 16 Nov 2014 12:27:34 +0000]
ox: Deprecate `org-export-get-genealogy' for `org-element-lineage'

* lisp/ox.el (org-export-collect-tree-properties,
  org-export-numbered-headline-p, org-export-get-tags,
  org-export-resolve-fuzzy-link, org-export-get-ordinal,
  org-export-get-parent-headline, org-export-get-parent-element,
  org-export-get-parent-table):

* lisp/ox-ascii.el (org-ascii--current-text-width):

* lisp/ox-beamer.el (org-beamer--frame-level):

* lisp/ox-icalendar.el (org-icalendar-blocked-headline-p):

* lisp/ox-latex.el (org-latex-footnote-reference):

* lisp/ox-odt.el (org-odt--enumerate, org-odt-link--infer-description,
  org-odt-table): Use `org-element-lineage' instead of
  `org-export-get-genealogy'.

7 days agoorg-element: Implement `org-element-lineage'
Nicolas Goaziou [Sun, 16 Nov 2014 12:13:52 +0000]
org-element: Implement `org-element-lineage'

* lisp/org-element.el (org-element-lineage): New function.

* testing/lisp/test-org-element.el (test-org-element/lineage): New
  test.

8 days agoorg-info: Throw an error when following an info link fails
Nicolas Goaziou [Sat, 15 Nov 2014 23:18:24 +0000]
org-info: Throw an error when following an info link fails

* lisp/org-info.el (org-info-follow-link): Throw an error instead of
  a message when search fails.

8 days agoorg-info: Try info index if info node is not found
Kim [Sat, 15 Nov 2014 18:37:39 +0000]
org-info: Try info index if info node is not found

* lisp/org-info.el (org-info-follow-link): Attempt index lookup if node
  lookup fails.

* doc/org.texi (External links): Update info links.

Info index is almost always finer grain than info nodes.  For example
with this change, [[info:libc#close]] brings up not only
"(libc)Opening and Closing Files" info node, but also place the cursor
on the line that documents "close" function within the node.  This is
done by looking up "close"in the index upon failing to find a node
named "close".  Hence one can now link function, variable and other
names that are in the index rather than being limited to info node
names.  Typically there are far more index items than there are node
names.  For example libc manual has about 700 nodes, but over 4000
concept, type, function, and variables index items.  More examples of
new ways to create links are shown using org.info as example

- [[info:org#org-clock-idle-time]] uses "Variable Index"
- [[info:org#org-capture]] uses "Command and Function Index".
- [[info:org#timestamp]] uses "Main Index"
- [[info:org#C-c C-c]] uses "Key Index"

TINYCHANGE

8 days agoMerge branch 'maint'
Nicolas Goaziou [Sat, 15 Nov 2014 23:10:08 +0000]
Merge branch 'maint'

8 days agoReplace obsolete aliases of calendar functions
Florian Beck [Sat, 15 Nov 2014 18:14:27 +0000]
Replace obsolete aliases of calendar functions

* lisp/org-agenda.el (org-agenda-diary-entry): Replace obsolete functions.

10 days agoORG-NEWS: Document read date change
Nicolas Goaziou [Thu, 13 Nov 2014 20:49:03 +0000]
ORG-NEWS: Document read date change

10 days agoLet `org-read-date' respect `org-replace-disputed-keys' again
Teika kazura [Sat, 8 Nov 2014 07:48:36 +0000]
Let `org-read-date' respect `org-replace-disputed-keys' again

* lisp/org.el (org-read-date): Respect `org-replace-disputed-keys'.

Beginning from org-8.1, org-read-date ignores
`org-replace-disputed-keys'.  This commit restores the original
behavior.  Users who want the org-8.1 behavior should customize
`org-read-date-minibuffer-local-map' instead.

See http://thread.gmane.org/gmane.emacs.orgmode/90626/focus=91318 for
the discussion on this issue.

This commit in effect reverts a6986494a0c4fc5d3363c2bebe48215e7138e4f1
and e8023dde58f267a525b63184ec07d371b5a4c8b5.

TINYCHANGE

12 days agofix org-eldoc path
Łukasz Gruner [Tue, 11 Nov 2014 20:52:01 +0000]
fix org-eldoc path

13 days agoFix cba2f0a
Nicolas Goaziou [Mon, 10 Nov 2014 19:36:01 +0000]
Fix cba2f0a

* lisp/org.el (org-adapt-indentation): Update docstring.
(org-fixup-indentation): Ignore contents of source blocks and example
blocks when indentation should be preserved.

* testing/lisp/test-org.el (test-org/demote, test-org/promote): Add
  tests.

13 days agoorg-colview: Use regular "ITEM" property
Nicolas Goaziou [Mon, 10 Nov 2014 15:41:34 +0000]
org-colview: Use regular "ITEM" property

* lisp/org-colview.el (org-columns-display-here): Use regular "ITEM"
  value instead of computing another one.  Simplify process.
  (org-columns-cleanup-item): Remove function.

* contrib/lisp/org-colview-xemacs.el (org-columns-display-here): Use
  regular "ITEM" value instead of computing another one.  Simplify
  process.  (org-columns-cleanup-item): Remove function.

* etc/ORG-NEWS: Document change.

13 days agoAdd "ITEM" to special properties
Nicolas Goaziou [Mon, 10 Nov 2014 10:22:14 +0000]
Add "ITEM" to special properties

* lisp/org.el (org-special-properties): Add "ITEM".  Tiny fix to
  docstring.
(org-entry-properties): Compute "ITEM" property's value.
(org-buffer-property-keys): Remove hack since "ITEM" now officially
belongs to the special properties list.

* doc/org.texi (Special properties): Document "ITEM" change.

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

13 days agoorg.texi: Remove "ID" as a special property
Nicolas Goaziou [Mon, 10 Nov 2014 10:07:22 +0000]
org.texi: Remove "ID" as a special property

* doc/org.texi (Special properties): Remove "ID" as a special
  property.  Sort list.

Special properties cannot be set only using properties located in
a properties drawer.  "ID" is always set through a properties drawer.
It is more a reserved property than a special one.

13 days agoTags completion ignores narrowing
Nicolas Goaziou [Mon, 10 Nov 2014 08:43:01 +0000]
Tags completion ignores narrowing

* lisp/org.el (org-get-buffer-tags): Ignore narrowing, if any.  Small
  refactoring.

2 weeks agoFix parser wrt to defcustom syntax related changes
Nicolas Goaziou [Sun, 9 Nov 2014 22:55:27 +0000]
Fix parser wrt to defcustom syntax related changes

* lisp/org-element.el (org-element-paragraph-separate,
  org-element--object-regexp): Turn defconst into defvar.
(org-element--set-regexps): Properly set previous variables.
(org-element-update-syntax): New function.

* lisp/org-list.el (org-plain-list-ordered-item-terminator,
  org-list-allow-alphabetical): Call new function whenever these
  variables are modified and Org is already loaded.

* lisp/org.el (org-add-link-type): Call new function since a new link
  type triggers a rebuild of syntax regexps, possibly invalidating
  cache in all Org buffers.

Reported-by: Christopher Dannheim <ch.dannheim@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/92487>

2 weeks agoUpdated org-drill to latest version, 2.4.3.
Paul Sexton [Sun, 9 Nov 2014 01:06:03 +0000]
Updated org-drill to latest version, 2.4.3.

2 weeks agoMerge branch 'maint'
Nicolas Goaziou [Sat, 8 Nov 2014 20:40:59 +0000]
Merge branch 'maint'

2 weeks agoorg-plot: Correction in callback registration
Mario Frasca [Sun, 2 Nov 2014 13:53:27 +0000]
org-plot: Correction in callback registration

org-plot.el (org-plot/gnuplot): Correct the callback for the and
register it as soon as possible.

The data-file variable is not in the scope of the callback, one needs
to grab its value while registering the callback.  With this patch the
timer is set as soon as the file is created.  Without this patch the
timer is set at the end of a let-block, if anything goes wrong in the
let-block before the timer is set, the file will not be removed.

TINYCHANGE

2 weeks agoorg-plot: Reset gnuplot process instead of killing it
Mario Frasca [Sun, 2 Nov 2014 13:50:47 +0000]
org-plot: Reset gnuplot process instead of killing it

org-plot.el (org-plot/gnuplot): Do not kill the gnuplot process. just
jump to end of buffer and rely on command to do the resetting job.

Without this patch, the gnuplot process associated to the gnuplot
buffer is killed before each batch of instructions from orgmode to
gnuplot.  With or without this patch, Org mode sends a reset
instruction to the gnuplot process as first instruction.

TINYCHANGE

2 weeks agoImprove `org-promote' and `org-demote'
Nicolas Goaziou [Sat, 8 Nov 2014 13:35:24 +0000]
Improve `org-promote' and `org-demote'

* lisp/org.el (org-promote, org-demote): Fix docstring.  Small
  refactoring.  Ignore narrowing.
(org-fixup-indentation): Smarter indentation: handle inlinetasks and
footnote definitions.

* testing/lisp/test-org.el (test-org/demote, test-org/promote): New
  test.

`org-called-with-limited-levels' check is removed when promoting
a top-level headline.  The motivation behind it in this particular
case wasn't clear (see 10aba6b1261a47a2aa4862b7222f87814af7ba31) and
I couldn't find a good reason to keep it.

Suggested-by: Sébastien Vauban
<http://permalink.gmane.org/gmane.emacs.orgmode/92450>

2 weeks agoMerge branch 'maint'
Nicolas Goaziou [Sat, 8 Nov 2014 09:19:31 +0000]
Merge branch 'maint'

2 weeks agoSilence byte-compiler
Nicolas Goaziou [Sat, 8 Nov 2014 09:18:42 +0000]
Silence byte-compiler

2 weeks agoAdd support for eldoc
Łukasz Gruner [Sat, 8 Nov 2014 05:55:07 +0000]
Add support for eldoc

Eldoc wil show:
- a 'breadcrumb' of headers when on headerline
- properties of SRC block when on BEGIN/END_SRC line
- inside body of SRC block it will try to use that mode's eldoc function

2 weeks agoSilence byte-compiler
Nicolas Goaziou [Fri, 7 Nov 2014 20:46:08 +0000]
Silence byte-compiler

2 weeks agoox: Fix "wrong type argument listp" when filtering tags
Nicolas Goaziou [Fri, 7 Nov 2014 20:06:10 +0000]
ox: Fix "wrong type argument listp" when filtering tags

* lisp/org.el (org--setup-process-tags): Fill `org-tag-groups-alist'
  only when group tags are defined.

Reported-by: Elric Milon <emacs@whirm.eu>
<http://permalink.gmane.org/gmane.emacs.orgmode/92406>

2 weeks agoMerge branch 'maint'
Nicolas Goaziou [Thu, 6 Nov 2014 23:16:42 +0000]
Merge branch 'maint'

Conflicts:
lisp/ox.el

2 weeks agoox.el: Add pt_BR translations to export engine
Leslie H. Watter [Thu, 6 Nov 2014 19:20:33 +0000]
ox.el: Add pt_BR translations to export engine

* lisp/ox.el: (org-export-dictionary) Add pt_BR messages to the list.

TINYCHANGE

2 weeks agoMerge branch 'maint'
Nicolas Goaziou [Thu, 6 Nov 2014 18:20:13 +0000]
Merge branch 'maint'

2 weeks agoox-beamer: Fix undefined reference with internal links
Nicolas Goaziou [Thu, 6 Nov 2014 18:18:34 +0000]
ox-beamer: Fix undefined reference with internal links

* lisp/ox-beamer.el (org-beamer-target): Use label macro instead of
  hypertarget.

Moreover, target syntax cannot take advantage of hypertarget's second
parameter.

<http://permalink.gmane.org/gmane.emacs.orgmode/92455>

2 weeks agoMerge branch 'maint'
Christian Egli [Thu, 6 Nov 2014 08:17:34 +0000]
Merge branch 'maint'

2 weeks agoox-taskjuggler.el: Add a note about multiline properties
Christian Egli [Wed, 5 Nov 2014 09:13:34 +0000]
ox-taskjuggler.el: Add a note about multiline properties

* contrib/lisp/ox-taskjuggler.el (org-taskjuggler-valid-task-attributes):
Add a comment saying that multiline properties are not supported.

2 weeks agoox-taskjuggler.el: Fix a link in the commentary
Christian Egli [Wed, 5 Nov 2014 09:12:01 +0000]
ox-taskjuggler.el: Fix a link in the commentary

* contrib/lisp/ox-taskjuggler.el: Fix a link to an example project
planning file by Peter Jones.

2 weeks agoox-taskjuggler.el: Fix fetching of dependency options
Christian Egli [Wed, 5 Nov 2014 09:03:55 +0000]
ox-taskjuggler.el: Fix fetching of dependency options

* contrib/lisp/ox-taskjuggler.el (org-taskjuggler-format-dependencies):
Pass string that was used in string-match to
org-match-string-no-properties. This fixes a problem with dependency
options.

2 weeks agoMerge branch 'maint'
Nicolas Goaziou [Tue, 4 Nov 2014 21:25:18 +0000]
Merge branch 'maint'

2 weeks agoox-publish: Fix publishing components asynchronously
Nicolas Goaziou [Tue, 4 Nov 2014 21:15:27 +0000]
ox-publish: Fix publishing components asynchronously

* lisp/ox-publish.el (org-publish): Ensure asynchronous process
  doesn't encounter :components parts in the project, as it may not
  know how to expand them.

Reported-by: Julien Cubizolles <j.cubizolles@free.fr>
<http://permalink.gmane.org/gmane.emacs.orgmode/92319>

2 weeks agoMerge branch 'maint'
Marco Wahl [Tue, 4 Nov 2014 10:17:06 +0000]
Merge branch 'maint'

2 weeks agoorg-agenda: Switch to current API for two calendar calls
Marco Wahl [Tue, 4 Nov 2014 10:06:37 +0000]
org-agenda: Switch to current API for two calendar calls

* lisp/org-agenda.el (org-agenda-phases-of-moon, org-agenda-holidays):
  Update to use the current API

This commit fixes the display of holidays in the agenda for emacs 25.

Further for getting the lunar phases the usage of an obsolete alias
has been replaced by the current name.

2 weeks agoUpdate `customize-package-emacs-version-alist'
Nicolas Goaziou [Mon, 3 Nov 2014 20:58:37 +0000]
Update `customize-package-emacs-version-alist'

* lisp/org.el (customize-package-emacs-version-alist): Update value.

2 weeks agoMake org-transpose-words use text-mode-syntax-table
Eric Abrahamsen [Mon, 3 Nov 2014 19:22:13 +0000]
Make org-transpose-words use text-mode-syntax-table

* lisp/org.el (org-mode-transpose-word-syntax-table): Make this table
  inherit from `text-mode-syntax-table'.

2 weeks agoMerge branch 'maint'
Nicolas Goaziou [Mon, 3 Nov 2014 20:10:53 +0000]
Merge branch 'maint'

2 weeks agoorg-goto: Update for isearch changes
Kyle Meyer [Sun, 2 Nov 2014 05:32:43 +0000]
org-goto: Update for isearch changes

* lisp/org.el (org-goto): Update for isearch changes that removed
isearch-other-control-char.

isearch-other-control-char has been removed from isearch.el [1]. The
default interface for org-goto uses isearch-other-control-char to pass
certain key presses from org-goto-local-auto-isearch-map to
org-goto-map. Specifically, 'C-i' calls org-cycle and 'C-m' calls
org-goto-ret.

With the current isearch, the keys that should be passed to org-goto-map
can be set to nil. In addition to 'C-i' and 'C-m', RET must also be set
to nil because isearch-mode-map sets both 'C-m' and RET.

[1] bzr revision 114586, git commit aa04ac2c6,
    http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15200

<http://thread.gmane.org/gmane.emacs.orgmode/92317>

2 weeks agoFix menu entries: Move Subtree Up/Down
Nicolas Goaziou [Mon, 3 Nov 2014 20:05:17 +0000]
Fix menu entries: Move Subtree Up/Down

* lisp/org.el (org-org-menu): Fix entries.

`org-shiftmetaup' and `org-shiftmetadown' only drag a single line up
or down.  They are not about structure editing.

Reported-by: James Harkins <jamshark70@qq.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/92299>

3 weeks agoUpdate some defcustoms keywords
Nicolas Goaziou [Sun, 2 Nov 2014 23:26:50 +0000]
Update some defcustoms keywords

* lisp/org.el (org-structure-template-alist): Fix :version keyword
  value.
(org-effort-durations): Add missing keywords.

3 weeks agoAllow "min" modifier in effort durations
Nicolas Goaziou [Sun, 2 Nov 2014 23:18:43 +0000]
Allow "min" modifier in effort durations

* lisp/org.el (org-effort-durations): Allow "min" modifier.

This is a standard abbreviation.  It also improves compatibility with
other programs using this property (e.g. "Taskjuggler").

3 weeks agoMerge branch 'maint'
Nicolas Goaziou [Sun, 2 Nov 2014 22:43:17 +0000]
Merge branch 'maint'

3 weeks agoorg.texi: Remove outdated footnote
Nicolas Goaziou [Sun, 2 Nov 2014 22:41:35 +0000]
org.texi: Remove outdated footnote

* doc/org.texi (Effort estimates): EFFORT property is a defconst.  It
  is not desirable to change it.

3 weeks agoMerge branch 'maint'
Nicolas Goaziou [Sun, 2 Nov 2014 22:11:44 +0000]
Merge branch 'maint'

3 weeks agoox-md: Enforce blank line between paragraph and plain list
Nicolas Goaziou [Sun, 2 Nov 2014 22:09:48 +0000]
ox-md: Enforce blank line between paragraph and plain list

* lisp/ox-md.el (org-md-separate-elements): Enforce blank line between
  paragraph and plain list.

Suggested-by: Charles C. Berry <ccberry@ucsd.edu>
<http://permalink.gmane.org/gmane.emacs.orgmode/92321>

3 weeks agoMerge branch 'maint'
Nicolas Goaziou [Sun, 2 Nov 2014 09:42:09 +0000]
Merge branch 'maint'

3 weeks agoorg-capture.el: Fix expand template order
Roberto Huelga Díaz [Wed, 29 Oct 2014 17:29:11 +0000]
org-capture.el: Fix expand template order

* lisp/org-capture.el (org-capture-fill-template): Expand %(sexp) after
  %:keywords, per documentation about capture templates expansion.

When a template is expanded first the simple %-escapes, %:keywords and
after that the %(sexp).

TINYCHANGE

3 weeks agoMerge branch 'maint'
Nicolas Goaziou [Sun, 2 Nov 2014 08:21:50 +0000]
Merge branch 'maint'

3 weeks agoorg.el (org-adapt-indentation): Fix typo
Kyle Meyer [Sat, 1 Nov 2014 21:45:11 +0000]
org.el (org-adapt-indentation): Fix typo

* lisp/org.el (org-adapt-indentation): Fix typo in docstring.

3 weeks agoFix "Symbol nil may not be buffer-local" error
Nicolas Goaziou [Sat, 1 Nov 2014 11:02:47 +0000]
Fix "Symbol nil may not be buffer-local" error

* lisp/org.el (org-set-regexps-and-options): Fix "Symbol nil may not
  be buffer-local" error when encountering an nonexistent startup
  keyword.

Reported-by: Mike McLean <mike.mclean@pobox.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/92279>

3 weeks agoFix infloop with multiple tags
Nicolas Goaziou [Sat, 1 Nov 2014 10:53:46 +0000]
Fix infloop with multiple tags

* lisp/org.el (org--setup-collect-keywords): Fix infloop when parsing
  multiple tags.

Reported-by: Kyle Meyer <kyle@kyleam.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/92245>

3 weeks agoorg.texi: Remove reference to deleted command
Kyle Meyer [Wed, 29 Oct 2014 05:37:20 +0000]
org.texi: Remove reference to deleted command

* doc/org.texi (Inserting deadlines or schedules): Remove entry for
`org-mark-entry-for-agenda-action', which was deleted in commit f95e5ff.

3 weeks agoFix missing syntax highlighting with #+SETUPFILE
Nicolas Goaziou [Thu, 30 Oct 2014 00:10:59 +0000]
Fix missing syntax highlighting with #+SETUPFILE

* lisp/org.el (org--setup-collect-keywords): Fix wrong argument
  order.  Avoid needless recursion.

Reported-by: Kyle Meyer <kyle@kyleam.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/92208>

3 weeks agoox-latex: Add missing defcustom keywords
Nicolas Goaziou [Wed, 29 Oct 2014 21:18:00 +0000]
ox-latex: Add missing defcustom keywords

* lisp/ox-latex.el (org-latex-caption-above): Add missing keywords.

3 weeks agoorg.texi: Update LaTeX environment syntax
Nicolas Goaziou [Wed, 29 Oct 2014 17:14:08 +0000]
org.texi: Update LaTeX environment syntax

* doc/org.texi (@LaTeX{} fragments): Update environments syntax.

3 weeks agoFix ccde27d
Nicolas Goaziou [Wed, 29 Oct 2014 16:49:21 +0000]
Fix ccde27d

* doc/org.texi (Special symbols): Fix
  ccde27ddc09821bd92bdf8af24cc73fe038750b6.

3 weeks agoorg.texi: Minor correction.
rasmus [Wed, 29 Oct 2014 13:10:43 +0000]
org.texi: Minor correction.

* org.texi (Special symbols): Correct output of fragment export.

3 weeks agoFix 8daf4a8
Nicolas Goaziou [Wed, 29 Oct 2014 10:57:42 +0000]
Fix 8daf4a8

* lisp/org.el (org-format-latex): Fix regexp.

3 weeks agoFix preview latex
Nicolas Goaziou [Tue, 28 Oct 2014 22:51:38 +0000]
Fix preview latex

* lisp/org.el (org-toggle-latex-fragment): Fix previewing nested
  environments.
(org-format-latex): Change signature.  Rewrite using Elements.

* lisp/ox-html (org-html-format-latex):
* lisp/ox-odt (org-odt--translate-latex-fragments): Apply signature
  change.

Reported-by: Andreas Leha <andreas.leha@med.uni-goettingen.de>

<http://permalink.gmane.org/gmane.emacs.orgmode/92142>

3 weeks agoRefactor logging code
Nicolas Goaziou [Tue, 28 Oct 2014 12:51:36 +0000]
Refactor logging code

* lisp/org.el (org-log-beginning): New function.
(org-ts-regexp-inactive): New variable.
(org-add-log-setup): Use new function.
(org-skip-over-state-notes): Make function more robust to
customization.
(org-store-log-note): Update function according to previous changes.
Small refactoring.

3 weeks agoUpdate custom properties handling
Nicolas Goaziou [Thu, 16 Oct 2014 07:27:10 +0000]
Update custom properties handling

* lisp/org.el (org-toggle-custom-properties-visibility): Improve
correctness and speed.

* testing/lisp/test-org.el (test-org/custom-properties): New test.

3 weeks agoFix multiple TODO keywords
Nicolas Goaziou [Wed, 15 Oct 2014 08:49:40 +0000]
Fix multiple TODO keywords

* lisp/org.el (org--setup-collect-keywords): Correctly collect
  multiple TODO lines.
* testing/lisp/test-org.el (test-org/set-regexps-and-options): Add
test.

Thanks to Eric Abrahamsen for reporting it.

3 weeks agoFix property drawer insertion with consecutive headlines
Nicolas Goaziou [Tue, 14 Oct 2014 19:18:44 +0000]
Fix property drawer insertion with consecutive headlines

* lisp/org.el (org-get-property-block): Fix property drawer insertion
  with consecutive headlines
* testing/lisp/test-org.el (test-org/entry-put): Add test.

Thanks to Eric Abrahamsen for reporting it.

3 weeks agoORG-NEWS: Document property drawers syntax change
Nicolas Goaziou [Tue, 14 Oct 2014 14:02:35 +0000]
ORG-NEWS: Document property drawers syntax change

3 weeks agoDocument new properties drawers syntax
Nicolas Goaziou [Tue, 14 Oct 2014 08:59:39 +0000]
Document new properties drawers syntax

* doc/org.texi (Per-file keywords): Remove wrong limitation.
(Tracking your habits): Make sure state changes appear after the
properties drawer.
(Property syntax): Specify new syntax.
(Using the property API): Fix a function definition.

3 weeks agoAdd test for setup keywords initialization
Nicolas Goaziou [Tue, 14 Oct 2014 08:53:47 +0000]
Add test for setup keywords initialization

* testing/lisp/test-org.el (test-org/set-regexps-and-options): New test.

* testing/examples/setupfile.org: Add a keyword for testing.

3 weeks agoRewrite setup keywords initialization
Nicolas Goaziou [Tue, 14 Oct 2014 08:53:29 +0000]
Rewrite setup keywords initialization

* lisp/org-table.el (org-table-set-constants): Remove function.
* lisp/org.el (org-set-regexps-and-options): Rewrite function.  Merge
  it with `org-set-regexps-and-options-for-tags'.
(org-set-regexps-and-options-for-tags): Remove function
(org--setup-collect-keywords, org--setup-process-tags): New functions.
(org-mode): Remove `org-set-regexps-and-options-for-tags' call.
(org-agenda-prepare-buffers): Use optimized setup for tags in all
cases.  Improve docstring.
(org-make-options-regexp): Make returned regexp more efficient.

3 weeks agoorg-table: Do not look after CONSTANTS in Orgtbl mode
Nicolas Goaziou [Fri, 10 Oct 2014 14:27:56 +0000]
org-table: Do not look after CONSTANTS in Orgtbl mode

* lisp/org-table.el (orgtbl-ctrl-c-ctrl-c): Do not set constants.

Orgtbl provides limited support for Org tables in an arbitrary major
mode.  Any Org syntax outside tables, including keywords, cannot be
supported in this environment.  Therefore there is no point to look
for CONSTANTS keywords.  Moreover, constants can be defined within the
table.

This change allows to move `org-table-set-constants' feature to
`org-set-regexps-and-options' and treat CONSTANTS keyword like any
other keyword (e.g., defining it in a SETUPFILE).

3 weeks agoTurn buffer local syntax variables into constants
Nicolas Goaziou [Sun, 5 Oct 2014 10:50:05 +0000]
Turn buffer local syntax variables into constants

* lisp/org.el (org-ds-keyword-length, org-deadline-regexp,
  org-deadline-time-regexp, org-deadline-time-hour-regexp,
  org-deadline-line-regexp, org-scheduled-regexp,
  org-scheduled-time-regexp, org-scheduled-time-hour-regexp,
  org-closed-time-regexp, org-keyword-time-regexp,
  org-keyword-time-not-clock-regexp, org-maybe-keyword-time-regexp,
  org-all-time-keywords): Turn into a defconst, no longer
  buffer-local.
(org-set-regexps-and-options): No need to set anymore previous
variables.

3 weeks agoox: Update INCLUDE keywords wrt property drawers
Nicolas Goaziou [Fri, 3 Oct 2014 20:00:32 +0000]
ox: Update INCLUDE keywords wrt property drawers

* lisp/ox.el (org-export--inclusion-absolute-lines): Fix comment.
(org-export--prepare-file-contents):  Do not look for property drawers
after a drawer, since this is impossible.

* testing/examples/include.org: Fix test data.

3 weeks agoSmall refactoring
Nicolas Goaziou [Mon, 22 Sep 2014 20:29:22 +0000]
Small refactoring

* lisp/org.el (org-add-planning-info): Small refactoring.

3 weeks agoInsert logs after planning info and property drawer
Nicolas Goaziou [Mon, 22 Sep 2014 20:28:22 +0000]
Insert logs after planning info and property drawer

* lisp/org.el (org-add-log-setup): Set `org-log-note-marker' after
  planning info and property drawer.

3 weeks agoorg-clock: Insert clocks after meta data
Nicolas Goaziou [Sat, 20 Sep 2014 20:33:05 +0000]
org-clock: Insert clocks after meta data

* lisp/org-clock.el (org-clock-find-position): Make sure clocks, and
  possibly drawer containing them, are inserted after planning info
  and any property drawer.

3 weeks agoAdd tests for property API
Nicolas Goaziou [Mon, 15 Sep 2014 07:32:57 +0000]
Add tests for property API

* testing/lisp/test-org.el (test-org/entry-put, test-org/entry-get,
  test-org/entry-delete, test-org/buffer-property-keys,
  test-org/property-values, test-org/insert-property-drawer): New
  tests.

3 weeks agoRewrite `org-entry-properties'
Nicolas Goaziou [Mon, 29 Sep 2014 22:56:35 +0000]
Rewrite `org-entry-properties'

* lisp/org.el (org-special-properties): Remove "CLOCK" as a special
  keyword.
(org-entry-properties): Rewrite function according to property drawer
syntax.  Change signature.
(org-entry-get): Apply signature change.

"CLOCK" removal is motivated by the fact that it isn't listed as
a special keyword in the manual, it is not used throughout the code
base, and there is no meaningful value for this property.