* lisp/org-footnote.el (org-footnote-new): use ido or iswitchb when
available when prompted for a label. Also rename a local variable to
avoid confusion with an existing function.
* org.el (org-back-over-empty-lines): Don't move line upward if point
is at eob.
Fixes a bug with refiling reported by Bernt Hansen, simplified version
of fix proposed by Jason Dunsmore.
* lisp/org-footnote.el (org-footnote-in-valid-context-p): check
`org-protected' property before allowing to match a footnote.
(org-footnote-at-reference-p): remove an obsolete test. It's now done
in the previous function.
* lisp/org.el (org-between-regexps-p): previous name implied the
function was related to blocks, which isn't mandatory.
(org-narrow-to-block, org-in-block-p, org-indent-line-function):
applied the rename.
* lisp/ob-exp.el (org-babel-in-example-or-verbatim): applied
rename. Also removed a white space.
* lisp/org.el (org-in-regexps-block-p): return an useful value when
point is between START-RE and END-RE. No incomplete block is allowed
anymore. Add another optional argument to bound the bottom part of
the search.
(org-narrow-to-block, org-in-block-p): apply modifications.
* lisp/org-footnote.el (org-footnote-next-reference-or-definition): if
no more footnote is found, be sure to go back to the original
position. Otherwise, point might be left on a footnote-like element
that has been dished out.
* lisp/ob-keys.el (org-babel-key-bindings): Bound to C-c C-v k.
* lisp/ob.el (org-babel-map-regexp): New generic mapping macro.
(org-babel-map-inline-src-blocks): Rewritten to use new macro.
(org-babel-kill-results): Remove some or all results in the current
file.
* lisp/ob-lob.el (org-babel-map-call-lines): Map over all lob call
lines in the current file.
* doc/orgcard.tex: Document new keybinding.
Deleting .orgx files is an error -- thanks to Carsten for pointing
at this. Instead, we "hide" them by using dotted files: .file.orgx.
Also, use theindex.org directly instead of including theindex.inc in
theindex.org. This prevents a bug about republication of theindex.org
being skipped because the file has not been updated.
* org-publish.el (org-publish-index-generate-theindex): rename
from `org-publish-index-generate-theindex.inc'. Use the file
theindex.org directly instead of including theindex.inc.
(org-publish-projects): Don't delete .orgx files.
(org-publish-aux-preprocess): Use .file.orgx.
This is needed for the HTML file to interact correctly with
org-info.js. On the long term, the title should be part of
the preamble, but this requires work on org-info.js.
* org-html.el (org-export-html-preamble-format): New default
for the HTML preamble: don't include the title. Also improve
the docstring.
(org-export-html-postamble-format): Improve the docstring.
(org-export-as-html): Add the title within the "content" div.
This is necessary for interaction with the org-info.js script.
Also add the org- prefix to some variable.
* org-publish.el (org-publish-find-title): bugfix: kill
buffers unless they were already visited.
(org-sitemap-sort-files, org-sitemap-sort-folders)
(org-sitemap-ignore-case, org-sitemap-requested)
(org-sitemap-date-format, org-sitemap-file-entry-format): use
a correct prefix.
(org-publish-projects): Make sure to delete .orgx files.
(org-publish-index-generate-theindex.inc): Small docstring
fix.
This allows to display the output of duration computations
as a fraction of days, hours, minutes or seconds.
Thanks to Daniel E. Doherty for bringing up this need.
* org-table.el (org-table-duration-custom-format): New
defcustom to select output format of durations computations.
(org-table-time-seconds-to-string): Use the new variable.
(org-table-eval-formula): Allow `t' as a flag, on top of `T'.
`t' will use the custom output format defined in
`org-table-duration-custom-format.
* lisp/org-list.el: search blank lines down to the end of the item
instead of stopping at the item, in order to possibly match such
lines within the item.
This is useful when you want to use \url{link} instead of the default
\href{link}{path}.
Thanks to Henri-Paul Indiogine for bringing this up.
* org-latex.el (org-export-latex-href-format): docstring fix
to reflect the fact that you can use only one "%s".
(org-export-latex-links): allow `org-export-latex-href-format'
to have only one "%s".
* org-capture.el (org-capture-templates): docstring fix.
* org.texi (Template expansion): order template sequences in
the proper order.
Thanks to Philipp Möller for this fix.
* lisp/ob.el (org-babel-view-src-block-info): New function to inspect code blocks.
* lisp/ob-keys.el (org-babel-key-bindings): Key bindings for org-babel-view-src-block-info.
* doc/orgcard.tex: Documentation of new Babel function.
* org-exp.el (org-infile-export-plist): Handle recursively
included setup files. The value of the last included file
always takes precedence over previous values.
Thanks to Stefan Vollmar for signaling this bug.
* lisp/org.el (org-timestamp-change): keep point in the same category
when updating a time-stamp. This requires to be careful, as,
depending on the locale, name of day might change of length during
the process.
* lisp/org-footnote.el (org-footnote-create-definition): when skipping
already written footnotes definition, the algorithme would assume
each one was only one-line long.
* org-table.el (org-table-eval-formula): Fix bug when a
formula "range" is just one cell.
(org-table-time-string-to-seconds): don't check whether
we manipulate a string.
* lisp/org-exp.el (org-export-mark-list-end,
org-export-mark-list-properties): don't remove the ending regexp
when it consists in blank lines.
* lisp/org-list.el (org-list-parse-list): ditto, but remove it
completely when it isn't made of blank lines (i.e. during export process).
* org-table.el (org-table-time-string-to-seconds): match
either HH:MM:SS or HH:MM (instead of MM:SS).
Thanks to Gustav Wikström for suggesting this change.
(org-deadline, org-schedule): Improve docstrings.
(org-add-planning-info): Allow relative time like "-2d" or
"++2w" for the TIME argument.
The user can now call `org-schedule' and `org-deadline'
and use "+1d" to say that the task must be scheduled one
day later than today, or "++1d" to say that the task must
be scheduled one day later than the current SCHEDULED date,
if any.
This also works in agenda: you can select several entries
and reschedule them to +2d.
Thanks to Memnon Anon for insisting an finding a solution
for this!
* org.el (org-ctrl-c-ctrl-c-final-hook): New hook to be run
when `org-ctrl-c-ctrl-c' cannot do anything useful in the
given context.
Thanks to Paul Sexton for this idea.
`org-export-html-divs' contains '("preamble" "content" "postamble")
and is used to define the <div "%s"> for this parts of the HTML file.
This commit also obsolete some variables that are not useful anymore
as the file time-stamp can (should) be inserted through the postamble
or the preamble instead.
Thanks to Sébastian Vauban for a preliminary version of this patch!
* org-html.el (org-export-html-with-timestamp)
(org-export-html-html-helper-timestamp): These are obsolete
variables as of Org version 7.7 as you can already export the
timestamp from the preamble or the postamble.
(org-export-html-before-content-div): Delete variable.
(org-export-html-content-div): obsolete variable as of 7.7.
(org-export-html-divs): New variable to define divs used in
HTML export.
(org-export-as-html): Now the preamble and the postamble are
surrounded by a <div ...>. The name of the div is defined
through `org-export-html-divs'.
* org-table.el (org-table-eval-formula): Throw an error when
trying to replace complex range with invalid references.
Thanks to Ken Williams for pointing this out.
* lisp/org-macs.el (org-with-limited-levels): some functions, like
`org-back-to-heading', being deeply based on outline-mode, still
refer to `outline-regexp' instead of `org-outline-regexp'.
* org.el (org-refile-get-targets): new optional argument
`excluded-entries' to exclude entries from the targets.
(org-refile-get-location): From an org-mode buffer, exclude
current heading and subheadings from the list of targets when
org-refile-use-cache is nil.
Also remove some trailing whitespaces.
Thanks to Jason Dunsmore for this idea.
* lisp/org.el (org-timestamp-change): some locales don't use the same
length for date abbreviations. Set a marker at origin in case length
of new timestamp is different.
Thanks to Tom for analyzing this.
* lisp/org-archive.el (org-archive-subtree): while it might be
possible to archive an headline of a temporary buffer (i.e. not
visiting a file), it wouldn't be really sensical.
* lisp/org-archive.el (org-extract-archive-file,
org-extract-archive-heading, org-archive-subtree): buffer-file-name
is nil in an indirect buffer. Thus,
use (buffer-file-name (buffer-base-buffer)), which will, in any
case, return the file-name.
Thanks to Ilya Shlyakhter for reporting and analyzing this.
* lisp/org-capture.el (org-capture): if dired isn't loaded,
`dired-buffers' isn't defined, and %F will fail.
Thanks to Puneeth Chaganti for reporting this.
* lisp/org-footnote.el (org-footnote-in-valid-context-p): avoid cited
lines and headers in message-mode.
(org-footnote-at-reference-p): remove check for cited lines, this is
now handled by the previous function. Refactor.
* lisp/org-capture.el (org-capture): if no file is associated to
current buffer, check dired buffer and try to retreive a possibly
directory associated.
`org-outline-regexp' ought to be a defconst but is let-binded
in some places -- e.g. see the macro `org-with-limited-levels'
and this produces misleading warnings.
Thanks to Matthew Sauer for reporting this.
* lisp/ob-exp.el (org-babel-exp-results): Resolve hashes in the
current (not original) file buffer.
* lisp/ob.el (org-babel-current-result-hash): More informative name,
and remove useless optional argument.
* lisp/org-footnote.el (org-footnote-at-reference-p): test if match is
in cited text, when replying to a message.
(org-footnote-new): do not create a new footnote at bol, as it might
be seen as a definition.
(org-footnote-at-definition-p): ignore definitions in forbidden
blocks, as it is already the case for references.