Carsten Dominik 17 سال پیش
والد
کامیت
6a9c670d81
6فایلهای تغییر یافته به همراه562 افزوده شده و 371 حذف شده
  1. 300 247
      org
  2. 103 11
      org.el
  3. BIN
      org.pdf
  4. 141 100
      org.texi
  5. BIN
      orgcard.pdf
  6. 18 13
      orgcard.tex

+ 300 - 247
org

@@ -5,7 +5,7 @@ START-INFO-DIR-ENTRY
 * Org Mode: (org).	outline-based notes management and organizer
 END-INFO-DIR-ENTRY
 
-   This manual is for Org-mode (version 4.44).
+   This manual is for Org-mode (version 4.45).
 
    Copyright (C) 2004, 2005, 2006 Free Software Foundation
 
@@ -27,7 +27,7 @@ File: org,  Node: Top,  Next: Introduction,  Prev: (dir),  Up: (dir)
 Org Mode Manual
 ***************
 
-This manual is for Org-mode (version 4.44).
+This manual is for Org-mode (version 4.45).
 
    Copyright (C) 2004, 2005, 2006 Free Software Foundation
 
@@ -80,8 +80,7 @@ Document Structure
 * Structure editing::           Changing sequence and level of headlines
 * Archiving::                   Move done task trees to a different place
 * Sparse trees::                Matches embedded in context
-* Plain lists::                 Editing hand-formatted lists
-* Checkboxes::                  Easily checking off things.
+* Plain lists::                 Additional structure within an entry
 
 Archiving
 
@@ -126,6 +125,8 @@ TODO items
 * TODO basics::                 Marking and displaying TODO entries
 * TODO extensions::             Workflow and assignments
 * Priorities::                  Some things are more important than others
+* Breaking down tasks::         Splitting a task into managable pieces
+* Checkboxes::                  Tick-off lists
 
 Extended use of TODO keywords
 
@@ -403,8 +404,7 @@ edit the structure of the document.
 * Structure editing::           Changing sequence and level of headlines
 * Archiving::                   Move done task trees to a different place
 * Sparse trees::                Matches embedded in context
-* Plain lists::                 Editing hand-formatted lists
-* Checkboxes::                  Easily checking off things.
+* Plain lists::                 Additional structure within an entry
 
 
 File: org,  Node: Outlines,  Next: Headlines,  Prev: Document structure,  Up: Document structure
@@ -607,9 +607,10 @@ File: org,  Node: ARCHIVE tag,  Next: Moving subtrees,  Prev: Archiving,  Up: Ar
 A headline that is marked with the ARCHIVE tag (*note Tags::) stays at
 its location in the outline tree, but behaves in the following way:
    - It does not open when you attempt to do so with a visibility
-     cycling command (*note Visibility cycling::).  You can still open
-     it with a normal outline command like `show-all'.  Or you can
-     modify the option `org-cycle-open-archived-trees'.
+     cycling command (*note Visibility cycling::).  You can force
+     cycling archived subtrees with `C-<TAB>', or by setting the option
+     `org-cycle-open-archived-trees'.  Also normal outline commands like
+     `show-all' will open archived subtrees.
 
    - During sparse tree construction (*note Sparse trees::), matches in
      archived subtrees are not exposed, unless you configure the option
@@ -623,7 +624,7 @@ its location in the outline tree, but behaves in the following way:
      headline is.  Configure the details using the variable
      `org-export-with-archived-trees'.
 
-   The following commands allow to set or clear the ARCHIVE tag:
+   The following commands help managing the ARCHIVE tag:
 
 `C-c C-x C-a'
      Toggle the ARCHIVE tag for the current headline.  When the tag is
@@ -635,7 +636,10 @@ its location in the outline tree, but behaves in the following way:
      archived.  To do this, each subtree is checked for open TODO
      entries.  If none are found, the command offers to set the ARCHIVE
      tag for the child.  If the cursor is _not_ on a headline when this
-     command is invoked, the level 1 trees will be checked.
+     command is invoked, the level 1 trees will be checked.  
+
+`C-TAB'
+     Cycle a tree even if it is tagged with ARCHIVE.
 
 
 File: org,  Node: Moving subtrees,  Prev: ARCHIVE tag,  Up: Archiving
@@ -716,17 +720,15 @@ only the visible part of the document and print the resulting file.
 display for outlining, not text properties.
 
 
-File: org,  Node: Plain lists,  Next: Checkboxes,  Prev: Sparse trees,  Up: Document structure
+File: org,  Node: Plain lists,  Prev: Sparse trees,  Up: Document structure
 
 2.8 Plain lists
 ===============
 
-Headlines define both the structure of the Org-mode file, and also lists
-(for example, TODO items (*note TODO items::) should be created using
-headline levels).  When taking notes, however, the plain text is
-sometimes easier to read with hand-formatted lists.  Org-mode supports
-editing such lists, and the HTML exporter (*note Exporting::) does
-parse and format them.
+Within an entry of the outline tree, hand-formatted lists can provide
+additional structure.  They also provide a way to create lists of
+checkboxes (*note Checkboxes::).  Org-mode supports editing such lists,
+and the HTML exporter (*note Exporting::) does parse and format them.
 
    Org-mode knows ordered and unordered lists.  Unordered list items
 start with `-', `+', or `*'(1) as bullets.  Ordered list items start
@@ -738,15 +740,15 @@ determines the end of a list item.  It ends before the next line that
 is indented like the bullet/number, or less.  For example:
 
      ** Lord of the Rings
-     My favorite scenes are (in this order)
-     1. Eowyns fight with the witch king
-        + this was already my favorite scene in the book
-        + I really like Miranda Otto.
-     2. The attack of the Rohirrim
-     3. Peter Jackson being shot by Legolas
-         - on DVD only
-        He makes a really funny face when it happens.
-     But in the end, not individual scenes matter but the film as a whole.
+        My favorite scenes are (in this order)
+        1. The attack of the Rohirrim
+        2. Eowyns fight with the witch king
+           + this was already my favorite scene in the book
+           + I really like Miranda Otto.
+        3. Peter Jackson being shot by Legolas
+            - on DVD only
+           He makes a really funny face when it happens.
+        But in the end, not individual scenes matter but the film as a whole.
 
    Org-mode supports these lists by tuning filling and wrapping
 commands to deal with them correctly(2).
@@ -812,48 +814,6 @@ XEmacs, you should use Kyle E. Jones' `filladapt.el'.  To turn is on,
 put into `.emacs':
      (require 'filladapt)
 
-
-File: org,  Node: Checkboxes,  Prev: Plain lists,  Up: Document structure
-
-2.9 Checkboxes
-==============
-
-Every item in a plain list (ordered and unordered) can be made a
-checkbox by starting it with the string `[ ]'.  This feature is similar
-to TODO items (*note TODO items::), but more lightweight.  Checkboxes
-are not included into the global TODO list, so they are often great to
-split a task into a number of simple steps.  Or you can use them in a
-shopping list to select the items you need to buy.  To toggle a
-checkbox, use `C-c C-c', or try Piotr Zielinski's `org-mouse.el'.  Here
-is an example of a checkbox list.
-
-     * Avoid 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
-
-The following commands work with checkboxes:
-
-`C-c C-c'
-     Toggle checkbox at point.  
-
-`C-c C-x C-b'
-     Toggle checkbox at point.
-        - If there is an active region, toggle the first checkbox in
-          the region and set all remaining boxes to the same status as
-          the first.  If you want to toggle all boxes in the region
-          independently, use a prefix argument.
-
-        - If the cursor is in a headline, toggle checkboxes in the
-          region between this headline and the next.  This does _not_
-          act on the entire subtree, just the current entry.
-
-        - If no active region, just toggle the checkbox at point.
-     
-`M-S-<RET>'
-     Insert a new item with a checkbox.  This works only if the cursor
-     is already in a plain list item (*note Plain lists::).
-
 
 File: org,  Node: Tables,  Next: Hyperlinks,  Prev: Document structure,  Up: Top
 
@@ -1898,6 +1858,8 @@ overview over all things you have to do.
 * TODO basics::                 Marking and displaying TODO entries
 * TODO extensions::             Workflow and assignments
 * Priorities::                  Some things are more important than others
+* Breaking down tasks::         Splitting a task into managable pieces
+* Checkboxes::                  Tick-off lists
 
 
 File: org,  Node: TODO basics,  Next: TODO extensions,  Prev: TODO items,  Up: TODO items
@@ -2057,11 +2019,10 @@ a large group of people, you may split the names over several lines:
 
    (1) Org-mode parses these lines only when Org-mode is activated
 after visiting a file.  `C-c C-c' with the cursor in a line starting
