Commit 28a16a1b authored by Carsten Dominik's avatar Carsten Dominik
Browse files

* org.texi (Exporting Agenda Views): Document agenda export to

	iCalendar.
	(Progress logging): Document the new progress logging
	stuff.
parent 5e97c626
......@@ -3,8 +3,8 @@
@setfilename ../../info/org
@settitle Org Mode Manual
@set VERSION 5.19
@set DATE January 2008
@set VERSION 5.23
@set DATE March 2008
@dircategory Emacs
@direntry
......@@ -90,8 +90,8 @@ Software Foundation raise funds for GNU development.''
* Publishing:: Create a web site of linked Org-mode files
* Miscellaneous:: All the rest which did not fit elsewhere
* Extensions and Hacking:: It is possible to write add-on code
* History and Acknowledgments:: How Org-mode came into being
* Main Index::
* History and Acknowledgments:: How Org-mode came into being
* Main Index::
* Key Index:: Key bindings and where they are described
@detailmenu
......@@ -126,7 +126,7 @@ Archiving
Tables
* Built-in table editor:: Simple tables
* Narrow columns:: Stop wasting space in tables
* Narrow columns:: Stop wasting space in tables
* Column groups:: Grouping to trigger vertical lines
* orgtbl-mode:: The table editor as minor mode
* The spreadsheet:: The table editor has spreadsheet capabilities.
......@@ -211,7 +211,7 @@ Dates and Times
* Time stamps:: Assigning a time to a tree entry
* Creating timestamps:: Commands which insert timestamps
* Deadlines and scheduling:: Planning your work
* Clocking work time::
* Clocking work time::
Creating timestamps
......@@ -245,6 +245,7 @@ The built-in agenda views
* Global TODO list:: All unfinished action items
* Matching tags and properties:: Structured information with fine-tuned search
* Timeline:: Time-sorted view for single file
* Keyword search:: Finding entries by keyword
* Stuck projects:: Find projects you need to review
Presentation and sorting
......@@ -259,7 +260,7 @@ Custom agenda views
* Block agenda:: All the stuff you need in a single buffer
* Setting Options:: Changing the rules
* Exporting Agenda Views:: Writing agendas to files.
* Extracting Agenda Information for other programs::
* Extracting Agenda Information for other programs::
Embedded LaTeX
......@@ -290,14 +291,14 @@ LaTeX export
* LaTeX export commands:: How to invoke LaTeX export
* Quoting LaTeX code:: Incorporating literal LaTeX code
* Sectioning structure::
* Sectioning structure::
Text interpretation by the exporter
* Comment lines:: Some lines will not be exported
* Initial text:: Text before the first headline
* Footnotes:: Numbers like [1]
* Quoted examples:: Inserting quoted chnuks of text
* Quoted examples:: Inserting quoted chnuks of text
* Enhancing text:: Subscripts, symbols and more
* Export options:: How to influence the export settings
......@@ -833,12 +834,14 @@ plain list item, a new item is created (@pxref{Plain lists}). To force
creation of a new headline, use a prefix arg, or first press @key{RET}
to get to the beginning of the next line. When this command is used in
the middle of a line, the line is split and the rest of the line becomes
the new headline. If the command is used at the beginning of a
headline, the new headline is created before the current line. If at
the beginning of any other line, the content of that line is made the
new heading. If the command is used at the end of a folded subtree
(i.e. behind the ellipses at the end of a headline), then a headline
like the current one will be inserted after the end of the subtree.
the new headline@footnote{If you do not want the line to be split,
customize the variable @code{org-M-RET-may-split-line}.}. If the
command is used at the beginning of a headline, the new headline is
created before the current line. If at the beginning of any other line,
the content of that line is made the new heading. If the command is
used at the end of a folded subtree (i.e. behind the ellipses at the end
of a headline), then a headline like the current one will be inserted
after the end of the subtree.
@kindex C-@key{RET}
@item C-@key{RET}
Insert a new heading after the current subtree, same level as the
......@@ -893,6 +896,13 @@ in each entry), by priority, and each of these in reverse order. You
can also supply your own function to extract the sorting key. With a
@kbd{C-u} prefix, sorting will be case-sensitive. With two @kbd{C-u
C-u} prefixes, duplicate entries will also be removed.
@kindex C-c *
@item C-c *
Turn a normal line or plain list item into a headline (so that it
becomes a subheading at its location). Also turn a headline into a
normal line by removing the stars. If there is an active region, turn
all lines in the region into headlines. Or, if the first line is a
headline, remove the stars from all headlines in the region.
@end table
@cindex region, active
......@@ -1015,6 +1025,12 @@ If you would like to have a special ARCHIVE location for a single entry
or a (sub)tree, give the entry an @code{:ARCHIVE:} property with the
location as the value (@pxref{Properties and columns}).
When a subtree is moved, it receives a number of special properties that
record context information like the file from where the entry came, it's
outline path the archiving time etc. Configure the variable
@code{org-archive-save-context-info} to adjust the amount of information
added.
@node Sparse trees, Plain lists, Archiving, Document structure
@section Sparse trees
@cindex sparse trees
......@@ -1129,7 +1145,7 @@ Org-mode supports these lists by tuning filling and wrapping commands to
deal with them correctly@footnote{Org-mode only changes the filling
settings for Emacs. For XEmacs, you should use Kyle E. Jones'
@file{filladapt.el}. To turn this on, put into @file{.emacs}:
@code{(require 'filladapt)}}.
@code{(require 'filladapt)}}.
The following commands act on items when the cursor is in the first line
of an item (the line with the bullet or number).
......@@ -1150,11 +1166,12 @@ fixes the indentation of the curent line in a heuristic way.
Insert new item at current level. With prefix arg, force a new heading
(@pxref{Structure editing}). If this command is used in the middle of a
line, the line is @emph{split} and the rest of the line becomes the new
item. If this command is executed in the @emph{whitespace before a bullet or
number}, the new item is created @emph{before} the current item. If the
command is executed in the white space before the text that is part of
an item but does not contain the bullet, a bullet is added to the
current line.
item@footnote{If you do not want the line to be split, customize the
variable @code{org-M-RET-may-split-line}.}. If this command is executed
in the @emph{whitespace before a bullet or number}, the new item is
created @emph{before} the current item. If the command is executed in
the white space before the text that is part of an item but does not
contain the bullet, a bullet is added to the current line.
@kindex M-S-@key{RET}
@item M-S-@key{RET}
Insert a new item with a checkbox (@pxref{Checkboxes}).
......@@ -1191,6 +1208,10 @@ an ordered list, make sure the numbering is ok.
Cycle the entire list level through the different itemize/enumerate
bullets (@samp{-}, @samp{+}, @samp{*}, @samp{1.}, @samp{1)}).
With prefix arg, select the nth bullet from this list.
If there is an active region when calling this, all lines will be
converted to list items. If the first line already was a list item, any
item markers will be removed from the list. Finally, even without an
active region, a normal line will be converted into a list item.
@end table
@node Drawers, orgstruct-mode, Plain lists, Document structure
......@@ -1250,9 +1271,9 @@ silently in the shadow.
Org-mode comes with a fast and intuitive table editor. Spreadsheet-like
calculations are supported in connection with the Emacs @file{calc}
package
package
@ifinfo
(@pxref{Calc,,,calc,Gnu Emacs Calculator Manual}).
(@pxref{Top,Calc,,calc,Gnu Emacs Calculator Manual}).
@end ifinfo
@ifnotinfo
(see the Emacs Calculator manual for more information about the Emacs
......@@ -1261,7 +1282,7 @@ calculator).
@menu
* Built-in table editor:: Simple tables
* Narrow columns:: Stop wasting space in tables
* Narrow columns:: Stop wasting space in tables
* Column groups:: Grouping to trigger vertical lines
* orgtbl-mode:: The table editor as minor mode
* The spreadsheet:: The table editor has spreadsheet capabilities.
......@@ -1320,7 +1341,7 @@ If not, lines are split at whitespace into fields. You can use a prefix
argument to force a specific separator: @kbd{C-u} forces CSV, @kbd{C-u
C-u} forces TAB, and a numeric argument N indicates that at least N
consequtive spaces, or alternatively a TAB will be the separator.
@*
@*
If there is no active region, this command creates an empty Org-mode
table. But it's easier just to start typing, like
@kbd{|Name|Phone|Age @key{RET} |- @key{TAB}}.
......@@ -1412,7 +1433,9 @@ the table is enlarged as needed. The process ignores horizontal separator
lines.
@c
@kindex C-c C-q
@kindex M-@key{RET}
@item C-c C-q
@itemx M-@kbd{RET}
Wrap several fields in a column like a paragraph. If there is an active
region, and both point and mark are in the same column, the text in the
column is wrapped to minimum width for the given number of lines. A
......@@ -1655,7 +1678,7 @@ the value directly at the hline is used.
@samp{0} refers to the current row and column. Also, if you omit
either the column or the row part of the reference, the current
row/column is implied.
row/column is implied.
Org-mode's references with @emph{unsigned} numbers are fixed references
in the sense that if you use the same reference in the formula for two
......@@ -2126,8 +2149,8 @@ Do not export this line. Useful for lines that contain the narrowing
Finally, just to whet your appetite on what can be done with the
fantastic @file{calc} package, here is a table that computes the Taylor
series of degree @code{n} at location @code{x} for a couple of functions
(homework: try that with Excel :-)
series of degree @code{n} at location @code{x} for a couple of
functions.
@example
@group
......@@ -2172,7 +2195,7 @@ Org-mode will recognize plain URL-like links and activate them as
clickable links. The general link format, however, looks like this:
@example
[[link][description]] @r{or alternatively} [[link]]
[[link][description]] @r{or alternatively} [[link]]
@end example
Once a link in the buffer is complete (all brackets present), Org-mode
......@@ -2268,6 +2291,7 @@ cursor on or at a target.
@cindex links, external
@cindex GNUS links
@cindex BBDB links
@cindex IRC links
@cindex URL links
@cindex file links
@cindex VM links
......@@ -2280,20 +2304,20 @@ cursor on or at a target.
@cindex elisp links
Org-mode supports links to files, websites, Usenet and email messages,
and BBDB database entries. External links are URL-like locators. They
start with a short identifying string followed by a colon. There can be
no space after the colon. The following list shows examples for each
link type.
BBDB database entries and links to both IRC conversations and their
logs. External links are URL-like locators. They start with a short
identifying string followed by a colon. There can be no space after
the colon. The following list shows examples for each link type.
@example
http://www.astro.uva.nl/~dominik @r{on the web}
file:/home/dominik/images/jupiter.jpg @r{file, absolute path}
file:papers/last.pdf @r{file, relative path}
news:comp.emacs @r{Usenet link}
mailto:adent@@galaxy.net @r{Mail link}
mailto:adent@@galaxy.net @r{Mail link}
vm:folder @r{VM folder link}
vm:folder#id @r{VM message link}
vm://myself@@some.where.org/folder#id @r{VM on remote machine}
vm://myself@@some.where.org/folder#id @r{VM on remote machine}
wl:folder @r{WANDERLUST folder link}
wl:folder#id @r{WANDERLUST message link}
mhe:folder @r{MH-E folder link}
......@@ -2303,6 +2327,7 @@ rmail:folder#id @r{RMAIL message link}
gnus:group @r{GNUS group link}
gnus:group#id @r{GNUS article link}
bbdb:Richard Stallman @r{BBDB link}
irc:/irc.com/#emacs/bob @r{IRC link}
shell:ls *.org @r{A shell command}
elisp:(find-file-other-frame "Elisp.org") @r{An elisp form to evaluate}
@end example
......@@ -2343,18 +2368,23 @@ insert it into an org-mode file, and to follow the link.
Store a link to the current location. This is a @emph{global} command
which can be used in any buffer to create a link. The link will be
stored for later insertion into an Org-mode buffer (see below). For
Org-mode files, if there is a @samp{<<target>>} at the cursor, the link
points to the target. Otherwise it points to the current headline. For
VM, RMAIL, WANDERLUST, MH-E, GNUS and BBDB buffers, the link will
indicate the current article/entry. For W3 and W3M buffers, the link
goes to the current URL. For any other files, the link will point to
the file, with a search string (@pxref{Search options}) pointing to the
contents of the current line. If there is an active region, the
selected words will form the basis of the search string. If the
automatically created link is not working correctly or accurately
enough, you can write custom functions to select the search string and
to do the search for particular file types - see @ref{Custom searches}.
The key binding @kbd{C-c l} is only a suggestion - see @ref{Installation}.
Org-mode files, if there is a @samp{<<target>>} at the cursor, the
link points to the target. Otherwise it points to the current
headline. For VM, RMAIL, WANDERLUST, MH-E, GNUS and BBDB buffers, the
link will indicate the current article/entry. For W3 and W3M buffers,
the link goes to the current URL. For IRC links, if you set the
variable @code{org-irc-link-to-logs} to non-nil then @kbd{C-c l} will
store a @samp{file:/} style link to the relevant point in the logs for
the current conversation. Otherwise an @samp{irc:/} style link to the
user/channel/server under the point will be stored. For any other
files, the link will point to the file, with a search string
(@pxref{Search options}) pointing to the contents of the current line.
If there is an active region, the selected words will form the basis
of the search string. If the automatically created link is not
working correctly or accurately enough, you can write custom functions
to select the search string and to do the search for particular file
types - see @ref{Custom searches}. The key binding @kbd{C-c l} is
only a suggestion - see @ref{Installation}.
@c
@kindex C-c C-l
@cindex link completion
......@@ -2538,7 +2568,7 @@ compatibility, line numbers can also follow a single colon.} colon. For
example, when the command @kbd{C-c l} creates a link (@pxref{Handling
links}) to a file, it encodes the words in the current line as a search
string that can be used to find this line back later when following the
link with @kbd{C-c C-o}.
link with @kbd{C-c C-o}.
Here is the syntax of the different ways to attach a search to a file
link, together with an explanation:
......@@ -2654,7 +2684,9 @@ agenda buffers with the @kbd{t} command key (@pxref{Agenda commands}).
@kindex C-u C-c C-t
@item C-u C-c C-t
Select a specific keyword using completion or (if it has been set up)
the fast selection interface.
the fast selection interface. For the latter, you need to assign keys
to TODO states, see @ref{Per-file keywords} and @ref{Setting tags} for
more information.
@kindex S-@key{right}
@kindex S-@key{left}
......@@ -2663,15 +2695,6 @@ the fast selection interface.
Select the following/preceding TODO state, similar to cycling. Useful
mostly if more than two TODO states are possible (@pxref{TODO
extensions}).
@kindex C-c C-c
@item C-c C-c
Use the fast tag interface to directly select a specific TODO state.
For this you need to assign keys to TODO states, like this:
@example
#+SEQ_TODO: TODO(t) STARTED(s) WAITING(w) | DONE(d)
@end example
@noindent See @ref{Per-file keywords} and @ref{Setting tags} for more
information.
@kindex C-c C-v
@kindex C-c / t
@cindex sparse tree, for TODO
......@@ -2742,10 +2765,12 @@ With this setup, the command @kbd{C-c C-t} will cycle an entry from TODO
to FEEDBACK, then to VERIFY, and finally to DONE and DELEGATED. You may
also use a prefix argument to quickly select a specific state. For
example @kbd{C-3 C-c C-t} will change the state immediately to VERIFY.
If you define many keywords, you can use in-buffer completion (see
@ref{Completion}) to insert these words into the buffer. Changing a
todo state can be logged with a timestamp, see @ref{Tracking TODO state
changes} for more information.
Or you can use @kbd{S-left} to go backward through the sequence. If you
define many keywords, you can use in-buffer completion
(@pxref{Completion}) or even a special one-key selection scheme
(@pxref{Fast access to TODO states}) to insert these words into the
buffer. Changing a todo state can be logged with a timestamp, see
@ref{Tracking TODO state changes} for more information.
@node TODO types, Multiple sets in one file, Workflow states, TODO extensions
@subsection TODO keywords as types
......@@ -2845,7 +2870,8 @@ TODO states a lot, you might want to set the variable
@code{org-use-fast-todo-selection} to @code{t} and make this behavior
the default. Check also the variable
@code{org-fast-tag-selection-include-todo}, it allows to change the TODO
state through the tags interface (@pxref{Setting tags}).
state through the tags interface (@pxref{Setting tags}), in case you
like to mingle the two concepts.
@node Per-file keywords, Faces for TODO keywords, Fast access to TODO states, TODO extensions
@subsection Setting up keywords for individual files
......@@ -2908,15 +2934,22 @@ special faces for some of them. This can be done using the variable
("CANCELED" . (:foreground "blue" :weight bold))))
@end lisp
While using a list with face properties as shown for CANCELED
@emph{should} work, this does not aways seem to be the case. If
necessary, define a special face and use that.
@page
@node Progress logging, Priorities, TODO extensions, TODO items
@section Progress Logging
@cindex progress logging
@cindex logging, of progress
Org-mode can automatically record a time stamp and even a note when you
mark a TODO item as DONE, or even each time you change the state of
a TODO item.
Org-mode can automatically record a time stamp and possibly a note when
you mark a TODO item as DONE, or even each time you change the state of
a TODO item. This system is highly configurable, settings can be on a
per-keyword basis and can be localized to a file or even a subtree. For
information on how to clock working time for a task, see @ref{Clocking
work time}.
@menu
* Closing items:: When was this entry marked DONE?
......@@ -2926,65 +2959,97 @@ a TODO item.
@node Closing items, Tracking TODO state changes, Progress logging, Progress logging
@subsection Closing items
If you want to keep track of @emph{when} a certain TODO item was
finished, turn on logging with@footnote{The corresponding in-buffer
setting is: @code{#+STARTUP: logdone}. You may also set this for the
scope of a subtree by adding a @code{:LOGGING:} property with one or more
of the logging keywords in the value.}
The most basic logging is to keep track of @emph{when} a certain TODO
item was finished. This is achieved with@footnote{The corresponding
in-buffer setting is: @code{#+STARTUP: logdone}}.
@lisp
(setq org-log-done t)
(setq org-log-done 'time)
@end lisp
@noindent
Then each time you turn a TODO entry into DONE using either @kbd{C-c
C-t} in the Org-mode buffer or @kbd{t} in the agenda buffer, a line
@samp{CLOSED: [timestamp]} will be inserted just after the headline. If
you turn the entry back into a TODO item through further state cycling,
that line will be removed again. In the timeline (@pxref{Timeline}) and
in the agenda (@pxref{Weekly/Daily agenda}), you can then use the
@kbd{l} key to display the TODO items closed on each day, giving you an
overview of what has been done on a day. If you want to record a note
along with the timestamp, use@footnote{The corresponding in-buffer
setting is: @code{#+STARTUP: lognotedone}}
Then each time you turn an entry from a TODO (not-done) state into any
of the DONE states, a line @samp{CLOSED: [timestamp]} will be inserted
just after the headline. If you turn the entry back into a TODO item
through further state cycling, that line will be removed again. If you
want to record a note along with the timestamp, use@footnote{The
corresponding in-buffer setting is: @code{#+STARTUP: lognotedone}}
@lisp
(setq org-log-done '(done))
(setq org-log-done 'note)
@end lisp
@noindent
You will then be prompted for a note, and that note will be stored below
the entry with a @samp{Closing Note} heading.
In the timeline (@pxref{Timeline}) and in the agenda
(@pxref{Weekly/Daily agenda}), you can then use the @kbd{l} key to
display the TODO items with a @samp{CLOSED} timestamp on each day,
giving you an overview of what has been done.
@node Tracking TODO state changes, , Closing items, Progress logging
@subsection Tracking TODO state changes
When TODO keywords are used as workflow states (@pxref{Workflow
states}), you might want to keep track of when a state change occurred
and record a note about this change. With the setting@footnote{The
corresponding in-buffer setting is: @code{#+STARTUP: lognotestate}.}
and maybe take a note about this change. Since it is normally too much
to record a note for every state, Org-mode expects configuration on a
per-keyword basis for this. This is achieved by adding special markers
@samp{!} (for a time stamp) and @samp{@@} (for a note) in parenthesis
after each keyword. For example, with the setting
@lisp
(setq org-log-done '(state))
(setq org-todo-keywords
'((sequence "TODO(t)" "WAIT(w@@/!)" "|" "DONE(d!)" "CANCELED(c@@)")))
@end lisp
@noindent
each state change will prompt you for a note that will be attached to
the current headline. If you press @kbd{C-c C-c} without typing
anything into the note buffer, only the time of the state change will be
noted. Very likely you do not want this verbose tracking all the time,
so it is probably better to configure this behavior with in-buffer
options. For example, if you are tracking purchases, put these into a
separate file that contains:
@example
#+SEQ_TODO: TODO(t) ORDERED(o) INVOICE(i) PAYED(p) | RECEIVED(r)
#+STARTUP: lognotestate
you not only define global TODO keywords and fast access keys, but also
request that a time is recorded when the entry is turned into
DONE@footnote{It is possible that Org-mode will record two time stamps
when you are using both @code{org-log-done} and state change logging.
However, it will never prompt for two notes - if you have configured
both, the state change recording note will take precedence and cancel
the @samp{Closing Note}.}, and that a note is recorded when switching to
WAIT or CANCELED. The setting for WAIT is even more special: The
@samp{!} after the slash means that in addition to the note taken when
entering the state, a time stamp should be recorded when @i{leaving} the
WAIT state, if and only if the @i{target} state does not configure
logging for entering it. So it has no effect when switching from WAIT
to DONE, because DONE is configured to record a timestamp only. But
when switching from WAIT back to TODO, the @samp{/!} in the WAIT
setting now triggers a timestamp even though TODO has no logging
configured.
You can use the exact same syntax for setting logging preferences local
to a buffer:
@example
#+SEQ_TODO: TODO(t) WAIT(w@@/!) | DONE(d!) CANCELED(c@@)
@end example
In order to define logging settings that are local to a subtree or a
single item, define a LOGGING property in this entry. Any non-empty
LOGGING property resets all logging settings to nil. You may then turn
on logging for this specific tree using STARTUP keywords like
@code{lognotedone} or @code{logrepeat}, as well as adding state specific
settings like @code{TODO(!)}. For example
@example
* TODO Log each state with only a time
:PROPERTIES:
:LOGGING: TODO(!) WAIT(!) DONE(!) CANCELED(!)
:END:
* TODO Only log when switching to WAIT, and when repeating
:PROPERTIES:
:LOGGING: WAIT(@@) logrepeat
:END:
* TODO No logging at all
:PROPERTIES:
:LOGGING: nil
:END:
@end example
If you only need to take a note for some of the states, mark those
states with an additional @samp{@@}, like this:
@example
#+SEQ_TODO: TODO(t) ORDERED(o@@) INVOICE(i@@) PAYED(p) | RECEIVED(r)
#+STARTUP: lognotestate
@end example
@node Priorities, Breaking down tasks, Progress logging, TODO items
@section Priorities
......@@ -3067,8 +3132,8 @@ use the mouse (thanks to Piotr Zielinski's @file{org-mouse.el}).
Here is an example of a checkbox list.
@example
* TODO Organize party [3/6]
- call people [1/3]
* TODO Organize party [2/4]
- [-] call people [1/3]
- [ ] Peter
- [X] Sarah
- [ ] Sam
......@@ -3077,9 +3142,14 @@ Here is an example of a checkbox list.
- [X] talk to the neighbors
@end example
Checkboxes work hierarchically, so if a checkbox item has children that
are checkboxes, toggling one of the children checkboxes will make the
parent checkbox reflect if none, some, or all of the children are
checked.
@cindex statistics, for checkboxes
@cindex checkbox statistics
The @samp{[3/6]} and @samp{[1/3]} in the first and second line are
The @samp{[2/4]} and @samp{[1/3]} in the first and second line are
cookies indicating how many checkboxes present in this entry have been
checked off, and the total number of checkboxes are present. This can
give you an idea on how many checkboxes remain, even without opening a
......@@ -3409,7 +3479,7 @@ application of properties, imagine keeping track of one's music CD's,
where properties could be things such as the album artist, date of
release, number of tracks, and so on.
Properties can be conveiently edited and viewed in column view
Properties can be conveniently edited and viewed in column view
(@pxref{Column view}).
Properties are like tags, but with a value. For example, in a file
......@@ -3447,10 +3517,10 @@ first, and the value after it. Here is an example:
:PROPERTIES:
:Title: Goldberg Variations
:Composer: J.S. Bach
:Artist: Glen Gould
:Artist: Glen Gould
:Publisher: Deutsche Grammphon
:NDisks: 1
:END:
:END:
@end example
You may define the allowed values for a particular property @samp{:Xyz:}
......@@ -3551,13 +3621,14 @@ properties, the same commands are used as for tag searches (@pxref{Tag
searches}), and the same logic applies. For example, a search string
@example
+work-boss+PRIORITY="A"+Coffee="unlimited"+With=@{Sarah\|Denny@}
+work-boss+PRIORITY="A"+Coffee="unlimited"+Effort=""+With=@{Sarah\|Denny@}
@end example
@noindent
finds entries tagged @samp{:work:} but not @samp{:boss:}, which
also have a priority value @samp{A}, a @samp{:Coffee:} property with the
value @samp{unlimited}, and a @samp{:With:} property that is matched by
value @samp{unlimited}, an @samp{Effort} property that is undefined or
empty, and a @samp{:With:} property that is matched by
the regular expression @samp{Sarah\|Denny}.
You can configure Org-mode to use property inheritance during a search,
......@@ -3605,6 +3676,9 @@ applies to the entire subtree.
@item ARCHIVE
For archiving, the @code{:ARCHIVE:} property may define the archive
location for the entire subtree (@pxref{Moving subtrees}).
@item LOGGING
The LOGGING property may define logging settings for an entry or a
subtree (@pxref{Tracking TODO state changes}).
@end table
@node Column view, Property API, Property inheritance, Properties and columns
......@@ -3696,6 +3770,8 @@ property @r{The property that should be edited in this column.}
@{$@} @r{Currency, short for @samp{+;%.2f}.}
@{:@} @r{Sum times, HH:MM:SS, plain numbers are hours.}
@{X@} @r{Checkbox status, [X] if all children are [X].}
@{X/@} @r{Checkbox status, [n/m].}
@{X%@} @r{Checkbox status, [n%].}
@end example
@noindent
......@@ -3712,8 +3788,8 @@ values.
The first column, @samp{%25ITEM}, means the first 25 characters of the
item itself, i.e. of the headline. You probably always should start the
column definition with the ITEM specifier. The other specifiers create
columns @samp{Owner} with a list of names as allowed values, for
column definition with the @samp{ITEM} specifier. The other specifiers
create columns @samp{Owner} with a list of names as allowed values, for
@samp{Status} with four different possible values, and for a checkbox
field @samp{Approved}. When no width is given after the @samp{%}
character, the column will be exactly as wide as it needs to be in order
......@@ -3739,6 +3815,12 @@ the entire tree, starting from the entry that contains the @code{:COLUMNS:}
property. If none is found, the format is taken from the @code{#+COLUMNS}
line or from the variable @code{org-columns-default-format}, and column
view is established for the current entry and its subtree.
@kindex r
@item r
Recreate the column view, to included hanges happening in the buffer.
@kindex g
@item g
Same as @kbd{r}.
@kindex q
@item q
Exit column view.
......@@ -3791,8 +3873,8 @@ Delete the current column.
Since column view is just an overlay over a buffer, it cannot be
exported or printed directly. If you want to capture a column view, use
the dynamic block (@pxref{Dynamic blocks}). The frame of this block
looks like this:
ths @code{columnview} dynamic block (@pxref{Dynamic blocks}). The frame
of this block looks like this:
@example
* The column view
......@@ -3820,6 +3902,12 @@ When @code{t}, insert a hline after every line. When a number N, insert
a hline before each headline with level @code{<= N}.
@item :vlines
When set to @code{t}, enforce column groups to get vertical lines.
@item :maxlevel
When set to a number, don't capture entries below this level.
@item :skip-empty-rows
When set to @code{t}, skip row where the only non-empty specifier of the
column view is @code{ITEM}.
@end table
@noindent
......@@ -3870,7 +3958,7 @@ is used in a much wider sense.
* Time stamps:: Assigning a time to a tree entry
* Creating timestamps:: Commands which insert timestamps
* Deadlines and scheduling:: Planning your work
* Clocking work time::
* Clocking work time::
@end menu
......@@ -4138,7 +4226,7 @@ format does not @emph{replace} the default format - instead it is put
@emph{over} the default format using text properties. This has the
following consequences:
@itemize @bullet
@item
</