* UTILITIES/org-fixup.el: new file, has functions to create
org-version.el and org-install.el, now use by the build system.
* lisp/Makefile: delete said definitions, now sourced from toplevel
make. "clean" and "cleanall" should do the same thing here, make
them aliases, ditto for "all" and "compile". Both autoload files
must be .PHONY and depend only on each other for correct ordering.
Make "compile-dirty" actually do that again (i.e. no implied
"clean", but "cleanauto"). Remove autoload files directly after
install, so that they will only be present when explicitly requested
by "autoloads". Create "org-version.el" before compilation as it is
mandatory. Remove $(ORG_MAKE_INSTALL) and $(ORG_MAKE_VERSION),
source from default.mk/local.mk.
* default.mk: move definitions for $(ORG_MAKE_INSTALL) and
$(ORG_MAKE_VERSION) here so that they can be more easily configured.
Remove definition of "org-release" from $(BATCH) and $(BTEST), now
sourced from "org-version.el".
* targets.mk: target reorganization, introduce "stop" targets to
prevent cleaning of org-version.el. Use new targets for "oldorg" to
make it more robust in case of errors. New target "cleanutils" to
remove any "*.elc" files that may have been produced there and add
this target to "cleanall". Do the same in cleancontrib.
* lisp/org.el: add with-no-warning to defvar for two unprefixed global
variables from calendar.el (there's nothing else we can do inside
org until it is fixed in calendar.el).
* org-latex.el
(org-export-latex-link-with-unknown-path-format): New option.
(org-export-latex-links): Use it.
Thanks to Sébastien Vauban for a preliminary patch for this.
* org-agenda.el (org-agenda-get-timestamps): Remove any
active timestamp from the headline text, not only those for
the current date.
Thanks to SW, Nick Dokos, Samuel Wales and Brian van den Broek
for inputs about this.
* org.el (org-allow-promoting-top-level-subtree): New option
to allow promoting a top-level subtree.
(org-called-with-limited-levels): New variable, dynamically
bound within the `org-with-limited-levels' macro.
(org-promote): Use the new option to allow promoting a
top-level subtree.
* org-macs.el (org-with-limited-levels): Let-bind
`org-called-interactively-p' to t.
Promoting a top-level subtree can be useful but should not be allowed by
default, as this restructuring is only reversible with M-x undo RET.
* org.el (org-create-formula-image-with-dvipng)
(org-create-formula-image-with-imagemagick): Make sure a file
exists before trying to delete it.
Thanks to Benjamin Motz for this idea.
* lisp/org-footnote.el (org-footnote-new): Don't call
org-footnote-unique-label if org-footnote-auto-label is set to
random.
Calling org-footnote-unique-label calls org-footnote-all-labels, which
can dramatically slow down footnote creation in a buffer with many
footnotes. This is unecessary if org-footnote-auto-label is set to
random.
* org-table.el (org-table-time-string-to-seconds): Return the
empty string if provided.
(org-table-eval-formula): When assigning a duration string,
handle it correctly -- i.e. don't make any computation on it,
except the one to insert it using the correct duration format.
Thanks to Sébastien Vauban for spotting this.
* org.el (org-indent-line-function): Fix bug.
Don't fall back systematically on `org-fb-vars' to do
the indentation. Only fall back at then end, when no
modification has been done by indenting a la Org. In
that case, use `indent-according-to-mode' instead of
using `indent-line-function' to avoid a possible loop.
Thanks to Eric Fraga, Christopher Schmidt and Nicolas
Goaziou who reported problems with this.
* org-clock.el (org-frame-title-format-backup): New variable
to store the value of `frame-title-format' before `org-clock'
might replace it by `org-clock-frame-title-format'.
(org-clock-frame-title-format): New option.
(org-frame-title-string): Delete.
(org-clock-update-mode-line): Minor code reformatting.
(org-clock-in, org-clock-out, org-clock-cancel): Use
`org-clock-frame-title-format'.
See http://thread.gmane.org/gmane.emacs.orgmode/55477
Trying to update `frame-title-format' is tricky and error-prone, since
users can set up this variable in many different ways. AFAIK there is
no equivalent to `global-mode-string' for setting the frame title, we
would use it otherwise.
The user can still configure `org-clock-frame-title-format' the way he
wants.
* org.el (org-toggle-heading): Allow `C-u C-c *' to mark the
list at point before converting items to headings. With a
simple universal-argument, set `current-prefix-arg' to 1,
otherwise keep the numeric value.
* org-agenda.el (org-agenda-mode-map): New keybinding ̀*' to
mark all entries for bulk action.
(org-agenda-menu): New menu item for marking all entries.
(org-agenda-bulk-mark-all): New function to mark all entries.
(org-agenda-bulk-mark-regexp): Minor docstring fix.
(org-agenda-bulk-unmark): With a prefix argument, unmark all.
Also send a better message.
(org-agenda-bulk-remove-all-marks): Rename to
`org-agenda-bulk-unmark-all'. Check against
`org-agenda-bulk-marked-entries' before trying to unmark
entries. Minor docstring fix.
(org-agenda-bulk-unmark-all): Renamed from
̀org-agenda-bulk-remove-all-marks'.
* org.el (org-src-prevent-auto-filling): New option to prevent
auto-filling in src blocks. This defaults to nil to avoid people
being surprised that no auto-fill occurs in Org buffers where they
use `auto-fill-mode'.
(org-auto-fill-function): Use the new option.
Thanks to Ken Williams for this feature request and to Charles
C. Berry for a preliminary patch for this.
* org.el (org-properties-postprocess-alist): Better
customization type.
(org-set-property): Fix the check against
`org-properties-postprocess-alist'.
Thanks to Bill Wishon for testing/spotting this.
* org-colview.el (org-columns-string-to-number): When
computing the values for the colview, match durations and
convert them to HH:MM values.
* org.el (org-duration-string-to-minutes): Match non-round
numbers. Add a new optional parameter to allow returning the
output as a string.
Thanks to Sébastien for reporting these bugs.
* org.el (org-auto-fill-fallback-function)
(org-indent-line-fallback-function)
(org-fill-paragraph-fallback-function)
(org-auto-fill-fallback-function)
(org-indent-line-fallback-function)
(org-fill-paragraph-fallback-function): Remove.
(org-fb-vars): New buffer-local variable.
(orgstruct++-mode): Use the fallback variable `org-fb-vars' to
store, use and restore variables if needed.
(org-fill-paragraph): Ignore `orgstruct++-mode' filling
variables when needed.
(org-auto-fill-function, org-indent-line-function): Ditto.
* org-macs.el (orgstruct++-ignore-org-filling): New macro.
* org.el (org-create-formula-image-with-imagemagick): Use 'call-process
to launch latex so that no shell output buffer will be shown when previewing
formulas.
* lisp/org-compat.el (org-find-library-name): Convert into a macro to
avoid compilation of a function from XEmacs in Emacs and vice versa.
Based on a not fully working proposal by A. Gratz to the orgmode
mailing list:
http://lists.gnu.org/archive/html/emacs-orgmode/2012-04/msg00009.html
* org-table.el (org-table-store-formulas): Fix typo.
(org-table-maybe-eval-formula): Fix the regexp to only match
formulas, which never end with the `=' character. If the
field only contain this character, don't eval either.
Thanks to Thomas S. Dye for reporting this.
* org-table.el (org-tbl-calc-modes): Rename from
`org-table-modes'.
(org-set-calc-mode, org-table-eval-formula): Use it.
Thanks to Mikkel Kristiansen for reporting this and
to Nick Dokos for tracking down the bug and proposing
a fix.
* org-bbdb.el (org-bbdb-anniversary-format-alist): Update the
customization type.
(name): Suppress (defvar 'name) as name is not eval'ed when
setting `org-bbdb-anniversary-format-alist'.
* org.el (org-version): When called non-interactively, insert
the short version string, otherwise send a message with the
complete version string.
* org-odt.el (org-odt-update-meta-file): Use (org-version) and
delegate checking whether `org-version' is known as a variable
there.
* org-html.el (org-export-as-html): Use (org-version).
* org-docbook.el (org-export-as-docbook): Ditto.
* org-latex.el (org-export-latex-make-header): Ditto.
* org-clock.el (org-clocktable-write-default): Temporarily
disable `delete-active-region' so that we don't accidently
delete an active region when exporting a subtree/region.
Thanks to Mike McLean for the detailed bug report.
* org-clock.el (org-program-exists): Remove.
(org-show-notification, org-clock-play-sound): Use
`executable-find' instead of `org-program-exists'.
Thanks to Sébastien Vauban for pointing this.
* lisp/org.el (org-set-regexps-and-options): Fix
`org-planning-or-clock-line-re' regexp. Indeed "\\>" will never
match since time keywords must end with colons, which are not word
constituent.
* org-html.el (org-html-handle-links, org-export-as-html)
(org-format-org-table-html, org-format-table-table-html)
(org-html-export-list-line): Use `org-line' instead of `line'
as the free variable name.
* org-faces.el (org-list-dt): New face.
* org.el (org-set-font-lock-defaults): Use `org-list-dt' as
the face for definition terms in definition lists.
Thanks to Alex Lane for suggesting this.
* org.el (org-auto-fill-fallback-function)
(org-indent-line-fallback-function)
(org-fill-paragraph-fallback-function): New variables to store
some fall-back functions when turning `orgstruct++-mode' on.
(orgstruct++-mode): Set the new variables.
(org-indent-line-function, org-fill-paragraph)
(org-auto-fill-function): Use them.
Thanks to Christopher Schmidt for reporting this and to Eric
S Fraga for insisting on it.
This commit creates these fall-back buffer-local variables:
(defvar org-auto-fill-fallback-function nil)
(defvar org-fill-paragraph-fallback-function nil)
(defvar org-indent-line-fallback-function nil)
When `org-auto-fill-function' cannot do anything useful in the
current mode and `org-auto-fill-fallback-function' is set (for
example to `message-do-auto-fill), use the fall-back function
before `do-auto-file'.
When `org-fill-paragraph-function' cannot do anything useful in the
current mode and `org-fill-paragraph-fallback-function' is set (for
example to `message-fill-paragraph'), use the fall-back function
before `fill-paragraph'.
When `org-indent-line-fallback-function' is set, always run it
instead of `org-indent-line-function'.
* org.el (org-read-date): Bugfix: call `org-eval-in-calendar'
with the 'keepdate parameter set to t when setting the cursor
type.
Thanks to Matt Lundin for reporting this and for the solution.
* org-agenda.el (org-agenda-persistent-marks): New option to
keep marks after a bulk action. The option defaults to nil.
(org-agenda-bulk-action): Use the new option.
* org.texi (Agenda commands): Document persistent marks.
* org-capture.el (org-capture-fill-template): Use %\n instead of %n as a
template element to be replaced with the nth prompted string.
(org-capture-templates): Update docstring.
* org.texi (Template expansion): Update doc to reflect change.
Using %n triggers errors when the template contains escaped strings,
which happens a lot with links.
* org-table.el (orgtbl-to-generic): Add check for :skipheadrule.
When present, the :hline following the head will be skipped. This is
necessary to avoid doubling of horizontal rules in LaTeX longtable
environments and consequent width problems.
* org-latex.el (org-export-latex-tables-tstart)
(org-export-latex-tables-hline)
(org-export-latex-tables-tend): New options.
(org-export-latex-tables): Use the new options.
* lisp/org-agenda.el (org-agenda-skip-timestamp-if-deadline-is-shown):
Skip timestamp items in agenda view if item is already shown as a
deadline item.
(org-agenda-skip-dealine-if-done): Pass deadline results to
org-agenda-get-timestamps.
(org-agenda-get-timestamps): Optionally take list of deadline results,
so that timestamp results can be skipped if already included in
deadline results.
* lisp/org-agenda.el (org-agenda-diary-sexp-prefix): Regexp matching
deadline/scheduling information to be displayed in diary sexp agenda
items.
(org-agenda-get-sexps): Extract deadline/scheduling information from
diary sexp entries.
* lisp/org-gnus.el: (org-gnus-follow-link): Fix argument to
gnus-group-read-group so that following a link does not result in
unread article being selected.
The NO-ARTICLE argument to gnus-group-read-group should be t.
Otherwise org-gnus-follow-link selects the most unread article in a
group before selecting the linked article. This results in unread
articles being unread (which can cause one to miss important mail).
* org-table.el (orgtbl-send-table): Escape special characters.
Introduce a new parameter :no-escape to prevent escaping.
* org.texi (Radio tables): Document the :no-escape parameter.
Thanks to Alexander Willand for raising this issue.
* org-agenda.el (org-toggle-sticky-agenda): Only shout a
message when called interactively.
(org-agenda-get-restriction-and-command): Call
`org-toggle-sticky-agenda' interactively.
* org-agenda.el (org-agenda-top-category-filter): New variable
for storing the current top-category filter.
(org-agenda-redo): Apply a top-category filter, if any.
(org-agenda-filter-by-top-category)
(org-agenda-filter-top-category-apply): Set
`org-agenda-top-category-filter' to the right value.
Thanks to John Wiegley for reporting this.
* org-clock.el (org-clock-out, org-clock-cancel)
(org-clock-in): Don't modify `frame-title-format' if it is a
string.
Thanks to Mike McLean for reporting this and to Matt Lundin for
pointing at the problem in the code.
* org.el (org-read-date): Set cursor-type to nil in the calendar.
* org-faces.el (org-date-selected): Use inverse video. Don't explicitely
set bold to nil as it causes `customize-face' to show the weight property
and thus encourage the user to change it. Warn in the docstring that using
bold might cause problems when displaying the calendar.
Using inverse video for the selected date might be too much for many
people, but with cursor-type set to nil (thanks to Toby Cubitt for this)
and with a light-weight font, we need to really highlight the selected
date -- and a simple color change is not catchy enough IMO.
* Makefile: move setup includes to top
* lisp/Makefile: reduce verbosity of org-version.el target, add a more
friendly @echo instead.
* targets.mk: provide compatibility target "oldorg" to do "compile
autoloads info" which is closest to the old behaviour.
* org-archive.el (org-archive-subtree): Allow archiving to a
datetree.
* org.el (org-archive-location): Ditto.
* org.texi (Moving subtrees): Document the ability to archive
to a datetree.
TINYCHANGE
* org-id.el (org-id-update-id-locations): New parameter to
silent `org-id-find'.
(org-id-find): Use the new parameter.
Thanks to Sébastien Vauban for raising a related issue.
* lisp/org-list.el (org-list-struct-indent): Follow
`org-list-demote-modify-bullet' specifications for ordered bullets.
(org-list-indent-item-generic, org-indent-item-tree,
org-outdent-item-tree): Fix bug when operating on a region.
(org-outdent-item, org-indent-item): Allow to operate on a region.
* lisp/org.el (org-shiftmetaleft, org-shiftmetaright): Allow to
operate on a region.
* testing/lisp/test-org-list.el: Add tests.
* org-agenda.el (org-agenda-bulk-mark): Truly make arg optional as
advertised by the function.
Problem here was that `org-agenda-bulk-toggle' calls
`org-agenda-bulk-mark' with no parameters; however, the (max arg 1)
call inside `org-agenda-bulk-mark' will fail with no parameter.
TINYCHANGE
* org.el (org-mode): Don't use `buffer-face-mode' by default.
Still set `org-default' as the face for `buffer-face-mode-face' in
case the user turn `buffer-face-mode' on.
* org-faces.el (org-date-selected): New face.
* org.el (org-date-ovl): Use `org-date-selected'.
This fixes a problem with bold faces enlarging the calendar window
unduely. See http://patchwork.newartisans.com/patch/1286/
* lisp/org-odt.el (org-odt-format-org-link): Pay no heed to
whether the internal links destined for headlines provide a
description or not. In fact, the `org-store-link' and
`org-insert-link' create internal links which do have a
description.
This fixes an issue where internal links terminating at an
invisible target (that is bound to a headline) was badly
rendered. Refer following thread:
http://lists.gnu.org/archive/html/emacs-orgmode/2012-04/msg00757.html
* lisp/org-capture.el (org-capture-place-entry): Place captured entry
immediately after last subheading of target, instead of just before
next heading at same level as target.
* lisp/org-capture.el (org-capture-templates): Document new capture
template properties.
* lisp/org-capture.el (org-capture-place-entry,
org-capture-empty-lines-before): Make new :empty-lines-before property
override :empty-lines when inserting empty lines before captured
captured entry.
* lisp/org-capture.el (org-capture-finalize,
org-capture-empty-lines-after): Make new :empty-lines-after property
override :empty-lines when inserting empty lines after captured
captured entry.
* org.el (org-link-prettify): New function to prettify links
while displaying them with `org-insert-link'.
(org-insert-link): Use the new function.
TINYCHANGE
* org.el (org-latex-create-formula-image-program): New option
to use either dvipng or imagemagick to convert and preview
LaTeX fragments.
(org-preview-latex-fragment, org-format-latex): Handle the new
option.
(org-create-formula-image-with-dvipng): Rename from
`org-create-formula-image'.
(org-create-formula-image-with-imagemagick): New defun to
handle LaTeX preview with imagemagick.
(org-latex-color, org-latex-color-format): New defuns to
handle color conversions.
* org-latex.el (org-latex-to-pdf-process, org-export-as-pdf):
Allow to use imagemagick to convert LaTeX fragments.
* org-html.el (org-export-html-preprocess): Ditto.
* org-exp.el (org-export-with-LaTeX-fragments): Ditto.
* org.texi (@LaTeX{} fragments): Document imagemagick as an
alternative to dvipng.
* org.el (org-repeat-re)
(org-clone-subtree-with-time-shift, org-auto-repeat-maybe)
(org-deadline, org-schedule, org-matcher-time)
(org-time-stamp, org-read-date, org-read-date-get-relative)
(org-display-custom-time, org-get-wdays)
(org-time-string-to-absolute, org-closest-date)
(org-timestamp-change): Allow to set hourly repeat cookie.
Send an error when an hourly repeat cookie is set and no hour
is specified in the timestamp.
* org.texi (Repeated tasks): Document repeat cookies for
years, months, weeks, days and hours.
* org-agenda.el (org-agenda-get-timestamps): Match hourly
repeat cookies.
* org-icalendar.el (org-print-icalendar-entries): Handle
hourly repeat cookies.
Thanks a lot to Takafumi Arakaki for this idea and for a preliminary
version of this patch.
* doc/Makefile: rename auto-generated file "git-describe.texi" to
"org-version.inc" to allow for easier inclusion into Emacs.
* doc/org.texi: include "org-version.inc" instead of
"git-describe.texi".
* lisp/Makefile: new auto-generated file org-version.el with autoload
cookies. The version strings will be pulled during autoload
extraction into org-install.el (standalone org-mode) or
../loaddefs.el (Emacs).
Makefile: remove includes for maintainer targets, these will go
into local.mk on the server
default.mk: introduce $(datadir) to replace $(etcdir) in etc/Makefile
doc/Makefile: replace $etcdir) with $(datadir)
lisp/Makefile: record ODT styles location as defconst in org-install
{doc,etc,lisp}/Makefile: prefix all installation targets with $(DESTDIR)
* targets.mk: target "all" for lisp directory does now the same as
"compile", i.e. it cleans .elc file first
* Makefile: describe all targets and re-arrange the target groups
* lisp/Makefile: use batch-byte-recompile-directory instead of
batch-byte-compile; remove pattern rule for compiling single file
from source
* lisp/Makefile: add compile-dirty to list of phony targets
* lisp/org.el (org-version): show the full path to org-install.el
in the version string to avoid confusion if multiple installations
exist or a previously loaded org-install.el has already defined a
version string that is now out of date.
* targets.mk: check for release and git version and record this
into environment variables for use in sub-make invocations; add
new target "compile-dirty" that does not invoke "make clean" first
* doc/Makefile, lisp/Makefile: remove git version check, since
they are now provided by first-level make
* lisp/Makefile: add insertion of version information into
org-install.el, have org-install.el depend on LISPF rather than
LISPC so that autoloads can be produced without compiling
everything and remove insertion into org.el and re-compilation
during install; add new target "compile-dirty" to support
invocation from first-level make
* lisp/org.el (org-version): remove determination of version
information, show "N/A" if the information is not provided via
org-install.el
* lisp/dependencies.mk: remove file
* lisp/Makefile: remove dependency on dependencies.mk
Rationale: since we will always start with a "make clean", the
dependencies file has become obsolete. The dependencies had not
been updated for a long time anyway and there seems to be no way
to produce them automatically.
* doc/Makefile: cleanall additionally removes the directories for
manual and guide; fix the dir file in infodir after removal of org
documentation
* lisp/Makefile: remove debug statement
* Makefile, lisp/Makefile, doc/Makefile: add target clean-install
to remove files in install-directories
* default.mk: add customization variable $(SED)
* doc/Makefile: do not remove dir while cleaning
* lisp/Makefile: use sed instead of perl to weave git-status into
org.el and ignore any errors while doing it. Keep git status in
$(GITSTATUS) to make it more clear what happens in the check.
* lisp/org.el (org-git-version): placeholder for recording the Git
version of org during install
* lisp/org.el (org-version): initialize local git-version with
placeholder and fall through using it when org is not installed in
a Git repository
* Makefile: use info function for output and call shell only once
* default.mk: add PDFTEX and RMR variables for customization
* lisp/Makefile: add target 'all' and create $(lispdir) if necessary
* maint-targets.mk: invoke sub-make for HTML manuals
* maint.mk: remove unsused VARIABLES
* targets.mk: invoke sub-make for ./doc and clean up some targets
* Makefile: add an optional include local.mk
* default.mk: install lisp files into org subfolder by default
* lisp/Makefile: new file to handle all make targets within lisp
* lisp/dependencies.mk: dependencies, should rather be auto-generated
* maint.mk: remove obsolete variable definitions
* targets.mk: hand off to sub-make in ./lisp, remove unused targets
* lisp/org-odt.el (org-odt-format-org-link): Pay no heed to
whether the internal links destined for headlines provide a
description or not. In fact, the `org-store-link' and
`org-insert-link' create internal links which do have a
description.
This fixes an issue where internal links terminating at an
invisible target (that is bound to a headline) was badly
rendered. Refer following thread:
http://lists.gnu.org/archive/html/emacs-orgmode/2012-04/msg00757.html
* org-faces.el (org-date-selected): New face.
* org.el (org-date-ovl): Use `org-date-selected'.
This fixes a problem with bold faces enlarging the calendar window
unduely. See http://patchwork.newartisans.com/patch/1286/
* org.el (org-parse-time-string): Allow strings supported by tags/properties
matcher (eg <now>, <yesterday>, <-7d>) if the time starts with < and ends
with >. This means that e.g. in the clocktable parameters you can specify
:tstart "<-1w>" :tend "<now>".
TINYCHANGE
* lisp/org-agenda.el (org-agenda-skip-if, org-agenda-skip-if-todo):
Add new todo-unblocked and nottodo-unblocked skip conditions. These
match as for todo and nottodo, but only for unblocked todo items.
TINYCHANGE
This patch adds two new tests to `org-agenda-skip-if': 'todo-unblocked
and 'nottodo-unblocked. These match like 'todo and 'nottodo, but only on
unblocked todo items. This type of test is useful when compiling custom
agenda views containing lists of currently actionable todo items.
Whilst it's possible to code such tests in `org-agenda-custom-commands'
directly (well, Elisp is Turing-complete: you can in principle code
anything!), it's far less convenient than a simple `org-agenda-skip-if'
test which can reuse much of the existing machinery.
Note that the attached patch applies on top of my other "Fix
org-agenda-skip-if bug" patch, though this new feature is independent of
that bug-fix.
* org-clock.el: New option `org-clock-clocked-in-display' to control
whether the current clock is displayed in the mode line and/or frame
title.
* org-timer.el: New option `org-timer-display' to control whether
the current timer is displayed in the mode line and/or frame title.
This allows the clock and timer to be displayed in the frame title instead of,
or as well as, the mode line. This is useful for people with limited space in
the mode line but with ample space in the frame title.
* org-beamer.el (org-beamer-auto-fragile-frames): Make
[fragile] work with overlay specifications.
If the BEAMER_envargs property contains optional parameters together
with an overlay specification like [option]<1-2>, the exporter turns
the start of the frame into \begin{frame}<1-2>[option]. If then
[fragile] needs to be added, this becomes
\begin{frame}[fragile]<1-2>[option] and causes a LaTeX error.
With this patch [fragile] is added in a way such that the line becomes
\begin{frame}<1-2>[fragile,option].
TINYCHANGE
* org.el (org-mode): Don't use `buffer-face-mode' by default.
Still set `org-default' as the face for `buffer-face-mode-face' in
case the user turn `buffer-face-mode' on.
* org-agenda.el (org-agenda-bulk-mark): Truly make arg optional as
advertised by the function.
Problem here was that `org-agenda-bulk-toggle' calls
`org-agenda-bulk-mark' with no parameters; however, the (max arg 1)
call inside `org-agenda-bulk-mark' will fail with no parameter.
TINYCHANGE
* lisp/org-list.el (org-list-struct-indent): Follow
`org-list-demote-modify-bullet' specifications for ordered bullets.
(org-list-indent-item-generic, org-indent-item-tree,
org-outdent-item-tree): Fix bug when operating on a region.
(org-outdent-item, org-indent-item): Allow to operate on a region.
* lisp/org.el (org-shiftmetaleft, org-shiftmetaright): Allow to
operate on a region.
* testing/lisp/test-org-list.el: Add tests.
* org-ascii.el (org-export-ascii-underline): Change the
default underlining characters for headlines of level 1 and 2.
Also introduce \. as the underline character for headlines of
level 5.
Thanks to Mathias Bauer for suggesting this.
* org-clock.el (org-clock-task-overrun-text)
(org-task-overrun, org-clock-get-clock-string)
(org-clock-update-mode-line)
(org-clock-notify-once-if-expired): Rename `org-task-overrun'
and `org-task-overrun-text' to `org-clock-task-overrun' and
`org-clock-task-overrun-text' respectively.
(org-task-overrun-text): New alias.
* org-pcomplete.el (pcomplete/org-mode/file-option): Fix bug
in `pcomplete/org-mode/file-option'.
Before this fix, completing #+ATTR worked only once, as
`org-additional-option-like-keywords' was modified.
* org-agenda.el (org-agenda-filter-make-matcher)
(org-agenda-filter-apply): Allow filtering entries out by
category. Using `C-u <' from the agenda view will redisplay
the agenda without entries from categories of the current
line.
Thanks to John Wiegley for pointing this out.
Thanks to Dov Grobgeld for pointing out this fix.
* lisp/ob-C.el (org-babel-C-ensure-main-wrap): Add an explicit return
to automatically generated main methods.
* org.el (org-point-at-end-of-empty-headline): Only try to
match ̀org-todo-line-regexp' when the value is non-nil, e.g.
in non-org modes.
Thanks to Jambunathan for bringing this up.
* org-table.el (org-table-get-range): Fix bug: make sure
references to $0 are correctly handled.
Thanks to Nick Dokos for the suggestion.
This fixes the computation of values in this table:
| Record | Slope | ConfLower | ConfUpper |
|----------+--------------+--------------+--------------|
| GISTEMP | 0.0173837600 | 0.0133209130 | 0.0214466060 |
| HadCrut3 | 0.0158602890 | 0.0118664610 | 0.0198541180 |
See this message/thread:
http://article.gmane.org/gmane.emacs.orgmode/54341
* org.el (org-fontify-meta-lines-and-blocks-1): Prevent more
fontification errors.
Thanks to Henning Redestig for reporting this and to Nick Dokos for
digging further.
* org-table.el (org-table-recalculate-buffer-tables)
(org-table-iterate-buffer-tables): Add autoload cookie.
Thanks to Sébastien Vauban who suggested adding an autoload
cookie for `org-table-iterate-buffer-tables'.
* lisp/org.el: (org-after-todo-state-change-hook): Fix docstring to
reflect name change of state to org-state.
The renamed variable can cause user hooks added to
org-after-todo-state-change-hook to break, so it is essential to have
the correct variable name in the docstring.
* org-bbdb.el (org-bbdb-anniv-extract-date, org-bbdb-make-anniv-hash):
Fix org-bbdb anniversary functionality to accommodate bbdb 3.x.
There are two major changes in bbdb 3.x that need to be taken into
account. The first is that `bbdb-split' reverses the order of its
parameters in 3.x. The second is that `bbdb-record-getprop' is
replaced by bbdb-record-note in 3.x.
* lisp/org-footnote.el (org-footnote-delete-definitions): Remove blank
lines before the footnote definition instead of removing those after
it.
* testing/lisp/test-org-footnote.el: Adapt tests.
* lisp/org-icalendar.el (org-icalendar-timezone): Fix typo and clarify
meaning.
Small typo (of -> or); clarify meaning of how timezone is calculated if
this variable is left as nil.
TINYCHANGE
* lisp/org-html.el (org-export-as-html): Remove the check for
body-only in the code for generating tables of contents.
The docstring for org-export-as-html states that the body-only flag
removes everything outside the <body></body> tags (inclusive). Since
the table of contents is inside these tags, it should be exported when
requested even if the body-only flag is set.
* org.el (org-fill-paragraph): Leave scheduled/deadline lines
untouched when filling an adjacent paragraph.
Thanks to Stuart McLean for suggesting this.
* org.el (org-fontify-meta-lines-and-blocks-1): Prevent an
error when trying to fontify beyond (point-max).
TINYCHANGE
Thanks to Leo and Henning for reporting this, and to Nick Dokos
for providing the fix.
* org-html.el (org-export-html-preamble-format)
(org-export-html-postamble-format): Improve the docstring.
* org.texi (HTML preamble and postamble): Small doc improvement.
Thanks to Zachary Jones who asked for this.
This will no longer insert the value of the :file header argument as
the description if the description is left blank (as this changes
the meaning of the :file header argument).
The desc handling logic is moved to the `org-babel-result-to-file'
function.
* lisp/ob.el (org-babel-result-to-file): New optional description
argument.
(org-babel-insert-result): Moved description logic to another
function.
* lisp/ob.el (org-babel-insert-result): Change name of filelinkdescr
to file-desc.
(org-babel-common-header-args-w-values): Change name of
filelinkdescr to file-desc.
Thanks to Richard Stanton for pointing out this problem and
suggesting the fix.
* lisp/ob-C.el (org-babel-C-execute): Add .exe to the end of compiled
C files on windows.
Thanks to Richard Stanton for pointing out this problem and
suggesting the fix.
* lisp/ob-C.el (org-babel-C-execute): Add .exe to the end of compiled
C files on windows.
* lisp/ob-exp.el (org-babel-exp-code): Escape all lines when exporting
Org-mode blocks.
* lisp/ob.el (org-babel-parse-src-block-match): Make use of the new
language argument to org-babel-strip-protective-commas.
(org-babel-parse-inline-src-block-match): Make use of the new
language argument to org-babel-strip-protective-commas.
(org-babel-strip-protective-commas): Now accepts a language
argument.
Conflicts:
lisp/ob-exp.el
* lisp/ob-exp.el (org-babel-exp-code): Escape all lines when exporting
Org-mode blocks.
* lisp/ob.el (org-babel-parse-src-block-match): Make use of the new
language argument to org-babel-strip-protective-commas.
(org-babel-parse-inline-src-block-match): Make use of the new
language argument to org-babel-strip-protective-commas.
(org-babel-strip-protective-commas): Now accepts a language
argument.
This reverts commit 4202665f5b.
The buffer file name is not always available (e.g., during export), so
it should not be relied upon, rather a header argument should be used.
* lisp/ob-exp.el (org-babel-exp-src-block): Remove noweb handling from
the top level.
(org-babel-exp-code): Noweb handling for code export.
(org-babel-exp-results): Noweb handling for results export.
* lisp/org-lparse.el (org-lparse-insert-org-table): Consider
short caption as plain text and not as org text.
* lisp/org-odt.el (org-export-odt-format-formula)
(org-export-odt-format-image): ditto.
Fixes earlier checkin. See
http://lists.gnu.org/archive/html/emacs-orgmode/2012-03/msg01212.html
Handling of short captions is only a convenience feature.
From within LibreOffice one can always create an "unprotected"
editable index and later manually delete unwanted index entries (for
example, delete uncaptioned entries which are given automatic names)
or modify existing entries (for example, fix long captions to their
short versions).
* lisp/org-odt.el (org-odt-begin-table)
(org-export-odt-format-formula, org-export-odt-format-image)
(org-odt-format-entity): Handle short caption.
* lisp/org-lparse.el (org-lparse-insert-org-table)
(org-lparse-insert-list-table, org-lparse-insert-table-table):
Ditto.
Handle short caption for tables, figures and formulae.
#+CAPTION: [Caption for index entry]{Regular caption.}
Fix for bug
http://lists.gnu.org/archive/html/emacs-orgmode/2012-03/msg01169.html
* org.el (org-mode): Use `buffer-face-mode' to remap the
'default face to 'org-default.
Thanks to Du Yanning for raising an issue that this patch circumvents.
* org.el: Prevent a bug while defining the menu by requiring
`org-beamer' when necessary.
* org-beamer.el (org-insert-beamer-options-template): Make the
parameter optional since the interactive call defines it.
* org-table.el (orgtbl-self-insert-command): Use
`backward-delete-char' instead of `delete-backward-char' as
this last command gets caught by the compiler which says to
not use it in programs. `backward-delete-char' is just an
alias for `delete-backward-char' which is internally remapped
to `org-delete-backward-char' for optimization purpose.
* org.el (org-self-insert-command): Ditto.
* org-latex.el (org-export-latex-subcontent): Bugfix: when
`org-export-latex-low-levels' is nil, do not export low levels.
Thanks to Nick Dokos for spotting this.
* org.el (org-set-tags): Include `org-tag-alist' in the list
of possible completions, even when there are tags defined in
the buffer.
Thanks to Mike McLean for reporting this.
* org.el (org-fast-tag-selection): Include tags from
`org-tag-alist' when completing with the TAB key.
Thanks to Mike McLean for reporting this problem.
* org-latex.el (org-export-latex-subcontent): Don't insert a
linebreak when itemizing a subtree that is just a headline.
Thanks to Richard Stanton for spotting this.
* lisp/ob-maxima.el (org-babel-maxima-command): The maxima command
used should be configurable (defaults to maxima-command if defined).
(org-babel-execute:maxima): The maxima command used should be
configurable (defaults to maxima-command if defined).
* lisp/ob-C.el (org-babel-C-execute): Add the local directory to the
library search path for C/C++ block compilation.
This patch was submitted to the list by Daimrod.
* lisp/org-colview.el (org-columns-cleanup-item): Handle case of empty
headline
* lisp/org-colview-xemacs.el (org-columns-cleanup-item): Handle case of empty
headline
TINYCHANGE
* org.el (org-read-date): Don't mention `parse-time-weekdays'
and `parse-time-months' in the docstring.
This problem has been reported by Michael Heerdegen -- see
Emacs bug#11042 against 24.0.94.
* org-colview.el (org-columns-compute): Also consider inline
tasks when computing the sum.
TINYCHANGE
Thanks to Myles English for spotting this and for his patch,
this one is a slightly modified version of his.
* org-latex.el (org-export-as-latex): Fix bug in setting the
export directory according to the LaTeX options.
Thanks to A. Major for reporting this and to Christian Moe for suggesting a
fix.
lisp/org.el (org-scan-tags): Require todo-only argument, and document
that it should be the same one set by make-org-tags-matcher.
Fix documentation to explain that todo-only is really
not-done-todo-only.
(org-make-tags-matcher): If todo part of matcher starts with /!,
matcher now always checks that the TODO keyword is present and
is a not-done state. This matters e.g. for org-map-entries
which unlike org-scan-tags does not do its own separate todo-only
filtering. Added docs to explain matcher dependencies.
(org-map-entries): Make sure todo-only is correctly passed from
org-make-tags-matcher to org-scan-tags.
* lisp/org-clock.el: (org-clock-get-table-data): Make sure todo-only
does not leak when it is set by make-org-tags-macher.
* lisp/org-crypt.el: (org-encrypt-entries, org-decrypt-entries): Make
sure todo-only is correctly passed from org-make-tags-matcher to
org-scan-tags.
* contrib/lisp/contacts.el: (org-contacts-filter) : Make sure todo-only
is correctly passed from org-make-tags-matcher to org-scan-tags.
is redisplayed, it was losing the 'extra property on redisplay
* lisp/org-agenda.el (org-agenda-change-all-lines): move accessing of
'extra text property outside of with-current-buffer for original
buffer
* org.el (org-cycle-internal-local): Don't try to hide drawers
within subtrees in this function, it slows cycling down.
This comments the change made in commit
bb28480169
Thanks to Marcel Van der Boom for reporting this.
* org-agenda.el (org-agenda-custom-commands-local-options):
Fix incorrect custom option definition.
Thanks to Joe Vornehm Jr. for this patch.
See http://patchwork.newartisans.com/patch/1231/
* org-colview.el (org-columns-display-here): Bugfix: use the date as the
value for the ITEM column when displaying a summary.
Thanks to Rasmus Rempling for reporting this and to Nick Dokos for digging
further.
* lisp/org-odt.el (org-odt-format-entity-caption): Enumerate
entities that have either a caption or a label.
(org-odt-label-styles, org-odt-category-map-alist): Add a
separator between sequence number and caption. Introduced two
new label styles for handling of math formula and math label.
(org-odt-format-label-definition)
(org-export-odt-format-formula): Propagate above changes.
* lisp/org-odt.el (org-export-odt-category-strings): New
custom variable.
(org-odt-category-map-alist): Modify interpretation. Don't
use the same field to double up as both a OpenDocument
variable and a category string. Entries in this list now
specify only the OpenDocument variable. Category strings are
obtained through an indirect lookup of
`org-export-odt-category-strings'. Use same OpenDocument
variables as what LibreOffice uses for various entities. Fix
docstring.
(org-odt-add-label-definition)
(org-odt-format-label-definition)
(org-odt-format-label-reference): Propagate above changes.
Fix for the following bug:
http://lists.gnu.org/archive/html/emacs-orgmode/2012-03/msg00628.html
* lisp/org-lparse.el (org-do-lparse): Make effective setting
of `org-export-headline-levels' available to the ODT exporter.
Also remove some stale comments.
* lisp/org-odt.el (org-odt-format-link): Add support for
generating cross-references to chapter numbers.
(org-odt-format-org-link): Resolve links to outline headings
as section numbers. This special case resolution kicks in
only if the Org link has no description and the target outline
is not listified i.e., it is at a level within
`org-export-headline-levels'.
Fix for the following request:
http://lists.gnu.org/archive/html/emacs-orgmode/2012-02/msg01035.html
The above change is in conformity with the way links to
headlines will be treated in new ODT exporter that will be
built on top of Nicolas' org-element/org-export
infrastructure.
* org-src.el (org-edit-src-code): Change let bind to let*,
e.g. if case-fold-search is bound to nil globally, the
(case-fold-search t) doesn't work until we get to the body.
The fix and analysis was provided by Nick Dokos on this
email message thread:
<http://thread.gmane.org/gmane.emacs.orgmode/53335/focus=53342>
TINY CHANGE
I started from the 78ec8e commit then cherry-picked and squashed
commits that have been done in master since then, except the bad
commits that overwrote the tree (in master) with the tree in maint.
This commit also bumps the version number to 7.8.06.
The only "fix" that was made between 78ec8e and the previous commit
is e0072f which has been reported to break stuff.
* org-exp.el (org-export-language-setup): Add japanese translation.
Translation by Hideki SAITO
<CAAaRP5umR8kDfZoZw6y2XJgyL70YdiJqLtpBvX++0ff+mU=fhA@mail.gmail.com>,
converted to numeric character entities.
TINYCHANGE
* org.el (org-scan-tags): Require one or more spaces (+) between
keyword and headline.
Otherwise the re will match a line like:
* TODO@ Foobar
And assumes the @ to be part of the headline.
This fixes a glitch reported by Simon Thum in
<4F53DEF7.8080604@gmx.de>.
> Hi all,
>
> I have found some irritating behaviour, potentially a bug. I have a
> block agenda which goes like:
>
> tags-todo "@home&TODO=\"TODO\"
>
> and it displays a certain org line that reads
>
> **** TODO_ state triggers
>
> Which is just a heading for dealing with TODO state triggers, and I
> appended the _ as I don't want it to be a TODO.
>
> For example, the global TODO list and syntax highlighting does not
> consider it a todo, but C-c a m TODO="TODO" does. TODO="T" does not,
> so it's not very grave.
>
> Most likely, it's simply an inconsistency arising from not having a
> real parser. I just wanted to report it here so it may get fixed.
* org-agenda.el (org-prepare-agenda): Don't reset
`org-done-keywords-for-agenda' when org-agenda-multi.
Fixes a bug with DONE keywords in org-todo face reported by Hans-Peter
Deifel in <87r4xwypxh.fsf@hpdeifel.de>.
This fixes a wrong merge that should not have happened:
commit 7e903a merges the master branch into the maint branch,
while we really want to keep the maint branch a bugfix-only
branch.
This commit reverts back the maint branch to its state before
merging the master branch. From there, we will fix remaining
problems with the maint branch (e.g. copyright issues) then
release this maint branch as Org-mode 7.8.05.
* org-src.el (org-src-edit-buffer-p): New function.
* org.el (org-store-link): Use the new function to correctly
match source code buffer.
TINYCHANGE
Thanks to Ilya Shlyakhter for this patch.
* org-agenda.el (org-agenda-skip-if): Fix the order conditions
are being checked. Also enhance the docstring a bit.
TINYCHANGE
Thanks to Toby Cubitt for a patch to this effect.
* org-agenda.el (org-agenda-tree-to-indirect-buffer): Fix the
display of indirect agenda window.
TINYCHANGE
Thanks to Dave Abrahams for a patch to this effect.
* lisp/org-clock.el (org-clock-get-table-data): Bind org-scanner-tags
to tags-list and org-trust-scanner-tags to t while evaluating the
matcher, since the matcher is always evaluated at the current entry.
TINYCHANGE
On 3/16/2012 2:10 AM, Nick Dokos wrote:
> One more thing that you'll need to do is put your patches in attachments
> of a type that will allow patchwork to snag the patch:
Thanks, I was wondering why they're not showing up.
Here is another try (attached) for the org.el patch.
ilya
>From 95c38b06803aec0787bc2eaab3d0062221390292 Mon Sep 17 00:00:00 2001
From: Ilya Shlyakhter <ilya_shl@alum.mit.edu>
Date: Fri, 16 Mar 2012 00:10:25 -0400
Subject: [PATCH 2/2] Tags/properties matcher: faster matching by trusting
org-scanner-tags
* lisp/org.el (org-scan-tags): Bind org-trust-scanner-tags to t
while evaluating the matcher, since the matcher is always evaluated
at the current entry.
TINYCHANGE
* lisp/ob-lilypond.el (ly-compile-lilyfile): Fixed misplaced comma in a
quoting expression.
* lisp/org-pcomplete.el: added missing defvar definitions for org vars
* lisp/org-src.el: added declare-function line for org-babel-tangle
* lisp/ob.el (org-scan-tags): protected the variable tags-list with a let
(other) added missing defvar declarations.
TINYCHANGE
* lisp/ob.el (org-babel-merge-params): Add "eval" as acceptable noweb
argument.
(org-babel-noweb-p): The "eval" argument only expands during
evaluation.
* org-attach.el (org-attach-store-link-p): Remove spurious quote in
customization form choice.
Glitch discovered and fix suggested by Henning Weiss in
<CAKq33udFSsBP0egVrgfjcBnou+PhKtyYaGBn0SfMicp42h0=kw@mail.gmail.com>>.
* lisp/ob-lilypond.el: Make auditioning of midi and pdf asynchronous,
and add easy pdf generation in the form of `ly-gen-pdf' variable.
* testing/lisp/test-ob-lilypond.el: Tests for above.
* lisp/org-agenda.el (org-agenda-local-vars): Clean up the variable list.
(org-agenda-get-restriction-and-command): Add a key for toggling
sticky agenda views.
* doc/org.texi (Agenda dispatcher): Document sticky agenda views
and the new key for them.
This is just an intermediate commit, to make sure that the comments
are all visible in the git history.
* lisp/org-agenda.el (org-agenda-local-vars): Final decisions about global/local
* lisp/org-agenda.el (org-agenda-force-single-file): Variable removed.
(org-prepare-agenda-window): Store pre-agenda window config locally.
(org-timeline): Introduce a scoped version of `org-agenda-show-log'.
(org-agenda-list): Introduce a scoped version of
`org-agenda-show-log'.
(org-agenda-get-progress): Use the scoped version of
`org-agenda-show-log'.
(org-agenda-local-vars): Write the analysis result as a comment - to
be cleaned up in the next iteration.
* lisp/org-agenda.el (org-toggle-sticky-agenda): Kill all agenda buffers
when toggling sticky-agendas.
(org-agenda-get-restriction-and-command): Add `C-c a C-k' as a key to
explicitly kill all agenda buffers.
(org-agenda-run-series): Remove any old agenda markers in the buffer
that is going to take the new block agenda.
(org-prepare-agenda): Reset markers before erasing the buffer anc
running `org-agenda-mode', because after that hte local variable
`org-agenda-markers' will have gone away.
(org-agenda-Quit):
(org-finalize-agenda): Install the marker resetter into
the `kill-buffer-hook'.
(org-agenda-save-markers-for-cut-and-paste): Look for markers in all
agenda buffers.
(org-agenda-kill-all-agenda-buffers): New function.
* lisp/ob-tangle.el (org-babel-tangle): Don't prompt for a file name
if :tangle is specified.
* lisp/ob.el (org-babel-expand-noweb-references): Widen buffer when
expanding noweb references.