Commit Graph

9541 Commits

Author SHA1 Message Date
Nicolas Goaziou a59ef0e499 Merge branch 'maint' 2013-11-11 01:56:15 +01:00
Nicolas Goaziou 6cc028bf74 ox: Fix next/previous element getters
* lisp/ox.el (org-export-get-previous-element,
  org-export-get-next-element): Fix return value for non plain text
  objects in a secondary string.
* testing/lisp/test-ox.el: Add tests.
2013-11-11 01:54:01 +01:00
Nicolas Goaziou c57372d5fa Merge branch 'maint'
Conflicts:
	testing/lisp/test-org-element.el
2013-11-10 11:47:06 +01:00
Nicolas Goaziou ede82ccf93 org-element: Fix infloops
* lisp/org-element.el (org-element-center-block-parser)
  (org-element-drawer-parser, org-element-dynamic-block-parser)
  (org-element-footnote-definition-parser)
  (org-element-inlinetask-parser, org-element-property-drawer-parser)
  (org-element-quote-block-parser, org-element-comment-block-parser)
  (org-element-diary-sexp-parser, org-element-example-block-parser)
  (org-element-keyword-parser, org-element-latex-environment-parser)
  (org-element-paragraph-parser, org-element-src-block-parser)
  (org-element-table-parser, org-element-verse-block-parser): Fix
  infloop when buffer ends with a non-empty blank line after the
  element.
* testing/lisp/test-org-element.el: Add tests.
2013-11-10 11:28:14 +01:00
Nicolas Goaziou ca100eaa01 Merge branch 'maint' 2013-11-10 10:25:17 +01:00
Nicolas Goaziou 84818415e8 org-element: Fix infloop
* lisp/org-element.el (org-element-comment-parser): Fix infloop when
  a non-empty blank line follows a comment at the end of the buffer.
* testing/lisp/test-org-element.el: Add test.
2013-11-10 10:23:18 +01:00
Bastien Guerry d94c53b440 Merge branch 'maint' 2013-11-09 17:48:44 +01:00
Bastien Guerry 132994911b org.el (org-align-tags-here): Fix bug: move to the correct position
* org.el (org-align-tags-here): Fix bug: move to the correct
position.

Thanks to Reuben Garrett for reporting this bug.
2013-11-09 17:47:59 +01:00
Nicolas Goaziou 71152dd691 Merge branch 'maint' 2013-11-08 08:56:39 +01:00
Nicolas Goaziou b21c5fa272 ox-latex: Remove all temporary files when compiling
* lisp/ox-latex.el (org-latex-compile): Remove all numbered temporary
  files after compiling.
2013-11-08 08:54:52 +01:00
Nicolas Goaziou 0656278de4 Merge branch 'maint' 2013-11-06 19:17:39 +01:00
Nicolas Goaziou 92f89eedba ox-org: Fix headline level during subtree export
* lisp/org-element.el (org-element-headline-interpreter): Take into
  consideration `org-odd-levels-only' when building a headline.
* lisp/ox-org.el (org-org-headline): Correctly set transcoded headline
  level during subtree export.
2013-11-06 19:14:14 +01:00
Nicolas Goaziou 7ffc460c7f Merge branch 'maint' 2013-11-06 16:52:49 +01:00
Jonas Hoersch 4c04c13a18 org-inlinetask: Hide inline tasks in 'children visibility state
* lisp/org.el (org-cycle-hide-inline-tasks): Re-hide inline tasks when
  switching to 'children visibility state.

TINYCHANGE
2013-11-06 16:51:56 +01:00
Bastien Guerry 41755e24ed Merge branch 'maint' 2013-11-06 16:26:49 +01:00
Bastien Guerry 47b0eec8dc org-capture.el (org-capture-refile): Don't finalize prematurely
* org-capture.el (org-capture-refile): Don't finalize
prematurely.

Thanks to Rodrigo Amestica for reporting this.
2013-11-06 16:26:38 +01:00
Bastien Guerry 39d22406e4 Merge branch 'maint' 2013-11-06 16:16:07 +01:00
Bastien Guerry fe3379bda6 org.el (org-agenda-prepare-buffers): Restore the point position
* org.el (org-agenda-prepare-buffers): Restore the point
position.

Thanks to Samuel Wales for spotting this.
2013-11-06 16:15:45 +01:00
Nicolas Goaziou ed38714b14 Merge branch 'maint' 2013-11-06 16:12:57 +01:00
Nicolas Goaziou 4c94c4d062 ox-html: Add TODO keyword to TOC entries
* lisp/ox-html.el (org-html--format-toc-headline): TOC entries are
  closer to regular headline formatting.
2013-11-06 16:12:24 +01:00
Bastien Guerry 17eda87a39 Merge branch 'maint' 2013-11-06 15:52:15 +01:00
Bastien Guerry 747f46aa1f org-capture: Fix bug when capturing with templates using `function'
* org-capture.el (org-capture): Store :return-to-wconf
earlier.
(org-capture-place-template): Don't store :return-to-wconf
when called from a capture template using `function', rely on
the early :return-to-wconf value store from `org-capture'.

Thanks to Brett Viren for raising this issue.
2013-11-06 15:51:57 +01:00
Bastien Guerry 990339ea23 Merge branch 'maint' 2013-11-06 10:02:18 +01:00
Bastien Guerry 2911965bfe org-agenda: Fix bug when showing the new time
* org-agenda.el (org-agenda-show-new-time): Ignore invisible
text when inserting the new time as a text property.

