Commit 801a68c8 authored by Bastien Guerry's avatar Bastien Guerry

Sync with Org 7.8.09 (bugfix release)

parent e645df7c
2012-04-11 Jérémie Courrèges-Anglas <> (tiny change)
* org.texi (Deadlines and scheduling): Fix the example: the
DEADLINE item should come right after the headline. We enforce
this convention, so it is a bug not to illustrate it correctly in
the manual.
2012-04-11 Ippei FURUHASHI <> (tiny change)
* org.texi (Agenda commands): Fix documentation bug by swapping
the equivalent keybindings to `org-agenda-next-line' with the ones
to `org-agenda-previous-line'.
2012-04-07 Glenn Morris <>
* Replace non-portable use of $< in ordinary rules.
......@@ -4,8 +4,8 @@
@setfilename ../../info/org
@settitle The Org Manual
@set VERSION 7.8.07
@set DATE March 2012
@set VERSION 7.8.09
@set DATE April 2012
@c Use proper quote and backtick for code sections in PDF output
@c Cf. Texinfo manual 14.2
......@@ -5698,8 +5698,8 @@ until the entry is marked DONE. An example:
*** TODO write article about the Earth for the Guide
The editor in charge is [[bbdb:Ford Prefect]]
DEADLINE: <2004-02-29 Sun>
The editor in charge is [[bbdb:Ford Prefect]]
@end example
You can specify a different lead time for warnings for a specific
......@@ -7852,9 +7852,9 @@ the other commands, the cursor needs to be in the desired line.
@cindex motion commands in agenda
Next line (same as @key{up} and @kbd{C-p}).
Next line (same as @key{down} and @kbd{C-n}).
Previous line (same as @key{down} and @kbd{C-n}).
Previous line (same as @key{up} and @kbd{C-p}).
@tsubheading{View/Go to Org file}
Display the original location of the item in another window.
......@@ -9537,12 +9537,12 @@ the web, while the XOXO format provides a solid base for exchange with a
broad range of other applications. @LaTeX{} export lets you use Org mode and
its structured editing functions to easily create @LaTeX{} files. DocBook
export makes it possible to convert Org files to many other formats using
DocBook tools. OpenDocument Text(ODT) export allows seamless
DocBook tools. OpenDocument Text (ODT) export allows seamless
collaboration across organizational boundaries. For project management you
can create gantt and resource charts by using TaskJuggler export. To
incorporate entries with associated times like deadlines or appointments into
a desktop calendar program like iCal, Org mode can also produce extracts in
the iCalendar format. Currently Org mode only supports export, not import of
the iCalendar format. Currently, Org mode only supports export, not import of
these different formats.
Org supports export of selected regions when @code{transient-mark-mode} is
......@@ -10869,10 +10869,10 @@ one format (say @samp{csv}) to another format (say @samp{ods} or @samp{xls}).
If you have a working installation of LibreOffice, a document converter is
pre-configured for you and you can use it right away. If you would like to
use @file{unoconv} as your preferred converter, customize the variable
@code{org-export-odt-convert-process} to point to @code{unoconv}. If you
would like to use a converter of your own choosing or tweak the default
settings of the default @file{LibreOffice} and @samp{unoconv} converters
@xref{Configuring a document converter}.
@code{org-export-odt-convert-process} to point to @code{unoconv}. You can
also use your own favorite converter or tweak the default settings of the
@file{LibreOffice} and @samp{unoconv} converters. @xref{Configuring a
document converter}.
@subsubsection Automatically exporting to other formats
......@@ -11206,7 +11206,7 @@ that the @file{dvipng} program be available on your system.
For various reasons, you may find embedding @LaTeX{} math snippets in an
ODT document less than reliable. In that case, you can embed a
math equation by linking to its MathML(@file{.mml}) source or its
math equation by linking to its MathML (@file{.mml}) source or its
OpenDocument formula (@file{.odf}) file as shown below:
......@@ -11269,7 +11269,7 @@ Illustration 2: Bell curve
Export of literal examples (@pxref{Literal examples}) with full fontification
is supported. Internally, the exporter relies on @file{htmlfontify.el} to
generate all style definitions needed for a fancy listing.@footnote{Your
@file{htmlfontify.el} library must atleast be at Emacs 24.1 levels for
@file{htmlfontify.el} library must at least be at Emacs 24.1 levels for
fontification to be turned on.} The auto-generated styles have @samp{OrgSrc}
as prefix and inherit their color from the faces used by Emacs
@code{font-lock} library for the source language.
......@@ -11318,10 +11318,9 @@ the variable @code{org-export-odt-convert-processes}. Also specify how the
converter can be invoked via command-line to effect the conversion.
@item Configure its capabilities
@vindex org-export-odt-convert-capabilities
@vindex org-export-odt-convert-capabilities
Specify the set of formats the converter can handle by customizing the
variable @code{org-export-odt-convert-capabilities}. Use the default value
for this variable as a guide for configuring your converter. As suggested by
......@@ -11460,7 +11459,7 @@ regular text.
@end example
@strong{Hint:} To see the above example in action, edit your
@file{styles.xml}(@pxref{x-orgodtstyles-xml,,Factory styles}) and add a
@file{styles.xml} (@pxref{x-orgodtstyles-xml,,Factory styles}) and add a
custom @samp{Highlight} style as shown below.
......@@ -11479,7 +11478,7 @@ directive. For example, to force a page break do the following:
@end example
@strong{Hint:} To see the above example in action, edit your
@file{styles.xml}(@pxref{x-orgodtstyles-xml,,Factory styles}) and add a
@file{styles.xml} (@pxref{x-orgodtstyles-xml,,Factory styles}) and add a
custom @samp{PageBreak} style as shown below.
This diff was suppressed by a .gitattributes entry.
% Reference Card for Org Mode
\def\versionyear{2012} % latest update
\def\year{2012} % latest copyright year
2012-04-11 Bastien Guerry <>
* 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
(org-fontify-meta-lines-and-blocks-1): Prevent errors when trying
to fontify beyond (point-max).
* org-clock.el (org-clock-task-overrun-text)
(org-task-overrun, org-clock-get-clock-string)
(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-table.el (org-table-eval-formula): Fix bug about handling
remote references as durations.
(org-table-get-range): Fix bug: make sure references to $0 are
correctly handled.
* org-pcomplete.el (pcomplete/org-mode/file-option): Fix bug in
(org-thing-at-point): Also match line options like LATEX_CLASS
when pcompleting from LATEX_.
* 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
2012-04-11 Eric Schulte <>
* ob-C.el (org-babel-C-ensure-main-wrap): Add an explicit return
to automatically generated main methods.
2012-04-11 Matt Lundin <>
* org.el (org-after-todo-state-change-hook): Fix docstring to
reflect name change of state to `org-state'.
2012-04-11 Mike Sperber <> (tiny change)
* org-footnote.el (org-footnote-normalize): Correctly pass keyword
arguments to `org-export-preprocess-string'.
2012-04-03 Bastien Guerry <>
* org.el (org-todo): Fix regression: rename `state' to
......@@ -152,7 +152,7 @@ it's header arguments."
"Wrap body in a \"main\" function call if none exists."
(if (string-match "^[ \t]*[intvod]+[ \t\n\r]*main[ \t]*(.*)" body)
(format "int main() {\n%s\n}\n" body)))
(format "int main() {\n%s\nreturn(0);\n}\n" body)))
(defun org-babel-prep-session:C (session params)
"This function does nothing as C is a compiled language with no
......@@ -6365,7 +6365,9 @@ to switch to narrowing."
(dolist (x (delete-dups
(append (get 'org-agenda-category-filter
:preset-filter) org-agenda-category-filter)))
(setq f1 (list 'equal (substring x 1) 'cat))
(if (equal "-" (substring x 0 1))
(setq f1 (list 'not (list 'equal (substring x 1) 'cat)))
(setq f1 (list 'equal (substring x 1) 'cat)))
(push f1 f))
(cons 'and (nreverse f))))
......@@ -6396,9 +6398,13 @@ If the line does not have an effort defined, return nil."
(let (tags cat)
(if (eq type 'tag)
(setq org-agenda-tag-filter filter)
(setq org-agenda-category-filter filter
org-agenda-filtered-by-category t))
(setq org-agenda-category-filter filter))
(setq org-agenda-filter-form (org-agenda-filter-make-matcher))
(if (and (eq type 'category)
(not (equal (substring (car filter) 0 1) "-")))
;; Only set `org-agenda-filtered-by-category' to t
;; when a unique category is used as the filter
(setq org-agenda-filtered-by-category t))
(goto-char (point-min))
......@@ -6412,7 +6418,7 @@ If the line does not have an effort defined, return nil."
(beginning-of-line 2))
(beginning-of-line 2))))
(if (get-char-property (point) 'invisible)
(ignore-errors (org-agenda-previous-line)))))
(defun org-agenda-filter-hide-line (type)
(let (ov)
......@@ -219,7 +219,8 @@ auto Automatically, either `all', or `repeat' for repeating tasks"
(const :tag "All task time" all)
(const :tag "Automatically, `all' or since `repeat'" auto)))
(defcustom org-task-overrun-text nil
(defvaralias 'org-task-overrun-text 'org-clock-task-overrun-text)
(defcustom org-clock-task-overrun-text nil
"The extra modeline text that should indicate that the clock is overrun.
The can be nil to indicate that instead of adding text, the clock time
should get a different face (`org-mode-line-clock-overrun').
......@@ -495,7 +496,7 @@ pointing to it."
(insert (format "[%c] %-15s %s\n" i cat task))
(cons i marker)))))
(defvar org-task-overrun nil
(defvar org-clock-task-overrun nil
"Internal flag indicating if the clock has overrun the planned time.")
(defvar org-clock-update-period 60
"Number of seconds between mode line clock string updates.")
......@@ -516,7 +517,7 @@ If not, show simply the clocked time like 01:50."
(format org-time-clocksum-format h m)
'face (if (and org-task-overrun (not org-task-overrun-text))
'face (if (and org-clock-task-overrun (not org-clock-task-overrun-text))
'org-mode-line-clock-overrun 'org-mode-line-clock)))
(effort-str (format org-time-clocksum-format effort-h effort-m))
(clockstr (org-propertize
......@@ -532,7 +533,7 @@ If not, show simply the clocked time like 01:50."
(defun org-clock-update-mode-line ()
(if org-clock-effort
(setq org-task-overrun nil))
(setq org-clock-task-overrun nil))
(setq org-mode-line-string
(let ((clock-string (org-clock-get-clock-string))
......@@ -546,10 +547,10 @@ If not, show simply the clocked time like 01:50."
'local-map org-clock-mode-line-map
'mouse-face (if (featurep 'xemacs) 'highlight 'mode-line-highlight)
(if (and org-task-overrun org-task-overrun-text)
(if (and org-clock-task-overrun org-clock-task-overrun-text)
(setq org-mode-line-string
(concat (org-propertize
'face 'org-mode-line-clock-overrun) org-mode-line-string)))
......@@ -606,7 +607,7 @@ Notification is shown only once."
(when (org-clocking-p)
(let ((effort-in-minutes (org-duration-string-to-minutes org-clock-effort))
(clocked-time (org-clock-get-clocked-time)))
(if (setq org-task-overrun
(if (setq org-clock-task-overrun
(if (or (null effort-in-minutes) (zerop effort-in-minutes))
(>= clocked-time effort-in-minutes)))
......@@ -704,7 +704,7 @@ Additional note on `org-footnote-insert-pos-for-preprocessor':
'(:todo-keywords t :tags t :priority t))))
(org-export-preprocess-string def parameters))
(apply #'org-export-preprocess-string def parameters))
;; Reference beginning position is a marker
;; to preserve it during further buffer
......@@ -69,7 +69,7 @@ The return value is a string naming the thing at point."
(re-search-backward "^[ \t]*#\\+\\([A-Z_]+\\):.*"
(line-beginning-position) t))
(cons "file-option" (match-string-no-properties 1)))
((string-match "\\`[ \t]*#\\+[a-zA-Z]*\\'" line-to-here)
((string-match "\\`[ \t]*#\\+[a-zA-Z_]*\\'" line-to-here)
(cons "file-option" nil))
((equal (char-before beg) ?\[)
(cons "link" nil))
......@@ -144,7 +144,7 @@ When completing for #+STARTUP, for example, this function returns
(if (string-match "^#\\+\\([A-Z_]+:?\\)" x)
(match-string 1 x)))
(org-split-string (org-get-current-options) "\n"))
(copy-sequence org-additional-option-like-keywords))))))
(substring pcomplete-stub 2)))
(defvar org-startup-options)
......@@ -80,17 +80,17 @@ seen. This is run after a few special cases are taken care of."
(add-hook 'org-export-latex-after-blockquotes-hook
(defvar org-special-blocks-line)
(defvar line)
(defun org-special-blocks-convert-html-special-cookies ()
"Converts the special cookies into div blocks."
;; Uses the dynamically-bound variable `org-special-blocks-line'.
(when (string-match "^ORG-\\(.*\\)-\\(START\\|END\\)$" org-special-blocks-line)
;; Uses the dynamically-bound variable `line'.
(when (string-match "^ORG-\\(.*\\)-\\(START\\|END\\)$" line)
(message "%s" (match-string 1))
(when (equal (match-string 2 org-special-blocks-line) "START")
(when (equal (match-string 2 line) "START")
(insert "\n<div class=\"" (match-string 1 org-special-blocks-line) "\">")
(insert "\n<div class=\"" (match-string 1 line) "\">")
(when (equal (match-string 2 org-special-blocks-line) "END")
(when (equal (match-string 2 line) "END")
(insert "\n</div>")
......@@ -2526,8 +2526,13 @@ not overwrite the stored one."
(match-string 1 form) (match-string 2 form))
(let ((rmtrng (org-table-get-remote-range
(match-string 1 form) (match-string 2 form))))
(if duration
(if (listp rmtrng)
(mapcar (lambda(x) (org-table-time-string-to-seconds x)) rmtrng)
(org-table-time-string-to-seconds rmtrng))
keep-empty numbers lispp))
t t form)))
;; Insert complex ranges
......@@ -2663,8 +2668,8 @@ in the buffer and column1 and column2 are table column numbers."
; (setq r2 (or r2 r1) c2 (or c2 c1))
(if (not r1) (setq r1 thisline))
(if (not r2) (setq r2 thisline))
(if (not c1) (setq c1 col))
(if (not c2) (setq c2 col))
(if (or (not c1) (= 0 c1)) (setq c1 col))
(if (or (not c2) (= 0 c2)) (setq c2 col))
(if (and (not corners-only)
(or (not rangep) (and (= r1 r2) (= c1 c2))))
;; just one field
......@@ -6,7 +6,7 @@
;; Maintainer: Bastien Guerry <bzg at gnu dot org>
;; Keywords: outlines, hypermedia, calendar, wp
;; Homepage:
;; Version: 7.8.08
;; Version: 7.8.09
;; This file is part of GNU Emacs.
......@@ -206,7 +206,7 @@ identifier."
;;; Version
(defconst org-version "7.8.08"
(defconst org-version "7.8.09"
"The version number of the file org.el.")
......@@ -2225,7 +2225,7 @@ property and include the word \"recursive\" into the value."
(defcustom org-after-todo-state-change-hook nil
"Hook which is run after the state of a TODO item was changed.
The new state (a string with a TODO keyword, or nil) is available in the
Lisp variable `state'."
Lisp variable `org-state'."
:group 'org-todo
:type 'hook)
......@@ -5427,7 +5427,8 @@ will be prompted for."
(when (re-search-forward
(concat "^[ \t]*#\\+end" (match-string 4) "\\>.*")
nil t) ;; on purpose, we look further than LIMIT
(setq end (match-end 0) end1 (1- (match-beginning 0)))
(setq end (min (point-max) (match-end 0))
end1 (min (point-max) (1- (match-beginning 0))))
(setq block-end (match-beginning 0))
(when quoting
(remove-text-properties beg end
......@@ -5455,11 +5456,12 @@ will be prompted for."
'(face org-block))) ; end of source block
((not org-fontify-quote-and-verse-blocks))
((string= block-type "quote")
(add-text-properties beg1 (1+ end1) '(face org-quote)))
(add-text-properties beg1 (min (point-max) (1+ end1)) '(face org-quote)))
((string= block-type "verse")
(add-text-properties beg1 (1+ end1) '(face org-verse))))
(add-text-properties beg1 (min (point-max) (1+ end1)) '(face org-verse))))
(add-text-properties beg beg1 '(face org-block-begin-line))
(add-text-properties (1+ end) (1+ end1) '(face org-block-end-line))
(add-text-properties (min (point-max) (1+ end)) (min (point-max) (1+ end1))
'(face org-block-end-line))
((member dc1 '("title:" "author:" "email:" "date:"))
......@@ -5475,7 +5477,7 @@ will be prompted for."
((not (member (char-after beg) '(?\ ?\t)))
;; just any other in-buffer setting, but not indented
beg (1+ (match-end 0))
beg (match-end 0)
'(font-lock-fontified t face org-meta-line))
((or (member dc1 '("begin:" "end:" "caption:" "label:"
......@@ -13422,8 +13424,7 @@ With prefix ARG, realign all tags in headings in the current buffer."
;; Get a new set of tags from the user
(setq table (append org-tag-persistent-alist
(or org-tag-alist (org-get-buffer-tags))
......@@ -13725,11 +13726,9 @@ Returns the new tags string, or nil to not change the current settings."
(condition-case nil
(setq tg (org-icompleting-read
"Tag: "
(append (or buffer-tags
(with-current-buffer buf
(mapcar 'car (org-get-buffer-tags))))
(mapcar 'car table)))))
(or buffer-tags
(with-current-buffer buf
(quit (setq tg "")))
(when (string-match "\\S-" tg)
(add-to-list 'buffer-tags (list tg))
......@@ -20775,11 +20774,12 @@ This version does not only check the character property, but also
If the heading only contains a TODO keyword, it is still still considered
(and (looking-at "[ \t]*$")
(beginning-of-line 1)
(let ((case-fold-search nil))
(looking-at org-todo-line-regexp)))
(string= (match-string 3) "")))
(when org-todo-line-regexp
(beginning-of-line 1)
(let ((case-fold-search nil))
(looking-at org-todo-line-regexp)
(string= (match-string 3) ""))))))
(defun org-at-heading-or-item-p ()
(or (org-at-heading-p) (org-at-item-p)))
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment