Commit Graph

1406 Commits

Author SHA1 Message Date
Nicolas Goaziou 536c55b644 org-md: Be more subtle when protecting #
* contrib/lisp/org-md.el (org-md-paragraph, org-md-plain-text): Make
  sure raw # (inserted with, for example, an export snippet) don't get
  escaped.  A few false positives don't hurt.
2012-07-27 14:05:44 +02:00
Nicolas Goaziou c8acf8d695 org-export and back-ends: Fix some docstrings 2012-07-26 15:33:27 +02:00
Nicolas Goaziou 065401cfdb org-md: Export back-end for Markdown format
* contrib/lisp/org-md.el: New file.
2012-07-26 12:41:26 +02:00
Nicolas Goaziou b6b40424d2 org-e-ascii: Center shortened horizontal rules
* contrib/lisp/org-e-ascii.el (org-e-ascii-horizontal-rule): Center
  shortened horizontal rules.
2012-07-25 12:55:00 +02:00
Nicolas Goaziou 8d98835a3c org-export: Export properties from subtrees are case insensitive
* contrib/lisp/org-export.el (org-export--get-subtree-options): Export
  properties from subtrees are case insensitive.
2012-07-25 10:13:09 +02:00
Bastien Guerry f06a4db2be org-export-generic.el: Add require 'cl for defmacro*. 2012-07-25 08:32:54 +02:00
Nicolas Goaziou 2b6ba84ad6 org-export: Memoize results from `org-export-data'
* contrib/lisp/org-export.el (org-export-collect-tree-properties):
  Initialize hash table for memoization.
(org-export-data): Memoize results.
2012-07-24 22:52:29 +02:00
Nicolas Goaziou dbea7e658f org-export: Rename some internal functions
* contrib/lisp/org-export.el (org-export-get-environment,
  org-export-collect-tree-properties, org-export-data,
  org-export-expand-include-keyword): Use new names.
(org-export--parse-option-keyword): Renamed from
`org-export-parse-option-keyword'.
(org-export--get-subtree-options): Renamed from
`org-export-get-subtree-options'.
(org-export--get-inbuffer-options): Renamed from
`org-export-get-inbuffer-options'.
(org-export--get-buffer-attributes): Renamed from
`org-export-get-buffer-attributes'.
(org-export--get-global-options): Renamed from
`org-export-get-global-options'.
(org-export--allow-BIND-local): Renamed from
`org-export-allow-BIND-local'.
(org-export--confirm-letbind): Renamed from
`org-export-confirm-letbind'.
(org-export--install-letbind-maybe): Renamed from
`org-export-install-letbind-maybe'.
(org-export--get-min-level): Renamed from `org-export-get-min-level'.
(org-export--collect-headline-numbering): Renamed from
`org-export-collect-headline-numbering'.
(org-export--populate-ignore-list): Renamed from
`org-export-populate-ignore-list'.
(org-export--interpret-p): Renamed from `org-export--interpret-p'.
(org-export--prepare-file-contents): Renamed from
`org-export-prepare-file-contents'.
* contrib/lisp/org-e-publish.el (org-e-publish-find-date): Use new
  names.
* testing/lisp/test-org-export.el: Update tests.
2012-07-24 22:52:29 +02:00
Jambunathan K e0f59dfb05 (org-e-html-footnote-separator): Remove duplicate `
Also re-arrange defcustoms in alphabetical order.
2012-07-25 00:24:07 +05:30
Nicolas Goaziou b0f2e083b7 org-export: Update docstrings 2012-07-23 19:32:57 +02:00
Nicolas Goaziou 2b21bb4e52 export back-ends: Remove unused translators functions 2012-07-23 17:53:55 +02:00
Nicolas Goaziou a13a51e812 org-export: Add :export-block keyword to `org-export-define-derived-backend'
* contrib/lisp/org-export.el (org-export-define-derived-backend):
  Add :export-block keyword.  Also fix a generated doc-string.
* contrib/lisp/org-e-beamer.el: Use new keyword.
2012-07-23 14:19:51 +02:00
Nicolas Goaziou 6ea9d8c827 org-export: `org-export-define-backend': the standard way to create a back-end
* contrib/lisp/org-export.el (org-export-define-backend): New macro.
* contrib/lisp/org-e-ascii.el: Use new macro.
* contrib/lisp/org-e-html.el: Use new macro.
* contrib/lisp/org-e-latex.el: Use new macro.
* contrib/lisp/org-e-odt.el: Use new macro.
* contrib/lisp/org-element.el (org-element-block-name-alist): Remove
  hard-coded export block names from variable, since they are added
  automatically by `org-export-define-backend'.
* testing/lisp/test-org-element.el: Update test.
2012-07-23 14:12:14 +02:00
Nicolas Goaziou 9a2e479b32 org-e-beamer: Fix docstring typo 2012-07-23 09:51:55 +02:00
Nicolas Goaziou 611075db0b org-e-html: Remove an useless argument
* contrib/lisp/org-e-html.el (org-e-html-export-as-html): Remove
  PUB-DIR, which doesn't make sense in that function.
* contrib/lisp/org-export.el: Apply change in function declaration.
2012-07-23 09:51:45 +02:00
Nicolas Goaziou 3a633732b7 org-e-ascii: Fix typo
* contrib/lisp/org-e-ascii.el (org-e-ascii-horizontal-rule): Fix typo.
2012-07-23 09:43:29 +02:00
Nicolas Goaziou c92913b5f9 org-e-latex: Allow multiple objects and spaces in sub/superscript
* contrib/lisp/org-e-latex.el (org-e-latex-subscript,
  org-e-latex-superscript): Allow multiple objects and spaces in
  sub/superscript.
2012-07-22 13:55:10 +02:00
Nicolas Goaziou 1b64d9582e org-export: Add optional argument to `org-export-read-attribute'
* contrib/lisp/org-export.el (org-export-read-attribute): Add optional
  argument to `org-export-read-attribute'.
* contrib/lisp/org-e-ascii.el (org-e-ascii-horizontal-rule): Use
  additional argument.
2012-07-21 15:12:08 +02:00
Nicolas Goaziou 86ff4cde98 org-export: Silence byte-compiler 2012-07-20 19:37:22 +02:00
Nicolas Goaziou eed478ffaa org-e-beamer: Small docstring changes
* contrib/lisp/org-e-beamer.el (org-e-beamer-export-as-latex,
  org-e-beamer-export-to-pdf): Small docstring changes.
2012-07-20 13:48:19 +02:00
Nicolas Goaziou 8478fac4a5 Add autoload and a commands to export to temporary buffer in export back-ends
* contrib/lisp/org-e-ascii.el (org-e-ascii-export-as-ascii): New
  function.
(org-e-ascii-export-to-ascii): Now autoloaded.
* contrib/lisp/org-e-latex.el (org-e-latex-export-as-latex): New
  function.
(org-e-latex-export-to-pdf): Now autoloaded.
(org-e-latex--collect-errors): Renamed from
`org-e-latex-collect-errors'.
(org-e-latex-compile): Apply renaming.
* contrib/lisp/org-e-html.el (org-e-html-export-as-html): New
  function.
(org-e-html-export-to-html): Fix docstring.
* contrib/lisp/org-export.el (org-export-dispatch): Use new functions.
2012-07-20 13:48:05 +02:00
Jambunathan K 99ef5728a2 org-e-odt.el: Fix more compilation errors 2012-07-19 23:15:44 +05:30
Jambunathan K dc92a8dbff org-e-odt.el: Fix all compilation errors
Rearrange and rename for greater consistency and clarity.  More cleanups
will follow.
2012-07-19 22:15:30 +05:30
Nicolas Goaziou 070e03011d org-element: Rename a few internal functions
* contrib/lisp/org-element.el (org-element--parse-elements): Renamed
  from `org-element-parse-elements'.
(org-element--parse-objects): Renamed from `org-element-parse-objects'.
(org-element--get-next-object-candidates): Renamed from
`org-element-get-next-object-candidates'.
(org-element--interpret-affiliated-keywords): Renamed from
`org-element-interpret--affiliated-keywords'.
(org-element--current-element): Renamed from
`org-element-current-element'.
(org-element--collect-affiliated-keywords): Renamed from
`org-element-collect-affiliated-keywords'.
(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-plain-list-parser, org-element-quote-block-parser,
org-element-special-block-parser, org-element-comment-parser,
org-element-comment-block-parser, org-element-example-block-parser,
org-element-export-block-parser, org-element-fixed-width-parser,
org-element-horizontal-rule-parser,
org-element-latex-environment-parser, org-element-paragraph-parser,
org-element-src-block-parser, org-element-table-parser,
org-element-verse-block-parser, org-element-fill-paragraph,
org-element-context, org-element-at-point, org-element-interpret-data,
org-element-parse-secondary-string, org-element-parse-buffer): Apply
name change.
* contrib/lisp/org-export.el (org-export-get-buffer-attributes): Apply
  name change.
* testing/lisp/test-org-element.el: Update tests accordingly.
* testing/lisp/test-org-export.el: Update tests accordingly.
2012-07-19 11:23:43 +02:00
Nicolas Goaziou ea7b5a327f org-e-ascii: Fix link description in empty section
* contrib/lisp/org-e-ascii.el (org-e-ascii-headline): Fix link
  description in empty section.
2012-07-18 19:24:11 +02:00
Nicolas Goaziou 17b865ddd0 org-element: Fix first section parsing
* contrib/lisp/org-element.el (org-element-current-element): Use a new
  special mode symbol to treat section before first headline
  differently.  In this case, its boundaries must be computed since it
  has not been limited by headline container.
(org-element-parse-elements): Use new special mode symbol.
2012-07-18 19:17:12 +02:00
Nicolas Goaziou 8bf8cf8223 org-element: Allow links and export snippets in descriptions lists items tag
* contrib/lisp/org-element.el (org-element-object-restrictions): Allow
  links and export snippets in descriptions lists items tag.
2012-07-18 18:23:26 +02:00
Nicolas Goaziou d80661e764 org-e-latex: Don't use mathrm in sub/superscripts with a single LaTeX command or entity
* contrib/lisp/org-e-latex.el (org-e-latex-subscript,
  org-e-latex-superscript): Don't use mathrm in sub/superscripts with
  a single LaTeX command or entity.
2012-07-18 17:02:08 +02:00
Nicolas Goaziou 3e76a25f7c org-element: Fix inlinetask parsing
* contrib/lisp/org-element.el (org-element-inlinetask-parser): Fix
  inlinetask parsing.
2012-07-18 11:24:40 +02:00
Nicolas Goaziou 66767db56c org-export: Replace member with memq when possible
* contrib/lisp/org-element.el (org-element-set-element): Replace
  member with memq.
* contrib/lisp/org-export.el (org-export-get-min-level,
  org-export--skip-p, org-export-data, org-export-table-cell-width,
  org-export-table-cell-alignment): Replace member with memq.
2012-07-17 20:49:31 +02:00
Nicolas Goaziou 8a9429f9c3 org-element: Fix timestamp interpreter
* contrib/lisp/org-element.el (org-element-timestamp-interpreter): Fix
  timestamp interpreter.
2012-07-17 20:47:01 +02:00
Nicolas Goaziou 528b17ea15 org-export: Adapt back-ends to timestamp object change
* contrib/lisp/org-e-ascii.el (org-e-ascii-timestamp): Use :range-end
  property when applicable.
* contrib/lisp/org-e-html.el (org-e-html-timestamp): Use :range-end
  property when applicable.
* contrib/lisp/org-e-latex.el (org-e-latex-timestamp): Use :range-end
  property when applicable.
* contrib/lisp/org-e-odt.el (org-e-odt-timestamp): Use :range-end
  property when applicable.
2012-07-17 17:03:29 +02:00
Nicolas Goaziou a1634b4489 org-element: Store parsed timestamps without the bracket markers
* contrib/lisp/org-element.el (org-element-planning-parser): Store
  parsed timestamps without the bracket markers.
(org-element-timestamp-interpreter): Store parsed timestamps without
  the bracket markers.  Also provide a new property: `:range-end'.
(org-element-planning-interpreter, org-element-timestamp-interpreter):
Apply changes to parsers.
* testing/lisp/test-org-element.el: Add test.
2012-07-17 16:51:19 +02:00
Nicolas Goaziou e4a300d90d org-element: Fix error when parsing a line-break
* contrib/lisp/org-element.el (org-element-line-break-parser)
(org-element-line-break-interpreter): Line-break object ends where the
line ends.  It doesn't contain the next newline character.
(org-element-parse-objects): Refactoring.
2012-07-17 11:53:41 +02:00
Nicolas Goaziou 69af0913b2 org-element: Normalize contents of elements in place
* contrib/lisp/org-element.el (org-element-normalize-contents):
  Normalize contents of elements in place.  This is required to be
  sure that a normalized element still is `eq' to its equivalent in
  the parse tree.
2012-07-17 00:46:08 +02:00
Nicolas Goaziou 4cf88ac31d org-e-ascii: Fix export of tables with a special column or a top-left corner
* contrib/lisp/org-e-ascii.el (org-e-ascii--table-cell-width,
  org-e-ascii-table-row): Fix export of tables with a special column
  or a top-left angle.
2012-07-16 22:53:53 +02:00
Nicolas Goaziou 5dbd1386f3 org-e-ascii: Comment fix 2012-07-16 18:17:56 +02:00
Nicolas Goaziou 95cd07d058 org-export: Use `eq' instead of `equal' when possible
* contrib/lisp/org-export.el (org-export-data,
  org-export-footnote-first-reference-p,
  org-export-get-footnote-number, org-export-get-ordinal,
  org-export-get-loc, org-export-table-row-group,
  org-export-table-cell-starts-colgroup-p,
  org-export-table-cell-ends-colgroup-p,
  org-export-table-cell-address): Use `eq' instead of `equal' when
  possible.
* contrib/lisp/org-e-ascii.el (org-e-ascii-table-row):
* contrib/lisp/org-e-beamer.el (org-e-beamer-select-environment):
* contrib/lisp/org-e-html.el (org-e-html-footnote-section,
  org-e-html-latex-environment, org-e-html-paragraph): Use `eq'
  instead of `equal' when possible.
* contrib/lisp/org-e-latex.el (org-e-latex--get-footnote-counter):
* contrib/lisp/org-e-odt.el (org-e-odt-do-format-code,
  org-e-odt-footnote-def, org-e-odt-item, org-e-odt-latex-environment,
  org-e-odt-latex-fragment, org-e-odt-plain-list, org-e-odt-table,
  org-e-odt-enumerate-element): Use `eq' instead of `equal' when
  possible.

In particular, comparing elements shouldn't be done with `equal' since
they are circular lists.  On the other hand, using `eq' is fine if
they belong to the same tree.
2012-07-16 16:28:06 +02:00
Jambunathan K 4a53af87de org-e-odt.el: Fix previous commit 2012-07-16 03:43:01 +05:30
Jambunathan K 4aec2e6937 org-e-odt.el: Refactor and rearrange 2012-07-16 03:38:07 +05:30
Nicolas Goaziou 5a3617c6be org-export: Allow anonymous functions in translate alists
* contrib/lisp/org-export.el (org-export-transcoder, org-export-data):
  Allow anonymous functions in translate alists.
* testing/lisp/test-org-export.el: Update tests.
2012-07-15 21:29:38 +02:00
Nicolas Goaziou a605067181 org-element: Silence byte-compiler 2012-07-15 14:35:04 +02:00
Nicolas Goaziou e6a88820bf org-export: Fix a docstring
* contrib/lisp/org-export.el (org-export-translate): Fix docstring.
2012-07-15 12:39:44 +02:00
Nicolas Goaziou b6edf5649c org-element: Inline accessors
* contrib/lisp/org-element.el (org-element-type, org-element-property,
  org-element-contents, org-element-restriction): Inline functions.
2012-07-15 12:27:54 +02:00
Nicolas Goaziou ebad68a059 org-export: Fix table test failure
* contrib/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-headline-parser,
  org-element-inlinetask-parser, org-element-item-parser,
  org-element-plain-list-parser, org-element-quote-block-parser,
  org-element-section-parser, org-element-special-block-parser,
  org-element-babel-call-parser, org-element-clock-parser,
  org-element-comment-parser, org-element-comment-block-parser,
  org-element-example-block-parser, org-element-export-block-parser,
  org-element-fixed-width-parser, org-element-horizontal-rule-parser,
  org-element-keyword-parser, org-element-latex-environment-parser,
  org-element-paragraph-parser, org-element-planning-parser,
  org-element-property-drawer-parser,
  org-element-quote-section-parser, org-element-src-block-parser,
  org-element-table-parser, org-element-table-row-parser,
  org-element-verse-block-parser, org-element-bold-parser,
  org-element-code-parser, org-element-entity-parser,
  org-element-export-snippet-parser,
  org-element-footnote-reference-parser,
  org-element-inline-babel-call-parser,
  org-element-inline-src-block-parser, org-element-italic-parser,
  org-element-latex-fragment-parser, org-element-line-break-parser,
  org-element-link-parser, org-element-macro-parser,
  org-element-radio-target-parser,
  org-element-statistics-cookie-parser,
  org-element-strike-through-parser, org-element-subscript-parser,
  org-element-superscript-parser, org-element-table-cell-parser,
  org-element-target-parser, org-element-timestamp-parser,
  org-element-underline-parser, org-element-verbatim-parser): Use
  `list' instead of backquotes to avoid using a quoted constant list
  as a non-last argument to `nconc'.
2012-07-15 12:25:09 +02:00
Nicolas Goaziou ceaeb33629 org-element: Handle special cases in setter functions
* contrib/lisp/org-element.el (org-element-put-property,
  org-element-set-contents): Handle special cases like empty or string
  arguments.
(org-element-parse-secondary-string): Correctly set `:parent' property
in objects within the secondary string if element or object containing
it is provided as an optional argument.
(org-element-parse-elements, org-element-parse-objects): Rewrite
functions using setter functions.
2012-07-15 12:25:09 +02:00
Jambunathan K f0d5d935ce org-e-odt.el: Introduced `org-e-odt--export-wrap'
- Clean up work directory and buffers on error.
- Don't use `org-current-export-file'.
- Handle file paths robustly i.e., don't rely on `default-directory'.
- Remove stale code.
2012-07-14 18:21:31 +05:30
Nicolas Goaziou 373cb5a37e org-export: Silence byte-compiler 2012-07-14 12:05:20 +02:00
Jambunathan K 90a20261f1 org-e-html.el: Use `org-export-dictionary'
Don't use `org-export-language-setup'.  Lots of miscellaneous cleanups to
enable clean compilation.
2012-07-13 03:26:13 +05:30
Jambunathan K 22a6d99d5a org-export: Re-arrange entries in `org-export-dictionary'
* contrib/lisp/org-export.el (org-export-dictionary):
Re-arrange entries in ascending order.
2012-07-13 03:25:41 +05:30
Jambunathan K 936ff0703b org-export: Update org-export-dictionary
* contrib/lisp/org-export.el (org-export-dictionary): Add
follwing new entires - "Author", "Date", "Equation" and
"Figure".
2012-07-13 03:25:29 +05:30
Nicolas Goaziou 1216df61cc org-export: Implement multi-backend dictionary
* contrib/lisp/org-export.el (org-export-translate): New function.
(org-export-dictionary): New variable.
* contrib/lisp/org-e-ascii.el (org-e-ascii--build-toc,
  org-e-ascii--list-listings, org-e-ascii--list-tables,
  org-e-ascii-template, org-e-ascii--translate): Use new translation
  system.
(org-e-ascii-dictionary): Remove variable.
2012-07-12 13:31:06 +02:00
Nicolas Goaziou c75120aa71 org-element: Refactoring 2012-07-11 14:17:02 +02:00
Nicolas Goaziou d5f5c77fcd org-export: Small refactoring
* contrib/lisp/org-export.el (org-export-get-previous-element,
  org-export-get-next-element): Small refactoring.
* testing/lisp/test-org-export.el: Add tests.
2012-07-10 19:22:04 +02:00
Nicolas Goaziou bb9a26389c org-element: Rename `org-export-set-element' into `org-element-set-element'
* contrib/lisp/org-element.el (org-element-set-element): New function.
* contrib/lisp/org-export.el (org-export-set-element): Removed function.
* testing/lisp/test-org-element.el: Add test.
* testing/lisp/test-org-export.el: Remove test.
2012-07-10 17:29:13 +02:00
Nicolas Goaziou d9f975cf7b org-element: Add setters to modify parse tree
* contrib/lisp/org-element.el (org-element-put-property,
  org-element-set-contents, org-element-adopt-element): New
  functions.
* testing/lisp/test-org-element.el: Add tests.
2012-07-10 17:23:33 +02:00
Nicolas Goaziou 9028c4655f org-export: Improve a docstring
* contrib/lisp/org-export.el (org-export-get-genealogy): Improve
  docstring.
2012-07-10 15:30:51 +02:00
Nicolas Goaziou 0bbc9fa075 org-export: Accept nil :post-blank property
* contrib/lisp/org-export.el (org-export-data): Nil :post-blank
  property is equivalent to a value of 0.
2012-07-09 22:48:00 +02:00
Jambunathan K 0e9ec97ed4 org-e-odt.el: Don't rely on buffer positions
They may not be available when element translation is in effect.
2012-07-08 23:28:16 +05:30
Jambunathan K b7be665ef3 org-e-html.el: Introduced `org-e-html-allow-name-attribute-in-anchors'
Apparently helps with creating epub formats.  See
http://lists.gnu.org/archive/html/emacs-orgmode/2011-12/msg00391.html
2012-07-08 00:50:47 +05:30
Jambunathan K c83e251ae0 org-e-html.el: Handle headlines with ID 2012-07-07 19:24:53 +05:30
Jambunathan K 14b093275f org-e-html/org-e-odt: Handle links to headlines created with C-c C-l 2012-07-07 15:10:42 +05:30
Nicolas Goaziou 69540aba51 org-e-beamer: Fix defgroup 2012-07-07 00:51:02 +02:00
Nicolas Goaziou 3a70c90667 org-element: Implement a function to find object at point
* contrib/lisp/org-element.el (org-element-context): New function.
* testing/lisp/test-org-element.el: Add tests.
2012-07-07 00:49:13 +02:00
Bastien Guerry 9731a8b681 Fix `org-export-creator-string' and add the option `org-e-html-creator-string'.
* org-e-html.el (org-e-html-creator-string): New option.
(org-e-html-options-alist): Use it.

* org-export.el (org-export-creator-string): Don't use HTML
tags in the generic creator string.

Thanks to Nicolas for directions on what to change wrt this.
2012-07-06 09:09:31 +02:00
Nicolas Goaziou b5eccf94df org-export: Fix docstrings 2012-07-05 23:42:09 +02:00
Bastien Guerry ec5cc394b4 org-export.el (org-export-filters-alist): Fix typo in docstring.
* org-export.el (org-export-filters-alist): Fix typo in docstring.
2012-07-05 18:06:14 +02:00
Bastien Guerry 820803ab95 Add links to Org mode and GNU Emacs websites in creator strings.
* org-html.el (org-export-as-html): Add links to the Org mode
and GNU Emacs websites When :html-postamble is set to 't.

