org.texi 173 KB
Newer Older
Richard M. Stallman's avatar
Richard M. Stallman committed
1
\input texinfo
2

Richard M. Stallman's avatar
Richard M. Stallman committed
3
@c %**start of header
Carsten Dominik's avatar
Carsten Dominik committed
4
@setfilename ../info/org
Carsten Dominik's avatar
Carsten Dominik committed
5
@settitle Org Mode Manual
Richard M. Stallman's avatar
Richard M. Stallman committed
6

7 8
@set VERSION 4.36
@set DATE June 2006
Richard M. Stallman's avatar
Richard M. Stallman committed
9 10 11

@dircategory Emacs
@direntry
12
* Org Mode: (org).	outline-based notes management and organizer
Richard M. Stallman's avatar
Richard M. Stallman committed
13 14 15 16
@end direntry

@c Version and Contact Info
@set MAINTAINERSITE @uref{http://www.astro.uva.nl/~dominik/Tools/org/,maintainers webpage}
17
@set AUTHOR Carsten Dominik
Richard M. Stallman's avatar
Richard M. Stallman committed
18 19 20 21 22 23 24 25
@set MAINTAINER Carsten Dominik
@set MAINTAINEREMAIL @email{dominik@@science.uva.nl}
@set MAINTAINERCONTACT @uref{mailto:dominik@@science.uva.nl,contact the maintainer}
@c %**end of header
@finalout

@c Macro definitions

26
@c Subheadings inside a table.
Richard M. Stallman's avatar
Richard M. Stallman committed
27 28 29 30 31 32 33 34 35 36 37 38
@macro tsubheading{text}
@ifinfo
@subsubheading \text\
@end ifinfo
@ifnotinfo
@item @b{\text\}
@end ifnotinfo
@end macro

@copying
This manual is for Org-mode (version @value{VERSION}).

39
Copyright @copyright{} 2004, 2005, 2006 Free Software Foundation
Richard M. Stallman's avatar
Richard M. Stallman committed
40 41 42

@quotation
Permission is granted to copy, distribute and/or modify this document
Carsten Dominik's avatar
Carsten Dominik committed
43
under the terms of the GNU Free Documentation License, Version 1.1 or
Richard M. Stallman's avatar
Richard M. Stallman committed
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
any later version published by the Free Software Foundation; with no
Invariant Sections, with the Front-Cover texts being ``A GNU Manual,''
and with the Back-Cover Texts as in (a) below.  A copy of the
license is included in the section entitled ``GNU Free Documentation
License.''

(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
this GNU Manual, like GNU software.  Copies published by the Free
Software Foundation raise funds for GNU development.''
@end quotation
@end copying

@titlepage
@title Org Mode Manual

@subtitle Release @value{VERSION}
@author by Carsten Dominik

@c The following two commands start the copyright page.
@page
@vskip 0pt plus 1filll
@insertcopying
@end titlepage

@c Output the table of contents at the beginning.
@contents

@ifnottex
@node Top, Introduction, (dir), (dir)
@top Org Mode Manual

@insertcopying
@end ifnottex

@menu
* Introduction::                Getting started
80
* Document structure::          A tree works like your brain
Richard M. Stallman's avatar
Richard M. Stallman committed
81 82
* Tables::                      Pure magic for quick formatting
* Hyperlinks::                  Notes in context
Carsten Dominik's avatar
Carsten Dominik committed
83
* TODO items::                  Every tree branch can be a TODO item
Richard M. Stallman's avatar
Richard M. Stallman committed
84
* Timestamps::                  Assign date and time to items
85
* Tags::                        Tagging headlines and matching sets of tags
86
* Agenda views::                Collecting information into views
Richard M. Stallman's avatar
Richard M. Stallman committed
87
* Exporting::                   Sharing and publishing of notes
88
* Publishing::                  Create a web site of linked Org-mode files
Richard M. Stallman's avatar
Richard M. Stallman committed
89 90 91 92 93 94 95 96 97 98
* Miscellaneous::               All the rest which did not fit elsewhere
* Index::                       The fast road to specific information
* Key Index::                   Key bindings and where they are described

@detailmenu
 --- The Detailed Node Listing ---

Introduction

* Summary::                     Brief summary of what Org-mode does
99
* Installation and activation::  How to install Org-mode
Carsten Dominik's avatar
Carsten Dominik committed
100
* Feedback::                    Bug reports, ideas, patches etc.
Richard M. Stallman's avatar
Richard M. Stallman committed
101

102
Document Structure
Richard M. Stallman's avatar
Richard M. Stallman committed
103 104 105

* Outlines::                    Org-mode is based on outline-mode
* Headlines::                   How to typeset org-tree headlines
Carsten Dominik's avatar
Carsten Dominik committed
106
* Visibility cycling::          Show and hide, much simplified
Richard M. Stallman's avatar
Richard M. Stallman committed
107 108
* Motion::                      Jumping to other headlines
* Structure editing::           Changing sequence and level of headlines
Carsten Dominik's avatar
Carsten Dominik committed
109
* Archiving::                   Move done task trees to a different place
Richard M. Stallman's avatar
Richard M. Stallman committed
110
* Sparse trees::                Matches embedded in context
111
* Plain lists::                 Editing hand-formatted lists
Richard M. Stallman's avatar
Richard M. Stallman committed
112

Carsten Dominik's avatar
Carsten Dominik committed
113 114 115
Tables

* Built-in table editor::       Simple tables
116
* Narrow columns::              Stop wasting space in tables   
Carsten Dominik's avatar
Carsten Dominik committed
117
* Table calculations::          Compute a field from other fields
Carsten Dominik's avatar
Carsten Dominik committed
118
* orgtbl-mode::                 The table editor as minor mode
Carsten Dominik's avatar
Carsten Dominik committed
119 120 121 122 123
* table.el::                    Complex tables

Calculations in tables

* Formula syntax::              How to write a formula
124
* Lisp formulas::               An alternative way to write formulas
Carsten Dominik's avatar
Carsten Dominik committed
125 126 127 128
* Column formulas::             Formulas valid for all fields in a column
* Advanced features::           Field names, parameters and automatic recalc
* Named-field formulas::        Formulas valid in single fields
* Editing/debugging formulas::  Changing a stored formula
Carsten Dominik's avatar
Carsten Dominik committed
129
* Appetizer::                   Taste the power of calc
Carsten Dominik's avatar
Carsten Dominik committed
130 131 132

Hyperlinks

133 134 135
* Link format::                 How links in Org-mode are formatted
* Internal links::              Links to other places in the current file
* External links::              URL-like links to the world
Carsten Dominik's avatar
Carsten Dominik committed
136
* Handling links::              Creating, inserting and following
137 138
* Search options::              Linking to a specific location
* Custom searches::             When the default search is not enough
Carsten Dominik's avatar
Carsten Dominik committed
139 140
* Remember::                    Org-trees store quick notes

141
Internal links
142 143 144 145

* Radio targets::               Make targets trigger links in plain text.
* CamelCase links::             Activating CamelCase words as links

Richard M. Stallman's avatar
Richard M. Stallman committed
146 147 148
TODO items

* TODO basics::                 Marking and displaying TODO entries
149
* Progress logging::            Document your productivity
Richard M. Stallman's avatar
Richard M. Stallman committed
150
* TODO extensions::             Workflow and assignments
Carsten Dominik's avatar
Carsten Dominik committed
151
* Priorities::                  Some things are more important than others
Richard M. Stallman's avatar
Richard M. Stallman committed
152 153 154 155 156 157 158 159 160 161 162 163

Extended use of TODO keywords

* Workflow states::             From TODO to DONE in steps
* TODO types::                  I do this, Fred the rest
* Per file keywords::           Different files, different requirements

Timestamps

* Time stamps::                 Assigning a time to a tree entry
* Creating timestamps::         Commands which insert timestamps

164 165 166 167 168 169
Tags

* Tag inheritance::             Tags use the tree structure of the outline
* Setting tags::                How to assign tags to a headline
* Tag searches::                Searching for combinations of tags

170
Agenda Views
Richard M. Stallman's avatar
Richard M. Stallman committed
171

172 173
* Agenda files::                Files being searched for agenda information
* Agenda dispatcher::           Keyboard access to agenda views
174
* Weekly/Daily agenda::         The calendar page with current tasks
175
* Global TODO list::            All unfinished action items
176
* Matching headline tags::      Structured information with fine-tuned search
Carsten Dominik's avatar
Carsten Dominik committed
177
* Timeline::                    Time-sorted view for single file
Richard M. Stallman's avatar
Richard M. Stallman committed
178 179
* Agenda commands::             Remote editing of org trees

180
The weekly/daily agenda
Richard M. Stallman's avatar
Richard M. Stallman committed
181

182 183 184 185
* Categories::                  Not all tasks are equal
* Time-of-day specifications::  How the agenda knows the time
* Calendar/Diary integration::  Integrating Anniversaries and more
* Sorting of agenda items::     The order of things
Richard M. Stallman's avatar
Richard M. Stallman committed
186 187 188

Exporting

189 190
* ASCII export::                Exporting to plain ASCII
* HTML export::                 Exporting to HTML
191
* XOXO export::                 Exporting to XOXO
192 193
* iCalendar export::            Exporting in iCalendar format
* Text interpretation::         How the exporter looks at the file
194

195
Text interpretation by the exporter
196

197 198 199
* Comment lines::               Some lines will not be exported
* Enhancing text::              Subscripts, symbols and more
* Export options::              How to influence the export settings
Richard M. Stallman's avatar
Richard M. Stallman committed
200

201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221
Publishing

* Configuration::               Defining projects
* Sample configuration::        Example projects
* Triggering publication::      Publication commands

Configuration

* Project alist::               The central configuration variable
* File sources and destinations::  From here to there
* Selecting files::             What files are part of the project?
* Publishing action::           Setting the function doing the publishing
* Publishing options::          Tweaking HTML export
* Publishing links::            Which links keep working after publishing?
* Project page index::          Publishing a list of project files

Sample configuration

* Simple example::              One-component publishing
* Complex example::             A multi-component publishing example

Richard M. Stallman's avatar
Richard M. Stallman committed
222 223 224 225
Miscellaneous

* Completion::                  M-TAB knows what you need
* Customization::               Adapting Org-mode to your taste
226 227
* Summary of in-buffer settings::  Using special lines to set options
* The very busy C-c C-c key::   When in doubt, press C-c C-c
228 229
* Clean view::                  Getting rid of leading stars in the outline
* TTY keys::                    Using Org-mode on a tty
Carsten Dominik's avatar
Carsten Dominik committed
230
* FAQ::                         Frequently asked questions
Richard M. Stallman's avatar
Richard M. Stallman committed
231 232
* Interaction::                 Other Emacs packages
* Bugs::                        Things which do not work perfectly
Carsten Dominik's avatar
Carsten Dominik committed
233
* Acknowledgments::             These people provided feedback and more
Richard M. Stallman's avatar
Richard M. Stallman committed
234

235 236 237 238 239 240
Interaction with other packages

* Extensions::                  Third-party extensions for Org-mode
* Cooperation::                 Packages Org-mode cooperates with
* Conflicts::                   Packages that lead to conflicts

Richard M. Stallman's avatar
Richard M. Stallman committed
241 242 243
@end detailmenu
@end menu

244
@node Introduction, Document structure, Top, Top
Richard M. Stallman's avatar
Richard M. Stallman committed
245 246 247 248 249
@chapter Introduction
@cindex introduction

@menu
* Summary::                     Brief summary of what Org-mode does
250
* Installation and activation::  How to install Org-mode
Carsten Dominik's avatar
Carsten Dominik committed
251
* Feedback::                    Bug reports, ideas, patches etc.
Richard M. Stallman's avatar
Richard M. Stallman committed
252 253
@end menu

254
@node Summary, Installation and activation, Introduction, Introduction
Richard M. Stallman's avatar
Richard M. Stallman committed
255 256 257 258 259 260 261 262 263 264 265 266
@section Summary
@cindex summary

Org-mode is a mode for keeping notes, maintaining ToDo lists, and doing
project planning with a fast and effective plain-text system.

Org-mode develops organizational tasks around NOTES files that contain
information about projects as plain text.  Org-mode is implemented on
top of outline-mode, which makes it possible to keep the content of
large files well structured.  Visibility cycling and structure editing
help to work with the tree.  Tables are easily created with a built-in
table editor.  Org-mode supports ToDo items, deadlines, time stamps,
267 268
and scheduling.  It dynamically compiles entries into an agenda that
utilizes and smoothly integrates much of the Emacs calendar and diary.
Carsten Dominik's avatar
Carsten Dominik committed
269
Plain text URL-like links connect to websites, emails, Usenet
Richard M. Stallman's avatar
Richard M. Stallman committed
270 271
messages, BBDB entries, and any files related to the projects.  For
printing and sharing of notes, an Org-mode file can be exported as a
272
structured ASCII file, as HTML, or (todo and agenda items only) as an
273 274
iCalendar file.  It can also serve as a publishing tool for a set of
linked webpages.
Richard M. Stallman's avatar
Richard M. Stallman committed
275

276
Org-mode keeps simple things simple.  When first fired up, it should
277 278 279
feel like a straightforward, easy to use outliner.  Complexity is not
imposed, but a large amount of functionality is available when you need
it.  Org-mode can be used on different levels and in different ways, for
Carsten Dominik's avatar
Carsten Dominik committed
280
example:
Richard M. Stallman's avatar
Richard M. Stallman committed
281 282 283

@example
@r{@bullet{} as an outline extension with visibility cycling and structure editing}
284
@r{@bullet{} as an ASCII system and table editor for taking structured notes}
285
@r{@bullet{} as an ASCII table editor with spreadsheet-like capabilities}
Richard M. Stallman's avatar
Richard M. Stallman committed
286 287
@r{@bullet{} as a TODO list editor}
@r{@bullet{} as a full agenda and planner with deadlines and work scheduling}
288 289
@r{@bullet{} as a simple hypertext system, with HTML export}
@r{@bullet{} as a publishing tool to create a set of interlinked webpages}
Richard M. Stallman's avatar
Richard M. Stallman committed
290 291
@end example

292 293
The Org-mode table editor can be integrated into any major mode by
activating the minor Orgtbl-mode.
Carsten Dominik's avatar
Carsten Dominik committed
294 295 296 297 298 299 300 301

There is a website for Org-mode which provides links to the newest
version of Org-mode, as well as additional information, screen shots
and example files.  This page is located at
@uref{http://www.astro.uva.nl/~dominik/Tools/org/}.

@page

302
@node Installation and activation, Feedback, Summary, Introduction
Carsten Dominik's avatar
Carsten Dominik committed
303
@section Installation and Activation
Richard M. Stallman's avatar
Richard M. Stallman committed
304 305 306 307 308
@cindex installation
@cindex autoload
@cindex global keybindings
@cindex keybindings, global

Carsten Dominik's avatar
Carsten Dominik committed
309 310
If Org-mode is part of the Emacs distribution or an XEmacs package,
you only need to copy the following lines to your @file{.emacs} file.
Carsten Dominik's avatar
Carsten Dominik committed
311 312 313
The last two lines define @emph{global} keys for the commands
@command{org-store-link} and @command{org-agenda} - please
choose suitable keys yourself.
Richard M. Stallman's avatar
Richard M. Stallman committed
314

Carsten Dominik's avatar
Carsten Dominik committed
315 316 317 318 319 320
@lisp
;; The following lines are always needed.  Choose your own keys.
(add-to-list 'auto-mode-alist '("\\.org$" . org-mode))
(define-key global-map "\C-cl" 'org-store-link)
(define-key global-map "\C-ca" 'org-agenda)
@end lisp
Richard M. Stallman's avatar
Richard M. Stallman committed
321

322 323 324 325 326 327 328 329 330 331 332
Furthermore, you must activate @code{font-lock-mode} in org-mode
buffers, because significant functionality depends on font-locking being
active.  You can do this with either one of the following two lines:
@lisp
(global-font-lock-mode 1)                     ; for all buffers
(add-hook 'org-mode-hook 'turn-on-font-lock)  ; org-mode buffers only
@end lisp

If you have downloaded Org-mode from the Web, you must take additional
action:  Byte-compile @file{org.el} and @file{org-publish.el} and put
them together with @file{org-install.el} on your load path.  Then add to
Carsten Dominik's avatar
Carsten Dominik committed
333
@file{.emacs}:
Richard M. Stallman's avatar
Richard M. Stallman committed
334 335

@lisp
336 337
;; This line only if org-mode is not part of the X/Emacs distribution.
(require 'org-install)
Richard M. Stallman's avatar
Richard M. Stallman committed
338 339 340
@end lisp

@cindex org-mode, turning on
Carsten Dominik's avatar
Carsten Dominik committed
341 342 343
With this setup, all files with extension @samp{.org} will be put into
Org-mode.  As an alternative, make the first line of a file look like
this:
Richard M. Stallman's avatar
Richard M. Stallman committed
344 345 346 347 348 349

@example
MY PROJECTS    -*- mode: org; -*-
@end example

@noindent which will select Org-mode for this buffer no matter what
Carsten Dominik's avatar
Carsten Dominik committed
350
the file's name is.  See also the variable
351
@code{org-insert-mode-line-in-empty-file}.
Richard M. Stallman's avatar
Richard M. Stallman committed
352

353
@node Feedback,  , Installation and activation, Introduction
Carsten Dominik's avatar
Carsten Dominik committed
354 355 356 357 358 359 360
@section Feedback
@cindex feedback
@cindex bug reports
@cindex maintainer
@cindex author

If you find problems with Org-mode, or if you have questions, remarks,
361
or ideas about it, please contact the maintainer @value{MAINTAINER} at
Carsten Dominik's avatar
Carsten Dominik committed
362 363 364 365
@value{MAINTAINEREMAIL}.

For bug reports, please provide as much information as possible,
including the version information of Emacs (@kbd{C-h v emacs-version
366 367
@key{RET}}) and Org-mode (@kbd{C-h v org-version @key{RET}}), as well as
the Org-mode related setup in @file{.emacs}.  If an error occurs, a
Carsten Dominik's avatar
Carsten Dominik committed
368 369
traceback can be very useful.  Often a small example file helps, along
with clear information about:
370

Carsten Dominik's avatar
Carsten Dominik committed
371 372 373 374 375
@enumerate
@item What exactly did you do?
@item What did you expect to happen?
@item What happened instead?
@end enumerate
376
@noindent Thank you for helping to improve this mode.
Carsten Dominik's avatar
Carsten Dominik committed
377

378
@node Document structure, Tables, Introduction, Top
Richard M. Stallman's avatar
Richard M. Stallman committed
379 380 381 382 383 384 385 386 387 388
@chapter Document Structure
@cindex document structure
@cindex structure of document

Org-mode is based on outline mode and provides flexible commands to
edit the structure of the document.

@menu
* Outlines::                    Org-mode is based on outline-mode
* Headlines::                   How to typeset org-tree headlines
Carsten Dominik's avatar
Carsten Dominik committed
389
* Visibility cycling::          Show and hide, much simplified
Richard M. Stallman's avatar
Richard M. Stallman committed
390 391
* Motion::                      Jumping to other headlines
* Structure editing::           Changing sequence and level of headlines
Carsten Dominik's avatar
Carsten Dominik committed
392
* Archiving::                   Move done task trees to a different place
Richard M. Stallman's avatar
Richard M. Stallman committed
393
* Sparse trees::                Matches embedded in context
394
* Plain lists::                 Editing hand-formatted lists
Richard M. Stallman's avatar
Richard M. Stallman committed
395 396
@end menu

397
@node Outlines, Headlines, Document structure, Document structure
Richard M. Stallman's avatar
Richard M. Stallman committed
398 399 400 401 402 403 404 405 406 407 408 409 410 411
@section Outlines
@cindex outlines
@cindex outline-mode

Org-mode is implemented on top of outline-mode.  Outlines allow to
organize a document in a hierarchical structure, which (at least for
me) is the best representation of notes and thoughts.  Overview over
this structure is achieved by folding (hiding) large parts of the
document to show only the general document structure and the parts
currently being worked on.  Org-mode greatly simplifies the use of
outlines by compressing the entire show/hide functionality into a
single command @command{org-cycle}, which is bound to the @key{TAB}
key.

412
@node Headlines, Visibility cycling, Outlines, Document structure
Richard M. Stallman's avatar
Richard M. Stallman committed
413 414 415 416
@section Headlines
@cindex headlines
@cindex outline tree

417
Headlines define the structure of an outline tree.  The headlines in
418
Org-mode start with one or more stars, on the left margin.  For
419
example:
Richard M. Stallman's avatar
Richard M. Stallman committed
420 421 422 423 424 425 426 427 428 429

@example
* Top level headline
** Second level
*** 3rd level
    some text
*** 3rd level
    more text
* Another top level headline
@end example
430

431 432 433
@noindent Some people find the many stars too noisy and would prefer an
outline that has whitespace followed by a single star as headline
starters.  @ref{Clean view} describes a setup to realize this.
Richard M. Stallman's avatar
Richard M. Stallman committed
434

435
@node Visibility cycling, Motion, Headlines, Document structure
Richard M. Stallman's avatar
Richard M. Stallman committed
436
@section Visibility cycling
Carsten Dominik's avatar
Carsten Dominik committed
437
@cindex cycling, visibility
Richard M. Stallman's avatar
Richard M. Stallman committed
438 439
@cindex visibility cycling
@cindex trees, visibility
Carsten Dominik's avatar
Carsten Dominik committed
440 441
@cindex show hidden text
@cindex hide text
Richard M. Stallman's avatar
Richard M. Stallman committed
442 443

Outlines make it possible to hide parts of the text in the buffer.
444 445
Org-mode uses just two commands, bound to @key{TAB} and
@kbd{S-@key{TAB}} to change the visibility in the buffer.
Richard M. Stallman's avatar
Richard M. Stallman committed
446 447

@cindex subtree visibility states
448
@cindex subtree cycling
Richard M. Stallman's avatar
Richard M. Stallman committed
449 450 451 452 453 454
@cindex folded, subtree visibility state
@cindex children, subtree visibility state
@cindex subtree, subtree visibility state
@table @kbd
@kindex @key{TAB}
@item @key{TAB}
455
@emph{Subtree cycling}: Rotate current subtree between the states
456

Richard M. Stallman's avatar
Richard M. Stallman committed
457 458 459 460
@example
,-> FOLDED -> CHILDREN -> SUBTREE --.
'-----------------------------------'
@end example
461

462 463 464 465 466 467
The cursor must be on a headline for this to work@footnote{see, however,
the option @code{org-cycle-emulate-tab}.}.  When the cursor is at the
beginning of the buffer and the first line is not a headline, then
@key{TAB} actually runs global cycling (see below)@footnote{see the
option @code{org-cycle-global-at-bob}.}.  Also when called with a prefix
argument (@kbd{C-u @key{TAB}}), global cycling is invoked.
Richard M. Stallman's avatar
Richard M. Stallman committed
468 469

@cindex global visibility states
470
@cindex global cycling
Richard M. Stallman's avatar
Richard M. Stallman committed
471 472 473 474 475
@cindex overview, global visibility state
@cindex contents, global visibility state
@cindex show all, global visibility state
@kindex S-@key{TAB}
@item S-@key{TAB}
476 477
@itemx C-u @key{TAB}
@emph{Global cycling}: Rotate the entire buffer between the states
478

Richard M. Stallman's avatar
Richard M. Stallman committed
479 480 481 482
@example
,-> OVERVIEW -> CONTENTS -> SHOW ALL --.
'--------------------------------------'
@end example
483

Richard M. Stallman's avatar
Richard M. Stallman committed
484 485 486 487 488 489 490 491
Note that inside tables, @kbd{S-@key{TAB}} jumps to the previous field.

@cindex show all, command
@kindex C-c C-a
@item C-c C-a
Show all.
@end table

Carsten Dominik's avatar
Carsten Dominik committed
492
When Emacs first visits an Org-mode file, the global state is set to
493 494 495 496 497 498
OVERVIEW, i.e. only the top level headlines are visible.  This can be
configured through the variable @code{org-startup-folded}, or on a
per-file basis by adding one of the following lines anywhere in the
buffer:

@example
499
#+STARTUP: overview
Carsten Dominik's avatar
Carsten Dominik committed
500
#+STARTUP: content
501
#+STARTUP: showall
502 503
@end example

504
@node Motion, Structure editing, Visibility cycling, Document structure
Richard M. Stallman's avatar
Richard M. Stallman committed
505 506 507
@section Motion
@cindex motion, between headlines
@cindex jumping, to headlines
Carsten Dominik's avatar
Carsten Dominik committed
508
@cindex headline navigation
Richard M. Stallman's avatar
Richard M. Stallman committed
509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536
The following commands jump to other headlines in the buffer.

@table @kbd
@kindex C-c C-n
@item C-c C-n
Next heading.
@kindex C-c C-p
@item C-c C-p
Previous heading.
@kindex C-c C-f
@item C-c C-f
Next heading same level.
@kindex C-c C-b
@item C-c C-b
Previous heading same level.
@kindex C-c C-u
@item C-c C-u
Backward to higher level heading.
@kindex C-c C-j
@item C-c C-j
Jump to a different place without changing the current outline
visibility.  Shows the document structure in a temporary buffer, where
you can use visibility cycling (@key{TAB}) to find your destination.
After pressing @key{RET}, the cursor moves to the selected location in
the original buffer, and the headings hierarchy above it is made
visible.
@end table

537
@node Structure editing, Archiving, Motion, Document structure
Richard M. Stallman's avatar
Richard M. Stallman committed
538 539 540 541 542 543
@section Structure editing
@cindex structure editing
@cindex headline, promotion and demotion
@cindex promotion, of subtrees
@cindex demotion, of subtrees
@cindex subtree, cut and paste
Carsten Dominik's avatar
Carsten Dominik committed
544 545 546
@cindex pasting, of subtrees
@cindex cutting, of subtrees
@cindex copying, of subtrees
Carsten Dominik's avatar
Carsten Dominik committed
547
@cindex subtrees, cut and paste
Richard M. Stallman's avatar
Richard M. Stallman committed
548 549 550 551

@table @kbd
@kindex M-@key{RET}
@item M-@key{RET}
552
Insert new heading with same level as current.  If the cursor is in a
553 554 555 556 557
plain list item, a new item is created (@pxref{Plain lists}).  To force
creation of a new headline, use a prefix arg, or first press @key{RET}
to get to the beginning of the next line.  When this command is used in
the middle of a line, the line is split and the rest of the line becomes
the new headline.  If the command is used at the beginning of a
558
headline, the new headline is created before the current line.  If at
559 560
the beginning of any other line, the content of that line is made the
new heading.
Carsten Dominik's avatar
Carsten Dominik committed
561 562 563
@kindex M-S-@key{RET}
@item M-S-@key{RET}
Insert new TODO entry with same level as current heading.
Richard M. Stallman's avatar
Richard M. Stallman committed
564 565
@kindex M-@key{left}
@item M-@key{left}
566
Promote current heading by one level.
Richard M. Stallman's avatar
Richard M. Stallman committed
567 568
@kindex M-@key{right}
@item M-@key{right}
569
Demote current heading by one level.
Richard M. Stallman's avatar
Richard M. Stallman committed
570 571
@kindex M-S-@key{left}
@item M-S-@key{left}
572
Promote the current subtree by one level.
Richard M. Stallman's avatar
Richard M. Stallman committed
573 574
@kindex M-S-@key{right}
@item M-S-@key{right}
575
Demote the current subtree by one level.
Richard M. Stallman's avatar
Richard M. Stallman committed
576 577
@kindex M-S-@key{up}
@item M-S-@key{up}
578
Move subtree up (swap with previous subtree of same
579
level).
Richard M. Stallman's avatar
Richard M. Stallman committed
580 581
@kindex M-S-@key{down}
@item M-S-@key{down}
582
Move subtree down (swap with next subtree of same level).
Carsten Dominik's avatar
Carsten Dominik committed
583
@kindex C-c C-x C-w
584
@kindex C-c C-x C-k
Carsten Dominik's avatar
Carsten Dominik committed
585
@item C-c C-x C-w
586
@itemx C-c C-x C-k
Richard M. Stallman's avatar
Richard M. Stallman committed
587
Kill subtree, i.e. remove it from buffer but save in kill ring.
Carsten Dominik's avatar
Carsten Dominik committed
588 589
@kindex C-c C-x M-w
@item C-c C-x M-w
Richard M. Stallman's avatar
Richard M. Stallman committed
590
Copy subtree to kill ring.
Carsten Dominik's avatar
Carsten Dominik committed
591 592
@kindex C-c C-x C-y
@item C-c C-x C-y
Carsten Dominik's avatar
Carsten Dominik committed
593
Yank subtree from kill ring.  This does modify the level of the subtree to
Richard M. Stallman's avatar
Richard M. Stallman committed
594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609
make sure the tree fits in nicely at the yank position.  The yank
level can also be specified with a prefix arg, or by yanking after a
headline marker like @samp{****}.
@end table

@cindex region, active
@cindex active region
@cindex transient-mark-mode
When there is an active region (transient-mark-mode), promotion and
demotion work on all headlines in the region.  To select a region of
headlines, it is best to place both point and mark at the beginning of a
line, mark at the beginning of the first headline, and point at the line
just after the last headline to change.  Note that when the cursor is
inside a table (@pxref{Tables}), the Meta-Cursor keys have different
functionality.

610
@node Archiving, Sparse trees, Structure editing, Document structure
Carsten Dominik's avatar
Carsten Dominik committed
611 612
@section Archiving
@cindex archiving
613
@cindex filing subtrees
Carsten Dominik's avatar
Carsten Dominik committed
614

Carsten Dominik's avatar
Carsten Dominik committed
615 616
When a project represented by a (sub)tree is finished, you may want
to move the tree to an archive place, either in the same file under a
Carsten Dominik's avatar
Carsten Dominik committed
617 618
special top-level heading, or even to a different file.
@table @kbd
Carsten Dominik's avatar
Carsten Dominik committed
619
@kindex C-c $
Carsten Dominik's avatar
Carsten Dominik committed
620 621 622 623 624 625 626 627 628 629 630 631 632 633
@item @kbd{C-c $}
Archive the subtree starting at the cursor position to the location
given by @code{org-archive-location}.
@end table

@cindex archive locations
The default archive is a file in the same directory as the current
file, with the name derived by appending @file{_archive} to the
current file name.  For information and examples on how to change
this, see the documentation string of the variable
@code{org-archive-location}.  If you are also using the Org-mode
agenda, archiving to a different file is a good way to keep archived
trees from contributing agenda items.

634
@node Sparse trees, Plain lists, Archiving, Document structure
Richard M. Stallman's avatar
Richard M. Stallman committed
635 636 637 638 639 640 641 642 643 644
@section Sparse trees
@cindex sparse trees
@cindex trees, sparse
@cindex folding, sparse trees
@cindex occur, command

An important feature of Org-mode is the ability to construct
@emph{sparse trees} for selected information in an outline tree.  A
sparse tree means that the entire document is folded as much as
possible, but the selected information is made visible along with the
645 646
headline structure above it@footnote{See also the variables
@code{org-show-hierarchy-above} and
Carsten Dominik's avatar
Carsten Dominik committed
647
@code{org-show-following-heading}.}.  Just try it out and you will see
Richard M. Stallman's avatar
Richard M. Stallman committed
648 649 650 651 652 653 654 655 656 657 658 659 660
immediately how it works.

Org-mode contains several commands creating such trees.  The most
basic one is @command{org-occur}:

@table @kbd
@kindex C-c /
@item C-c /
Occur.  Prompts for a regexp and shows a sparse tree with all matches.
If the match is in a headline, the headline is made visible.  If the
match is in the body of an entry, headline and body are made visible.
In order to provide minimal context, also the full hierarchy of
headlines above the match is shown, as well as the headline following
661
the match.  Each match is also highlighted; the highlights disappear
662
when the buffer is changed with an editing command.
Richard M. Stallman's avatar
Richard M. Stallman committed
663
@end table
664 665 666 667 668
@noindent
For frequently used sparse trees of specific search strings, you can
use the variable @code{org-agenda-custom-commands} to define fast
keyboard access to specific sparse trees.  These commands will then be
accessible through the agenda dispatcher (@pxref{Agenda dispatcher}).
669 670
For example:

671 672 673 674
@lisp
(setq org-agenda-custom-commands
      '(("f" occur-tree "FIXME")))
@end lisp
675

676 677
@noindent will define the key @kbd{C-c a f} as a shortcut for creating
a sparse tree matching the string @samp{FIXME}.
Richard M. Stallman's avatar
Richard M. Stallman committed
678

679
Other commands use sparse trees as well.  For example @kbd{C-c
Richard M. Stallman's avatar
Richard M. Stallman committed
680 681
C-v} creates a sparse TODO tree (@pxref{TODO basics}).

682 683 684 685 686
@kindex C-c C-x v
@cindex printing sparse trees
@cindex visible text, printing
To print a sparse tree, you can use the Emacs command
@code{ps-print-buffer-with-faces} which does not print invisible parts
Carsten Dominik's avatar
Carsten Dominik committed
687
of the document @footnote{This does not work under XEmacs, because
Carsten Dominik's avatar
Carsten Dominik committed
688
XEmacs uses selective display for outlining, not text properties.}.
689 690
Or you can use the command @kbd{C-c C-x v} to export only the visible
part of the document and print the resulting file.
691

692

693 694
@node Plain lists,  , Sparse trees, Document structure
@section Plain lists
695 696
@cindex plain lists
@cindex lists, plain
Carsten Dominik's avatar
Carsten Dominik committed
697 698
@cindex lists, ordered
@cindex ordered lists
699

700 701
Headlines define both the structure of the Org-mode file, and also lists
(for example, TODO items (@pxref{TODO items}) should be created using
702
headline levels).  When taking notes, however, the plain text is
703 704 705 706
sometimes easier to read with hand-formatted lists.  Org-mode supports
editing such lists, and the HTML exporter (@pxref{Exporting}) does
parse and format them.

707 708 709 710 711
Org-mode knows ordered and unordered lists.  Unordered list items start
with @samp{-}, @samp{+}, or @samp{*}@footnote{When using @samp{*} as a
bullet, lines must be indented or they will be seen as top-level
headlines.  Also, when you are hiding leading stars to get a clean
outline view, plain list items starting with a star are visually
712
indistinguishable from true headlines.  In short: even though @samp{*}
713
is supported, it may be better not to use it for plain list items} as
714 715
bullets.  Ordered list items start with @samp{1.} or @samp{1)}.  Items
belonging to the same list must have the same indentation on the first
716
line.  In particular, if an ordered list reaches number @samp{10.}, then
717 718 719 720
the 2--digit numbers must be written left-aligned with the other numbers
in the list.  Indentation also determines the end of a list item.  It
ends before the next line that is indented like the bullet/number, or
less.  For example:
721 722

@example
Carsten Dominik's avatar
Carsten Dominik committed
723
@group
724
** Lord of the Rings
Carsten Dominik's avatar
Carsten Dominik committed
725
My favorite scenes are (in this order)
726
1. Eowyns fight with the witch king
727
   + this was already my favorite scene in the book
Carsten Dominik's avatar
Carsten Dominik committed
728 729
   + I really like Miranda Otto.
2. The attack of the Rohirrim
730
3. Peter Jackson being shot by Legolas
731
    - on DVD only
732
   He makes a really funny face when it happens.
Carsten Dominik's avatar
Carsten Dominik committed
733 734
But in the end, not individual scenes matter but the film as a whole.
@end group
735 736 737
@end example

Org-mode supports these lists by tuning filling and wrapping commands
738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753
to deal with them correctly.  

@cindex checkboxes
Every item in a plain list can be made a checkbox by starting it with
the string @samp{[ ]}.  The checkbox status can conveniently be toggled
with @kbd{C-c C-c}.

@example
* Stupid mistakes when distributing a new version
  - [ ] update also Emacs CVS
  - [X] forget to update index.html on the website
  - [X] leaving a `(debug)' form in the code
@end example

The following commands act on items when the cursor is in the first line
of an item (the line with the bullet or number).
754 755

@table @kbd
756 757 758 759
@kindex @key{TAB}
@item @key{TAB}
Items can be folded just like headline levels if you set the variable
@code{org-cycle-include-plain-lists}.  The level of an item is then
760 761
given by the indentation of the bullet/number.  Items are always
subordinate to real headlines, however; the hierarchies remain
762
completely separated.
763 764
@kindex M-@key{RET}
@item M-@key{RET}
765 766 767 768 769 770 771 772
Insert new item at current level.  With prefix arg, force a new heading
(@pxref{Structure editing}).  If this command is used in the middle of a
line, the line is @emph{split} and the rest of the line becomes the new
item.  If this command is executed in the @emph{whitespace before a bullet or
number}, the new item is created @emph{before} the current item.  If the
command is executed in the white space before the text that is part of
an item but does not contain the bullet, a bullet is added to the
current line.
773 774 775 776 777 778 779 780
@kindex M-S-@key{RET}
@item M-S-@key{RET}
Insert a new item with a checkbox.
@kindex S-@key{up}
@kindex S-@key{down}
@item S-@key{up}
@itemx S-@key{down}
Jump to the previous/next item in the current list.
781 782 783 784 785
@kindex M-S-@key{up}
@kindex M-S-@key{down}
@item M-S-@key{up}
@itemx M-S-@key{down}
Move the item including subitems up/down (swap with previous/next item
Carsten Dominik's avatar
Carsten Dominik committed
786
of same indentation).  If the list is ordered, renumbering is
787 788 789 790 791 792 793 794 795 796 797 798 799
automatic.
@kindex M-S-@key{left}
@kindex M-S-@key{right}
@item M-S-@key{left}
@itemx M-S-@key{right}
Decrease/increase the indentation of the item, including subitems.
Initially, the item tree is selected based on current indentation.
When these commands are executed several times in direct succession,
the initially selected region is used, even if the new indentation
would imply a different hierarchy.  To use the new hierarchy, break
the command chain with a cursor motion or so.
@kindex C-c C-c
@item C-c C-c
800 801 802
If there is a checkbox in the item line, toggle the state of the
checkbox.  Otherwise, if this is an ordered list, renumber the ordered
list at the cursor.
803 804
@end table

805
@node Tables, Hyperlinks, Document structure, Top
Richard M. Stallman's avatar
Richard M. Stallman committed
806 807
@chapter Tables
@cindex tables
Carsten Dominik's avatar
Carsten Dominik committed
808
@cindex editing tables
Richard M. Stallman's avatar
Richard M. Stallman committed
809

Carsten Dominik's avatar
Carsten Dominik committed
810 811 812
Org-mode has a very fast and intuitive table editor built-in.
Spreadsheet-like calculations are supported in connection with the
Emacs @file{calc} package.
Richard M. Stallman's avatar
Richard M. Stallman committed
813 814 815

@menu
* Built-in table editor::       Simple tables
816
* Narrow columns::              Stop wasting space in tables   
Carsten Dominik's avatar
Carsten Dominik committed
817
* Table calculations::          Compute a field from other fields
Carsten Dominik's avatar
Carsten Dominik committed
818
* orgtbl-mode::                 The table editor as minor mode
Carsten Dominik's avatar
Carsten Dominik committed
819
* table.el::                    Complex tables
Richard M. Stallman's avatar
Richard M. Stallman committed
820 821
@end menu

822
@node Built-in table editor, Narrow columns, Tables, Tables
Richard M. Stallman's avatar
Richard M. Stallman committed
823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838
@section The built-in table editor
@cindex table editor, builtin

Org-mode makes it easy to format tables in plain ASCII.  Any line with
@samp{|} as the first non-white character is considered part of a
table.  @samp{|} is also the column separator.  A table might look
like this:

@example
| Name  | Phone | Age |
|-------+-------+-----|
| Peter |  1234 |  17 |
| Anna  |  4321 |  25 |
@end example

A table is re-aligned automatically each time you press @key{TAB} or
Carsten Dominik's avatar
Carsten Dominik committed
839 840 841 842 843 844 845
@key{RET} or @kbd{C-c C-c} inside the table.  @key{TAB} also moves to
the next field (@key{RET} to the next row) and creates new table rows
at the end of the table or before horizontal lines.  The indentation
of the table is set by the first line.  Any line starting with
@samp{|-} is considered as a horizontal separator line and will be
expanded on the next re-align to span the whole table width.  So, to
create the above table, you would only type
Richard M. Stallman's avatar
Richard M. Stallman committed
846 847 848 849 850

@example
|Name|Phone|Age
|-
@end example
851

Richard M. Stallman's avatar
Richard M. Stallman committed
852 853 854
@noindent and then press @key{TAB} to align the table and start filling in
fields.

Carsten Dominik's avatar
Carsten Dominik committed
855 856 857 858 859 860 861 862 863
When typing text into a field, Org-mode treats @key{DEL},
@key{Backspace}, and all character keys in a special way, so that
inserting and deleting avoids shifting other fields.  Also, when
typing @emph{immediately after the cursor was moved into a new field
with @kbd{@key{TAB}}, @kbd{S-@key{TAB}} or @kbd{@key{RET}}}, the
field is automatically made blank.  If this behavior is too
unpredictable for you, configure the variables
@code{org-enable-table-editor} and @code{org-table-auto-blank-field}.

Richard M. Stallman's avatar
Richard M. Stallman committed
864 865
@table @kbd
@tsubheading{Creation and conversion}
866 867 868 869 870
@kindex C-c |
@item C-c |
Convert the active region to table. If every line contains at least one
TAB character, the function assumes that the material is tab separated.
If not, lines are split at whitespace into fields.  You can use a prefix
871 872
argument to indicate the minimum number of consecutive spaces required
to identify a field separator (default: just one).@* 
873
If there is no active region, this command creates an empty Org-mode
874
table.  But it's easier just to start typing, like
875
@kbd{|Name|Phone|Age @key{RET} |- @key{TAB}}.
Richard M. Stallman's avatar
Richard M. Stallman committed
876 877 878 879 880 881 882 883 884 885 886 887 888

@tsubheading{Re-aligning and field motion}
@kindex C-c C-c
@item C-c C-c
Re-align the table without moving the cursor.

@kindex @key{TAB}
@item @key{TAB}
Re-align the table, move to the next field.  Creates a new row if
necessary.

@kindex S-@key{TAB}
@item S-@key{TAB}
Carsten Dominik's avatar
Carsten Dominik committed
889
Re-align, move to previous field.
Richard M. Stallman's avatar
Richard M. Stallman committed
890 891 892 893 894 895 896 897 898 899 900 901

@kindex @key{RET}
@item @key{RET}
Re-align the table and move down to next row.  Creates a new row if
necessary.  At the beginning or end of a line, @key{RET} still does
NEWLINE, so it can be used to split a table.

@tsubheading{Column and row editing}
@kindex M-@key{left}
@kindex M-@key{right}
@item M-@key{left}
@itemx M-@key{right}
902
Move the current column left/right.
Richard M. Stallman's avatar
Richard M. Stallman committed
903 904 905 906 907 908 909 910 911 912 913 914 915

@kindex M-S-@key{left}
@item M-S-@key{left}
Kill the current column.

@kindex M-S-@key{right}
@item M-S-@key{right}
Insert a new column to the left of the cursor position.

@kindex M-@key{up}
@kindex M-@key{down}
@item M-@key{up}
@itemx M-@key{down}
916
Move the current row up/down.
Richard M. Stallman's avatar
Richard M. Stallman committed
917 918 919 920 921 922 923 924 925 926 927

@kindex M-S-@key{up}
@item M-S-@key{up}
Kill the current row or horizontal line.

@kindex M-S-@key{down}
@item M-S-@key{down}
Insert a new row above (with arg: below) the current row.

@kindex C-c -
@item C-c -
Carsten Dominik's avatar
Carsten Dominik committed
928 929
Insert a horizontal line below current row. With prefix arg, the line
is created above the current line.
Richard M. Stallman's avatar
Richard M. Stallman committed
930

931 932 933 934 935
@kindex C-c ^
@item C-c ^
Sort the table lines in the region.  Point and mark must be in the first
and last line to be included, and must be in the column that should be
used for sorting.  The command prompts for numerical versus
936
alphanumerical sorting.
937

Richard M. Stallman's avatar
Richard M. Stallman committed
938
@tsubheading{Regions}
Carsten Dominik's avatar
Carsten Dominik committed
939 940
@kindex C-c C-x M-w
@item C-c C-x M-w
Carsten Dominik's avatar
Carsten Dominik committed
941
Copy a rectangular region from a table to a special clipboard.  Point
Richard M. Stallman's avatar
Richard M. Stallman committed
942 943
and mark determine edge fields of the rectangle.  The process ignores
horizontal separator lines.
Carsten Dominik's avatar
Carsten Dominik committed
944 945
@kindex C-c C-x C-w
@item C-c C-x C-w
Carsten Dominik's avatar
Carsten Dominik committed
946 947
Copy a rectangular region from a table to a special clipboard, and
blank all fields in the rectangle.  So this is the ``cut'' operation.
Carsten Dominik's avatar
Carsten Dominik committed
948 949
@kindex C-c C-x C-y
@item C-c C-x C-y
950
Paste a rectangular region into a table.
Richard M. Stallman's avatar
Richard M. Stallman committed
951 952 953 954 955 956 957 958 959 960 961 962 963
The upper right corner ends up in the current field.  All involved fields
will be overwritten.  If the rectangle does not fit into the present table,
the table is enlarged as needed.  The process ignores horizontal separator
lines.
@kindex C-c C-q
@item C-c C-q
Wrap several fields in a column like a paragraph.  If there is an active
region, and both point and mark are in the same column, the text in the
column is wrapped to minimum width for the given number of lines.  A
prefix ARG may be used to change the number of desired lines.  If there
is no region, the current field is split at the cursor position and the
text fragment to the right of the cursor is prepended to the field one
line down. If there is no region, but you specify a prefix ARG, the
964
current field is made blank, and the content is appended to the field
Richard M. Stallman's avatar
Richard M. Stallman committed
965 966 967
above.

@tsubheading{Calculations}
Carsten Dominik's avatar
Carsten Dominik committed
968 969 970 971
@cindex formula, in tables
@cindex calculations, in tables
@kindex C-c =
@item C-c =
Carsten Dominik's avatar
Carsten Dominik committed
972 973 974 975 976 977 978 979 980 981 982 983 984
Install a new formula for the current column and replace current field
with the result of the formula.

@kindex C-u C-c =
@item C-u C-c =
Install a new formula for the current field, which must be a named
field.  Evaluate the formula and replace the field content with the
result.

@kindex C-c '
@item C-c '
Edit all formulas associated with the current table in a separate
buffer.
Carsten Dominik's avatar
Carsten Dominik committed
985 986 987 988 989 990 991 992 993 994

@kindex C-c *
@item C-c *
Recalculate the current row by applying the stored formulas from left
to right.  When called with a @kbd{C-u} prefix, recalculate the
entire table, starting with the first non-header line (i.e. below the
first horizontal separator line).  For details, see @ref{Table calculations}.

@kindex C-#
@item C-#
Carsten Dominik's avatar
Carsten Dominik committed
995
Rotate the calculation mark in first column through the states
Carsten Dominik's avatar
Carsten Dominik committed
996
@samp{}, @samp{#}, @samp{*}, @samp{!}, @samp{$}.  For the meaning of
Carsten Dominik's avatar
Carsten Dominik committed
997
these marks see @ref{Advanced features}.  When there is an active
Carsten Dominik's avatar
Carsten Dominik committed
998 999
region, change all marks in the region.

Richard M. Stallman's avatar
Richard M. Stallman committed
1000 1001 1002
@kindex C-c ?
@item C-c ?
Which table column is the cursor in?  Displays number >0 in echo
1003
area.
Richard M. Stallman's avatar
Richard M. Stallman committed
1004 1005 1006 1007 1008 1009 1010

@cindex region, active
@cindex active region
@cindex transient-mark-mode
@kindex C-c +
@item C-c +
Sum the numbers in the current column, or in the rectangle defined by
Carsten Dominik's avatar
Carsten Dominik committed
1011
the active region.  The result is shown in the echo area and can
Richard M. Stallman's avatar
Richard M. Stallman committed
1012 1013
be inserted with @kbd{C-y}.

1014 1015
@kindex S-@key{RET}
@item S-@key{RET}
1016 1017 1018 1019
When current field is empty, copy from first non-empty field above.
When not empty, copy current field down to next row and move cursor
along with it.  Depending on the variable
@code{org-table-copy-increment}, integer field values will be
Carsten Dominik's avatar
Carsten Dominik committed
1020
incremented during copy.  This key is also used by CUA-mode
1021
(@pxref{Cooperation}).
1022

Richard M. Stallman's avatar
Richard M. Stallman committed
1023
@tsubheading{Miscellaneous}
1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034
@kindex C-c `
@item C-c `
Edit the current field in a separate window.  This is useful for fields
that are not fully visible (@pxref{Narrow columns}).  When called with a
@kbd{C-u} prefix, just make the full field visible, so that it can be
edited in place.

@kindex C-c @key{TAB}
@item C-c @key{TAB}
This is an alias for @kbd{C-u C-c `} to make the current field fully
visible.
Richard M. Stallman's avatar
Richard M. Stallman committed
1035 1036