* lisp/org.el (org-indent-region): BEGIN_SRC and END_SRC lines should
not be considered part of the source block for the purposes of
indentation.
TINYCHANGE
* lisp/org-element.el (org-element-latex-or-entity-successor,
org-element-latex-fragment-parser): Use `org-latex-regexps' instead
of `org-format-latex-options'.
* testing/lisp/test-org-element.el: Fix tests.
`org-latex-regexps' defines the correct syntax for LaTeX code within
an Org buffer. On the other hand, `org-format-latex-options'
determines which syntax can be previewed within the buffer.
* lisp/ox-odt.el (org-odt-line-break, org-odt-plain-text): Remove
newline after line-break tag.
The exporter was pretty-printing the ODT XML with newlines after
forced line breaks, but LibreOffice would interpret those as
spaces. This led to a leading space after every manual line break.
* lisp/ox-ascii.el: Remove comments at the beginning of the file since
the library is documented in Org manual.
* lisp/ox-beamer.el: Remove comments at the beginning of the file since
the library is documented in Org manual.
* lisp/ox-html.el: Remove comments at the beginning of the file since
the library is documented in Org manual.
* lisp/ox-icalendar.el: Remove comments at the beginning of the file since
the library is documented in Org manual.
* lisp/ox-md.el: Remove comments at the beginning of the file since
the library is documented in Org manual.
* lisp/org.el (org-ctrl-c-ctrl-c): When using C-c C-c at an item with
point on a link, make sure checkbox, if any, is toggled.
Reported-by: Christoph LANGE <math.semantic.web@gmail.com>
* lisp/ox-beamer.el (org-beamer--format-block): Return an error
message when using a special environment as a block type. Also
check for incomplete environment definitions.
* lisp/org-colview.el (org-dblock-write:columnview): Change the
capture of pos to after inserting the original content
The problem is with a block that has content preceding the table.
Upon recreating the content, the `pos' gets set to the beginning of
this content instead of the table. Later calls to
`org-table-recalculate' or `org-table-align' will fail because the
point is not at a table.
This patch moves the capture of `pos' to right before the insertion of
the table.
TINYCHANGE
Patch by Benjamin Beckwith
I suggest the following change so that C-u C-u C-c ! inserts an inactive
timestamp. I also document the INACTIVE argument of org-time-stamp.
--
Nicolas.
From 5cdb18297d92f2d99334d98aa2f3b8a40e44702f Mon Sep 17 00:00:00 2001
From: Nicolas Richard <theonewiththeevillook@yahoo.fr>
Date: Mon, 29 Apr 2013 09:02:21 +0200
Subject: [PATCH] Enforce the convention that C-c ! inserts inactive
timestamps.
* lisp/org.el (org-time-stamp): When INACTIVE is non-nil, insert an
inactive timestamp also with double universal argument.
* lisp/ox-texinfo.el (org-texinfo-export-to-texinfo): Use new style
backquoting.
(org-texinfo-export-to-info): Use new style backquoting.
Thanks to Mehul Sanghvi for the patch.
* lisp/org.el (org-insert-heading): Improve whitespace behavior at
end of subtree.
In a subtree with lots of empty space at the end, until now the new
entry would be inserted after all that whitespace. Now, it is
inserted closer to the existing text, and the whitespace remains after
the new headline.
* lisp/ob-core.el (org-babel-default-header-args): It is likely that
someone meant to set :padlines to "yes", but accidentally set
:padnewlines to "yes". Either way lets just remove this which
shouldn't have any functional effect.
Whitespace is significant in Haskell code so this could change
program semantics.
* lisp/ob-haskell.el (org-babel-default-header-args:haskell): set
:padlines to "no" by default.
* lisp/org-element.el (org-element-at-point): If point is at the end
of the buffer, and that buffer ends with a list, and there's no
final newline, return last element in last item instead of plain
list.
* testing/lisp/test-org-element.el: Add test.
This fix allows to fill correctly the following construct:
- Item with a very long line ending at the end of buffer.
* doc/org.texi (@LaTeX{} specific attributes): Document that tabu
and tabularx packages are not in the default set of packages.
* lisp/org.el (org-latex-default-packages-alist): Add the `rotating'
package to the list of default packages. Improve docstring.
* lisp/org.el (org-insert-property-drawer): Insert only after space in
current line.
This fixed a bug reported by Mathieu Boespflug, who writes:
> Hi,
>
> consider the following very simple org file:
>
> * TODO Thing1[]
>
> where "[]" marks where the point is. Now if I C-S-RET to insert a new
> TODO heading, I get
>
> * TODO Thing1
> * TODO []
>
> Note that there is a trailing space at the end of the last line, as
> expected. The problem is that if I now press C-c C-x p to set
> a property (any property), then I end up with the following situation:
>
> * TODO Thing1
> * TODO
> :PROPERTIES:
> :PROP: val
> :END: []
>
> The point is now at the end of the property drawer, rather than where it
> was before. Notice how the trailing whitespace in the heading has
> moreover been moved to after the property drawer.
>
> Expected behaviour:
>
> After C-c C-x p, I expect to get:
>
> * TODO Thing1
> * TODO []
> :PROPERTIES:
> :PROP: val
> :END:
>
> This is exactly what I get if there is *no trailing whitespace* in the
> TODO heading before hitting C-c C-x p. So it seems that the bug is that
> org-set-property does not deal well with trailing whitespace.
>
> This is a problem because it messes up setting properties by advising
> org-insert-todo-heading, say to set a CREATED property automatically for
> new TODO items.
* doc/org.texi (Agenda commands): Document fortnight view.
* lisp/org-agenda.el (org-agenda-custom-commands-local-options):
(org-agenda-span): Add support for fortnight view.
(org-agenda-menu): Add fortnight view command.
(org-agenda-list):
(org-agenda-ndays-to-span): Add support for fortnight view.
(org-agenda-span-to-ndays): Add support for fortnight view.
(org-agenda-later): Add support for fortnight view.
(org-agenda-fortnight-view): New command.
(org-agenda-change-time-span): Add support for fortnight view.
(org-agenda-compute-starting-span): Add support for fortnight view.
This is a patch by Michael Gauland.
* lisp/org.el (org-meta-return): Allow M-RET to insert items within
drawers. Rewrite function.
This patch also allows a user to insert a headline within a drawer,
which will basically break it. The point is to leave user responsible
for his editing actions.
* lisp/org-element.el (org-element-footnote-definition-parser): Fix
value for :contents-begin when first line of footnote definition is
empty besides the label.
* testing/lisp/test-org-element.el (test-org-element/footnote-definition-parser):
Add test.
* lisp/org-element.el (org-element-at-point): Return correct element
when point is on a blank line just below a headline.
* testing/lisp/test-org-element.el: Add test.
* lisp/org.el (org-overview): Preserve point.
We want to preserve point when changing global visibility. This is a
bit dangerouns, because it can leave point in an invisible location.
However, we want to make sure that pressing M-TAG three times returns
us to the same position as before.
* lisp/org.el (org-read-date-minibuffer-local-map): Don't replace disputed
keys when defining this keymap.
(org-read-date: Remove unnecessary binding of `org-replace-disputed-keys'.
This original fix did not work, thanks to Miro Bezjak for showing what
the proper fix should be.
* lisp/org.el (org-open-at-point): The new code is being run in the
same spot as `org-open-link-functions'. In case they failed, check
if link matches "^id:" and if so, load the id interface and follwo the
link.
This fixes Emacs bug#14910: org-mode `org-open-at-point' doesn't
follow id links.
* lisp/org-timer.el (org-timer-set-timer): Use the variable
`org-clock-sound' when calling `org-notify'.
When org-notify second parameter is t we only get the standard beep.
Evaluating with coma we can use different sounds for differents
running timers, as `org-clock-sound' was set when
`org-timer-set-timer' get execute
Patch proposal by Roberto Huelga Díaz.
TINYCHANGE
* lisp/org.el (org-adaptive-fill-function): Do not handle
`adaptive-fill-regexp' in comments as the behaviour is not
satisfying.
* testing/lisp/test-org.el: Remove test.
* lisp/org-list.el (org-list-struct-apply-struct): Do not move item's
contents within a child above when repairing indentation.
* testing/lisp/test-org-list.el: Add tests.
* lisp/ox-html.el (org-html--build-meta-info): Fix output of meta tags
when properties are present.
Reported-by: Kyle Machulis <kyle@nonpolynomial.com>
This reverts commit 24812caff4. This is
a wrong fix sinc the function already calls `org-element-context',
which cannot find Babel code in macros anyway.
* lisp/ob-ruby.el: New customizations `org-babel-ruby-hline-to' and
`org-babel-ruby-nil-to'
(org-babel-ruby-var-to-ruby): Convert incoming 'hlines.
(org-babel-ruby-table-or-string): Convert outgoing nils.
Patch by Rick Frankel.
* lisp/org.el (org-unlogged-message): New function.
(org-cycle): Use `org-unlogged-message'.
(org-cycle-internal-global): Use `org-unlogged-message'.
(org-cycle-internal-local): Use `org-unlogged-message'.
(org-global-cycle): Use `org-unlogged-message'.
(org-display-outline-path): Use `org-unlogged-message'.
* lisp/org-pcomplete.el (org-make-org-heading-search-string): Fix function
declaration.
(pcomplete/org-mode/searchhead): Remove incorrect second arguments to
`org-make-org-heading-search-string'.
* lisp/org-capture.el (org-capture-expand-embedded-elisp): Throw error if
result is not a string and not nil. If the result is nil, treat it as
if it was the empty string.
* ox-latex.el (org-latex-item): Use square as unchecked symbol.
* org.el (org-latex-default-packages-alist): Remove latexsym.
Use amssymb symbols to reduce required packages.
* lisp/org.el (org-insert-heading): Improve the empty line insertion behavior.
Basically, never remove empty lines, only add them.
This was a request by Nicolas Goaziou.
* lisp/org-attach.el (org-attach-commit): Use vc-git to find the git
repository.
Org attach use to fail to commit the attached file in git or git annex
when the .git repository is not in the data sub-directory.
This new code will use vc-git to find the .git file, and from this do
what is needed for committing file into git or git annex.
Patch by Remi Vanicat
* contrib/lisp/org-mac-link-grabber.el: File removed.
* contrib/lisp/org-mac-link.el: New file.
* contrib/lisp/org-mac-message.el: File removed
* lisp/org.el (org-modules): Update with the new module org-mac-link
Patch by Anthony Lander
* lisp/ox.el (org-export-collect-headlines): Do not build TOC for
headlines below H value.
* testing/lisp/test-ox.el: Add test.
Reported-by: Jambunathan K <kjambunathan@gmail.com>
* lisp/org.el (org-agenda-ignore-drawer-properties): New option
(org-agenda-prepare-buffers): Honour
`org-agenda-ignore-drawer-properties'.
Following a proposal by Daniel Clemente
* lisp/org-element.el (org-element-text-markup-successor,
org-element-latex-or-entity-successor,
org-element-export-snippet-successor,
org-element-footnote-reference-successor,
org-element-inline-babel-call-successor,
org-element-inline-src-block-successor,
org-element-line-break-successor, org-element-link-successor,
org-element-plain-link-successor, org-element-macro-successor,
org-element-radio-target-successor,
org-element-statistics-cookie-successor,
org-element-sub/superscript-successor,
org-element-table-cell-successor, org-element-target-successor,
org-element-timestamp-successor): Remove LIMIT argument.
(org-element--parse-objects, org-element--get-next-object-candidates):
Apply signature change to successors.
(org-element-context): Narrow buffer around object containers so
parsing of objects when using this function is done under the same
restrictions as in buffer parsing.
* testing/lisp/test-org-element.el: Add test.
* lisp/ox.el (org-export-table-cell-alignment): Ensure required
variables are available.
This error is triggered in ODT export with lists using :list-table
feature. This creates tables as parsed data on the fly in the tree,
triggering call to `org-export-table-cell-alignment', but `org-table'
library may not be available.
* lisp/ox.el (org-export-table-cell-width): Modify key (now an
element) and value structure (now a vector) of cache so it can use
`eq' as test. Elements are circular lists so `equal' cannot apply on
them.
Reported-by: Jambunathan K <kjambunathan@gmail.com>
* lisp/ox-org.el (org-export-as-org): Add missing BODY-ONLY argument,
which is always nil in this back-end.
Reported-by: Nicolas Girard <girard.nicolas@gmail.com>
* lisp/org.el (org-adaptive-fill-function): Look for a fill prefix at
the beginning of the paragraph and subsquently on its second line
instead of the current line.
* testing/lisp/test-org.el: Add test
* lisp/ox-latex (org-latex-src-block): Change format string to
position caption after figure content.
Note: This is now consistent with the caption positioning for
formatted src blocks, later in the same function.
TINYCHANGE
From 8f3c510f43e458a1bbb58b126fc4e402007e6cfe Mon Sep 17 00:00:00 2001
From: Achim Gratz <Stromeko@Stromeko.DE>
Date: Mon, 12 Aug 2013 21:10:27 +0200
Subject: [PATCH] ob-python: run-python requires argument cmd
* lisp/ob-python.el: Supply non-optional argument `cmd' to all
invocations of `run-python'. Invert a condition of to remove an
expendable progn form.
46d05e4d08 corrected the signatore in the declaration of run-python,
but the call without an argument was left in.
* lisp/ox.el (org-export-data-with-backend): Set temporary back-end as
the new back-end in local communication channel.
(org-export-filter-apply-functions): Handle corner case where back-end
is nil.
* testing/lisp/test-ox.el: Small refactoring.
* lisp/ox.el (org-export-filter-apply-functions): Only provide
back-end name (a symbol) as second argument of filters, not the full
back-end (a vector).
* lisp/org.el (org-ctrl-c-ctrl-c): 'C-c C-c' on a link is usually a
no-op. If that link is in a headline, act as if the 'C-c C-c' was
called on the headline, not the link.
* 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/org.el (org-bookmark-names-plist): New user option.
(org-set-regexps-and-options-for-tags): Use `org-bookmark-names-plist'.
(org-refile): Use `org-bookmark-names-plist'.
* lisp/org-capture.el (org-capture-bookmark-last-stored-position): Use
`org-bookmark-names-plist'.
Patch modified from a proposal by Oleh.
* lisp/org.el (org-insert-heading): Rewritten from scratch.
(org-N-empty-lines-before-current): New function
(org-insert-heading-respect-content): Set the correct argument to
force a heading even in lists.
* lisp/ox.el (org-export-to-buffer): Add two arguments: one to trigger
asynchronous export and the other to do extra processing from within
the buffer.
(org-export-to-file): Add two arguments: one to trigger asynchronous
export and the other to do extra processing on the output file.
(org-export-async-start): Small clean up.
* lisp/ox.el (org-export-current-backend): New variable.
(org-export-as): Use new variable.
Thanks to Christophe Rhodes for providing a preliminary patch.
* lisp/ox-ascii.el (org-ascii-table): Remove spurious new line between
a table and the caption below.
Thanks to Rick Frankel for reporting it and providing a patch.
* lisp/org.el (org-adaptive-fill-function, org-fill-paragraph): Add
support for `adaptive-fill-regexp' in paragraphs and comments.
* testing/lisp/test-org.el: Add tests.
* lisp/ox-latex.el (org-latex-inline-image-rules): add "svg" to
supported filetypes.
(org-latex--inline-image): implement the appropriate code for including
SVG files.
This relies on the "svg" LaTeX package (http://www.ctan.org/pkg/svg)
Thanks to Rick Frankel for help debugging this problem.
* lisp/ob-core.el (org-babel-merge-params): When merging parameters, if
a variable is replaced with a new value, then delete colnames/rownames
for the original value of that variable.
* lisp/org-element.el (org-element-plain-list-parser): Fix infloop
when parsing a list at the end of buffer, if buffer doesn't end at
a line beginning.
* testing/lisp/test-org-element.el: Add test.
* lisp/org-element.el (org-element-link-parser): Do not url-decode
parsed links.
The function now assumes link at point is correctly encoded if needed.
`org-insert-link' already automatically url-encode generated links,
and link types not handled by this function (e.g., custom-id links) do
not need such encoding.
* ob-C.el: Added =C++= to =`org-babel-load-languages'=
automatically after loading =C=.
* org-src.el (org-src-lang-modes): Added association between
language =C++= and =`c++-mode'=.
=C++= is added to org-babel-load-languages to make
`org-babel-demarcate-block' recognize =C++= as a proper language.
* 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/ob-latex.el (org-babel-latex-htlatex): Set this variable to
"htlatex" (or path to said) to enable svg generation from latex code
blocks.
(org-babel-latex-htlatex-packages): Libraries required for automatic
svg generation.
(org-babel-execute:latex): Generate SVG images directly from latex
code blocks (assumes tikz).
* org.el (org-set-regexps-and-options-for-tags): Fix
concatenation of the tags list.
Thanks to Nick for reporting this bug and to Rainer for confirming the fix.
* lisp/ox.el (org-export-insert-default-template): Fix
"wrong-type-argument" error in template insertion.
Thanks to Eric Abrahamsen for reporting this.
* lisp/org.el (org-fill-paragraph): Use empty commented lines as
separators when filling comments. This mimics default behaviour
from "newcomment.el", which is not used in Org.
* testing/lisp/test-org.el: Add tests.
* lisp/ox-html.el (org-html-link): Add image attributes to "img" tag,
not to the "a" container. Also fix spacing for attributes.
Thanks to Robert Eckl for reporting it.
* lisp/org.el (org-fill-paragraph): Do not mix consecutive comments
when filling any of them.
* testing/lisp/test-org.el: Add test.
Thanks to Samuel Wales for reporting it.
* lisp/ox-html.el (org-html-format-headline--wrap): Fix number of
arguments when setting `org-html-format-headline-function'.
Thanks to Jisang Yoo for reporting it.
* org.el (org-refile): With a numeric prefix argument of `3',
emulate (setq org-refile-keep t) and copy the subtree to the
target location, don't delete it.
* org.texi (Refile and copy): Document `C-3 C-c C-w' and add
an index entry for `org-refile-keep'.
* org.el (org-set-regexps-and-options-for-tags): Fix the
setting of tag groups when relying on `org-tag-alist', not on
tags directly set in the buffer with the #+TAGS option.
Thanks to Maurice for reporting this.
* lisp/org-element.el (org-element-item-interpreter): Correctly
interpret back plain lists with "*" items. This fixes "This is not
a list" error returned in this case.
* testing/lisp/test-org-element.el: Add test.
* org.el (org-forward-element, org-backward-element): Throw a
message instead of an error when trying to move from a
position where there is no element.
* lisp/ox-html.el (org-html--format-toc-headline): Make use of
anonymous back-ends.
* lisp/ox-odt.el (org-odt-footnote-reference): Make use of anonymous
back-ends.
(org-odt-format-label, org-odt-toc, org-odt-format-headline--wrap):
Use `org-export-with-backend' instead of
`org-export-with-translations'.
* contrib/lisp/ox-freemind.el (org-freemind--build-node-contents): Use
`org-export-with-backend' instead of `org-export-with-translations'.
* lisp/ox.el (org-export--registered-backends): Renamed from
`org-export-registered-backends'.
(org-export-invisible-backends): Removed variable.
(org-export-get-backend, org-export-get-all-transcoders
org-export-get-all-options, org-export-get-all-filters): New
functions. It replaces `org-export-backend-translate-table'.
(org-export-barf-if-invalid-backend, org-export-derived-backend-p,
org-export-define-backend, org-export-define-derived-backend):
Rewrite functions using new representation.
(org-export-backend-translate-table): Remove function.
(org-export-get-environment): Use new function.
(org-export--get-subtree-options, org-export--parse-option-keyword,
org-export--get-inbuffer-options, org-export--get-global-options,
org-export-to-buffer org-export-to-file, org-export-string-as
org-export-replace-region-by): Update docstring.
(org-export-data-with-translations): Remove function. Use
`org-export-data-with-backend' with a temporary back-end instead.
(org-export-data-with-backend, org-export-as): Reflect new definition
for back-ends.
(org-export--dispatch-action, org-export--dispatch-ui): Reflect new
definition for back-ends and variable removal. Refactoring.
(org-export-filter-apply-functions): Call functions with
current back-end's name, not full back-end.
* lisp/org.el (org-export-backends, org-create-formula--latex-header):
Use new structure and variables.
* testing/lisp/test-ox.el: Update tests.
This patch separates back-end definition from its registration. Thus,
it allows to use anonymous or unregistered back-ends.
* org.el (org-set-regexps-and-options-for-tags): Enhance
docstring.
(org-set-regexps-and-options): Make sure not to add
`org-tag-alist' twice when setting this variable through et
#+setupfile: directive.
Thanks to Anupam Sengupta for reporting this.
* org.el (org-set-regexps-and-options): Don't set font-lock
defaults here.
(org-mode): Set font-lock defaults here.
This fixes the bug reported here:
http://article.gmane.org/gmane.emacs.orgmode/73429
* org-list.el (org-sort-list): Implement sorting by "checked"
status for check lists.
* org.texi (Plain lists): Add index entry for sorting plain
list. Document sorting by checked status for check lists.
* ox.el (org-export-smart-quotes-alist): Added ("da" "no" "nb" "nn"
"sv").
* ox.el (org-export-dictionary): Added some entries ("da" "no" "nb"
"nn" "sv").
These languages are rather unrestricted, so some changes may to some
extend reflect my preferences.
* ox-latex.el (org-latex-babel-language-alist): Added 'nb', 'nn', and
'no' for Norwegian. Removed 'no-no'.
In ox.el Norwegian is given by 'no' for Norwegian, 'nb' for bokmål,
and 'nn' for nynorsk, correspond to the ISO-2 language codes. 'no-no'
is not defined in ox.el.
* org-table.el (org-table-sum): Fix rounding error when
summing times.
Thanks to Paul Stansell for reporting this and to Nick Dokos for
providing the fix.
See http://mid.gmane.org/87ppv2atvf.fsf%40gmail.com for the
discussion of this bug.
* lisp/ox-html.el (org-html-inline-images): Change default value and
remove `maybe'.
(org-html-format-inline-image): Remove functions.
(org-html--wrap-image, org-html--format-image,
org-html-inline-image-p): New functions.
(org-html-latex-environment, org-html-latex-fragment): Use new
functions.
(org-html-standalone-image-p): Use new functions. Also remove an
unused optional argument.
(org-html-link, org-html-paragraph): Correctly export hyperlinked
images.
This patch permits the back-end to recognize links like:
[[http://orgmode.org][http://orgmode.org/img/org-mode-unicorn-logo.png]]
as standalone, so they can get wrapped within a proper environment and
get captions.
Thanks to Kodi Arfer for reporting it.
* lisp/ox-latex.el (org-latex--caption/label-string): Add ability,
which can build a caption string from `:caption' attribute of #+ATTR_LATEX.
(org-latex--inline-image,org-latex--org-table): Tiny change.
* doc/org.texi (@LaTeX{} specific attributes): Document `:caption'
attribute of #+ATTR_LATEX.
This feature is very useful when you export org to latex with custom
caption command, for example:
\#+ATTR_LATEX: :caption \BiTableCaption{caption 1}{caption 2}
|---+---|
| x | y |
|---+---|
| 1 | 2 |
|---+---|
* lisp/ob-core.el (org-babel-check-confirm-evaluate): Return result of
evaluating the function pointed to by`org-confirm-babel-evaluate'
when it is a functionp and its value as a variable otherwise.
This fixes a regression introduced in 5fe486807e and restores the fix
applied earlier in 8d272b0d3b (and then replaced by a cond form in
ece347e32c, which later got factored out again).
* ox-html.el (org-html-link-use-abs-url): New option.
(org-html-link): Use it to prepend relative links with the
value of HTML_LINK_HOME, when defined.
* lisp/ob-core.el (org-babel-find-named-result): Call lines are not
results.
(org-babel-where-is-src-block-result): Don't implicitly name the
results of call lines.
* lisp/ob-exp.el (org-babel-exp-non-block-elements): There is now
another element on the call line info list.
* lisp/ob-lob.el (org-babel-lob-get-info): Return the name (if any)
at the end of the info list.
(org-babel-lob-execute): Pass the name through to execution.
* org.el (org-mode-map): Remap `forward-paragraph' and
`backward-paragraph' to `org-forward-element' and
`org-backward-element'.
Thanks to Samuel for raising this.
* ox-html.el (org-html-begin-plain-list): New parameter
`ordered-num' to tell whether the list is ordered numerically.
(org-html-plain-list): Handle alphabetical ordered list.
* lisp/ox-beamer.el (org-beamer-environments-extra): Allow to add raw
title in environment definition.
(org-beamer--format-block): Handle new placeholders.
* lisp/ox-html.el: (org-html--has-caption-p): New function.
(org-html-link--inline-image),
(org-html-table): Prepend ordinal number to caption.
(org-html-link): Make numbered link by counting captioned figures and tables.
* lisp/org-colview.el (org-columns-display-here): Enforce fixed width font.
* lisp/org-faces.el (org-column): Setting font width has been shifted
to org-colview.el.
Thanks to Xiao-Yong Jin for this patch.
* lisp/ob-core.el (org-babel-get-rownames),
lisp/org-table.el (org-table-transpose-table-at-point): Replace the
inadvertent use of mapcar* (from cl) by plain mapcar and direct cons
manipulation.
The error was not caught at compilation time since both source files
require cl during compilation for using cl macros. These were the
only uses of mapcar* in Org, but I didn't check for other cl
_functions_ (as opposed to macros, which would need to be checked if
their implementation uses cl functions).
* org-capture.el (org-capture-set-target-location): Don't
throw an error when `org-time-was-given' is not bound.
Thanks to Eric S Fraga for reporting this.
* lisp/ob-core.el (org-babel-execute-src-block): Ensure that the
location is set before anything else is done.
* lisp/ob-ref.el (org-babel-ref-parse): Evaluate Emacs Lisp values in
header arguments at the location of the original code block.
* testing/lisp/test-ob.el (test-ob/location-of-header-arg-eval): Test
defending the new header argument evaluation behavior.
* lisp/org-element.el (org-element--current-element): Fix
org-meta-return error at the end of buffer.
* testing/lisp/test-org-element.el: Add test.
Thanks to Nicolas Richard for reporting this.
* lisp/ox-odt.el (org-odt-link): Fuzzy links to an headline with
a description always use that description, even if the description
is the same as the headline title.
Reported by Georg Lehner.
* lisp/org.el (org-setup-filling): Set `paragraph-start' and
`paragraph-separate'.
(org-fill-paragraph-separate-nobreak-p): Remove function.
(org-mode): Do not set `paragraph-start'.
* lisp/ob-core.el (org-babel-params-from-properties): Use
`org-babel-current-src-block-location' for evaluating new-style
header-argument properties. Remove superfluous save-match-data
clauses. Comment which properties get evaluated where.
* lisp/org.el (org-re-property): Re-implement using full regex for
`org-re-property'. Add optional argument LITERAL to flag when
PROPERTY should to be regex-quoted. Move before definition of
`org-re-property'. (org-re-property-keyword): Remove, functionality
is subsumed by `org-re-property'. (org-property-re): Define using
`org-re-property'. (org-entry-get, org-property-values): Adjust
match number for PROPVAL. (org-entry-put): Use `org-re-property'
instead of `org-re-property-keyword'
This completes the refactoring started in 3c933adaf6.
* lisp/ob-gnuplot.el (org-babel-expand-body:gnuplot): Use new header
arguments.
* lisp/ob-core.el (org-babel-common-header-args-w-values): Mention new
header arguments.
(org-babel-expand-body:generic): Use new header arguments.
* doc/org.texi (Specific header arguments): Document new header
arguments.
* lisp/ob-core.el (org-babel-read-result): More robust matching of
examplized ranges.
(org-babel-result-end): More robust matching of examplized ranges.
* lisp/ox-html.el (html): Replace "HTML_HTML5_FANCY",
"HTML_INCLUDE_STYLE" and "HTML_INCLUDE_SCRIPTS" with, respectively,
":html5-fancy", "html-style" and "html-scripts" options.
(org-html-html5-fancy): Reformat docstring.
* doc/org.texi (HTML doctypes): Reflect keyword removal.
(CSS support): Reflect keyword removal.
The reasoning behind this change is that keywords can only store
strings as value. Therefore, they are not suited for toggles ("nil"
vs nil problem).
The `org-babel-params-from-properties' command was calling
`org-babel-merge-params', the output of which was then being fed back
to another call to `org-babel-merge-params'. The merge params
function is not designed to allow this form of recursive calling, and
as a result many variables were being set to empty values.
The first noticed side effect of this bug was the breakage of the
org-babel-load-file command, which relies on default header
arguments (namely :tangle), which were overwritten by the bug above.
The fix involved having the `org-babel-params-from-properties'
function return a list of alists, which may then all be handed to the
top-level merge-params call.
* lisp/ob-core.el (org-babel-params-from-properties): Now returns a list
of alists and does *not* call `org-babel-merge-params'.
(org-babel-parse-src-block-match): Handle new list of lists output of
`org-babel-params-from-properties'.
(org-babel-parse-inline-src-block-match): Handle new list of lists
output of `org-babel-params-from-properties'.
* lisp/ob-exp.el (org-babel-exp-src-block): Handle new list of lists
output of `org-babel-params-from-properties'.
(org-babel-exp-non-block-elements): Handle new list of lists output of
`org-babel-params-from-properties'.
* lisp/ob-lob.el (org-babel-lob-execute): Handle new list of lists
output of `org-babel-params-from-properties'.
* lisp/ox-latex.el (org-latex-item): Allow hyperref and footnotemark
in items description tags. Also remove a unnecessary hack allowing
footnotemark with an optional argument in the tag.
Initial patch from Rick Frankel.
* lisp/org-element.el (org-element-special-block-parser): Fix typo in
regexp matching block type. Also quote the type so it can contain
special characters.
* testing/lisp/test-org-element.el: Add test.
* lisp/ox-latex.el (org-latex-pdf-process): This argument can cause
problem with links with a relative path, since compilation happens
in a different directory.
* lisp/org.el (org-latex-default-packages-alist): Load "ulem" package
by default. Use "[normalem]" option to preserve \emph definition.
* lisp/ox-latex.el (org-latex-text-markup-alist): Use "\uline" and
"\sout" commands from "ulem" package.
* ox-latex.el (org-latex-guess-babel-language): replace AUTO with
language if AUTO is the option of the LaTeX package Babel.
(org-latex-classes): updated documentation with respect
to `org-latex-guess-babel-language'.
TINYCHANGE
* lisp/ob-core.el (org-babel-insert-header-arg,
org-babel-parse-src-block-match): Replace `if' with empty else part
by `when' for readability. (org-babel-params-from-properties):
Inquire for language specific and default header properties.
Language specific header properties take precedence over default
header properties and old-style header property specifications.
This allows for header arguments to be specified as
properties (including inheritance).
#+PROPERTY: header-args :cache "no"
#+PROPERTY: header-args:R :session "*R-property*"
:PROPERTIES:
:header-args: :cache "yes"
:header-args:R: :session "*R-drawer*"
:END:
org-compat (define-obsolete-variable-alias,
define-obsolete-function-alias): Re-introduce argument lists as
XEmacs' byte-compiler otherwise stops compilation.
This means that no other advices must modify these functions with a
different argument list.
org-compat (custom-handle-keyword, define-obsolete-variable-alias,
define-obsolete-function-alias): Remove argument lists from defadvice
and use positional arguments instead of named arguments.
* lisp/org-compat.el (define-obsolete-variable-alias,
define-obsolete-function-alias): Actually remove the third (and any
following) argument from the argument list before calling the
advised function.
* lisp/ob-tangle.el (org-babel-tangle): Collect tangle modes, and only
apply them to the file after all tangling has completed, including the
post-tangle-hook.
* lisp/ox-html.el: Remove fancy string replacements for code and
verbatim text when exporting to html.
Exporting =--option= or ~--option~ to html used to replace -- with a
ndash.
TINYCHANGE
* lisp/org.el (org-latex-default-packages-alist): Document need for
"soul" package.
* lisp/ox-latex.el (org-latex-text-markup-alist): Use \ul (from "soul"
package) instead of \underline for underline text.
* lisp/org.el (org-property-re): Improve definition so that this regex
can be used in all situations. Extend docstring with explanation of
matching groups.
(org-at-property-p): Implement using `org-element-at-point'.
(org-entry-properties, org-buffer-property-keys, org-indent-line):
Use `org-property-re' and adjust match group numbers accordingly.
* lisp/org-element.el (org-element-node-property-parser): Use
`org-property-re' and adjust match group numbers accordingly. Move
`looking-at' out of the let clause to not rely on the unspecified
evaluation order inside the let.
* doc/org.texi (Top): Documentation for new tangle-mode header argument.
(Specific header arguments): Documentation for new tangle-mode header
argument.
(rownames): Documentation for new tangle-mode header argument.
(tangle-mode): Documentation for new tangle-mode header argument.
* lisp/ob-core.el (org-babel-common-header-args-w-values): Adding the
new :tangle-mode header argument.
(org-babel-read): Read values starting with a "#" character as emacs
lisp.
* lisp/ob-tangle.el (org-babel-tangle): Use the new :tangle-mode header
argument.
* lisp/org-pcomplete.el (pcomplete/org-mode/block-option/src): Use the
new :tangle-mode header argument.