* org-export.el (org-export-creator-string): Add links to the
Org mode and GNU Emacs websites.
2012-07-05 16:02:06 +02:00
Nicolas Goaziou 73951db845 org-export: Add a subtree property for each export option
* contrib/lisp/org-export.el (org-export-get-subtree-options): Add
  a subtree property for each export option.
* testing/lisp/test-org-export.el: Add tests.

Properties names are obtained by adding "EXPORT_" prefix to buffer
keywords.
2012-07-05 13:44:26 +02:00
Nicolas Goaziou e2cd9c398d org-export: Modify exclude tags and select tags keywords
* contrib/lisp/org-export.el (org-export-options-alist):
  EXPORT_EXCLUDE_TAGS (resp. EXPORT_SELECT_TAGS) becomes
  EXCLUDE_TAGS (resp. SELECT_TAGS).

EXPORT_ prefix is required for subtree properties relative to export.
Thus, this change avoids confusion.
2012-07-04 18:38:48 +02:00
Nicolas Goaziou c96431a2ea org-export: Small clean-up
* contrib/lisp/org-export.el (org-export-get-subtree-options): Small
  clean-up.
2012-07-04 18:00:31 +02:00
Nicolas Goaziou a69f4b88c1 org-export: Fix byte-compilation
* contrib/lisp/org-export.el (org-export-with-current-buffer-copy):
  Fix byte-compilation.
2012-07-02 11:56:17 +02:00
Nicolas Goaziou 0b89d5bcc6 org-export: Silence byte-compiler 2012-07-02 11:22:22 +02:00
Nicolas Goaziou fd52a24160 org-e-beamer: Fix customize group and a variable name 2012-07-01 21:58:24 +02:00
Nicolas Goaziou dab2505fb5 org-e-latex: Clean-up beamer parts in template
* contrib/lisp/org-e-latex.el (org-e-latex-template): Clean-up beamer
  parts in template.
2012-06-30 16:31:20 +02:00
Nicolas Goaziou e698ead540 Implement a Beamer back-end for org-export
* contrib/lisp/org-e-beamer.el: New file.
2012-06-30 16:31:19 +02:00
Nicolas Goaziou 475fac147b org-element: Every keyword starting with ATTR_ is an affiliated keyword
* contrib/lisp/org-element.el (org-element-affiliated-keywords):
  Remove attributes keywords from the list since they are, de facto,
  affiliated keywords.
(org-element-multiple-keywords): Remove "attr" keywords from the list
since they always belong to that list.
(org-element--affiliated-re, org-element-collect-affiliated-keywords,
org-element-interpret--affiliated-keywords): Handle special attr
keywords correctly.
2012-06-30 13:49:46 +02:00
Nicolas Goaziou ab82a9dcfe Update tests and comments for new snippet syntax
* contrib/lisp/org-export.el (org-export-snippet-translation-alist):
  Fix docstring.
(org-export-as): Fix code comment.
* testing/lisp/test-org-element.el: Update tests.
* testing/lisp/test-org-export.el: Update tests.
2012-06-30 10:01:28 +02:00
Nicolas Goaziou 2e38ed36cb org-element: New syntax for export snippets
* contrib/lisp/org-element.el (org-element-export-snippet-parser,
  org-element-export-snippet-interpreter,
  org-element-export-snippet-successor): Use "@@backend:contents@@"
  syntax.
2012-06-30 09:05:24 +02:00
Nicolas Goaziou cf8d979d8c org-element: Fix `org-element-map' when type looked after is plain text
* contrib/lisp/org-element.el (org-element-map): Fix `org-element-map'
  when type looked after is plain text.
2012-06-25 15:45:56 +02:00
Nicolas Goaziou 802fc6581d org-e-latex: Fix footnotes in item tags
* contrib/lisp/org-e-latex.el (org-e-latex--get-footnote-counter): New
  function.
(org-e-latex-footnote-reference): Use new function.
2012-06-23 10:50:24 +02:00
Nicolas Goaziou 9696250e53 org-element: Small refactoring
* contrib/lisp/org-element.el (org-element-map): Remove use of `every'
  function.
2012-06-22 15:30:13 +02:00
Nicolas Goaziou bafe0fb295 org-export: Fix bug with default DATE value
* contrib/lisp/org-export.el (org-export-get-global-options): Parse
  default value from parsed keywords, too.
* testing/lisp/test-org-export.el: Change test accordingly.
2012-06-22 15:07:07 +02:00
Nicolas Goaziou 62453c5bf4 Export backends: Interpret correctly DATE keyword
* contrib/lisp/org-e-ascii.el (org-e-ascii-template--document-title):
  Interpret correctly DATE keyword.
* contrib/lisp/org-e-html.el (org-e-html-format-date): Interpret
  correctly DATE keyword.
* contrib/lisp/org-e-latex.el (org-e-latex-template): Interpret
  correctly DATE keyword.
* contrib/lisp/org-e-odt.el (org-e-odt-format-preamble,
  org-e-odt-update-meta-file): Interpret correctly DATE keyword.
2012-06-20 12:33:23 +02:00
Nicolas Goaziou 500567fab3 org-element: Parse contents of DATE keyword
* contrib/lisp/org-element.el (org-element-parsed-keywords): Parse
  contents of DATE keyword.
2012-06-20 12:32:12 +02:00
Nicolas Goaziou fca0169147 org-e-latex: Allow previously definied footnotes in item tag
* contrib/lisp/org-e-latex.el (org-e-latex-footnote-reference): Allow
  previously definied footnotes in item tag.
2012-06-18 18:38:08 +02:00
Nicolas Goaziou e8aafa3337 org-e-latex: Refactor code
* contrib/lisp/org-e-latex.el (org-e-latex--delayed-footnotes-definitions):
  New function.
(org-e-latex-footnote-reference, org-e-latex-item): Use new function.
2012-06-18 14:28:47 +02:00
Nicolas Goaziou add8d28ba2 org-e-latex: Support for footnote references in an item tag 2012-06-18 12:39:17 +02:00
Nicolas Goaziou b2c413ecf6 org-element: Allow footnote references in an item tag
* contrib/lisp/org-element.el (org-element-object-restrictions): Allow
  footnote references in an item tag.
2012-06-18 12:01:40 +02:00
Nicolas Goaziou 2900138774 org-export: Fix error when calling "l" from dispatcher
* contrib/lisp/org-export.el (org-export-dispatch): Fix error when
  calling "l" from dispatcher.
2012-06-18 11:49:12 +02:00
Nicolas Goaziou a69e6b6225 org-e-latex: Make headlines more robust in toc
* contrib/lisp/org-e-latex.el (org-e-latex-headline): Allow curly
  brackets and replace square brackets with parenthesis in table of
  contents when tags are removed.
2012-06-18 11:42:22 +02:00
Nicolas Goaziou 769fa4f7ab org-e-latex: Follow `not-in-toc' specification for tags
* contrib/lisp/org-e-latex.el (org-e-latex-headline): Follow
  `not-in-toc' specification for tags.
2012-06-18 10:39:51 +02:00
Nicolas Goaziou 04ad4ab417 org-export: Follow EXPORT_TITLE property when exporting subtree
* contrib/lisp/org-export.el (org-export-get-subtree-options): Make
  sure point is at an headline and buffer isn't narrowed before
  looking for EXPORT_TITLE property.
* testing/lisp/test-org-export.el: Add test.
2012-06-18 01:34:57 +02:00
Jambunathan K a975751527 org-e-odt.el: Use `org-export-read-attribute' 2012-06-17 14:31:04 +05:30
Nicolas Goaziou 8840cd6ddc org-e-latex: Babel language set through LANGUAGE keyword is loaded last
* contrib/lisp/org-e-latex.el (org-e-latex--guess-babel-language):
  Make sure Babel language set through LANGUAGE keyword is loaded
  last.
2012-06-15 17:19:26 +02:00
Nicolas Goaziou 393f2f5ae8 org-e-latex: Set Babel language according to LANGUAGE keyword
* contrib/lisp/org-e-latex.el (org-e-latex-babel-language-alist): New
  variable.
(org-e-latex--guess-babel-language): New function.
(org-e-latex-template): Set babel language according to LANGUAGE keyword.
2012-06-15 12:07:21 +02:00
Nicolas Goaziou a2fd96a3de org-export: Fix code comments 2012-06-12 17:31:48 +02:00
Nicolas Goaziou f2bfa3a6b2 org-element: Fix item interpreter when item doesn't start with a paragraph
* contrib/lisp/org-element.el (org-element-item-interpreter): Fix item
  interpreter when item doesn't start with a paragraph.
* testing/lisp/test-org-element.el: Add test.
2012-06-12 14:29:53 +02:00
Nicolas Goaziou eb69035d5e org-export: Fix template for derived back-ends
* contrib/lisp/org-export.el (org-export-as): Fix template for derived
  back-ends.
2012-06-12 13:48:19 +02:00
Nicolas Goaziou 68a595ce9d org-export: Add `org-export-read-attribute' for normalized attr lines
* contrib/lisp/org-export.el (org-export-read-attribute): New function.
* testing/lisp/test-org-export.el: Add test.
2012-06-12 10:25:00 +02:00
Nicolas Goaziou 168c83e6d4 org-export: Correctly export check-boxes in description lists
* contrib/lisp/org-e-ascii.el (org-e-ascii--current-text-width): Pay
  attention to length of check-box, if any when computing text width.
(org-e-ascii--checkbox): New function.
(org-e-ascii-item): Allow check-boxes in description lists.
(org-e-ascii-paragraph): Refactor code.
* contrib/lisp/org-e-html.el (org-e-html-format-list-item): Allow
  check-boxes in description lists.
* contrib/lisp/org-e-latex.el (org-e-latex-item): Allow check-boxes in
  description lists.
* contrib/lisp/org-e-odt.el (org-e-odt--checkbox): New function.
(org-e-odt-item): Allow check-boxes in description lists.
(org-e-odt-paragraph): Do not add checkbox in front of paragraph if it
belongs to a description item, since the box will be attached to the
tag.
2012-06-09 15:34:27 +02:00
Nicolas Goaziou c88599424c org-e-html: Remove spurious newline characters
* contrib/lisp/org-e-html.el (org-e-html-example-block,
  org-e-html-fixed-width, org-e-html-horizontal-rule,
  org-e-html-inlinetask, org-e-html-paragraph, org-e-html-src-block,
  org-e-html-table-row): Remove spurious newline characters.
2012-06-09 13:24:17 +02:00
Nicolas Goaziou f56e862b1e org-export: Change signatures of first-sibling-p and last-sibling-p
* contrib/lisp/org-export.el (org-export-first-sibling-p,
  org-export-last-sibling-p): Remove communication channel from
  signature.
* contrib/lisp/org-e-html.el (org-e-html-headline): Apply signature
  changes.
* contrib/lisp/org-e-latex.el (org-e-latex-headline): Apply signature
  changes.
* contrib/lisp/org-e-odt.el (org-e-odt-headline): Change code
  comments.
2012-06-09 11:34:16 +02:00
Nicolas Goaziou 4dee3eb952 org-export: Update code comments 2012-06-09 10:31:46 +02:00
Nicolas Goaziou e23f506d98 org-export: Add function to change elements in parse tree
* contrib/lisp/org-export.el (org-export-get-buffer-attributes):
  Ensure initial accumulator in non-nil.
(org-export-set-element): New function.
* testing/lisp/test-org-export.el: Add test.
2012-06-09 00:17:40 +02:00
Nicolas Goaziou 03739dd512 org-export: Fix code typo
* contrib/lisp/org-export.el (org-export-get-ordinal): Fix code typo.
2012-06-09 00:17:40 +02:00
Nicolas Goaziou 4728a4611e org-export: Rewrite topology functions
* contrib/lisp/org-export.el (org-export-get-genealogy,
  org-export-get-parent, org-export-get-parent-headline,
  org-export-get-parent-table): Rewrite function to use :parent
  property.  Remove communication channel from signature.
(org-export-get-parent-element): Rename from
`org-export-get-parent-paragraph'.
(org-export-data, org-export-table-row-is-special-p)
org-export-table-row-group, org-export-table-cell-starts-colgroup-p,
org-export-table-cell-ends-colgroup-p,
org-export-table-row-starts-header-p,
org-export-table-row-ends-header-p, org-export-table-cell-address,
org-export-first-sibling-p, org-export-last-sibling-p,
org-export-resolve-fuzzy-link, org-export-get-ordinal): Apply
signature change.
(org-export--skip-p, org-export-table-cell-width,
org-export-table-cell-alignment, org-export-table-cell-borders):
Refactor code.  Apply signature change.
* contrib/lisp/org-e-ascii.el (org-e-ascii--current-text-width,
  org-e-ascii--unique-links, org-e-ascii-inlinetask,
  org-e-ascii-item, org-e-ascii-paragraph, org-e-ascii-quote-section,
  org-e-ascii-section, org-e-ascii--table-cell-width): Apply signature
  change.