* org-compat.el (org-move-to-column): New argument
`ignore-invisible' to turn on `buffer-invisibility-spec'.

Thanks to Marcin Borkowski and Karl Voit for reporting this.
2013-11-06 09:59:46 +01:00
Bastien Guerry 28ccbed523 Merge branch 'maint' 2013-11-05 21:54:37 +01:00
Bastien Guerry 06ae4f07a1 org.el (org-insert-link): Don't remove brackets when they belong to a timestamp in a headline
* org.el (org-insert-link): Don't remove brackets when they
belong to a timestamp in a headline.

Thanks to David Belohrad for spotting this.
2013-11-05 21:54:12 +01:00
Nicolas Goaziou 4223af978a org-footnote: Fix void `org-element-cache-reset' symbol error
* lisp/org-footnote.el (org-footnote-section): Fix void
  `org-element-cache-reset' symbol error.
2013-11-05 20:47:29 +01:00
Bastien Guerry c6381df127 Merge branch 'maint' 2013-11-05 19:42:24 +01:00
Bastien Guerry 8ae106907a org-agenda.el (org-agenda-filter-make-matcher): Fix regression
* org-agenda.el (org-agenda-filter-make-matcher): When
filtering tags and hitting space, filter out entries with
tags, only keep those without tags.

Thanks to Serguei Son for reporting this regression.
2013-11-05 19:41:41 +01:00
Oleh 15d1709b19 org.el (org-use-speed-commands): Enhance docstring
* org.el (org-use-speed-commands): Enhance docstring.

TINYCHANGE
2013-11-05 19:14:55 +01:00
Bastien Guerry 97e3bda061 Merge branch 'maint' 2013-11-05 17:27:10 +01:00
Bastien Guerry c1eff607b8 ox-odt.el (org-odt-table-style-format): Use %s for inserting the rel-width property as a string
* ox-odt.el (org-odt-table-style-format): Use %s for inserting
the rel-width property as a string.
(org-odt-template): Fall back on a string for :rel-width.

Thanks to Derek Feichtinger for reporting this bug.
2013-11-05 17:26:46 +01:00
Bastien Guerry 086d5ffe62 Merge branch 'maint' 2013-11-05 12:14:25 +01:00
Bastien Guerry 6c48056b2b Some clean-up related to org-remember being removed
* org.el (org-directory, org-default-notes-file)
(org-reverse-note-order): Don't use the `org-remember'
customization group.
(org-require-autoloaded-modules): Don't require
`org-remember'.

* org-capture.el: Update commentary section to reflect the
fact that org-remember.el is not used anymore.
2013-11-05 12:13:46 +01:00
Rick Frankel a2c71a6e35 org-table.el (org-table-recalculate): Generate user error if an hline relative reference is use on the LHS of a formula
* org-table.el (org-table-recalculate): Generate user error if
an hline relative reference is use on the LHS of a formula.

TINYCHANGE
2013-11-05 12:07:41 +01:00
Bastien Guerry e63b87a46f org.el (org-open-file): Reveal context around point
* org.el (org-open-file): Reveal context around point when
opening a link to an Org file with a line number.

Thanks to François Pinard for suggesting this.
2013-11-05 00:05:33 +01:00
Bastien Guerry 6af8e429f8 Merge branch 'maint' 2013-11-04 23:36:32 +01:00
Bastien Guerry 1fad782491 org-agenda.el (org-agenda-drag-line-forward): Fix bugs
* org-agenda.el (org-agenda-drag-line-forward)
(org-agenda-drag-line-backward): Fix bugs: don't drag lines
without text and don't drag lines before/after hidden lines.

Thanks to Thomas Morgan for reporting bugs in this area.
2013-11-04 23:36:18 +01:00
Nicolas Goaziou 8403332dbc org-element: Fix bug in cache
* lisp/org-element.el (org-element--cache-sync): Modifying blank lines
  at the end of a list or a footnote definition no longer corrupt
  cache.
2013-11-04 19:28:07 +01:00
Nicolas Goaziou 8255286e22 org-element: Small refactoring
* lisp/org-element.el (org-element-item-parser,
  org-element-plain-list-parser): Remove dependencies on org-list
  library.
2013-11-04 18:16:28 +01:00
Nicolas Goaziou 28f4b89830 Small refactoring in comment functions
* lisp/org.el (org-insert-comment, org-comment-or-uncomment-region):
  Use `org-element-at-point' instead of `org-in-src-block-p' to check
  if we're within a source block.
* testing/lisp/test-org.el: Add test.
2013-11-04 18:13:55 +01:00
Yasushi SHOJI 228ea6881b lisp/org.el (org-set-tags): Calculate width of tags with string-width
* lisp/org.el (org-set-tags): Width of strings presenting on a buffer
should be calculated with `string-width' instead of `length'.

This fixes unaligned tags for the languages with multi-width
characters.

