* org-e-odt.el (org-e-odt-styles-dir): Try more directories.
Don't throw an error, just send a message.
(org-e-odt): Fix a bug about deactivating an advice that was
activated by org-odt.el, not org-e-odt.el.
Thanks to Nick Dokos for reporting this.
Handle enumeration more robustly. Numbered OpenDocument formula no
longer uses a table for typesetting of formula and it's number.
Also some renaming and moving around.
* contrib/lisp/org-e-ascii.el: Add an entry for `org-export-dispatch'.
* contrib/lisp/org-e-beamer.el: Add an entry for `org-export-dispatch'.
* contrib/lisp/org-e-groff.el (e-groff): Use
`org-export-define-backend'. Add an entry for `org-export-dispatch'.
* contrib/lisp/org-e-html.el: Add an entry for `org-export-dispatch'.
* contrib/lisp/org-e-latex.el: Add an entry for `org-export-dispatch'.
* contrib/lisp/org-e-man.el: Use `org-export-define-backend'. Add an
entry for `org-export-dispatch'.
* contrib/lisp/org-e-odt.el: Add an entry for `org-export-dispatch'.
* contrib/lisp/org-e-texinfo.el: Use `org-export-define-backend'. Add an
entry for `org-export-dispatch'.
* contrib/lisp/org-md.el: Add an entry for `org-export-dispatch'.
* contrib/lisp/org-e-odt.el (org-e-odt--translate-description-lists):
This is a developer filter, which should be handled by
`org-export-define-backend'. Also, such filters do not require
a back-end check.
`org-export-*-functions' are user-oriented variables.
A list marked with non-nil `:list-table' attribute will be deemed as a
list-table. A typical list-table will look like this:
,----
| #+attr_odt :list-table t
| - Row 1
| - 1.1
| - 1.2
| - 1.3
| - Row 2
| - 2.1
| - 2.2
| - 2.3
`----
Also fix regression in indented table caused by recent `section'
changes.
* contrib/lisp/org-export.el (org-export-define-backend): Update
docstring.
(org-export-special-keywords): Remove "MACRO".
(org-export--get-inbuffer-options, org-export--get-buffer-attributes):
Remove internal macro handling.
(org-export-as): Use external tool instead.
(org-export-expand-macro): Remove function.
* contrib/lisp/org-e-ascii.el (org-e-ascii-macro): Remove function.
* contrib/lisp/org-e-groff.el (org-e-groff-macro): Remove function.
* contrib/lisp/org-e-html.el (org-e-html-macro): Remove function.
* contrib/lisp/org-e-latex.el (org-e-latex-macro): Remove function.
* contrib/lisp/org-e-man.el (org-e-man-macro): Remove function.
* contrib/lisp/org-e-odt.el (org-e-odt-macro): Remove function.
* contrib/lisp/org-e-texinfo.el (org-e-texinfo-macro): Remove
function.
* testing/lisp/test-org-export.el: Remove tests.
Since macros are now expanded before parsing (and produce Org syntax),
back-ends will never see them (unless NO-EXPAND argument from
`org-export-as' is non-nil, which isn't the case for any back-end so
far).
1. Use element translation for description lists.
2. Handle low-level headlines.
3. Handle tables within listified headlines.
Some crude changes for creating references to a list item.
Also other misc changes.
* lisp/org-element.el (org-element-link-type-is-file): New variable.
(org-element-link-parser): Extract search option and application in
"file"-type links.
* contrib/lisp/org-e-html.el (org-e-html-link): Remove components
extraction since this in now done in `org-element-link-parser'.
* contrib/lisp/org-e-odt.el: Remove components extraction since this
in now done in `org-element-link-parser'.
* contrib/lisp/org-e-texinfo.el (org-e-texinfo-link): Remove
components extraction since this in now done in
`org-element-link-parser'.
* contrib/lisp/org-e-latex.el (org-e-latex-link): Remove components
extraction since this in now done in `org-element-link-parser'.
* contrib/lisp/org-e-man.el (org-e-man-link): Remove components
extraction since this in now done in `org-element-link-parser'.
* contrib/lisp/org-e-groff.el (org-e-groff-link): Remove components
extraction since this in now done in `org-element-link-parser'.
* contrib/lisp/org-md.el (org-md-link): Remove components extraction
since this in now done in `org-element-link-parser'.
* testing/lisp/test-org-element.el: Add tests.
* 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.
* 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.
* 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.
- 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.