diff --git a/org b/org index 51d4c2b4c..405b61ab5 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.20). + This manual is for Org-mode (version 4.21). 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.20). +This manual is for Org-mode (version 4.21). Copyright (C) 2004, 2005, 2006 Free Software Foundation @@ -165,6 +165,7 @@ Miscellaneous * Completion:: M-TAB knows what you need * Customization:: Adapting Org-mode to your taste +* Updating settings:: How to tell Org-mode that settings have changed * Clean view:: Getting rid of leading stars in the outline * TTY keys:: Using Org-mode on a tty * FAQ:: Frequently asked questions @@ -1224,7 +1225,7 @@ File: org, Node: Link format, Next: Internal links, Prev: Hyperlinks, Up: Hy =============== Org-mode will recognize plain URL-like links and activate them as -clickable links. However, the general linkformat looks like this: +clickable links. However, the general link format looks like this: [[link][description]] or alternatively [[link]] @@ -2772,7 +2773,9 @@ of the outline tree. For example: # End: *** Remember to execute `M-x normal-mode' after changing this to make -the new style visible to Emacs. +the new style visible to Emacs. This command reastarts org-mode for the +current buffer and forces Emacs to re-evaluate the loval variables +section in the buffer.  File: org, Node: Comment lines, Prev: Export options, Up: HTML export @@ -2844,6 +2847,7 @@ File: org, Node: Miscellaneous, Next: Index, Prev: Exporting, Up: Top * Completion:: M-TAB knows what you need * Customization:: Adapting Org-mode to your taste +* Updating settings:: How to tell Org-mode that settings have changed * Clean view:: Getting rid of leading stars in the outline * TTY keys:: Using Org-mode on a tty * FAQ:: Frequently asked questions @@ -2880,7 +2884,7 @@ buffer and use the key to complete text right there. * Elsewhere, complete dictionary words using ispell.  -File: org, Node: Customization, Next: Clean view, Prev: Completion, Up: Miscellaneous +File: org, Node: Customization, Next: Updating settings, Prev: Completion, Up: Miscellaneous 10.2 Customization ================== @@ -2892,9 +2896,42 @@ variables is available with `M-x org-customize'. Or select `Browse Org Group' from the `Org->Customization' menu.  -File: org, Node: Clean view, Next: TTY keys, Prev: Customization, Up: Miscellaneous +File: org, Node: Updating settings, Next: Clean view, Prev: Customization, Up: Miscellaneous -10.3 A cleaner outline view +10.3 Updating settings after changes +==================================== + +Org-mode uses special lines in the buffer to set file-local values for a +number of user options. When such settings are changed, you need to +inform Org-mode that something has be modified and that it should +recheck the buffer for setting. This is done with the command `C-c +C-c' in the following situations: + + * After changing any of the special buffer lines starting with `#+', + for example `#+STARTUP', `#+CATEGORY'. Org-mode will then read + these settings and activate them (see *Note Visibility cycling::, + *Note Narrow columns::, *Note Clean view::, *Note Per file + keywords::, *Note Categories::) + + * After editing by hand a `#+TBLFM' line containing formulas for a + table. When pressing `C-c C-c' in that line, all formulas are + re-applied to the entire table (*note Editing/debugging + formulas::). + + * In a table, `C-c C-c' does force a re-align, even if the table + editor is turned off (*note Built-in table editor::) + + * In an ordered plain list, `C-c C-c' forces a renumbering of the + list (*note Plain Lists::). + + * After adding a new radio target `<<>>', `C-c C-c' must + be used with the cursor on that target to activate it throughout + the buffer. + + +File: org, Node: Clean view, Next: TTY keys, Prev: Updating settings, Up: Miscellaneous + +10.4 A cleaner outline view =========================== Some people find it noisy and distracting that the Org-mode headlines @@ -2977,7 +3014,7 @@ of the tree.  File: org, Node: TTY keys, Next: FAQ, Prev: Clean view, Up: Miscellaneous -10.4 Using org-mode on a tty +10.5 Using org-mode on a tty ============================ Org-mode uses a number of keys that are not accessible on a tty. This @@ -3019,7 +3056,7 @@ Default Alternative 1 Alternative 2  File: org, Node: FAQ, Next: Interaction, Prev: TTY keys, Up: Miscellaneous -10.5 Frequently asked questions +10.6 Frequently asked questions =============================== 1. Org-mode seems to be a useful default mode for the various @@ -3105,7 +3142,7 @@ File: org, Node: FAQ, Next: Interaction, Prev: TTY keys, Up: Miscellaneous 11. One of my table columns has started to fill up with `#ERROR'. What is going on? Org-mode tried to compute the column from other fields using a - formula stored in the `#+TBLFMT:' line just below the table, and + formula stored in the `#+TBLFM:' line just below the table, and the evaluation of the formula fails. Fix the fields used in the formula, or fix the formula, or remove it! @@ -3155,7 +3192,7 @@ File: org, Node: FAQ, Next: Interaction, Prev: TTY keys, Up: Miscellaneous  File: org, Node: Interaction, Next: Bugs, Prev: FAQ, Up: Miscellaneous -10.6 Interaction with other packages +10.7 Interaction with other packages ==================================== Org-mode can cooperate with the following packages: @@ -3217,7 +3254,7 @@ Org-mode can cooperate with the following packages:  File: org, Node: Bugs, Next: Acknowledgments, Prev: Interaction, Up: Miscellaneous -10.7 Bugs +10.8 Bugs ========= Here is a list of things that should work differently, but which I have @@ -3271,7 +3308,7 @@ found too hard to fix.  File: org, Node: Acknowledgments, Prev: Bugs, Up: Miscellaneous -10.8 Acknowledgments +10.9 Acknowledgments ==================== Org-mode was written by Carsten Dominik, who still maintains it at the @@ -3637,6 +3674,7 @@ File: org, Node: Index, Next: Key Index, Prev: Miscellaneous, Up: Top * tty keybindings: TTY keys. (line 6) * types as TODO keywords: TODO types. (line 6) * underlined text: HTML formatting. (line 13) +* updating, after setting changes: Updating settings. (line 6) * URL links: External links. (line 6) * USENET links: External links. (line 6) * variables, for customization: Customization. (line 6) @@ -3730,11 +3768,12 @@ File: org, Node: Key Index, Prev: Index, Up: Top * C-c a t: TODO basics. (line 27) * C-c C-a: Visibility cycling. (line 27) * C-c C-b: Motion. (line 15) -* C-c C-c <1>: Setting tags. (line 11) -* C-c C-c <2>: table.el. (line 6) -* C-c C-c <3>: Editing/debugging formulas. +* C-c C-c <1>: Updating settings. (line 6) +* C-c C-c <2>: Setting tags. (line 11) +* C-c C-c <3>: table.el. (line 6) +* C-c C-c <4>: Editing/debugging formulas. (line 16) -* C-c C-c <4>: Built-in table editor. +* C-c C-c <5>: Built-in table editor. (line 54) * C-c C-c: Plain Lists. (line 61) * C-c C-d: Creating timestamps. (line 37) @@ -3865,95 +3904,96 @@ File: org, Node: Key Index, Prev: Index, Up: Top  Tag Table: Node: Top959 -Node: Introduction7179 -Node: Summary7493 -Node: Installation and activation9605 -Node: Feedback11274 -Node: Document Structure12060 -Node: Outlines12826 -Node: Headlines13486 -Node: Visibility cycling14109 -Node: Motion15300 -Node: Structure editing16084 -Node: Archiving17827 -Node: Sparse trees18687 -Ref: Sparse trees-Footnote-120716 -Ref: Sparse trees-Footnote-220808 -Node: Plain Lists20922 -Ref: Plain Lists-Footnote-123678 -Node: Tables24035 -Node: Built-in table editor24583 -Node: Narrow columns32197 -Ref: Narrow columns-Footnote-134130 -Node: Table calculations34176 -Node: Formula syntax35352 -Ref: Formula syntax-Footnote-138286 -Node: Column formulas38585 -Node: Advanced features40347 -Node: Named-field formulas43602 -Node: Editing/debugging formulas44242 -Node: Appetizer46000 -Node: orgtbl-mode47102 -Node: table.el47593 -Node: Hyperlinks48570 -Node: Link format49204 -Node: Internal links50500 -Node: Radio targets52390 -Node: CamelCase links53105 -Node: External links53603 -Node: Managing links55528 -Node: Search Options59512 -Ref: Search Options-Footnote-160832 -Node: Remember60913 -Ref: Remember-Footnote-164779 -Node: TODO items64903 -Node: TODO basics65826 -Node: Progress logging67341 -Node: TODO extensions68127 -Node: Workflow states68927 -Node: TODO types69795 -Ref: TODO types-Footnote-171453 -Node: Per file keywords71535 -Ref: Per file keywords-Footnote-172988 -Node: Priorities73216 -Node: Timestamps74425 -Node: Time stamps74746 -Node: Creating timestamps76761 -Node: Tags79890 -Node: Tag inheritance80625 -Node: Setting tags81562 -Node: Tag searches82524 -Node: Agenda Views83733 -Node: Agenda files85272 -Ref: Agenda files-Footnote-186232 -Ref: Agenda files-Footnote-286381 -Node: Agenda dispatcher86573 -Node: Weekly/Daily Agenda88703 -Node: Categories89838 -Node: Time-of-day specifications90486 -Node: Calendar/Diary integration92462 -Node: Sorting of agenda items93839 -Node: Global TODO list94671 -Node: Matching headline tags96086 -Node: Timeline97029 -Node: Agenda commands97902 -Node: Exporting103158 -Node: ASCII export103730 -Node: HTML export104565 -Node: HTML formatting105681 -Node: Export options107313 -Node: Comment lines109504 -Node: iCalendar export109974 -Node: Miscellaneous111769 -Node: Completion112396 -Node: Customization113392 -Node: Clean view113840 -Node: TTY keys116480 -Node: FAQ118081 -Node: Interaction124316 -Node: Bugs127157 -Node: Acknowledgments129466 -Node: Index132396 -Node: Key Index153038 +Node: Introduction7259 +Node: Summary7573 +Node: Installation and activation9685 +Node: Feedback11354 +Node: Document Structure12140 +Node: Outlines12906 +Node: Headlines13566 +Node: Visibility cycling14189 +Node: Motion15380 +Node: Structure editing16164 +Node: Archiving17907 +Node: Sparse trees18767 +Ref: Sparse trees-Footnote-120796 +Ref: Sparse trees-Footnote-220888 +Node: Plain Lists21002 +Ref: Plain Lists-Footnote-123758 +Node: Tables24115 +Node: Built-in table editor24663 +Node: Narrow columns32277 +Ref: Narrow columns-Footnote-134210 +Node: Table calculations34256 +Node: Formula syntax35432 +Ref: Formula syntax-Footnote-138366 +Node: Column formulas38665 +Node: Advanced features40427 +Node: Named-field formulas43682 +Node: Editing/debugging formulas44322 +Node: Appetizer46080 +Node: orgtbl-mode47182 +Node: table.el47673 +Node: Hyperlinks48650 +Node: Link format49284 +Node: Internal links50581 +Node: Radio targets52471 +Node: CamelCase links53186 +Node: External links53684 +Node: Managing links55609 +Node: Search Options59593 +Ref: Search Options-Footnote-160913 +Node: Remember60994 +Ref: Remember-Footnote-164860 +Node: TODO items64984 +Node: TODO basics65907 +Node: Progress logging67422 +Node: TODO extensions68208 +Node: Workflow states69008 +Node: TODO types69876 +Ref: TODO types-Footnote-171534 +Node: Per file keywords71616 +Ref: Per file keywords-Footnote-173069 +Node: Priorities73297 +Node: Timestamps74506 +Node: Time stamps74827 +Node: Creating timestamps76842 +Node: Tags79971 +Node: Tag inheritance80706 +Node: Setting tags81643 +Node: Tag searches82605 +Node: Agenda Views83814 +Node: Agenda files85353 +Ref: Agenda files-Footnote-186313 +Ref: Agenda files-Footnote-286462 +Node: Agenda dispatcher86654 +Node: Weekly/Daily Agenda88784 +Node: Categories89919 +Node: Time-of-day specifications90567 +Node: Calendar/Diary integration92543 +Node: Sorting of agenda items93920 +Node: Global TODO list94752 +Node: Matching headline tags96167 +Node: Timeline97110 +Node: Agenda commands97983 +Node: Exporting103239 +Node: ASCII export103811 +Node: HTML export104646 +Node: HTML formatting105762 +Node: Export options107394 +Node: Comment lines109716 +Node: iCalendar export110186 +Node: Miscellaneous111981 +Node: Completion112688 +Node: Customization113684 +Node: Updating settings114139 +Node: Clean view115547 +Node: TTY keys118191 +Node: FAQ119792 +Node: Interaction126026 +Node: Bugs128867 +Node: Acknowledgments131176 +Node: Index134106 +Node: Key Index154821  End Tag Table diff --git a/org.el b/org.el index d58d85112..afa62a7b1 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.20 +;; Version: 4.21 ;; ;; This file is part of GNU Emacs. ;; @@ -81,6 +81,9 @@ ;; ;; Changes since version 4.00: ;; --------------------------- +;; Version 4.21 +;; - Bug fixes. +;; ;; Version 4.20 ;; - Links use now the [[link][description]] format by default. ;; When inserting links, the user is prompted for a description. @@ -171,7 +174,7 @@ ;;; Customization variables -(defvar org-version "4.20" +(defvar org-version "4.21" "The version number of the file org.el.") (defun org-version () (interactive) @@ -5153,7 +5156,7 @@ NDAYS defaults to `org-agenda-ndays'." (d (- nt n1))) (- sd (+ (if (< d 0) 7 0) d))))) (day-numbers (list start)) - (inhibit-redisplay t) +;FIXME (inhibit-redisplay t) s e rtn rtnall file date d start-pos end-pos todayp nd) (setq org-agenda-redo-command (list 'org-agenda-list (list 'quote include-all) start-day ndays t)) @@ -9163,21 +9166,13 @@ With prefix ARG, insert below the current line." (interactive "P") (if (not (org-at-table-p)) (error "Not at a table")) - (let* ((line - (org-expand-wide-chars - (buffer-substring-no-properties (point-at-bol) (point-at-eol)))) - new) - (if (string-match "^[ \t]*|-" line) - (setq new (mapcar (lambda (x) (if (member x '(?| ?+)) ?| ?\ )) line)) - (setq new (mapcar (lambda (x) (if (equal x ?|) ?| ?\ )) line))) + (let* ((line (buffer-substring (point-at-bol) (point-at-eol))) + (new (org-table-clean-line line))) ;; Fix the first field if necessary - (setq new (concat new)) (if (string-match "^[ \t]*| *[#$] *|" line) (setq new (replace-match (match-string 0 line) t t new))) (beginning-of-line (if arg 2 1)) - (let (org-table-may-need-update) - (insert-before-markers new) - (insert-before-markers "\n")) + (let (org-table-may-need-update) (insert-before-markers new "\n")) (beginning-of-line 0) (re-search-forward "| ?" (point-at-eol) t) (and org-table-may-need-update (org-table-align)))) @@ -9188,39 +9183,31 @@ With prefix ARG, insert above the current line." (interactive "P") (if (not (org-at-table-p)) (error "Not at a table")) - (let ((line - (org-expand-wide-chars - (buffer-substring-no-properties (point-at-bol) (point-at-eol)))) - (col (current-column)) - start) - (if (string-match "^[ \t]*|-" line) - (setq line - (mapcar (lambda (x) (if (member x '(?| ?+)) - (prog1 (if start ?+ ?|) (setq start t)) - (if start ?- ?\ ))) - line)) - (setq line - (mapcar (lambda (x) (if (equal x ?|) - (prog1 (if start ?+ ?|) (setq start t)) - (if start ?- ?\ ))) - line))) + (let ((line (org-table-clean-line + (buffer-substring (point-at-bol) (point-at-eol)))) + (col (current-column))) + (while (string-match "|\\( +\\)|" line) + (setq line (replace-match + (concat "+" (make-string (- (match-end 1) (match-beginning 1)) + ?-) "|") t t line))) + (and (string-match "\\+" line) (setq line (replace-match "|" t t line))) (beginning-of-line (if arg 1 2)) - (apply 'insert line) - (if (equal (char-before (point)) ?+) - (progn (backward-delete-char 1) (insert "|"))) - (insert "\n") + (insert line "\n") (beginning-of-line (if arg 1 -1)) (move-to-column col))) -(defun org-expand-wide-chars (s) - "Expand wide characters to spaces." - (let (w a) - (mapconcat - (lambda (x) - (if (> (setq w (string-width (setq a (char-to-string x)))) 1) - (make-string w ?\ ) - a)) - s ""))) +(defun org-table-clean-line (s) + "Convert a table line S into a string with only \"|\" and space. +In particular, this does handle wide and invisible characters." + (if (string-match "^[ \t]*|-" s) + ;; It's a hline, just map the characters + (setq s (mapcar (lambda (x) (if (member x '(?| ?+)) ?| ?\ )) s)) + (while (string-match "|\\([ \t]*?[^ \t\r\n|][^\r\n|]*\\)|" s) + (setq s (replace-match + (concat "|" (make-string (org-string-width (match-string 1 s)) + ?\ ) "|") + t t s))) + s)) (defun org-table-kill-row () "Delete the current row or horizontal line from the table." diff --git a/org.pdf b/org.pdf index 866916b9c..ad309a90e 100644 Binary files a/org.pdf and b/org.pdf differ diff --git a/org.texi b/org.texi index 16644f7df..70ceebcea 100644 --- a/org.texi +++ b/org.texi @@ -4,7 +4,7 @@ @c @setfilename ../info/org @settitle Org Mode Manual -@set VERSION 4.20 +@set VERSION 4.21 @set DATE April 2006 @dircategory Emacs @@ -197,6 +197,7 @@ Miscellaneous * Completion:: M-TAB knows what you need * Customization:: Adapting Org-mode to your taste +* Updating settings:: How to tell Org-mode that settings have changed * Clean view:: Getting rid of leading stars in the outline * TTY keys:: Using Org-mode on a tty * FAQ:: Frequently asked questions @@ -1368,7 +1369,7 @@ links to other files, Usenet articles, emails and much more. @cindex format, of links Org-mode will recognize plain URL-like links and activate them as -clickable links. However, the general linkformat looks like this: +clickable links. However, the general link format looks like this: @example [[link][description]] @r{or alternatively} [[link]] @@ -3099,7 +3100,9 @@ end of the outline tree. For example: @end example Remember to execute @kbd{M-x normal-mode} after changing this to make -the new style visible to Emacs. +the new style visible to Emacs. This command reastarts org-mode for the +current buffer and forces Emacs to re-evaluate the loval variables +section in the buffer. @node Comment lines, , Export options, HTML export @subsection Comment lines @@ -3173,6 +3176,7 @@ to make iCal re-read the calendar files each time a new version of @menu * Completion:: M-TAB knows what you need * Customization:: Adapting Org-mode to your taste +* Updating settings:: How to tell Org-mode that settings have changed * Clean view:: Getting rid of leading stars in the outline * TTY keys:: Using Org-mode on a tty * FAQ:: Frequently asked questions @@ -3225,7 +3229,7 @@ Elsewhere, complete dictionary words using ispell. @end table -@node Customization, Clean view, Completion, Miscellaneous +@node Customization, Updating settings, Completion, Miscellaneous @section Customization @cindex customization @cindex options, for customization @@ -3237,7 +3241,41 @@ describing the variables here. A structured overview of customization variables is available with @kbd{M-x org-customize}. Or select @code{Browse Org Group} from the @code{Org->Customization} menu. -@node Clean view, TTY keys, Customization, Miscellaneous +@node Updating settings, Clean view, Customization, Miscellaneous +@section Updating settings after changes +@cindex updating, after setting changes +@kindex C-c C-c + +Org-mode uses special lines in the buffer to set file-local values for a +number of user options. When such settings are changed, you need to +inform Org-mode that something has be modified and that it should +recheck the buffer for setting. This is done with the command @kbd{C-c +C-c} in the following situations: + +@itemize @bullet +@item +After changing any of the special buffer lines starting with @samp{#+}, +for example @samp{#+STARTUP}, @samp{#+CATEGORY}. Org-mode will then +read these settings and activate them (see @ref{Visibility cycling}, +@ref{Narrow columns}, @ref{Clean view}, @ref{Per file keywords}, +@ref{Categories}) +@item +After editing by hand a @samp{#+TBLFM} line containing formulas for a +table. When pressing @kbd{C-c C-c} in that line, all formulas are +re-applied to the entire table (@pxref{Editing/debugging formulas}). +@item +In a table, @kbd{C-c C-c} does force a re-align, even if the table +editor is turned off (@pxref{Built-in table editor}) +@item +In an ordered plain list, @kbd{C-c C-c} forces a renumbering of the list +(@pxref{Plain Lists}). +@item +After adding a new radio target @samp{<<>>}, @kbd{C-c C-c} +must be used with the cursor on that target to activate it throughout +the buffer. +@end itemize + +@node Clean view, TTY keys, Updating settings, Miscellaneous @section A cleaner outline view @cindex hiding leading stars @cindex clean outline view @@ -3487,7 +3525,7 @@ Yes, see @ref{Interaction}. @samp{#ERROR}. What is going on?}@* @c Org-mode tried to compute the column from other fields using a -formula stored in the @samp{#+TBLFMT:} line just below the table, and +formula stored in the @samp{#+TBLFM:} line just below the table, and the evaluation of the formula fails. Fix the fields used in the formula, or fix the formula, or remove it! diff --git a/orgcard.pdf b/orgcard.pdf index c78e6c108..57e9acd9d 100644 Binary files a/orgcard.pdf and b/orgcard.pdf differ diff --git a/orgcard.tex b/orgcard.tex index 4c801030d..c149e041c 100644 --- a/orgcard.tex +++ b/orgcard.tex @@ -1,5 +1,5 @@ % Reference Card for Org Mode -\def\orgversionnumber{4.20} +\def\orgversionnumber{4.21} \def\year{2006} % %**start of header