TINYCHANGE
2013-11-04 13:11:12 +01:00
Bastien Guerry ae1e22b64d org.el (org-sort-entries): Enhance the docstring
* org.el (org-sort-entries): Mention the
`org-after-sorting-entries-or-items-hook' hook in the
docstring.

Thanks to Andreas Röhler for suggesting this.
2013-11-04 12:52:01 +01:00
Aaron Ecay 2d444c1647 make comment-dwim in source code blocks more DWIM-ish
* lisp/org.el (org-insert-comment, org-comment-or-uncomment-region):
use the relevant language’s major mode comment function if called from
within a source block.

This patch makes it easier to (un)comment lines of babel source.  Now
M-; in a soucre code block should Just Work.

The modification to ‘org-insert-comment’ also fixes a bug, whereby the
function would eat blank lines after it.  The first block, where ! is
the point, would lead to the second instead of the third:

 #+name: orig
 #+begin_src org
 xxxxxxx
 !

 yyyyyy
 #+end_src

 #+name: bad
 #+begin_src org
 xxxxxxx
 #
 yyyyyy
 #+end_src

 #+name: desired
 #+begin_src org
 xxxxxxx
 #

 yyyyyy
 #+end_src

Also, the ‘org-comment-or-uncomment-region’ change results in an
undesirably move of the point after the comment is created.  This is
because ‘comment-region’ wraps the call to ‘comment-region-function’
in a ‘save-excursion’.  The org mode code deletes and reinserts the
whole babel block, which confuses save-excursion.  Org carefully puts
the point back in the proper place, but comment-region’s
save-excursion then substitutes its own erroneous placement.
2013-11-04 12:28:35 +01:00
Bastien Guerry 2ac57db0a3 Merge branch 'maint' 2013-11-04 12:20:20 +01:00
Bastien Guerry 56d405a41c org.el (org-babel-load-file): Set `exported-file' correctly
* org.el (org-babel-load-file): Set `exported-file' correctly,
in case the file as been tangled using a buffer-local value.

* ob-tangle.el (org-babel-tangle-file): Return the list of
tangled files.

Thanks to Sam Flint for reporting this.
2013-11-04 12:19:45 +01:00
Bastien Guerry dbc39fcef5 ob-clojure.el: Add support for the cider backend
* ob-clojure.el (org-babel-clojure-backend): Add customization
options.
(org-babel-execute:clojure): Add support for cider.
2013-11-04 11:30:34 +01:00
Nicolas Goaziou b96986b81c Merge branch 'maint' 2013-11-03 17:53:11 +01:00
Nicolas Goaziou 757f00811d org-element: Fix error when parsing lowercase keywords
* lisp/org-element.el (org-element-context): Fix error when parsing
  affiliated keywords, e.g. "caption".
* testing/lisp/test-org-element.el: Add test.
2013-11-03 17:51:12 +01:00
Nicolas Goaziou 08bebd70ed Merge branch 'maint' 2013-11-03 14:19:54 +01:00
Nicolas Goaziou d61ce8edd1 Fix flyspell behaviour on verbatim objects
* lisp/org.el (org-do-emphasis-faces): Look for verbatim status at
  correct location.
2013-11-03 14:18:19 +01:00
Nicolas Goaziou 0cecf32a0a org-element: Implement caching for dynamic parser
* lisp/org-element.el (org-element-use-cache, org-element--cache,
org-element--cache-sync-idle-time,
org-element--cache-merge-changes-threshold, org-element--cache-status,
org-element--cache-opening-line, org-element--cache-closing-line): New
variables.
(org-element-cache-reset, org-element--cache-pending-changes-p,
org-element--cache-push-change, org-element--cache-cancel-changes,
org-element--cache-get-key, org-element-cache-get,
org-element-cache-put, org-element--shift-positions,
org-element--cache-before-change, org-element--cache-record-change,
org-element--cache-sync): New functions.
(org-element-at-point, org-element-context): Use cache when possible.
* lisp/org.el (org-mode, org-set-modules): Reset cache.
* lisp/org-footnote.el (org-footnote-section): Reset cache.
* testing/lisp/test-org-element.el: Update tests.

This patch gives a boost to `org-element-at-point' and, to a lesser
extent, to `org-element-context'.
2013-11-03 13:09:54 +01:00
Nicolas Goaziou 1bf67e2903 Merge branch 'maint' 2013-11-03 13:08:44 +01:00
Nicolas Goaziou e186cc804b Fix wrong-type-argument error when opening id link
* lisp/org.el (org-open-at-point): Check if link is non-nil before
  matching it.

Reported-by: Daniel Clemente <n142857@gmail.com>
2013-11-03 13:06:14 +01:00
Nicolas Goaziou d3756ccd84 Merge branch 'maint' 2013-11-03 11:38:28 +01:00
Nicolas Goaziou d7379053c0 ox: Fix OPTIONS in default template
* lisp/ox.el (org-export-insert-default-template): Make sure strings
  are properly quoted when inserting a template.  Specifically,
  default value for drawers should be d:(not "LOGBOOK"), not d:(not
  LOGBOOK).
2013-11-03 11:35:31 +01:00
Nicolas Goaziou e7397d3d97 Fix small bug
* lisp/org.el (org-display-inline-images): Fix bug introduced in
  cab0d40593.
2013-11-02 17:41:30 +01:00
Nicolas Goaziou b392750108 Prevent flagging drawers in example blocks
* lisp/org.el (org-flag-drawer): Rewrite function using Elements.
  Also prevents flagging drawers within example blocks.
* testing/lisp/test-org.el (test-org/flag-drawer): Add test.
2013-11-02 15:50:29 +01:00
Nicolas Goaziou 205e586dd1 ox: Add :input-buffer to communication channel
* lisp/ox.el (org-export--get-buffer-attributes): Add :input-buffer
  property.
2013-11-02 14:33:24 +01:00
Nicolas Goaziou baf8457505 ox: Fix comment 2013-11-02 14:32:07 +01:00
Nicolas Goaziou cab0d40593 Fix inline images display
* lisp/org.el (org-display-inline-images): Rewrite function.
2013-11-02 14:23:41 +01:00
Rick Frankel cebf7d012d org.el: Display images in link descriptions.
* lisp/org.el (org-display-inline-images): Modify link regular
  expression to match images in description part. Update doc string to
  explain link behavior.
2013-10-31 17:34:54 -04:00
Nicolas Goaziou 6202ec7b3b Remove need to declare drawers before using them
* lisp/org-agenda.el (org-agenda-prepare): Remove reference to
  `org-drawers-for-agenda'.