* contrib/lisp/org-e-html.el (org-e-html-link,
  org-e-html-link--inline-image): Use new function and apply signature
  change.
(org-e-html-item, org-e-html-standalone-image-p, org-e-html-paragraph,
org-e-html-section, org-e-html-table-cell, org-e-html-table-row,
org-e-html-footnote-reference): Apply signature change.
* contrib/lisp/org-e-latex.el (org-e-latex-link--inline-image): Use
  new function and apply signature change.
(org-e-latex-footnote-reference, org-e-latex-item,
org-e-latex-table-cell, org-e-latex-table-row): Apply signature
change.
* contrib/lisp/org-e-odt.el (org-e-odt-format-formula,
  org-e-odt-format-label, org-e-odt-link--inline-image): Use new
  function and apply signature change.
(org-e-odt-item, org-e-odt-standalone-image-p, org-e-odt-paragraph,
org-e-odt-plain-list, org-e-odt-table-style-spec,
org-e-odt-get-table-cell-styles, org-e-odt-table-cell,
org-e-odt-table-row, org-e-odt-table, org-e-odt-footnote-reference,
org-e-odt-enumerate-element): Apply signature change.
2012-06-09 00:17:30 +02:00
Nicolas Goaziou af285d6c8c org-element: Add `:parent' property to elements/objects in parse tree
* contrib/lisp/org-element.el (org-element-parse-buffer): Correctly
  set original parent.
(org-element-parse-elements, org-element-parse-objects): Set `:parent'
property of each element/object.
* testing/lisp/test-org-element.el: Add tests.
2012-06-08 23:29:21 +02:00
Nicolas Goaziou 3f0f8734ff org-export: Suppress some byte-compiling warnings 2012-06-08 16:12:47 +02:00
Nicolas Goaziou a147dc3150 org-e-html: Links inherit attributes from their paragraph container
* contrib/lisp/org-e-html.el (org-e-html-link): Add attributes from
  paragraph container.
2012-06-08 15:25:29 +02:00
Nicolas Goaziou 451191bc41 org-export: Correctly resolve fuzzy links whose path starts with *
* contrib/lisp/org-export.el (org-export-resolve-fuzzy-link):
  Correctly resolve fuzzy links whose path starts with *
* testing/lisp/test-org-export.el: Add tests.
2012-06-07 00:06:19 +02:00
Nicolas Goaziou ad235400a6 org-export: Support for external id links
* contrib/lisp/org-export.el (org-export-get-buffer-attributes):
  Retrieve footnote definitions and id in buffer.
(org-export-store-footnote-definitions): Removed function.
(org-export-collect-tree-properties): Update docstring.
(org-export-as): Do not call `org-export-store-footnote-definitions'.
(org-export-resolve-id-link): Return external file name when there's
no match for id in current parse tree.
* contrib/lisp/org-e-latex.el (org-e-latex-link): Handle external id
  links.
* testing/lisp/test-org-export.el: Add tests.
2012-06-06 23:39:04 +02:00
Jambunathan K 03fbf6b161 org-e-odt.el: Support for indented tables (first cut) 2012-06-05 19:34:20 +05:30
Jambunathan K 1dc00c5ddb org-e-odt.el: Handle checkboxes
Cleanup lists: Preparing for indented tables (Take 2)
Disable listification of deep headings
2012-06-04 03:59:49 +05:30
Jambunathan K fe2e2f1550 org-e-html.el: Remove org-element and org-export related declarations 2012-06-03 18:44:09 +05:30
Jambunathan K 066afd05ad org-e-odt.el: Remove org-element and org-export related declarations 2012-06-03 18:24:52 +05:30
Jambunathan K 160c7ee356 Preparing for typesetting of indented tables 2012-06-03 18:07:21 +05:30
Jambunathan K ec368e844d org-e-odt: Remove dependency on `org-e-html-encode-plain-text' 2012-06-03 02:59:35 +05:30
Jambunathan K ca6f523ff5 org-e-html: Honor `org-e-html-link-org-files-as-html' 2012-06-02 20:25:41 +05:30
Jambunathan K 1d7e78ebf8 org-e-odt: Turn off `org-e-odt-prettify-xml' 2012-06-02 19:42:26 +05:30
Jambunathan K d728c17004 org-e-html.el: Properly render relative file URLs 2012-06-02 17:07:56 +05:30
Jambunathan K 2d71a58ef3 org-e-html: Use <a>...</a> instead of <a/> 2012-06-02 15:37:10 +05:30
Jambunathan K 02f3ee40f3 org-e-html: Fix misc. bugs 2012-06-02 05:34:20 +05:30
Jambunathan K 984748641b org-e-html: Don't use default href for headlines linked via customid.
If headline is linked via customid in Org file, use customid in HTML
export as well.  Additionally, while linking to headline from within a
TOC section, use customid preferentially in HTML export.
2012-06-02 05:12:00 +05:30
Jambunathan K 40e710bbd5 org-e-odt: Add require + autoload cookie 2012-06-02 01:13:47 +05:30
Nicolas Goaziou c1ba122a57 org-e-html: Remove spurious newline character before paragraphs
* contrib/lisp/org-e-html.el (org-e-html-paragraph): Remove spurious
  newline character before paragraphs.
2012-06-01 18:25:15 +02:00
Jambunathan K 72bb8dc691 org-e-html.el: Honor CUSTOM_IDs in outline headings 2012-05-31 02:56:59 +05:30
Jambunathan K 11ef636f55 org-e-html.el: Fix XML declaration.
Also add autoload cookie and a require.
2012-05-31 00:00:56 +05:30
Nicolas Goaziou 4aa8693c2c org-export: Remove paths from requires
* contrib/lisp/org-export.el: Remove paths from requires.
2012-05-28 15:49:07 +02:00
Nicolas Goaziou 4b0121fc2a org-export: Move requires into dispatcher
* contrib/lisp/org-export.el (org-export-dispatch): Move requires into
  dispatcher.

This is a temporary change, until interactive functions in back-ends
can be properly autoloaded.
2012-05-28 09:34:23 +02:00
Jambunathan K 540dfce8fe org-e-html.el: Handle #+STYLE, #+LINK_UP, #+LINK_HOME 2012-05-27 17:44:12 +05:30
Jambunathan K c554052def org-e-odt.el: Introduce :header-columns as a new table attribute 2012-05-26 23:50:38 +05:30
Nicolas Goaziou 09164e5c72 org-export: Hide select tags
* contrib/lisp/org-export.el (org-export-get-tags): New function.
* contrib/lisp/org-e-ascii.el (org-e-ascii--build-title): Use new function.
* contrib/lisp/org-e-html.el (org-e-html-format-headline--wrap,
  org-e-html-headline): Use new function.
* contrib/lisp/org-e-latex.el (org-e-latex-headline,
  org-e-latex-inlinetask): Use new function.
* contrib/lisp/org-e-odt.el (org-e-odt-format-headline--wrap): Use new
  function.
* testing/lisp/test-org-export.el: Add tests.
2012-05-26 13:52:03 +02:00
Nicolas Goaziou 68744bf19f org-export: Fix selective export when a select tag is present
* contrib/lisp/org-export.el (org-export-populate-ignore-list): Fix
  docstring.
(org-export--selected-trees): Correctly search for headlines with
a select tag.
(org-export--skip-p): Fix selective export when a select tag is
present in the buffer.
* testing/lisp/test-org-export.el: Update tests.
2012-05-26 13:51:55 +02:00
Jambunathan K 8ee5ce1d2b org-e-odt.el: Fix example, fixed width, QUOTE and verse blocks 2012-05-26 02:55:22 +05:30
Jambunathan K b00eeb4d5a org-e-odt.el: Some cleanups 2012-05-26 00:09:53 +05:30
Nicolas Goaziou 8d96bbc5c3 org-element: Update entities regexp
* contrib/lisp/org-element.el (org-element-entity-parser, org-element-latex-or-entity-successor):
Update entities regexp.
2012-05-25 16:53:32 +02:00
Jambunathan K f12e41e37c org-e-odt: Handle quotation marks etc
Handle quotation marks, special strings, line breaks

Avoid corrupt of ODT files when
`nxml-auto-insert-xml-declaration-flag' is on.
2012-05-25 09:29:05 +05:30
Nicolas Goaziou 5d1c7e741b Update some docstrings and comments
* contrib/lisp/org-e-ascii.el (org-e-ascii-table,
  org-e-ascii--table-cell-width): Update docsring.
* contrib/lisp/org-e-html.el (org-e-html-table): Update docstring.
* contrib/lisp/org-e-latex.el (org-e-latex-table): Update docstring.
* contrib/lisp/org-e-odt.el (org-e-odt-table): Update docstring.
2012-05-23 23:21:25 +02:00
Nicolas Goaziou 00a4bf0663 org-e-latex: Reordering functions 2012-05-23 16:29:16 +02:00
Nicolas Goaziou 4721052ec6 org-e-ascii: Small refactoring
* contrib/lisp/org-e-ascii.el (org-e-ascii--unique-links): Small refactoring.
2012-05-21 21:54:09 +02:00
Nicolas Goaziou dc976e1139 org-export: Only number elements with a caption
* contrib/lisp/org-export.el (org-export-collect-elements): Collect
  elements with a caption only.
(org-export-collect-tables, org-export-collect-figures,
org-export-collect-listings): Update docstring.
* contrib/lisp/org-e-ascii.el (org-e-ascii--has-caption-p): Renamed
  from `org-e-ascii--has-caption-or-name-p'.
(org-e-ascii-link): Use previous function.
(org-e-ascii--build-caption, org-e-ascii--list-listings,
org-e-ascii--list-tables): Do not use #+NAME keyword as a fallback caption.
2012-05-21 21:38:42 +02:00
Nicolas Goaziou 42f7ba0d02 org-element: Fix ill-defined keywords parsing
* contrib/lisp/org-element.el (org-element-comment-parser):
  Ill-defined keywords (without the colons) are treated as comments.
(org-element-comment-interpreter): Apply changes to lexer.
* testing/lisp/test-org-element.el: Add test.
2012-05-20 17:33:36 +02:00
Nicolas Goaziou 65c0e18892 org-e-ascii: Ensure consistent cross-referencing between elements and links
* contrib/lisp/org-e-ascii.el (org-e-ascii--has-caption-or-name-p):
  New function.
(org-e-ascii--build-caption, org-e-ascii-link): Use new function.

