Commit Graph

9496 Commits

Author SHA1 Message Date
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
Eric Schulte 6f90d903e6 Revert "don't insert a padline at the top of the file"
This reverts commit 6215960d99.
2013-09-28 06:11:36 -06:00
Michael Albinus 89f10a11fb * ob-core.el (org-babel-local-file-name): Simplify. (org-babel-process-file-name): Apply `expand-file-name' first. (org-babel-remote-temporary-directory): New defcustom. (org-babel-temp-file): Use it. 2013-09-28 05:37:45 -06:00
Nicolas Goaziou 82837535df ox-publish: Update a docstring
* lisp/ox-publish.el (org-publish-project-alist): Update docstring wrt
  recent Property drawers changes.
2013-09-27 10:16:46 +02:00
Nicolas Goaziou e09ffe2a67 ox: Add a defcustom to export properties drawers
* lisp/ox.el (org-export-with-drawers): Improve docstring.
(org-export-with-properties): New variable
(org-export--skip-p): Handle new variable.
(org-export-options-alist): Install new variable.
* lisp/ox-ascii.el (org-ascii-node-property,
  org-ascii-property-drawer): New functions.
* lisp/ox-html.el (org-html-node-property): New function.
(org-html-property-drawer): Export property drawers as "pre" blocks.
* lisp/ox-latex.el (org-latex-property-drawer,
  org-latex-node-property): New functions.
* lisp/ox-man.el (org-man-node-property, org-man-property-drawer): New
  functions.
* lisp/ox-md.el (org-md-node-property, org-md-property-drawer): New
  functions.
* lisp/ox-odt.el (org-odt-node-property): New function.
(org-odt-property-drawer): Export property drawers as fixed width
blocks.
* lisp/ox-texinfo.el (org-texinfo-node-property): New function.
(org-texinfo-property-drawer): Export property drawers as verbatim
blocks.
* doc/org.texi: Update manual.
* testing/lisp/test-ox.el: Add tests.
2013-09-26 13:46:31 +02:00
Nicolas Goaziou 9e7231cd27 ox-md: Do not define `org-md-publish-to-md' twice
* lisp/ox-md.el (ox-md-publish-to-md): Do not define function twice.
2013-09-25 20:58:38 +02:00
Eric Schulte 67b80455cf don't add "set datafile missing..." with :missing
* lisp/ob-gnuplot.el (org-babel-expand-body:gnuplot): Don't add "set
  datafile missing..." with :missing, instead this header argument now
  only changes the value of the *org-babel-gnuplot-missing* variable.
2013-09-25 12:21:52 -06:00
Nicolas Goaziou 7cf4406088 ox: Ignore text before first headline with an :export: tag
* lisp/ox.el (org-export--populate-ignore-list): Ignore text before
  first headline if an :export: tag (or a select tag) is found within
  the buffer.
* testing/lisp/test-ox.el: Add tests.
2013-09-25 18:49:39 +02:00
William Waites f688b6cc63 improve handling of output file types 2013-09-25 09:12:42 -06:00
William Waites 7e35a32524 Initial version of ABC notation handling for Babel 2013-09-25 09:12:38 -06:00
Carsten Dominik dd57a31283 Honor user request for full-frame agenda window
* lisp/org-agenda.el (org-agenda-fit-window-to-buffer): Enforce
value 1.0 for minimum window height.
2013-09-25 13:22:56 +02:00
Carsten Dominik c5f3702cf6 Merge branch 'maint' 2013-09-25 09:14:30 +02:00
Carsten Dominik 4cd14bd2ff Protect src overlay during saving the src snipped
* lisp/org-src.el (org-edit-src-exit): Let overlay survive after the
buffer has been saved.
2013-09-25 09:14:12 +02:00
Carsten Dominik d90243c98a Merge branch 'master' of orgmode.org:org-mode 2013-09-25 08:54:08 +02:00
Carsten Dominik 5c2b0dac7f Add publishing capabilities to markdown backend
* lisp/ox-md.el (org-md-publish-to-md): New function.

TINYCHANGE

Patch by Brice Waegenire
2013-09-25 08:53:59 +02:00
korthaerd f6bf7eee79 ox-md: Add publishing function to back-end 2013-09-24 17:56:18 +02:00
Carsten Dominik 1a6661fd10 Add proper language support for et (Estonian)
* lisp/ox.el (org-export-dictionary): Add Estonian translations.

