diff --git a/org b/org index 0a272c241..d5fb9f20b 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.23). + This manual is for Org-mode (version 4.24). 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.23). +This manual is for Org-mode (version 4.24). Copyright (C) 2004, 2005, 2006 Free Software Foundation @@ -931,7 +931,7 @@ A formula can be any algebraic expression understood by the Emacs `calc' package. Note that `calc' has the slightly non-standard convention that `/' has lower precedence than `*', so that `a/b*c' is interpreted as `a/(b*c)'. Before evaluation by `calc-eval' (*note -calc-eval: (calc)Calling Calc from Your Lisp Programs.), variable +calc-eval: (calc)Calling Calc from Your Programs.), variable substitution takes place: $ refers to the current field @@ -3426,6 +3426,8 @@ Org-mode would not be what it is without your input. * Sacha Chua suggested to copy some linking code from Planner. + * Kees Dullemond inspired the use of narrowed tabled columns. + * Christian Egli converted the documentation into TeXInfo format, patched CSS formatting into the HTML exporter, and inspired the agenda. @@ -4029,77 +4031,77 @@ Node: Narrow columns32466 Ref: Narrow columns-Footnote-134399 Node: Table calculations34445 Node: Formula syntax35621 -Ref: Formula syntax-Footnote-138555 -Node: Column formulas38854 -Node: Advanced features40616 -Node: Named-field formulas43871 -Node: Editing/debugging formulas44511 -Node: Appetizer46269 -Node: orgtbl-mode47371 -Node: table.el47862 -Node: Hyperlinks48839 -Node: Link format49473 -Node: Internal links50770 -Node: Radio targets52660 -Node: CamelCase links53375 -Node: External links53873 -Node: Managing links55798 -Node: Search Options59782 -Ref: Search Options-Footnote-161102 -Node: Remember61183 -Ref: Remember-Footnote-165049 -Node: TODO items65173 -Node: TODO basics66096 -Node: Progress logging67611 -Node: TODO extensions68397 -Node: Workflow states69197 -Node: TODO types70065 -Ref: TODO types-Footnote-171723 -Node: Per file keywords71805 -Ref: Per file keywords-Footnote-173258 -Node: Priorities73486 -Node: Timestamps74695 -Node: Time stamps75016 -Node: Creating timestamps77031 -Node: Tags80160 -Node: Tag inheritance80895 -Node: Setting tags81832 -Node: Tag searches82794 -Node: Agenda Views84003 -Node: Agenda files85542 -Ref: Agenda files-Footnote-186502 -Ref: Agenda files-Footnote-286651 -Node: Agenda dispatcher86843 -Node: Weekly/Daily Agenda88973 -Node: Categories90108 -Node: Time-of-day specifications90756 -Node: Calendar/Diary integration92732 -Node: Sorting of agenda items94109 -Node: Global TODO list94941 -Node: Matching headline tags96356 -Node: Timeline97299 -Node: Agenda commands98172 -Node: Exporting103428 -Node: ASCII export104558 -Node: HTML export105380 -Node: XML export107128 -Node: iCalendar export107495 -Node: Text interpretation109317 -Node: Comment lines109794 -Node: Enhancing text110263 -Node: Export options112094 -Node: Miscellaneous113696 -Node: Completion114454 -Node: Customization115450 -Node: Summary of in-buffer settings116057 -Node: The very busy C-c C-c key118816 -Node: Clean view120221 -Node: TTY keys122798 -Node: FAQ124399 -Node: Interaction130713 -Node: Bugs133580 -Node: Acknowledgments135534 -Node: Index138466 -Node: Key Index159544 +Ref: Formula syntax-Footnote-138550 +Node: Column formulas38849 +Node: Advanced features40611 +Node: Named-field formulas43866 +Node: Editing/debugging formulas44506 +Node: Appetizer46264 +Node: orgtbl-mode47366 +Node: table.el47857 +Node: Hyperlinks48834 +Node: Link format49468 +Node: Internal links50765 +Node: Radio targets52655 +Node: CamelCase links53370 +Node: External links53868 +Node: Managing links55793 +Node: Search Options59777 +Ref: Search Options-Footnote-161097 +Node: Remember61178 +Ref: Remember-Footnote-165044 +Node: TODO items65168 +Node: TODO basics66091 +Node: Progress logging67606 +Node: TODO extensions68392 +Node: Workflow states69192 +Node: TODO types70060 +Ref: TODO types-Footnote-171718 +Node: Per file keywords71800 +Ref: Per file keywords-Footnote-173253 +Node: Priorities73481 +Node: Timestamps74690 +Node: Time stamps75011 +Node: Creating timestamps77026 +Node: Tags80155 +Node: Tag inheritance80890 +Node: Setting tags81827 +Node: Tag searches82789 +Node: Agenda Views83998 +Node: Agenda files85537 +Ref: Agenda files-Footnote-186497 +Ref: Agenda files-Footnote-286646 +Node: Agenda dispatcher86838 +Node: Weekly/Daily Agenda88968 +Node: Categories90103 +Node: Time-of-day specifications90751 +Node: Calendar/Diary integration92727 +Node: Sorting of agenda items94104 +Node: Global TODO list94936 +Node: Matching headline tags96351 +Node: Timeline97294 +Node: Agenda commands98167 +Node: Exporting103423 +Node: ASCII export104553 +Node: HTML export105375 +Node: XML export107123 +Node: iCalendar export107490 +Node: Text interpretation109312 +Node: Comment lines109789 +Node: Enhancing text110258 +Node: Export options112089 +Node: Miscellaneous113691 +Node: Completion114449 +Node: Customization115445 +Node: Summary of in-buffer settings116052 +Node: The very busy C-c C-c key118811 +Node: Clean view120216 +Node: TTY keys122793 +Node: FAQ124394 +Node: Interaction130708 +Node: Bugs133575 +Node: Acknowledgments135529 +Node: Index138527 +Node: Key Index159605  End Tag Table diff --git a/org.el b/org.el index 30e528377..936f8619f 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.23 +;; Version: 4.24 ;; ;; This file is part of GNU Emacs. ;; @@ -81,6 +81,9 @@ ;; ;; Changes since version 4.00: ;; --------------------------- +;; Version 4.24 +;; - Bug fixes. +;; ;; Version 4.23 ;; - Bug fixes. ;; @@ -179,7 +182,7 @@ ;;; Customization variables -(defvar org-version "4.23" +(defvar org-version "4.24" "The version number of the file org.el.") (defun org-version () (interactive) @@ -232,7 +235,11 @@ uninteresting. Also tables look terrible when wrapped." (defcustom org-startup-align-all-tables nil "Non-nil means, align all tables when visiting a file. This is useful when the column width in tables is forced with cookies -in table fields. Such tables will look correct only after the first re-align." +in table fields. Such tables will look correct only after the first re-align. +This can also be configured on a per-file basis by adding one of +the following lines anywhere in the buffer: + #+STARTUP: align + #+STARTUP: noalign" :group 'org-startup :type 'boolean) @@ -242,7 +249,6 @@ This means, if you start editing an org file, you will get an immediate reminder of any due deadlines. This can also be configured on a per-file basis by adding one of the following lines anywhere in the buffer: - #+STARTUP: dlcheck #+STARTUP: nodlcheck" :group 'org-startup @@ -396,7 +402,12 @@ This has the effect that two stars are being added/taken away in promotion/demotion commands. It also influences how levels are handled by the exporters. Changing it requires restart of `font-lock-mode' to become effective -for fontification also in regions already fontified." +for fontification also in regions already fontified. +You may also set this on a per-file basis by adding one of the following +lines to the buffer: + + #+STARTUP: odd + #+STARTUP: oddeven" :group 'org-edit-structure :group 'org-font-lock :type 'boolean) @@ -1124,7 +1135,7 @@ closing date." :type 'boolean) (defgroup org-priorities nil - "Keywords in Org-mode." + "Priorities in Org-mode." :tag "Org Priorities" :group 'org-todo) @@ -1179,7 +1190,7 @@ moved to the new date." :type 'boolean) (defgroup org-tags nil - "Options concerning startup of Org-mode." + "Options concerning tags in Org-mode." :tag "Org Tags" :group 'org) @@ -1903,7 +1914,12 @@ face is white for a light background, and black for a dark background. You may have to customize the face `org-hide' to make this work. Changing it requires restart of `font-lock-mode' to become effective -also in regions already fontified." +also in regions already fontified. +You may also set this on a per-file basis by adding one of the following +lines to the buffer: + + #+STARTUP: hidestars + #+STARTUP: showstars" :group 'org-font-lock :type 'boolean) @@ -2070,6 +2086,14 @@ Changing this variable requires a restart of Emacs to take effect." "Face for links." :group 'org-faces) +(defface org-date + '((((type tty) (class color)) (:foreground "cyan" :weight bold)) + (((class color) (background light)) (:foreground "Purple" :underline t)) + (((class color) (background dark)) (:foreground "Cyan" :underline t)) + (t (:bold t))) + "Face for links." + :group 'org-faces) + (defface org-tag '((((type tty) (class color)) (:weight bold)) (((class color) (background light)) (:weight bold)) @@ -2078,6 +2102,15 @@ Changing this variable requires a restart of Emacs to take effect." "Face for tags." :group 'org-faces) +(defface org-todo ;; font-lock-warning-face + '((((type tty) (class color)) (:foreground "red")) + (((class color) (background light)) (:foreground "Red" :bold t)) + (((class color) (background dark)) (:foreground "Red1" :bold t)) +; (((class color) (background dark)) (:foreground "Pink" :bold t)) + (t (:inverse-video t :bold t))) + "Face for TODO keywords." + :group 'org-faces) + (defface org-done ;; font-lock-type-face '((((type tty) (class color)) (:foreground "green")) (((class color) (background light)) (:foreground "ForestGreen" :bold t)) @@ -2400,6 +2433,10 @@ The following commands are available: s) (match-string-no-properties num string))) +(defsubst org-no-properties (s) + (remove-text-properties 0 (length s) org-rm-props s) + s) + (defun org-current-time () "Current time, possibly rounded to `org-time-stamp-rounding-minutes'." (if (> org-time-stamp-rounding-minutes 0) @@ -2530,7 +2567,9 @@ that will be added to PLIST. Returns the string that was modified." (defun org-activate-bracket-links (limit) "Run through the buffer and add overlays to bracketed links." (if (re-search-forward org-bracket-link-regexp limit t) - (let* ((help (concat "LINK: " (org-match-string-no-properties 1))) + (let* ((help (concat "LINK: " + (org-match-string-no-properties 1))) + ;; FIXME: above we should remove the escapes. (ip (list 'invisible 'org-link 'intangible t 'rear-nonsticky t 'keymap org-mouse-map 'mouse-face 'highlight 'help-echo help)) @@ -2678,13 +2717,13 @@ between words." (if (memq 'plain lk) '(org-activate-plain-links (0 'org-link t))) (if (memq 'bracket lk) '(org-activate-bracket-links (0 'org-link t))) (if (memq 'radio lk) '(org-activate-target-links (0 'org-link t))) - (if (memq 'date lk) '(org-activate-dates (0 'org-link t))) + (if (memq 'date lk) '(org-activate-dates (0 'org-date t))) (if (memq 'camel lk) '(org-activate-camels (0 'org-link t))) (if (memq 'tag lk) '(org-activate-tags (1 'org-tag prepend))) (if org-table-limit-column-width '(org-hide-wide-columns (0 nil append))) (list (concat "^\\*+[ \t]*" org-not-done-regexp) - '(1 'org-warning t)) + '(1 'org-todo t)) (list (concat "\\[#[A-Z]\\]") '(0 'org-special-keyword t)) (list (concat "\\<" org-deadline-string) '(0 'org-special-keyword t)) (list (concat "\\<" org-scheduled-string) '(0 'org-special-keyword t)) @@ -2705,7 +2744,7 @@ between words." '("| *\\(:?=[^|\n]*\\)" (1 'org-formula t)) '("^[ \t]*| *\\([#!$*_^]\\) *|" (1 'org-formula t)) (if org-format-transports-properties-p - '("| *\\(<[0-9]+>\\) *|" (1 'org-formula t))) + '("| *\\(<[0-9]+>\\) *" (1 'org-formula t))) ))) (setq org-font-lock-extra-keywords (delq nil org-font-lock-extra-keywords)) ;; Now set the full font-lock-keywords @@ -3070,7 +3109,10 @@ or nil." (error (outline-next-heading))) (prog1 (match-string 0) (funcall outline-level))))) - (unless (bolp) (newline)) + (if (and (bolp) + (save-excursion (backward-char 1) (not (org-invisible-p)))) + (open-line 1) + (newline)) (insert head) (if (looking-at "[ \t]*") (replace-match " ")) @@ -5179,7 +5221,7 @@ NDAYS defaults to `org-agenda-ndays'." (d (- nt n1))) (- sd (+ (if (< d 0) 7 0) d))))) (day-numbers (list start)) -;FIXME (inhibit-redisplay t) + (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)) @@ -6251,7 +6293,6 @@ only the correctly processes TXT should be returned - this is used by (file-name-nondirectory buffer-file-name)) ""))) (tag (if tags (nth (1- (length tags)) tags) "")) - ;;(tag (or (nth (1- (or (length tags) 0)) tags) "")) FIXME: rm time ;; needed for the eval of the prefix format (ts (if dotime (concat (if (stringp dotime) dotime "") txt))) (time-of-day (and dotime (org-get-time-of-day ts))) @@ -7306,7 +7347,10 @@ optional argument IN-EMACS is non-nil, Emacs will visit the file." (format "Execute \"%s\" in shell? " (org-add-props cmd nil 'face 'org-warning)))) - (shell-command cmd) + (progn + (message "Executing %s..." cmd) + (shell-command cmd) + (message "Executing %s...done" cmd)) (error "Abort")))) (t @@ -8665,7 +8709,7 @@ This is being used to correctly align a single field after TAB or RET.") (> (org-string-width xx) fmax)) (org-add-props xx nil 'help-echo - (concat "Clipped table field, use C-c ` to edit. Full value is:\n" (copy-sequence xx))) + (concat "Clipped table field, use C-c ` to edit. Full value is:\n" (org-no-properties (copy-sequence xx)))) (setq f1 (min fmax (or (string-match org-bracket-link-regexp xx) fmax))) (unless (> f1 1) (error "Cannot narrow field starting with wide link \"%s\"" @@ -11765,8 +11809,9 @@ headlines. The default is 3. Lower levels will become bulleted lists." (concat "") (concat "" desc ""))))) ((member type '("bbdb" "vm" "wl" "mhe" "rmail" "gnus" "shell")) - (setq rpl (concat "<" type ":" path ">")))) - ;; FIXME: We get to see the escaped links!!!!! + (setq rpl (concat "<" type ":" + (save-match-data (org-link-unescape path)) + ">")))) (setq line (replace-match rpl t t line) start (+ start (length rpl)))) ;; TODO items @@ -13238,9 +13283,10 @@ With optional NODE, go directly to that node." ;; through to `fill-paragraph' when appropriate. (set (make-local-variable 'fill-paragraph-function) 'org-fill-paragraph) ;; Adaptive filling: To get full control, first make sure that - ;; `adaptive-fill-regexp' never matches. Then install our won matcher. - (setq adaptive-fill-regexp "\000") - (setq adaptive-fill-function 'org-adaptive-fill-function)) + ;; `adaptive-fill-regexp' never matches. Then install our own matcher. + (set (make-local-variable 'adaptive-fill-regexp) "\000") + (set (make-local-variable 'adaptive-fill-function) + 'org-adaptive-fill-function)) (defun org-fill-paragraph (&optional justify) "Re-align a table, pass through to fill-paragraph if no table." diff --git a/org.pdf b/org.pdf index 0e94ac4ed..45cde549b 100644 Binary files a/org.pdf and b/org.pdf differ diff --git a/org.texi b/org.texi index 9e4732f61..5108dffae 100644 --- a/org.texi +++ b/org.texi @@ -4,7 +4,7 @@ @c @setfilename ../info/org @settitle Org Mode Manual -@set VERSION 4.23 +@set VERSION 4.24 @set DATE April 2006 @dircategory Emacs @@ -1056,7 +1056,7 @@ A formula can be any algebraic expression understood by the Emacs @file{calc} package. Note that @file{calc} has the slightly non-standard convention that @samp{/} has lower precedence than @samp{*}, so that @samp{a/b*c} is interpreted as @samp{a/(b*c)}. Before -evaluation by @code{calc-eval} (@pxref{Calling Calc from Your Lisp +evaluation by @code{calc-eval} (@pxref{Calling Calc from Your Programs,calc-eval,Calling calc from Your Lisp Programs,calc,GNU Emacs Calc Manual}), variable substitution takes place: @@ -3835,6 +3835,8 @@ specified time. @item Sacha Chua suggested to copy some linking code from Planner. @item +Kees Dullemond inspired the use of narrowed tabled columns. +@item Christian Egli converted the documentation into TeXInfo format, patched CSS formatting into the HTML exporter, and inspired the agenda. @item diff --git a/orgcard.pdf b/orgcard.pdf index dac2e8a2b..3053c1258 100644 Binary files a/orgcard.pdf and b/orgcard.pdf differ diff --git a/orgcard.tex b/orgcard.tex index 245354e85..0ad90af0c 100644 --- a/orgcard.tex +++ b/orgcard.tex @@ -1,5 +1,5 @@ % Reference Card for Org Mode -\def\orgversionnumber{4.23} +\def\orgversionnumber{4.24} \def\year{2006} % %**start of header