* contrib/lisp/org-export.el (org-export-dispatch-ui): Make sure that
window displaying UI is tall enough. This fixes a bug where only
a part of the menu was displayed.
* contrib/lisp/org-e-latex.el (org-e-latex-compile): Fix compilation
when default-directory from current buffer doesn't match directory
from file being compiled. Small refactoring, too.
Thanks to Robert Klein for reporting the problem and suggesting a fix.
* contrib/lisp/org-export.el (org-export-dispatch-use-expert-ui):
Complete docstring.
(org-export-dispatch): Fix docstring. Clean dispatch buffer, if any,
each time the function is called.
(org-export-dispatch-ui): Make sure window containing dispatch buffer
is active when user is prompted for a key. Also remove cursor from
view.
(org-export-dispatch-action): Ring a bell when a wrong key is pressed.
In regular UI, also inform the user by a message.
* contrib/lisp/org-export.el (org-export-as): Expand include keywords
before macros. This allows to specify macro templates in the
included file.
* testing/examples/macro-templates.org: New file for testing purposes.
* testing/lisp/test-org-export.el: Add test.
* contrib/lisp/org-e-ascii.el (org-e-ascii-publish-to-ascii,
org-e-ascii-publish-to-latin1, org-e-ascii-publish-to-utf8): New
functions.
* contrib/lisp/org-e-html.el (org-e-html-publish-to-html): New
function.
* contrib/lisp/org-e-latex.el (org-e-latex-publish-to-latex,
org-e-latex-publish-to-pdf): New functions.
* contrib/lisp/org-e-publish.el (org-e-publish-org-to-latex,
org-e-publish-org-to-pdf, org-e-publish-org-to-ascii,
org-e-publish-org-to-latin1, org-e-publish-org-to-utf8,
org-e-publish-org-to-html): Remove functions.
Each back-end can define its own publishing functions. This patch
avoids to clutter org-e-publish.el.
* contrib/lisp/org-e-publish.el (org-e-publish-org-to-pdf): Don't
expect every file from a project to sit in :base-directory.
(org-e-publish-org-to): Make publishing directory optional.
* contrib/lisp/org-export.el: Correct reference to non-existing source
file, org-exp-blocks has been removed and the imported function is
now in ob-exp.
* contrib/lisp/org-export.el (org-export-define-backend,
org-export-define-derived-backend): Make sure a given entry won't be
added to menu more than once.
* contrib/lisp/org-e-publish.el (org-e-publish-org-to-pdf): First
publish in base directory, then move results to publishing
directory. It allows to correctly publish a document with images
generated by some Babel code.
* contrib/lisp/org-export.el (org-export-expand-macro): New function.
(org-export-as): Use new function.
* lisp/org.el (org-macro-expand, org-macro-replace-all): Change
signature. The function now accepts an alist of templates so it
doesn't have to rely only on `org-macro-templates'.
(org-macro-initialize-templates): {{{date}}} is not anymore an alias
for {{{time}}}. During export, it will provide the value stored in
DATE keyword instead.
* testing/lisp/test-org-export.el: Add tests.
* testing/lisp/test-org.el: Update tests.
* contrib/lisp/org-export.el (org-export-expand-include-keyword): Use
new functions to comma escape contents of included files when in an
example or a src block.
* 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.
* lisp/org-element.el (org-element-example-block-parser,
org-element-src-block-parser): Store value of example-blocks and
src-blocks unescaped.
(org-element-example-block-interpreter,
org-element-src-block-interpreter): Escape value again when storing
it.
* contrib/lisp/org-export.el (org-export-unravel-code): Don't clean
commas from code since org-element already took care of it.
* testing/lisp/test-org-export.el: Update test.
* testing/lisp/test-org-element.el: Add tests.
* lisp/org-element.el (org-element-object-restrictions): Allow links
in caption. Also allow inline-src-blocks and inline-babel-calls.
* contrib/lisp/org-e-ascii.el (org-e-ascii--unique-links): Handle
links in captions.
(org-e-ascii--describe-links): Small refactoring.
(org-e-ascii-template--document-title): Handle links in document
properties.
* lisp/org-element.el (org-element-parsed-keywords): Remove document
properties from the value.
(org-element-dual-keywords): Fix docstring.
(org-element-document-properties): New variable
* contrib/lisp/org-export.el (org-export--get-subtree-options,
org-export--get-inbuffer-options, org-export--get-global-options):
Use new variable instead of parsed keywords.
* contrib/lisp/org-e-ascii.el (org-e-ascii-indented-line-width,
org-e-ascii-paragraph-spacing): New variables.
(org-e-ascii-paragraph): Use a new variable.
(org-e-ascii-filter-paragraph-spacing): New function.