* lisp/org.el (org-entry-get): Widen buffer in order to retrieve
properties, as `org-entry-properties' and
`org-entry-get-with-inheritance' already do.
* lisp/org.el (org-entry-get): Widen buffer in order to retrieve
a property, as both `org-entry-properties' and
`org-entry-get-with-inheritance' already do.
* lisp/org.el (org-mode): Call `hack-local-variables'
at the end of `org-mode' to set file local variables.
Cribbed from `normal-mode'.
Reported by Tom Dye: C-c C-c on e.g an #+OPTIONS line
would lose file local variable settings.
* lisp/org.el (org-clock-string, org-closed-string)
(org-deadline-string, org-scheduled-string)
(org-archive-tag, org-comment-string, org-quote-string)
(org-effort-property, org-latex-regexps): Turn variables into
constants.
* testing/lisp/test-org-element.el: Update tests.
* testing/lisp/test-ox.el: Update tests.
Also collect all syntax related constants in the same part of the
file.
* lisp/ob-C.el, lisp/ob-clojure.e: Require 'cl at compile-time.
* lisp/ob-tangle.el: Do not require 'cl at compile time.
* lisp/org-agenda.el: Declare function `org-columns-remove-overlays´.
* lisp/org.el: Declare functions `org-clocktable-shift´,
`org-clock-update-time-maybe´, `org-clock-remove-overlays´,
`org-babel-tangle-file´, `org-table-blank-field´,
`org-table-insert-row´, `org-add-archive-files´, `org-table-begin´,
`org-table-end´. Move defsubst `org-uniquify´ before its many uses.
* lisp/ox.el: Move defsubst `org-export-get-parent´ before its many
uses.
* org-macs.el (org-autoload): Delete.
* org-docview.el ("docview"): Fix declarations and require
doc-view directly.
* org-id.el (org-id-copy)
(org-id-get-with-outline-path-completion)
(org-id-get-with-outline-drilling, org-id-new):
* org-colview.el:
(org-colview-initial-truncate-line-value)
(org-columns-open-link, org-string-to-number):
* org-clock.el:
(org-clock-put-overlay, org-count-quarter, org-clock-loaded):
* org-archive.el (org-get-local-archive-location):
* org-agenda.el (org-agenda-todo-custom-ignore-p):
Autoload.
Those functions were autoloaded from within calls to `org-autoload'
in org.el, we now autoload them from where they live.
* ox.el (org-export-async-init-file): Use :set to set the
default value.
* ox-texinfo.el (org-texinfo-filename): Fix default value.
(org-texinfo-format-headline-function): Use 'ignore as the
default value.
(org-texinfo-format-drawer-function): Use a function as the
default value. Update docstring.
(org-texinfo-drawer): Always use
`org-texinfo-format-drawer-function' as it is now a function
by default.
(org-texinfo-headline): Compare
`org-texinfo-format-headline-function' against 'ignore.
(org-texinfo-inlinetask): Compare
`org-texinfo-format-inlinetask-function' against 'ignore.
* ox-odt.el (org-odt-format-drawer-function): Use a function
as the default value. Update docstring.
(org-odt-format-headline-function)
(org-odt-format-inlinetask-function): Fix default value.
(org-odt-with-latex): Use :set to set the default value.
(org-odt-drawer): Always use `org-odt-format-drawer-function'
as it is now a function by default.
(org-odt-format-headline--wrap): Compare
`org-odt-format-headline-function' against 'ignore.
* ox-latex.el (org-latex-format-drawer-function): Use a
function as the default value. Update docstring.
(org-latex-format-inlinetask-function): Fix default value.
(org-latex-drawer): Always use
`org-latex-format-drawer-function' as it is now a function by
default.
(org-latex-inlinetask): Compare
`org-latex-format-inlinetask-function' against 'ignore.
* ox-html.el (org-html-format-drawer-function): Use a
function as the default value. Update docstring.
(org-html-format-headline-function)
(org-html-format-inlinetask-function): Fix default value.
(org-html-with-latex): Use :set to set the default value.
(org-html--format-toc-headline)
(org-html-format-headline--wrap): Compare
`org-html-format-headline-function' against 'ignore.
(org-html-inlinetask): Compare
`org-html-format-inlinetask-function' against 'ignore.
* ox-ascii.el (org-ascii-format-drawer-function): Use a
function as the default value. Update docstring.
(org-ascii-drawer): Always use
`org-ascii-format-drawer-function' as it is now a function by
default.
(org-ascii-format-inlinetask-default): New function.
(org-ascii-format-inlinetask-function): Use
`org-ascii-format-inlinetask-default' as the default.
* org.el (org-mouse-1-follows-link): Use :set to set the
default value. Update custom type.
(org-log-note-headings): Fix order or list items in the custom
type.
(orgstruct-heading-prefix-regexp): Use an empty string as the
default value. Use 'regexp as the custom type.
(orgstruct-make-binding): Tiny docstring enhancement. Assume
`orgstruct-heading-prefix-regexp' is a string.
* org-agenda.el (org-agenda-search-view-max-outline-level):
Set default value to 0. Update docstring.
(org-agenda-deadline-leaders): Fix custom type.
(org-search-view): Assume
`org-agenda-search-view-max-outline-level' is a number.
* ob-ruby.el (org-babel-ruby-nil-to): Fix custom type.
* ob-python.el (org-babel-python-mode): Use :set to set the
default value.
(org-babel-python-None-to): Fix custom type.
* ob-plantuml.el (org-plantuml-jar-path): Fix default value.
(org-babel-execute:plantuml): Assume `org-plantuml-jar-path'
is a string.
* ob-latex.el (org-babel-latex-htlatex): Fix default value.
(org-babel-latex-htlatex-packages): Fix custom type.
(org-babel-execute:latex): Assume `org-babel-latex-htlatex' is
a string.
Thanks to Glenn Morris for reporting this.
* org.el (org-get-indirect-buffer): New optional argument
`heading'. Use it to name the indirect buffer after the
heading the subtree, if any.
(org-tree-to-indirect-buffer): Use the new argument.
Thanks to Karl Voit for suggesting this.
* org.el (org-cancel-repeater): New function.
(org-todo): Use the new function to cancel a repeater when
called with a numeric arg of -1.
Thanks to Kenneth Jacker for requesting a similar feature.
* org.el (org-directory, org-default-notes-file)
(org-reverse-note-order): Don't use the `org-remember'
customization group.
(org-require-autoloaded-modules): Don't require
`org-remember'.
* org-capture.el: Update commentary section to reflect the
fact that org-remember.el is not used anymore.
* org.el (org-open-file): Reveal context around point when
opening a link to an Org file with a line number.
Thanks to François Pinard for suggesting this.
* lisp/org.el (org-insert-comment, org-comment-or-uncomment-region):
Use `org-element-at-point' instead of `org-in-src-block-p' to check
if we're within a source block.
* testing/lisp/test-org.el: Add test.
* lisp/org.el (org-set-tags): Width of strings presenting on a buffer
should be calculated with `string-width' instead of `length'.
This fixes unaligned tags for the languages with multi-width
characters.
TINYCHANGE
* org.el (org-sort-entries): Mention the
`org-after-sorting-entries-or-items-hook' hook in the
docstring.
Thanks to Andreas Röhler for suggesting this.
* lisp/org.el (org-insert-comment, org-comment-or-uncomment-region):
use the relevant language’s major mode comment function if called from
within a source block.
This patch makes it easier to (un)comment lines of babel source. Now
M-; in a soucre code block should Just Work.
The modification to ‘org-insert-comment’ also fixes a bug, whereby the
function would eat blank lines after it. The first block, where ! is
the point, would lead to the second instead of the third:
#+name: orig
#+begin_src org
xxxxxxx
!
yyyyyy
#+end_src
#+name: bad
#+begin_src org
xxxxxxx
#
yyyyyy
#+end_src
#+name: desired
#+begin_src org
xxxxxxx
#
yyyyyy
#+end_src
Also, the ‘org-comment-or-uncomment-region’ change results in an
undesirably move of the point after the comment is created. This is
because ‘comment-region’ wraps the call to ‘comment-region-function’
in a ‘save-excursion’. The org mode code deletes and reinserts the
whole babel block, which confuses save-excursion. Org carefully puts
the point back in the proper place, but comment-region’s
save-excursion then substitutes its own erroneous placement.