* contrib/lisp/org-export.el (org-export-async-stack,
org-export-async-debug, org-export-in-background,
org-export-async-init-file, org-export-stack-mode-map): New
variables.
(org-export-async-start): New macro.
(org-export--stack-source-at-point, org-export--stack-refresh,
org-export-add-to-stack, org-export--stack-remove,
org-export--stack-view, org-export--stack-clear,
org-export-stack, org-export-copy-buffer,
org-export--generate-copy-script): New functions.
(org-export-dispatch, org-export-dispatch-ui): Allow to toggle
asynchronous export.
(org-export-with-buffer-copy): Renamed from
`org-export-with-current-buffer-copy'.
(org-export-execute-babel-code): Use new function to copy a buffer.
(org-export-as): Remove all text properties from output so it still
can be sent to the original process.
* contrib/lisp/org-e-html.el (org-e-html-fontify-code): Activating
major mode before inserting contents avoid problem of initial
visibility for an Org buffer.
* contrib/lisp/org-export.el (org-export-get-previous-element,
org-export-get-next-element): Allow to retrieve all previous/next
exportable objects by specifying a non-nil, non positive integer
argument.
* testing/lisp/test-org-export.el: Add tests.
* contrib/lisp/org-e-latex.el (org-e-latex--math-table): Contiguous
tables sharing the same math mode are wrapped within the same
environment.
This patch will allow to write:
#+label: I_2
#+attr_latex: :mode math :environment bmatrix
| a | b |
|---+---|
| c | d |
#+attr_latex: :mode math :environment bmatrix :math-prefix "\\times"
| 1 | 0 |
|---+---|
| 0 | 1 |
#+attr_latex: :mode math :environment bmatrix :math-prefix "="
| 1 | 0 |
|---+---|
| 0 | 1 |
#+attr_latex: :mode math :environment bmatrix :math-prefix "\\times"
| a | b |
|---+---|
| c | d |
#+attr_latex: :mode math :environment bmatrix :math-prefix "="
| a | b |
|---+---|
| c | d |
and get:
\begin{equation}
\label{I_2}
\begin{bmatrix}
a & b \\
c & d \\
\end{bmatrix}
\times\begin{bmatrix}
1 & 0 \\
0 & 1 \\
\end{bmatrix}
=\begin{bmatrix}
1 & 0 \\
0 & 1 \\
\end{bmatrix}
\times\begin{bmatrix}
a & b \\
c & d \\
\end{bmatrix}
=\begin{bmatrix}
a & b \\
c & d \\
\end{bmatrix}
\end{equation}
* contrib/lisp/org-e-ascii.el (org-e-ascii-timestamp): Use new tool.
* contrib/lisp/org-e-groff.el (org-e-groff-timestamp): Use new tool.
* contrib/lisp/org-e-html.el (org-e-html-timestamp): Use new tool.
* contrib/lisp/org-e-latex.el (org-e-latex-timestamp): Use new tool.
* contrib/lisp/org-e-texinfo.el (org-e-texinfo-timestamp): Use new
tool.
* contrib/lisp/org-e-latex.el (org-e-latex--inline-image): Rename from
`org-e-latex-link--inline-image'. Use new attributes.
(org-e-latex-link): Use new function.
* contrib/lisp/org-e-latex.el (org-e-latex-table-matrix-macros,
org-e-latex-default-table-mode): New variables.
(org-e-latex-tables-verbatim): Removed variable.
(org-e-latex-tables-booktabs): Update docstring.
(org-e-latex--align-string, org-e-latex--org-table,
org-e-latex--table.el-table): Rename functions from, respectively
`org-e-latex-table--align-string', `org-e-latex-table--org-table' and
`org-e-latex-table--table.el-table'. Use new attributes.
(org-e-latex-table,org-e-latex-table-row): Use new attributes.
(org-e-latex--math-table): New function.
(org-e-texinfo--generate-menu-items): Use optional title in menu if
present.
(org-e-texinfo-headline): Use optional title in node entry if present.
(org-e-texinfo--generate-menu-list): Omit headlines with :noexport:
tag when generating menu entries.
* contrib/lisp/org-export.el (org-export--get-subtree-options): Store
value of options with `split' behaviour as a list of strings, not
simply as a string. Small refactoring.
* testing/lisp/test-org-export.el: Add tests.
* contrib/lisp/org-e-beamer.el (org-e-beamer-environments-special):
Add "fullframe" environment. Change access key for "againframe".
(org-e-beamer--frame-level): "fullframe" environment also sets the
frame level for the tree.
(org-e-beamer--format-frame): Ignore headline title when environment
is "fullframe".
(org-e-beamer-select-environment): Change access key for "againframe".
* contrib/lisp/org-e-beamer.el (org-e-beamer-environments-special):
Add "columns" as a new special environment.
(org-e-beamer--format-block): Allow options in columns environment
when explictly requested as a BEAMER_env property. Small refactoring.
* contrib/lisp/org-e-latex.el: Floating tables get a \centering
declaration, otherwise the table get wrapped in \begin{center}
and \end{center} environment.
Thanks to Andreas Leha for reporting it.
TINYCHANGE
* contrib/lisp/org-export.el (org-export-define-derived-backend): Add
`:parent' property to derived backend.
(org-export-derived-backend-p): New function.
* testing/lisp/test-org-export.el: Add tests.
This function can be useful in filters implemation. I.e.
(defun my-filter (contents backend info)
(when (memq backend '(e-latex e-beamer some-derived-backend-from-latex))
...))
can be replaced with:
(defun my filter (contents backend info)
(when (org-export-derived-backend-p backend 'e-latex)
...))