* contrib/lisp/org-export.el (org-export-initial-options): Initialize
correctly some macros when buffer is a clone.
(org-export-expand-macro): Ignore output when macro's value is nil.
* contrib/lisp/org-element.el (org-element-map): Remove included file
expansion part.
* contrib/lisp/org-export.el (org-export-as): Expand include keywords
before executing blocks.
(org-export-expand-include-keyword, org-export-prepare-file-contents):
New functions.
(org-export-included-file, org-export-parse-included-file): Removed
functions.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii-keyword): Remove include
keyword handling.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-keyword): Remove include
keyword handling.
Back-ends do not need anymore to take care of #+include keywords.
This change is required since file inclusion can potentially break any
structure. Hence, it should be done before parsing.
* contrib/lisp/org-export.el (org-export-with-current-buffer-copy):
Copy `outline-level' value in the temporary buffer. This fixes
a bug introduced by commit
10b06ae53c.
* contrib/lisp/org-export.el (org-export-get-inbuffer-options):
Replace macro with an empty string when no value is provided.
Ignore macros with an ill-formed key.
* contrib/lisp/org-export.el (org-export-option-alist): Add filters as
properties in the communication channel. This allows back-end
developers to install their own filters at run time instead of
making them reside in a global variable.
(org-export-data, org-export-as): Read filters from communication
channel instead of global variables.
(org-export-filter-apply-functions): Only accept list of functions.
Also change order of calling: it is now LIFO.
* contrib/lisp/org-export.el (org-export-collect-elements): Change
output to list of elements instead of their beginning position.
Also add an optional predicate argument for fine grain control.
Remove back-end argument.
(org-export-collect-tables, org-export-collect-listings): Apply
changes from previous function.
(org-export-collect-figures): Apply changes from previous function.
Also require a predicate to correctly define the concept of figure.
* contrib/lisp/org-export.el (org-export-get-ordinal): Correctly
handle predicate in `org-export-get-ordinal'. Also allow to count
more than one element type in the same sequence with optional
argument TYPES.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-export-to-latex,
org-e-latex-export-to-pdf): New functions.
* contrib/lisp/org-export.el (org-export-dispatch): Make use of new
functions.
* contrib/lisp/org-export.el (org-export-output-file-name): New function.
(org-export-to-file): Remove post-process and pub-dir arguments. Add
a file argument to specify an output file.
* contrib/lisp/org-export.el (org-export-collect-tree-properties):
Ensure `:headline-offset' is filled before `:headline-numbering'
since the latter depends on the former.
(org-export-collect-headline-numbering): Use headline elements as keys
in the returned alist, instead of just beginning numbers.
(org-export-get-headline-number): Apply key change.
* contrib/lisp/org-export.el (org-export-resolve-fuzzy-link): Now
return the full object (for a target) or element (for an headline)
when a match is found. Also rewrite internals so it doesn't rely
on :headline-alist.
(org-export-collect-tree-properties): Remove :headline-alist property
from communication channel, since `org-export-resolve-fuzzy-link'
doesn't use it anymore. Also store full target objects
in :target-list property, not only raw names. Fix an argument name
mismatch, too.
Previous version of org-export-resolve-fuzzy-link returned beginning
position as the identifier for the headline found, which is pretty
weak when files are included in the parsed buffer.
* contrib/lisp/org-export.el (org-export-handle-code): Allow to delay
processing of source code by storing line numbers and references in
text properties attached it.
* contrib/lisp/org-export.el (org-export-collect-options): Default
title is retrieved before in-buffer settings are read. Also, be
more careful about indirect buffers.
* contrib/lisp/org-element.el (org-element-map): Remove use of
`org-export-update-info'.
* contrib/lisp/org-export.el (org-export-persistent-properties,
org-export-persistent-properties-list): Remove variables
(org-export-collect-tree-properties): Rename from
`org-export-initialize-persistent-properties'.
(org-export-data): Get rid of `org-export-update-info' calls.
(org-export-as): Use new `org-export-collect-tree-properties' name.
(org-export-resolve-coderef, org-export-get-loc): New functions.
(org-export-handle-code): Use new functions instead of removed
properties. Reformat code. Change signature.
* contrib/lisp/org-export.el (org-export-update-info): No longer need
to keep it updated.
(org-export-collect-footnote-definitions,
org-export-footnote-first-reference-p): Get rid of dependency on the
removed property.
* contrib/lisp/org-export.el (org-export-table-format-info): Now
`:width' is properly retrieved with cookies where alignement is
missing (i.e. "<6>"). Also `:row-groups' contains groups of
standard lines only (colgroups and width lines are skipped).
* contrib/lisp/org-export.el (org-export-update-info): `:genealogy' is
now a full flat list of objects and elements containing current
object or element. Thus, `:parent-properties' and
`:inherited-properties' are now obsolete, and removed.
(org-export-data): Apply change to `:genealogy' property.
(org-export-get-parent-headline): New function to fullfil one common
need.
(org-export-last-sibling-p, org-export-included-file): Make use of the
new function.
* contrib/lisp/org-export.el (org-export-get-subtree-options):
Correctly get `:title: from headline when no "EXPORT_TITLE" property
is defined. Also assume point is at subtree beginning.
(org-export-as): Fix subtree parsing. The subtree starts at point or
at first heading above. Contents do not include the first headline.