(org-agenda-show-1): Remove reference to `org-drawers'.
* lisp/org-clock.el (org-clock-remove-empty-clock-drawer,
  org-clock-cancel): Apply signature change to
  `org-remove-empty-drawer-at'.
* lisp/org-element.el (org-element--list-struct): Use
  `org-drawer-regexp' instead of `org-drawers'.
* lisp/org-feed.el (org-feed-drawer): Update docstring according to
  change.
* lisp/org-list.el (org-in-item-p, org-list-context): Use
  `org-drawer-regexp' instead of `org-drawers'.
* lisp/org-mobile.el (org-mobile-create-index-file): Remove reference
  to `org-drawers-for-agenda'.
* lisp/org-pcomplete.el (pcomplete/org-mode/drawer): Remove function.
* lisp/org.el (org-drawer-regexp): Make variable global.
(org-drawers): Remove variable.
(org-set-regexps-and-options): Ignore DRAWER keyword.
(org-cycle): Use `org-drawer-regexp' instead of `org-drawers'.
(org-cycle-hide-drawers): Add an optional argument to ignore some
drawers.
(org-remove-empty-drawer-at): Remove second argument.  Rewrite
function.
(org-clone-subtree-with-time-shift): Apply signature change to
`org-remove-empty-drawer-at'.
(org-toggle-ordered-property): Apply `org-delete-property' signature
change.
(org-map-entries): Remove reference to `org-drawers-for-agenda'.
(org-entry-delete): Remove optional argument.  Small refactoring.
(org-insert-drawer): Remove reference to `org-drawers'.
(org-delete-property): Apply `org-entry-delete' signature change.
(org-in-drawer-p): Rewrite function.
* testing/lisp/test-org-element.el: Update tests.
* testing/lisp/test-org.el: Update tests.
* testing/lisp/test-ox.el: Update tests.
2013-10-31 21:19:40 +01:00
Nicolas Goaziou 0930a88f04 ox: Change default asynchronous export setup
* lisp/ox.el (org-export-async-init-file): Change default value and
  allowed values.
(org-export-async-start): Apply change to the variable.
2013-10-31 11:21:39 +01:00
Aaron Ecay a94501a132 babel: don’t move point when tangling a single block
* lisp/ob-tangle.el: (org-babel-tangle): don’t move point when called
with single prefix arg

Previously, C-u C-x C-v C-t would move point to the head of the source block.
2013-10-31 01:54:53 -04:00
Aaron Ecay 327aff7a14 ox: fix some docstrings
* lisp/ox.el (org-export-table-cell-starts-colgroup-p,
org-export-table-cell-ends-colgroup-p,
org-export-table-row-starts-rowgroup-p,
org-export-table-row-ends-rowgroup-p): fix swapage of "row" and
"column" in the docstrings for these functions
2013-10-31 01:54:21 -04:00
Oleh Krehel 29b6e207da lisp/ob-C.el (org-babel-C-execute): turn on inhibit-lisp eval 2013-10-30 12:05:58 -06:00
Eric Schulte ac9d8012a4 fix compiler issues w/safe-header-args
* lisp/ob-core.el (org-every): Declared function for compiler.
  (org-babel-safe-header-args): Moved before first use.
  (org-babel-header-args-safe-fn): Moved before first use.
2013-10-30 11:58:50 -06:00
Aaron Ecay 49bee6052c mark o-b-default-header-args:R as a safe local under proper conditions
* lisp/ob-R.el (org-babel-default-header-args:R): mark as a safe local
variable
2013-10-30 11:23:38 -06:00
Aaron Ecay cba8718eac Mark some org-babel variables as safe locals under proper conditions
* lisp/ob-core.el (org-babel-inline-result-wrap,
org-babel-default-header-args,
org-babel-default-inline-header-args): mark as safe local variables
2013-10-30 11:23:34 -06:00
Thomas Dye d645d51fe0 ox: Table continuation strings for some languages
* lisp/ox.el (org-export-dictionary): Add table continuation strings
  for some languages.
2013-10-30 11:11:26 +01:00
Nicolas Goaziou fb06221534 ob-comint: Silence byte compiler
* lisp/ob-comint.el (org-babel-comint-with-output): Fix code typo.
2013-10-30 09:40:40 +01:00
Aaron Ecay fe44d55aa0 ox-latex: Mark some variables safe locals
* lisp/ox-latex.el (org-latex-with-hyperref,
org-latex-default-table-mode, org-latex-tables-booktabs,
org-latex-tables-centered, org-latex-table-caption-above,
org-latex-listings): add safe local variable properties
2013-10-30 09:31:30 +01:00
Aaron Ecay 1d305d4aba babel: don’t add babel eval to the session’s comint input ring
* lisp/ob-comint.el (org-babel-comint-in-buffer): don’t add to
comint-input-ring

Previously, babel code would be added to the comint input ring of a
babel session, making interactive use of the session difficult: one
had to page through the babel generated commands when browsing the
comint history with M-p/M-n.  The session repl’s history should just
contain commands the user has specifically entered in the repl buffer,
and not those which are fed in from org mode.  So, we bind
‘comint-input-filter’ to a function that always returns nil in the
‘org-babel-comint-in-buffer’ macro, to avoid any additions to the
input ring while executing code from babel.
2013-10-29 19:52:36 -06:00
Aaron Ecay 24fe50671e clean up two macros in ob-comint
* lisp/ob-comint.el (org-babel-comint-with-output,
org-babel-comint-in-buffer): clean up code.

This patch replaces some deeply nested ca/dr calls with ‘nth’, and
replaces a setq/unwind-protect/setq incantation with a simple let
binding.  Finally, it also restructures ’org-babel-comint-in-buffer’
to not needlessly save/restore match and excursion data if the buffer
process is not live, and to use with-current-buffer instead of
save-excursion+set-buffer
(info "(elisp) Excursions")
2013-10-29 19:52:35 -06:00
Nicolas Goaziou 5aaf45ea6d Merge branch 'maint' 2013-10-30 00:34:46 +01:00
Jonas Hoersch d80bdb7431 org-inlinetask: fix inlinetask unfolding
* lisp/org-inlinetask.el (org-inlinetask-toggle-visibility): Don't use
  `org-show-entry` as it cannot unfold an inlinetask properly.

TINYCHANGE
2013-10-30 00:33:58 +01:00
Nicolas Goaziou 929a422a3c Merge branch 'maint' 2013-10-29 20:47:42 +01:00
Rüdiger Sonderfeld 0b7f74bcd1 ox-latex: Don't quote const in defcustom
* lisp/ox-latex.el (org-latex-listings): Don't quote const value.

Quoting it would set `org-export-latex' not to `minted' but `(quote
minted)' and thus breaking the export.

Signed-off-by: Rüdiger Sonderfeld <ruediger@c-plusplus.de>
2013-10-29 19:51:14 +01:00
Nicolas Goaziou af92fa3b6c ox-latex: Change to longtable strings
* lisp/ox-latex.el (org-latex--translate): New function.
(org-latex-longtable-continued-on)
org-latex-longtable-continued-from): Remove variables.
(org-latex-table-row): Use new function.
* lisp/ox.el (org-export-dictionary): Add entries relative to
  longtables.  Fix some other entries.
2013-10-29 15:31:22 +01:00
Nicolas Goaziou dc00c4afe6 ob-ebnf: Fix copyright and style
* lisp/ob-ebnf.el (org-babel-execute:ebnf): Fix style.
2013-10-29 15:18:24 +01:00
Nicolas Goaziou 0be044736c Merge branch 'maint' 2013-10-29 09:57:48 +01:00
Nicolas Goaziou a7e5a74e2c Fix `org-insert-heading' at buffer boundaries
* lisp/org.el (org-insert-heading): Do not error out when inserting is
  to be done at one of the buffer's boundaries.