This patch ensures only elements with a name or a caption are counted
in when a fuzzy link pointing to an element is resolved.
2012-05-20 13:57:58 +02:00
Nicolas Goaziou c91bcb368f org-export: Fix macro expansion when back-end protects dollar signs
* contrib/lisp/org-export.el (org-export-get-inbuffer-options): Return
  an "eval" macro as a regular secondary string instead of a plain
  string.
(org-export-expand-macro): Replace arguments before exporting
them (and possibly protecting dollar signs).  Refactor code.
* testing/lisp/test-org-export.el: Add tests.
2012-05-20 12:18:16 +02:00
Nicolas Goaziou 368a7f69c4 org-export: Move translate-alist into communication channel
* contrib/lisp/org-export.el (org-export-get-environment): Move
  translate-alist in communication channel.  Refactor code.
(org-export-transcoder): Retrieve transcoder from communication
channel instead of global variable.
2012-05-20 12:18:11 +02:00
Nicolas Goaziou 57cfa6aa9b org-export: Fix macro expansion error
* contrib/lisp/org-export.el (org-export-expand-macro): Fix code typo.
2012-05-20 09:57:33 +02:00
Nicolas Goaziou c84cda961f Fix some more comments in export back-ends 2012-05-18 21:06:12 +02:00
Nicolas Goaziou 946230bae4 A few fixes to comments and docstrings 2012-05-18 17:26:53 +02:00
Nicolas Goaziou 893a0915b5 org-e-latex: Customizable format string for broken links
* contrib/lisp/org-e-latex.el (org-e-latex-link-with-unknown-path-format):
  New variable.
(org-e-latex-link): Use new variable.
2012-05-18 12:42:32 +02:00
Nicolas Goaziou 5ab59625e6 org-e-publish: Apply #+INCLUDE keyword regexp change
* contrib/lisp/org-e-publish.el (org-e-publish-cache-file-needs-publishing):
  Make quotes mandatory around the file name and allow spaces in
  it.
2012-05-18 11:48:15 +02:00
Nicolas Goaziou 507b3c937b org-export: Fill `org-export-current-backend' before pre-parsing hook
* contrib/lisp/org-export.el (org-export-as): Store current back-end
  in `org-export-current-backend' before running
  `org-export-before-parsing-hook'.
2012-05-18 11:42:16 +02:00
Nicolas Goaziou 51472b4d33 org-export: Implement `org-export-resolve-radio-link'
* contrib/lisp/org-export.el (org-export-resolve-coderef): New function.
* contrib/lisp/org-e-ascii.el (org-e-ascii-link): Use new function.
* contrib/lisp/org-e-html.el (org-e-html-link): Use new function.
* contrib/lisp/org-e-latex.el (org-e-latex-link): Use new function.
* contrib/lisp/org-e-odt.el (org-e-odt-link): Use new function.
* testing/lisp/test-org-export.el: Add tests.
2012-05-18 11:42:16 +02:00
Nicolas Goaziou e1eb6a4af2 org-export: Rename `org-export-option-alist' into `org-export-options-alist'
* contrib/lisp/org-e-ascii.el (org-e-ascii-options-alist): Renamed
  from `org-e-ascii-option-alist'.
* contrib/lisp/org-e-html.el (org-e-html-options-alist): Renamed from
  `org-e-html-option-alist'.
* contrib/lisp/org-e-latex.el (org-e-latex-options-alist): Renamed
  from `org-e-latex-option-alist'.
* contrib/lisp/org-e-odt.el (org-e-odt-options-alist): Renamed from
  `org-e-odt-option-alist'.
* contrib/lisp/org-export.el (org-export-define-derived-backend,
  org-export-parse-option-keyword, org-export-get-inbuffer-options,
  org-export-get-global-options): Rename `org-export-option-alist'
  into `org-export-options-alist'.
2012-05-18 11:42:16 +02:00
Nicolas Goaziou 69f7a9b67f org-export: Implement `org-export-define-derived-backend'
* contrib/lisp/org-export.el (org-export-define-derived-backend): New
  function.
2012-05-18 11:42:15 +02:00
Nicolas Goaziou 7421e96536 org-export: Remove naming convening for back-ends
* contrib/lisp/org-e-ascii.el (org-e-ascii-translate-alist): New variable.
* contrib/lisp/org-e-html.el (org-e-html-translate-alist): New
  variable.
(org-e-html-filters-alist): Move variable into an appropriate section.
* contrib/lisp/org-e-latex.el (org-e-latex-translate-alist): New variable.
* contrib/lisp/org-e-odt.el (org-e-odt-translate-alist): New variable.
(org-e-odt-option-alist): Move variable into an appropriate section.
* contrib/lisp/org-export.el (org-export-transcoder): Retrieve
  translators from `org-BACKEND-translate-alist' instead of applying
  a naming convention to each of them.
* testing/lisp/test-org-export.el: Update tests.
2012-05-18 11:42:15 +02:00
Nicolas Goaziou 1c2aaca837 org-e-ascii: Table cells are exported with proper export options
* contrib/lisp/org-e-ascii.el (org-e-ascii-superscript): Table cells
  are exported with proper export options.
2012-05-18 11:42:15 +02:00
Jambunathan K 5847931b37 org-e-odt.el: Fix italic style 2012-05-17 19:36:32 +05:30
Nicolas Goaziou 323836f0ff org-export: Fix code comments
* contrib/lisp/org-export.el (org-export-resolve-fuzzy-link): Fix code comments.
2012-05-12 10:45:06 +02:00
Nicolas Goaziou 5750f0869c org-element: Preserve visibility when moving elements
* contrib/lisp/org-element.el (org-element-swap-A-B): Preserve
  visibility when moving elements.
* testing/lisp/test-org-element.el: Add tests.
2012-05-11 16:07:11 +02:00
Nicolas Goaziou d71464c0d3 org-element: Handle multiple TBLFM keywords
* contrib/lisp/org-element.el (org-element-table-parser,
  org-element-table-interpreter): Handle multiple TBLFM keywords.
(org-element-collect-affiliated-keywords): Minor changes to
docstring.
* testing/lisp/test-org-element.el: Add test.
2012-05-11 15:17:14 +02:00
Nicolas Goaziou d308ea3172 org-element: Fix latex environment parsing
* contrib/lisp/org-element.el (org-element-latex-environment-parser):
  Grab value until closing of main environment block.
(org-element-current-element): Check if main block is properly closed.
* testing/lisp/test-org-element.el: Add test.
2012-05-10 23:05:42 +02:00
Christian Egli 294589270e org2hpda: Adapt to modern pdfjam
* contrib/scripts/org2hpda (all): Adapt the invocation of pdfnup and
pdfjoin to a modern version of the pdfjam package.

Since version 2.0 of pdfjam, i.e. since 2010-03-14 some of the default
values for parameters have changed. This makes sure org2hpda does the
right thing under the new circumstances.
2012-05-10 16:31:46 +02:00
Nicolas Goaziou b797c88d70 org-e-latex: Fix export of tables with a percent in caption
* contrib/lisp/org-e-latex.el (org-e-latex-table): Refactor code.
(org-e-latex-table--org-table, org-e-latex-table--table.el-table): New
functions.
(org-e-latex-table--format-string): Removed function.
2012-05-07 15:21:25 +02:00
Nicolas Goaziou e1d6c251ae org-export: Fix uninterpreted syntax status
* contrib/lisp/org-export.el (org-export-data): Send uninterpreted Org
  syntax into export process again, so plain text transformations
  still can be applied on it.
2012-05-07 13:32:49 +02:00
Nicolas Goaziou cbc1c03680 org-element: Allow targets in a few more places
* contrib/lisp/org-element.el (org-element-object-restrictions): Allow
  targets in a few more places.
2012-05-07 08:53:31 +02:00
Nicolas Goaziou b5c0d7d2d1 org-e-latex: Fix table alignment for tables starting with a rule
* contrib/lisp/org-e-latex.el (org-e-latex-table--align-string): Fix
  table alignment for tables starting with a rule.
2012-05-06 20:10:21 +02:00
Nicolas Goaziou e8d291bc76 org-e-latex: Fix multicolumn handling for figures
* contrib/lisp/org-e-latex.el (org-e-latex-link--inline-image): Fix typo.
2012-05-06 08:27:56 +02:00
Paul Sexton eb48e426d5 org-drill: prevent fontifcation functions from being called when saving outline
visibility info during drill sessions. This should fix slow transitions between drill
items for some people.
2012-05-06 10:45:39 +12:00
Nicolas Goaziou 212819c5d0 org-export: Properly handle export-block elements
* contrib/lisp/org-e-ascii.el (org-e-ascii-export-block): type
  attribute is always uppercase.
* contrib/lisp/org-e-html.el (org-e-html-export-block): type attribute
  is always uppercase.
* contrib/lisp/org-e-latex.el (org-e-latex-export-block): type
  attribute is always uppercase.
* contrib/lisp/org-e-odt.el (org-e-odt-export-block): type attribute
  is always uppercase.
2012-05-05 22:47:00 +02:00
Nicolas Goaziou 557fad288b org-element: Silence byte-compiler 2012-05-05 21:02:47 +02:00
Nicolas Goaziou 1d0f8b2611 org-e-latex: Fix code typo
* contrib/lisp/org-e-latex.el (org-e-latex--text-markup): Fix code typo.
2012-05-05 20:09:02 +02:00
Nicolas Goaziou 64cdd8879b org-element: Fix paragraph separator
* contrib/lisp/org-element.el (org-element-paragraph-separate): Fix
  paragraph separator.
2012-05-05 18:05:33 +02:00
Nicolas Goaziou b7dbf357c3 org-element: Small modifications to comments 2012-05-05 17:43:42 +02:00
Nicolas Goaziou e4c2540b68 org-element: Add a function to fill an element
* contrib/lisp/org-element.el (org-element-fill-paragraph): New function.
* testing/lisp/test-org-element.el: Add tests.
2012-05-05 17:43:42 +02:00
Nicolas Goaziou 88032eed64 org-element: `org-element-map' applies to strings and secondary strings
* contrib/lisp/org-element.el (org-element-map): `org-element-map' now
  applies to strings and secondary strings.