-with `#+' is simply restarting Org-mode, making sure that these changes
-will be respected.
+with `#+' is simply restarting Org-mode for the current buffer.
 
 
-File: org,  Node: Priorities,  Prev: TODO extensions,  Up: TODO items
+File: org,  Node: Priorities,  Next: Breaking down tasks,  Prev: TODO extensions,  Up: TODO items
 
 5.3 Priorities
 ==============
@@ -2092,6 +2053,90 @@ agenda (*note Weekly/Daily agenda::).
      timestamps::).  Furthermore, these keys are also used by CUA-mode
      (*note Conflicts::).
 
+
+File: org,  Node: Breaking down tasks,  Next: Checkboxes,  Prev: Priorities,  Up: TODO items
+
+5.4 Breaking tasks down into subtasks
+=====================================
+
+It is often advisable to break down large tasks into smaller, managable
+subtasks.  You can do this by creating an outline tree below a TODO
+item, with detailed subtasks on the tree(1).  Another possibility is
+the use of checkboxes to ideantify (a hierarchy of) a large number of
+subtasks (*note Checkboxes::).
+
+   ---------- Footnotes ----------
+
+   (1) To keep subtasks out of the global TODO list, see the
+`org-agenda-todo-list-sublevels'.
+
+
+File: org,  Node: Checkboxes,  Prev: Breaking down tasks,  Up: TODO items
+
+5.5 Checkboxes
+==============
+
+Every item in a plain list (*note Plain lists::) can be made a checkbox
+by starting it with the string `[ ]'.  This feature is similar to TODO
+items (*note TODO items::), but more lightweight.  Checkboxes are not
+included into the global TODO list, so they are often great to split a
+task into a number of simple steps.  Or you can use them in a shopping
+list to select the items you need to buy.  To toggle a checkbox, use
+`C-c C-c', or try Piotr Zielinski's `org-mouse.el'.  Here is an example
+of a checkbox list.
+
+     * TODO Organize party [3/6]
+       - call people [1/3]
+         - [ ] Peter
+         - [X] Sarah
+         - [ ] Sam
+       - [X] order food
+       - [ ] think about what music to play
+       - [X] talk to the neighbors
+
+   The `[3/6]' and `[1/3]' in the first and second line are cookies
+indicating how many checkboxes are present in this entry, and how many
+of them have been checked off.  This can give you an idea on how many
+checkboxes remain, even without opening a folded entry.  The cookies
+can be placed into a headline or into (the first line of) a plain list
+item. Each cookie covers all checkboxes structurally below that
+headline/item.  You have to insert the cookie yourself by typing either
+`[/]' or `[%]'.  In the first case you get an `n out of m' result, in
+the second case you get information about the percentage of checkboxes
+checked (in the above example, this would be `[50%]' and `[33%],
+respectively'.
+
+The following commands work with checkboxes:
+
+`C-c C-c'
+     Toggle checkbox at point.  
+
+`C-c C-x C-b'
+     Toggle checkbox at point.
+        - If there is an active region, toggle the first checkbox in
+          the region and set all remaining boxes to the same status as
+          the first.  If you want to toggle all boxes in the region
+          independently, use a prefix argument.
+
+        - If the cursor is in a headline, toggle checkboxes in the
+          region between this headline and the next.  This does _not_
+          act on the entire subtree, just the current entry.
+
+        - If no active region, just toggle the checkbox at point.
+     
+`M-S-<RET>'
+     Insert a new item with a checkbox.  This works only if the cursor
+     is already in a plain list item (*note Plain lists::).  
+
+`C-c #'
+     Update the checkbox statistics in the current outline entry.  When
+     called with a `C-u' prefix, update the entire file.  Checkbox
+     statistic cookies are updated automatically if you toggle
+     checkboxes with `C-c C-c' and make new ones with `M-S-<RET>'.  If
+     you delete boxes or add/change them by hand, use this command to
+     get things back into synch.  Or simply toggle any checkbox twice
+     with `C-c C-c'.
+
 
 File: org,  Node: Timestamps,  Next: Tags,  Prev: TODO items,  Up: Top
 
@@ -3650,7 +3695,7 @@ tool.
 
    ---------- Footnotes ----------
 
-   (1) `org-publish.el' is not yet part of emacs, so if you are using
+   (1) `org-publish.el' is not yet part of Emacs, so if you are using
 `org.el' as it comes with Emacs, you need to download this file
 separately.  Also make sure org.el is at least version 4.27.
 
@@ -3945,7 +3990,7 @@ following functions:
      it.
 
 `C-c C-e p'
-     Publish the project containin the current file.
+     Publish the project containing the current file.
 
 `C-c C-e f'
      Publish only the current file.
@@ -4113,9 +4158,9 @@ means in different contexts.
    - If the cursor is inside a table created by the `table.el' package,
      activate that table.
 
-   - If the current buffer is a remember buffer, close note and file it.
-     with a prefix argument, file it without further interaction to the
-     default location.
+   - If the current buffer is a remember buffer, close the note and
+     file it.  With a prefix argument, file it, without further
+     interaction, to the default location.
 
    - If the cursor is on a `<<<target>>>', update radio targets and
      corresponding links in this buffer.
@@ -4489,18 +4534,17 @@ File: org,  Node: History and Acknowledgments,  Next: Index,  Prev: Extensions a
 Appendix B History and Acknowledgments
 **************************************
 
-The beginnings of Org-mode go back to 2003.  It was borne out of
-frustration over the user interface of the emacs outline-mode.  All I
-wanted was to make working with an outline tree possible without having
-to remember more than 10 commands just for hiding and unhiding parts of
-the outline tree, and to allow to restructure a tree easily.  Visibility
-cycling and structure editing were originally implemented in the package
-`outline-magic.el', but quickly moved to the more general `org.el'.
-TODO entries, basic time stamps, and table support were added next, and
-highlight the two main goals that Org-mode still has today:  To create
-a new, outline-based, plain text mode with innovative and intuitive
-editing features, and to incorporate project planning functionality
-directly into a notes file.
+Org-mode was borne in 2003, out of frustration over the user interface
+of the Emacs outline-mode.  All I wanted was to make working with an
+outline tree possible without having to remember more than 10 commands
+just for hiding and unhiding parts of the outline tree, and to allow to
+restructure a tree easily.  Visibility cycling and structure editing
+were originally implemented in the package `outline-magic.el', but
+quickly moved to the more general `org.el'.  TODO entries, basic time
+stamps, and table support were added next, and highlight the two main
+goals that Org-mode still has today: To create a new, outline-based,
+plain text mode with innovative and intuitive editing features, and to
+incorporate project planning functionality directly into a notes file.
 
    Since the first release, hundreds of emails to me or on
 `emacs-orgmode@gnu.org' have provided a constant stream of bug reports,
@@ -4527,6 +4571,8 @@ if I have forgotten someone, please accept my apologies and let me know.
 
    * Sacha Chua suggested to copy some linking code from Planner.
 
+   * Eddward DeVilla proposed Checkbox statistics.
+
    * Kees Dullemond inspired the use of narrowed tabled columns.
 
    * Christian Egli converted the documentation into TeXInfo format,
@@ -4537,10 +4583,10 @@ if I have forgotten someone, please accept my apologies and let me know.
 
    * Niels Giessen had the idea to automatically archive DONE trees.
 
-   * Bastien Guerry provoded extensive feedback.
+   * Bastien Guerry provided extensive feedback.
 
-   * Kai Grossjohann pointed out key-binding conflicts caused by
-     Org-mode.
+   * Kai Grossjohann pointed out key-binding conflicts with other
+     packages.
 
    * Leon Liu asked for embedded LaTeX and tested it.
 
@@ -4658,6 +4704,7 @@ Index
 * CamelCase links, completion of:        CamelCase links.     (line   6)
 * category:                              Categories.          (line   6)
 * cdlatex.el:                            Cooperation.         (line  29)
+* checkbox statistics:                   Checkboxes.          (line  24)
 * checkboxes:                            Checkboxes.          (line   6)
 * children, subtree visibility state:    Visibility cycling.  (line  10)
 * clean outline view:                    Clean view.          (line   6)
@@ -4867,6 +4914,7 @@ Index
 * sparse trees:                          Sparse trees.        (line   6)
 * special keywords:                      In-buffer settings.  (line   6)
 * spreadsheet capabilities:              Table calculations.  (line   6)
+* statistics, for checkboxes:            Checkboxes.          (line  24)
 * storing links:                         Handling links.      (line   9)
 * structure editing:                     Structure editing.   (line   6)
 * structure of document:                 Document structure.  (line   6)
@@ -4891,6 +4939,7 @@ Index
 * tags:                                  Tags.                (line   6)
 * tags view:                             Matching headline tags.
                                                               (line   6)
+* tasks, breaking down:                  Breaking down tasks. (line   6)
 * templates, for remember:               Remember.            (line  23)
 * TeX interpretation:                    Embedded LaTeX.      (line   6)
 * TeX macros:                            Export options.      (line  25)
@@ -4937,8 +4986,8 @@ Index
 
 File: org,  Node: Key Index,  Prev: Index,  Up: Top
 
-3 Key Index
-***********
+Key Index
+*********
 
 [index]
 * Menu:
@@ -4961,7 +5010,7 @@ File: org,  Node: Key Index,  Prev: Index,  Up: Top
 * <TAB> <2>:                             Agenda commands.     (line  35)
 * <TAB> <3>:                             Built-in table editor.
                                                               (line  57)
-* <TAB> <4>:                             Plain lists.         (line  39)
+* <TAB> <4>:                             Plain lists.         (line  37)
 * <TAB>:                                 Visibility cycling.  (line  10)
 * > <1>:                                 Agenda commands.     (line 154)
 * >:                                     Creating timestamps. (line  79)
@@ -4975,6 +5024,7 @@ File: org,  Node: Key Index,  Prev: Index,  Up: Top
                                                               (line 155)
 * C-,:                                   Agenda files.        (line  18)
 * C-c !:                                 Creating timestamps. (line  21)
+* C-c #:                                 Checkboxes.          (line  56)
 * C-c $:                                 Moving subtrees.     (line  10)
 * C-c %:                                 Handling links.      (line  80)
 * C-c &:                                 Handling links.      (line  84)
@@ -5028,13 +5078,13 @@ File: org,  Node: Key Index,  Prev: Index,  Up: Top
 * C-c C-c <2>:                           Processing LaTeX fragments.
                                                               (line  15)
 * C-c C-c <3>:                           Setting tags.        (line  10)
-* C-c C-c <4>:                           table.el.            (line   6)
-* C-c C-c <5>:                           Editing/debugging formulas.
+* C-c C-c <4>:                           Checkboxes.          (line  38)
+* C-c C-c <5>:                           table.el.            (line   6)
+* C-c C-c <6>:                           Editing/debugging formulas.
                                                               (line  16)
-* C-c C-c <6>:                           Built-in table editor.
+* C-c C-c <7>:                           Built-in table editor.
                                                               (line  54)
-* C-c C-c <7>:                           Checkboxes.          (line  22)
-* C-c C-c:                               Plain lists.         (line  76)
+* C-c C-c:                               Plain lists.         (line  74)
 * C-c C-d <1>:                           Agenda commands.     (line 139)
 * C-c C-d:                               Creating timestamps. (line  37)
 * C-c C-e:                               Exporting.           (line  19)
@@ -5070,8 +5120,8 @@ File: org,  Node: Key Index,  Prev: Index,  Up: Top
 * C-c C-u:                               Motion.              (line  18)
 * C-c C-v:                               TODO basics.         (line  26)
 * C-c C-w:                               Creating timestamps. (line  41)
-* C-c C-x C-a:                           ARCHIVE tag.         (line  27)
-* C-c C-x C-b:                           Checkboxes.          (line  23)
+* C-c C-x C-a:                           ARCHIVE tag.         (line  28)
+* C-c C-x C-b:                           Checkboxes.          (line  39)
 * C-c C-x C-c:                           Agenda commands.     (line 201)
 * C-c C-x C-d:                           Clocking work time.  (line  33)
 * C-c C-x C-i:                           Clocking work time.  (line  12)
@@ -5098,12 +5148,13 @@ File: org,  Node: Key Index,  Prev: Index,  Up: Top
 * C-c |:                                 Built-in table editor.
                                                               (line  40)
 * C-c ~:                                 table.el.            (line  18)
+* C-TAB:                                 ARCHIVE tag.         (line  38)
 * C-u C-c $:                             Moving subtrees.     (line  12)
 * C-u C-c .:                             Creating timestamps. (line  16)
 * C-u C-c =:                             Built-in table editor.
                                                               (line 139)
 * C-u C-c C-l:                           Handling links.      (line  43)
-* C-u C-c C-x C-a:                       ARCHIVE tag.         (line  30)
+* C-u C-c C-x C-a:                       ARCHIVE tag.         (line  31)
 * C-u C-c C-x C-u <1>:                   Dynamic blocks.      (line  22)
 * C-u C-c C-x C-u:                       Clocking work time.  (line  67)
 * D:                                     Agenda commands.     (line  68)
@@ -5121,7 +5172,7 @@ File: org,  Node: Key Index,  Prev: Index,  Up: Top
 * M-<left> <1>:                          Built-in table editor.
                                                               (line  72)
 * M-<left>:                              Structure editing.   (line  18)
-* M-<RET> <1>:                           Plain lists.         (line  44)
+* M-<RET> <1>:                           Plain lists.         (line  42)
 * M-<RET>:                               Structure editing.   (line   6)
 * M-<right> <1>:                         Built-in table editor.
                                                               (line  72)
@@ -5133,24 +5184,24 @@ File: org,  Node: Key Index,  Prev: Index,  Up: Top
                                                               (line  82)
 * M-S-<down> <1>:                        Built-in table editor.
                                                               (line  89)
-* M-S-<down> <2>:                        Plain lists.         (line  61)
+* M-S-<down> <2>:                        Plain lists.         (line  59)
 * M-S-<down>:                            Structure editing.   (line  33)
 * M-S-<left> <1>:                        Creating timestamps. (line 100)
 * M-S-<left> <2>:                        Built-in table editor.
                                                               (line  76)
-* M-S-<left> <3>:                        Plain lists.         (line  67)
+* M-S-<left> <3>:                        Plain lists.         (line  65)
 * M-S-<left>:                            Structure editing.   (line  24)
-* M-S-<RET> <1>:                         Checkboxes.          (line  37)
-* M-S-<RET> <2>:                         Plain lists.         (line  54)
+* M-S-<RET> <1>:                         Checkboxes.          (line  53)
+* M-S-<RET> <2>:                         Plain lists.         (line  52)
 * M-S-<RET>:                             Structure editing.   (line  15)
 * M-S-<right> <1>:                       Creating timestamps. (line  97)
 * M-S-<right> <2>:                       Built-in table editor.
                                                               (line  79)
-* M-S-<right> <3>:                       Plain lists.         (line  67)
+* M-S-<right> <3>:                       Plain lists.         (line  65)
 * M-S-<right>:                           Structure editing.   (line  27)
 * M-S-<up> <1>:                          Built-in table editor.
                                                               (line  86)
-* M-S-<up> <2>:                          Plain lists.         (line  61)
+* M-S-<up> <2>:                          Plain lists.         (line  59)
 * M-S-<up>:                              Structure editing.   (line  30)
 * mouse-1 <1>:                           Agenda commands.     (line  35)
 * mouse-1 <2>:                           Creating timestamps. (line  82)
@@ -5172,7 +5223,7 @@ File: org,  Node: Key Index,  Prev: Index,  Up: Top
 * S-<down> <1>:                          Agenda commands.     (line 132)
 * S-<down> <2>:                          Creating timestamps. (line  58)
 * S-<down> <3>:                          Priorities.          (line  25)
-* S-<down>:                              Plain lists.         (line  57)
+* S-<down>:                              Plain lists.         (line  55)
 * S-<left> <1>:                          Agenda commands.     (line 150)
 * S-<left> <2>:                          Creating timestamps. (line  53)
 * S-<left>:                              TODO basics.         (line  20)
@@ -5187,7 +5238,7 @@ File: org,  Node: Key Index,  Prev: Index,  Up: Top
 * S-<up> <1>:                            Agenda commands.     (line 126)
 * S-<up> <2>:                            Creating timestamps. (line  58)
 * S-<up> <3>:                            Priorities.          (line  25)
-* S-<up>:                                Plain lists.         (line  57)
+* S-<up>:                                Plain lists.         (line  55)
 * T:                                     Agenda commands.     (line 107)
 * t:                                     Agenda commands.     (line 103)
 * w:                                     Agenda commands.     (line  62)
@@ -5198,140 +5249,142 @@ File: org,  Node: Key Index,  Prev: Index,  Up: Top
 
 Tag Table:
 Node: Top959
-Node: Introduction9617
-Node: Summary10032
-Node: Installation12299
-Node: Activation13677
-Node: Feedback14926
-Node: Document structure15695
-Node: Outlines16521
-Node: Headlines17181
-Node: Visibility cycling17804
-Ref: Visibility cycling-Footnote-119279
-Ref: Visibility cycling-Footnote-219337
-Node: Motion19387
-Node: Structure editing20171
-Node: Archiving22280
-Node: ARCHIVE tag22838
-Node: Moving subtrees24513
-Node: Sparse trees25554
-Ref: Sparse trees-Footnote-127533
-Ref: Sparse trees-Footnote-227625
-Node: Plain lists27740
-Ref: Plain lists-Footnote-131348
-Ref: Plain lists-Footnote-231705
-Node: Checkboxes31887
-Node: Tables33524
-Node: Built-in table editor34072
-Node: Narrow columns41679
-Ref: Narrow columns-Footnote-143618
-Node: Table calculations43664
-Node: Formula syntax44984
-Ref: Formula syntax-Footnote-147889
-Node: Lisp formulas48189
-Node: Column formulas48978
-Node: Advanced features50740
-Node: Named-field formulas53994
-Node: Editing/debugging formulas54634
-Node: Appetizer56392
-Node: orgtbl-mode57495
-Node: table.el57986
-Node: Hyperlinks58963
-Node: Link format59668
-Node: Internal links60961
-Ref: Internal links-Footnote-162950
-Node: Radio targets63082
-Node: CamelCase links63797
-Node: External links64295
-Node: Handling links66426
-Ref: Handling links-Footnote-171012
-Node: Search options71249
-Ref: Search options-Footnote-173023
-Node: Custom searches73104
-Node: Remember74152
-Node: TODO items77842
-Node: TODO basics78706
-Node: TODO extensions80233
-Node: Workflow states81028
-Node: TODO types81896
-Ref: TODO types-Footnote-183554
-Node: Per file keywords83636
-Ref: Per file keywords-Footnote-185090
-Node: Priorities85318
-Node: Timestamps86534
-Node: Time stamps86924
-Node: Creating timestamps90021
-Node: Progress logging93367
-Node: Closing items93897
-Node: Clocking work time94692
-Ref: Clocking work time-Footnote-198128
-Node: Tags98254
-Node: Tag inheritance99016
-Node: Setting tags99953
-Ref: Setting tags-Footnote-1103083
-Ref: Setting tags-Footnote-2103195
-Node: Tag searches103275
-Node: Agenda views104484
-Node: Agenda files106028
-Ref: Agenda files-Footnote-1106988
-Ref: Agenda files-Footnote-2107137
-Node: Agenda dispatcher107329
-Node: Weekly/Daily agenda109445
-Node: Categories110580
-Node: Time-of-day specifications111228
-Node: Calendar/Diary integration113204
-Node: Sorting of agenda items114581
-Node: Global TODO list115413
-Node: Matching headline tags117464
-Node: Timeline118407
-Node: Agenda commands119280
-Node: Embedded LaTeX125124
-Ref: Embedded LaTeX-Footnote-1126216
-Node: Math symbols126406
-Node: Subscripts and Superscripts127171
-Node: LaTeX fragments128015
-Node: Processing LaTeX fragments130084
-Node: CDLaTeX mode131030
-Ref: CDLaTeX mode-Footnote-1133514
-Node: Exporting133662
-Node: ASCII export134976
-Node: HTML export136266
-Node: XOXO export139102
-Node: iCalendar export139541
-Node: Text interpretation141364
-Node: Comment lines141843
-Node: Enhancing text142314
-Node: Export options144006
-Node: Publishing145673
-Ref: Publishing-Footnote-1146469
-Node: Configuration146665
-Node: Project alist147383
-Node: Sources and destinations148449
-Node: Selecting files148996
-Node: Publishing action149744
-Node: Publishing options150859
-Node: Publishing links153011
-Node: Project page index154524
-Node: Sample configuration155302
-Node: Simple example155794
-Node: Complex example156467
-Node: Triggering publication158543
-Node: Miscellaneous159227
-Node: Completion159861
-Node: Customization160857
-Node: In-buffer settings161442
-Node: The very busy C-c C-c key164673
-Node: Clean view166310
-Node: TTY keys168887
-Node: Interaction170496
-Node: Cooperation170893
-Node: Conflicts172760
-Node: Bugs174352
-Node: Extensions and Hacking175975
-Node: Extensions176461
-Node: Dynamic blocks178031
-Node: History and Acknowledgments179951
-Node: Index184732
-Node: Key Index207718
+Node: Introduction9683
+Node: Summary10098
+Node: Installation12365
+Node: Activation13743
+Node: Feedback14992
+Node: Document structure15761
+Node: Outlines16535
+Node: Headlines17195
+Node: Visibility cycling17818
+Ref: Visibility cycling-Footnote-119293
+Ref: Visibility cycling-Footnote-219351
+Node: Motion19401
+Node: Structure editing20185
+Node: Archiving22294
+Node: ARCHIVE tag22852
+Node: Moving subtrees24645
+Node: Sparse trees25686
+Ref: Sparse trees-Footnote-127665
+Ref: Sparse trees-Footnote-227757
+Node: Plain lists27872
+Ref: Plain lists-Footnote-131397
+Ref: Plain lists-Footnote-231754
+Node: Tables31936
+Node: Built-in table editor32484
+Node: Narrow columns40091
+Ref: Narrow columns-Footnote-142030
+Node: Table calculations42076
+Node: Formula syntax43396
+Ref: Formula syntax-Footnote-146301
+Node: Lisp formulas46601
+Node: Column formulas47390
+Node: Advanced features49152
+Node: Named-field formulas52406
+Node: Editing/debugging formulas53046
+Node: Appetizer54804
+Node: orgtbl-mode55907
+Node: table.el56398
+Node: Hyperlinks57375
+Node: Link format58080
+Node: Internal links59373
+Ref: Internal links-Footnote-161362
+Node: Radio targets61494
+Node: CamelCase links62209
+Node: External links62707
+Node: Handling links64838
+Ref: Handling links-Footnote-169424
+Node: Search options69661
+Ref: Search options-Footnote-171435
+Node: Custom searches71516
+Node: Remember72564
+Node: TODO items76254
+Node: TODO basics77236
+Node: TODO extensions78763
+Node: Workflow states79558
+Node: TODO types80426
+Ref: TODO types-Footnote-182084
+Node: Per file keywords82166
+Ref: Per file keywords-Footnote-183620
+Node: Priorities83821
+Node: Breaking down tasks85065
+Ref: Breaking down tasks-Footnote-185585
+Node: Checkboxes85681
+Node: Timestamps88490
+Node: Time stamps88880
+Node: Creating timestamps91977
+Node: Progress logging95323
+Node: Closing items95853
+Node: Clocking work time96648
+Ref: Clocking work time-Footnote-1100084
+Node: Tags100210
+Node: Tag inheritance100972
+Node: Setting tags101909
+Ref: Setting tags-Footnote-1105039
+Ref: Setting tags-Footnote-2105151
+Node: Tag searches105231
+Node: Agenda views106440
+Node: Agenda files107984
+Ref: Agenda files-Footnote-1108944
+Ref: Agenda files-Footnote-2109093
+Node: Agenda dispatcher109285
+Node: Weekly/Daily agenda111401
+Node: Categories112536
+Node: Time-of-day specifications113184
+Node: Calendar/Diary integration115160
+Node: Sorting of agenda items116537
+Node: Global TODO list117369
+Node: Matching headline tags119420
+Node: Timeline120363
+Node: Agenda commands121236
+Node: Embedded LaTeX127080
+Ref: Embedded LaTeX-Footnote-1128172
+Node: Math symbols128362
+Node: Subscripts and Superscripts129127
+Node: LaTeX fragments129971
+Node: Processing LaTeX fragments132040
+Node: CDLaTeX mode132986
+Ref: CDLaTeX mode-Footnote-1135470
+Node: Exporting135618
+Node: ASCII export136932
+Node: HTML export138222
+Node: XOXO export141058
+Node: iCalendar export141497
+Node: Text interpretation143320
+Node: Comment lines143799
+Node: Enhancing text144270
+Node: Export options145962
+Node: Publishing147629
+Ref: Publishing-Footnote-1148425
+Node: Configuration148621
+Node: Project alist149339
+Node: Sources and destinations150405
+Node: Selecting files150952
+Node: Publishing action151700
+Node: Publishing options152815
+Node: Publishing links154967
+Node: Project page index156480
+Node: Sample configuration157258
+Node: Simple example157750
+Node: Complex example158423
+Node: Triggering publication160499
+Node: Miscellaneous161184
+Node: Completion161818
+Node: Customization162814
+Node: In-buffer settings163399
+Node: The very busy C-c C-c key166630
+Node: Clean view168274
+Node: TTY keys170851
+Node: Interaction172460
+Node: Cooperation172857
+Node: Conflicts174724
+Node: Bugs176316
+Node: Extensions and Hacking177939
+Node: Extensions178425
+Node: Dynamic blocks179995
+Node: History and Acknowledgments181915
+Node: Index186719
+Node: Key Index209924
 
 End Tag Table

+ 103 - 11
org.el

@@ -5,7 +5,7 @@
 ;; Author: Carsten Dominik <dominik at science dot uva dot nl>
 ;; Keywords: outlines, hypermedia, calendar, wp
 ;; Homepage: http://www.astro.uva.nl/~dominik/Tools/org/
-;; Version: 4.44
+;; Version: 4.45
 ;;
 ;; This file is part of GNU Emacs.
 ;;
@@ -90,6 +90,12 @@
 ;;
 ;; Recent changes
 ;; --------------
+;; Version 4.45
+;;    - Checkbox lists can show statistics about checked items.
+;;    - C-TAB will cycle the visibility of archived subtrees.
+;;;   - Documentation about checkboxes has been moved to chapter 5.
+;;    - Bux fixes.
+;;
 ;; Version 4.44
 ;;    - Clock table can be done for a limited time interval.
 ;;    - Obsolete support for the old outline mode has been removed.
@@ -214,7 +220,7 @@
 
 ;;; Customization variables
 
-(defvar org-version "4.44"
+(defvar org-version "4.45"
   "The version number of the file org.el.")
 (defun org-version ()
   (interactive)
@@ -535,7 +541,6 @@ such an item."
   :group 'org-plain-lists
   :type 'boolean)
 
-
 (defcustom org-plain-list-ordered-item-terminator t
   "The character that makes a line with leading number an ordered list item.
 Valid values are ?. and ?\).  To get both terminators, use t.  While
@@ -555,6 +560,14 @@ use \\[org-ctrl-c-ctrl-c] to trigger renumbering."
   :group 'org-plain-lists
   :type 'boolean)
 
+(defcustom org-provide-checkbox-statistics t
+  "Non-nil means, update checkbox statistics after insert and toggle.
+When this is set, checkbox statistics is updated each time you either insert
+a new checkbox with \\[org-insert-todo-heading] or toggle a checkbox
+with \\[org-ctrl-c-ctrl-c\\]."
+  :group 'org
+  :type 'boolean)
+
 (defgroup org-archive nil
   "Options concerning archiving in Org-mode."
   :tag "Org Archive"
@@ -2559,8 +2572,8 @@ This face is only used if `org-fontify-done-headline' is set."
 
 (defface org-done ;; font-lock-type-face
   (org-compatible-face
-   '((((class color) (min-colors 16) (background light)) (:foreground "ForestGreen"))
-     (((class color) (min-colors 16) (background dark)) (:foreground "PaleGreen"))
+   '((((class color) (min-colors 16) (background light)) (:foreground "ForestGreen" :bold t))
+     (((class color) (min-colors 16) (background dark)) (:foreground "PaleGreen" :bold t))
      (((class color) (min-colors 8)) (:foreground "green"))
      (t (:bold t))))
   "Face used for DONE."
@@ -3331,6 +3344,9 @@ between words."
 	   ;; Checkboxes, similar to Frank Ruell's org-checklet.el
 	   '("^[ \t]*\\([-+*]\\|[0-9]+[.)]\\) +\\(\\[[ X]\\]\\)"
 	     2 'bold prepend)
+	   (if org-provide-checkbox-statistics
+	       '("\\[\\([0-9]*%\\)\\]\\|\\[\\([0-9]*\\)/\\([0-9]*\\)\\]"
+		 (0 (org-get-checkbox-statistics-face) t)))
 	   ;; COMMENT
 	   (list (concat "^\\*+[ \t]*\\<\\(" org-comment-string
 			 "\\|" org-quote-string "\\)\\>")
@@ -3812,6 +3828,7 @@ Return t when things worked, nil when we are not in an item."
       (end-of-line 1)
       (unless (= (point) pos) (just-one-space) (backward-delete-char 1)))
     (org-maybe-renumber-ordered-list)