* testing/lisp/test-org.el: Add tests.
2013-10-29 09:55:01 +01:00
Ingo Lohmar 8eadca98a6 Fix org-insert-todo-heading-respect-content in plain list item
* lisp/org.el (org-insert-todo-heading-respect-content): Pass correct
prefix arg to always insert heading.

TINYCHANGE

This function used a second argument t, which is eventually passed to
org-insert-heading, adding a list item when inside a plain list.  Use
the proper argument '(4) now, to always create a heading, just like
the function's name and documentation imply.
2013-10-29 09:37:53 +01:00
Aaron Ecay 8b264d505e Fix org-src-edit interaction with undo.
* org-src.el (org-edit-src-exit): Place an undo boundary before
writing changes back to parent buffer.

The previous code attempted to preserve the undo information in the
indirect buffer editing the source code, but this interacts poorly
with the undo system, and can lead to undo operations scrambling the
buffer.  The new approach means that edits made in the indirect buffer
cannot be undone piece-by-piece (instead, all changes made in the
indirect buffer constitute one “change” from the point of view of
undo), but the misbehavior of undo is (hopefully) now avoided.
2013-10-28 15:09:25 -04:00
Nicolas Goaziou dca85fec62 Merge branch 'maint' 2013-10-28 09:53:42 +01:00
Joost Diepenmaat da232c9711 Correctly indent BEGIN_SRC and END_SRC lines
* lisp/org.el (org-indent-region): BEGIN_SRC and END_SRC lines should
  not be considered part of the source block for the purposes of
  indentation.

TINYCHANGE
2013-10-28 09:52:00 +01:00
Nicolas Goaziou 73f2ef866d org-element: Small change to src block indentation
* lisp/org-element.el (org-element-remove-indentation): Renamed from
  `org-element--remove-indentation'.
(org-element-example-block-interpreter, org-element-src-block-parser):
Do not depend on `org-src-preserve-indentation'.
(org-element-src-block-interpreter, org-element-example-block-parser):
Check `org-src-preserve-indentation'.
* lisp/ox.el (org-export-unravel-code): Handle
  `org-src-preserve-indentation'.
* testing/lisp/test-org-element.el: Update tests.
2013-10-27 11:06:28 +01:00
Nicolas Goaziou bdbf80aacb ob-tangle: Silence byte-compiler 2013-10-27 09:54:27 +01:00
Thomas Dye bb12272263 ox-latex: Longtable continuation strings customizable
* lisp/ox-latex.el (org-latex-longtable-continued-on,
  org-latex-longtable-continued-from): New variables.