Translations provided by Mihkel
2013-09-22 08:18:51 +02:00
Carsten Dominik bbe4d4c900 Merge branch 'maint' 2013-09-22 08:08:33 +02:00
Carsten Dominik a1a0acc204 Columnview: Fix the case of #+ content present
* lisp/org-colview.el (org-dblock-write:columnview): Change the
capture of pos to after inserting the original content

The problem is with a block that has content preceding the table.
Upon recreating the content, the `pos' gets set to the beginning of
this content instead of the table.  Later calls to
`org-table-recalculate' or `org-table-align' will fail because the
point is not at a table.

This patch moves the capture of `pos' to right before the insertion of
the table.

TINYCHANGE
Patch by Benjamin Beckwith
2013-09-22 08:07:58 +02:00
Carsten Dominik 1e67b6b8d4 Merge branch 'maint' 2013-09-22 08:02:37 +02:00
Alan Schmitt 2c5fbb19cf Fix documentation of the org-footnote face
* org-faces.el (org-footnote): Fix the documentation for this face.

TINYCHANGE
2013-09-22 08:02:18 +02:00
Carsten Dominik 588af17e0f Merge branch 'maint' 2013-09-22 07:59:58 +02:00
Nicolas Richard 12de6223dc C-u C-u C-c ! inserts an active timestamp.
I suggest the following change so that C-u C-u C-c ! inserts an inactive
timestamp. I also document the INACTIVE argument of org-time-stamp.

--
Nicolas.

From 5cdb18297d92f2d99334d98aa2f3b8a40e44702f Mon Sep 17 00:00:00 2001
From: Nicolas Richard <theonewiththeevillook@yahoo.fr>
Date: Mon, 29 Apr 2013 09:02:21 +0200
Subject: [PATCH] Enforce the convention that C-c ! inserts inactive
 timestamps.

* lisp/org.el (org-time-stamp): When INACTIVE is non-nil, insert an
  inactive timestamp also with double universal argument.
2013-09-22 07:57:11 +02:00
Eric Schulte d089170905 named results when keeping keyword of rm'd results
* lisp/ob-core.el (org-babel-remove-result): Fix recent keep-keyword
  option to include named result blocks as well.
2013-09-20 16:29:10 -06:00
Eric Schulte 6215960d99 don't insert a padline at the top of the file
* lisp/ob-tangle.el (org-babel-spec-to-string): Don't insert a padline
  at the top of the file, instead only insert padlines between blocks.
2013-09-20 15:25:36 -06:00
Eric Schulte 136bdc0e83 org-babel-remove-result option keep result keyword
This patch is based off of a request and an initial patch supplied by
Daniele Pizzolli.

* lisp/ob-core.el (org-babel-remove-result): Added an option to keep
  the results keyword when removing the content of results.
2013-09-20 15:09:43 -06:00
Nicolas Goaziou 32315be4da ox-texinfo: Fix 40aa589c46
* lisp/ox-texinfo.el (org-texinfo-export-to-texinfo): Fix
  40aa589c46.
2013-09-20 10:41:21 +02:00
Nicolas Goaziou 40aa589c46 ox-texinfo: Fix 09636abfb6
* lisp/ox-texinfo.el (org-texinfo-export-to-info): Fix
  09636abfb6.
2013-09-20 10:37:32 +02:00
Carsten Dominik 09636abfb6 Get rid of old style backquoting
* lisp/ox-texinfo.el (org-texinfo-export-to-texinfo): Use new style
backquoting.
(org-texinfo-export-to-info): Use new style backquoting.

Thanks to Mehul Sanghvi for the patch.
2013-09-20 07:06:27 +02:00
Carsten Dominik fa61eb64cf Declare a function in ob-core.el 2013-09-19 05:21:06 +02:00
Carsten Dominik b698fc2b57 Fix incorrect funtion call
* lisp/ob-latex.el (org-babel-execute:latex): Call `file-name-sans-extension'
instead of `file-base-name'.
2013-09-19 05:05:56 +02:00
Carsten Dominik cf6e54e90b Improve behvior of org-insert-heading to end of subtree
* lisp/org.el (org-insert-heading): Improve whitespace behavior at
end of subtree.

In a subtree with lots of empty space at the end, until now the new
entry would be inserted after all that whitespace.  Now, it is
inserted closer to the existing text, and the whitespace remains after
the new headline.
2013-09-19 04:59:09 +02:00
Eric Schulte 39a97fcf03 rm meaningless ":padnewlines" from default header args
* lisp/ob-core.el (org-babel-default-header-args): It is likely that
  someone meant to set :padlines to "yes", but accidentally set
  :padnewlines to "yes".  Either way lets just remove this which
  shouldn't have any functional effect.
2013-09-18 15:22:52 -06:00
Eric Schulte da53190a85 default to :padline no for Haskell
Whitespace is significant in Haskell code so this could change
   program semantics.

* lisp/ob-haskell.el (org-babel-default-header-args:haskell): set
  :padlines to "no" by default.
2013-09-18 15:22:52 -06:00
Nicolas Goaziou 3f71612fb7 Merge branch 'maint' 2013-09-18 21:17:52 +02:00
Nicolas Goaziou 41cf6f2a36 org-element: Fix `org-element-at-point' at end of buffer
* lisp/org-element.el (org-element-at-point): If point is at the end
  of the buffer, and that buffer ends with a list, and there's no
  final newline, return last element in last item instead of plain
  list.
