* ox-html.el (org-html-indent): New option.
(org-html-use-unicode-chars): New option.
(org-html-pretty-output): Delete.
(org-html-final-function): Use the new options.
* ox-html.el (org-html-link): Fix handling of abbreviated
links which include a file: protocol.
Before the patch, exporting this buffer does not export the link correctly:
#+LINK: test file:my.file::%s
[[test::search]]
* ox-html.el (org-html--build-postamble): Default to today's
date.
(org-html--build-meta-info): When #+DATE contains a time
stamp, parse it as a RFC 822 time string, otherwise simply
insert the date as a string.
* ox.el (org-export--copy-to-kill-ring-p): New function.
(org-export-copy-to-kill-ring): Use 'if-interactive as the
default.
(org-export-to-buffer, org-export-to-file): Use
`org-export--copy-to-kill-ring-p' and fix docstrings.
* ox-odt.el (org-odt-export-as-odf): Use
`org-export--copy-to-kill-ring-p'.
* org.el (org-clone-subtree-with-time-shift): Only prompt for
a time shift when the entry at point has a time stamp and when
the command is called with a universal prefix argument.
* doc/org.texi (The clock table): Document :mstart.
* lisp/org-clock.el (org-clocktable-defaults): Add :mstart
parameter.
(org-clock-special-range): New argument mstart.
(org-dblock-write:clocktable, org-dblock-write:clocktable)
(org-clocktable-write-default, org-clocktable-steps)
(org-clock-get-table-data): Handle the :mstart parameter.
Thanks to Peder Stray for coming up with this idea and for
proposing a first implementation.
* org-list.el (org-cycle-include-plain-lists): Also add to the
'org-cycle customization group.
(org-list-allow-alphabetical)
(org-checkbox-hierarchical-statistics)
(org-list-empty-line-terminates-plain-lists)
(org-list-description-max-indent): Rename and add aliases to old
names.
* org.el (org-deadline-time-hour-regexp)
(org-scheduled-time-hour-regexp): New buffer local variables.
(org-set-regexps-and-options): Set the new variables.
* org-agenda.el (org-agenda-custom-commands-local-options):
Add :deadline* and :scheduled* to the list of possible agenda
entry types.
(org-agenda): Implement a new agenda type agenda* with :scheduled*
and :deadline* replacing :scheduled and :deadline respectively in
agenda entry types. In such agenda, only scheduled and deadline
items with a time specification [h]h:mm will be considered.
(org-agenda-entry-types): Document the new agenda entry types
:scheduled* and :deadline*.
(org-agenda-list): New parameter `with-hour'. Use :scheduled* and
:deadline*.
(org-agenda-get-day-entries): Handle :scheduled* and :deadline*.
(org-agenda-get-deadlines, org-agenda-get-scheduled): New
parameter `with-hour'. Use `org-deadline-time-hour-regexp' or
`org-scheduled-time-hour-regexp' as the search string if needed.
(org-agenda-to-appt): Use :scheduled* and :deadline* by default,
as other scheduled and deadline items don't have a time spec and
cannot be turned into appointments. Trim bracket links and use
only the description as the appointment text.
(org-agenda-get-restriction-and-command): Add
default description for the agenda* view.
(org-agenda-run-series): Handle agenda* views.
* org-faces.el (org-agenda-filter-tags)
(org-agenda-diary, org-agenda-calendar-event)
(org-agenda-calendar-sexp): Minor code clean up.
(org-agenda-filter-category): Docstring fix.
(org-agenda-filter-category): New face.
* org-agenda.el (org-agenda-local-vars): Add
`org-agenda-re-filter-overlays' and `org-agenda-regexp-filter'.
(org-agenda-mode-map): Use "|" for
`org-agenda-filtered-by-regexp'.
(org-agenda-re-filter-overlays): New variable.
(org-agenda-mark-filtered-text): Use
`org-agenda-re-filter-overlays'.
(org-agenda-finalize, org-agenda-redo): Allow regexp filtering.
(org-agenda-filter-by-category): Set `org-agenda-category-filter'
here instead of within `org-agenda-apply-filter'.
(org-agenda-regexp-filter): New variable.
(org-agenda-filter-by-regexp): New function to filter agenda
buffers by regexp.
(org-agenda-filter-make-matcher): Make matcher for regexp filters.
(org-agenda-filter-apply): Don't set `org-agenda-tag-filter' and
`org-agenda-category-filter'. Maybe apply regexp filter.
(org-agenda-filter-hide-line): Add docstring. Hide
regexp-filtered lines.
(org-agenda-filter-show-all-tag, org-agenda-filter-show-all-cat):
Add docstring.
(org-agenda-filter-show-all-regexp): New function.
(org-agenda-set-mode-name): Add regexp-filter information.
(org-agenda-custom-commands-local-options): Add regexp filter.
(org-agenda-regexp-filter-preset): New variable.
(org-agenda-prepare): Use the new variable.
* org.texi (Agenda commands): Document `org-agenda-filter-by-regexp'.
* org.el (org-insert-heading): DTRT when in a narrowed region.
* org-compat.el (org-buffer-narrowed-p): New compatibility
function.
Thanks to Samuel Wales for reporting this problem.
* org-agenda.el (org-agenda-skip-scheduled-if-deadline-is-shown):
New allowed value `repeated-after-deadline' which will prevent the
display of scheduled items when repeated after the current
deadline.
(org-agenda-get-scheduled): Handle the new value.
This allows this task
* Do me every day before March, 16th (included)
SCHEDULED: <2013-03-12 mar. +1d> DEADLINE: <2013-03-16 sam.>
to step being displayed after March, 16th.
Thanks a lot to Rick Hanson for coming with this idea and a clear example.
* ox-html.el (org-html-style-default): New classes `footpara' and
`footdef' for the footnotes paragraphs and definitions.
(org-html-format-footnote-definition): Wrap the footnote
defintions into their own div.
(org-html-paragraph): Don't add extra <br/> after a paragraph in a
footnote.
* lisp/ox-html.el: (define-backend): Add :html-doctype and
:html-container parameters.
(org-html-doctype): New option for doctype declaration.
(org-html-container-elemnt): New option for specifying the wrapper
container element.
(org-html-divs): Change to alist of three entries each containing a
key ('preamble, 'content, 'postamble), an HTML element type and an
id to allow setting container elements.
(org-html--build-preamble): Modified to use `org-html-divs'.
(org-html--build-postamble): Modified to use `org-html-divs'.
(org-html-template): Modified to use doctype and container-element
settings.
* ox-html.el (org-html-style-default): New CSS .underline and
#org-div-home-and-up.
(org-html-text-markup-alist): Don't hardcode the style, use the
new class .underline.
(org-html-home/up-format): Don't hardcode the style, use
#org-div-home-and-up.
(org-html-center-block): Use the .center class.
* lisp/ox.el (org-export-read-attribute): Do not use `read' to read
attributes. Instead, extract keywords and values from it, which
means each value will be a string when non-nil.
* contrib/lisp/ox-groff.el (org-groff-link--inline-image): Use new
attribute syntax. Small refactoring.
* lisp/ox-ascii.el (org-ascii-horizontal-rule): Use new attribute
syntax.
* lisp/ox-beamer.el (org-beamer-plain-list): Use new attribute syntax.
* lisp/ox-html.el (org-html--textarea-block): Use new attribute
syntax.
* lisp/ox-latex.el (org-latex--inline-image, org-latex--org-table,
org-latex--math-table): Use new attribute syntax.
* lisp/ox-man.el (org-man-table--org-table): Use new attribute syntax.
Small refactoring.
* lisp/ox-odt.el (org-odt-link--inline-image, org-odt-table-cell): Use
new attribute syntax.
* testing/lisp/test-ox.el: Add tests.
This patch introduces two changes. To begin with, it removes the need
for quoting and escaping characters. Also, all non-nil values are
stored as strings. As an exception "nil" is stored as nil.
* lisp/ox-texinfo.el (org-texinfo-src-block): Escape texinfo commands
within source blocks to ensure proper export. `@ { }' all need to
be escaped to ensure proper formatting when processing to info.
* org.el (orgstruct-heading-prefix-regexp): Change default
value to nil.
(orgstruct-error): Use user-error if available.
(orgstruct-setup): Disable bindings of {pro,de}motion commands
if orgstruct-heading-prefix-regexp is non-nil. Always use
org-outline-level.
(orgstruct-make-binding): New argument
DISABLE-WHEN-HEADING-PREFIX.
* ox-html.el (org-html-format-footnote-definition)
(org-html-footnote-section): Don't wrap footnote definitions into
tables.
(org-html-paragraph): Add HTML style and class parameter when the
paragraph is in a footnote definition. Also allow to add an extra
string after the paragraph. Further parameters can be added for
paragraphs in other environments.
Thanks to Samuel Wales for asking this.
* lisp/ob-core.el (org-babel-confirm-evaluate-answer-no): Dynamically
scoped variable, if bound non-nil the confirmation dialog will not
be initiated and denial of evaluation is assumed.
The new variable `org-babel-confirm-evaluate-answer-no´ can be bound
to suppress the user interaction as is needed for async export, as
discussed in http://thread.gmane.org/gmane.emacs.orgmode/67719
multiple changes to remove overly long lines.
* lisp/ob-core.el (org-babel-execute-src-block): A cond makes it more
clear that we definitely do not execute without user confirmation.
(org-babel-where-is-src-block-result): Overly long line.
* lisp/ob-core.el (org-babel-check-confirm-evaluate): New macro to
establish bindings based on INFO.
* lisp/ob-core.el (org-babel-check-evaluate): New defsubst that checks
if the evaluation of a code block is disabled. Refactors the first
part of the original function `org-babel-confirm-evaluate´.
* lisp/ob-core.el (org-babel-confirm-evaluate): New defsubst that
checks if the user should be queried and returns the answer. Keeps
the second part of the original function `org-babel-confirm-evaluate´.
* lisp/ob-core.el (org-babel-execute-src-block): Do not ask for
confirmation if the cached result is current.
* lisp/ob-core.el (org-babel-confirm-evaluate): Re-implement using
bindings for common subexpressions.
There was a minor bug in the reporting of an aborted evaluation as
"disabled" when no export was happening and eval-no-export was t since
the state of the export was not checked again.