(org-latex-table-row): Use new variables.
2013-10-27 08:59:55 +01:00
Thomas Dye 3c4afa706d ox-latex: Add \endfirsthead to longtable export
* lisp/ox-latex.el (org-latex-table-row): Implements the \endfirsthead
command so the caption only appears once, at the top of the table.
Subsequent pages of the table start with "Continued from previous
page".
2013-10-27 08:52:15 +01:00
Nicolas Goaziou 919aaebdc8 Merge branch 'maint' 2013-10-26 21:02:22 +02:00
Nicolas Goaziou 2b3e01ef4f ox-latex: Fix docstring
* lisp/ox-latex.el (org-latex-listings-options): Use correct number of
  backslash characters in the example.

Reported-by: Thomas S. Dye <tsd@tsdye.com>
2013-10-26 21:00:03 +02:00
Michael Gauland 416f5ee423 Add ebnf support to babel. 2013-10-26 11:37:46 -06:00
Nicolas Goaziou 2668d9e9ce Merge branch 'maint' 2013-10-24 17:22:26 +02:00
Nicolas Goaziou ff172be293 org-element: Use `org-latex-regexps', not `org-format-latex-options'
* lisp/org-element.el (org-element-latex-or-entity-successor,
  org-element-latex-fragment-parser): Use `org-latex-regexps' instead
  of `org-format-latex-options'.
* testing/lisp/test-org-element.el: Fix tests.

`org-latex-regexps' defines the correct syntax for LaTeX code within
an Org buffer.  On the other hand, `org-format-latex-options'
determines which syntax can be previewed within the buffer.
2013-10-24 17:15:23 +02:00
Nicolas Goaziou aff4f10d79 Merge branch 'maint' 2013-10-23 19:04:49 +02:00
Christian Moe a535d291fd ox-odt: Stop adding leading space after line break
* lisp/ox-odt.el (org-odt-line-break, org-odt-plain-text): Remove
newline after line-break tag.

The exporter was pretty-printing the ODT XML with newlines after
forced line breaks, but LibreOffice would interpret those as
spaces.  This led to a leading space after every manual line break.
2013-10-23 19:04:09 +02:00
Oleh Krehel a24775dc79 ob-ruby.el: fix result of :results output :session combination.
* lisp/ob-ruby.el (org-babel-ruby-evaluate):
  set conf.echo=false for the duration of evaluation.

* testing/lisp/test-ob-ruby.el (test-ob-ruby/session-output): new test.
2013-10-21 13:09:28 -06:00
Eric Schulte 7a17f8a5a7 fix typo in `org-babel-under-commented-heading-p'
Thanks to Alan Schmitt for pointing this out.

* lisp/ob-tangle.el (org-babel-under-commented-heading-p): Fix name
  typo.
2013-10-20 15:56:20 -06:00
Nicolas Goaziou e9647da101 org-element: Do not retrieve Babel related info
* lisp/org-element.el (org-element-babel-call-parser,
  org-element-inline-babel-call-parser): Do not call
  `org-babel-lob-get-info' since it is out of parser's scope.
(org-element-babel-call-interpreter,
org-element-inline-babel-call-interpreter): Apply changes to parsers.
2013-10-20 13:38:30 +02:00
Nicolas Goaziou 35842c7362 Merge branch 'maint' 2013-10-20 11:00:57 +02:00
Nicolas Goaziou e5cecc5d34 export back-ends: Remove duplicate information
* lisp/ox-ascii.el: Remove comments at the beginning of the file since
  the library is documented in Org manual.
* lisp/ox-beamer.el: Remove comments at the beginning of the file since
  the library is documented in Org manual.
* lisp/ox-html.el: Remove comments at the beginning of the file since
  the library is documented in Org manual.
* lisp/ox-icalendar.el: Remove comments at the beginning of the file since
  the library is documented in Org manual.
* lisp/ox-md.el: Remove comments at the beginning of the file since
  the library is documented in Org manual.
2013-10-20 11:00:05 +02:00
Eric Schulte af80144976 tangle checks for COMMENT in parent headlines
* lisp/ob-tangle.el (org-babel-under-commented-heading-p): Check if
  the point is under a commented heading (including parents).
  (org-babel-tangle-collect-blocks): Don't tangle blocks is under a
  commented heading (including parents).
2013-10-19 15:53:39 -06:00
Nicolas Goaziou fe27ca9906 org-element: Remove folding status in parsed data
* lisp/org-element.el (org-element-center-block-parser,
  org-element-drawer-parser, org-element-dynamic-block-parser,
  org-element-item-parser, org-element-quote-block-parser,
  org-element-comment-block-parser, org-element-export-block-parser,
  org-element-verse-block-parser, org-element-special-block-parser,
  org-element-example-block-parser, org-element-headline-parser,
  org-element-inlinetask-parser): Remove :hiddenp property.
* lisp/org.el (org-end-of-line, org-down-element): Use an equivalent
  of :hiddenp property.
* testing/lisp/test-org-element.el: Remove tests.