* testing/lisp/test-org-element.el: Add tests.
2012-05-05 17:43:42 +02:00
Nicolas Goaziou 5cbc56a175 org-element: Small modification to `org-element-block-name-alist'
* contrib/lisp/org-element.el (org-element-block-name-alist): Directly
  store parser's name in CDR.
2012-05-05 12:41:32 +02:00
Nicolas Goaziou 761add3580 org-element: Remove an obsolete defconst
* contrib/lisp/org-element.el (org-element--element-block-re): Remove
  variable.
2012-05-05 11:31:05 +02:00
Nicolas Goaziou ed9a748057 org-element: Refactor navigation tools
* contrib/lisp/org-element.el (org-element-at-point,
  org-element-backward, org-element-up, org-element-down,
  org-element-drag-backward): Refactor.
(org-element-swap-A-B): Handle the case of the first paragraph in an
item.
(org-element-transpose): New function.
(org-transpose-elements): Removed function.
(org-element-unindent-buffer): Correctly un-indent contents of
headlines.
* testing/lisp/test-org-element.el: Add tests.
2012-05-05 09:15:33 +02:00
Nicolas Goaziou b137cdb296 org-element: Fix to footnote-definition parsing
* contrib/lisp/org-element.el (org-element-footnote-definition-parser):
Fix bug when parsing a footnote definition at end of buffer.
* testing/lisp/test-org-element.el: Add test.
2012-05-05 09:15:33 +02:00
Nicolas Goaziou 2a6b7c87f4 org-element: Remove :level attribute from plain-list elements
* contrib/lisp/org-element.el (org-element-plain-list-parser):
  Remove :level attribute from plain-list elements since it isn't
  directly related to the plain-list and can be computed during export
  process.
* contrib/lisp/org-e-latex.el (org-e-latex-item): Compute list level.
* contrib/lisp/org-e-html.el (org-e-html-item): Remove unneeded
  reference to :level attribute.
* contrib/lisp/org-e-odt.el (org-e-odt-item): Remove unneeded
  reference to :level attribute.
2012-05-05 09:15:33 +02:00
Nicolas Goaziou d83ab52626 org-element: Refactor code, add tests
* contrib/lisp/org-element.el (org-element-babel-call-parser): Be sure
  to match "#+CALL:".
(org-element-block-name-alist): New variable.
(org-element-non-recursive-block-alist): Removed variable.
(org-element-current-element): Refactor.
* testing/lisp/test-org-element.el: Add tests.
2012-05-05 09:15:33 +02:00
Paul Sexton 5412883c1d org-drill: prevent errors caused by attempting to display inline images on a non-graphical display. 2012-05-05 08:09:22 +12:00
Nicolas Goaziou 72ca00ca09 org-e-ascii: Fix table export bug when ignoring sub/superscript
* contrib/lisp/org-e-ascii.el (org-e-ascii--table-cell-width):
  Refactor code.
* contrib/lisp/org-export.el: Do not normalize contents when expanding
  them, since it will be done at the end of the function, and only for
  elements.
2012-05-04 14:02:41 +02:00
Nicolas Goaziou 01d83dc1f4 org-export: Fix table export bug with cells made of only one object
* contrib/lisp/org-export.el (org-export-table-row-is-special-p,
  org-export-table-cell-width, org-export-table-cell-alignment):
  Ensure cell only contains a string before trying to match width
  cookie.
* testing/lisp/test-org-export.el: Modify tests accordingly.

Thanks to Eric Fraga for discovering and investigating about this.
2012-05-03 14:29:30 +02:00
Nicolas Goaziou f4791557e2 org-element: Store fixed-with and comment contents without markers
* contrib/lisp/org-element.el (org-element-comment-parser): Store
  comments without leading hash and maybe plus sign.
(org-element-fixed-width-parser): Store fixed-width contents without
leading colons.
(org-element-comment-interpreter,
org-element-fixed-width-interpreter): Apply changes.
* contrib/lisp/org-e-odt.el (org-e-odt-fixed-width): Apply changes to
  fixed-width `:value' property.
* contrib/lisp/org-e-latex.el (org-e-latex-fixed-width): Apply changes
  to fixed-width `:value' property.
* contrib/lisp/org-e-html.el (org-e-html-fixed-width): Apply changes
  to fixed-width `:value' property.
* contrib/lisp/org-e-ascii.el (org-e-ascii-fixed-width): Apply changes
  to fixed-width `:value' property.
* testing/lisp/test-org-element.el: Add tests.
2012-05-02 17:25:30 +02:00
Nicolas Goaziou 172d7a6f5e org-element: Apply `org-translate-link' when parsing a link
* contrib/lisp/org-element.el (org-element-link-parser): Apply
  `org-translate-link' when parsing a link.
* testing/lisp/test-org-element.el: Add test.
2012-05-01 15:47:14 +02:00
Nicolas Goaziou 32a5920e69 org-element: Internally store headline/inlinetask's tags as a list of strings
* contrib/lisp/org-element.el (org-element-headline-parser,
  org-element-headline-interpreter, org-element-inlinetask-parser,
  org-element-inlinetask-interpreter): Store headline/inlinetask's
  tags as a list of strings.
* contrib/lisp/org-export.el (org-export--selected-trees,
  org-export--skip-p): Use new tag representation.
* contrib/lisp/org-e-ascii.el (org-e-ascii--build-title,
  org-e-ascii-format-inlinetask-function, org-e-ascii-inlinetask): Use
  new tag representation.
* contrib/lisp/org-e-html.el (org-e-html-format-headline-function,
  org-e-html-format-inlinetask-function, org-e-html--tags): Use new
  tag representation.
* contrib/lisp/org-e-latex.el (org-e-latex-format-headline-function,
  org-e-latex-format-inlinetask-function, org-e-latex-headline,
  org-e-latex-inlinetask): Use new tag representation.
* contrib/lisp/org-e-odt.el (org-e-odt-format-org-tags): Use new tag
  representation.
* testing/lisp/test-org-element.el: Update test.
2012-05-01 14:29:40 +02:00
Nicolas Goaziou 4f8e1e85b2 org-element: Interpret headlines without a `:pre-blank' property
* contrib/lisp/org-element.el (org-element-headline-interpreter):
  Interpret headlines without a `:pre-blank' property.
2012-05-01 12:20:06 +02:00
Nicolas Goaziou 49228181ee org-element: code clean-up and some optimizations
* contrib/lisp/org-element.el (org-element-center-block-parser,
  org-element-plain-list-parser, org-element-quote-block-parser,
  org-element-special-block-parser, org-element-comment-parser,
  org-element-comment-block-parser, org-element-example-block-parser,
  org-element-export-block-parser, org-element-fixed-width-parser,
  org-element-horizontal-rule-parser, org-element-keyword-parser,
  org-element-latex-environment-parser, org-element-paragraph-parser,
  org-element-property-drawer-parser, org-element-src-block-parser,
  org-element-table-parser): Since parser will alway be called at the
  beginning of the element, simplify code.
2012-05-01 01:02:48 +02:00
Nicolas Goaziou 2ab6367daf org-element: Interpret correctly switches in example blocks
* contrib/lisp/org-element.el (org-element-example-block-interpreter):
  Interpret correctly switches in example blocks.
* testing/lisp/test-org-element.el: Add test.
2012-04-30 23:44:30 +02:00
Nicolas Goaziou 537ab2ada3 org-element: Interpret secondary strings with `org-element-interpret-data'
* contrib/lisp/org-element.el (org-element-headline-interpreter,
  org-element-inlinetask-interpreter, org-element-item-interpreter,
  org-element-footnote-reference-interpreter,
  org-element-interpret--affiliated-keywords): Use
  `org-element-interpret-data' instead of
  `org-element-interpret-secondary'.
(org-element-interpret-data): Handle secondary strings.  Refactor
code.
(org-element-interpret-secondary): Remove function
* contrib/lisp/org-export.el (org-export-table-cell-alignment): Use
  `org-element-interpret-data' instead of
  `org-element-interpret-secondary'.
2012-04-30 20:10:54 +02:00
Nicolas Goaziou 03813d9bc4 org-export: Secondary strings are transcoded with `org-export-data'
* contrib/lisp/org-export.el (org-export-transcoder): New function.
(org-export-data): Also export secondary strings.  Refactored.
(org-export-secondary-string): Remove function.
(org-export-expand): Fix code indentation.
(org-export-expand-macro): Use `org-export-data' instead of
`org-export-secondary-string'.
* contrib/lisp/org-e-ascii.el (org-e-ascii--build-title,
  org-e-ascii--build-caption, org-e-ascii--list-listings,
  org-e-ascii--list-tables, org-e-ascii--describe-links,
  org-e-ascii-template--document-title, org-e-ascii-inlinetask,
  org-e-ascii-item, org-e-ascii-link, org-e-ascii-quote-section,
  org-e-ascii--table-cell-width): Use `org-export-data' instead of
  `org-export-secondary-string'.
* contrib/lisp/org-e-html.el (org-e-html-footnote-section,
org-e-html--caption/label-string, org-e-html-meta-info,
org-e-html-preamble, org-e-html-template,
org-e-html-format-headline--wrap, org-e-html-headline,
org-e-html-item, org-e-html-link): Use `org-export-data' instead of
`org-export-secondary-string'.
* contrib/lisp/org-e-latex.el (org-e-latex--caption/label-string,
  org-e-latex-template, org-e-latex-footnote-reference,
  org-e-latex-headline, org-e-latex-inlinetask, org-e-latex-item,
  org-e-latex-link, org-e-latex-src-block): Use `org-export-data'
  instead of `org-export-secondary-string'.
* contrib/lisp/org-e-odt.el (org-e-odt-format-preamble,
  org-e-odt-format-label, org-e-odt-update-meta-file,
  org-e-odt--caption/label-string, org-e-odt-footnote-def,
  org-e-odt-format-headline--wrap, org-e-odt-headline, org-e-odt-item,
  org-e-odt-latex-environment, org-e-odt-link, org-e-odt-src-block):
  Use `org-export-data' instead of `org-export-secondary-string'.
2012-04-30 20:10:54 +02:00
Nicolas Goaziou 15315c5cc6 org-element: Fix src-block switches parsing
* contrib/lisp/org-element.el (org-element-src-block-parser): Fix
  switches parsing.
* testing/lisp/test-org-element.el: Add test.
2012-04-30 18:21:35 +02:00
Nicolas Goaziou 99a5d6bea8 org-element: Small fix to previous commit
* contrib/lisp/org-element.el (org-element-export-snippet-parser):
  Small fix.
* testing/lisp/test-org-export.el: Fix test.
2012-04-30 17:49:55 +02:00
Nicolas Goaziou 803d76825a org-element: Change to export-snippet syntax
* contrib/lisp/org-element.el (org-element-export-snippet-parser):
  Change syntax from @back-end{contents} to <back-end@contents>.
(org-element-export-snippet-successor): Use new syntax
* testing/lisp/test-org-element.el: Add test.

This change is required as curly braces conflict with LaTeX syntax
when trying to break a command in two parts.  On the other hand, HTML
tags can be broken easily in two.  More explicitely, both the
following constructs are possible now:

  <latex@\textsc{>Name<latex@}> and <html@<b>>
2012-04-30 17:34:01 +02:00
Nicolas Goaziou bea597be96 org-export: Add `active' and `inactive' alternatives to `org-export-with-timestamps'
* contrib/lisp/org-export.el (org-export-with-timestamps): Allow to
  keep only active timestamps or inactive ones with respectively
  `active' and `inactive' values.
(org-export--skip-p): Update tests to determine if a timestamp should
be ignored.
* testing/lisp/test-org-export.el: Add tests.
* contrib/lisp/org-element.el: Fix some comments.
2012-04-29 22:55:37 +02:00
Nicolas Goaziou e3dfe717c8 org-export: Use (org-version) for creator string
* contrib/lisp/org-export.el (org-export-creator-string):
  Use (org-version) for creator string.
2012-04-29 15:52:14 +02:00
Nicolas Goaziou b5f4b526ca org-element: Rename `time-stamp' object type into `timestamp' 2012-04-29 02:26:57 +02:00
Nicolas Goaziou 941f90a649 org-export: Export `clock' and `planning' elements
* contrib/lisp/org-export.el (org-export-option-alist): Add new
  filters.
(org-export-with-clocks, org-export-with-planning,
org-export-filter-clock-functions,
org-export-filter-planning-functions): New variables.
(org-export--skip-p): Skip `clock' and `planning' types depending on
export options.
* contrib/lisp/org-e-ascii.el (org-e-ascii-clock,
  org-e-ascii-planning): New functions.
(org-e-ascii-time-stamp): Update function.  Use `org-translate-time'.
* contrib/lisp/org-e-html.el (org-e-html-clock, org-e-html-planning):
  New functions.
(org-e-html-time-stamp): Update function.
* contrib/lisp/org-e-latex.el (org-e-latex-clock,
  org-e-latex-planning): New functions.
(org-e-latex-time-stamp): Update function.  Use `org-translate-time'.
* contrib/lisp/org-e-odt.el (org-e-odt-clock, org-e-odt-planning): New
  functions.
(org-e-odt-time-stamp): Update function.  Use `org-translate-time'.
* testing/lisp/test-org-export.el: Add tests.
2012-04-29 02:26:33 +02:00
Nicolas Goaziou 5cd9c01757 org-element: Add `clock' and `planning' element types
* contrib/lisp/org-element.el (org-element-babel-call-parser): Fix
  property name.
