aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarsten Dominik2006-01-05 08:06:36 +0000
committerCarsten Dominik2006-01-05 08:06:36 +0000
commitd2eaec4dc985d31adce440f07bfdb8966841c7e8 (patch)
treec4778e33d74aaba10bac2cbf1180ebd40f6f5b95
parent8abe9d4f56f792d493191c037c425c172555259e (diff)
downloademacs-d2eaec4dc985d31adce440f07bfdb8966841c7e8.tar.gz
emacs-d2eaec4dc985d31adce440f07bfdb8966841c7e8.zip
(Agenda Views): Chapter reorganized.
-rw-r--r--man/org.texi408
1 files changed, 233 insertions, 175 deletions
diff --git a/man/org.texi b/man/org.texi
index 6d7d831a98f..30528891ec9 100644
--- a/man/org.texi
+++ b/man/org.texi
@@ -4,12 +4,13 @@
4@setfilename ../info/org 4@setfilename ../info/org
5@settitle Org Mode Manual 5@settitle Org Mode Manual
6 6
7@set VERSION 4.01 7@set VERSION 4.02
8@set DATE December 2005 8@set DATE January 2006
9 9
10@dircategory Emacs 10@dircategory Emacs
11@direntry 11@direntry
12* Org Mode: (org). outline-based notes management and organizer. 12* Org Mode: (org). outline-based notes management and organizer
13
13@end direntry 14@end direntry
14 15
15@c Version and Contact Info 16@c Version and Contact Info
@@ -35,7 +36,7 @@
35@copying 36@copying
36This manual is for Org-mode (version @value{VERSION}). 37This manual is for Org-mode (version @value{VERSION}).
37 38
38Copyright @copyright{} 2004, 2005 Free Software Foundation 39Copyright @copyright{} 2004, 2005, 2006 Free Software Foundation
39 40
40@quotation 41@quotation
41Permission is granted to copy, distribute and/or modify this document 42Permission is granted to copy, distribute and/or modify this document
@@ -105,7 +106,7 @@ Document Structure
105* Structure editing:: Changing sequence and level of headlines 106* Structure editing:: Changing sequence and level of headlines
106* Archiving:: Move done task trees to a different place 107* Archiving:: Move done task trees to a different place
107* Sparse trees:: Matches embedded in context 108* Sparse trees:: Matches embedded in context
108* Tags:: 109* Tags:: Tagging headlines and matching sets of tags
109* Plain Lists:: Editing hand-formatted lists 110* Plain Lists:: Editing hand-formatted lists
110 111
111Tables 112Tables
@@ -152,17 +153,20 @@ Timestamps
152 153
153Agenda Views 154Agenda Views
154 155
155* Agenda:: Your weekly planner 156* Agenda files:: Files being searched for agenda information
156* Global TODO list:: Overview over all things to do 157* Agenda dispatcher:: Keyboard access to agenda views
157* Matching headline tags:: Select information based on tags 158* Weekly/Daily Agenda:: The calendar page with current tasks
159* Global TODO list:: All infinished action items
160* Matching headline tags:: Structured information with fine-tuned search
158* Timeline:: Time-sorted view for single file 161* Timeline:: Time-sorted view for single file
159* Agenda commands:: Remote editing of org trees 162* Agenda commands:: Remote editing of org trees
160* Calendar/Diary integration:: Integrating Anniversaries and more
161 163
162Calendar/Diary integration 164Weekly/Daily Agenda
163 165
164* Diary to agenda:: Agenda incorporates the diary 166* Categories:: Not all tasks are equal
165* Agenda to diary:: Diary incorporates the agenda 167* Time-of-day specifications:: How the agenda knows the time
168* Calendar/Diary integration:: Integrating Anniversaries and more
169* Sorting of agenda items:: The order of things
166 170
167Exporting 171Exporting
168 172
@@ -333,7 +337,7 @@ edit the structure of the document.
333* Structure editing:: Changing sequence and level of headlines 337* Structure editing:: Changing sequence and level of headlines
334* Archiving:: Move done task trees to a different place 338* Archiving:: Move done task trees to a different place
335* Sparse trees:: Matches embedded in context 339* Sparse trees:: Matches embedded in context
336* Tags:: 340* Tags:: Tagging headlines and matching sets of tags
337* Plain Lists:: Editing hand-formatted lists 341* Plain Lists:: Editing hand-formatted lists
338@end menu 342@end menu
339 343
@@ -563,7 +567,8 @@ An important feature of Org-mode is the ability to construct
563@emph{sparse trees} for selected information in an outline tree. A 567@emph{sparse trees} for selected information in an outline tree. A
564sparse tree means that the entire document is folded as much as 568sparse tree means that the entire document is folded as much as
565possible, but the selected information is made visible along with the 569possible, but the selected information is made visible along with the
566headline structure above it@footnote{See also the variable 570headline structure above it@footnote{See also the variables
571@code{org-show-hierarchy-above} and
567@code{org-show-following-heading}.}. Just try it out and you will see 572@code{org-show-following-heading}.}. Just try it out and you will see
568immediately how it works. 573immediately how it works.
569 574
@@ -581,8 +586,20 @@ headlines above the match is shown, as well as the headline following
581the match. Each match is also highlighted, the highlights disappear 586the match. Each match is also highlighted, the highlights disappear
582when the buffer is changed with an editing command. 587when the buffer is changed with an editing command.
583@end table 588@end table
589@noindent
590For frequently used sparse trees of specific search strings, you can
591use the variable @code{org-agenda-custom-commands} to define fast
592keyboard access to specific sparse trees. These commands will then be
593accessible through the agenda dispatcher (@pxref{Agenda dispatcher}).
594For example
595@lisp
596(setq org-agenda-custom-commands
597 '(("f" occur-tree "FIXME")))
598@end lisp
599@noindent will define the key @kbd{C-c a f} as a shortcut for creating
600a sparse tree matching the string @samp{FIXME}.
584 601
585Other commands are using this feature as well. For example @kbd{C-c 602Other commands are using sparse trees as well. For example @kbd{C-c
586C-v} creates a sparse TODO tree (@pxref{TODO basics}). 603C-v} creates a sparse TODO tree (@pxref{TODO basics}).
587 604
588@kindex C-c C-x v 605@kindex C-c C-x v
@@ -655,6 +672,11 @@ Create a sparse tree with all headlines matching a tags search.
655@item C-c a m 672@item C-c a m
656Create a global list of tag matches from all agenda files. 673Create a global list of tag matches from all agenda files.
657@xref{Matching headline tags}. 674@xref{Matching headline tags}.
675@kindex C-c a M
676@item C-c a M
677Create a global list of tag matches from all agenda files, but check
678only TODO items and force checking subitems (see variable
679@code{org-tags-match-list-sublevels}).
658@end table 680@end table
659 681
660A tags search string can use Boolean operators @samp{&} for AND and 682A tags search string can use Boolean operators @samp{&} for AND and
@@ -1650,7 +1672,7 @@ numerical prefix N, show the tree for the Nth keyword in the variable
1650@kindex C-c a t 1672@kindex C-c a t
1651@item C-c a t 1673@item C-c a t
1652Show the global TODO list. This collects the TODO items from all 1674Show the global TODO list. This collects the TODO items from all
1653agenda files (@pxref{Agenda}) into a single buffer. The buffer is in 1675agenda files (@pxref{Agenda Views}) into a single buffer. The buffer is in
1654@code{agenda-mode}, so there are commands to examine and manipulate 1676@code{agenda-mode}, so there are commands to examine and manipulate
1655the TODO entries directly from that buffer (@pxref{Agenda commands}). 1677the TODO entries directly from that buffer (@pxref{Agenda commands}).
1656@xref{Global TODO list}, for more information. 1678@xref{Global TODO list}, for more information.
@@ -1674,9 +1696,9 @@ C-t} in the Org-mode buffer or @kbd{t} in the agenda buffer, a line
1674@samp{CLOSED: [timestamp]} will be inserted just after the headline. 1696@samp{CLOSED: [timestamp]} will be inserted just after the headline.
1675If you turn the entry back into a TODO item again through further 1697If you turn the entry back into a TODO item again through further
1676state cycling, that line will be removed again. In the timeline 1698state cycling, that line will be removed again. In the timeline
1677(@pxref{Timeline}) and in the agenda (@pxref{Agenda}), you can then 1699(@pxref{Timeline}) and in the agenda (@pxref{Weekly/Daily Agenda}),
1678use the @kbd{L} key to display the TODO items closed on each day, 1700you can then use the @kbd{L} key to display the TODO items closed on
1679giving you an overview of what has been done on a day. 1701each day, giving you an overview of what has been done on a day.
1680 1702
1681@node TODO extensions, Priorities, Progress Logging, TODO items 1703@node TODO extensions, Priorities, Progress Logging, TODO items
1682@section Extended use of TODO keywords 1704@section Extended use of TODO keywords
@@ -1814,7 +1836,7 @@ headline, like this
1814With its standard setup, Org-mode supports priorities @samp{A}, 1836With its standard setup, Org-mode supports priorities @samp{A},
1815@samp{B}, and @samp{C}. @samp{A} is the highest priority. An entry 1837@samp{B}, and @samp{C}. @samp{A} is the highest priority. An entry
1816without a cookie is treated as priority @samp{B}. Priorities make a 1838without a cookie is treated as priority @samp{B}. Priorities make a
1817difference only in the agenda (@pxref{Agenda}). 1839difference only in the agenda (@pxref{Weekly/Daily Agenda}).
1818 1840
1819@table @kbd 1841@table @kbd
1820@kindex @kbd{C-c ,} 1842@kindex @kbd{C-c ,}
@@ -1859,7 +1881,7 @@ A time stamp is a specification of a date (possibly with time) in a
1859special format, either @samp{<2003-09-16 Tue>} or @samp{<2003-09-16 1881special format, either @samp{<2003-09-16 Tue>} or @samp{<2003-09-16
1860Tue 09:39>}. A time stamp can appear anywhere in the headline or body 1882Tue 09:39>}. A time stamp can appear anywhere in the headline or body
1861of an org-tree entry. Its presence allows to show entries on specific 1883of an org-tree entry. Its presence allows to show entries on specific
1862dates in the agenda (@pxref{Agenda}). We distinguish: 1884dates in the agenda (@pxref{Weekly/Daily Agenda}). We distinguish:
1863 1885
1864@table @var 1886@table @var
1865@cindex timestamp 1887@cindex timestamp
@@ -1944,7 +1966,7 @@ instead.
1944@kindex C-c C-o 1966@kindex C-c C-o
1945@item C-c C-o 1967@item C-c C-o
1946Access the agenda for the date given by the time stamp at point 1968Access the agenda for the date given by the time stamp at point
1947(@pxref{Agenda}). 1969(@pxref{Weekly/Daily Agenda}).
1948 1970
1949@kindex C-c C-d 1971@kindex C-c C-d
1950@item C-c C-d 1972@item C-c C-d
@@ -2035,37 +2057,14 @@ Choose date in calendar (only if nothing typed into minibuffer).
2035@chapter Agenda Views 2057@chapter Agenda Views
2036@cindex agenda views 2058@cindex agenda views
2037 2059
2038Org-mode can select items based of various criteria, and display them 2060Due to the way Org-mode works, TODO items and time-stamped items can
2039in a separate buffer. The information to be shown is collected from 2061be scattered throughout a file or even a number of files. To get an
2040all @emph{agenda files}, the files listed in the variable 2062overview over open action items, or over events that are important for
2041@code{org-agenda-files}. Thus even if you only work with a single 2063a particular date, this information must be collected, sorted and
2042Org-mode file, this file must be put into that list@footnote{When 2064displayed in an organized way.
2043using the dispatcher pressing @kbd{1} before selecting a command will
2044actually limit the command to the current file, and ignore
2045@code{org-agenda-files} until the next dispatcher command.}. You can
2046customize @code{org-agenda-files}, but the easiest way to maintain it
2047is through the following commands
2048
2049@cindex files, adding to agenda list
2050@table @kbd
2051@kindex C-c [
2052@item C-c [
2053Add current file to the list of agenda files. The file is added to
2054the front of the list. If it was already in the list, it is moved to
2055the front. With prefix arg, file is added/moved to the end.
2056@kindex C-c ]
2057@item C-c ]
2058Remove current file from the list of agenda files.
2059@kindex C-,
2060@item C-,
2061Cycle through agenda file list.
2062@end table
2063@noindent
2064The Org menu always contains the current list of files and can be used
2065to quickly visit any of them.
2066 2065
2067Org-mode provides three different views on the information in these 2066Org-mode can select items based on various criteria, and display them
2068files: 2067in a separate buffer. Three different views are provided:
2069@itemize @bullet 2068@itemize @bullet
2070@item 2069@item
2071an @emph{agenda} that is like a calendar and shows information 2070an @emph{agenda} that is like a calendar and shows information
@@ -2074,7 +2073,7 @@ for specific dates
2074a @emph{TODO list} that covers all unfinished 2073a @emph{TODO list} that covers all unfinished
2075action items, and 2074action items, and
2076@item 2075@item
2077a @emph{tags view} that show information based on 2076a @emph{tags view} that shows information based on
2078the tags associated with headlines in the outline tree. 2077the tags associated with headlines in the outline tree.
2079@end itemize 2078@end itemize
2080@noindent 2079@noindent
@@ -2083,37 +2082,103 @@ buffer}. This buffer is read-only, but provides commands to visit the
2083corresponding locations in the original Org-mode files, and even to 2082corresponding locations in the original Org-mode files, and even to
2084edit these files remotely. 2083edit these files remotely.
2085 2084
2085@menu
2086* Agenda files:: Files being searched for agenda information
2087* Agenda dispatcher:: Keyboard access to agenda views
2088* Weekly/Daily Agenda:: The calendar page with current tasks
2089* Global TODO list:: All unfinished action items
2090* Matching headline tags:: Structured information with fine-tuned search
2091* Timeline:: Time-sorted view for single file
2092* Agenda commands:: Remote editing of org trees
2093@end menu
2094
2095@node Agenda files, Agenda dispatcher, Agenda Views, Agenda Views
2096@section Agenda files
2097
2098The information to be shown is collected from all @emph{agenda files},
2099the files listed in the variable @code{org-agenda-files}. Thus even
2100if you only work with a single Org-mode file, this file should be put
2101into that list@footnote{When using the dispatcher pressing @kbd{1}
2102before selecting a command will actually limit the command to the
2103current file, and ignore @code{org-agenda-files} until the next
2104dispatcher command.}. You can customize @code{org-agenda-files}, but
2105the easiest way to maintain it is through the following commands
2106
2107@cindex files, adding to agenda list
2108@table @kbd
2109@kindex C-c [
2110@item C-c [
2111Add current file to the list of agenda files. The file is added to
2112the front of the list. If it was already in the list, it is moved to
2113the front. With prefix arg, file is added/moved to the end.
2114@kindex C-c ]
2115@item C-c ]
2116Remove current file from the list of agenda files.
2117@kindex C-,
2118@item C-,
2119Cycle through agenda file list.
2120@end table
2121@noindent
2122The Org menu contains the current list of files and can be used
2123to visit any of them.
2124
2125@node Agenda dispatcher, Weekly/Daily Agenda, Agenda files, Agenda Views
2126@section The agenda dispatcher
2127@cindex agenda dispatcher
2128@cindex dispatching agenda commands
2086@cindex custom agenda commands 2129@cindex custom agenda commands
2087@cindex agenda commands, custom 2130@cindex agenda commands, custom
2088The views are created through a dispatcher that should be bound to a 2131The views are created through a dispatcher that should be bound to a
2089global key, for example @kbd{C-c a} (@pxref{Installation and 2132global key, for example @kbd{C-c a} (@pxref{Installation and
2090Activation}). In the following we will assume that @kbd{C-c a} is 2133Activation}). In the following we will assume that @kbd{C-c a} is
2091indeed how the dispatcher is accessed and list keyboard access to 2134indeed how the dispatcher is accessed and list keyboard access to
2092commands accordingly. The dispatcher offers a number of default 2135commands accordingly. After pressing @kbd{C-c a}, an additional
2093commands, for example to create a TODO list or a the calendar-like 2136letter is required to execute a command. The dispatcher offers the
2094agenda. You can also define a number of custom searches for tags and 2137following default commands:
2095specific TODO keywords through the variable 2138@table @kbd
2096@code{org-agenda-custom-commands}. 2139@item a
2097@kindex C-c a C 2140Create the calendar-like agenda (@pxref{Weekly/Daily Agenda}).
2098These commands will be offered by the dispatcher just like the default 2141@item t / T
2099commands. If you press @kbd{C-c a C}, you will get a customization 2142Create a list of all TODO items (@pxref{Global TODO list}).
2100buffer for this variable. 2143@item m / M
2144Create a list of headline matching a TAGS expression (@pxref{Matching
2145headline tags}).
2146@end table
2101 2147
2102@menu 2148You can also define custom commands that will be accessible through
2103* Agenda:: Your weekly planner 2149the dispatcher, just like the default commands. Custom commands are
2104* Global TODO list:: Overview over all things to do 2150global searches for tags and specific TODO keywords, or a variety of
2105* Matching headline tags:: Select information based on tags 2151sparse tree creating commands (@pxref{Sparse trees}). As sparse trees
2106* Timeline:: Time-sorted view for single file 2152are only defined for a single org-mode file, these latter commands act
2107* Agenda commands:: Remote editing of org trees 2153on the current buffer instead of the list of agenda files.
2108* Calendar/Diary integration:: Integrating Anniversaries and more
2109@end menu
2110 2154
2111@node Agenda, Global TODO list, Agenda Views, Agenda Views 2155@kindex C-c a C
2112@section Agenda 2156Custom commands are configured in the variable
2157@code{org-agenda-custom-commands}. You can customize this variable,
2158for example by pressing @kbd{C-c a C}. You can also directly set it
2159with Emacs Lisp in @file{.emacs}. For example:
2160@lisp
2161(setq org-agenda-custom-commands
2162 '(("w" todo "WAITING")
2163 ("u" tags "+BOSS-URGENT")
2164 ("U" tags-tree "+BOSS-URGENT")
2165 ("f" occur-tree "\\<FIXME\\>")))
2166@end lisp
2167@noindent will define @kbd{C-c a w} as a global search for
2168TODO entries with @samp{WAITING} as todo keyword, @kbd{C-c a u} as a
2169global tags search for headlines marked @samp{:BOSS:} but not
2170@samp{:URGENT:}, @kbd{C-c a U} to do the same search but only in the
2171current buffer and display the result as a sparse tree, and @kbd{C-c a
2172f} to create a sparse tree with all entries containing the word
2173@samp{FIXME}. For more information, look at the documentation string
2174of the variable @code{org-agenda-custom-commands}.
2175
2176@node Weekly/Daily Agenda, Global TODO list, Agenda dispatcher, Agenda Views
2177@section The weekly/daily agenda
2113@cindex agenda 2178@cindex agenda
2114 2179
2115The purpose of the @emph{agenda} is to act like a week/day page of a 2180The purpose of the weekly/daily @emph{agenda} is to act like a page of
2116paper agenda, showing you all the tasks for the current week or day. 2181a paper agenda, showing all the tasks for the current week or day.
2117 2182
2118@table @kbd 2183@table @kbd
2119@cindex org-agenda, command 2184@cindex org-agenda, command
@@ -2124,8 +2189,6 @@ agenda shows the entries for each day. With a @kbd{C-u} prefix (or
2124when the variable @code{org-agenda-include-all-todo} is @code{t}), all 2189when the variable @code{org-agenda-include-all-todo} is @code{t}), all
2125unfinished TODO items (also those without a date) are also listed at 2190unfinished TODO items (also those without a date) are also listed at
2126the beginning of the buffer, before the first date.@* 2191the beginning of the buffer, before the first date.@*
2127The key binding @kbd{C-c a a} is only a suggestion - see
2128@ref{Installation and Activation}.
2129@end table 2192@end table
2130 2193
2131Remote editing from the agenda buffer means for example that you can 2194Remote editing from the agenda buffer means for example that you can
@@ -2133,7 +2196,14 @@ change the dates of deadlines and appointments from the agenda buffer.
2133The commands available in the Agenda buffer are listed in @ref{Agenda 2196The commands available in the Agenda buffer are listed in @ref{Agenda
2134commands}. 2197commands}.
2135 2198
2199@menu
2200* Categories:: Not all tasks are equal
2201* Time-of-day specifications:: How the agenda knows the time
2202* Calendar/Diary integration:: Integrating Anniversaries and more
2203* Sorting of agenda items:: The order of things
2204@end menu
2136 2205
2206@node Categories, Time-of-day specifications, Weekly/Daily Agenda, Weekly/Daily Agenda
2137@subsection Categories 2207@subsection Categories
2138 2208
2139@cindex category 2209@cindex category
@@ -2147,6 +2217,7 @@ If there are several such lines in a file, each specifies the category
2147for the text below it. The display in the agenda buffer looks best if 2217for the text below it. The display in the agenda buffer looks best if
2148the category is not longer than 10 characters. 2218the category is not longer than 10 characters.
2149 2219
2220@node Time-of-day specifications, Calendar/Diary integration, Categories, Weekly/Daily Agenda
2150@subsection Time-of-Day Specifications 2221@subsection Time-of-Day Specifications
2151 2222
2152Org-mode checks each agenda item for a time-of-day specification. The 2223Org-mode checks each agenda item for a time-of-day specification. The
@@ -2194,6 +2265,39 @@ The time grid can be turned on and off with the variable
2194@code{org-agenda-time-grid}. 2265@code{org-agenda-time-grid}.
2195 2266
2196 2267
2268@node Calendar/Diary integration, Sorting of agenda items, Time-of-day specifications, Weekly/Daily Agenda
2269@subsection Calendar/Diary integration
2270@cindex calendar integration
2271@cindex diary integration
2272
2273Emacs contains the calendar and diary by Edward M. Reingold. The
2274calendar displays a three-month calendar with holidays from different
2275countries and cultures. The diary allows to keep track of
2276anniversaries, lunar phases, sunrise/set, recurrent appointments
2277(weekly, monthly) and more. In this way, it is quite complementary to
2278Org-mode. It can be very useful to combine output from Org-mode with
2279the diary.
2280
2281In order to include entries from the Emacs diary into Org-mode's
2282agenda, you only need to customize the variable
2283
2284@lisp
2285(setq org-agenda-include-diary t)
2286@end lisp
2287@noindent
2288
2289@noindent After that, everything will happen automatically. All diary
2290entries including holidays, anniversaries etc will be included in the
2291agenda buffer created by Org-mode. @key{SPC}, @key{TAB}, and
2292@key{RET} can be used from the agenda buffer to jump to the diary
2293file, in order to edit existing diary entries. The @kbd{i} command to
2294insert new entries for the current date works in the agenda buffer, as
2295well as the commands @kbd{S}, @kbd{M}, and @kbd{C} to display
2296Sunrise/Sunset times, show lunar phases and to convert to other
2297calendars, respectively. @kbd{c} can be used to switch back and forth
2298between calendar and agenda.
2299
2300@node Sorting of agenda items, , Calendar/Diary integration, Weekly/Daily Agenda
2197@subsection Sorting of agenda items 2301@subsection Sorting of agenda items
2198@cindex sorting, of agenda items 2302@cindex sorting, of agenda items
2199@cindex priorities, of agenda items 2303@cindex priorities, of agenda items
@@ -2211,7 +2315,8 @@ plus additional increments for overdue scheduled or deadline items.
2211Sorting can be customized using the variable 2315Sorting can be customized using the variable
2212@code{org-agenda-sorting-strategy}. 2316@code{org-agenda-sorting-strategy}.
2213 2317
2214@node Global TODO list, Matching headline tags, Agenda, Agenda Views 2318
2319@node Global TODO list, Matching headline tags, Weekly/Daily Agenda, Agenda Views
2215@section The global TODO list 2320@section The global TODO list
2216@cindex global TODO list 2321@cindex global TODO list
2217@cindex TODO list, global 2322@cindex TODO list, global
@@ -2223,20 +2328,21 @@ collected into a single place.
2223@kindex C-c a t 2328@kindex C-c a t
2224@item C-c a t 2329@item C-c a t
2225Show the global TODO list. This collects the TODO items from all 2330Show the global TODO list. This collects the TODO items from all
2226agenda files (@pxref{Agenda}) into a single buffer. The buffer is in 2331agenda files (@pxref{Agenda Views}) into a single buffer. The buffer is in
2227@code{agenda-mode}, so there are commands to examine and manipulate 2332@code{agenda-mode}, so there are commands to examine and manipulate
2228the TODO entries directly from that buffer (@pxref{Agenda commands}). 2333the TODO entries directly from that buffer (@pxref{Agenda commands}).
2229@xref{Global TODO list}, for more information. 2334@xref{Global TODO list}, for more information.
2230@kindex C-c a T 2335@kindex C-c a T
2231@item C-c a T 2336@item C-c a T
2232Like the above, but allow to select a specific TODO keyword. You can 2337Like the above, but allow to select a specific TODO keyword. You can
2233also do this by specifying a prefix argument. With a @kbd{C-u} prefix 2338also do this by specifying a prefix argument to @kbd{C-c a t}. With a
2234you are prompted for a keyword. With a numeric prefix, the Nth 2339@kbd{C-u} prefix you are prompted for a keyword. With a numeric
2235keyword in @code{org-todo-keywords} is selected. 2340prefix, the Nth keyword in @code{org-todo-keywords} is selected.
2236@kindex r 2341@kindex r
2237The @kbd{r} key in the agenda buffer regenerates it, and you can give 2342The @kbd{r} key in the agenda buffer regenerates it, and you can give
2238a prefix argument to this command to change the selected TODO keyword, 2343a prefix argument to this command to change the selected TODO keyword,
2239for example @kbd{3 r}. 2344for example @kbd{3 r}. If you often need a search for a specific
2345keyword, define a custom command for it (@pxref{Agenda dispatcher}).
2240@end table 2346@end table
2241 2347
2242Remote editing of TODO items means that you can change the state of a 2348Remote editing of TODO items means that you can change the state of a
@@ -2258,11 +2364,13 @@ to them and collect them into an agenda buffer.
2258Produce a list of all headlines that match a given set of tags. The 2364Produce a list of all headlines that match a given set of tags. The
2259command prompts for a selection criterion, which is a boolean logic 2365command prompts for a selection criterion, which is a boolean logic
2260expression with tags, like @samp{+WORK+URGENT-WITHBOSS} or 2366expression with tags, like @samp{+WORK+URGENT-WITHBOSS} or
2261@samp{WORK|HOME} (@pxref{Tags}). 2367@samp{WORK|HOME} (@pxref{Tags}). If you often need a specific search,
2368define a custom command for it (@pxref{Agenda dispatcher}).
2262@kindex C-c a M 2369@kindex C-c a M
2263@item C-c a M 2370@item C-c a M
2264Like @kbd{C-c a m}, but only select headlines that are also TODO 2371Like @kbd{C-c a m}, but only select headlines that are also TODO items
2265items. 2372and force checking subitems (see variable
2373@code{org-tags-match-list-sublevels}.
2266@end table 2374@end table
2267 2375
2268The commands available in the tags list are described in @ref{Agenda 2376The commands available in the tags list are described in @ref{Agenda
@@ -2294,7 +2402,7 @@ When called with a @kbd{C-u} prefix, all unfinished TODO entries
2294The commands available in the timeline buffer are listed in 2402The commands available in the timeline buffer are listed in
2295@ref{Agenda commands}. 2403@ref{Agenda commands}.
2296 2404
2297@node Agenda commands, Calendar/Diary integration, Timeline, Agenda Views 2405@node Agenda commands, , Timeline, Agenda Views
2298@section Commands in the agenda buffer 2406@section Commands in the agenda buffer
2299@cindex commands, in agenda buffer 2407@cindex commands, in agenda buffer
2300 2408
@@ -2306,9 +2414,7 @@ the agenda buffer. In this way, all information is stored only once,
2306and you don't risk that your agenda and note files diverge. 2414and you don't risk that your agenda and note files diverge.
2307 2415
2308Some commands can be executed with mouse clicks on agenda lines. For 2416Some commands can be executed with mouse clicks on agenda lines. For
2309the other commands, the cursor needs to be in the desired line. Most 2417the other commands, the cursor needs to be in the desired line.
2310commands are available for both timelines and the agenda. The
2311exceptions are marked.
2312 2418
2313@table @kbd 2419@table @kbd
2314@tsubheading{Motion} 2420@tsubheading{Motion}
@@ -2384,12 +2490,11 @@ keyword.
2384@item @key{right} 2490@item @key{right}
2385Display the following @code{org-agenda-ndays} days. For example, if 2491Display the following @code{org-agenda-ndays} days. For example, if
2386the display covers a week, switch to the following week. With prefix 2492the display covers a week, switch to the following week. With prefix
2387arg, go forward that many times @code{org-agenda-ndays} days. Not 2493arg, go forward that many times @code{org-agenda-ndays} days.
2388available in timelines.
2389 2494
2390@kindex @key{left} 2495@kindex @key{left}
2391@item @key{left} 2496@item @key{left}
2392Display the previous dates. Not available in timelines. 2497Display the previous dates.
2393 2498
2394@kindex . 2499@kindex .
2395@item . 2500@item .
@@ -2491,7 +2596,6 @@ Show holidays for three month around the cursor date.
2491@kindex C-c C-x C-c 2596@kindex C-c C-x C-c
2492@item C-c C-x C-c 2597@item C-c C-x C-c
2493Export a single iCalendar file containing entries from all agenda files. 2598Export a single iCalendar file containing entries from all agenda files.
2494Not available in timelines.
2495 2599
2496@tsubheading{Quit and Exit} 2600@tsubheading{Quit and Exit}
2497@kindex q 2601@kindex q
@@ -2507,88 +2611,6 @@ visit org files will not be removed.
2507 2611
2508@end table 2612@end table
2509 2613
2510@node Calendar/Diary integration, , Agenda commands, Agenda Views
2511@section Calendar/Diary integration
2512@cindex calendar integration
2513@cindex diary integration
2514
2515Emacs contains the calendar and diary by Edward M. Reingold. The
2516calendar displays a three-month calendar with holidays from different
2517countries and cultures. The diary allows to keep track of
2518anniversaries, lunar phases, sunrise/set, recurrent appointments
2519(weekly, monthly) and more. In this way, it is quite complementary to
2520Org-mode. It can be very useful to combine output from Org-mode with
2521the diary.
2522
2523The interaction between Org-mode and diary works both ways: You can
2524list entries from the diary in the Org-mode agenda, from which many
2525calendar and diary commands are directly accessible. Or you can
2526display entries from the org agenda in the Emacs diary.
2527
2528@menu
2529* Diary to agenda:: Agenda incorporates the diary
2530* Agenda to diary:: Diary incorporates the agenda
2531@end menu
2532
2533@node Diary to agenda, Agenda to diary, Calendar/Diary integration, Calendar/Diary integration
2534@subsection Including the diary into the agenda
2535@cindex diary to agenda
2536
2537In order to include entries from the Emacs diary into Org-mode's
2538agenda, you only need to customize the variable
2539
2540@lisp
2541(setq org-agenda-include-diary t)
2542@end lisp
2543@noindent
2544
2545@noindent After that, everything will happen automatically. All diary
2546entries including holidays, anniversaries etc will be included in the
2547agenda buffer created by Org-mode. @key{SPC}, @key{TAB}, and
2548@key{RET} can be used from the agenda buffer to jump to the diary
2549file, in order to edit existing diary entries. The @kbd{i} command to
2550insert new entries for the current date works in the agenda buffer, as
2551well as the commands @kbd{S}, @kbd{M}, and @kbd{C} to display
2552Sunrise/Sunset times, show lunar phases and to convert to other
2553calendars, respectively. @kbd{c} can be used to switch back and forth
2554between calendar and agenda.
2555
2556@node Agenda to diary, , Diary to agenda, Calendar/Diary integration
2557@subsection Including the agenda into the diary
2558@cindex agenda to diary
2559
2560If you prefer to use the Emacs diary as your main instrument and if
2561you wish to include the Org-mode agenda into it, the following steps
2562are necessary: Autoload the function @command{org-diary} as shown
2563above under @ref{Installation and Activation}. You also need to use
2564@emph{fancy diary display} by setting in @file{.emacs}:
2565
2566@lisp
2567(add-hook 'diary-display-hook 'fancy-diary-display)
2568@end lisp
2569
2570Then include the following line into your @file{~/diary} file, in
2571order to get the entries from all files listed in the variable
2572@code{org-agenda-files}:
2573
2574@example
2575&%%(org-diary)
2576@end example
2577@noindent
2578You may also select specific files with
2579
2580@example
2581&%%(org-diary) ~/path/to/some/org-file.org
2582&%%(org-diary) ~/path/to/another/org-file.org
2583@end example
2584
2585If you now launch the calendar and press @kbd{d} to display a diary,
2586the headlines of entries containing a timestamp, date range, schedule,
2587or deadline referring to the selected date will be listed. Just like
2588in Org-mode's agenda view, the diary for @emph{today} contains
2589additional entries for overdue deadlines and scheduled items. See
2590also the documentation of the @command{org-diary} function.
2591
2592@node Exporting, Miscellaneous, Agenda Views, Top 2614@node Exporting, Miscellaneous, Agenda Views, Top
2593@chapter Exporting 2615@chapter Exporting
2594@cindex exporting 2616@cindex exporting
@@ -3021,6 +3043,42 @@ fixing every line by hand?}@*
3021The indentation of a table is set by the first line. So just fix the 3043The indentation of a table is set by the first line. So just fix the
3022indentation of the first line and realign with @key{TAB}. 3044indentation of the first line and realign with @key{TAB}.
3023 3045
3046@item @b{Is it possible to include entries from org-mode files into my
3047emacs diary?}@*
3048Since the org-mode agenda is much more powerful and can contain the
3049diary (@pxref{Calendar/Diary integration}), you should think twice
3050before deciding to do this. Inegrating org-mode information into the
3051diary is, however, possible. The following steps are necessary:
3052Autoload the function @command{org-diary} as shown above under
3053@ref{Installation and Activation}. You also need to use @emph{fancy
3054diary display} by setting in @file{.emacs}:
3055
3056@lisp
3057(add-hook 'diary-display-hook 'fancy-diary-display)
3058@end lisp
3059
3060Then include the following line into your @file{~/diary} file, in
3061order to get the entries from all files listed in the variable
3062@code{org-agenda-files}:
3063
3064@example
3065&%%(org-diary)
3066@end example
3067@noindent
3068You may also select specific files with
3069
3070@example
3071&%%(org-diary) ~/path/to/some/org-file.org
3072&%%(org-diary) ~/path/to/another/org-file.org
3073@end example
3074
3075If you now launch the calendar and press @kbd{d} to display a diary,
3076the headlines of entries containing a timestamp, date range, schedule,
3077or deadline referring to the selected date will be listed. Just like
3078in Org-mode's agenda view, the diary for @emph{today} contains
3079additional entries for overdue deadlines and scheduled items. See
3080also the documentation of the @command{org-diary} function.
3081
3024@end enumerate 3082@end enumerate
3025 3083
3026 3084