diff --git a/org b/org index 597ae78ae..771cd9d92 100644 --- a/org +++ b/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.55). + This manual is for Org-mode (version 4.56). 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.55). +This manual is for Org-mode (version 4.56). Copyright (C) 2004, 2005, 2006 Free Software Foundation @@ -144,7 +144,7 @@ Timestamps Creating timestamps -* The date/time prompt:: How org-mode helps you entring date and time +* The date/time prompt:: How org-mode helps you entering date and time Progress Logging @@ -876,7 +876,7 @@ even though `*' is supported, it may be better not to use it for plain list items (2) Org-mode only changes the filling settings for Emacs. For -XEmacs, you should use Kyle E. Jones' `filladapt.el'. To turn is on, +XEmacs, you should use Kyle E. Jones' `filladapt.el'. To turn this on, put into `.emacs': (require 'filladapt) @@ -2175,7 +2175,7 @@ File: org, Node: Breaking down tasks, Next: Checkboxes, Prev: Priorities, Up 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 +the use of checkboxes to identify (a hierarchy of) a large number of subtasks (*note Checkboxes::). ---------- Footnotes ---------- @@ -2234,7 +2234,8 @@ The following commands work with checkboxes: region between this headline and the next (so _not_ the entire subtree). - - If no active region, just toggle the checkbox at point. + - If there is no active region, just toggle the checkbox at + point. `M-S-' Insert a new item with a checkbox. This works only if the cursor @@ -2291,7 +2292,7 @@ PLAIN TIME STAMP INACTIVE TIME STAMP Just like a plain time stamp, but with square brackets instead of angular ones. These time stamps are inactive in the sense that - thay do _not_ trigger an entry to show up in the agenda. + they do _not_ trigger an entry to show up in the agenda. * Gillian comes late for the fifth time [2006-11-01 Wed] @@ -2420,7 +2421,7 @@ format. * Menu: -* The date/time prompt:: How org-mode helps you entring date and time +* The date/time prompt:: How org-mode helps you entering date and time  File: org, Node: The date/time prompt, Prev: Creating timestamps, Up: Creating timestamps @@ -2580,7 +2581,7 @@ also computes the total time spent on each subtree of a project. same location where the clock was last started. It also directly computes the resulting time in inserts it after the time range as `=> HH:MM'. See the variable `org-log-done' for the possibility to - record an additional note together with a the clock-out time stamp. + record an additional note together with the clock-out time stamp. `C-c C-y' Recompute the time interval after changing one of the time stamps. @@ -2773,7 +2774,7 @@ following keys: If `q' is not assigned to a tag, it aborts like `C-g'. `!' - Turn of groups of mutually exclusive tags. Use this to (as an + Turn off groups of mutually exclusive tags. Use this to (as an exception) assign several tags from such a group. `C-c' @@ -3349,6 +3350,12 @@ Remote editing Change the TODO state of the item, both in the agenda and in the original org file. +`C-k' + Delete the current agenda item along with the entire subtree + belonging to it in the original Org-mode file. If the text to be + deleted remotely is longer than one line, the kill needs to be + confirmed by the user. See variable `org-agenda-confirm-kill'. + `T' Show all tags associated with the current item. Because of inheritance, this may be more than the tags listed in the line @@ -4604,7 +4611,7 @@ file is visited again in a new Emacs session. showstars show all stars starting a headline odd allow only odd outline levels (1,3,...) oddeven allow all outline levels - To turn on custom format overlayes over time stamps (variables + To turn on custom format overlays over time stamps (variables `org-put-time-stamp-overlays' and `org-time-stamp-overlay-formats'), use customtime overlay custom time format @@ -5128,7 +5135,7 @@ if I have forgotten someone, please accept my apologies and let me know. * Frank Ruell solved the mystery of the `keymapp nil' bug, a conflict with `allout.el'. - * Jason Riedy sent a patch to fix a bug with export of TODO keywerds. + * Jason Riedy sent a patch to fix a bug with export of TODO keywords. * Philip Rooke created the Org-mode reference card and provided lots of feedback. @@ -5169,7 +5176,7 @@ if I have forgotten someone, please accept my apologies and let me know. * Roland Winkler requested additional keybindings to make Org-mode work on a tty. - * Piotr Zielinski wrote `org-mouse.el', proposed angenda blocks and + * Piotr Zielinski wrote `org-mouse.el', proposed agenda blocks and contributed various ideas and code snippets.  @@ -5194,7 +5201,7 @@ Index * agenda: Weekly/Daily agenda. (line 6) * agenda dispatcher: Agenda dispatcher. (line 6) * agenda files: Agenda files. (line 6) -* agenda files, removing buffers: Agenda commands. (line 211) +* agenda files, removing buffers: Agenda commands. (line 217) * agenda views: Agenda views. (line 6) * agenda views, custom: Custom agenda views. (line 6) * agenda, batch production: Batch processing. (line 6) @@ -5221,7 +5228,7 @@ Index * calculations, in tables <1>: Table calculations. (line 6) * calculations, in tables: Built-in table editor. (line 135) -* calendar commands, from agenda: Agenda commands. (line 172) +* calendar commands, from agenda: Agenda commands. (line 178) * calendar integration: Calendar/Diary integration. (line 6) * calendar, for selecting date: The date/time prompt. @@ -5276,7 +5283,7 @@ Index * DEADLINE keyword: Time stamps. (line 53) * deadlines: Time stamps. (line 6) * demotion, of subtrees: Structure editing. (line 6) -* diary entries, creating from agenda: Agenda commands. (line 179) +* diary entries, creating from agenda: Agenda commands. (line 185) * diary integration: Calendar/Diary integration. (line 6) * dictionary word completion: Completion. (line 6) @@ -5564,11 +5571,11 @@ Key Index * Menu: * ': CDLaTeX mode. (line 43) -* +: Agenda commands. (line 126) -* ,: Agenda commands. (line 118) -* -: Agenda commands. (line 132) +* +: Agenda commands. (line 132) +* ,: Agenda commands. (line 124) +* -: Agenda commands. (line 138) * .: Agenda commands. (line 94) -* :: Agenda commands. (line 112) +* :: Agenda commands. (line 118) * <: The date/time prompt. (line 28) * : Agenda commands. (line 91) @@ -5588,21 +5595,21 @@ Key Index (line 57) * <5>: Plain lists. (line 37) * : Visibility cycling. (line 10) -* > <1>: Agenda commands. (line 154) +* > <1>: Agenda commands. (line 160) * >: The date/time prompt. (line 29) * ^: CDLaTeX mode. (line 33) * _: CDLaTeX mode. (line 33) * `: CDLaTeX mode. (line 39) -* a: Agenda commands. (line 115) -* C: Agenda commands. (line 194) -* c: Agenda commands. (line 172) +* a: Agenda commands. (line 121) +* C: Agenda commands. (line 200) +* c: Agenda commands. (line 178) * C-#: Built-in table editor. (line 155) * C-,: Agenda files. (line 18) * C-a a L: Timeline. (line 10) * C-c !: Creating timestamps. (line 21) -* C-c #: Checkboxes. (line 55) +* C-c #: Checkboxes. (line 56) * C-c $: Moving subtrees. (line 10) * C-c %: Handling links. (line 81) * C-c &: Handling links. (line 85) @@ -5663,7 +5670,7 @@ Key Index * C-c C-c <7>: Built-in table editor. (line 54) * C-c C-c: Plain lists. (line 74) -* C-c C-d <1>: Agenda commands. (line 139) +* C-c C-d <1>: Agenda commands. (line 145) * C-c C-d: Creating timestamps. (line 37) * C-c C-e: Exporting. (line 19) * C-c C-e a: ASCII export. (line 9) @@ -5691,7 +5698,7 @@ Key Index * C-c C-q: Built-in table editor. (line 119) * C-c C-r: Visibility cycling. (line 32) -* C-c C-s <1>: Agenda commands. (line 136) +* C-c C-s <1>: Agenda commands. (line 142) * C-c C-s: Creating timestamps. (line 48) * C-c C-t <1>: Clocking work time. (line 26) * C-c C-t: TODO basics. (line 13) @@ -5700,7 +5707,7 @@ Key Index * C-c C-w: Creating timestamps. (line 41) * C-c C-x C-a: ARCHIVE tag. (line 28) * C-c C-x C-b: Checkboxes. (line 38) -* C-c C-x C-c: Agenda commands. (line 201) +* C-c C-x C-c: Agenda commands. (line 207) * C-c C-x C-d: Clocking work time. (line 34) * C-c C-x C-i: Clocking work time. (line 12) * C-c C-x C-k: Structure editing. (line 39) @@ -5727,6 +5734,7 @@ Key Index * C-c |: Built-in table editor. (line 40) * C-c ~: table.el. (line 18) +* C-k: Agenda commands. (line 107) * C-TAB: ARCHIVE tag. (line 38) * C-u C-c $: Moving subtrees. (line 12) * C-u C-c .: Creating timestamps. (line 16) @@ -5740,12 +5748,12 @@ Key Index * d: Agenda commands. (line 65) * f: Agenda commands. (line 44) * g: Agenda commands. (line 72) -* H: Agenda commands. (line 198) -* i: Agenda commands. (line 179) -* I: Agenda commands. (line 159) +* H: Agenda commands. (line 204) +* i: Agenda commands. (line 185) +* I: Agenda commands. (line 165) * l: Agenda commands. (line 51) * L: Agenda commands. (line 32) -* M: Agenda commands. (line 185) +* M: Agenda commands. (line 191) * M-: Built-in table editor. (line 82) * M- <1>: Built-in table editor. @@ -5771,7 +5779,7 @@ Key Index (line 76) * M-S- <3>: Plain lists. (line 65) * M-S-: Structure editing. (line 27) -* M-S- <1>: Checkboxes. (line 52) +* M-S- <1>: Checkboxes. (line 53) * M-S- <2>: Plain lists. (line 52) * M-S-: Structure editing. (line 18) * M-S- <1>: The date/time prompt. @@ -5793,29 +5801,29 @@ Key Index * mouse-3 <1>: Agenda commands. (line 28) * mouse-3: Handling links. (line 77) * n: Agenda commands. (line 19) -* O: Agenda commands. (line 161) +* O: Agenda commands. (line 167) * o: Agenda commands. (line 59) -* P: Agenda commands. (line 123) +* P: Agenda commands. (line 129) * p: Agenda commands. (line 20) -* q: Agenda commands. (line 208) +* q: Agenda commands. (line 214) * r <1>: Agenda commands. (line 76) * r: Global TODO list. (line 20) -* S: Agenda commands. (line 189) +* S: Agenda commands. (line 195) * s: Agenda commands. (line 83) -* S- <1>: Agenda commands. (line 132) +* S- <1>: Agenda commands. (line 138) * S- <2>: The date/time prompt. (line 41) * S- <3>: Creating timestamps. (line 58) * S- <4>: Priorities. (line 25) * S-: Plain lists. (line 55) -* S- <1>: Agenda commands. (line 150) +* S- <1>: Agenda commands. (line 156) * S- <2>: The date/time prompt. (line 38) * S- <3>: Creating timestamps. (line 53) * S-: TODO basics. (line 20) * S-: Built-in table editor. (line 170) -* S- <1>: Agenda commands. (line 142) +* S- <1>: Agenda commands. (line 148) * S- <2>: The date/time prompt. (line 35) * S- <3>: Creating timestamps. (line 53) @@ -5823,171 +5831,171 @@ Key Index * S- <1>: Built-in table editor. (line 61) * S-: Visibility cycling. (line 22) -* S- <1>: Agenda commands. (line 126) +* S- <1>: Agenda commands. (line 132) * S- <2>: The date/time prompt. (line 44) * S- <3>: Creating timestamps. (line 58) * S- <4>: Priorities. (line 25) * S-: Plain lists. (line 55) -* T: Agenda commands. (line 107) +* T: Agenda commands. (line 113) * t: Agenda commands. (line 103) * w: Agenda commands. (line 62) -* x: Agenda commands. (line 211) -* X: Agenda commands. (line 164) +* x: Agenda commands. (line 217) +* X: Agenda commands. (line 170)  Tag Table: Node: Top964 -Node: Introduction10362 -Node: Summary10777 -Node: Installation13689 -Node: Activation15067 -Node: Feedback16316 -Node: Document structure18392 -Node: Outlines19166 -Node: Headlines19826 -Node: Visibility cycling20449 -Ref: Visibility cycling-Footnote-122200 -Ref: Visibility cycling-Footnote-222258 -Node: Motion22308 -Node: Structure editing23092 -Node: Archiving25408 -Node: ARCHIVE tag25966 -Node: Moving subtrees27759 -Node: Sparse trees28800 -Ref: Sparse trees-Footnote-130931 -Ref: Sparse trees-Footnote-231023 -Node: Plain lists31138 -Ref: Plain lists-Footnote-134663 -Ref: Plain lists-Footnote-235020 -Node: Tables35202 -Node: Built-in table editor35750 -Node: Narrow columns43358 -Ref: Narrow columns-Footnote-145297 -Node: Table calculations45343 -Node: Formula syntax46663 -Ref: Formula syntax-Footnote-149568 -Node: Lisp formulas49868 -Node: Column formulas50657 -Node: Advanced features52419 -Node: Named-field formulas55673 -Node: Editing/debugging formulas56313 -Node: Appetizer58071 -Node: orgtbl-mode59174 -Node: table.el59665 -Node: Hyperlinks60642 -Node: Link format61415 -Node: Internal links62708 -Ref: Internal links-Footnote-164697 -Node: Radio targets64829 -Node: CamelCase links65544 -Node: External links66138 -Node: Handling links68269 -Ref: Handling links-Footnote-172921 -Ref: Handling links-Footnote-273158 -Node: Link abbreviations73232 -Node: Search options74911 -Ref: Search options-Footnote-176689 -Node: Custom searches76770 -Node: Remember77818 -Node: TODO items81508 -Node: TODO basics82490 -Node: TODO extensions84017 -Node: Workflow states84812 -Node: TODO types85680 -Ref: TODO types-Footnote-187338 -Node: Per file keywords87420 -Ref: Per file keywords-Footnote-188874 -Node: Priorities89075 -Node: Breaking down tasks90319 -Ref: Breaking down tasks-Footnote-190839 -Node: Checkboxes90935 -Node: Timestamps93671 -Node: Time stamps94132 -Ref: Time stamps-Footnote-197621 -Node: Creating timestamps97737 -Node: The date/time prompt100362 -Ref: The date/time prompt-Footnote-1102055 -Node: Custom time format102161 -Node: Progress logging103720 -Node: Closing items104249 -Node: Clocking work time105153 -Ref: Clocking work time-Footnote-1108779 -Node: Tags108905 -Node: Tag inheritance109667 -Node: Setting tags110604 -Ref: Setting tags-Footnote-1114802 -Ref: Setting tags-Footnote-2114914 -Node: Tag searches114997 -Node: Agenda views116997 -Node: Agenda files119090 -Ref: Agenda files-Footnote-1120050 -Ref: Agenda files-Footnote-2120199 -Node: Agenda dispatcher120392 -Node: Weekly/Daily agenda122009 -Node: Calendar/Diary integration122974 -Node: Global TODO list124312 -Node: Matching headline tags126472 -Node: Timeline127530 -Node: Presentation and sorting128193 -Node: Categories128971 -Node: Time-of-day specifications129635 -Node: Sorting of agenda items131613 -Node: Agenda commands132895 -Node: Custom agenda views138783 -Node: Storing searches139458 -Node: Block agenda141370 -Node: Setting Options142600 -Node: Batch processing145312 -Node: Embedded LaTeX146442 -Ref: Embedded LaTeX-Footnote-1147534 -Node: Math symbols147724 -Node: Subscripts and Superscripts148489 -Node: LaTeX fragments149333 -Ref: LaTeX fragments-Footnote-1151441 -Node: Processing LaTeX fragments151703 -Node: CDLaTeX mode152649 -Ref: CDLaTeX mode-Footnote-1155133 -Node: Exporting155281 -Node: ASCII export156595 -Node: HTML export157885 -Node: XOXO export160721 -Node: iCalendar export161160 -Node: Text interpretation162983 -Node: Comment lines163462 -Node: Enhancing text163933 -Node: Export options165625 -Node: Publishing167292 -Ref: Publishing-Footnote-1168088 -Node: Configuration168284 -Node: Project alist169002 -Node: Sources and destinations170068 -Node: Selecting files170798 -Node: Publishing action171546 -Node: Publishing options172779 -Node: Publishing links174931 -Node: Project page index176444 -Node: Sample configuration177222 -Node: Simple example177714 -Node: Complex example178387 -Node: Triggering publication180463 -Node: Miscellaneous181148 -Node: Completion181782 -Node: Customization183253 -Node: In-buffer settings183838 -Node: The very busy C-c C-c key187458 -Node: Clean view189102 -Node: TTY keys191679 -Node: Interaction193288 -Node: Cooperation193685 -Node: Conflicts195552 -Node: Bugs197144 -Node: Extensions and Hacking198767 -Node: Extensions199253 -Node: Dynamic blocks201054 -Node: History and Acknowledgments202981 -Node: Index207989 -Node: Key Index235077 +Node: Introduction10363 +Node: Summary10778 +Node: Installation13690 +Node: Activation15068 +Node: Feedback16317 +Node: Document structure18393 +Node: Outlines19167 +Node: Headlines19827 +Node: Visibility cycling20450 +Ref: Visibility cycling-Footnote-122201 +Ref: Visibility cycling-Footnote-222259 +Node: Motion22309 +Node: Structure editing23093 +Node: Archiving25409 +Node: ARCHIVE tag25967 +Node: Moving subtrees27760 +Node: Sparse trees28801 +Ref: Sparse trees-Footnote-130932 +Ref: Sparse trees-Footnote-231024 +Node: Plain lists31139 +Ref: Plain lists-Footnote-134664 +Ref: Plain lists-Footnote-235021 +Node: Tables35205 +Node: Built-in table editor35753 +Node: Narrow columns43361 +Ref: Narrow columns-Footnote-145300 +Node: Table calculations45346 +Node: Formula syntax46666 +Ref: Formula syntax-Footnote-149571 +Node: Lisp formulas49871 +Node: Column formulas50660 +Node: Advanced features52422 +Node: Named-field formulas55676 +Node: Editing/debugging formulas56316 +Node: Appetizer58074 +Node: orgtbl-mode59177 +Node: table.el59668 +Node: Hyperlinks60645 +Node: Link format61418 +Node: Internal links62711 +Ref: Internal links-Footnote-164700 +Node: Radio targets64832 +Node: CamelCase links65547 +Node: External links66141 +Node: Handling links68272 +Ref: Handling links-Footnote-172924 +Ref: Handling links-Footnote-273161 +Node: Link abbreviations73235 +Node: Search options74914 +Ref: Search options-Footnote-176692 +Node: Custom searches76773 +Node: Remember77821 +Node: TODO items81511 +Node: TODO basics82493 +Node: TODO extensions84020 +Node: Workflow states84815 +Node: TODO types85683 +Ref: TODO types-Footnote-187341 +Node: Per file keywords87423 +Ref: Per file keywords-Footnote-188877 +Node: Priorities89078 +Node: Breaking down tasks90322 +Ref: Breaking down tasks-Footnote-190841 +Node: Checkboxes90937 +Node: Timestamps93692 +Node: Time stamps94153 +Ref: Time stamps-Footnote-197642 +Node: Creating timestamps97758 +Node: The date/time prompt100384 +Ref: The date/time prompt-Footnote-1102077 +Node: Custom time format102183 +Node: Progress logging103742 +Node: Closing items104271 +Node: Clocking work time105175 +Ref: Clocking work time-Footnote-1108799 +Node: Tags108925 +Node: Tag inheritance109687 +Node: Setting tags110624 +Ref: Setting tags-Footnote-1114823 +Ref: Setting tags-Footnote-2114935 +Node: Tag searches115018 +Node: Agenda views117018 +Node: Agenda files119111 +Ref: Agenda files-Footnote-1120071 +Ref: Agenda files-Footnote-2120220 +Node: Agenda dispatcher120413 +Node: Weekly/Daily agenda122030 +Node: Calendar/Diary integration122995 +Node: Global TODO list124333 +Node: Matching headline tags126493 +Node: Timeline127551 +Node: Presentation and sorting128214 +Node: Categories128992 +Node: Time-of-day specifications129656 +Node: Sorting of agenda items131634 +Node: Agenda commands132916 +Node: Custom agenda views139085 +Node: Storing searches139760 +Node: Block agenda141672 +Node: Setting Options142902 +Node: Batch processing145614 +Node: Embedded LaTeX146744 +Ref: Embedded LaTeX-Footnote-1147836 +Node: Math symbols148026 +Node: Subscripts and Superscripts148791 +Node: LaTeX fragments149635 +Ref: LaTeX fragments-Footnote-1151743 +Node: Processing LaTeX fragments152005 +Node: CDLaTeX mode152951 +Ref: CDLaTeX mode-Footnote-1155435 +Node: Exporting155583 +Node: ASCII export156897 +Node: HTML export158187 +Node: XOXO export161023 +Node: iCalendar export161462 +Node: Text interpretation163285 +Node: Comment lines163764 +Node: Enhancing text164235 +Node: Export options165927 +Node: Publishing167594 +Ref: Publishing-Footnote-1168390 +Node: Configuration168586 +Node: Project alist169304 +Node: Sources and destinations170370 +Node: Selecting files171100 +Node: Publishing action171848 +Node: Publishing options173081 +Node: Publishing links175233 +Node: Project page index176746 +Node: Sample configuration177524 +Node: Simple example178016 +Node: Complex example178689 +Node: Triggering publication180765 +Node: Miscellaneous181450 +Node: Completion182084 +Node: Customization183555 +Node: In-buffer settings184140 +Node: The very busy C-c C-c key187759 +Node: Clean view189403 +Node: TTY keys191980 +Node: Interaction193589 +Node: Cooperation193986 +Node: Conflicts195853 +Node: Bugs197445 +Node: Extensions and Hacking199068 +Node: Extensions199554 +Node: Dynamic blocks201355 +Node: History and Acknowledgments203282 +Node: Index208289 +Node: Key Index235377  End Tag Table diff --git a/org.el b/org.el index 5d7afc26a..30e72ebfe 100644 --- a/org.el +++ b/org.el @@ -5,7 +5,7 @@ ;; Author: Carsten Dominik ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://www.astro.uva.nl/~dominik/Tools/org/ -;; Version: 4.55 +;; Version: 4.56 ;; ;; This file is part of GNU Emacs. ;; @@ -61,6 +61,12 @@ ;; ;; Recent changes ;; -------------- +;; Version 4.56 +;; - `C-k' in agenda kills current line and corresponding subtree in file. +;; - XEmacs compatibility issues fixed, in particular tag alignment. +;; - M-left/right now in/outdents plain list items, no Shift needed. +;; - Bug fixes. +;; ;; Version 4.55 ;; - Bug fixes. ;; @@ -91,66 +97,6 @@ ;; `org-agenda-window-setup', `org-agenda-restore-windows-after-quit'. ;; - Bug fixes. ;; -;; Version 4.50 -;; - Closing a TODO item can record an additional note. -;; See variables `org-log-done' and `org-log-note-headings'. -;; - Inserting headlines and bullets can leave an extra blank line. -;; See variable `org-blank-before-new-entry'. (Ed Hirgelt patch) -;; - [[bracket links]] in the agenda are active just as in org-mode buffers. -;; - C-c C-o on a date range displays the agenda for exactly this range. -;; - The default for `org-cycle-include-plain-lists' is back to nil. -;; - Calls to `org-occur' can be stacked by using a prefix argument. -;; - The options `org-show-hierarchy-above' and `org-show-following-heading' -;; now always default to `t', but can be customized differently for -;; different types of sparse trees or jump commands. -;; - Bug fixes. -;; -;; Version 4.49 -;; - Agenda views can be made in batch mode from the command line. -;; - `org-store-link' does the right thing in dired-mode. -;; - File links can contain environment variables. -;; - Full Emacs 21 compatibility has been restored. -;; - Bug fixes. -;; -;; Version 4.47 -;; - Custom commands may produce an agenda which contains several blocks, -;; each block created by a different agenda command. -;; - Agenda commands can be restricted to the current file, region, subtree. -;; - The timeline command must now be called through the agenda -;; dispatcher (C-c a L). `C-c C-r' no longer works. -;; - Agenda items can be sorted by tag. The *last* tag is used for this. -;; - The prefix and the sorting strategy for agenda items can depend -;; upon the agenda type. -;; - The handling of `mailto:' links can be customized, see the new -;; variable `org-link-mailto-program'. -;; - `mailto' links can specify a subject after a double colon, -;; like [[mailto:carsten@orgmode.org::Org-mode is buggy]]. -;; - In the #+STARTUP line, M-TAB completes valid keywords. -;; - In the #+TAGS: line, M-TAB after ":" inserts all currently used tags. -;; - Again full Emacs 21 support: Checkboxes and publishing are fixed. -;; - More minor bug fixes. -;; -;; 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. -;; - Bug fixes and code cleaning. -;; -;; Version 4.43 -;; - Bug fixes -;; - `s' key in the agenda saves all org-mode buffers. -;; -;; Version 4.41 -;; - Shift-curser keys can modify inactive time stamps (inactive time -;; stamps are the ones in [...] brackets. -;; - Toggle all checkboxes in a region/below a headline. -;; - Bug fixes. -;; ;;; Code: (eval-when-compile @@ -167,7 +113,7 @@ ;;; Customization variables -(defvar org-version "4.55" +(defvar org-version "4.56" "The version number of the file org.el.") (defun org-version () (interactive) @@ -1699,6 +1645,17 @@ N days, just insert a special line indicating the size of the gap." (const :tag "All" t) (number :tag "at most"))) +(defcustom org-agenda-confirm-kill 1 + "When set, remote killing from the agenda buffer needs confirmation. +When t, a confirmation is always needed. When a number N, confirmation is +only needed when the text to be killed contains more than N non-white lines." + :group 'org-agenda ;; FIXME + :type '(choice + (const :tag "Never" nil) + (const :tag "Always" t) + (number :tag "When more than N lines"))) + +;; FIXME: This variable could be removed (defcustom org-agenda-include-all-todo nil "Set means weekly/daily agenda will always contain all TODO entries. The TODO entries will be listed at the top of the agenda, before @@ -4229,7 +4186,7 @@ in the region." (let* ((level (save-match-data (funcall outline-level))) (up-head (make-string (org-get-legal-level level -1) ?*)) (diff (abs (- level (length up-head))))) - (if (= level 1) (error "Cannot promote to level 0. UNDO to recover")) + (if (= level 1) (error "Cannot promote to level 0. UNDO to recover if necessary")) (replace-match up-head nil t) ;; Fixup tag positioning (and org-auto-align-tags (org-set-tags nil t)) @@ -5769,7 +5726,7 @@ look like when opend with successive calls to `org-cycle'." (make-overlay beg end buffer))) (defun org-delete-overlay (ovl) (if (featurep 'xemacs) (delete-extent ovl) (delete-overlay ovl))) -(defun org-detatch-overlay (ovl) +(defun org-detach-overlay (ovl) (if (featurep 'xemacs) (detach-extent ovl) (delete-overlay ovl))) (defun org-move-overlay (ovl beg end &optional buffer) (if (featurep 'xemacs) @@ -5941,7 +5898,7 @@ So these are more for recording a certain time/date." (defvar org-date-ovl (org-make-overlay 1 1)) (org-overlay-put org-date-ovl 'face 'org-warning) -(org-detatch-overlay org-date-ovl) +(org-detach-overlay org-date-ovl) (defun org-read-date (&optional with-time to-time from-string) "Read a date and make things smooth for the user. @@ -6050,7 +6007,7 @@ used to insert the time stamp into the buffer to include the time." (use-local-map old-map)))))) (t ; Naked prompt only (setq ans (read-string prompt "" nil timestr)))) - (org-detatch-overlay org-date-ovl) + (org-detach-overlay org-date-ovl) (if (string-match "^ *\\(\\([0-9]+\\)-\\)?\\([0-1]?[0-9]\\)-\\([0-3]?[0-9]\\)\\([^-0-9]\\|$\\)" ans) @@ -6915,6 +6872,7 @@ The following commands are available: (define-key org-agenda-mode-map "\C-i" 'org-agenda-goto) (define-key org-agenda-mode-map [(tab)] 'org-agenda-goto) (define-key org-agenda-mode-map "\C-m" 'org-agenda-switch-to) +(define-key org-agenda-mode-map "\C-k" 'org-agenda-kill) (define-key org-agenda-mode-map " " 'org-agenda-show) (define-key org-agenda-mode-map "\C-c\C-t" 'org-agenda-todo) (define-key org-agenda-mode-map "o" 'delete-other-windows) @@ -8901,6 +8859,40 @@ and by additional input from the age of a schedules or deadline entry." (org-flag-heading nil)))) ; show the next heading (and highlight (org-highlight (point-at-bol) (point-at-eol))))) +(defun org-agenda-kill () + "Kill the entry or subtree belonging to the current agenda entry." + (interactive) + (let* ((marker (or (get-text-property (point) 'org-marker) + (org-agenda-error))) + (hdmarker (get-text-property (point) 'org-hd-marker)) + (buffer (marker-buffer marker)) + (pos (marker-position marker)) + dbeg dend txt n conf) + (with-current-buffer buffer + (save-excursion + (goto-char pos) + (if (org-mode-p) + (setq dbeg (progn (org-back-to-heading t) (point)) + dend (org-end-of-subtree t)) + (setq dbeg (point-at-bol) + dend (min (point-max) (1+ (point-at-eol))))) + (setq txt (buffer-substring dbeg dend)))) + (while (string-match "^[ \t]*\n" txt) (setq txt (replace-match "" t t txt))) + (setq n (length (split-string txt "\n")) + conf (or (eq t org-agenda-confirm-kill) + (and (numberp org-agenda-confirm-kill) + (> n org-agenda-confirm-kill)))) + (and conf + (not (y-or-n-p + (format "Delete entry with %d lines in buffer \"%s\"? " + n (buffer-name buffer)))) + (error "Abort")) + ;; FIXME: if we kill an entire subtree, should we not find all + ;; lines coming from the subtree? + (save-excursion (org-agenda-change-all-lines "" hdmarker)) + (with-current-buffer buffer (delete-region dbeg dend)) + (message "Agenda item and source killed"))) + (defun org-agenda-switch-to (&optional delete-other-windows) "Go to the Org-mode file which contains the item at point." (interactive) @@ -8996,7 +8988,8 @@ The new content of the line will be NEWHEAD (as modified by `equal' against all `org-hd-marker' text properties in the file. If FIXFACE is non-nil, the face of each item is modified acording to the new TODO state." - (let* (props m pl undone-face done-face finish new dotime cat tags) + (let* ((buffer-read-only nil) + props m pl undone-face done-face finish new dotime cat tags) (save-excursion (goto-char (point-max)) (beginning-of-line 1) @@ -9013,20 +9006,23 @@ the new TODO state." undone-face (get-text-property (point) 'undone-face) done-face (get-text-property (point) 'done-face)) (move-to-column pl) - (if (looking-at ".*") - (progn - (replace-match new t t) - (beginning-of-line 1) - (add-text-properties (point-at-bol) (point-at-eol) props) - (when fixface - (add-text-properties - (point-at-bol) (point-at-eol) - (list 'face - (if org-last-todo-state-is-todo - undone-face done-face)))) - (org-agenda-highlight-todo 'line) - (beginning-of-line 1)) - (error "Line update did not work"))) + (cond + ((equal new "") + (beginning-of-line 1) + (and (looking-at ".*\n?") (replace-match ""))) + ((looking-at ".*") + (replace-match new t t) + (beginning-of-line 1) + (add-text-properties (point-at-bol) (point-at-eol) props) + (when fixface + (add-text-properties + (point-at-bol) (point-at-eol) + (list 'face + (if org-last-todo-state-is-todo + undone-face done-face)))) + (org-agenda-highlight-todo 'line) + (beginning-of-line 1)) + (t (error "Line update did not work")))) (beginning-of-line 0))) (org-finalize-agenda))) @@ -9102,6 +9098,7 @@ the tags of the current headline come last." (error nil)))) tags)) +;; FIXME: should fix the tags property of the agenda line. (defun org-agenda-set-tags () "Set tags for the current headline." (interactive) @@ -9370,7 +9367,7 @@ are included in the output." (mapconcat 'regexp-quote (nreverse (cdr (reverse org-todo-keywords))) "\\|") - "\\>\\)\\)? *\\(.*?\\)\\(:[A-Za-z_@0-9:]+:\\)?[ \t]*$")) ;;FIXME: was [\n\r] instead of $ + "\\>\\)\\)? *\\(.*?\\)\\(:[A-Za-z_@0-9:]+:\\)?[ \t]*$")) (props (list 'face nil 'done-face 'org-done 'undone-face nil @@ -9579,27 +9576,27 @@ The prefix arg TODO-ONLY limits the search to TODO entries." (defvar org-add-colon-after-tag-completion nil) ;; dynamically skoped param (defvar org-tags-overlay (org-make-overlay 1 1)) -;(org-overlay-put org-tags-overlay 'face 'org-warning) -(org-detatch-overlay org-tags-overlay) +(org-detach-overlay org-tags-overlay) (defun org-set-tags (&optional arg just-align) "Set the tags for the current headline. With prefix ARG, realign all tags in headings in the current buffer." (interactive "P") (let* ((re (concat "^" outline-regexp)) - (col (current-column)) (current (org-get-tags)) table current-tags inherited-tags ; computed below when needed - tags empty invis) + tags p0 c0 c1 rpl) (if arg (save-excursion (goto-char (point-min)) (let (buffer-invisibility-spec) ; Emacs 21 compatibility (while (re-search-forward re nil t) - (org-set-tags nil t))) + (org-set-tags nil t) + (end-of-line 1))) (message "All tags realigned to column %d" org-tags-column)) (if just-align (setq tags current) + ;; Get a new set of tags from the user (setq table (or org-tag-alist (org-get-buffer-tags)) org-last-tags-completion-table table current-tags (org-split-string current ":") @@ -9612,40 +9609,35 @@ With prefix ARG, realign all tags in headings in the current buffer." (delq nil (mapcar 'cdr table)))) (org-fast-tag-selection current-tags inherited-tags table) (let ((org-add-colon-after-tag-completion t)) - (completing-read "Tags: " 'org-tags-completion-function - nil nil current 'org-tags-history)))) + (org-trim + (completing-read "Tags: " 'org-tags-completion-function + nil nil current 'org-tags-history))))) (while (string-match "[-+&]+" tags) + ;; No boolean logic, just a list (setq tags (replace-match ":" t t tags)))) - (unless (setq empty (string-match "\\`[\t ]*\\'" tags)) + (if (string-match "\\`[\t ]*\\'" tags) + (setq tags "") (unless (string-match ":$" tags) (setq tags (concat tags ":"))) (unless (string-match "^:" tags) (setq tags (concat ":" tags)))) - (if (equal current "") + + ;; Insert new tags at the correct column + (beginning-of-line 1) + (if (re-search-forward + (concat "\\([ \t]*" (regexp-quote current) "\\)[ \t]*$") + (point-at-eol) t) (progn - (end-of-line 1) - (or empty (insert " "))) - (beginning-of-line 1) - (setq invis (org-invisible-p)) - (looking-at (concat ".*?\\([ \t]*" (regexp-quote current) "\\)[ \t]*")) - (delete-region (match-beginning 1) (match-end 1)) - (goto-char (match-beginning 1)) - (insert (if empty "" " "))) - (if (equal tags "") - (save-excursion - (beginning-of-line 1) - (skip-chars-forward "*") - (if (= (char-after) ?\ ) (forward-char 1)) - (and (re-search-forward "[ \t]+$" (point-at-eol) t) - (replace-match ""))) - (let (buffer-invisibility-spec) ; Emacs 21 compatibility - (move-to-column (max (current-column) - (if (> org-tags-column 0) - org-tags-column - (- (- org-tags-column) (length tags)))) - t)) - (insert tags) - (if (and (not invis) (org-invisible-p)) - (outline-flag-region (point) (point-at-bol) nil))) ; show - (move-to-column col)))) + (if (equal tags "") + (setq rpl "") + (goto-char (match-beginning 0)) + (setq c0 (current-column) p0 (point) + c1 (max (1+ c0) (if (> org-tags-column 0) + org-tags-column + (- (- org-tags-column) (length tags)))) + rpl (concat (make-string (max 0 (- c1 c0)) ?\ ) tags))) + (replace-match rpl) + (and (not (featurep 'xemacs)) c0 (tabify p0 (point))) + tags) + (error "Tags alignment failed"))))) (defun org-tags-completion-function (string predicate &optional flag) (let (s1 s2 rtn (ctable org-last-tags-completion-table) @@ -9804,7 +9796,7 @@ Returns the new tags string, or nil to not change the current settings." (setq exit-after-next (not exit-after-next)))) ((or (= c ?\C-g) (and (= c ?q) (not (rassoc c ntable)))) - (org-detatch-overlay org-tags-overlay) + (org-detach-overlay org-tags-overlay) (setq quit-flag t)) ((= c ?\ ) (setq current nil) @@ -9854,7 +9846,7 @@ Returns the new tags string, or nil to not change the current settings." ((member tg inherited) i-face) (t nil))))) (goto-char (point-min))))) - (org-detatch-overlay org-tags-overlay) + (org-detach-overlay org-tags-overlay) (if rtn (mapconcat 'identity current ":") nil)))) @@ -11553,7 +11545,7 @@ separate columns (default: just one space)." (max 1 (prefix-numeric-value nspace))))) (goto-char beg) (while (re-search-forward re end t) - (replace-match "|" t t)) + (replace-match "| " t t)) (goto-char beg) (insert " ") (org-table-align))) diff --git a/org.pdf b/org.pdf index cc151f127..3b57adfba 100644 Binary files a/org.pdf and b/org.pdf differ diff --git a/org.texi b/org.texi index a0a7946ec..db8f20c39 100644 --- a/org.texi +++ b/org.texi @@ -3,7 +3,7 @@ @setfilename ../info/org @settitle Org Mode Manual -@set VERSION 4.55 +@set VERSION 4.56 @set DATE November 2006 @dircategory Emacs @@ -175,7 +175,7 @@ Timestamps Creating timestamps -* The date/time prompt:: How org-mode helps you entring date and time +* The date/time prompt:: How org-mode helps you entering date and time Progress Logging @@ -939,7 +939,7 @@ less. For example: Org-mode supports these lists by tuning filling and wrapping commands to deal with them correctly@footnote{Org-mode only changes the filling settings for Emacs. For XEmacs, you should use Kyle E. Jones' -@file{filladapt.el}. To turn is on, put into @file{.emacs}: +@file{filladapt.el}. To turn this on, put into @file{.emacs}: @example (require 'filladapt) @end example @@ -2404,7 +2404,7 @@ 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 +of checkboxes to identify (a hierarchy of) a large number of subtasks (@pxref{Checkboxes}). @@ -2464,7 +2464,7 @@ argument. If the cursor is in a headline, toggle checkboxes in the region between this headline and the next (so @emph{not} the entire subtree). @item -If no active region, just toggle the checkbox at point. +If there is no active region, just toggle the checkbox at point. @end itemize @kindex M-S-@key{RET} @item M-S-@key{RET} @@ -2530,7 +2530,7 @@ associated with a plain time stamp will be shown exactly on that date. @cindex timestamp, inactive @cindex inactive timestamp Just like a plain time stamp, but with square brackets instead of -angular ones. These time stamps are inactive in the sense that thay do +angular ones. These time stamps are inactive in the sense that they do @emph{not} trigger an entry to show up in the agenda. @example @@ -2684,7 +2684,7 @@ into the following column). @menu -* The date/time prompt:: How org-mode helps you entring date and time +* The date/time prompt:: How org-mode helps you entering date and time @end menu @node The date/time prompt, , Creating timestamps, Creating timestamps @@ -2852,7 +2852,7 @@ Stop the clock (clock-out). The inserts another timestamp at the same location where the clock was last started. It also directly computes the resulting time in inserts it after the time range as @samp{=> HH:MM}. See the variable @code{org-log-done} for the possibility to -record an additional note together with a the clock-out time stamp. +record an additional note together with the clock-out time stamp. @kindex C-c C-y @item C-c C-y Recompute the time interval after changing one of the time stamps. This @@ -3069,7 +3069,7 @@ Abort without installing changes. @item q If @kbd{q} is not assigned to a tag, it aborts like @kbd{C-g}. @item ! -Turn of groups of mutually exclusive tags. Use this to (as an +Turn off groups of mutually exclusive tags. Use this to (as an exception) assign several tags from such a group. @item C-c Toggle auto-exit after the next change (see below). @@ -3679,6 +3679,13 @@ Digit argument. Change the TODO state of the item, both in the agenda and in the original org file. +@kindex C-k +@item C-k +Delete the current agenda item along with the entire subtree belonging +to it in the original Org-mode file. If the text to be deleted remotely +is longer than one line, the kill needs to be confirmed by the user. See +variable @code{org-agenda-confirm-kill}. + @kindex T @item T Show all tags associated with the current item. Because of @@ -5069,7 +5076,7 @@ showstars @r{show all stars starting a headline} odd @r{allow only odd outline levels (1,3,...)} oddeven @r{allow all outline levels} @end example -To turn on custom format overlayes over time stamps (variables +To turn on custom format overlays over time stamps (variables @code{org-put-time-stamp-overlays} and @code{org-time-stamp-overlay-formats}), use @example @@ -5612,7 +5619,7 @@ control. @i{Frank Ruell} solved the mystery of the @code{keymapp nil} bug, a conflict with @file{allout.el}. @item -@i{Jason Riedy} sent a patch to fix a bug with export of TODO keywerds. +@i{Jason Riedy} sent a patch to fix a bug with export of TODO keywords. @item @i{Philip Rooke} created the Org-mode reference card and provided lots of feedback. @@ -5653,7 +5660,7 @@ linking to GNUS. @i{Roland Winkler} requested additional keybindings to make Org-mode work on a tty. @item -@i{Piotr Zielinski} wrote @file{org-mouse.el}, proposed angenda blocks +@i{Piotr Zielinski} wrote @file{org-mouse.el}, proposed agenda blocks and contributed various ideas and code snippets. @end itemize diff --git a/orgcard.pdf b/orgcard.pdf index 495bef2a7..cb06bbcf4 100644 Binary files a/orgcard.pdf and b/orgcard.pdf differ diff --git a/orgcard.tex b/orgcard.tex index ee077b855..141e78634 100644 --- a/orgcard.tex +++ b/orgcard.tex @@ -1,5 +1,5 @@ % Reference Card for Org Mode -\def\orgversionnumber{4.55} +\def\orgversionnumber{4.56} \def\year{2006} % %**start of header @@ -587,11 +587,11 @@ To set categories, add lines like$^2$: {\bf View Org file} -\key{show original location of item}{SPC} -\key{... also available with}{mouse-3} +\key{show original location of item}{SPC/mouse-3} +%\key{... also available with}{mouse-3} \key{show and recenter window}{L} -\key{goto original location in other window}{TAB} -\key{... also available with}{mouse-2} +\key{goto original location in other window}{TAB/mouse-2} +%\key{... also available with}{mouse-2} \key{goto original location, delete other windows}{RET} \key{toggle follow-mode}{f} @@ -612,6 +612,7 @@ To set categories, add lines like$^2$: \key{digit argument}{0-9} \key{change state of current TODO item}{t} +\key{kill item and source}{C-k} \key{show tags of current headline}{T} \key{set tags for current headline}{:} \key{toggle ARCHIVE tag}{a}