(org-element-babel-call-interpreter, org-element--element-block-re):
Fix docstring.
(org-element-clock-parser, org-element-clock-interpreter,
org-element-planning-parser, org-element-planning-interpreter): New
functions.
(org-element-time-stamp-parser): Move planning keywords out of the
object: no more `:appt-type' property
(org-element-time-stamp-interpreter,
org-element-time-stamp-successor): Apply changes to previous function.
(org-element-paragraph-separate): Time keywords also end paragraphs.
(org-element-all-elements): Register new elements types.
(org-element-current-element): Recognize new elements.
(org-element-parse-elements): Fix comments.
* testing/lisp/test-org-element.el: Add tests.
2012-04-29 02:26:33 +02:00
Nicolas Goaziou 3621634861 org-element: Fix code typo
* contrib/lisp/org-element.el (org-element-object-successor-alist):
  Fix code typo.
2012-04-28 21:12:56 +02:00
Nicolas Goaziou fd5f561a3e org-element: Fix block parsing
* contrib/lisp/org-element.el (org-element-current-element): Fix
  regexp for block boundaries.
* testing/lisp/test-org-element.el (test-org-element/block-switches):
  Fix test.
2012-04-28 21:12:30 +02:00
Nicolas Goaziou 676846cd85 org-element: Don't forget to register new objects
* contrib/lisp/org-element.el (org-element-all-objects): Register new objects.
2012-04-28 19:01:25 +02:00
Nicolas Goaziou f70afc42ef org-export: Fix tests
* contrib/lisp/org-export.el (org-export-filters-alist): Remove
  unexistant filters.
2012-04-28 18:08:37 +02:00
Nicolas Goaziou b21b6ead24 org-element: Define new objects (bold, code, italic, ...)
* contrib/lisp/org-e-ascii.el (org-e-ascii-option-alist): Fix typo.
(org-e-ascii-bold, org-e-ascii-code, org-e-ascii-strike-through,
org-e-ascii-underline): New functions.
(org-e-ascii-emphasis): Remove function.
* contrib/lisp/org-e-html.el (org-e-html-text-markup-alist): Variable
  renamed from `org-e-html-emphasis-alist'.  Change value type.
(org-e-html-bold, org-e-html-italic, org-e-html-strike-through,
org-e-html-underline): New functions.
(org-e-html-verbatim): Update function.
(org-e-html-emphasis): Remove function.
* contrib/lisp/org-e-latex.el (org-e-latex-text-markup-alist):
  Variable renamed from `org-e-latex-emphasis-alist'.  Change value
  type.
(org-e-latex-center-block): Fix docstring.
(org-e-latex--text-markup, org-e-latex-bold, org-e-latex-code,
org-e-latex-italic, org-e-latex-strike-through,
org-e-latex-underline): New functions.
(org-e-latex-verbatim): Update function.
(org-e-latex-emphasis): Remove function.
* contrib/lisp/org-e-odt.el (org-e-odt-bold, org-e-odt-code,
  org-e-odt-italic, org-e-odt-strike-through, org-e-odt-underline):
  New functions.
(org-e-odt-verbatim): Update function.
(org-e-odt-center-block): Fix docstring.
(org-e-odt-emphasis): Remove function.
* contrib/lisp/org-element.el (org-element-bold-parser):
(org-element-bold-interpreter, org-element-code-parser,
org-element-code-interpreter, org-element-italic-parser,
org-element-italic-interpreter, org-element-strike-through-parser,
org-element-strike-through-interpreter, org-element-underline-parser,
org-element-underline-interpreter): New functions.
(org-element-emphasis-parser, org-element-emphasis-interpreter):
Remove functions.
(org-element-verbatim-parser, org-element-verbatim-interpreter,
org-element-text-markup-successor): Update function.
(org-element-object-successor-alist): Add associations for new object
types.
(org-element-recursive-objects): Add `bold', `italic',
`strike-through' and `underline' as recursive types.
(org-element-object-restrictions): Add restrictions for new recursive
object types.
* contrib/lisp/org-export.el (org-export-filters-alist): Add filters
  for new object types.
(org-export-with-todo-keywords): Add missing keywords.
(org-export-filter-center-block-functions,
org-export-filter-drawer-functions,
org-export-filter-dynamic-block-functions,
org-export-filter-headline-functions,
org-export-filter-inlinetask-functions,
org-export-filter-plain-list-functions,
org-export-filter-item-functions, org-export-filter-comment-functions,
org-export-filter-comment-block-functions,
org-export-filter-example-block-functions,
org-export-filter-export-block-functions,
org-export-filter-fixed-width-functions,
org-export-filter-footnote-definition-functions,
org-export-filter-horizontal-rule-functions,
org-export-filter-keyword-functions,
org-export-filter-latex-environment-functions,
org-export-filter-babel-call-functions,
org-export-filter-paragraph-functions,
org-export-filter-property-drawer-functions,
org-export-filter-quote-section-functions,
org-export-filter-quote-block-functions,
org-export-filter-section-functions,
org-export-filter-special-block-functions,
org-export-filter-src-block-functions,
org-export-filter-table-functions,
org-export-filter-table-cell-functions,
org-export-filter-table-row-functions,
org-export-filter-verse-block-functions,
org-export-filter-entity-functions,
org-export-filter-export-snippet-functions,
org-export-filter-footnote-reference-functions,
org-export-filter-inline-babel-call-functions,
org-export-filter-inline-src-block-functions,
org-export-filter-latex-fragment-functions,
org-export-filter-line-break-functions,
org-export-filter-link-functions, org-export-filter-macro-functions,
org-export-filter-radio-target-functions,
org-export-filter-statistics-cookie-functions,
org-export-filter-subscript-functions,
org-export-filter-superscript-functions,
org-export-filter-target-functions,
org-export-filter-time-stamp-functions,
org-export-filter-verbatim-functions): Fix docstring.
(org-export-filter-bold-functions, org-export-filter-code-functions,
org-export-filter-italic-functions,
org-export-filter-strike-through-functions,
org-export-filter-underline-functions): New variables.
(org-export-filter-emphasis-functions): Remove variable.
* testing/lisp/test-org-element.el: Add tests.
2012-04-28 18:00:50 +02:00
Nicolas Goaziou 312e225685 org-export: Remove unnecessary back-end arguments
* contrib/lisp/org-e-ascii.el (org-e-ascii--build-title,
  org-e-ascii--build-caption, org-e-ascii--list-listings,
  org-e-ascii--list-tables, org-e-ascii--describe-links,
  org-e-ascii-template--document-title, org-e-ascii-dynamic-block,
  org-e-ascii-inlinetask, org-e-ascii-item, org-e-ascii-link,
  org-e-ascii-quote-section, org-e-ascii--table-cell-width): Do not
  provide back-end symbol.
* contrib/lisp/org-e-html.el (org-e-html--caption/label-string,
  org-e-html-footnote-section, org-e-html-template,
  org-e-html-dynamic-block, org-e-html-format-headline--wrap,
  org-e-html-headline, org-e-html-item, org-e-html-link,
  org-e-html-time-stamp): Do not provide back-end symbol.
* contrib/lisp/org-e-latex.el (org-e-latex--caption/label-string,
  org-e-latex-template, org-e-latex-dynamic-block,
  org-e-latex-footnote-reference, org-e-latex-headline,
  org-e-latex-inlinetask, org-e-latex-item, org-e-latex-link,
  org-e-latex-src-block): Do not provide back-end symbol.
* contrib/lisp/org-e-odt.el (org-e-odt-format-preamble,
  org-e-odt-format-label, org-e-odt-write-manifest-file,
  org-e-odt--caption/label-string, org-e-odt-dynamic-block,
  org-e-odt-format-headline--wrap, org-e-odt-headline, org-e-odt-item,
  org-e-odt-latex-environment, org-e-odt-link, org-e-odt-src-block,
  org-e-odt-time-stamp): Do not provide back-end symbol.
* contrib/lisp/org-export.el (org-export-get-environment): Provide
  back-end symbol under `:back-end' property.
(org-export-collect-tree-properties, org-export-data,
org-export-filter-verbatim-functions, org-export-install-filters,
org-export-as, org-export-expand-macro,
org-export-filter-apply-functions, org-export-secondary-string):
Remove back-end references.
* testing/lisp/test-org-export.el: Update tests.

Back-end can be found in communication channel with (plist-get
info :back-end).  Hence back-ends do not have to hard-code their name
in any transcoder.  It will allow to derive a back-end from another
one.
2012-04-28 11:41:15 +02:00
Nicolas Goaziou b3e8a8d437 org-export: Run a hook before parsing
* contrib/lisp/org-export.el (org-export-before-parsing-hook): New
  variable.
(org-export-as): Run `org-export-before-parsing-hook'.
* testing/lisp/test-org-export.el: Add test.
2012-04-28 09:35:12 +02:00
Nicolas Goaziou 8e52d1d7f0 org-element: Fix comment block interpreter
* contrib/lisp/org-element.el (org-element-comment-block-interpreter):
  Fix comment block interpreter.
2012-04-27 17:27:28 +02:00
Nicolas Goaziou 7cdd0db287 org-element: Fix headline/inlinetask interpretation
* contrib/lisp/org-element.el (org-element-inlinetask-interpreter,
  org-element-headline-interpreter): Fix headline/inlinetask
  interpretation.
(org-element-inlinetask-interpreter): Prefer degenerate inlinetasks
when they have no contents.
2012-04-27 17:16:32 +02:00
Nicolas Goaziou e4852f7ee9 org-element: Fix dynamic block parsing and interpretation 2012-04-27 17:16:32 +02:00
Nicolas Goaziou 18aef0875a org-element: Fix docstrings 2012-04-27 17:16:32 +02:00
Nicolas Goaziou c6dc6e3d32 org-element: Verse blocks now contain objects
* contrib/lisp/org-element.el (org-element-verse-block-parser): Verse
  blocks now contain objects.
(org-element-verse-block-interpreter, org-element-current-element):
Apply changes to verse blocks.
(org-element-secondary-value-alist): Remove verse blocks from elements
with a secondary string.
* contrib/lisp/org-e-odt.el (org-e-odt-verse-block): Apply changes to
  verse blocks.
* contrib/lisp/org-e-latex.el (org-e-latex-verse-block): Apply changes
  to verse blocks.
* contrib/lisp/org-e-html.el (org-e-html-verse-block): Apply changes
  to verse blocks.
* contrib/lisp/org-e-ascii.el (org-e-ascii-verse-block): Apply changes
  to verse blocks.
* testing/lisp/test-org-element.el: Add tests.
2012-04-26 14:49:29 +02:00
Nicolas Goaziou c3d7d21108 org-e-latex: Fix coderef display for links with no contents
* contrib/lisp/org-e-latex.el (org-e-latex-link): Fix coderef display
  for links with no contents.
* contrib/lisp/org-e-odt.el (org-e-odt-link): Remove useless test.
* contrib/lisp/org-e-html.el (org-e-html-link): Remove useless test.
2012-04-26 14:49:29 +02:00
Nicolas Goaziou 206ce6e0b5 org-element: Ignore blank lines when removing element indentation
* contrib/lisp/org-element.el (org-element-normalize-contents): Ignore
  blank and empty lines when removing element indentation.
* testing/lisp/test-org-element.el: Add tests.
2012-04-26 14:49:29 +02:00
Jambunathan K ac5d8c92a5 org-e-odt.el: Adjust search paths for schema and styles files 2012-04-22 23:49:18 +05:30
Jambunathan K 43ee3a441a rm -rf contrib/odt 2012-04-22 23:05:26 +05:30
Nicolas Goaziou 052247ce81 org-e-ascii: Correctly indent table.el tables
* contrib/lisp/org-e-ascii.el (org-e-ascii-table): Remove indentation
  from table.el tables.
