Mercurial > emacs
annotate man/org.texi @ 67043:954ac978c4a8
*** empty log message ***
author | Juri Linkov <juri@jurta.org> |
---|---|
date | Sun, 20 Nov 2005 07:57:39 +0000 |
parents | 578b7f9692c4 |
children | a0a8d49729fd |
rev | line source |
---|---|
58792 | 1 \input texinfo |
2 @c %**start of header | |
65245
8a283bd1b6c0
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
65244
diff
changeset
|
3 @c @setfilename org |
8a283bd1b6c0
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
65244
diff
changeset
|
4 @setfilename ../info/org |
58792 | 5 @settitle Org Mode Manual |
6 | |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
7 @set VERSION 3.20 |
65965
927e31d586ca
(Workflow states): Documented that change in keywords
Carsten Dominik <dominik@science.uva.nl>
parents:
65656
diff
changeset
|
8 @set DATE October 2005 |
58792 | 9 |
10 @dircategory Emacs | |
11 @direntry | |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
12 * Org Mode: (org). Outline-based notes management and organizer |
58792 | 13 @end direntry |
14 | |
15 @c Version and Contact Info | |
16 @set MAINTAINERSITE @uref{http://www.astro.uva.nl/~dominik/Tools/org/,maintainers webpage} | |
17 @set MAINTAINER Carsten Dominik | |
18 @set MAINTAINEREMAIL @email{dominik@@science.uva.nl} | |
19 @set MAINTAINERCONTACT @uref{mailto:dominik@@science.uva.nl,contact the maintainer} | |
20 @c %**end of header | |
21 @finalout | |
22 | |
23 @c Macro definitions | |
24 | |
25 @c Subheadings inside a table. Need a difference between info and the rest. | |
26 @macro tsubheading{text} | |
27 @ifinfo | |
28 @subsubheading \text\ | |
29 @end ifinfo | |
30 @ifnotinfo | |
31 @item @b{\text\} | |
32 @end ifnotinfo | |
33 @end macro | |
34 | |
35 @copying | |
36 This manual is for Org-mode (version @value{VERSION}). | |
37 | |
65244 | 38 Copyright @copyright{} 2004, 2005 Free Software Foundation |
58792 | 39 |
40 @quotation | |
41 Permission is granted to copy, distribute and/or modify this document | |
65656 | 42 under the terms of the GNU Free Documentation License, Version 1.1 or |
58792 | 43 any later version published by the Free Software Foundation; with no |
44 Invariant Sections, with the Front-Cover texts being ``A GNU Manual,'' | |
45 and with the Back-Cover Texts as in (a) below. A copy of the | |
46 license is included in the section entitled ``GNU Free Documentation | |
47 License.'' | |
48 | |
49 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify | |
50 this GNU Manual, like GNU software. Copies published by the Free | |
51 Software Foundation raise funds for GNU development.'' | |
52 @end quotation | |
53 @end copying | |
54 | |
55 @titlepage | |
56 @title Org Mode Manual | |
57 | |
58 @subtitle Release @value{VERSION} | |
59 @author by Carsten Dominik | |
60 | |
61 @c The following two commands start the copyright page. | |
62 @page | |
63 @vskip 0pt plus 1filll | |
64 @insertcopying | |
65 @end titlepage | |
66 | |
67 @c Output the table of contents at the beginning. | |
68 @contents | |
69 | |
70 @ifnottex | |
71 @node Top, Introduction, (dir), (dir) | |
72 @top Org Mode Manual | |
73 | |
74 @insertcopying | |
75 @end ifnottex | |
76 | |
77 @menu | |
78 * Introduction:: Getting started | |
79 * Document Structure:: A tree works like your brain | |
80 * Tables:: Pure magic for quick formatting | |
81 * Hyperlinks:: Notes in context | |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
82 * TODO items:: Every tree branch can be a TODO item |
58792 | 83 * Timestamps:: Assign date and time to items |
84 * Timeline and Agenda:: Use time-stamped items to produce an agenda | |
85 * Exporting:: Sharing and publishing of notes | |
86 * Miscellaneous:: All the rest which did not fit elsewhere | |
87 * Index:: The fast road to specific information | |
88 * Key Index:: Key bindings and where they are described | |
89 | |
90 @detailmenu | |
91 --- The Detailed Node Listing --- | |
92 | |
93 Introduction | |
94 | |
95 * Summary:: Brief summary of what Org-mode does | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
96 * Installation and Activation:: How to install Org-mode |
64517 | 97 * Feedback:: Bug reports, ideas, patches etc. |
58792 | 98 |
99 Document Structure | |
100 | |
101 * Outlines:: Org-mode is based on outline-mode | |
102 * Headlines:: How to typeset org-tree headlines | |
65656 | 103 * Visibility cycling:: Show and hide, much simplified |
58792 | 104 * Motion:: Jumping to other headlines |
105 * Structure editing:: Changing sequence and level of headlines | |
63362 | 106 * Archiving:: Move done task trees to a different place |
58792 | 107 * Sparse trees:: Matches embedded in context |
108 | |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
109 Tables |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
110 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
111 * Built-in table editor:: Simple tables |
63833 | 112 * Table calculations:: Compute a field from other fields |
113 * orgtbl-mode:: The table editor as minor mode | |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
114 * table.el:: Complex tables |
63833 | 115 |
116 Calculations in tables | |
117 | |
118 * Formula syntax:: How to write a formula | |
64517 | 119 * Column formulas:: Formulas valid for all fields in a column |
120 * Advanced features:: Field names, parameters and automatic recalc | |
121 * Named-field formulas:: Formulas valid in single fields | |
122 * Editing/debugging formulas:: Changing a stored formula | |
65656 | 123 * Appetizer:: Taste the power of calc |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
124 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
125 Hyperlinks |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
126 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
127 * Links:: URL-like links to the world |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
128 * Remember:: Org-trees store quick notes |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
129 |
58792 | 130 TODO items |
131 | |
132 * TODO basics:: Marking and displaying TODO entries | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
133 * TODO extensions:: Workflow and assignments |
58792 | 134 * Priorities:: Some things are more important than others |
135 | |
136 Extended use of TODO keywords | |
137 | |
138 * Workflow states:: From TODO to DONE in steps | |
139 * TODO types:: I do this, Fred the rest | |
140 * Per file keywords:: Different files, different requirements | |
141 | |
142 Timestamps | |
143 | |
144 * Time stamps:: Assigning a time to a tree entry | |
145 * Creating timestamps:: Commands which insert timestamps | |
146 | |
147 Timeline and Agenda | |
148 | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
149 * Timeline:: Time-sorted view for single file |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
150 * Agenda:: Your weekly planner |
58792 | 151 * Agenda commands:: Remote editing of org trees |
152 * Calendar/Diary integration:: Integrating Anniversaries and more | |
153 | |
154 Calendar/Diary integration | |
155 | |
156 * Diary to agenda:: Agenda incorporates the diary | |
157 * Agenda to diary:: Diary incorporates the agenda | |
158 | |
159 Exporting | |
160 | |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
161 * ASCII export:: Export as a structured ASCII file |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
162 * HTML export:: Export as an HTML file |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
163 * iCalendar export:: Create calendar entries. |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
164 |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
165 HTML export |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
166 |
58792 | 167 * HTML formatting:: Interpretation of the buffer content |
168 * Export options:: How to influence exports | |
169 * Comment lines:: Lines which will not be exported | |
170 | |
171 Miscellaneous | |
172 | |
173 * Completion:: M-TAB knows what you need | |
174 * Customization:: Adapting Org-mode to your taste | |
62548 | 175 * FAQ:: Frequently asked questions |
58792 | 176 * Interaction:: Other Emacs packages |
65656 | 177 * TTY keys:: Using Org-mode on a tty |
63362 | 178 * Bugs:: Things which do not work perfectly |
58792 | 179 * Acknowledgments:: These people provided feedback and more |
180 | |
181 @end detailmenu | |
182 @end menu | |
183 | |
184 @node Introduction, Document Structure, Top, Top | |
185 @chapter Introduction | |
186 @cindex introduction | |
187 | |
188 @menu | |
189 * Summary:: Brief summary of what Org-mode does | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
190 * Installation and Activation:: How to install Org-mode |
64517 | 191 * Feedback:: Bug reports, ideas, patches etc. |
58792 | 192 @end menu |
193 | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
194 @node Summary, Installation and Activation, Introduction, Introduction |
58792 | 195 @section Summary |
196 @cindex summary | |
197 | |
198 Org-mode is a mode for keeping notes, maintaining ToDo lists, and doing | |
199 project planning with a fast and effective plain-text system. | |
200 | |
201 Org-mode develops organizational tasks around NOTES files that contain | |
202 information about projects as plain text. Org-mode is implemented on | |
203 top of outline-mode, which makes it possible to keep the content of | |
204 large files well structured. Visibility cycling and structure editing | |
205 help to work with the tree. Tables are easily created with a built-in | |
206 table editor. Org-mode supports ToDo items, deadlines, time stamps, | |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
207 and scheduling. It dynamically compiles entries into an agenda that |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
208 utilizes and smoothly integrates much of the Emacs calendar and diary. |
64517 | 209 Plain text URL-like links connect to websites, emails, Usenet |
58792 | 210 messages, BBDB entries, and any files related to the projects. For |
211 printing and sharing of notes, an Org-mode file can be exported as a | |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
212 structured ASCII file, as HTML, or (todo and agenda items only) as an |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
213 iCalendar file. |
58792 | 214 |
215 Org-mode keeps simple things simple. Not every outline branch needs | |
216 to be an action item, not every action item needs to have priority or | |
217 scheduling information associated with it. Org-mode can be used on | |
218 different levels and in different ways, for example | |
219 | |
220 @example | |
221 @r{@bullet{} as an outline extension with visibility cycling and structure editing} | |
222 @r{@bullet{} as an ASCII system and table editor to take structured notes} | |
63833 | 223 @r{@bullet{} as an ASCII table editor with some spreadsheet-like capabilities} |
58792 | 224 @r{@bullet{} as a simple hypertext system, with HTML export} |
225 @r{@bullet{} as a TODO list editor} | |
226 @r{@bullet{} as a full agenda and planner with deadlines and work scheduling} | |
227 @end example | |
228 | |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
229 The Org-mode table editor can be integrated into any major mode by |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
230 activating the minor Orgtbl-mode. |
59541 | 231 |
232 There is a website for Org-mode which provides links to the newest | |
233 version of Org-mode, as well as additional information, screen shots | |
234 and example files. This page is located at | |
235 @uref{http://www.astro.uva.nl/~dominik/Tools/org/}. | |
236 | |
237 @page | |
238 | |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
239 @node Installation and Activation, Feedback, Summary, Introduction |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
240 @section Installation and Activation |
58792 | 241 @cindex installation |
242 @cindex autoload | |
243 @cindex global keybindings | |
244 @cindex keybindings, global | |
245 | |
62548 | 246 If Org-mode is part of the Emacs distribution or an XEmacs package, |
247 you only need to copy the following lines to your @file{.emacs} file. | |
248 The last two lines define @emph{global} keys for the commands | |
249 @command{org-store-link} and @command{org-agenda} - please choose | |
250 suitable keys yourself. | |
58792 | 251 |
62548 | 252 @lisp |
253 ;; The following lines are always needed. Choose your own keys. | |
254 (add-to-list 'auto-mode-alist '("\\.org$" . org-mode)) | |
255 (define-key global-map "\C-cl" 'org-store-link) | |
256 (define-key global-map "\C-ca" 'org-agenda) | |
257 @end lisp | |
58792 | 258 |
62548 | 259 If you have downloaded Org-mode from the Web, you must byte-compile |
260 @file{org.el} and put it on your load path. In addition to the Emacs | |
261 Lisp lines above, you also need to add the following lines to | |
262 @file{.emacs}: | |
58792 | 263 |
264 @lisp | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
265 ;; These lines only if org-mode is not part of the X/Emacs distribution. |
58792 | 266 (autoload 'org-mode "org" "Org mode" t) |
267 (autoload 'org-diary "org" "Diary entries from Org mode") | |
268 (autoload 'org-agenda "org" "Multi-file agenda from Org mode" t) | |
269 (autoload 'org-store-link "org" "Store a link to the current location" t) | |
59541 | 270 (autoload 'orgtbl-mode "org" "Org tables as a minor mode" t) |
271 (autoload 'turn-on-orgtbl "org" "Org tables as a minor mode") | |
58792 | 272 @end lisp |
273 | |
274 @cindex org-mode, turning on | |
62548 | 275 With this setup, all files with extension @samp{.org} will be put into |
276 Org-mode. As an alternative, make the first line of a file look like | |
277 this: | |
58792 | 278 |
279 @example | |
280 MY PROJECTS -*- mode: org; -*- | |
281 @end example | |
282 | |
283 @noindent which will select Org-mode for this buffer no matter what | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
284 the file's name is. See also the variable |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
285 @code{org-insert-mode-line-in-empty-file'}. |
58792 | 286 |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
287 @node Feedback, , Installation and Activation, Introduction |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
288 @section Feedback |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
289 @cindex feedback |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
290 @cindex bug reports |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
291 @cindex maintainer |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
292 @cindex author |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
293 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
294 If you find problems with Org-mode, or if you have questions, remarks, |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
295 or ideas about it, please contact the maintainer Carsten Dominik at |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
296 @value{MAINTAINEREMAIL}. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
297 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
298 For bug reports, please provide as much information as possible, |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
299 including the version information of Emacs (@kbd{C-h v emacs-version |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
300 @key{RET}}) and Org-mode (@kbd{M-x org-version}), as well as the |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
301 Org-mode related setup in @file{.emacs}. If an error occurs, a |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
302 traceback can be very useful. Often a small example file helps, along |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
303 with clear information about: |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
304 @enumerate |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
305 @item What exactly did you do? |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
306 @item What did you expect to happen? |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
307 @item What happened instead? |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
308 @end enumerate |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
309 @noindent Thanks for helping to improve this mode. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
310 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
311 @node Document Structure, Tables, Introduction, Top |
58792 | 312 @chapter Document Structure |
313 @cindex document structure | |
314 @cindex structure of document | |
315 | |
316 Org-mode is based on outline mode and provides flexible commands to | |
317 edit the structure of the document. | |
318 | |
319 @menu | |
320 * Outlines:: Org-mode is based on outline-mode | |
321 * Headlines:: How to typeset org-tree headlines | |
65656 | 322 * Visibility cycling:: Show and hide, much simplified |
58792 | 323 * Motion:: Jumping to other headlines |
324 * Structure editing:: Changing sequence and level of headlines | |
63362 | 325 * Archiving:: Move done task trees to a different place |
58792 | 326 * Sparse trees:: Matches embedded in context |
327 @end menu | |
328 | |
329 @node Outlines, Headlines, Document Structure, Document Structure | |
330 @section Outlines | |
331 @cindex outlines | |
332 @cindex outline-mode | |
333 | |
334 Org-mode is implemented on top of outline-mode. Outlines allow to | |
335 organize a document in a hierarchical structure, which (at least for | |
336 me) is the best representation of notes and thoughts. Overview over | |
337 this structure is achieved by folding (hiding) large parts of the | |
338 document to show only the general document structure and the parts | |
339 currently being worked on. Org-mode greatly simplifies the use of | |
340 outlines by compressing the entire show/hide functionality into a | |
341 single command @command{org-cycle}, which is bound to the @key{TAB} | |
342 key. | |
343 | |
344 @node Headlines, Visibility cycling, Outlines, Document Structure | |
345 @section Headlines | |
346 @cindex headlines | |
347 @cindex outline tree | |
348 | |
349 Headlines define the structure of an outline tree. The Headlines in | |
350 Org-mode start with one or more stars, for example | |
351 | |
352 @example | |
353 * Top level headline | |
354 ** Second level | |
355 *** 3rd level | |
356 some text | |
357 *** 3rd level | |
358 more text | |
359 * Another top level headline | |
360 @end example | |
361 | |
362 @node Visibility cycling, Motion, Headlines, Document Structure | |
363 @section Visibility cycling | |
364 @cindex visibility cycling | |
365 @cindex trees, visibility | |
366 | |
367 Outlines make it possible to hide parts of the text in the buffer. | |
368 Org-mode uses a single command bound to the @key{TAB} key to change | |
369 the visibility in the buffer. | |
370 | |
371 @cindex subtree visibility states | |
372 @cindex folded, subtree visibility state | |
373 @cindex children, subtree visibility state | |
374 @cindex subtree, subtree visibility state | |
375 @table @kbd | |
376 @kindex @key{TAB} | |
377 @item @key{TAB} | |
378 Rotate current subtree between the states | |
379 @example | |
380 ,-> FOLDED -> CHILDREN -> SUBTREE --. | |
381 '-----------------------------------' | |
382 @end example | |
383 At the beginning of the buffer (or when called with @kbd{C-u}), this does | |
384 the same as the command @kbd{S-@key{TAB}} below. | |
385 | |
386 @cindex global visibility states | |
387 @cindex overview, global visibility state | |
388 @cindex contents, global visibility state | |
389 @cindex show all, global visibility state | |
390 @kindex S-@key{TAB} | |
391 @item S-@key{TAB} | |
392 Rotate the entire buffer between the states | |
393 @example | |
394 ,-> OVERVIEW -> CONTENTS -> SHOW ALL --. | |
395 '--------------------------------------' | |
396 @end example | |
397 Note that inside tables, @kbd{S-@key{TAB}} jumps to the previous field. | |
398 | |
399 @cindex show all, command | |
400 @kindex C-c C-a | |
401 @item C-c C-a | |
402 Show all. | |
403 @end table | |
404 | |
63833 | 405 When Emacs first visits an Org-mode file, the global state is set to |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
406 OVERVIEW, i.e. only the top level headlines are visible. This can be |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
407 configured through the variable @code{org-startup-folded}, or on a |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
408 per-file basis by adding one of the following lines anywhere in the |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
409 buffer: |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
410 |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
411 @example |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
412 #+STARTUP: fold |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
413 #+STARTUP: nofold |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
414 #+STARTUP: content |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
415 @end example |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
416 |
58792 | 417 @node Motion, Structure editing, Visibility cycling, Document Structure |
418 @section Motion | |
419 @cindex motion, between headlines | |
420 @cindex jumping, to headlines | |
421 The following commands jump to other headlines in the buffer. | |
422 | |
423 @table @kbd | |
424 @kindex C-c C-n | |
425 @item C-c C-n | |
426 Next heading. | |
427 @kindex C-c C-p | |
428 @item C-c C-p | |
429 Previous heading. | |
430 @kindex C-c C-f | |
431 @item C-c C-f | |
432 Next heading same level. | |
433 @kindex C-c C-b | |
434 @item C-c C-b | |
435 Previous heading same level. | |
436 @kindex C-c C-u | |
437 @item C-c C-u | |
438 Backward to higher level heading. | |
439 @kindex C-c C-j | |
440 @item C-c C-j | |
441 Jump to a different place without changing the current outline | |
442 visibility. Shows the document structure in a temporary buffer, where | |
443 you can use visibility cycling (@key{TAB}) to find your destination. | |
444 After pressing @key{RET}, the cursor moves to the selected location in | |
445 the original buffer, and the headings hierarchy above it is made | |
446 visible. | |
447 @end table | |
448 | |
63362 | 449 @node Structure editing, Archiving, Motion, Document Structure |
58792 | 450 @section Structure editing |
451 @cindex structure editing | |
452 @cindex headline, promotion and demotion | |
453 @cindex promotion, of subtrees | |
454 @cindex demotion, of subtrees | |
455 @cindex subtree, cut and paste | |
63833 | 456 @cindex pasting, of subtrees |
457 @cindex cutting, of subtrees | |
458 @cindex copying, of subtrees | |
58792 | 459 |
460 @table @kbd | |
461 @kindex M-@key{RET} | |
462 @item M-@key{RET} | |
463 Insert new heading with same level as current | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
464 @kindex M-S-@key{RET} |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
465 @item M-S-@key{RET} |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
466 Insert new TODO entry with same level as current heading. |
58792 | 467 @kindex M-@key{left} |
468 @item M-@key{left} | |
469 Promote current heading by one level | |
470 @kindex M-@key{right} | |
471 @item M-@key{right} | |
472 Demote current heading by one level | |
473 @kindex M-S-@key{left} | |
474 @item M-S-@key{left} | |
475 Promote the current subtree by one level | |
476 @kindex M-S-@key{right} | |
477 @item M-S-@key{right} | |
478 Demote the current subtree by one level | |
479 @kindex M-S-@key{up} | |
480 @item M-S-@key{up} | |
481 Move subtree up (swap with previous subtree of same level) | |
482 @kindex M-S-@key{down} | |
483 @item M-S-@key{down} | |
484 Move subtree down (swap with next subtree of same level) | |
65656 | 485 @kindex C-c C-x C-w |
486 @item C-c C-x C-w | |
58792 | 487 Kill subtree, i.e. remove it from buffer but save in kill ring. |
65656 | 488 @kindex C-c C-x M-w |
489 @item C-c C-x M-w | |
58792 | 490 Copy subtree to kill ring. |
65656 | 491 @kindex C-c C-x C-y |
492 @item C-c C-x C-y | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
493 Yank subtree from kill ring. This does modify the level of the subtree to |
58792 | 494 make sure the tree fits in nicely at the yank position. The yank |
495 level can also be specified with a prefix arg, or by yanking after a | |
496 headline marker like @samp{****}. | |
497 @end table | |
498 | |
499 @cindex region, active | |
500 @cindex active region | |
501 @cindex transient-mark-mode | |
502 When there is an active region (transient-mark-mode), promotion and | |
503 demotion work on all headlines in the region. To select a region of | |
504 headlines, it is best to place both point and mark at the beginning of a | |
505 line, mark at the beginning of the first headline, and point at the line | |
506 just after the last headline to change. Note that when the cursor is | |
507 inside a table (@pxref{Tables}), the Meta-Cursor keys have different | |
508 functionality. | |
509 | |
63362 | 510 @node Archiving, Sparse trees, Structure editing, Document Structure |
511 @section Archiving | |
512 @cindex archiving | |
513 | |
63833 | 514 When a project represented by a (sub)tree is finished, you may want |
515 to move the tree to an archive place, either in the same file under a | |
63362 | 516 special top-level heading, or even to a different file. |
517 @table @kbd | |
63833 | 518 @kindex C-c $ |
63362 | 519 @item @kbd{C-c $} |
520 Archive the subtree starting at the cursor position to the location | |
521 given by @code{org-archive-location}. | |
522 @end table | |
523 | |
524 @cindex archive locations | |
525 The default archive is a file in the same directory as the current | |
526 file, with the name derived by appending @file{_archive} to the | |
527 current file name. For information and examples on how to change | |
528 this, see the documentation string of the variable | |
529 @code{org-archive-location}. If you are also using the Org-mode | |
530 agenda, archiving to a different file is a good way to keep archived | |
531 trees from contributing agenda items. | |
532 | |
533 @node Sparse trees, , Archiving, Document Structure | |
58792 | 534 @section Sparse trees |
535 @cindex sparse trees | |
536 @cindex trees, sparse | |
537 @cindex folding, sparse trees | |
538 @cindex occur, command | |
539 | |
540 An important feature of Org-mode is the ability to construct | |
541 @emph{sparse trees} for selected information in an outline tree. A | |
542 sparse tree means that the entire document is folded as much as | |
543 possible, but the selected information is made visible along with the | |
62548 | 544 headline structure above it@footnote{See also the variable |
63833 | 545 @code{org-show-following-heading}.}. Just try it out and you will see |
58792 | 546 immediately how it works. |
547 | |
548 Org-mode contains several commands creating such trees. The most | |
549 basic one is @command{org-occur}: | |
550 | |
551 @table @kbd | |
552 @kindex C-c / | |
553 @item C-c / | |
554 Occur. Prompts for a regexp and shows a sparse tree with all matches. | |
555 If the match is in a headline, the headline is made visible. If the | |
556 match is in the body of an entry, headline and body are made visible. | |
557 In order to provide minimal context, also the full hierarchy of | |
558 headlines above the match is shown, as well as the headline following | |
559 the match. | |
560 @end table | |
561 | |
562 Other commands are using this feature as well. For example @kbd{C-c | |
563 C-v} creates a sparse TODO tree (@pxref{TODO basics}). | |
564 | |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
565 @kindex C-c C-x v |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
566 @cindex printing sparse trees |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
567 @cindex visible text, printing |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
568 To print a sparse tree, you can use the Emacs command |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
569 @code{ps-print-buffer-with-faces} which does not print invisible parts |
63833 | 570 of the document @footnote{This does not work under XEmacs, because |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
571 XEmacs uses selective display for outlining, not text properties}. |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
572 Or you can use the command @kbd{C-c C-x v} to copy the visible part of |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
573 the document to another file (extension @file{.txt}) which then can be |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
574 printed in any desired way. |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
575 |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
576 @node Tables, Hyperlinks, Document Structure, Top |
58792 | 577 @chapter Tables |
578 @cindex tables | |
579 | |
63833 | 580 Org-mode has a very fast and intuitive table editor built-in. |
581 Spreadsheet-like calculations are supported in connection with the | |
582 Emacs @file{calc} package. | |
58792 | 583 |
584 @menu | |
585 * Built-in table editor:: Simple tables | |
63833 | 586 * Table calculations:: Compute a field from other fields |
587 * orgtbl-mode:: The table editor as minor mode | |
58792 | 588 * table.el:: Complex tables |
589 @end menu | |
590 | |
63833 | 591 @node Built-in table editor, Table calculations, Tables, Tables |
58792 | 592 @section The built-in table editor |
593 @cindex table editor, builtin | |
594 | |
595 Org-mode makes it easy to format tables in plain ASCII. Any line with | |
596 @samp{|} as the first non-white character is considered part of a | |
597 table. @samp{|} is also the column separator. A table might look | |
598 like this: | |
599 | |
600 @example | |
601 | Name | Phone | Age | | |
602 |-------+-------+-----| | |
603 | Peter | 1234 | 17 | | |
604 | Anna | 4321 | 25 | | |
605 @end example | |
606 | |
607 A table is re-aligned automatically each time you press @key{TAB} or | |
63833 | 608 @key{RET} or @kbd{C-c C-c} inside the table. @key{TAB} also moves to |
609 the next field (@key{RET} to the next row) and creates new table rows | |
610 at the end of the table or before horizontal lines. The indentation | |
611 of the table is set by the first line. Any line starting with | |
612 @samp{|-} is considered as a horizontal separator line and will be | |
613 expanded on the next re-align to span the whole table width. So, to | |
614 create the above table, you would only type | |
58792 | 615 |
616 @example | |
617 |Name|Phone|Age | |
618 |- | |
619 @end example | |
620 @noindent and then press @key{TAB} to align the table and start filling in | |
621 fields. | |
622 | |
65656 | 623 When typing text into a field, Org-mode treats @key{DEL}, |
624 @key{Backspace}, and all character keys in a special way, so that | |
625 inserting and deleting avoids shifting other fields. Also, when | |
626 typing @emph{immediately after the cursor was moved into a new field | |
627 with @kbd{@key{TAB}}, @kbd{S-@key{TAB}} or @kbd{@key{RET}}}, the | |
628 field is automatically made blank. If this behavior is too | |
629 unpredictable for you, configure the variables | |
630 @code{org-enable-table-editor} and @code{org-table-auto-blank-field}. | |
631 | |
58792 | 632 @table @kbd |
633 @tsubheading{Creation and conversion} | |
63833 | 634 @item M-x org-table-create |
635 Creates an empty Org-mode table. However, it is much easier to just | |
636 start typing, like @kbd{|Name|Phone|Age @key{RET} |- @key{TAB}} | |
58792 | 637 |
638 @kindex C-c C-c | |
639 @item C-c C-c | |
640 Convert region to table. Works when the cursor is not in an existing | |
641 table, and when there is a region defined. If every line contains at | |
642 least one TAB character, the function assumes that the material is tab | |
643 separated. If not, lines are split at whitespace into fields. You | |
644 can use a prefix argument to indicate how many consecutive spaces are | |
645 at least required to indicate a field separator (default: just one). | |
646 | |
647 @tsubheading{Re-aligning and field motion} | |
648 @kindex C-c C-c | |
649 @item C-c C-c | |
650 Re-align the table without moving the cursor. | |
651 | |
652 @kindex @key{TAB} | |
653 @item @key{TAB} | |
654 Re-align the table, move to the next field. Creates a new row if | |
655 necessary. | |
656 | |
657 @kindex S-@key{TAB} | |
658 @item S-@key{TAB} | |
63833 | 659 Re-align, move to previous field. |
58792 | 660 |
661 @kindex @key{RET} | |
662 @item @key{RET} | |
663 Re-align the table and move down to next row. Creates a new row if | |
664 necessary. At the beginning or end of a line, @key{RET} still does | |
665 NEWLINE, so it can be used to split a table. | |
666 | |
667 @tsubheading{Column and row editing} | |
668 @kindex M-@key{left} | |
669 @kindex M-@key{right} | |
670 @item M-@key{left} | |
671 @itemx M-@key{right} | |
672 Move the current column left/right | |
673 | |
674 @kindex M-S-@key{left} | |
675 @item M-S-@key{left} | |
676 Kill the current column. | |
677 | |
678 @kindex M-S-@key{right} | |
679 @item M-S-@key{right} | |
680 Insert a new column to the left of the cursor position. | |
681 | |
682 @kindex M-@key{up} | |
683 @kindex M-@key{down} | |
684 @item M-@key{up} | |
685 @itemx M-@key{down} | |
686 Move the current row up/down | |
687 | |
688 @kindex M-S-@key{up} | |
689 @item M-S-@key{up} | |
690 Kill the current row or horizontal line. | |
691 | |
692 @kindex M-S-@key{down} | |
693 @item M-S-@key{down} | |
694 Insert a new row above (with arg: below) the current row. | |
695 | |
696 @kindex C-c - | |
697 @item C-c - | |
63833 | 698 Insert a horizontal line below current row. With prefix arg, the line |
699 is created above the current line. | |
58792 | 700 |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
701 @kindex C-c ^ |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
702 @item C-c ^ |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
703 Sort the table lines in the region. Point and mark must be in the first |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
704 and last line to be included, and must be in the column that should be |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
705 used for sorting. The command prompts for numerical versus |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
706 alphnumerical sorting. |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
707 |
58792 | 708 @tsubheading{Regions} |
65656 | 709 @kindex C-c C-x M-w |
710 @item C-c C-x M-w | |
63833 | 711 Copy a rectangular region from a table to a special clipboard. Point |
58792 | 712 and mark determine edge fields of the rectangle. The process ignores |
713 horizontal separator lines. | |
65656 | 714 @kindex C-c C-x C-w |
715 @item C-c C-x C-w | |
63833 | 716 Copy a rectangular region from a table to a special clipboard, and |
717 blank all fields in the rectangle. So this is the ``cut'' operation. | |
65656 | 718 @kindex C-c C-x C-y |
719 @item C-c C-x C-y | |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
720 Paste a rectangular region into a table. |
58792 | 721 The upper right corner ends up in the current field. All involved fields |
722 will be overwritten. If the rectangle does not fit into the present table, | |
723 the table is enlarged as needed. The process ignores horizontal separator | |
724 lines. | |
725 @kindex C-c C-q | |
726 @item C-c C-q | |
727 Wrap several fields in a column like a paragraph. If there is an active | |
728 region, and both point and mark are in the same column, the text in the | |
729 column is wrapped to minimum width for the given number of lines. A | |
730 prefix ARG may be used to change the number of desired lines. If there | |
731 is no region, the current field is split at the cursor position and the | |
732 text fragment to the right of the cursor is prepended to the field one | |
733 line down. If there is no region, but you specify a prefix ARG, the | |
734 current field gets blank, and the content is appended to the field | |
735 above. | |
736 | |
737 @tsubheading{Calculations} | |
63833 | 738 @cindex formula, in tables |
739 @cindex calculations, in tables | |
740 @kindex C-c = | |
741 @item C-c = | |
64517 | 742 Install a new formula for the current column and replace current field |
743 with the result of the formula. | |
744 | |
745 @kindex C-u C-c = | |
746 @item C-u C-c = | |
747 Install a new formula for the current field, which must be a named | |
748 field. Evaluate the formula and replace the field content with the | |
749 result. | |
750 | |
751 @kindex C-c ' | |
752 @item C-c ' | |
753 Edit all formulas associated with the current table in a separate | |
754 buffer. | |
63833 | 755 |
756 @kindex C-c * | |
757 @item C-c * | |
758 Recalculate the current row by applying the stored formulas from left | |
759 to right. When called with a @kbd{C-u} prefix, recalculate the | |
760 entire table, starting with the first non-header line (i.e. below the | |
761 first horizontal separator line). For details, see @ref{Table calculations}. | |
762 | |
763 @kindex C-# | |
764 @item C-# | |
64517 | 765 Rotate the calculation mark in first column through the states |
63833 | 766 @samp{}, @samp{#}, @samp{*}, @samp{!}, @samp{$}. For the meaning of |
64517 | 767 these marks see @ref{Advanced features}. When there is an active |
63833 | 768 region, change all marks in the region. |
769 | |
58792 | 770 @kindex C-c ? |
771 @item C-c ? | |
772 Which table column is the cursor in? Displays number >0 in echo | |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
773 area. |
58792 | 774 |
775 @cindex region, active | |
776 @cindex active region | |
777 @cindex transient-mark-mode | |
778 @kindex C-c + | |
779 @item C-c + | |
780 Sum the numbers in the current column, or in the rectangle defined by | |
63833 | 781 the active region. The result is shown in the echo area and can |
58792 | 782 be inserted with @kbd{C-y}. |
783 | |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
784 @kindex S-@key{RET} |
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
785 @item S-@key{RET} |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
786 When current field is empty, copy from first non-empty field above. |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
787 When not empty, copy current field down to next row and move cursor |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
788 along with it. Depending on the variable |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
789 @code{org-table-copy-increment}, integer field values will be |
63362 | 790 incremented during copy. This key is also used by CUA-mode |
791 (@pxref{Interaction}). | |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
792 |
58792 | 793 @tsubheading{Miscellaneous} |
794 @kindex C-c | | |
795 @item C-c | | |
796 Toggle the visibility of vertical lines in tables. The lines are | |
797 still there, only made invisible with a text property. Any @samp{|} | |
798 added by hand will become invisible on the next align. | |
799 | |
800 @item M-x org-table-import | |
801 Import a file as a table. The table should be TAB- or whitespace | |
802 separated. Useful for example to import an Excel table or data from a | |
803 database, because these programs generally can write TAB-separated text | |
804 files. This command works by inserting the file into the buffer and | |
805 then converting the region to a table. Any prefix argument is passed on | |
806 to the converter, which uses it to determine the separator. | |
807 | |
808 @item M-x org-table-export | |
809 Export the table as a TAB-separated file. Useful for data exchange with | |
810 for example Excel or database programs. | |
811 | |
812 @end table | |
813 | |
814 If you don't like the automatic table editor because it gets into your | |
815 way in lines which you would like to start with @samp{|}, you can turn | |
816 it off with | |
817 @lisp | |
818 (setq org-enable-table-editor nil) | |
819 @end lisp | |
820 @noindent The only table command which then still works is | |
821 @kbd{C-c C-c} to do a manual re-align. | |
822 | |
63833 | 823 @node Table calculations, orgtbl-mode, Built-in table editor, Tables |
824 @section Calculations in tables | |
825 @cindex calculations, in tables | |
826 | |
65656 | 827 The table editor makes use of the Emacs @file{calc} package to |
828 implement spreadsheet-like capabilities. Org-mode has two levels of | |
829 complexity for table calculations. On the basic level, tables do only | |
830 horizontal computations, so a field can be computed from other fields | |
831 @emph{in the same row}, and Org-mode assumes that there is only one | |
832 formula for each column. This is very efficient to work with and | |
833 enough for many tasks. On the complex level, columns and individual | |
834 fields can be named for easier referencing in formulas, individual | |
835 named fields can have their own formula associated with them, and | |
836 recalculation can be automated. | |
63833 | 837 |
838 @menu | |
839 * Formula syntax:: How to write a formula | |
64517 | 840 * Column formulas:: Formulas valid for all fields in a column |
841 * Advanced features:: Field names, parameters and automatic recalc | |
842 * Named-field formulas:: Formulas valid in single fields | |
843 * Editing/debugging formulas:: Changing a stored formula | |
844 * Appetizer:: Taste the power of calc | |
63833 | 845 @end menu |
846 | |
64517 | 847 @node Formula syntax, Column formulas, Table calculations, Table calculations |
63833 | 848 @subsection Formula syntax |
849 | |
64517 | 850 A formula can be any algebraic expression understood by the Emacs |
851 @file{calc} package. Before evaluation by @code{calc-eval} | |
852 (@pxref{Calling Calc from Your Lisp Programs,calc-eval,Calling calc | |
853 from Your Lisp Programs,calc,GNU Emacs Calc Manual}), variable | |
854 substitution takes place: | |
855 | |
856 @example | |
857 $ @r{refers to the current field} | |
858 $3 @r{refers to the field in column 3 of the current row} | |
859 $3..$7 @r{a vector of the fields in columns 3-7 of current row} | |
860 $P1..$P3 @r{vector of column range, using column names} | |
861 &2 @r{second data field above the current, in same column} | |
862 &5-2 @r{vector from fifth to second field above current} | |
863 &III-II @r{vector of fields between 2nd and 3rd hline above} | |
864 &III @r{vector of fields between third hline above and current field} | |
865 $name @r{a named field, parameter or constant} | |
866 @end example | |
867 | |
868 The range vectors can be directly fed into the calc vector functions | |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
869 like @samp{vmean} and @samp{vsum}. |
64517 | 870 |
871 @samp{$name} is interpreted as the name of a column, parameter or | |
872 constant. Constants are defined globally through the variable | |
873 @code{org-table-formula-constants}. If you have the | |
63833 | 874 @file{constants.el} package, it will also be used to resolve |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
875 constants, including natural constants like @samp{$h} for Planck's |
63833 | 876 constant, units like @samp{$km} for kilometers. Column names and |
877 parameters can be specified in special table lines. These are | |
64517 | 878 described below, see @ref{Advanced features}. |
63833 | 879 |
880 A formula can contain an optional mode string after a semicolon. This | |
881 string consists of flags to influence calc's modes@footnote{By | |
882 default, Org-mode uses the standard calc modes (precision 12, angular | |
883 units degrees, fraction and symbolic modes off). However, the display | |
65656 | 884 format has been changed to @code{(float 5)} to keep tables compact. |
885 The default settings can be configured using the variable | |
63833 | 886 @code{org-calc-default-modes}.} during execution, e.g. @samp{p20} to |
887 switch the internal precision to 20 digits, @samp{n3}, @samp{s3}, | |
888 @samp{e2} or @samp{f4} to switch to normal, scientific, engineering, | |
889 or fix display format, respectively, and @samp{D}, @samp{R}, @samp{F}, | |
890 and @samp{S} to turn on degrees, radians, fraction and symbolic modes, | |
64517 | 891 respectively. In addition, you may provide a @code{printf} format |
892 specifier to reformat the final result. A few examples: | |
63833 | 893 @example |
894 $1+$2 @r{Sum of first and second field} | |
895 $1+$2;%.2f @r{Same, format result to two decimals} | |
896 exp($2)+exp($1) @r{Math functions can be used} | |
897 $;%.1f @r{Reformat current cell to 1 decimal} | |
64517 | 898 ($3-32)*5/9 @r{Degrees F -> C conversion} |
63833 | 899 $c/$1/$cm @r{Hz -> cm conversion, using @file{constants.el}} |
64517 | 900 tan($1);Dp3s1 @r{Compute in degrees, precision 3, display SCI 1} |
901 sin($1);Dp3%.1e @r{Same, but use printf specifier for display} | |
902 vmean($2..$7) @r{Compute column range mean, using vector function} | |
903 vsum(&III) @r{Sum numbers from 3rd hline above to here} | |
63833 | 904 taylor($3,x=7,2) @r{taylor series of $3, at x=7, second degree} |
905 @end example | |
906 | |
64517 | 907 @node Column formulas, Advanced features, Formula syntax, Table calculations |
908 @subsection Column formulas | |
63833 | 909 |
910 To apply a formula to a field, type it directly into the field, | |
911 preceded by an equal sign, like @samp{=$1+$2}. When you press | |
912 @key{TAB} or @key{RET} or @kbd{C-c C-c} with the cursor still in the | |
64517 | 913 field, the formula will be stored as the formula for the current |
914 column, evaluated and the current field replaced with the result. If | |
915 the field contains only @samp{=}, the previously stored formula for | |
916 this column is used. | |
63833 | 917 |
918 For each column, Org-mode will remember the most recently used | |
64517 | 919 formula. The information is stored in a special line starting with |
920 @samp{#+TBLFM} directly below the table. When adding/deleting/moving | |
921 columns with the appropriate commands, the stored equations will be | |
922 modified accordingly. When a column used in a calculation is removed, | |
923 references to this column become invalid and will cause an error upon | |
924 applying the equation. | |
63833 | 925 |
926 Instead of typing an equation into the field, you may also use the | |
927 command @kbd{C-c =}. It prompts for a formula (with default taken | |
64517 | 928 from the @samp{#+TBLFM:} line) and applies it to the current field. A |
929 numerical prefix (e.g. @kbd{C-5 C-c =}) will apply it to that many | |
930 subsequent fields in the current column. | |
58792 | 931 |
63833 | 932 To recompute all the fields in a line, use the command @kbd{C-c *}. |
933 It re-applies all stored equations to the current row, from left to | |
934 right. With a @kbd{C-u} prefix, this will be done to every line in | |
935 the table, so use this command it you want to make sure the entire | |
64517 | 936 table is up-to-date. @kbd{C-u C-c C-c} is another way to update the |
937 entire table. Global updating does not touch the line(s) above the | |
938 first horizontal separator line, assuming that this is the table | |
939 header. | |
940 | |
941 @node Advanced features, Named-field formulas, Column formulas, Table calculations | |
942 @subsection Advanced features | |
943 | |
944 If you want want the recalculation of fields to happen automatically, | |
945 or if you want to be able to assign a formula to an individual field | |
946 (instead of an entire column) you need to reserve the first column of | |
947 the table for special marking characters. Here is an example of a | |
948 table that collects exam results of students and makes use of these | |
949 features: | |
63833 | 950 @example |
951 @group | |
952 |---+---------+--------+--------+--------+-------+------| | |
953 | | Student | Prob 1 | Prob 2 | Prob 3 | Total | Note | | |
954 |---+---------+--------+--------+--------+-------+------| | |
955 | ! | | P1 | P2 | P3 | Tot | | | |
956 | # | Maximum | 10 | 15 | 25 | 50 | 10.0 | | |
64069 | 957 | ^ | | m1 | m2 | m3 | mt | | |
63833 | 958 |---+---------+--------+--------+--------+-------+------| |
959 | # | Peter | 10 | 8 | 23 | 41 | 8.2 | | |
64517 | 960 | # | Sara | 6 | 14 | 19 | 39 | 7.8 | |
63833 | 961 | # | Sam | 2 | 4 | 3 | 9 | 1.8 | |
962 |---+---------+--------+--------+--------+-------+------| | |
64517 | 963 | | Average | | | | 29.7 | | |
964 | ^ | | | | | at | | | |
63833 | 965 | $ | max=50 | | | | | | |
966 |---+---------+--------+--------+--------+-------+------| | |
64517 | 967 #+TBLFM: $6=vsum($P1..$P3)::$7=10*$Tot/$max;%.1f::$at=vmean(&II);%.1f |
63833 | 968 @end group |
969 @end example | |
64517 | 970 |
971 @noindent @b{Important}: Please note that for these special tables, | |
972 recalculating the table with @kbd{C-u C-c *} does only affect rows | |
973 which are marked @samp{#} or @samp{*}, and named fields. The column | |
974 formulas are not applied in rows with empty first field. | |
975 | |
976 The marking characters have the following meaning: | |
977 @table @samp | |
978 @item ! | |
979 The fields in this line define names for the columns, so that you may | |
980 refer to a column as @samp{$Tot} instead of @samp{$6}. | |
981 @item ^ | |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
982 This row defines names for the fields @emph{above} the row. With such |
64517 | 983 a definition, any formula in the table may use @samp{$m1} to refer to |
984 the value @samp{10}. Also, named fields can have their own formula | |
985 associated with them. | |
986 @item _ | |
987 Similar to @samp{^}, but defines names for the fields in the row | |
988 @emph{below}. | |
989 @item $ | |
990 Fields in this row can define @emph{parameters} for formulas. For | |
991 example, if a field in a @samp{$} row contains @samp{max=50}, then | |
992 formulas in this table can refer to the value 50 using @samp{$max}. | |
993 Parameters work exactly like constants, only that they can be defined on | |
994 a per-table basis. Changing a parameter and then recalculating the | |
995 table can be useful. | |
996 @item # | |
997 Fields in this row are automatically recalculated when pressing | |
998 @key{TAB} or @key{RET} or @kbd{S-@key{TAB}} in this row. Also, this row | |
999 is selected for a global recalculation with @kbd{C-u C-c *}. Unmarked | |
1000 lines will be left alone by this command. | |
1001 @item * | |
1002 Selects this line for global recalculation with @kbd{C-u C-c *}, but | |
1003 not for automatic recalculation. Use this when automatic | |
1004 recalculation slows down editing too much. | |
1005 @item | |
1006 Unmarked lines are exempted from recalculation with @kbd{C-u C-c *}. | |
1007 All lines that should be recalculated should be marked with @samp{#} | |
1008 or @samp{*}. | |
1009 @end table | |
1010 | |
1011 @node Named-field formulas, Editing/debugging formulas, Advanced features, Table calculations | |
1012 @subsection Named-field formulas | |
1013 | |
1014 A named field can have its own formula associated with it. In the | |
1015 example above, this is used for the @samp{at} field that contains | |
1016 the average result of the students. To enter a formula for a named | |
1017 field, just type it onto the buffer, preceded by @samp{:=}. Or use | |
1018 @kbd{C-u C-c =}. This equation will be stored below the table like | |
1019 @samp{$name=...}. Any recalculation in the table (even if only | |
1020 requested for the current line) will also update all named field | |
1021 formulas. | |
1022 | |
1023 @node Editing/debugging formulas, Appetizer, Named-field formulas, Table calculations | |
1024 @subsection Editing and debugging formulas | |
1025 | |
1026 To edit a column or field formula, you can use the commands @kbd{C-c | |
1027 =} and @kbd{C-u C-c =}, respectively. The currently active expression | |
1028 is then presented as default in the minibuffer, were it may be edited. | |
1029 | |
1030 Note that making a table field blank does not remove the formula | |
1031 associated with the field - during the next recalculation the field | |
1032 will be filled again. To remove a formula from a field, you have to | |
1033 give an empty reply when prompted for the formula, or to edit the | |
1034 @samp{#+TBLFM} line. | |
1035 | |
1036 @kindex C-c C-c | |
1037 You may edit the @samp{#+TBLFM} directly and re-apply | |
1038 the changed equations with @kbd{C-c C-c} in that line, or with the | |
1039 normal recalculation commands in the table. | |
1040 | |
1041 @kindex C-c ' | |
1042 @kindex C-c C-c | |
1043 @kindex C-c C-q | |
1044 @kindex C-c ? | |
1045 In particular for large tables with many formulas, it is convenient to | |
1046 use the command @kbd{C-c '} to edit the formulas of the current table | |
1047 in a separate buffer. That buffer will show the formulas one per | |
1048 line, and you are free to edit, add and remove formulas. Press | |
1049 @kbd{C-c ?} on a @samp{$...} expression to get information about its | |
1050 interpretation. Exiting the buffer with @kbd{C-c C-c} only stores the | |
1051 modified formulas below the table. Exiting with @kbd{C-u C-c C-c} | |
1052 also applies them to the entire table. @kbd{C-c C-q} exits without | |
1053 installing the changes. | |
1054 | |
1055 When the evaluation of a formula leads to an error, the field content | |
1056 becomes the string @samp{#ERROR}. If you would like see what is going | |
1057 on during variable substitution and calculation in order to find a | |
1058 bug, turn on formula debugging in the menu and repeat the calculation | |
1059 by pressing, for example by pressing @kbd{C-c = @key{RET}} in a field. | |
1060 Detailed information will be displayed. | |
1061 | |
1062 @node Appetizer, , Editing/debugging formulas, Table calculations | |
1063 @subsection Appetizer | |
1064 | |
1065 Finally, just to wet your appetite on what can be done with the fantastic | |
63833 | 1066 @file{calc} package, here is a table that computes the Taylor series |
1067 for a couple of functions (homework: try that with Excel :-) | |
1068 | |
1069 @example | |
1070 @group | |
1071 |---+-------------+---+-----+--------------------------------------| | |
1072 | | Func | n | x | Result | | |
1073 |---+-------------+---+-----+--------------------------------------| | |
1074 | # | exp(x) | 1 | x | 1 + x | | |
1075 | # | exp(x) | 2 | x | 1 + x + x^2 / 2 | | |
1076 | # | exp(x) | 3 | x | 1 + x + x^2 / 2 + x^3 / 6 | | |
1077 | # | x^2+sqrt(x) | 2 | x=0 | x*(0.5 / 0) + x^2 (2 - 0.25 / 0) / 2 | | |
1078 | # | x^2+sqrt(x) | 2 | x=1 | 2 + 2.5 x - 2.5 + 0.875 (x - 1)^2 | | |
1079 | * | tan(x) | 3 | x | 0.0175 x + 1.77e-6 x^3 | | |
1080 |---+-------------+---+-----+--------------------------------------| | |
1081 #+TBLFM: $5=taylor($2,$4,$3);n3 | |
1082 @end group | |
1083 @end example | |
1084 | |
1085 @node orgtbl-mode, table.el, Table calculations, Tables | |
59541 | 1086 @section The Orgtbl minor mode |
1087 @cindex orgtbl-mode | |
63833 | 1088 @cindex minor mode for tables |
59541 | 1089 |
1090 If you like the intuitive way the Org-mode table editor works, you | |
1091 might want to use it also in other modes like text-mode or mail-mode. | |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1092 The minor mode Orgtbl-mode makes this possible. You can always toggle |
59541 | 1093 the mode with @kbd{M-x orgtbl-mode}. To turn it on by default, for |
1094 example in mail mode, use | |
1095 @lisp | |
1096 (add-hook 'mail-mode-hook 'turn-on-orgtbl) | |
1097 @end lisp | |
1098 | |
63833 | 1099 @node table.el, , orgtbl-mode, Tables |
1100 @section The @file{table.el} package | |
1101 @kindex C-c C-c | |
1102 @cindex table editor, @file{table.el} | |
1103 @cindex @file{table.el} | |
1104 | |
1105 Complex ASCII tables with automatic line wrapping, column- and | |
1106 row-spanning, and alignment can be created using the Emacs table | |
1107 package by Takaaki Ota (@uref{http://sourceforge.net/projects/table}). | |
1108 When @key{TAB} or @kbd{C-c C-c} is pressed in such a table, Org-mode | |
1109 will call @command{table-recognize-table} and move the cursor into the | |
1110 table. Inside a table, the keymap of Org-mode is inactive. In order | |
1111 to execute Org-mode-related commands, leave the table. | |
1112 | |
1113 @table @kbd | |
1114 @kindex C-c C-c | |
1115 @item C-c C-c | |
1116 Recognize @file{table.el} table. Works when the cursor is in a | |
1117 table.el table. | |
1118 | |
1119 @kindex C-c ~ | |
1120 @item C-c ~ | |
1121 Insert a table.el table. If there is already a table at point, this | |
1122 command converts it between the table.el format and the Org-mode | |
1123 format. See the documentation string of the command | |
1124 @code{org-convert-table} for the restrictions under which this is | |
1125 possible. | |
1126 @end table | |
1127 | |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1128 @node Hyperlinks, TODO items, Tables, Top |
58792 | 1129 @chapter Hyperlinks |
1130 @cindex hyperlinks | |
1131 | |
64517 | 1132 Just like HMTL, Org-mode provides links to other files, Usenet |
58792 | 1133 articles, emails and much more. |
1134 | |
1135 @menu | |
1136 * Links:: URL-like links to the world | |
1137 * Remember:: Org-trees store quick notes | |
1138 @end menu | |
1139 | |
1140 @node Links, Remember, Hyperlinks, Hyperlinks | |
1141 @section Links | |
1142 @cindex links | |
1143 @cindex GNUS links | |
1144 @cindex BBDB links | |
63833 | 1145 @cindex URL links |
1146 @cindex file links | |
58792 | 1147 @cindex VM links |
1148 @cindex RMAIL links | |
1149 @cindex WANDERLUST links | |
1150 @cindex USENET links | |
1151 @cindex SHELL links | |
1152 | |
64517 | 1153 Org-mode supports links to files, websites, Usenet and email messages; |
63362 | 1154 and BBDB database entries. Links are just plain-text URL-like |
1155 locators, optionally enclosed by angular brackets. The following list | |
1156 shows examples for each link type. | |
58792 | 1157 |
1158 @example | |
63362 | 1159 <http://www.astro.uva.nl/~dominik> @r{on the web} |
1160 <file:/home/dominik/images/jupiter.jpg> @r{file, absolute path} | |
1161 <file:papers/last.pdf> @r{file, relative path} | |
1162 <file:~/code/main.c:255> @r{file, with line number} | |
1163 <news:comp.emacs> @r{Usenet link} | |
1164 <mailto:adent@@galaxy.net> @r{Mail link} | |
1165 <vm:folder> @r{VM folder link} | |
1166 <vm:folder#id> @r{VM message link} | |
1167 <vm://myself@@some.where.org/folder#id> @r{VM on remote machine} | |
1168 <wl:folder> @r{WANDERLUST folder link} | |
1169 <wl:folder#id> @r{WANDERLUST message link} | |
1170 <rmail:folder> @r{RMAIL folder link} | |
1171 <rmail:folder#id> @r{RMAIL message link} | |
1172 <gnus:group> @r{GNUS group link} | |
1173 <gnus:group#id> @r{GNUS article link} | |
1174 <bbdb:Richard Stallman> @r{BBDB link} | |
1175 <shell:ls *.org>@footnote{Note that @samp{<} and @samp{>} cannot be part of a link, and therefore of a shell command. If you need redirection, use @@@{ and @@@} instead.} @r{A shell command} | |
58792 | 1176 @end example |
1177 | |
63362 | 1178 A link may contain space characters and is terminated by @samp{>} or by |
1179 the end of a line. In tables, the end of a table field also terminates | |
1180 a link. Angle brackets around a link are not required, but are | |
1181 recommended to avoid problems with punctuation and other text following | |
1182 the link. See also the variable @code{org-allow-space-in-links}. | |
58792 | 1183 |
1184 @cindex storing links | |
1185 @table @kbd | |
1186 @kindex C-c l | |
1187 @item C-c l | |
1188 Store a link to the current location. This is a @emph{global} command | |
1189 which can be used in any buffer to create a link. The link will be | |
1190 stored for later insertion into an Org-mode buffer (see below). For VM, | |
1191 RMAIL, WANDERLUST, GNUS and BBDB buffers, the link will point to the | |
1192 current article/entry. For W3 and W3M buffer, the link goes to the | |
1193 current URL. For any other files, the link will just point to the file. | |
1194 The key binding @kbd{C-c l} is only a suggestion - see | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1195 @ref{Installation and Activation}. |
58792 | 1196 |
1197 @kindex C-c C-l | |
63833 | 1198 @cindex completion, of links |
1199 @cindex completion, of file names | |
58792 | 1200 @item C-c C-l |
1201 Insert a link. This prompts for a link to be inserted into the | |
1202 buffer. You can just type a link, using one of the link type prefixes | |
1203 mentioned in the examples above. Through completion, all links stored | |
1204 during the current session can be accessed. When called with prefix | |
63362 | 1205 arg, you can use file name completion to enter a file link. The link |
1206 will be formatted as given in the variable @code{org-link-format} and | |
1207 inserted into the buffer. Note that you don't have to use this | |
1208 command to insert a link. Links in Org-mode are plain text, and you | |
1209 can type or paste them straight into the buffer. | |
58792 | 1210 |
1211 @cindex inserting links | |
1212 @kindex C-c C-o | |
1213 @item C-c C-o | |
1214 Open link at point. This will launch a web browser for URLs (using | |
1215 @command{browse-url-at-point}), run vm/gnus/bbdb for the corresponding | |
1216 links, execute the command in a shell link, visit text files with | |
1217 Emacs and select a suitable application for non-text files. | |
1218 Classification of files is based on file extension only. See option | |
1219 @code{org-file-apps}. If there is no link at point, the current | |
1220 subtree will be searched for one. If you want to override the default | |
1221 application and visit the file with Emacs, use a @kbd{C-u} prefix. | |
1222 If the cursor is on a time stamp, compiles the agenda for that date. | |
1223 | |
1224 @strong{IMPORTANT}: Be careful not to use any dangerous commands in a | |
1225 shell link. | |
1226 | |
1227 @kindex mouse-2 | |
1228 @item mouse-2 | |
1229 On links, @kbd{mouse-2} will open the link just like @kbd{C-c C-o} would. | |
1230 | |
1231 @kindex mouse-3 | |
1232 @item mouse-3 | |
1233 Like @kbd{mouse-2}, but force file links to be opened with Emacs. | |
1234 @end table | |
1235 | |
1236 @node Remember, , Links, Hyperlinks | |
1237 @section Remember | |
1238 @cindex @file{remember.el} | |
1239 | |
1240 Another way to create org entries with links to other files is through | |
1241 the @emph{Remember} package by John Wiegley. @emph{Remember} lets you | |
1242 store quick notes with little interruption of your work flow. See | |
1243 @uref{http://www.emacswiki.org/cgi-bin/wiki/RememberMode} for more | |
1244 information. The notes produced by @emph{Remember} can be stored in | |
64517 | 1245 different ways, and Org-mode files are a good target. Org-mode allows |
1246 to file away notes either to a default file, or directly to the | |
1247 correct location in your Org-mode outline tree. The following | |
1248 customization@footnote{The two autoload forms are only necessary if | |
1249 @file{org.el} is not part of the Emacs distribution or and XEmacs | |
1250 package.} will tell @emph{Remember} to use org files as target, and to | |
1251 create annotations compatible with Org-mode links. | |
1252 | |
58792 | 1253 @example |
1254 (autoload 'org-remember-annotation "org") | |
1255 (autoload 'org-remember-handler "org") | |
1256 (setq org-directory "~/path/to/my/orgfiles/") | |
1257 (setq org-default-notes-file "~/.notes") | |
1258 (setq remember-annotation-functions '(org-remember-annotation)) | |
1259 (setq remember-handler-functions '(org-remember-handler)) | |
1260 @end example | |
1261 | |
1262 When you compose a note with remember, you have to press @kbd{C-c C-c} | |
1263 to exit remember-mode and to file away the note. The handler first | |
1264 prompts for a target file - if you press @key{RET}, the value of | |
1265 @code{org-default-notes-file} is used. Then the command offers the | |
1266 headings tree of the selected file. You can either immediately press | |
1267 @key{RET} to get the note appended to the file. Or you can use | |
1268 vertical cursor motion (@key{up} and @key{down}) and visibility | |
1269 cycling (@key{TAB}) to find a better place. Pressing @key{RET} or | |
1270 @key{left} or @key{right} leads to the following result. | |
1271 | |
1272 @multitable @columnfractions 0.2 0.1 0.7 | |
1273 @item @b{Cursor position} @tab @b{Key} @tab @b{Note gets inserted} | |
1274 @item buffer-start @tab @key{RET} @tab as level 2 heading at end of file | |
1275 @item on headline @tab @key{RET} @tab as sublevel of the heading at cursor | |
1276 @item @tab @key{left} @tab as same level, before current heading | |
1277 @item @tab @key{right} @tab as same level, after current heading | |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
1278 @item not on headline @tab @key{RET} |
58792 | 1279 @tab at cursor position, level taken from context. |
1280 Or use prefix arg to specify level manually. | |
1281 @end multitable | |
1282 | |
63362 | 1283 So a fast way to store the note is to press @kbd{C-c C-c @key{RET} |
1284 @key{RET}} to append it to the default file. Even shorter would be | |
1285 @kbd{C-u C-c C-c}, which does the same without even showing the tree. | |
1286 But with little extra effort, you can push it directly to the correct | |
1287 location. | |
58792 | 1288 |
1289 Before inserting the text into a tree, the function ensures that the | |
1290 text has a headline, i.e. a first line that starts with a @samp{*}. | |
1291 If not, a headline is constructed from the current date and some | |
1292 additional data. If the variable @code{org-adapt-indentation} is | |
63833 | 1293 non-nil, the entire text is also indented so that it starts in the |
1294 same column as the headline (after the asterisks). | |
58792 | 1295 |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1296 @node TODO items, Timestamps, Hyperlinks, Top |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1297 @chapter TODO items |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1298 @cindex TODO items |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1299 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1300 Org-mode does not maintain TODO lists as a separate document. TODO |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1301 items are an integral part of the notes file, because TODO items |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1302 usually come up while taking notes! With Org-mode, you simply mark |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1303 any entry in a tree as being a TODO item. In this way, the |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1304 information is not duplicated, and the entire context from which the |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1305 item emerged is always present when you check. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1306 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1307 Of course, this technique causes TODO items to be scattered throughout |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1308 your file. Org-mode provides methods to give you an overview over all |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1309 things you have to do. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1310 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1311 @menu |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1312 * TODO basics:: Marking and displaying TODO entries |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1313 * TODO extensions:: Workflow and assignments |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1314 * Priorities:: Some things are more important than others |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1315 @end menu |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1316 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1317 @node TODO basics, TODO extensions, TODO items, TODO items |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1318 @section Basic TODO functionality |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1319 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1320 Any headline can become a TODO item by starting it with the word TODO, |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1321 for example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1322 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1323 @example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1324 *** TODO Write letter to Sam Fortune |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1325 @end example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1326 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1327 @noindent |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1328 The most important commands to work with TODO entries are: |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1329 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1330 @table @kbd |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1331 @kindex C-c C-t |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1332 @item C-c C-t |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1333 Rotate the TODO state of the current item between |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1334 @example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1335 ,-> (unmarked) -> TODO -> DONE --. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1336 '--------------------------------' |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1337 @end example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1338 The same rotation can also be done ``remotely'' from the timeline and |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1339 agenda buffers with the @kbd{t} command key (@pxref{Agenda commands}). |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1340 @kindex C-c C-v |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1341 @cindex sparse tree, for TODO |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1342 @item C-c C-v |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1343 View TODO items in a @emph{sparse tree} (@pxref{Sparse trees}). Folds |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1344 the entire buffer, but shows all TODO items and the headings hierarchy |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1345 above them. With prefix arg, show also the DONE entries. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1346 @item C-u C-c a |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1347 A @kbd{C-u} argument to the @code{org-agenda command} (@pxref{Agenda}) |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1348 collects all unfinished TODO items into a single place. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1349 @end table |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1350 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1351 @node TODO extensions, Priorities, TODO basics, TODO items |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1352 @section Extended use of TODO keywords |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1353 @cindex extended TODO keywords |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1354 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1355 The default implementation of TODO entries is just two states: TODO |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1356 and DONE. You can, however, use the TODO feature for more |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1357 complicated things by configuring the variables |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1358 @code{org-todo-keywords} and @code{org-todo-interpretation}. Using |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1359 special setup, you can even use TODO keywords in different ways in |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1360 different org files. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1361 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1362 @menu |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1363 * Workflow states:: From TODO to DONE in steps |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1364 * TODO types:: I do this, Fred the rest |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1365 * Per file keywords:: Different files, different requirements |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1366 @end menu |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1367 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1368 @node Workflow states, TODO types, TODO extensions, TODO extensions |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1369 @subsection TODO keywords as workflow states |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1370 @cindex TODO workflow |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1371 @cindex workflow states as TODO keywords |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1372 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1373 You can use TODO keywords to indicate different states in the process |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1374 of working on an item, for example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1375 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1376 @lisp |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1377 (setq org-todo-keywords '("TODO" "FEEDBACK" "VERIFY" "DONE") |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1378 org-todo-interpretation 'sequence) |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1379 @end lisp |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1380 |
63833 | 1381 @cindex completion, of TODO keywords |
65656 | 1382 Changing these variables becomes only effective in a new Emacs session. |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1383 With this setup, the command @kbd{C-c C-t} will cycle an entry from |
65656 | 1384 TODO to FEEDBACK, then to VERIFY, and finally to DONE. You may also |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1385 use a prefix argument to quickly select a specific state. For example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1386 @kbd{C-3 C-c C-t} will change the state immediately to VERIFY. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1387 If you define many keywords, you can use in-buffer completion (see |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1388 @ref{Completion}) to insert these words into the buffer. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1389 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1390 @node TODO types, Per file keywords, Workflow states, TODO extensions |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1391 @subsection TODO keywords as types |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1392 @cindex TODO types |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1393 @cindex names as TODO keywords |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1394 @cindex types as TODO keywords |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1395 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1396 The second possibility is to use TODO keywords to indicate different |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1397 types of action items. For example, you might want to indicate that |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1398 items are for ``work'' or ``home''. Or, when you work with several |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1399 people on a single project, you might want to assign action items |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1400 directly to persons, by using their names as TODO keywords. This |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1401 would be set up like this: |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1402 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1403 @lisp |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1404 (setq org-todo-keywords '("Fred" "Sara" "Lucy" "Mike" "DONE") |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1405 org-todo-interpretation 'type) |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1406 @end lisp |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1407 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1408 In this case, different keywords do not indicate a sequence, but |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1409 rather different types. So it is normally not useful to change from |
63833 | 1410 one type to another. Therefore, in this case the behavior of the |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1411 command @kbd{C-c C-t} is changed slightly@footnote{This is also true |
63833 | 1412 for the @kbd{t} command in the timeline and agenda buffers.}. When |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1413 used several times in succession, it will still cycle through all |
65656 | 1414 names. But when you return to the item after some time and |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1415 execute @kbd{C-c C-t} again, it will switch from each name directly to |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1416 DONE. Use prefix arguments or completion to quickly select a specific |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1417 name. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1418 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1419 @node Per file keywords, , TODO types, TODO extensions |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1420 @subsection Setting up TODO keywords for individual files |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1421 @cindex keyword options |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1422 @cindex per file keywords |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1423 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1424 It can be very useful to use different aspects of the TODO mechanism |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1425 in different files, which is not possible with the global settings |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1426 described above. For file-local settings, you need to add special |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1427 lines to the file which set the keywords and interpretation for that |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1428 file only. For example, to set one of the two examples discussed |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1429 above, you need one of the following lines, starting in column zero |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1430 anywhere in the file: |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1431 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1432 @example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1433 #+SEQ_TODO: TODO FEEDBACK VERIFY DONE |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1434 #+TYP_TODO: Fred Sara Lucy Mike DONE |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1435 @end example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1436 |
63833 | 1437 @cindex Completion, of option keywords |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1438 @kindex M-@key{TAB} |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1439 @noindent To make sure you are using the correct keyword, type |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1440 @samp{#+} into the buffer and then use @kbd{M-@key{TAB}} completion. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1441 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1442 @cindex DONE, final TODO keyword |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1443 Remember that the last keyword must always mean that the item is DONE |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1444 (you may use a different word, though). Also note that in each file, |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1445 only one of the two aspects of TODO keywords can be used. After |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1446 changing one of these lines, use @kbd{C-c C-c} with the cursor still |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1447 in the line to make the changes known to Org-mode@footnote{Org-mode |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1448 parses these lines only when Org-mode is activated after visiting a |
65656 | 1449 file. @kbd{C-c C-c} with the cursor in a line starting with @samp{#+} |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1450 is simply restarting Org-mode, making sure that these changes will be |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
1451 respected.}. |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1452 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1453 If you want to use very many keywords, for example when working with a |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1454 large group of people, you may split the names over several lines: |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1455 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1456 @example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1457 #+TYP_TODO: Fred Sara Lucy Mike |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1458 #+TYP_TODO: Luis George Jules Jessica |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1459 #+TYP_TODO: Kim Arnold Peter |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1460 #+TYP_TODO: DONE |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1461 @end example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1462 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1463 @node Priorities, , TODO extensions, TODO items |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1464 @section Priorities |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1465 @cindex priorities |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1466 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1467 If you use Org-mode extensively to organize your work, you may end up |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1468 with a number of TODO entries so large that you'd like to prioritize |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1469 them. This can be done by placing a @emph{priority cookie} into the |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1470 headline, like this |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1471 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1472 @example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1473 *** TODO [#A] Write letter to Sam Fortune |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1474 @end example |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1475 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1476 @noindent |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1477 With its standard setup, Org-mode supports priorities @samp{A}, |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1478 @samp{B}, and @samp{C}. @samp{A} is the highest priority. An entry |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1479 without a cookie is treated as priority @samp{B}. Priorities make a |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1480 difference only in the agenda (@pxref{Agenda}). |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1481 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1482 @table @kbd |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1483 @kindex @kbd{C-c ,} |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1484 @item @kbd{C-c ,} |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1485 Set the priority of the current item. The command prompts for a |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1486 priority character @samp{A}, @samp{B} or @samp{C}. When you press |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1487 @key{SPC} instead, the priority cookie is removed from the headline. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1488 The priorities can also be changed ``remotely'' from the timeline and |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1489 agenda buffer with the @kbd{,} command (@pxref{Agenda commands}). |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1490 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1491 @kindex S-@key{up} |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1492 @kindex S-@key{down} |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1493 @item S-@key{up} |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1494 @itemx S-@key{down} |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1495 Increase/decrease priority of current item. Note that these keys are |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1496 also used to modify time stamps (@pxref{Creating timestamps}). |
63833 | 1497 Furthermore, these keys are also used by CUA-mode |
63362 | 1498 (@pxref{Interaction}). |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1499 @end table |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1500 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1501 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1502 |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1503 @node Timestamps, Timeline and Agenda, TODO items, Top |
58792 | 1504 @chapter Timestamps |
1505 | |
1506 Items can be labeled with timestamps to make them useful for project | |
1507 planning. | |
1508 | |
1509 @menu | |
1510 * Time stamps:: Assigning a time to a tree entry | |
1511 * Creating timestamps:: Commands which insert timestamps | |
1512 @end menu | |
1513 | |
1514 | |
1515 @node Time stamps, Creating timestamps, Timestamps, Timestamps | |
1516 @section Time stamps, deadlines and scheduling | |
1517 @cindex time stamps | |
1518 @cindex deadlines | |
1519 @cindex scheduling | |
1520 | |
1521 A time stamp is a specification of a date (possibly with time) in a | |
1522 special format, either @samp{<2003-09-16 Tue>} or @samp{<2003-09-16 | |
1523 Tue 09:39>}. A time stamp can appear anywhere in the headline or body | |
1524 of an org-tree entry. Its presence allows to show entries on specific | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1525 dates in the agenda (@pxref{Agenda}). We distinguish: |
58792 | 1526 |
1527 @table @var | |
1528 @cindex timestamp | |
1529 @item TIMESTAMP | |
1530 A simple time stamp just assigns a date/time to an item. In the | |
1531 timeline and agenda displays, the headline of the entry will be shown | |
1532 exactly on that date. | |
1533 | |
1534 @item TIMERANGE | |
1535 @cindex timerange | |
1536 Two time stamps connected by @samp{--} denote a time range. The | |
1537 headline will be shown on the first and last day of the range, and on | |
1538 any dates that are displayed and fall in the range. Here is an | |
1539 example: | |
1540 | |
1541 @example | |
1542 ** Meeting in Amsterdam | |
1543 <2004-08-23 Mon>--<2004-08-26 Thu> | |
1544 @end example | |
1545 | |
1546 @item DEADLINE | |
63833 | 1547 @cindex DEADLINE keyword |
58792 | 1548 If a time stamp is preceded by the word @samp{DEADLINE:}, the task |
1549 (most likely a TODO item) is supposed to be finished on that date, and | |
63833 | 1550 it will be listed then. In addition, the compilation for @emph{today} |
1551 will carry a warning about the approaching or missed deadline, | |
1552 starting @code{org-deadline-warning-days} before the due date, and | |
1553 continuing until the entry is marked DONE. An example: | |
58792 | 1554 |
1555 @example | |
1556 *** TODO write article about the Earth for the Guide | |
63833 | 1557 The editor in charge is <bbdb:Ford Prefect> |
58792 | 1558 DEADLINE: <2004-02-29 Sun> |
1559 @end example | |
1560 | |
1561 @item SCHEDULED | |
65244 | 1562 @cindex SCHEDULED keyword |
58792 | 1563 If a time stamp is preceded by the word @samp{SCHEDULED:}, it means |
1564 you are planning to start working on that task on the given date. The | |
1565 headline will be listed under the given date. In addition, a reminder | |
1566 that the scheduled date has passed will be present in the compilation | |
64069 | 1567 for @emph{today}, until the entry is marked DONE. I.e., the |
58792 | 1568 task will automatically be forwarded. |
1569 @end table | |
1570 | |
1571 @node Creating timestamps, , Time stamps, Timestamps | |
1572 @section Creating timestamps | |
1573 @cindex creating timestamps | |
1574 | |
1575 For Org-mode to recognize time stamps, they need to be in the specific | |
1576 format. All commands listed below produce time stamps in the correct | |
1577 format. | |
1578 | |
1579 @table @kbd | |
1580 @kindex C-c . | |
1581 @item C-c . | |
1582 Prompt for a date and insert a corresponding time stamp. When the | |
1583 cursor is at a previously used time stamp, it is updated to NOW. When | |
1584 this command is used twice in succession, a time range is inserted. | |
1585 | |
1586 @kindex C-u C-c . | |
1587 @item C-u C-c . | |
1588 Like @kbd{C-c .}, but use the alternative format which contains date | |
1589 and time. | |
1590 | |
65656 | 1591 @kindex C-c ! |
1592 @item C-c ! | |
1593 Like @kbd{C-c .}, but insert an inactive time stamp not triggering the | |
1594 agenda. | |
1595 | |
58792 | 1596 @kindex C-c < |
1597 @item C-c < | |
1598 Insert a time stamp corresponding to the cursor date in the Calendar. | |
1599 | |
1600 @kindex C-c > | |
1601 @item C-c > | |
1602 Access the Emacs calendar for the current date. If there is a | |
1603 timestamp in the current line, goto the corresponding date | |
1604 instead. | |
1605 | |
1606 @kindex C-c C-o | |
1607 @item C-c C-o | |
1608 Access the agenda for the date given by the time stamp at point | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1609 (@pxref{Agenda}). |
58792 | 1610 |
1611 @kindex C-c C-d | |
1612 @item C-c C-d | |
1613 Insert @samp{DEADLINE} keyword along with a stamp. | |
1614 @kindex C-c C-w | |
1615 @cindex sparse tree, for deadlines | |
1616 @item C-c C-w | |
1617 Create a sparse tree with all deadlines that are either past-due, or | |
1618 which will become due within @code{org-deadline-warning-days}. | |
1619 With @kbd{C-u} prefix, show all deadlines in the file. With a numeric | |
1620 prefix, check that many days. For example, @kbd{C-1 C-c C-w} shows | |
1621 all deadlines due tomorrow. | |
1622 | |
1623 @kindex C-c C-s | |
1624 @item C-c C-s | |
1625 Insert @samp{SCHEDULED} keyword along with a stamp. | |
1626 | |
1627 @kindex S-@key{left} | |
1628 @kindex S-@key{right} | |
1629 @item S-@key{left} | |
1630 @itemx S-@key{right} | |
63362 | 1631 Change date at cursor by one day. These key bindings conflict with |
1632 CUA-mode (@pxref{Interaction}). | |
58792 | 1633 |
1634 @kindex S-@key{up} | |
1635 @kindex S-@key{down} | |
1636 @item S-@key{up} | |
1637 @itemx S-@key{down} | |
1638 Change the item under the cursor in a timestamp. The cursor can be on | |
1639 a year, month, day, hour or minute. Note that if the cursor is not at | |
63362 | 1640 a time stamp, these same keys modify the priority of an item. |
63833 | 1641 (@pxref{Priorities}). The key bindings also conflict with CUA-mode |
63362 | 1642 (@pxref{Interaction}). |
1643 | |
58792 | 1644 |
1645 @kindex C-c C-y | |
1646 @cindex evaluate time range | |
1647 @item C-c C-y | |
1648 Evaluate a time range by computing the difference between start and | |
1649 end. With prefix arg, insert result after the time range (in a table: | |
1650 into the following column). | |
1651 @end table | |
1652 | |
1653 @cindex date, reading in minibuffer | |
1654 @cindex time, reading in minibuffer | |
1655 @cindex calendar, for selecting date | |
63833 | 1656 When Org-mode prompts for a date/time, the function reading your input |
1657 will replace anything you choose not to specify with the current date | |
1658 and time. For details, see the documentation string of | |
58792 | 1659 @command{org-read-date}. Also, a calender will pop up to allow |
1660 selecting a date. The calendar can be fully controlled from the | |
1661 minibuffer, and a date can be selected with the following commands: | |
1662 | |
1663 @table @kbd | |
1664 @kindex < | |
1665 @item < | |
1666 Scroll calendar backwards by one month. | |
1667 @kindex > | |
1668 @item > | |
1669 Scroll calendar forwards by one month. | |
1670 @kindex mouse-1 | |
1671 @item mouse-1 | |
1672 Select date by clicking on it. | |
1673 @kindex S-@key{right} | |
1674 @item S-@key{right} | |
1675 One day forward. | |
1676 @kindex S-@key{left} | |
1677 @item S-@key{left} | |
1678 One day back. | |
1679 @kindex S-@key{down} | |
1680 @item S-@key{down} | |
1681 One week forward. | |
1682 @kindex S-@key{up} | |
1683 @item S-@key{up} | |
1684 One week back. | |
1685 @kindex M-S-@key{right} | |
1686 @item M-S-@key{right} | |
1687 One month forward. | |
1688 @kindex M-S-@key{left} | |
1689 @item M-S-@key{left} | |
1690 One month back. | |
1691 @kindex @key{RET} | |
1692 @item @key{RET} | |
1693 Choose date in calendar (only if nothing typed into minibuffer). | |
1694 @end table | |
1695 | |
1696 @node Timeline and Agenda, Exporting, Timestamps, Top | |
1697 @chapter Timeline and Agenda | |
1698 @cindex agenda | |
1699 | |
1700 We have already described three commands to filter important | |
1701 information in an org file into a sparse tree (@pxref{Sparse trees}): | |
1702 | |
1703 @cindex sparse trees | |
1704 @itemize @bullet | |
1705 @item | |
1706 The TODO tree, (@kbd{C-c C-v}), see @ref{TODO items}. | |
1707 @item | |
1708 The occur tree @kbd{C-c /}, see @ref{TODO items}. | |
1709 @item | |
1710 Checking upcoming deadlines with @kbd{C-c C-w}, see @ref{Creating | |
1711 timestamps}. | |
1712 @end itemize | |
1713 @noindent | |
1714 | |
1715 Instead of using the sparse trees, Org-mode can also collect and | |
1716 time-sort the important items into a separate buffer, which we call | |
1717 the @emph{timeline} of the org file. It can also collect information | |
1718 from a @emph{list of files} and in this way provide an @emph{agenda} | |
1719 which covers all of your current projects, action items and | |
1720 appointments. | |
1721 | |
1722 @menu | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1723 * Timeline:: Time-sorted view for single file |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1724 * Agenda:: Your weekly planner |
58792 | 1725 * Agenda commands:: Remote editing of org trees |
1726 * Calendar/Diary integration:: Integrating Anniversaries and more | |
1727 @end menu | |
1728 | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1729 @node Timeline, Agenda, Timeline and Agenda, Timeline and Agenda |
58792 | 1730 @section Timeline for a single file |
1731 @cindex single file summary | |
1732 @cindex agenda, for single file | |
1733 @cindex timeline, single file | |
1734 @cindex time-sorted view | |
1735 | |
1736 The timeline shows all time-stamped items in a single Org-mode file, | |
1737 in @emph{time-sorted view}. The main purpose of this command is to | |
1738 give an overview over events in a project. | |
1739 | |
1740 @table @kbd | |
1741 @kindex C-c C-r | |
1742 @item C-c C-r | |
1743 Show a time-sorted view of the org file, with all time-stamped items | |
1744 of today or later. When called with a @kbd{C-u} prefix, past dates | |
1745 will be included as well. When called with two @kbd{C-u C-u} | |
1746 prefixes, all unfinished TODO entries (scheduled or not) are also | |
1747 listed under the current date. | |
1748 @end table | |
1749 @noindent | |
1750 | |
1751 The timeline is shown in a temporary buffer @file{*Org Agenda*}. The | |
1752 commands available in the Agenda buffer are listed in @ref{Agenda | |
1753 commands}. | |
1754 | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1755 @node Agenda, Agenda commands, Timeline, Timeline and Agenda |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1756 @section Agenda |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1757 @cindex agenda |
58792 | 1758 |
1759 An agenda can be compiled from one or more org files. The main | |
62548 | 1760 purpose of this command is to act like a paper agenda, showing you all |
1761 the tasks for the current day or week. | |
58792 | 1762 |
1763 The Org-mode files to be processed in order to generate the agenda are | |
1764 listed in the variable @code{org-agenda-files}. You can customize | |
1765 this variable, but the easiest way to maintain it is through the | |
1766 following commands | |
1767 | |
1768 @cindex files, adding to agenda list | |
1769 @table @kbd | |
1770 @kindex C-c [ | |
1771 @item C-c [ | |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
1772 Add current file to the list of agenda files. The file is added to |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
1773 the front of the list. If it was already in the list, it is moved to |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
1774 the front. With prefix arg, file is added/moved to the end. |
58792 | 1775 @kindex C-c ] |
1776 @item C-c ] | |
1777 Remove current file from the list of agenda files. | |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
1778 @kindex C-, |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
1779 @item C-, |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
1780 Cycle through agenda file list. |
58792 | 1781 @end table |
1782 @noindent | |
1783 The Org menu contains the list of all files and can be used to quickly | |
1784 visit any of them. | |
1785 | |
1786 The global command @command{org-agenda} compiles the agenda from all | |
1787 listed files. | |
1788 | |
1789 @table @kbd | |
1790 @cindex org-agenda, command | |
1791 @kindex C-c a | |
1792 @item C-c a | |
1793 Compile an agenda for the current week from a list of org files. The | |
1794 agenda shows the entries for each day. With a @kbd{C-u} prefix (or | |
1795 when the variable @code{org-agenda-include-all-todo} is @code{t}), all | |
1796 unfinished TODO items (also those without a date) are also listed at | |
1797 the beginning of the buffer, before the first date.@* | |
1798 The key binding @kbd{C-c a} is only a suggestion - see | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1799 @ref{Installation and Activation}. |
58792 | 1800 @end table |
1801 | |
1802 The commands available in the Agenda buffer are listed in | |
1803 @ref{Agenda commands}. | |
1804 | |
1805 @subsection Categories | |
1806 | |
1807 @cindex category | |
1808 In the agenda buffer, each entry is preceded by a @emph{category}, | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1809 which is derived from the file name. The category can also be set |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1810 with a special line anywhere in the buffer, looking like this: |
58792 | 1811 @example |
62548 | 1812 #+CATEGORY: Thesis |
58792 | 1813 @end example |
1814 @noindent | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1815 After changing this line, press @kbd{C-c C-c} with the cursor still in |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1816 the line, to make the changes known to org-mode. Otherwise, the |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1817 change will only be active the next time you visit this file with |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1818 Emacs. |
58792 | 1819 |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
1820 The display in the agenda buffer looks best if the category is not |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1821 longer than 10 characters. |
58792 | 1822 |
63833 | 1823 @subsection Time-of-Day Specifications |
62548 | 1824 |
64069 | 1825 Org-mode checks each agenda item for a time-of-day specification. The |
63833 | 1826 time can be part of the time stamp that triggered inclusion into the |
1827 agenda, for example as in @w{@samp{<2005-05-10 Tue 19:00>}}. Time | |
1828 ranges can be specified with two time stamps, like | |
62548 | 1829 @c |
1830 @w{@samp{<2005-05-10 Tue 20:30>--<2005-05-10 Tue 22:15>}}. | |
1831 | |
1832 In the headline of the entry itself, a time(range) may also appear as | |
1833 plain text (like @samp{12:45} or a @samp{8:30-1pm}. If the agenda | |
1834 integrates the Emacs diary (@pxref{Calendar/Diary integration}), time | |
1835 specifications in diary entries are recognized as well. | |
1836 | |
1837 For agenda display, Org-mode extracts the time and displays it in a | |
1838 standard 24 hour format as part of the prefix. The example times in | |
1839 the previous paragraphs would end up in the agenda like this: | |
1840 | |
1841 @example | |
1842 8:30-13:00 Arthur Dent lies in front of the bulldozer | |
1843 12:45...... Ford Prefect arrives and takes Arthur to the pub | |
1844 19:00...... The Vogon reads his poem | |
1845 20:30-22:15 Marwin escorts the Hitchhikers to the bridge | |
1846 @end example | |
1847 | |
1848 If the agenda is in single-day mode, or for the display of today, the | |
1849 timed entries are embedded in a time grid, like | |
1850 | |
1851 @example | |
1852 8:00...... ------------------ | |
1853 8:30-13:00 Arthur Dent lies in front of the bulldozer | |
1854 10:00...... ------------------ | |
1855 12:00...... ------------------ | |
1856 12:45...... Ford Prefect arrives and takes Arthur to the pub | |
1857 14:00...... ------------------ | |
1858 16:00...... ------------------ | |
1859 18:00...... ------------------ | |
1860 19:00...... The Vogon reads his poem | |
1861 20:00...... ------------------ | |
1862 20:30-22:15 Marwin escorts the Hitchhikers to the bridge | |
1863 @end example | |
1864 | |
1865 The time grid can be turned on and off with the variable | |
1866 @code{org-agenda-use-time-grid}, and can be configured with | |
1867 @code{org-agenda-time-grid}. | |
1868 | |
1869 | |
58792 | 1870 @subsection Sorting of agenda items |
1871 @cindex sorting, of agenda items | |
1872 @cindex priorities, of agenda items | |
1873 The entries for each day are sorted. The default order is to first | |
1874 collect all items containing an explicit time-of-day specification. | |
1875 These entries will be shown at the beginning of the list, as a | |
1876 @emph{schedule} for the day. After that, items remain grouped in | |
1877 categories, in the sequence given by @code{org-agenda-files}. Within | |
1878 each category, items are sorted by priority (@pxref{Priorities}). | |
1879 | |
1880 The priority is a numerical quantity composed of the base priority | |
1881 (2000 for priority @samp{A}, 1000 for @samp{B}, and 0 for @samp{C}), | |
1882 plus additional increments for overdue scheduled or deadline items. | |
1883 | |
1884 Sorting can be customized using the variable | |
1885 @code{org-agenda-sorting-strategy}. | |
1886 | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1887 @node Agenda commands, Calendar/Diary integration, Agenda, Timeline and Agenda |
58792 | 1888 @section Commands in the agenda buffer |
1889 | |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
1890 Entries in the agenda buffer are linked back to the org file or diary |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
1891 file where they originate. You are not allowed to edit the agenda |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
1892 buffer itself, but commands are provided to show and jump to the |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
1893 original entry location, and to edit the org-files ``remotely'' from |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
1894 the agenda buffer. In this way, all information is stored only once, |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
1895 and you don't risk that your agenda and note files diverge. |
58792 | 1896 |
1897 Some commands can be executed with mouse clicks on agenda lines. For | |
1898 the other commands, the cursor needs to be in the desired line. Most | |
1899 commands are available for both timelines and the agenda. The | |
1900 exceptions are marked. | |
1901 | |
1902 @table @kbd | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1903 @tsubheading{Motion} |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1904 @kindex n |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1905 @item n |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1906 Next line (same as @key{up}). |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1907 @kindex p |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1908 @item p |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1909 Previous line (same as @key{down}). |
58792 | 1910 @tsubheading{View/GoTo org file} |
1911 @kindex mouse-3 | |
1912 @kindex @key{SPC} | |
1913 @item mouse-3 | |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
1914 @itemx @key{SPC} |
58792 | 1915 Display the original location of the item in another window. |
1916 | |
1917 @kindex l | |
1918 @item l | |
1919 Display original location and recenter that window. | |
1920 | |
1921 @kindex mouse-2 | |
1922 @kindex @key{TAB} | |
1923 @item mouse-2 | |
1924 @itemx @key{TAB} | |
1925 Go to the original location of the item in another window. | |
1926 | |
1927 @kindex @key{RET} | |
1928 @itemx @key{RET} | |
1929 Go to the original location of the item and delete other windows. | |
1930 | |
1931 @kindex f | |
1932 @item f | |
1933 Toggle follow mode. In follow mode, as you move the cursor through | |
1934 the agenda buffer, the other window always shows the corresponding | |
1935 location in the org file. | |
1936 | |
1937 @tsubheading{Change display} | |
1938 @kindex o | |
1939 @item o | |
1940 Delete other windows. | |
1941 | |
1942 @kindex w | |
1943 @item w | |
63833 | 1944 Switch to weekly view (7 days displayed together) |
58792 | 1945 |
1946 @kindex d | |
1947 @item d | |
63833 | 1948 Switch to daily view (just one day displayed) |
1949 | |
1950 @kindex D | |
1951 @item D | |
58792 | 1952 Toggle the inclusion of diary entries. See @ref{Calendar/Diary integration}. |
1953 | |
62548 | 1954 @kindex g |
1955 @item g | |
1956 Toggle the time grid on and off. See also the variables | |
1957 @code{org-agenda-use-time-grid} and @code{org-agenda-time-grid}. | |
1958 | |
58792 | 1959 @kindex r |
1960 @item r | |
1961 Recreate the agenda buffer, for example to reflect the changes | |
1962 after modification of the time stamps of items with S-@key{left} and | |
1963 S-@key{right}. | |
1964 | |
1965 @kindex @key{right} | |
1966 @item @key{right} | |
1967 Display the following @code{org-agenda-ndays} days. For example, if | |
1968 the display covers a week, switch to the following week. With prefix | |
1969 arg, go forward that many times @code{org-agenda-ndays} days. Not | |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
1970 available in timelines. |
58792 | 1971 |
1972 @kindex @key{left} | |
1973 @item @key{left} | |
1974 Display the previous dates. Not available in timelines. | |
1975 | |
1976 @kindex . | |
1977 @item . | |
1978 Goto today. | |
1979 | |
1980 @tsubheading{Remote editing} | |
1981 | |
1982 @item 0-9 | |
1983 Digit argument. | |
1984 | |
1985 @kindex t | |
1986 @item t | |
1987 Change the TODO state of the item, both in the agenda and in the | |
1988 original org file. | |
1989 | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1990 @kindex , |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
1991 @item , |
58792 | 1992 Set the priority for the current item. Org-mode prompts for the |
1993 priority character. If you reply with @key{SPC}, the priority cookie | |
1994 is removed from the entry. | |
1995 | |
1996 @kindex P | |
1997 @item p | |
1998 Display weighted priority of current item. | |
1999 | |
2000 @kindex + | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2001 @kindex S-@key{up} |
58792 | 2002 @item + |
63833 | 2003 @itemx S-@key{up} |
58792 | 2004 Increase the priority of the current item. The priority is changed in |
2005 the original buffer, but the agenda is not resorted. Use the @kbd{r} | |
2006 key for this. | |
2007 | |
2008 @kindex - | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2009 @kindex S-@key{down} |
58792 | 2010 @item - |
63833 | 2011 @itemx S-@key{down} |
58792 | 2012 Decrease the priority of the current item. |
2013 | |
2014 @kindex S-@key{right} | |
2015 @item S-@key{right} | |
2016 Change the time stamp associated with the current line by one day into | |
2017 the future. With prefix argument, change it by that many days. For | |
2018 example, @kbd{3 6 5 S-@key{right}} will change it by a year. The | |
2019 stamp is changed in the original org file, but the change is not | |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
2020 directly reflected in the agenda buffer. Use the |
58792 | 2021 @kbd{r} key to update the buffer. |
2022 | |
2023 @kindex S-@key{left} | |
2024 @item S-@key{left} | |
2025 Change the time stamp associated with the current line by one day | |
2026 into the past. | |
2027 | |
2028 @kindex > | |
2029 @item > | |
2030 Change the time stamp associated with the current line to today. | |
2031 The key @kbd{>} has been chosen, because it is the same as @kbd{S-.} | |
2032 on my keyboard. | |
2033 | |
2034 @cindex diary entries, creating from agenda | |
2035 @kindex i | |
2036 @item i | |
2037 Insert a new entry into the diary. Prompts for the type of entry | |
2038 (day, weekly, monthly, yearly, anniversary, cyclic) and creates a new | |
2039 entry in the diary, just like @kbd{i d} etc. would do in the calendar. | |
2040 The date is taken from the cursor position. | |
2041 | |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2042 @tsubheading{Calendar commands} |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2043 @kindex c |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2044 @item c |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2045 Open the Emacs calendar and move to the date at the agenda cursor. |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2046 |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2047 @item c |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2048 When in the calendar, compute and show the Org-mode agenda for the |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2049 date at the cursor. |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2050 |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2051 @kindex M |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2052 @item M |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2053 Show the phases of the moon for three month around current date. |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2054 |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2055 @kindex S |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2056 @item S |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2057 Show sunrise and sunset times. The geographical location must be set |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2058 with calendar variables, see documentation of the Emacs calendar. |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2059 |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2060 @kindex C |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2061 @item C |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2062 Convert the date at cursor into many other cultural and historic |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2063 calendars. |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2064 |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2065 @kindex H |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2066 @item H |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2067 Show holidays for three month around the cursor date. |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2068 |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2069 @kindex C-c C-x C-c |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2070 @item C-c C-x C-c |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2071 Export a single iCalendar file containing entries from all agenda files. |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2072 Not available in timelines. |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2073 |
58792 | 2074 @tsubheading{Quit and Exit} |
2075 @kindex q | |
2076 @item q | |
2077 Quit Agenda, remove the agenda buffer. | |
2078 | |
2079 @kindex x | |
2080 @cindex agenda files, removing buffers | |
2081 @item x | |
2082 Exit agenda, remove the agenda buffer and all buffers loaded by Emacs | |
2083 for the compilation of the agenda. Buffers created by the user to | |
2084 visit org files will not be removed. | |
2085 | |
2086 @end table | |
2087 | |
2088 @node Calendar/Diary integration, , Agenda commands, Timeline and Agenda | |
2089 @section Calendar/Diary integration | |
2090 @cindex calendar integration | |
2091 @cindex diary integration | |
2092 | |
2093 Emacs contains the calendar and diary by Edward M. Reingold. The | |
2094 calendar displays a three-month calendar with holidays from different | |
2095 countries and cultures. The diary allows to keep track of | |
2096 anniversaries, lunar phases, sunrise/set, recurrent appointments | |
2097 (weekly, monthly) and more. In this way, it is quite complementary to | |
2098 Org-mode. It can be very useful to combine output from Org-mode with | |
2099 the diary. | |
2100 | |
2101 The interaction between Org-mode and diary works both ways: You can | |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2102 list entries from the diary in the Org-mode agenda, from which many |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2103 calendar and diary commands are directly accessible. Or you can |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2104 display entries from the org agenda in the Emacs diary. |
58792 | 2105 |
2106 @menu | |
2107 * Diary to agenda:: Agenda incorporates the diary | |
2108 * Agenda to diary:: Diary incorporates the agenda | |
2109 @end menu | |
2110 | |
2111 @node Diary to agenda, Agenda to diary, Calendar/Diary integration, Calendar/Diary integration | |
2112 @subsection Including the diary into the agenda | |
2113 @cindex diary to agenda | |
2114 | |
2115 In order to include entries from the Emacs diary into Org-mode's | |
2116 agenda, you only need to customize the variable | |
2117 | |
2118 @lisp | |
2119 (setq org-agenda-include-diary t) | |
2120 @end lisp | |
2121 @noindent | |
2122 | |
61136
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2123 @noindent After that, everything will happen automatically. All diary |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2124 entries including holidays, anniversaries etc will be included in the |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2125 agenda buffer created by Org-mode. @key{SPC}, @key{TAB}, and |
003dd96023ff
updated to org-mode version 3.05
Carsten Dominik <dominik@science.uva.nl>
parents:
59542
diff
changeset
|
2126 @key{RET} can be used from the agenda buffer to jump to the diary |
63833 | 2127 file, in order to edit existing diary entries. The @kbd{i} command to |
2128 insert new entries for the current date works in the agenda buffer, as | |
2129 well as the commands @kbd{S}, @kbd{M}, and @kbd{C} to display | |
2130 Sunrise/Sunset times, show lunar phases and to convert to other | |
2131 calendars, respectively. @kbd{c} can be used to switch back and forth | |
2132 between calendar and agenda. | |
58792 | 2133 |
2134 @node Agenda to diary, , Diary to agenda, Calendar/Diary integration | |
2135 @subsection Including the agenda into the diary | |
2136 | |
2137 If you prefer to use the Emacs diary as your main instrument and if | |
2138 you wish to include the Org-mode agenda into it, the following steps | |
2139 are necessary: Autoload the function @command{org-diary} as shown | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2140 above under @ref{Installation and Activation}. You also need to use |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2141 @emph{fancy diary display} by setting in @file{.emacs}: |
58792 | 2142 |
2143 @lisp | |
2144 (add-hook 'diary-display-hook 'fancy-diary-display) | |
2145 @end lisp | |
2146 | |
2147 Then include the following line into your @file{~/diary} file, in | |
2148 order to get the entries from all files listed in the variable | |
2149 @code{org-agenda-files}: | |
2150 | |
2151 @example | |
2152 &%%(org-diary) | |
2153 @end example | |
2154 @noindent | |
2155 You may also select specific files with | |
2156 | |
2157 @example | |
2158 &%%(org-diary) ~/path/to/some/org-file.org | |
2159 &%%(org-diary) ~/path/to/another/org-file.org | |
2160 @end example | |
2161 | |
2162 If you now launch the calendar and press @kbd{d} to display a diary, | |
2163 the headlines of entries containing a timestamp, date range, schedule, | |
2164 or deadline referring to the selected date will be listed. Just like | |
2165 in Org-mode's agenda view, the diary for @emph{today} contains | |
2166 additional entries for overdue deadlines and scheduled items. See | |
2167 also the documentation of the @command{org-diary} function. | |
2168 | |
2169 @node Exporting, Miscellaneous, Timeline and Agenda, Top | |
2170 @chapter Exporting | |
2171 @cindex exporting | |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2172 |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2173 For printing and sharing of notes, Org-mode documents can be exported |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2174 as ASCII or HTML files. To incorporate entries with associated times |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2175 like deadlines or appointments into a desktop calendar program like |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2176 iCal, Org-mode can also produce extracts in the iCalendar format. |
58792 | 2177 |
2178 @menu | |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2179 * ASCII export:: Export as a structured ASCII file |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2180 * HTML export:: Export as an HTML file |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2181 * iCalendar export:: Create calendar entries. |
58792 | 2182 @end menu |
2183 | |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2184 @node ASCII export, HTML export, Exporting, Exporting |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2185 @section ASCII export |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2186 @cindex ASCII export |
58792 | 2187 |
2188 @cindex region, active | |
2189 @cindex active region | |
2190 @cindex transient-mark-mode | |
2191 @table @kbd | |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
2192 @kindex C-c C-x a |
58792 | 2193 @item C-c C-x a |
2194 Export as ASCII file. If there is an active region, only the region | |
2195 will be exported. For an org file @file{myfile.org}, the ASCII file | |
2196 will be @file{myfile.txt}. The file will be overwritten without | |
2197 warning. | |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2198 @end table |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2199 |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2200 @cindex headline levels, for exporting |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2201 In the exported version, the first 3 outline levels will become |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2202 headlines, defining a general document structure. Additional levels |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2203 will be exported as itemize lists. If you want that transition to occur |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2204 at a different level, specify it with a prefix argument. For example, |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2205 @example |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2206 @kbd{C-1 C-c C-x a org-export-as-ascii} |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2207 @end example |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2208 @noindent |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2209 creates only top level headlines and does the rest as items. Lines |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2210 starting with @samp{#} and subtree starting with the word @samp{COMMENT} |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2211 will not be exported. |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2212 |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2213 @node HTML export, iCalendar export, ASCII export, Exporting |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2214 @section HTML export |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2215 @cindex HTML export |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2216 |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2217 Org-mode contains an HTML exporter with extensive HTML formatting, in |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2218 ways similar to John Grubers @emph{markdown} language, but with |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2219 additional support for tables. |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2220 |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2221 @cindex region, active |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2222 @cindex active region |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2223 @cindex transient-mark-mode |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2224 @table @kbd |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
2225 @kindex C-c C-x h |
58792 | 2226 @item C-c C-x h |
2227 Export as HTML file @file{myfile.html}. | |
65656 | 2228 @kindex C-c C-x b |
2229 @item C-c C-x b | |
58792 | 2230 Export as HTML file and open it with a browser. |
2231 @kindex C-c C-x t | |
2232 @item C-c C-x t | |
2233 Insert template with export options, see below. | |
2234 @kindex C-c : | |
2235 @item C-c : | |
65656 | 2236 Toggle fixed-width for entry (QUOTE) or region, see below. |
58792 | 2237 @end table |
2238 | |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2239 @cindex headline levels, for exporting |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2240 In the exported version, the first 3 outline levels will become |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2241 headlines, defining a general document structure. Additional levels |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2242 will be exported as itemize lists. If you want that transition to occur |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2243 at a different level, specify it with a prefix argument. For example, |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2244 @example |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2245 @kbd{C-2 C-c C-x b} |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2246 @end example |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2247 @noindent |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2248 creates two levels of headings and does the rest as items. |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2249 |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2250 @menu |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2251 * HTML formatting:: Interpretation of the buffer content |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2252 * Export options:: How to influence exports |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2253 * Comment lines:: Lines which will not be exported |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2254 @end menu |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2255 |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2256 @node HTML formatting, Export options, HTML export, HTML export |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2257 @subsection HTML formatting |
58792 | 2258 |
2259 Not all text is transferred literally to the exported HTML file. The | |
2260 exporter implements the following interpretation: | |
2261 | |
2262 @itemize @bullet | |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2263 |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2264 @cindex hand-formatted lists |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2265 @cindex lists, hand-formatted |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2266 @item |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2267 Hand-formatted lists with @samp{-}, @samp{*} or @samp{+} as |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2268 bullet@footnote{When using @samp{*} as a bullet, lines must be |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2269 indented or they will be seen as top-level headlines.}, or |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2270 with @samp{1.}, @samp{2.} as enumerator will be recognized and |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2271 transformed into HTML lists. The |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2272 lists is terminated by the next headline, or by a line that is |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2273 indented like the bullet/enumerator in the first line, or less. For |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2274 example: |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2275 @example |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2276 ** Lord of the Rings |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2277 Some of my favorite scenes are |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2278 - Eowyns fight |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2279 - The attack of the Roherim |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2280 (this may be favorite one) |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2281 - Peter Jackson being shot by Legolas, |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2282 in the extended DVD edition only |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2283 My favorite characters are (in this sequence): |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2284 1. Sam |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2285 2. Eowyn |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2286 3. Aragorn |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2287 Among the others I don't really have a preference. |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2288 @end example |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2289 By default, only no nesting of lists is allowed, but see the variable |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2290 @code{org-export-local-list-max-depth}. |
58792 | 2291 @cindex underlined text |
2292 @cindex bold text | |
2293 @cindex italic text | |
2294 @item | |
2295 You can make words @b{*bold*}, @i{/italic/}, and _underlined_ | |
2296 | |
2297 @cindex @TeX{} interpretation | |
2298 @item | |
2299 Simple @TeX{}-like math constructs are interpreted: | |
2300 | |
63833 | 2301 @cindex completion, of @TeX{} symbols |
58792 | 2302 @itemize @minus |
2303 @item | |
2304 @samp{10^22} and @samp{J_n} are super- and subscripts. You can quote | |
2305 @samp{^} and @samp{_} with a backslash: @samp{\_} and @samp{\^} | |
2306 @item | |
2307 @samp{\alpha} indicates a Greek letter, @samp{\to} an arrow. You can | |
2308 use completion for these macros, just type @samp{\} and maybe a few | |
2309 letters, and press @kbd{M-@key{TAB}} to see possible completions. | |
2310 @end itemize | |
2311 | |
2312 @cindex tables, export to HTML | |
2313 @item | |
63362 | 2314 Tables are transformed into HTML tables. Data fields before the first |
2315 horizontal separator line will be formatted as table header fields. | |
58792 | 2316 |
2317 @cindex fixed width | |
2318 @item | |
65244 | 2319 If a headline starts with the word @samp{QUOTE}, the text below the |
2320 headline will be typeset as fixed-width, to allow quoting of computer | |
2321 codes etc. Lines starting with @samp{:} are also typeset in | |
2322 fixed-width font. | |
58792 | 2323 |
2324 @cindex HTML tags | |
2325 @item | |
2326 If you want to include HTML tags which should be interpreted as such, | |
2327 mark them with a @samp{@@} like in @samp{@@<b>bold text@@</b>}. | |
2328 Plain @samp{<} and @samp{>} are always transformed to @samp{<} and | |
2329 @samp{>} in HTML export. | |
2330 @end itemize | |
2331 | |
2332 If these conversions conflict with your habits of typing ASCII text, | |
2333 they can all be turned off with corresponding variables. | |
2334 | |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2335 @node Export options, Comment lines, HTML formatting, HTML export |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2336 @subsection Export options |
58792 | 2337 @cindex options, for export |
2338 | |
63833 | 2339 @cindex completion, of option keywords |
58792 | 2340 The exporter recognizes special lines in the buffer which provide |
2341 additional information. These lines may be put anywhere in the file. | |
2342 The whole set of lines can be inserted into the buffer with @kbd{C-c | |
2343 C-x t}. For individual lines, a good way to make sure the keyword is | |
65656 | 2344 correct is to type @samp{#+} and then use @kbd{M-@key{TAB}} completion |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
2345 (@pxref{Completion}). |
58792 | 2346 |
2347 @example | |
2348 #+TITLE: the title to be shown (default is the buffer name) | |
2349 #+AUTHOR: the author (default taken from @code{user-full-name}) | |
2350 #+EMAIL: his/her email address (default from @code{user-mail-address}) | |
2351 #+LANGUAGE: language for HTML, e.g. @samp{en} (@code{org-export-default-language}) | |
2352 #+TEXT: Some descriptive text to be inserted at the beginning. | |
2353 #+TEXT: Several lines may be given. | |
2354 #+OPTIONS: H:2 num:t toc:t \n:nil @:t ::t |:t ^:t *:nil TeX:t | |
2355 @end example | |
2356 @noindent | |
2357 The OPTIONS line is a compact form to specify export settings. Here | |
2358 you can | |
2359 @cindex headline levels | |
2360 @cindex section-numbers | |
2361 @cindex table of contents | |
63833 | 2362 @cindex linebreak preservation |
58792 | 2363 @cindex quoted html tags |
2364 @cindex fixed-width sections | |
2365 @cindex tables | |
2366 @cindex @TeX{}-like syntax for sub- and superscripts | |
2367 @cindex emphasized text | |
2368 @cindex @TeX{} macros | |
2369 @example | |
2370 H: @r{set the number of headline levels for export} | |
2371 num: @r{turn on/off section-numbers} | |
2372 toc: @r{turn on/off table of contents} | |
2373 \n: @r{turn on/off linebreak-preservation} | |
2374 @@: @r{turn on/off quoted html tags} | |
2375 :: @r{turn on/off fixed-width sections} | |
2376 |: @r{turn on/off tables} | |
2377 ^: @r{turn on/off @TeX{}-like syntax for sub- and superscripts.} | |
2378 *: @r{turn on/off emphasized text (bold, italic, underlined)} | |
2379 TeX: @r{turn on/off @TeX{} macros} | |
2380 @end example | |
2381 | |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2382 You can also give style information for the exported file. The |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2383 default specification can be configured through the option |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2384 @code{org-export-html-style}. If you want to use a file-local style, |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2385 you may use file variables, best wrapped into a COMMENT section at the |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2386 end of the outline tree. For example: |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2387 |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2388 @example |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2389 * COMMENT HTML style specifications |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2390 |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2391 # Local Variables: |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2392 # org-export-html-style: " <style type=\"text/css\"> |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2393 p @{font-weight: normal; color: gray; @} |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2394 h1 @{color: black; @} |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2395 </style>" |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2396 # End: *** |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2397 @end example |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2398 |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2399 Remember to execute @kbd{M-x normal-mode} after changing this to make |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2400 the new style visible to Emacs. |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2401 |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2402 @node Comment lines, , Export options, HTML export |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2403 @subsection Comment lines |
58792 | 2404 @cindex comment lines |
2405 @cindex exporting, not | |
2406 | |
2407 Lines starting with @samp{#} in column zero are treated as comments | |
2408 and will never be exported. Also entire subtrees starting with the | |
2409 word @samp{COMMENT} will never be exported. Finally, any text before | |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2410 the first headline will not be exported either. This applies also for |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2411 ASCII export. |
58792 | 2412 |
2413 @table @kbd | |
2414 @kindex C-c ; | |
2415 @item C-c ; | |
2416 Toggle the COMMENT keyword at the beginning of an entry. | |
2417 @end table | |
2418 | |
66264
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2419 @node iCalendar export, , HTML export, Exporting |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2420 @section iCalendar export |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2421 |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2422 Some people like to use Org-mode for keeping track of projects, but |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2423 still prefer a standard calendar application for anniversaries and |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2424 appointments. In this case it can be useful to have deadlines and |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2425 other time-stamped items in Org-mode files show up in the calendar |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2426 application. Org-mode can export calendar information in the standard |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2427 iCalendar format. |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2428 |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2429 @table @kbd |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2430 @kindex C-c C-x i |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2431 @item C-c C-x i |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2432 Create iCalendar entries for the current file and store them in the same |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2433 directory, using a file extension @file{.ics}. |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2434 @kindex C-c C-x C-i |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2435 @item C-c C-x C-i |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2436 Like @kbd{C-c C-x i}, but do this for all files in |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2437 @code{org-agenda-files}. For each of these files, a separate iCalendar |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2438 file will be written. |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2439 @kindex C-c C-x c |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2440 @item C-c C-x c |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2441 Create a single large iCalendar file from all files in |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2442 @code{org-agenda-files} and write it to the file given by |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2443 @code{org-combined-agenda-icalendar-file}. |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2444 @end table |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2445 |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2446 How this calendar is best read and updated, depends on the on the |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2447 application you are using. For example, when using iCal under Apple |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2448 MacOS X, you could create a new calendar @samp{OrgMode} (the default |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2449 name for the calendar created by @kbd{C-c C-x c}, see the variables |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2450 @code{org-icalendar-combined-name} and |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2451 @code{org-combined-agenda-icalendar-file}). Then set Org-mode to |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2452 overwrite the corresponding file |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2453 @file{~/Library/Calendars/OrgMode.ics}. You may even use AppleScript |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2454 to make iCal re-read the calendar files each time a new version of |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2455 @file{OrgMode.ics} is produced. Here is the setup needed for this: |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2456 |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2457 @lisp |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2458 (setq org-combined-agenda-icalendar-file |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2459 "~/Library/Calendars/OrgMode.ics") |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2460 (add-hook 'org-after-save-iCalendar-file-hook |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2461 (lambda () |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2462 (shell-command |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2463 "osascript -e 'tell application \"iCal\" to reload calendars'"))) |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2464 @end lisp |
d979e1d45f97
(Summary): Mention iCalendar support.
Carsten Dominik <dominik@science.uva.nl>
parents:
65965
diff
changeset
|
2465 |
58792 | 2466 @node Miscellaneous, Index, Exporting, Top |
2467 @chapter Miscellaneous | |
2468 | |
2469 @menu | |
2470 * Completion:: M-TAB knows what you need | |
2471 * Customization:: Adapting Org-mode to your taste | |
62548 | 2472 * FAQ:: Frequently asked questions |
58792 | 2473 * Interaction:: Other Emacs packages |
65656 | 2474 * TTY keys:: Using Org-mode on a tty |
63362 | 2475 * Bugs:: Things which do not work perfectly |
58792 | 2476 * Acknowledgments:: These people provided feedback and more |
2477 @end menu | |
2478 | |
2479 @node Completion, Customization, Miscellaneous, Miscellaneous | |
2480 @section Completion | |
63833 | 2481 @cindex completion, of @TeX{} symbols |
2482 @cindex completion, of TODO keywords | |
2483 @cindex completion, of dictionary words | |
2484 @cindex completion, of option keywords | |
58792 | 2485 |
2486 Org-mode supports in-buffer completion. This type of completion does | |
2487 not make use of the minibuffer. You simply type a few letters into | |
2488 the buffer and use the key to complete text right there. | |
2489 | |
2490 @table @kbd | |
2491 @kindex M-@key{TAB} | |
2492 @item M-@key{TAB} | |
2493 Complete word at point | |
2494 @itemize @bullet | |
2495 @item | |
2496 At the beginning of a headline, complete TODO keywords. | |
2497 @item | |
2498 After @samp{\}, complete @TeX{} symbols supported by the exporter. | |
2499 @item | |
2500 After @samp{#+}, complete the special keywords like @samp{TYP_TODO} or | |
2501 @samp{OPTIONS} which set file-specific options for Org-mode. When the | |
2502 option keyword is already complete, pressing @kbd{M-@key{TAB}} again | |
2503 will insert example settings for this keyword. | |
2504 @item | |
2505 Elsewhere, complete dictionary words using ispell. | |
2506 @end itemize | |
2507 @end table | |
2508 | |
62548 | 2509 @node Customization, FAQ, Completion, Miscellaneous |
58792 | 2510 @section Customization |
2511 @cindex customization | |
2512 @cindex options, for customization | |
2513 @cindex variables, for customization | |
2514 | |
2515 There is a large number of variables which can be used to customize | |
2516 Org-mode. For the sake of compactness of the manual, we are not | |
2517 describing the variables here. For an overview of customization | |
2518 variables, use @kbd{M-x org-customize}. Or select @code{Browse Org | |
2519 Group} from the @code{Org->Customization} menu. | |
2520 | |
62548 | 2521 @node FAQ, Interaction, Customization, Miscellaneous |
2522 @section Frequently asked questions | |
58792 | 2523 |
62548 | 2524 @enumerate |
64069 | 2525 @item @b{Org-mode seems to be a useful default mode for the various |
62548 | 2526 @file{README} files I have scattered through my directories. How do I |
2527 turn it on for all @file{README} files?} | |
58792 | 2528 @example |
2529 (add-to-list 'auto-mode-alist '("README$" . org-mode)) | |
2530 @end example | |
2531 | |
62548 | 2532 @item @b{I would like to have two windows on the same Org-mode |
2533 file, but with different outline visibility. Is that possible?}@* | |
58792 | 2534 @cindex @code{make-indirect-buffer} |
2535 @cindex indirect buffers | |
62548 | 2536 In GNU Emacs, you may use @emph{indirect buffers} which do exactly |
2537 this. See the documentation on the command | |
2538 @code{make-indirect-buffer}. In XEmacs, this is currently not | |
63362 | 2539 possible because of the different outline implementation. |
58792 | 2540 |
62548 | 2541 @item @b{Is there an easy way to insert links to web locations?}@* |
58792 | 2542 @cindex URL, paste into buffer |
63833 | 2543 Sure, just type or paste them into the buffer. A plain-text URL-like |
2544 string is directly interpreted as a link. | |
58792 | 2545 |
62548 | 2546 @item @b{When I export my TODO list, every TODO item becomes a |
2547 separate section. How do I enforce these items to be exported as an | |
2548 itemized list?}@* | |
58792 | 2549 If you plan to use ASCII or HTML export, make sure things you want to |
2550 be exported as item lists are level 4 at least, even if that does mean | |
2551 there is a level jump. For example | |
2552 | |
2553 @example | |
2554 * Todays top priorities | |
2555 **** TODO write a letter to xyz | |
2556 **** TODO Finish the paper | |
2557 **** Pick up kids at the school | |
2558 @end example | |
2559 | |
2560 Alternatively, if you need a specific value for the heading/item | |
2561 transition in a particular file, use the @samp{+OPTIONS} line to | |
2562 configure the @samp{H} switch. | |
2563 | |
2564 @example | |
2565 +OPTIONS: H:2; ... | |
2566 @end example | |
2567 | |
62548 | 2568 @item @b{I would like to export only a subtree of my file to HTML. How?}@* |
58792 | 2569 @cindex exporting a subtree |
2570 If you want to export a subtree, mark the subtree as region and then | |
2571 export. Marking can be done with @kbd{C-c @@ C-x C-x}, for example. | |
2572 | |
63362 | 2573 @item @b{Org-mode takes over the S-cursor keys. I also want to use |
2574 CUA-mode, is there a way to fix this conflict?}@* | |
2575 Yes, see @ref{Interaction} | |
2576 | |
62548 | 2577 @item @b{Is there an easy way to insert an empty table template with a |
2578 default number of rows and columns?}@* | |
58792 | 2579 @cindex table, empty template |
2580 To insert an empty table template, just type @samp{|-} and use | |
62548 | 2581 @key{TAB}. The default size can be changed with the variable |
63362 | 2582 @code{org-table-default-size}. However, just starting to type the |
2583 first line is usually much easier. | |
58792 | 2584 |
63833 | 2585 @item @b{One of my table columns has started to fill up with |
2586 @samp{#ERROR}. What is going on?}@* | |
2587 Org-mode tried to compute the column from other fields using a | |
2588 formula stored in the @samp{#+TBLFMT:} line just below the table, and | |
2589 the evaluation of the formula fails. Fix the fields used in the | |
2590 formula, or fix the formula, or remove it! | |
2591 | |
62548 | 2592 @item @b{When I am in the last column of a table and just above a |
2593 horizontal line in the table, pressing TAB creates a new table line | |
2594 @i{before} the horizontal line. How can I quickly move to the line | |
2595 @i{below} the horizontal line instead?}@* | |
2596 Press @key{down} (to get on the separator line) and then @key{TAB}. | |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2597 Or configure the variable @code{org-table-tab-jumps-over-hlines}. |
58792 | 2598 |
62548 | 2599 @item @b{How can I change the indentation of an entire table without |
2600 fixing every line by hand?}@* | |
58792 | 2601 @cindex indentation, of tables |
62548 | 2602 The indentation of a table is set by the first line. So just fix the |
2603 indentation of the first line and realign with @key{TAB}. | |
58792 | 2604 |
62548 | 2605 @end enumerate |
58792 | 2606 |
2607 | |
65656 | 2608 @node Interaction, TTY keys, FAQ, Miscellaneous |
58792 | 2609 @section Interaction with other packages |
2610 @cindex packages, interaction with other | |
63833 | 2611 Org-mode can cooperate with the following packages: |
58792 | 2612 |
2613 @table @asis | |
2614 @cindex @file{table.el} | |
2615 @item @file{table.el} by Takaaki Ota | |
2616 Org mode cooperates with table.el, see @ref{table.el}. | |
63833 | 2617 @cindex @file{calc.el} |
2618 @item @file{calc.el} by Dave Gillespie | |
2619 Org-mode uses the calc package for implementing spreadsheet | |
2620 functionality in its tables (@pxref{Table calculations}). Org-modes | |
2621 checks for the availability of calc by looking for the function | |
2622 @code{calc-eval} which should be autoloaded in your setup if calc has | |
2623 been installed properly. As of Emacs 22, calc is part of the Emacs | |
2624 distribution. Another possibility for interaction between the two | |
2625 packages is using calc for embedded calculations. @xref{Embedded Mode, | |
64517 | 2626 , Embedded Mode, calc, GNU Emacs Calc Manual}. |
63833 | 2627 @cindex @file{constants.el} |
2628 @item @file{constants.el} by Carsten Dominik | |
2629 In a table formula (@pxref{Table calculations}), it is possible to use | |
2630 names for natural constants or units. Instead of defining you own | |
2631 constants in the variable @code{org-table-formula-constants}, install | |
2632 the @file{constants} package which defines a large number of constants | |
2633 and units, and lets you use unit prefixes like @samp{M} for | |
2634 @samp{Mega} etc. You will need version 2.0 of this package, available | |
2635 at @url{http://www.astro.uva.nl/~dominik/Tools}. Org-mode checks for | |
2636 the function @code{constants-get}, which has to be autoloaded in your | |
2637 setup. See the installation instructions in the file | |
2638 @file{constants.el}. | |
2639 @cindex @file{remember.el} | |
63362 | 2640 @cindex @file{CUA.el} |
2641 @item @file{CUA.el} by Kim. F. Storm | |
2642 Keybindings in Org-mode conflict with the @kbd{S-<cursor>} keys | |
2643 used by CUA-mode (as well as pc-select-mode and s-region-mode) to | |
2644 select and extend the region. If you want to use one of these | |
2645 packages along with Org-mode, configure the variable | |
63833 | 2646 @code{org-CUA-compatible}. When set, Org-mode will move the following |
63362 | 2647 keybindings in org-mode files, and in the agenda buffer (but not |
2648 during date selection). | |
2649 @example | |
2650 S-UP -> M-p S-DOWN -> M-n | |
2651 S-LEFT -> M-- S-RIGHT -> M-+ | |
2652 S-RET -> C-S-RET | |
2653 @end example | |
2654 Yes, these are unfortunately more difficult to remember. If you want | |
2655 to have other replacement keys, look at the variable | |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
2656 @code{org-disputed-keys}. |
63833 | 2657 @item @file{remember.el} by John Wiegley |
2658 Org mode cooperates with remember, see @ref{Remember}. | |
2659 @cindex @file{planner.el} | |
2660 @item @file{planner.el} by John Wiegley | |
2661 Planner is another tool to plan work and keep track of tasks. Planner | |
2662 uses a multi-file approach with project pages and day pages. Is based | |
2663 on Emacs-Wiki. If Planner is your primary tool, it can be useful to | |
2664 display the agenda entries resulting from org files in day-pages of | |
2665 the planner. This can be done through the diary of the calendar: | |
2666 Integrate org files into the diary as described above, and then turn | |
2667 on the diary support of planner. | |
58792 | 2668 @end table |
2669 | |
65656 | 2670 @node TTY keys, Bugs, Interaction, Miscellaneous |
2671 @section Using org-mode on a tty | |
2672 | |
2673 Org-mode uses a number of keys that are not accessible on a tty. This | |
2674 applies to most special keys like cursor keys, @key{TAB} and | |
2675 @key{RET}, when these are combined with modifier keys like @key{Meta} | |
2676 and/or @key{Shift}. Org-mode uses these bindings because it needs to | |
2677 provide keys for a large number of commands, and because these keys | |
2678 appeared particularly easy to remember. In order to still be able to | |
2679 access the core functionality of Org-mode on a tty, alternative | |
2680 bindings are provided. Here is a complete list of these bindings, | |
2681 which are obviously more cumbersome to use. Note that sometimes a | |
2682 work-around can be better. For example changing a time stamp is | |
2683 really only fun with @kbd{S-@key{cursor}} keys. On a tty you would | |
2684 rather use @kbd{C-c .} to re-insert the timestamp. | |
2685 | |
2686 @page | |
2687 @multitable @columnfractions 0.15 0.2 0.2 | |
2688 @item @b{Default} @tab @b{Alternative 1} @tab @b{Alternative 2} | |
2689 @item @kbd{S-@key{TAB}} @tab @kbd{C-u @key{TAB}} @tab | |
2690 @item @kbd{M-@key{left}} @tab @kbd{C-c C-x l} @tab @kbd{@key{Esc} @key{left}} | |
2691 @item @kbd{M-S-@key{left}} @tab @kbd{C-c C-x L} @tab | |
2692 @item @kbd{M-@key{right}} @tab @kbd{C-c C-x r} @tab @kbd{@key{Esc} @key{right}} | |
2693 @item @kbd{M-S-@key{right}} @tab @kbd{C-c C-x R} @tab | |
2694 @item @kbd{M-@key{up}} @tab @kbd{C-c C-x u} @tab @kbd{@key{Esc} @key{up}} | |
2695 @item @kbd{M-S-@key{up}} @tab @kbd{C-c C-x U} @tab | |
2696 @item @kbd{M-@key{down}} @tab @kbd{C-c C-x d} @tab @kbd{@key{Esc} @key{down}} | |
2697 @item @kbd{M-S-@key{down}} @tab @kbd{C-c C-x D} @tab | |
2698 @item @kbd{S-@key{RET}} @tab @kbd{C-c C-x c} @tab | |
2699 @item @kbd{M-@key{RET}} @tab @kbd{C-c C-x m} @tab @kbd{@key{Esc} @key{RET}} | |
2700 @item @kbd{M-S-@key{RET}} @tab @kbd{C-c C-x M} @tab | |
2701 @item @kbd{S-@key{left}} @tab @kbd{C-c C-x @key{left}} @tab | |
2702 @item @kbd{S-@key{right}} @tab @kbd{C-c C-x @key{right}} @tab | |
2703 @item @kbd{S-@key{up}} @tab @kbd{C-c C-x @key{up}} @tab | |
2704 @item @kbd{S-@key{down}} @tab @kbd{C-c C-x @key{down}} @tab | |
2705 @end multitable | |
2706 | |
2707 @node Bugs, Acknowledgments, TTY keys, Miscellaneous | |
63362 | 2708 @section Bugs |
2709 @cindex bugs | |
2710 | |
2711 Here is a list of things which should work differently, but which I | |
2712 have found too hard to fix. | |
58792 | 2713 |
63362 | 2714 @itemize @bullet |
66988
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2715 @c @item |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2716 @c If you call @code{fill-paragraph} (bound to @kbd{M-q}) in a table, the |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2717 @c filling is correctly disabled. However, if some text directly |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2718 @c (without an empty line in between) precedes or follows a table, calling |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2719 @c @code{fill-paragraph} in that text will also fill the table like |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2720 @c normal text. Also, @code{fill-region} does bypass the |
578b7f9692c4
(FAQ): Document `org-table-tab-jumps-over-hlines'.
Carsten Dominik <dominik@science.uva.nl>
parents:
66690
diff
changeset
|
2721 @c @code{fill-paragraph} code and will fill tables like normal text. |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
2722 @item |
65656 | 2723 Text in an entry protected with the @samp{QUOTE} keyword should not |
2724 autowrap. | |
2725 @item | |
63362 | 2726 When the application called by @kbd{C-c C-o} to open a file link fails |
2727 (for example because the application does not exits or refuses to open | |
2728 the file), it does so silently. No error message is displayed. | |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
2729 @item |
65656 | 2730 The remote-editing commands in the agenda buffer cannot be undone with |
2731 @code{undo} called from within the agenda buffer. But you can go to | |
2732 the corresponding buffer (using @key{TAB} or @key{RET} and execute | |
2733 @code{undo} there. | |
2734 @item | |
63833 | 2735 Recalculating a table line applies the formulas from left to right. |
65656 | 2736 If a formula uses @emph{calculated} fields further down the row, |
2737 multiple recalculation may be needed to get all fields consistent. | |
63833 | 2738 @item |
63362 | 2739 Under XEmacs, if Org-mode entries are included into the diary, it is |
2740 not possible to jump back from the diary to the org file. Apparently, | |
2741 the text properties are lost when the fancy-diary-display is used. | |
2742 However, from Org-mode's timeline and agenda buffers (created with | |
2743 @kbd{C-c C-r} and @kbd{C-c a}), things do work correctly. | |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
2744 @item |
63362 | 2745 Linux should also have a default viewer application, using mailcap. |
2746 Maybe we can use GNUS or VM mime code? Or dired's guessing commands? | |
2747 Any hints (or even patches) are appreciated. | |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
2748 @item |
63362 | 2749 When you write @samp{x = a /b/ c}, b will be exported in italics. |
63672
c90c20a1b568
(Remember): Texinfo usage fix.
Juanma Barranquero <lekktu@gmail.com>
parents:
63362
diff
changeset
|
2750 @item |
63362 | 2751 The exporters work well, but could be made more efficient. |
2752 @end itemize | |
2753 | |
2754 @page | |
2755 | |
2756 @node Acknowledgments, , Bugs, Miscellaneous | |
58792 | 2757 @section Acknowledgments |
2758 @cindex acknowledgments | |
2759 | |
2760 Org-mode was written by Carsten Dominik, who still maintains it at the | |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
2761 Org-mode homepage @uref{http://www.astro.uva.nl/~dominik/Tools/org/}. |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
2762 The following people have helped the development along with ideas, |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
2763 suggestions and patches. |
58792 | 2764 |
2765 @itemize @bullet | |
2766 @item | |
63833 | 2767 Matthias Rempe (Oelde) provided ideas, a patch introducing Windows |
2768 NT/2000 support, and quality control. | |
58792 | 2769 @item |
2770 Kevin Rogers contributed code to access VM files on remote hosts. | |
2771 @item | |
2772 Juergen Vollmer contributed code generating the table of contents | |
2773 in HTML output, and other export improvements. | |
2774 @item | |
2775 Christian Egli converted the documentation into TeXInfo format. He | |
2776 also showed me his plans for a multifile summary for Org-mode. Some of | |
2777 his ideas have found their way into the agenda. | |
61562
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2778 @item |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2779 Philip Rooke created the Org-mode reference card. He also helped with |
6cd3b18f298e
Update to version 3.06
Carsten Dominik <dominik@science.uva.nl>
parents:
61136
diff
changeset
|
2780 beta testing and contributed a number of very useful ideas. |
58792 | 2781 @item |
63833 | 2782 Christian Schlauer proposed angular brackets around links, among other |
2783 things. | |
63362 | 2784 @item |
64517 | 2785 David Wainberg suggested to implement an archiving mechanism and helped |
2786 testing. | |
63362 | 2787 @item |
58792 | 2788 Linking to VM/BBDB/GNUS was inspired by Tom Shannon's |
2789 @file{organizer-mode.el}. | |
2790 @item | |
2791 Scheduling TODO items was inspired by John Wiegley's @file{planner.el}. | |
2792 @item | |
63362 | 2793 Sacha Chua, the current maintainer of Planner, offered linking code |
2794 from Planner. I made use of the offer for links to RMAIL and Wanderlust. | |
58792 | 2795 @item |
2796 Oliver Oppitz sent several useful suggestions. | |
2797 @item | |
2798 Carsten Wimmer suggested some changes and helped fix a bug in linking | |
2799 to GNUS. | |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
2800 @item |
62548 | 2801 Pavel Chalmoviansky reported bugs and suggested improvements related |
63362 | 2802 to the agenda treatment of items with specified time. |
62548 | 2803 @item |
61923
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
2804 Stefan Monnier provided a patch with lots of little fixes to keep the |
88492f3ccffa
*** empty log message ***
Carsten Dominik <dominik@science.uva.nl>
parents:
61562
diff
changeset
|
2805 Emacs-Lisp compiler happy. |
63362 | 2806 @item |
2807 Kai Grossjohann pointed out that a number of key bindings in Org-mode | |
2808 conflict with other packages. | |
65656 | 2809 @item |
2810 Roland Winkler pointed out that additional keybindings are need to use | |
2811 Org-mode on a tty. | |
58792 | 2812 @end itemize |
2813 | |
2814 @node Index, Key Index, Miscellaneous, Top | |
2815 @chapter Index | |
2816 | |
2817 @printindex cp | |
2818 | |
2819 @node Key Index, , Index, Top | |
2820 @chapter Key Index | |
2821 | |
2822 @printindex ky | |
2823 | |
2824 @bye | |
64070 | 2825 |
2826 @ignore | |
2827 arch-tag: 7893d1fe-cc57-4d13-b5e5-f494a1bcc7ac | |
2828 @end ignore |