+    (and checkbox (org-update-checkbox-count-maybe))
     t))
 
 (defun org-insert-todo-heading (arg)
@@ -4212,7 +4229,67 @@ If optional TXT is given, check this string instead of the current kill."
 	      (setq firstnew (not status)))
 	    (replace-match 
 	     (if (if arg (not status) firstnew) "[X]" "[ ]") t t))
-	  (beginning-of-line 2))))))
+	  (beginning-of-line 2)))))
+  (org-update-checkbox-count-maybe))
+
+(defun org-update-checkbox-count-maybe ()
+  "Update checkbox statistics unless turned off by user."
+  (when org-provide-checkbox-statistics
+    (org-update-checkbox-count)))
+
+(defun org-update-checkbox-count (&optional all)
+  "Update the checkbox statistics in the current section.
+This will find all statistic cookies like [57%] and [6/12] and update them
+with the current numbers.  With optional prefix argument ALL, do this for
+the whole buffer."
+  (interactive "P")
+  (save-excursion
+    (let* ((beg (progn (outline-back-to-heading) (point)))
+	   (end (move-marker (make-marker)
+			     (progn (outline-next-heading) (point))))
+	   (re "\\(\\[[0-9]*%\\]\\)\\|\\(\\[[0-9]*/[0-9]*\\]\\)")
+	   (re-box "^[ \t]*\\([-+*]\\|[0-9]+[.)]\\) +\\(\\[[ X]\\]\\)")
+	   b1 e1 f1 c-on c-off lim (cstat 0))
+      (when all
+	(goto-char (point-min))
+	(outline-next-heading)
+	(setq beg (point) end (point-max)))	
+      (goto-char beg)
+      (while (re-search-forward re end t)
+	(setq cstat (1+ cstat)
+	      b1 (match-beginning 0) 
+	      e1 (match-end 0)
+	      f1 (match-beginning 1)
+	      lim (cond
+		   ((org-on-heading-p) (outline-next-heading) (point))
+		   ((org-at-item-p) (org-end-of-item) (point))
+		   (t nil))
+	      c-on 0 c-off 0)
+	(goto-char e1)
+	(when lim
+	  (while (re-search-forward re-box lim t)
+	    (if (equal (match-string 2) "[ ]")
+		(setq c-off (1+ c-off))
+	      (setq c-on (1+ c-on))))
+	  (delete-region b1 e1)
+	  (goto-char b1)
+	  (insert (if f1 
+		      (format "[%d%%]" (/ (* 100 c-on) (+ c-on c-off)))
+		    (format "[%d/%d]" c-on (+ c-on c-off))))))
+      (when (interactive-p)
+	(message "Checkbox satistics updated %s (%d places)"
+		 (if all "globally" "in current outline entry") cstat)))))
+
+(defun org-get-checkbox-statistics-face ()
+  "Select the face for checkbox statistics.
+The face will be `org-done' when all relevant boxes are checked.  Otherwise
+it will be `org-todo'."
+  (if (match-end 1)
+      (if (equal (match-string 1) "100%") 'org-done 'org-todo)
+    (if (and (> (match-end 2) (match-beginning 2))
+	     (equal (match-string 2) (match-string 3)))
+	'org-done
+      'org-todo)))
 
 (defun org-get-indentation (&optional line)
   "Get the indentation of the current line, interpreting tabs.
@@ -4649,7 +4726,18 @@ When TAG is non-nil, don't move trees, but mark them with the ARCHIVE tag."
       (let* ((globalp (memq state '(contents all)))
              (beg (if globalp (point-min) (point)))
              (end (if globalp (point-max) (org-end-of-subtree))))
-	(org-hide-archived-subtrees beg end)))))
+	(org-hide-archived-subtrees beg end)
+	(goto-char beg)
+	(if (looking-at (concat ".*:" org-archive-tag ":"))
+	    (message (substitute-command-keys
+		      "Subtree is archived and stays closed.  Use \\[org-force-cycle-archived] to cycle it anyway.")))))))
+
+(defun org-force-cycle-archived ()
+  "Cycle subtree even if it is archived."
+  (interactive)
+  (setq this-command 'org-cycle)
+  (let ((org-cycle-open-archived-trees t))
+    (call-interactively 'org-cycle)))
 
 (defun org-hide-archived-subtrees (beg end)
   "Re-hide all archived subtrees after a visibility state change."
@@ -9467,6 +9555,7 @@ onto the ring."
   "Follow a Gnus link to GROUP and ARTICLE."
   (require 'gnus)
   (funcall (cdr (assq 'gnus org-link-frame-setup)))
+  (if gnus-other-frame-object (select-frame gnus-other-frame-object))
   (if group (gnus-fetch-group group))
   (if article
       (or (gnus-summary-goto-article article nil 'force)
@@ -13901,12 +13990,12 @@ org-mode's default settings, but still inferior to file-local settings."
 	 (target-alist nil) tg
 	 (head-count  0) cnt
 	 (start       0)
-	 (coding-system (and (fboundp 'coding-system-get)
-			     (boundp 'buffer-file-coding-system)
+	 (coding-system (and (boundp 'buffer-file-coding-system)
 			     buffer-file-coding-system))
-	 (coding-system-for-write (or coding-system coding-system-for-write))
-	 (save-buffer-coding-system (or coding-system save-buffer-coding-system))
+	 (coding-system-for-write coding-system)
+	 (save-buffer-coding-system coding-system)
 	 (charset (and coding-system
+		       (fboundp 'coding-system-get)
 		       (coding-system-get coding-system 'mime-charset)))
 	 table-open type
 	 table-buffer table-orig-buffer
@@ -14727,6 +14816,7 @@ file, but with extension `.ics'."
 (defun org-export-as-xoxo-insert-into (buffer &rest output)
   (with-current-buffer buffer
     (apply 'insert output)))
+(put 'org-export-as-xoxo-insert-into 'lisp-indent-function 1)
 
 (defun org-export-as-xoxo (&optional buffer)
   "Export the org buffer as XOXO.
@@ -15274,6 +15364,7 @@ The images can be removed again with \\[org-ctrl-c-ctrl-c]."
 ;; TAB key with modifiers
 (define-key org-mode-map "\C-i"       'org-cycle)
 (define-key org-mode-map [(tab)]      'org-cycle)
+(define-key org-mode-map [(control tab)] 'org-force-cycle-archived)
 (define-key org-mode-map [(meta tab)] 'org-complete)
 (define-key org-mode-map "\M-\C-i"    'org-complete)            ; for tty emacs
 ;; The following line is necessary under Suse GNU/Linux
@@ -15355,6 +15446,7 @@ The images can be removed again with \\[org-ctrl-c-ctrl-c]."
 (define-key org-mode-map "\C-c-"          'org-table-insert-hline)
 (define-key org-mode-map "\C-c^"          'org-table-sort-lines)
 (define-key org-mode-map "\C-c\C-c"       'org-ctrl-c-ctrl-c)
+(define-key org-mode-map "\C-c#"          'org-update-checkbox-count)
 (define-key org-mode-map "\C-m"           'org-return)
 (define-key org-mode-map "\C-c?"          'org-table-current-column)
 (define-key org-mode-map "\C-c "          'org-table-blank-field)

BIN
org.pdf


+ 141 - 100
org.texi

@@ -3,7 +3,7 @@
 @setfilename ../info/org
 @settitle Org Mode Manual
 
-@set VERSION 4.44
+@set VERSION 4.45
 @set DATE August 2006
 
 @dircategory Emacs
@@ -111,8 +111,7 @@ Document Structure
 * Structure editing::           Changing sequence and level of headlines
 * Archiving::                   Move done task trees to a different place
 * Sparse trees::                Matches embedded in context
-* Plain lists::                 Editing hand-formatted lists
-* Checkboxes::                  Easily checking off things.
+* Plain lists::                 Additional structure within an entry
 
 Archiving
 
@@ -157,6 +156,8 @@ TODO items
 * TODO basics::                 Marking and displaying TODO entries
 * TODO extensions::             Workflow and assignments
 * Priorities::                  Some things are more important than others
+* Breaking down tasks::         Splitting a task into managable pieces
+* Checkboxes::                  Tick-off lists
 
 Extended use of TODO keywords
 
@@ -458,8 +459,7 @@ edit the structure of the document.
 * Structure editing::           Changing sequence and level of headlines
 * Archiving::                   Move done task trees to a different place
 * Sparse trees::                Matches embedded in context
-* Plain lists::                 Editing hand-formatted lists
-* Checkboxes::                  Easily checking off things.
+* Plain lists::                 Additional structure within an entry
 @end menu
 
 @node Outlines, Headlines, Document structure, Document structure
@@ -699,9 +699,10 @@ its location in the outline tree, but behaves in the following way:
 @itemize @minus
 @item
 It does not open when you attempt to do so with a visibility cycling
-command (@pxref{Visibility cycling}).  You can still open it with a
-normal outline command like @code{show-all}.  Or you can modify the
-option @code{org-cycle-open-archived-trees}.
+command (@pxref{Visibility cycling}).  You can force cycling archived
+subtrees with @kbd{C-@key{TAB}}, or by setting the option
+@code{org-cycle-open-archived-trees}.  Also normal outline commands like
+@code{show-all} will open archived subtrees.
 @item
 During sparse tree construction (@pxref{Sparse trees}), matches in
 archived subtrees are not exposed, unless you configure the option
@@ -716,7 +717,7 @@ is.  Configure the details using the variable
 @code{org-export-with-archived-trees}.
 @end itemize
 
-The following commands allow to set or clear the ARCHIVE tag:
+The following commands help managing the ARCHIVE tag:
 
 @table @kbd
 @kindex C-c C-x C-a
@@ -731,6 +732,9 @@ To do this, each subtree is checked for open TODO entries.  If none are
 found, the command offers to set the ARCHIVE tag for the child.  If the
 cursor is @emph{not} on a headline when this command is invoked, the
 level 1 trees will be checked.
+@kindex C-@kbd{TAB}
+@item C-@kbd{TAB}
+Cycle a tree even if it is tagged with ARCHIVE.
 @end table
 
 @node Moving subtrees,  , ARCHIVE tag, Archiving
@@ -820,20 +824,17 @@ XEmacs uses selective display for outlining, not text properties.}.
 Or you can use the command @kbd{C-c C-e v} to export only the visible
 part of the document and print the resulting file.
 
-
-@node Plain lists, Checkboxes, Sparse trees, Document structure
+@node Plain lists,  , Sparse trees, Document structure
 @section Plain lists
 @cindex plain lists
 @cindex lists, plain
 @cindex lists, ordered
 @cindex ordered lists
 
-Headlines define both the structure of the Org-mode file, and also lists
-(for example, TODO items (@pxref{TODO items}) should be created using
-headline levels).  When taking notes, however, the plain text is
-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.
+Within an entry of the outline tree, hand-formatted lists can provide
+additional structure.  They also provide a way to create lists of
+checkboxes (@pxref{Checkboxes}).  Org-mode supports editing such lists,
+and the HTML exporter (@pxref{Exporting}) does parse and format them.
 
 Org-mode knows ordered and unordered lists.  Unordered list items start
 with @samp{-}, @samp{+}, or @samp{*}@footnote{When using @samp{*} as a
@@ -853,15 +854,15 @@ less.  For example:
 @example
 @group
 ** Lord of the Rings
-My favorite scenes are (in this order)
-1. Eowyns fight with the witch king
-   + this was already my favorite scene in the book
-   + I really like Miranda Otto.
-2. The attack of the Rohirrim
-3. Peter Jackson being shot by Legolas
-    - on DVD only
-   He makes a really funny face when it happens.
-But in the end, not individual scenes matter but the film as a whole.
+   My favorite scenes are (in this order)
+   1. The attack of the Rohirrim
+   2. Eowyns fight with the witch king
+      + this was already my favorite scene in the book
+      + I really like Miranda Otto.
+   3. Peter Jackson being shot by Legolas
+       - on DVD only
+      He makes a really funny face when it happens.
+   But in the end, not individual scenes matter but the film as a whole.
 @end group
 @end example
 
@@ -927,56 +928,6 @@ state of the checkbox.  Otherwise, if this is an ordered list, renumber
 the ordered list at the cursor.
 @end table
 
-@page
-@node Checkboxes,  , Plain lists, Document structure
-@section Checkboxes
-@cindex checkboxes
-
-Every item in a plain list (ordered and unordered) can be made a
-checkbox by starting it with the string @samp{[ ]}.  This feature is
-similar to TODO items (@pxref{TODO items}), but more lightweight.
-Checkboxes are not included into the global TODO list, so they are often
-great to split a task into a number of simple steps.  Or you can use
-them in a shopping list to select the items you need to buy.  To toggle
-a checkbox, use @kbd{C-c C-c}, or try Piotr Zielinski's
-@file{org-mouse.el}.  Here is an example of a checkbox list.
-
-@example
-* Avoid 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
-
-@noindent The following commands work with checkboxes:
-
-@table @kbd
-@kindex C-c C-c
-@item C-c C-c
-Toggle checkbox at point.
-@kindex C-c C-x C-b
-@item C-c C-x C-b
-Toggle checkbox at point.
-@itemize @minus
-@item
-If there is an active region, toggle the first checkbox in the region
-and set all remaining boxes to the same status as the first.  If you
-want to toggle all boxes in the region independently, use a prefix
-argument.
-@item
-If the cursor is in a headline, toggle checkboxes in the region between
-this headline and the next.  This does @emph{not} act on the entire
-subtree, just the current entry.
-@item
-If no active region, just toggle the checkbox at point.
-@end itemize
-@kindex M-S-@key{RET}
-@item M-S-@key{RET}
-Insert a new item with a checkbox.
-This works only if the cursor is already in a plain list item
-(@pxref{Plain lists}).
-@end table
-
 @node Tables, Hyperlinks, Document structure, Top
 @chapter Tables
 @cindex tables
@@ -2101,6 +2052,8 @@ things you have to do.
 * TODO basics::                 Marking and displaying TODO entries
 * TODO extensions::             Workflow and assignments
 * Priorities::                  Some things are more important than others
+* Breaking down tasks::         Splitting a task into managable pieces
+* Checkboxes::                  Tick-off lists
 @end menu
 
 @node TODO basics, TODO extensions, TODO items, TODO items
@@ -2264,8 +2217,7 @@ changing one of these lines, use @kbd{C-c C-c} with the cursor still
 in the line to make the changes known to Org-mode@footnote{Org-mode
 parses these lines only when Org-mode is activated after visiting a
 file.  @kbd{C-c C-c} with the cursor in a line starting with @samp{#+}
-is simply restarting Org-mode, making sure that these changes will be
-respected.}.
+is simply restarting Org-mode for the current buffer.}.
 
 If you want to use very many keywords, for example when working with a
 large group of people, you may split the names over several lines:
@@ -2277,7 +2229,7 @@ large group of people, you may split the names over several lines:
 #+TYP_TODO: DONE
 @end example
 
-@node Priorities,  , TODO extensions, TODO items
+@node Priorities, Breaking down tasks, TODO extensions, TODO items
 @section Priorities
 @cindex priorities
 
@@ -2314,6 +2266,94 @@ are also used to modify time stamps (@pxref{Creating timestamps}).
 Furthermore, these keys are also used by CUA-mode (@pxref{Conflicts}).
 @end table
 
+@node Breaking down tasks, Checkboxes, Priorities, TODO items
+@section Breaking tasks down into subtasks
+@cindex tasks, breaking down
+
+It is often advisable to break down large tasks into smaller, managable
+subtasks.  You can do this by creating an outline tree below a TODO
+item, with detailed subtasks on the tree@footnote{To keep subtasks out
+of the global TODO list, see the
+@code{org-agenda-todo-list-sublevels}.}.  Another possibility is the use
+of checkboxes to ideantify (a hierarchy of) a large number of subtasks
+(@pxref{Checkboxes}).
+
+
+@node Checkboxes,  , Breaking down tasks, TODO items
+@section Checkboxes
+@cindex checkboxes
+
+Every item in a plain list (@pxref{Plain lists}) can be made a
+checkbox by starting it with the string @samp{[ ]}.  This feature is
+similar to TODO items (@pxref{TODO items}), but more lightweight.
+Checkboxes are not included into the global TODO list, so they are often
+great to split a task into a number of simple steps.  Or you can use
+them in a shopping list to select the items you need to buy.  To toggle
+a checkbox, use @kbd{C-c C-c}, or try Piotr Zielinski's
+@file{org-mouse.el}.  Here is an example of a checkbox list.
+
+@example
+* TODO Organize party [3/6]
+  - call people [1/3]
+    - [ ] Peter
+    - [X] Sarah
+    - [ ] Sam
+  - [X] order food
+  - [ ] think about what music to play
+  - [X] talk to the neighbors
+@end example
+
+@cindex statistics, for checkboxes
+@cindex checkbox statistics
+The @samp{[3/6]} and @samp{[1/3]} in the first and second line are
+cookies indicating how many checkboxes are present in this entry, and
+how many of them have been checked off.  This can give you an idea on
+how many checkboxes remain, even without opening a folded entry.  The
+cookies can be placed into a headline or into (the first line of) a
+plain list item. Each cookie covers all checkboxes structurally below
+that headline/item.  You have to insert the cookie yourself by typing
+either @samp{[/]} or @samp{[%]}.  In the first case you get an @samp{n
+out of m} result, in the second case you get information about the
+percentage of checkboxes checked (in the above example, this would be
+@samp{[50%]} and @samp{[33%], respectively}.
+
+@noindent The following commands work with checkboxes:
+
+@table @kbd
+@kindex C-c C-c
+@item C-c C-c
+Toggle checkbox at point.
+@kindex C-c C-x C-b
+@item C-c C-x C-b
+Toggle checkbox at point.
+@itemize @minus
+@item
+If there is an active region, toggle the first checkbox in the region
+and set all remaining boxes to the same status as the first.  If you
+want to toggle all boxes in the region independently, use a prefix
+argument.
+@item
+If the cursor is in a headline, toggle checkboxes in the region between
+this headline and the next.  This does @emph{not} act on the entire
+subtree, just the current entry.
+@item
+If no active region, just toggle the checkbox at point.
+@end itemize
+@kindex M-S-@key{RET}
+@item M-S-@key{RET}
+Insert a new item with a checkbox.
+This works only if the cursor is already in a plain list item
+(@pxref{Plain lists}).
+@kindex C-c #
+@item C-c #
+Update the checkbox statistics in the current outline entry.  When
+called with a @kbd{C-u} prefix, update the entire file.  Checkbox
+statistic cookies are updated automatically if you toggle checkboxes
+with @kbd{C-c C-c} and make new ones with @kbd{M-S-@key{RET}}.  If you
+delete boxes or add/change them by hand, use this command to get things
+back into synch.  Or simply toggle any checkbox twice with @kbd{C-c C-c}.
+@end table
+
 @node Timestamps, Tags, TODO items, Top
 @chapter Timestamps
 
@@ -4035,7 +4075,7 @@ LaTeX:  @r{turn on/off La@TeX{} fragments}
 @cindex publishing
 
 Org-mode includes@footnote{@file{org-publish.el} is not yet part of
-emacs, so if you are using @file{org.el} as it comes with Emacs, you
+Emacs, so if you are using @file{org.el} as it comes with Emacs, you
 need to download this file separately.  Also make sure org.el is at
 least version 4.27.} a publishing management system
 that allows you to configure automatic HTML conversion of
@@ -4354,7 +4394,7 @@ following functions:
 @item C-c C-e c
 Prompt for a specific project and publish all files that belong to it.
 @item C-c C-e p
-Publish the project containin the current file.
+Publish the project containing the current file.
 @item C-c C-e f
 Publish only the current file.
 @item C-c C-e a
@@ -4535,9 +4575,9 @@ the entire table.
 If the cursor is inside a table created by the @file{table.el} package,
 activate that table.
 @item
-If the current buffer is a remember buffer, close note and file it.
-with a prefix argument, file it without further interaction to the default
-location.
+If the current buffer is a remember buffer, close the note and file it.
+With a prefix argument, file it, without further interaction, to the
+default location.
 @item
 If the cursor is on a @code{<<<target>>>}, update radio targets and
 corresponding links in this buffer.
@@ -4932,18 +4972,18 @@ written in a way that is does nothing in buffers that are not in Org-mode.
 @cindex history
 @cindex thanks
 
-The beginnings of Org-mode go back to 2003.  It was borne out of
-frustration over the user interface of the emacs outline-mode.  All I
-wanted was to make working with an outline tree possible without having
-to remember more than 10 commands just for hiding and unhiding parts of
-the outline tree, and to allow to restructure a tree easily.  Visibility
-cycling and structure editing were originally implemented in the package
-@file{outline-magic.el}, but quickly moved to the more general
-@file{org.el}.  TODO entries, basic time stamps, and table support were
-added next, and highlight the two main goals that Org-mode still has
-today:  To create a new, outline-based, plain text mode with innovative
-and intuitive editing features, and to incorporate project planning
-functionality directly into a notes file.
+Org-mode was borne in 2003, out of frustration over the user interface
+of the Emacs outline-mode.  All I wanted was to make working with an
+outline tree possible without having to remember more than 10 commands
+just for hiding and unhiding parts of the outline tree, and to allow to
+restructure a tree easily.  Visibility cycling and structure editing
+were originally implemented in the package @file{outline-magic.el}, but
+quickly moved to the more general @file{org.el}.  TODO entries, basic
+time stamps, and table support were added next, and highlight the two
+main goals that Org-mode still has today: To create a new,
+outline-based, plain text mode with innovative and intuitive editing
+features, and to incorporate project planning functionality directly
+into a notes file.
 
 Since the first release, hundreds of emails to me or on
 @code{emacs-orgmode@@gnu.org} have provided a constant stream of bug
@@ -4973,6 +5013,8 @@ calculations and improved XEmacs compatibility, in particular by porting
 @item
 @i{Sacha Chua} suggested to copy some linking code from Planner.
 @item
+@i{Eddward DeVilla} proposed Checkbox statistics.
+@item
 @i{Kees Dullemond} inspired the use of narrowed tabled columns.
 @item
 @i{Christian Egli} converted the documentation into TeXInfo format,
@@ -4982,10 +5024,9 @@ patched CSS formatting into the HTML exporter, and inspired the agenda.
 @item
 @i{Niels Giessen} had the idea to automatically archive DONE trees.
 @item
-@i{Bastien Guerry} provoded extensive feedback.
+@i{Bastien Guerry} provided extensive feedback.
 @item
-@i{Kai Grossjohann} pointed out key-binding conflicts caused by
-Org-mode.
+@i{Kai Grossjohann} pointed out key-binding conflicts with other packages.
 @item
 @i{Leon Liu} asked for embedded LaTeX and tested it.
 @item
@@ -5062,7 +5103,7 @@ links with mouse-1.
 @printindex cp
 
 @node Key Index,  , Index, Top
-@chapter Key Index
+@unnumbered Key Index
 
 @printindex ky
 

BIN
orgcard.pdf


+ 18 - 13
orgcard.tex

@@ -1,5 +1,5 @@
 % Reference Card for Org Mode
-\def\orgversionnumber{4.44}
+\def\orgversionnumber{4.45}
 \def\year{2006}
 %
 %**start of header
@@ -298,8 +298,6 @@ are preserved on all copies.
 
 \key{insert new heading/item at current level}{M-RET}
 \key{insert new TODO entry/checkbox item}{M-S-RET}
-\key{toggle checkbox(es) in region/entry/at point}{C-c C-x C-b}
-\key{toggle checkbox at point}{C-c C-c}
 
 \key{promote current heading up one level}{M-LEFT}
 \key{demote current heading down one level}{M-RIGHT}
@@ -315,8 +313,9 @@ are preserved on all copies.
 \section{Archiving}
 
 \key{toggle ARCHIVE tag}{C-c C-x C-a}
-\metax{mark fully dine children}{C-u C-c C-x C-a}
-\key{move subtree to achive file}{C-c \$}
+\metax{mark fully done children}{C-u C-c C-x C-a}
+\key{force cycling of an ARCHIVEd tree}{C-TAB}
+\key{move subtree to archive file}{C-c \$}
 \key{move all fully done children}{C-u C-c \$}
 To set archive location for current file, add a line like$^2$:
 \vskip -1mm
@@ -444,10 +443,10 @@ formula, \kbd{:=} a named-field formula.
 \key{\kbd{file:/home/dominik/img/mars.jpg}}{\rm file, absolute}
 \key{\kbd{file:papers/last.pdf}}{\rm file, relative}
 \key{\kbd{file:projects.org::*that text}}{\rm find headline}
-\key{\kbd{file:projects.org::find me}}{\rm find tgt/string}
+\key{\kbd{file:projects.org::find me}}{\rm find trgt/string}
 %\key{\kbd{file:projects.org::/regexp/}}{\rm regexp search}
 \key{\kbd{http://www.astro.uva.nl/~dominik}}{\rm on the web}
-\key{\kbd{mailto:adent@galaxy.net}}{\rm EMail address}
+\key{\kbd{mailto:adent@galaxy.net}}{\rm Email address}
 \key{\kbd{news:comp.emacs}}{\rm Usenet group}
 \key{\kbd{bbdb:Richard Stallman}}{\rm BBDB person}
 \key{\kbd{gnus:group}}{\rm GNUS group}
@@ -494,7 +493,7 @@ after  ``{\tt :}'', and dictionary words elsewhere.
 
 \centerline{(for version \orgversionnumber)}
 
-\section{TODO Items}
+\section{TODO Items and Checkboxes}
 
 \key{rotate the state of the current item}{C-c C-t}
 \key{view TODO items in a sparse tree}{C-c C-v}
@@ -508,6 +507,12 @@ after  ``{\tt :}'', and dictionary words elsewhere.
 \key{\kbd{\#+SEQ_TODO: TODO TRY BLUFF DONE}}{\rm todo workflow}
 \key{\kbd{\#+TYP_TODO: Phil home work DONE}}{\rm todo types}
 
+\key{insert new checkbox item in plain list}{M-S-RET}
+\key{toggle checkbox(es) in region/entry/at point}{C-c C-x C-b}
+\key{toggle checkbox at point}{C-c C-c}
+\metax{checkbox statistics cookies: insert {\tt [/]} or {\tt [\%]}}{}
+\key{update checkbox satistics}{C-c \#}
+
 \section{Tags}
 
 \key{set tags for current heading}{C-c C-c}
@@ -547,11 +552,6 @@ after  ``{\tt :}'', and dictionary words elsewhere.
 \key{remove displayed times}{C-c C-c}
 \key{insert/update table with clock report}{C-c C-x C-r}
 
-\section{Dynamic Blocks}
-
-\key{update dynamic block at point}{C-c C-x C-u}
-\metax{update all dynamic blocks}{C-u C-c C-x C-u}
-
 \section{LaTeX and cdlatex-mode}
 
 \key{preview LaTeX fragment}{C-c C-x C-l}
@@ -718,6 +718,11 @@ Subtrees whose header starts with COMMENT are never exported.
 %S-RET   $\to$ C-S-RET
 %\endexample
 
+\section{Dynamic Blocks}
+
+\key{update dynamic block at point}{C-c C-x C-u}
+\metax{update all dynamic blocks}{C-u C-c C-x C-u}
+
 \section{Notes}
 $^1$ This is only a suggestion for a binding of this command.  Choose
 you own key as shown under INSTALLATION.