* lisp/ox-publish.el: (org-publish-find-title) (org-publish-find-date)
Fix unnecessary invocations of org-mode with
org-inhibit-startup.
The functions above call org-mode with org-inhibit-startup in org
buffers that are already open. The result is that these open buffers
lose some crucial local variables during publishing. For instance,
an open buffer will lose its dir-local-variables-alist setting
during publishing. There is no need to call org-mode here, because
org-mode is a) either already initialized in the buffer or b)
initialized via earlier call to find-file-no-select.
This looks to me like a relic of some past time when these functions were
called in temporary buffers that contained copies of the file's contents.
* lisp/ox-publish.el (org-publish-find-title):
Fix (invalid-read-syntax "#").
Since 8e1386cead,
`org-element-interpret-data' no longer trims text properties attached
to strings. We need to remove them before writing the title into the
cache, as text properties are not readable.
* lisp/ox-publish.el (org-publish-cache-ctime-of-src): Return an error
when publishing a non-existent file.
Suggested-by: Arne Babenhauserheide <arne_bab@web.de>
* lisp/ox-publish.el (org-publish-find-title): Fix title when no
#+TITLE property is provided.
* lisp/ox.el (org-export-store-default-title): Remove-function.
(org-export--default-title): Remove variable.
(org-export-options-alist): Do not use a default value.
(org-export--get-buffer-attributes): Store a default title.
(org-export-as): Apply function removal.
(org-export--get-global-options): Do not set a property with an
explicitely nil value.
* lisp/ox-publish.el (org-publish-sitemap-sort-files,
org-publish-sitemap-sort-folders, org-publish-sitemap-ignore-case,
org-publish-sitemap-requested, org-publish-sitemap-date-format,
org-publish-sitemap-file-entry-format): Set prefix to
"org-publish-sitemap" instead of "org-sitemap".
(org-publish-compare-directory-files, org-publish-get-base-files-1,
org-publish-projects, org-publish-format-file-entry): Use new prefix.
* lisp/ox-publish.el (org-publish-find-date): Also return date for
directories.
(org-publish-get-base-files-1): Fix :recursive parameter ignoring
extension restriction.
* lisp/ox-publish.el (org-publish-find-date): Fix "bad timestamp"
error with some DATE values: :date property in communication channel
is no longer a string.
* ox-publish.el (org-publish-org-to)
(org-publish-org-sitemap, org-publish-find-title)
(org-publish-find-date)
(org-publish-cache-file-needs-publishing): Set
`org-inhibit-startup' to t when visiting files for
publication.
Thanks to Samuel Wales for this idea.
* lisp/ox-publish.el (org-publish-resolve-external-fuzzy-link): No
error when resolving external fuzzy links outside publishing. Though
search option for these links will not be resolved.
* lisp/ox-publish.el (org-publish-collect-numbering,
org-publish-resolve-external-fuzzy-link): New functions.
(org-publish-org-to): Add new collecting function to final output
filter. Move index collecting function to the same filter.
(org-publish-collect-index): Called from final output filter.
An external fuzzy link is: [[file.org::*headline search]]
* lisp/ox-publish.el (org-publish-index-generate-theindex): Do not
create an "* Index" headline in "theindex.inc". Though, create an
"Index" title in fallback "theindex.org".
* lisp/ox.el (org-export-install-filters): Properly install filters
send through ext-plist mechanism.
* lisp/ox-publish.el (org-publish-org-to): Small refactoring.
* lisp/ox-html.el (org-html-keyword): Remove INDEX keyword handling.
ox-publish.el takes care of it already.