* lisp/ox-publish.el: (org-publish-find-title) (org-publish-find-date)
Make sure to call org-export-get-environment in copy of buffer if
emacs is already visiting. Otherwise, #+bind variables meant for
export can be set in live buffers.
This patch also optimizes the above functions by inhibiting
org-startup on buffers emacs visits temporarily.
* 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.el (org-export-raw-special-block-p): New function.
* testing/lisp/test-ox.el (test-org-export/raw-special-block-p): New
test.
This patch is a forward-compatibility measure since the function is
mandatory for export back-ends in Org 8.3. It makes it easier for
back-end maintainers to provide a back-end compatible with both Org
8.2 and 8.3.
* lisp/org-element.el (org-element-parse-secondary-string): Clone all
local variables from current buffer before parsing a secondary
string. Small refactoring.
(org-element-object-variables): Remove variable.
* testing/lisp/test-org-element.el (test-org-element/secondary-string-parsing):
Add test.
Thanks to Thomas S. Dye for reporting it.
http://permalink.gmane.org/gmane.emacs.orgmode/88850
* lisp/org-clock.el (org-clocktable-indent-string): Use "\emsp"
instead of "\__", which is not supported anymore since Org 8.0.
Thanks to Buddy Butterfly for reporting it.
http://permalink.gmane.org/gmane.emacs.orgmode/88842
* lisp/ox-odt.el (org-odt--paragraph-style): New function.
(org-odt--format-paragraph): Use new function to get proper style to
apply.
Thanks to Baptiste for reporting it.
http://permalink.gmane.org/gmane.emacs.orgmode/88798
* org-table.el (org-table-clean-before-export): The regexes match
spaces in addition to the special characters that might be used in
the first column as special marking characters. Remove the space
from the character class.
In addition, the `special' variable included a backslash which
afaict does nothing: delete it.
The function itself takes an optional parameter which is not used by
any of the callers: get rid of it. Getting rid of it allows a small
simplification of the code.
The bug was found by Thorsten Grothe:
http://thread.gmane.org/gmane.emacs.orgmode/88634
* org.el (org-insert-heading): With one universal prefix
argument or `org-insert-heading-respect-content' set to `t',
always respect the content, i.e. don't insert a list item and
don't convert normal lines into headings. Update docstring.
(org-insert-heading-respect-content): Remove unused arg.
(org-insert-todo-heading-respect-content): Don't use
`org-insert-todo-heading-respect-content', use the second
argument of `org-insert-todo-heading' instead.
* org-mobile.el (org-mobile-edit): Use only one arg.
Thanks to Bernt Hansen for reporting this.
* lisp/org.el (org-insert-heading): Fix error when inserting
a headline before first headline, with point not at bol. Remove
source block check for consistency with behavior after first
headline. Tiny fix to docstring.
* testing/lisp/test-org.el (test-org/meta-return): Remove unnecessary
test (not testing specifications).
(test-org/insert-heading): New test.
* lisp/ox.el (org-export--get-inbuffer-options): Return the empty
string instead of nil when TITLE keywords has no value.
(org-export--get-buffer-attributes): Do not set :title property
early.
(org-export--get-global-options): Do not ignore anymore nil values.
Small refactoring.
(org-export-as): Correctly set :title here.
Thanks to Nicolas Richard for reporting it.
http://permalink.gmane.org/gmane.emacs.orgmode/87149
* org.el (org-property-re): Also match null properties by
default.
(org-entry-delete): Also delete null properties.
(org-read-property-value): Allow the empty string as a new
value.
(org-delete-property): Throw a message when there is not
property to delete.
Thanks to Andrea Rossetti for reporting this.
* org.el (org-re-property): New parameter `allow-null' to
match property with a null value.
(org-entry-put): Correctly update a property with a null
value.
Thanks to Andrea Rossetti for reporting this and suggesting a fix.