* testing/lisp/test-org-element.el: Add test.

This fix allows to fill correctly the following construct:

 - Item with a very long line ending at the end of buffer.
2013-09-18 21:15:04 +02:00
Nicolas Goaziou c1581d0ab4 Merge branch 'maint' 2013-09-17 22:38:15 +02:00
Nicolas Goaziou 072f2abe4c org-element: Fix infloop in `org-element-at-point'
* lisp/org-element.el (org-element-at-point): Fix infloop when called
  on a blank line at the end of the buffer after a headline.
2013-09-17 22:36:09 +02:00
Carsten Dominik 3f177965ee Revert "Revert "Revert "Use `xdg-open' to open files where available"""
This reverts commit 0022904e83.
2013-09-17 21:51:45 +02:00
Carsten Dominik 508ac0f57a Clean up list of default LaTeX packages
* doc/org.texi (@LaTeX{} specific attributes): Document that tabu
and tabularx packages are not in the default set of packages.
* lisp/org.el (org-latex-default-packages-alist): Add the `rotating'
package to the list of default packages.  Improve docstring.
2013-09-17 07:02:14 +02:00
Carsten Dominik 68b0dba851 Fix spacing and cursor position bug caused by `org-insert-property-drawer'
* lisp/org.el (org-insert-property-drawer): Insert only after space in
current line.

This fixed a bug reported by Mathieu Boespflug, who writes:

> Hi,
>
> consider the following very simple org file:
>
> * TODO Thing1[]
>
> where "[]" marks where the point is. Now if I C-S-RET to insert a new
> TODO heading, I get
>
> * TODO Thing1
> * TODO []
>
> Note that there is a trailing space at the end of the last line, as
> expected. The problem is that if I now press C-c C-x p to set
> a property (any property), then I end up with the following situation:
>
> * TODO Thing1
> * TODO
>  :PROPERTIES:
>  :PROP:     val
>  :END: []
>
> The point is now at the end of the property drawer, rather than where it
> was before. Notice how the trailing whitespace in the heading has
> moreover been moved to after the property drawer.
>
> Expected behaviour:
>
> After C-c C-x p, I expect to get:
>
> * TODO Thing1
> * TODO []
>  :PROPERTIES:
>  :PROP:     val
>  :END:
>
> This is exactly what I get if there is *no trailing whitespace* in the
> TODO heading before hitting C-c C-x p. So it seems that the bug is that
> org-set-property does not deal well with trailing whitespace.
>
> This is a problem because it messes up setting properties by advising
> org-insert-todo-heading, say to set a CREATED property automatically for
> new TODO items.
2013-09-16 08:22:15 +02:00
Carsten Dominik c5f2ae7c8d Merge branch 'master' of orgmode.org:org-mode 2013-09-15 06:41:25 +02:00
Carsten Dominik fc2ec2eb88 Fix typo 2013-09-15 06:41:09 +02:00
Aditya Siram bbe8518118 Given a block with an empty body org-babel-src-block-regexp gobbled up everything until the ending delimiter of the next code block. Fixed this by making the body regexp non-greedy. 2013-09-14 09:25:05 -06:00
Carsten Dominik bb331aee96 Keep paragraph motion commands from deactivating the mark
* lisp/org.el (org-forward-paragraph): Do not deactivate the mark.
(org-backward-paragraph): Do not deactivate the mark.
2013-09-14 07:58:56 +02:00
Nicolas Goaziou 43733e33b1 New functions for paragraph-like navigation
* lisp/org.el (org-forward-paragraph, org-backward-paragraph): New
  functions.
* testing/lisp/test-org.el: Add tests.
2013-09-14 00:23:54 +02:00