The property is removed because it is buggy (e.g., when there's a link
just after a block opening line) and not really useful.
2013-10-17 22:45:00 +02:00
Carsten Dominik d73bde62fe Fix incorrect time calculation for `org-extend-today-until'
* lisp/org-clock.el (org-clock-get-sum-start): Fix bad date
  math, affecting mode line and clock tables.

Patch by Ian Kelling
2013-10-17 07:41:49 +02:00
Michael Brand e04a22ed2d Small improvement of maintainability of link escaping
* lisp/org.el (org-link-escape-chars): Add comment with escape numbers
alphabetically ordered.
(org-link-escape-chars-browser): Add comment with escape numbers.
(org-link-escape): Use better readable char constant instead of number
constant for percent char.
(org-link-escape-browser): New function to substitute duplicate source
code.
(org-open-at-point): Substitute duplicate source code.
* testing/README: Make comment in source code example clearer.
* testing/lisp/test-org.el (test-org/org-link-escape-chars-browser):
Change URL to real use case and use the new function
`org-link-escape-browser'.
2013-10-17 06:59:00 +02:00
Nicolas Goaziou 4bf9a53cde Merge branch 'maint' 2013-10-16 21:29:16 +02:00
Nicolas Goaziou 5394f15e51 org-element: Use `org-match-string-no-properties'.
* lisp/org-element.el (org-element--list-struct): Use
  `org-match-string-no-properties'.
2013-10-16 21:26:19 +02:00
Nicolas Goaziou 61e4f1b2c8 Merge branch 'maint' 2013-10-16 13:24:37 +02:00
Nicolas Goaziou b1e7b86fda org-element: Fix block parsing in lists
* lisp/org-element.el (org-element--list-struct): Fix block parsing in
  lists.
* testing/lisp/test-org-element.el: Add test.