2012-04-22 17:00:32 +02:00
Jambunathan K 0b97c97170 org-e-html/org-e-odt: Use new table infrastructure 2012-04-22 19:48:26 +05:30
Jambunathan K 00cc5d5cef org-export: Minor fixes
* contrib/lisp/org-export.el (org-export-creator-string):
Check for `org-version' being bound before using it.
(org-export-get-inbuffer-options): Use
`org-element-restriction'.
2012-04-22 19:47:53 +05:30
Jambunathan K d73db66a38 Move org-e-* from EXPERIMENTAL/ to contrib/lisp/ 2012-04-22 19:47:37 +05:30
Nicolas Goaziou 0264495f52 org-export: Fix small bug
* contrib/lisp/org-export.el (org-export-get-coderef-format): Handle
  nil descriptions.
2012-04-22 19:42:47 +05:30
Nicolas Goaziou 172ae310a8 org-export: Define tools for tables, table rows and table cells
* contrib/lisp/org-export.el (org-export-table-cell-width,
  org-export-table-cell-alignment, org-export-table-cell-borders,
  org-export-table-row-group, org-export-table-has-special-column-p,
  org-export-table-row-is-special-p, org-export-get-parent-table,
  org-export-table-dimensions, org-export-table-cell-address,
  org-export-get-table-cell-at, org-export-table-has-header-p,
  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,
  org-export-table-row-starts-header-p,
  org-export-table-row-ends-header-p): New functions.
(org-export-table-format-info, org-export-clean-table): Removed
functions.
(org-export-filter-table-cell-functions,
org-export-filter-table-row-functions): New variables.
(org-export-filters-alist): Install new filters.
(org-export-collect-tree-properties, org-export--skip-p): Mark special
rows and cells as ignored.
* testing/lisp/test-org-export.el: Add tests.
2012-04-22 19:41:45 +05:30
Nicolas Goaziou eeeee5f1da org-element: Split tables into table-row elements and table-cell objects
* contrib/lisp/org-element.el (org-element-table-parser): Split tables
  into table-row elements and table-cell objects.
(org-element-table-interpreter): Adapt interpreter to new code.
(org-element-table-row-parser, org-element-table-row-interpreter,
org-element-table-cell-parser, org-element-table-cell-interpreter,
org-element-table-cell-successor, org-element-table-row-successor,
org-element-restriction): New functions.
(org-element-headline-parser,
  org-element-inlinetask-parser, org-element-item-parser,
  org-element-verse-block-parser,
  org-element-footnote-reference-parser,
  org-element-collect-affiliated-keywords, org-element-parse-objects):
  Use new function
(org-element-all-objects): Add new objects.
(org-element-target-parser): Small change to docstring.
(org-element-object-restrictions): Merge `org-element-string-restrictions'
into it.
(org-element-string-restrictions): Remove variable.
(org-element-parse-elements): Parse objects in non-recursive elements
with contents.
(org-element-normalize-string): Small refactoring.
(org-element-at-point): Handle table navigation.
* testing/lisp/test-org-element.el: Add tests.
2012-04-22 19:41:28 +05:30
Jambunathan K aa2e5308ee Move contrib/lisp/org-e-*.el to EXPERIMENTAL/ 2012-04-22 19:41:10 +05:30
Martyn Jago 6b6f0d625b Fix require path due to removal of EXPERIMENTAL
* contrib/lisp/org-export.el:

path relative to org-export.el has changed due
to relocation of org-e-publish.el (removal of
EXPERIMENTAL)
2012-04-21 23:51:38 +02:00
Bastien Guerry abd49c8aae Deleate trailing whitespaces. 2012-04-21 17:44:47 +02:00
François Allisson 0189c5d2d9 Update of contrib/README 2012-04-21 17:44:29 +02:00
Bastien Guerry bafd9a42f8 Move EXPERIMENTAL/* into contrib/lisp/ and change org-export.el accordingly. 2012-04-21 16:22:31 +02:00
Achim Gratz b323d9e5c3 move schema files to etc/ and modify makefile to install them into $(datadir)
etc/Makefile: add "schema" to $(ETCDIRS)

	contrib/odt/etc/schema/od-manifest-schema-v1.2-cs01.rnc: move to etc/schema/od-manifest-schema-v1.2-cs01.rnc

	contrib/odt/etc/schema/od-schema-v1.2-cs01.rnc: move to etc/schema/od-schema-v1.2-cs01.rn

	contrib/odt/etc/schema/schemas.xml: move to etc/schema/schemas.xml
2012-04-20 21:04:12 +02:00
Eric Schulte 66ae794a66 contrib/org-docco.org -- docco side-by-side HTML export of annotated source code
for an example of the code output see
  http://eschulte.github.com/org-docco/org-docco.html
2012-04-20 12:21:50 -04:00
Bastien Guerry e449f12d6f Remove contrib/doc/fr-latex.tex as this is now on Worg.
See http://orgmode.org/worg/code/latex/fr-orgcard.tex
and http://orgmode.org/worg/images/bzg/fr-orgcard.pdf
2012-04-20 13:30:06 +02:00
Nicolas Goaziou f0c737862d org-export: Refactor code 2012-04-17 13:33:38 +02:00
Nicolas Goaziou 36711b05ba org-export: Fix footnotes export outside parsing scope
* contrib/lisp/org-export.el (org-export-get-buffer-attributes):
  Function renamed from `org-export-initial-options'.
(org-export-store-footnote-definitions): New function.
(org-export-as): Store footnote definitions at the appropriate place.
It happens twice if buffer gets expanded.
* testing/lisp/test-org-export.el: Add test.
2012-04-13 15:47:13 +02:00
Eric Schulte 165d34af6a Revert "Revert "in emails, wrap html and images in a multipart/mixed structure""
This reverts commit 3f810ad424.
2012-04-12 08:21:05 -04:00
Eric Schulte 0202817e06 Revert "retain disposition=inline change for images in html mail"
This reverts commit e307d08382.
2012-04-12 08:21:05 -04:00
Eric Schulte e307d08382 retain disposition=inline change for images in html mail
* contrib/lisp/org-mime.el (org-mime-file): Retain disposition=inline
  change for images in html mail.
2012-04-11 09:20:45 -04:00
Eric Schulte 3f810ad424 Revert "in emails, wrap html and images in a multipart/mixed structure"
This reverts commit 718fefa4e3.
2012-04-11 09:18:16 -04:00
Eric Schulte 718fefa4e3 in emails, wrap html and images in a multipart/mixed structure
* contrib/lisp/org-mime.el (org-mime-file): Mark images included as
  part of html portions as "disposition=inline".
  (org-mime-multipart): When images are present wrap html and images
  in a multipart/mixed structure.
  (org-mime-htmlize): When images are present wrap html and images in
  a multipart/mixed structure.
2012-04-11 00:20:33 -04:00
Nicolas Goaziou 97d2db4867 org-element: Fix interpretation of affiliated keywords
* contrib/lisp/org-element.el (org-element-interpret--affiliated-keywords):
  Fix interpretation of affiliated keywords.
(org-element-interpret-data): If no `:post-blank' property is
specified, assumed there is no blank line or whitespace after the
element or object.
* testing/lisp/test-org-element.el: Add a test.
2012-04-10 23:53:11 +02:00
Nicolas Goaziou f188721692 org-element: Fix target interpretation
* contrib/lisp/org-element.el (org-element-target-parser): Fix
  docstring.
(org-element-target-interpreter): Fix target interpretation.
2012-04-08 18:19:17 +02:00
Nicolas Goaziou 2ff3da0f1a org-export: Fix footnotes bug in ODT export
* contrib/lisp/org-export.el (org-export-as): Reorder actions taken to
  fix footnotes bug in ODT export.
2012-04-07 15:14:58 +02:00
Nicolas Goaziou 8453ac1bf3 org-element: Remove dependency on org-footnote predicates
* contrib/lisp/org-element.el (org-element-footnote-definition-parser):
  Remove the need for `org-footnote-at-definition-p'.
  (org-element-footnote-reference-parser): Remove the need for
  `org-footnote-at-reference-p'.
(org-element-footnote-reference-successor): Do not use
`org-footnote-get-next-reference'.
* testing/lisp/test-org-element.el: Add test.
2012-04-06 23:50:00 +02:00
Nicolas Goaziou 4019559ee2 org-footnote: Don't grab trailing blank lines in a footnote definition
* lisp/org-footnote.el (org-footnote-at-definition-p): Don't grab
  trailing blank lines in a footnote definition.
(org-footnote-delete-definitions): Remove both footnote definition and
trailing blank lines.
* testing/lisp/test-org-export.el (test-org-export/fuzzy-links): Fix
  a docstring.
* contrib/lisp/org-element.el (org-element-footnote-definition-parser):
  Apply change to footnote definitions.
2012-04-06 19:14:51 +02:00
Bastien Guerry c9948bc906 Merge branch 'hotfix-7.8.06' 2012-04-02 16:02:53 +02:00
Bastien Guerry 9d01ca1bf3 org-checklist.el: Fix dynamically bound variable name.
* org-checklist.el (org-checklist): Fix dynamically bound
variable name.

Thanks to Bernt Hansen for reporting this.
2012-04-02 16:02:44 +02:00
Jambunathan K e917477005 (org-xhtml.el): Removed 2012-04-01 13:15:49 +05:30
Nicolas Goaziou 82281bcc94 org-element: Fix bug with `greater-element' granularity
* contrib/lisp/org-element.el (org-element-parse-elements): Enter
  section type elements even if granularity is set to
  `greater-element'.
(org-element-parse-buffer): Update doc-string.
* testing/lisp/test-org-element.el: Add test.
2012-03-28 17:29:14 +02:00
Nicolas Goaziou bb671936b5 org-element: Speed up parsing when granularity is bigger than default
* contrib/lisp/org-element.el (org-element-headline-parser,
  org-element-inlinetask-parser, org-element-item-parser,
  org-element-verse-block-parser, org-element-current-element): New
  optional argument so parsing of secondary string is not mandatory.
(org-element-parse-elements): Remove duplicate part from doc-string.
(org-element-at-point): Improve speed of function since secondary
string are never parsed.
(org-element-secondary-value-alist): Simplify doc-string.
* testing/lisp/test-org-element.el: Add test.
2012-03-28 16:31:56 +02:00
Nicolas Goaziou 763991fbda org-element: Store keywords in upper cases
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii-keyword): Apply keywords
  case change.
* EXPERIMENTAL/org-e-html.el (org-e-html-keyword): Apply keywords case
  change.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-keyword): Apply keywords
  case change.
* EXPERIMENTAL/org-e-odt.el (org-e-odt-keyword): Apply keywords case change.
* contrib/lisp/org-element.el (org-element-export-block-parser):
  Internally store type in upper cases.
(org-element-keyword-parser): Internally store keyword `:key' property
in upper cases.
(org-element-non-recursive-block-alist,
org-element-affiliated-keywords,
org-element-keyword-translation-alist, org-element-multiple-keywords,
org-element-parsed-keywords, org-element-dual-keywords):
Use uppercased keywords.
(org-element-current-element): Use uppercase for keywords.
(org-element-collect-affiliated-keywords): Store affiliated keywords
in upper cases.
* contrib/lisp/org-export.el (org-export-get-inbuffer-options,
  org-export-collect-tree-properties, org-export-resolve-fuzzy-link):
  Use upper cased keywords.
* testing/lisp/test-org-export.el: Update tests.
2012-03-28 14:27:15 +02:00