Reported-by: Omid <omidlink@gmail.com>
2013-10-16 13:21:42 +02:00
Michael Brand fb5003ea63 org-table-transpose-table-at-point: Preserve indentation and point
* lisp/org-table.el (org-table-transpose-table-at-point): Preserve
indentatinon of first row. Restore point to transposed field in
transposed table.
2013-10-15 16:49:07 +02:00
Eric Schulte 2eef1b4549 call org-confirm-babel-evaluate from code block
Always call org-confirm-babel-evaluate from the head of the code
  block being evaluated so that the info may be found with
  e.g., (org-babel-get-src-block-info 'light)

* lisp/ob-core.el (org-babel-check-confirm-evaluate): Call
  org-confirm-babel-evaluate from code block head.
2013-10-14 07:23:39 -06:00
Bastien Guerry 8f8c8cbed0 Merge branch 'maint' 2013-10-14 10:06:08 +02:00
Bastien Guerry c1ea2c3df9 ox-org.el: Show all headings and all blocks before fontifying when htmlizing sources
* ox-org.el (org-org-publish-to-org): When htmlizing an .org
file, ensure to show all headings and all blocks before
fontifying.
2013-10-14 10:05:30 +02:00
Nicolas Goaziou b5356dadb4 Merge branch 'maint' 2013-10-13 18:41:12 +02:00
Nicolas Goaziou 9c1ef6df93 ox-publish: Fix compilation problem
* lisp/ox-publish.el (org-publish-all): Fix compilation problem.
2013-10-13 18:34:57 +02:00
Nicolas Goaziou f37f3596a2 Merge branch 'maint' 2013-10-13 18:21:14 +02:00
Nicolas Goaziou 92c2ccb1fb org-element: Fix interpreter for timestamp with delay
* lisp/org-element.el (org-element-timestamp-interpreter): Correctly
  interpret timestamps with delays.
* testing/lisp/test-org-element.el: Add test.
2013-10-13 18:13:35 +02:00
Nicolas Goaziou fd5a4f7d36 Merge branch 'maint' 2013-10-13 10:20:58 +02:00
Nicolas Goaziou 11514badc1 org-element: Parse warning delays in timestamps
* lisp/org-element.el (org-element-timestamp-parser,
  org-element-timestamp-interpreter): Parse warning delays.
* testing/lisp/test-org-element.el (test-org-element/timestamp): Add
  tests.
2013-10-13 10:17:16 +02:00
Eric Schulte be3dad300f re-apply an orphaned anonymous lambda function
* lisp/ob-tangle.el (org-babel-tangle-collect-blocks): Re-apply an
  orphaned anonymous lambda function.
2013-10-09 10:29:01 -06:00
Eric Schulte 15847336c3 tangled links use relative paths by default
* lisp/ob-tangle.el (org-babel-tangle-use-relative-file-links):
  Controls the use of relative paths in files and links in tangled
  source code.
  (org-babel-spec-to-string): Optionally use relative paths in files
  and links.
2013-10-09 10:29:01 -06:00
Bastien Guerry 2829fdad0b Merge branch 'maint' 2013-10-08 08:08:11 +02:00
Bastien Guerry 0eb0e5778b Use bzg@gnu.org instead of bzg AT gnu DOT org 2013-10-08 08:07:21 +02:00
Nicolas Goaziou 21b11071d3 Merge branch 'maint' 2013-10-07 17:06:10 +02:00
Nicolas Goaziou 655f62dbbb ox-beamer: Fix b67ff6073c
* lisp/ox-beamer.el (org-beamer--format-section): Fix regression
  introduced in b67ff6073c, which would
  prevent frames from being propely exported.
2013-10-07 16:58:25 +02:00
Nicolas Goaziou 58b157956c ox: Fix `org-export-with-backend'
* lisp/ox.el (org-export-with-backend): Ensure function will use
  provided back-end.
* testing/lisp/test-ox.el: Add test.
2013-10-07 16:58:20 +02:00
Eric Schulte 8aaf3c9748 reading tables from lisp code block output
* lisp/ob-lisp.el (org-babel-execute:lisp): Read tabular results
  written to STDOUT as tables.
2013-10-06 17:13:01 -06:00
Eric Schulte 5afd5d9785 optional arguments to org-babel-insert-header-arg
* lisp/ob-core.el (org-babel-insert-header-arg): Optional arguments
  for usage from Emacs Lisp programs.  In addition this function will
  now insert header arguments in the correct place instead of at the
  current point.
2013-10-06 09:07:42 -06:00
Nicolas Goaziou 45d81d47ca Merge branch 'maint' 2013-10-04 21:14:39 +02:00
Nicolas Goaziou 35e5e5b8b0 org-list: Fix misleading docstring
* lisp/org-list.el (org-list-allow-alphabetical): Remove reference to
  unused VALUE.
2013-10-04 21:13:23 +02:00
Nicolas Goaziou 1734eea184 Merge branch 'maint' 2013-10-04 21:12:40 +02:00
Nicolas Goaziou b67ff6073c ox-beamer: Protect fragile commands in sections
* lisp/ox-beamer.el (org-beamer--format-section): Protect fragile
  commands in sections.
2013-10-04 21:11:49 +02:00
Eric Schulte ee6c792ec7 ob-clojure nrepl customization variable
- ensure body is expanded for n-repl as well
  - declare n-repl functions
  - remove require ob-tangle from ob-clojure

* lisp/ob-clojure.el (org-babel-clojure-backend): Customization
  variable to select clojure backend
  (nrepl-eval): Declared function.
  (nrepl-current-connection-buffer): Declared function.
  (org-babel-execute:clojure): Execution now uses customized backend.
2013-10-03 13:25:46 -06:00
Oleh Krehel 7429ceaa0c ob-clojure.el: switch to nREPL as the main method of evaluating Clojure.
Get the old behavior with:
(defalias 'org-babel-execute:clojure 'org-babel--execute-clojure-slime)
2013-10-03 13:06:28 -06:00
Nicolas Goaziou 2020009cc9 Merge branch 'maint' 2013-10-03 13:44:20 +02:00
Nicolas Goaziou 79ee98d755 Fix check-box toggling when point is on a link at an item
* lisp/org.el (org-ctrl-c-ctrl-c): When using C-c C-c at an item with
  point on a link, make sure checkbox, if any, is toggled.

Reported-by: Christoph LANGE <math.semantic.web@gmail.com>
2013-10-03 13:41:09 +02:00
Rick Frankel 6f5180bd9f Fix escaping of links in html export.
* lisp/ox-html.el (org-html-link): Unescape org-escaped links an
  re-escape for html (browser).
2013-10-02 18:26:27 -04:00
Carsten Dominik f871fb6fca Merge branch 'master' of orgmode.org:org-mode 2013-10-01 20:20:04 +02:00
Carsten Dominik 08d9c1b42c Fix two regular expressions
* lisp/org.el (org-property-drawer-re): Make less greedy to avoid
overreaching matches.
(org-clock-drawer-re): Make less greedy to avoid
overreaching matches.
2013-10-01 20:19:42 +02:00
Eric Schulte 01467ae083 remove leading newline when removing a result
This fixes a number of new test failures

* lisp/ob-core.el (org-babel-remove-result): Remove leading newline
  when removing a result.
2013-10-01 06:25:31 -06:00
Vladimir Lomov 11498bf86f remove dangling 'padline' variable
And seems that you miss another 'padline' in function
'org-babel-spec-to-string', line 323. I attached small patch which
removes that line so I can tangle Org document with shell scripts.

* lisp/ob-tangle.el (org-babel-spec-to-string): Remove dangling
  'padline' variable.

TINYPATCH
2013-10-01 06:00:44 -06:00
Eric Schulte c076b41c9e better directory handling for lisp code blocks
* lisp/ob-lisp.el (org-babel-execute:lisp): Removed an if in which the
  else branch was never taken.
2013-09-29 13:43:59 -06:00
Eric Schulte 5b397e8917 fix output handling of lisp blocks
previously we were conflating results/output with scalar/vector

* lisp/ob-lisp.el (org-babel-execute:lisp): Fix output handling of
  lisp blocks.
2013-09-29 13:42:37 -06:00
Carsten Dominik 817cbca767 Allow regexp separator when converting the region to a table
* lisp/org-table.el (org-table-convert-region): Interpret string SEPARATOR
as regular expression.  Triple `C-u' prefix arg will read a regexp
from the user.
* doc/org.texi: Document that `C-c |' can take a regexp as a separator.

Patch modified from a proposal by Francois.
2013-09-29 12:27:09 +02:00
Nicolas Goaziou f485539d63 Merge branch 'maint' 2013-09-29 10:30:50 +02:00
Nicolas Goaziou d745cd1952 ox-beamer: Add a helpful error message
* lisp/ox-beamer.el (org-beamer--format-block): Return an error
  message when using a special environment as a block type.  Also
  check for incomplete environment definitions.
2013-09-29 10:28:15 +02:00
Eric Schulte 6857d139e1 set default emacs-lisp header args to nil
The difference between elisp and every other language was causing
  confusion, so simpler just to set these to nil.

* lisp/ob-emacs-lisp.el (org-babel-default-header-args:emacs-lisp):
  Set to nil.
2013-09-28 06:37:54 -06:00
Eric Schulte ae21350aaa :padline insertion aware of placement in file
* lisp/ob-tangle.el (org-babel-spec-to-string): Remove padline
  handling from here as there is insufficient information on context.
  (org-babel-tangle): Moved padline handling here where we can test
  for placement in the file.
2013-09-28 06:15:42 -06:00