Release 4.28

This commit is contained in:
Carsten Dominik 2008-01-31 11:31:27 +01:00
parent 5f473f46df
commit fc87d5cd14
6 changed files with 270 additions and 134 deletions

125
org
View File

@ -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.27).
This manual is for Org-mode (version 4.28).
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.27).
This manual is for Org-mode (version 4.28).
Copyright (C) 2004, 2005, 2006 Free Software Foundation
@ -2514,7 +2514,9 @@ View/GoTo org file
`f'
Toggle Follow mode. In Follow mode, as you move the cursor through
the agenda buffer, the other window always shows the corresponding
location in the org file.
location in the org file. The initial setting for this mode in new
agenda buffers can be set with the variable
`org-agenda-start-with-follow-mode'.
`l'
Toggle Logbook mode. In Logbook mode, entries that where marked
@ -3415,6 +3417,10 @@ Org-mode can cooperate with the following packages:
want to have other replacement keys, look at the variable
`org-disputed-keys'.
`windmove.el' by Hovav Shacham
Also this package uses the `S-<cursor>' keys, so everything written
in the paragraph above about CUA mode also applies here.
`remember.el' by John Wiegley
Org mode cooperates with remember, see *Note Remember::.
`Remember.el' is not part of Emacs, find it on the web.
@ -3575,7 +3581,7 @@ File: org, Node: Index, Next: Key Index, Prev: Miscellaneous, Up: Top
* agenda: Weekly/Daily agenda. (line 6)
* agenda commands, custom: Agenda dispatcher. (line 6)
* agenda dispatcher: Agenda dispatcher. (line 6)
* agenda files, removing buffers: Agenda commands. (line 187)
* agenda files, removing buffers: Agenda commands. (line 189)
* agenda views: Agenda views. (line 6)
* agenda, for single file: Timeline. (line 6)
* allout.el, conflict with: FAQ. (line 6)
@ -3640,7 +3646,7 @@ File: org, Node: Index, Next: Key Index, Prev: Miscellaneous, Up: Top
* DEADLINE keyword: Time stamps. (line 43)
* deadlines: Time stamps. (line 6)
* demotion, of subtrees: Structure editing. (line 6)
* diary entries, creating from agenda: Agenda commands. (line 145)
* diary entries, creating from agenda: Agenda commands. (line 147)
* diary integration: Calendar/Diary integration.
(line 6)
* dictionary word completion: Completion. (line 6)
@ -3773,7 +3779,7 @@ File: org, Node: Index, Next: Key Index, Prev: Miscellaneous, Up: Top
* region, active <3>: Built-in table editor.
(line 165)
* region, active: Structure editing. (line 51)
* remember.el <1>: Interaction. (line 40)
* remember.el <1>: Interaction. (line 64)
* remember.el: Remember. (line 6)
* richer text: Enhancing text. (line 6)
* RMAIL links: External links. (line 6)
@ -3856,6 +3862,7 @@ File: org, Node: Index, Next: Key Index, Prev: Miscellaneous, Up: Top
* visible text, printing: Sparse trees. (line 39)
* VM links: External links. (line 6)
* WANDERLUST links: External links. (line 6)
* windmove.el: Interaction. (line 60)
* workflow states as TODO keywords: Workflow states. (line 6)
* XML export: XML export. (line 6)
@ -3868,28 +3875,28 @@ File: org, Node: Key Index, Prev: Index, Up: Top
[index]
* Menu:
* +: Agenda commands. (line 118)
* ,: Agenda commands. (line 110)
* -: Agenda commands. (line 124)
* .: Agenda commands. (line 89)
* :: Agenda commands. (line 107)
* +: Agenda commands. (line 120)
* ,: Agenda commands. (line 112)
* -: Agenda commands. (line 126)
* .: Agenda commands. (line 91)
* :: Agenda commands. (line 109)
* <: Creating timestamps. (line 75)
* <left>: Agenda commands. (line 86)
* <left>: Agenda commands. (line 88)
* <RET> <1>: Agenda commands. (line 41)
* <RET> <2>: Creating timestamps. (line 100)
* <RET>: Built-in table editor.
(line 64)
* <right>: Agenda commands. (line 81)
* <right>: Agenda commands. (line 83)
* <SPC>: Agenda commands. (line 28)
* <TAB> <1>: Agenda commands. (line 35)
* <TAB> <2>: Built-in table editor.
(line 57)
* <TAB> <3>: Plain lists. (line 38)
* <TAB>: Visibility cycling. (line 10)
* > <1>: Agenda commands. (line 140)
* > <1>: Agenda commands. (line 142)
* >: Creating timestamps. (line 76)
* C: Agenda commands. (line 170)
* c: Agenda commands. (line 154)
* C: Agenda commands. (line 172)
* c: Agenda commands. (line 156)
* C-#: Built-in table editor.
(line 155)
* C-,: Agenda files. (line 18)
@ -3972,7 +3979,7 @@ File: org, Node: Key Index, Prev: Index, Up: Top
* C-c C-x a: ASCII export. (line 9)
* C-c C-x b: HTML export. (line 11)
* C-c C-x c: iCalendar export. (line 20)
* C-c C-x C-c: Agenda commands. (line 177)
* C-c C-x C-c: Agenda commands. (line 179)
* C-c C-x C-i: iCalendar export. (line 15)
* C-c C-x C-k: Structure editing. (line 36)
* C-c C-x C-w <1>: Built-in table editor.
@ -3998,15 +4005,15 @@ File: org, Node: Key Index, Prev: Index, Up: Top
* C-u C-c =: Built-in table editor.
(line 139)
* C-u C-c C-l: Handling links. (line 40)
* D: Agenda commands. (line 66)
* d: Agenda commands. (line 63)
* D: Agenda commands. (line 68)
* d: Agenda commands. (line 65)
* f: Agenda commands. (line 44)
* g: Agenda commands. (line 70)
* H: Agenda commands. (line 174)
* i: Agenda commands. (line 145)
* l: Agenda commands. (line 49)
* g: Agenda commands. (line 72)
* H: Agenda commands. (line 176)
* i: Agenda commands. (line 147)
* l: Agenda commands. (line 51)
* L: Agenda commands. (line 32)
* M: Agenda commands. (line 161)
* M: Agenda commands. (line 163)
* M-<down>: Built-in table editor.
(line 82)
* M-<left> <1>: Built-in table editor.
@ -4049,32 +4056,32 @@ File: org, Node: Key Index, Prev: Index, Up: Top
* mouse-3 <1>: Agenda commands. (line 28)
* mouse-3: Handling links. (line 74)
* n: Agenda commands. (line 19)
* o: Agenda commands. (line 57)
* P: Agenda commands. (line 115)
* o: Agenda commands. (line 59)
* P: Agenda commands. (line 117)
* p: Agenda commands. (line 20)
* q: Agenda commands. (line 184)
* r <1>: Agenda commands. (line 74)
* q: Agenda commands. (line 186)
* r <1>: Agenda commands. (line 76)
* r: Global TODO list. (line 21)
* S: Agenda commands. (line 165)
* S-<down> <1>: Agenda commands. (line 124)
* S: Agenda commands. (line 167)
* S-<down> <1>: Agenda commands. (line 126)
* S-<down> <2>: Creating timestamps. (line 55)
* S-<down>: Priorities. (line 25)
* S-<left> <1>: Agenda commands. (line 136)
* S-<left> <1>: Agenda commands. (line 138)
* S-<left>: Creating timestamps. (line 50)
* S-<RET>: Built-in table editor.
(line 170)
* S-<right> <1>: Agenda commands. (line 128)
* S-<right> <1>: Agenda commands. (line 130)
* S-<right>: Creating timestamps. (line 50)
* S-<TAB> <1>: Built-in table editor.
(line 61)
* S-<TAB>: Visibility cycling. (line 19)
* S-<up> <1>: Agenda commands. (line 118)
* S-<up> <1>: Agenda commands. (line 120)
* S-<up> <2>: Creating timestamps. (line 55)
* S-<up>: Priorities. (line 25)
* T: Agenda commands. (line 102)
* t: Agenda commands. (line 98)
* w: Agenda commands. (line 60)
* x: Agenda commands. (line 187)
* T: Agenda commands. (line 104)
* t: Agenda commands. (line 100)
* w: Agenda commands. (line 62)
* x: Agenda commands. (line 189)

@ -4153,27 +4160,27 @@ Node: Global TODO list98135
Node: Matching headline tags99550
Node: Timeline100493
Node: Agenda commands101366
Node: Exporting106622
Node: ASCII export107752
Node: HTML export108574
Node: XML export110322
Node: iCalendar export110689
Node: Text interpretation112511
Node: Comment lines112988
Node: Enhancing text113457
Node: Export options115288
Node: Miscellaneous116890
Node: Completion117648
Node: Customization118644
Node: Summary of in-buffer settings119251
Node: The very busy C-c C-c key122012
Node: Clean view123417
Node: TTY keys125994
Node: FAQ127595
Node: Interaction134497
Node: Bugs137364
Node: Acknowledgments139318
Node: Index142413
Node: Key Index163710
Node: Exporting106755
Node: ASCII export107885
Node: HTML export108707
Node: XML export110455
Node: iCalendar export110822
Node: Text interpretation112644
Node: Comment lines113121
Node: Enhancing text113590
Node: Export options115421
Node: Miscellaneous117023
Node: Completion117781
Node: Customization118777
Node: Summary of in-buffer settings119384
Node: The very busy C-c C-c key122145
Node: Clean view123550
Node: TTY keys126127
Node: FAQ127728
Node: Interaction134630
Node: Bugs137664
Node: Acknowledgments139618
Node: Index142713
Node: Key Index164083

End Tag Table

265
org.el
View File

@ -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.27
;; Version: 4.28
;;
;; This file is part of GNU Emacs.
;;
@ -81,6 +81,9 @@
;;
;; Changes since version 4.10:
;; ---------------------------
;; Version 4.28
;; - Bug fixes.
;;
;; Version 4.27
;; - HTML exporter generalized to receive external options.
;; As part of the process, author, email and date have been moved to the
@ -146,7 +149,7 @@
;;; Customization variables
(defvar org-version "4.27"
(defvar org-version "4.28"
"The version number of the file org.el.")
(defun org-version ()
(interactive)
@ -385,6 +388,11 @@ body starts at column 0, indentation is not changed at all."
:group 'org-edit-structure
:type 'boolean)
(defcustom org-insert-heading-hook nil
"Hook being run after inserting a new heading."
:group 'org-edit-structure
:type 'boolean)
(defcustom org-enable-fixed-width-editor t
"Non-nil means, lines starting with \":\" are treated as fixed-width.
This currently only means, they are never auto-wrapped.
@ -1244,6 +1252,7 @@ key The key (a single char as a string) to be associated with the command.
type The command type, any of the following symbols:
todo Entries with a specific TODO keyword, in all agenda files.
tags Tags match in all agenda files.
tags-todo Tags match in all agenda files, TODO entries only.
todo-tree Sparse tree of specific TODO keyword in *current* file.
tags-tree Sparse tree with all tags matches in *current* file.
occur-tree Occur sparse tree for current file.
@ -1256,6 +1265,7 @@ match What to search for:
(list (string :tag "Key")
(choice :tag "Type"
(const :tag "Tags search in all agenda files" tags)
(const :tag "Tags search of TODO entries, all agenda files" tags-todo)
(const :tag "TODO keyword search in all agenda files" todo)
(const :tag "Tags sparse tree in current buffer" tags-tree)
(const :tag "TODO keyword tree in current buffer" todo-tree)
@ -1272,7 +1282,7 @@ potentially much shorter TODO lists."
:group 'org-todo
:type 'boolean)
(defcustom org-agenda-include-all-todo t
(defcustom org-agenda-include-all-todo nil
"Non-nil means, the agenda will always contain all TODO entries.
When nil, date-less entries will only be shown if `org-agenda' is called
with a prefix argument.
@ -1294,7 +1304,7 @@ forth between agenda and calendar."
:group 'org-agenda
:type 'sexp)
(defgroup org-agenda-window-setup nil
(defgroup org-agenda-setup nil
"Options concerning setting up the Agenda window in Org Mode."
:tag "Org Agenda Window Setup"
:group 'org-agenda)
@ -1306,6 +1316,11 @@ Needs to be set before org.el is loaded."
:group 'org-agenda-setup
:type 'boolean)
(defcustom org-agenda-start-with-follow-mode t
"The initial value of follwo-mode in a newly created agenda window."
:group 'org-agenda-setup
:type 'boolean)
(defcustom org-select-timeline-window t
"Non-nil means, after creating a timeline, move cursor into Timeline window.
When nil, cursor will remain in the current window."
@ -1618,6 +1633,16 @@ This option can also be set with the +OPTIONS line, e.g. \"\\n:t\"."
:group 'org-export-general
:type 'boolean)
(defcustom org-export-with-tags t
"Nil means, do not export tags, just remove them from headlines."
:group 'org-export-general
:type 'boolean)
(defcustom org-export-with-timestamps t
"Nil means, do not export timestamps and associated keywords."
:group 'org-export-general
:type 'boolean)
(defgroup org-export-translation nil
"Options for translating special ascii sequences for the export backends."
:tag "Org Export Translation"
@ -2220,6 +2245,13 @@ This face is only used if `org-fontify-done-headline' is set."
(defvar org-scheduled-time-regexp nil
"Matches the SCHEDULED keyword together with a time stamp.")
(make-variable-buffer-local 'org-scheduled-time-regexp)
(defvar org-closed-time-regexp nil
"Matches the CLOSED keyword together with a time stamp.")
(make-variable-buffer-local 'org-closed-time-regexp)
(defvar org-keyword-time-regexp nil
"Matches any of the 3 keywords, together with the time stamp.")
(make-variable-buffer-local 'org-keyword-time-regexp)
(defun org-set-regexps-and-options ()
"Precompute regular expressions for current buffer."
@ -2309,7 +2341,15 @@ This face is only used if `org-fontify-done-headline' is set."
org-scheduled-regexp
(concat "\\<" org-scheduled-string)
org-scheduled-time-regexp
(concat "\\<" org-scheduled-string " *<\\([^>]+\\)>"))
(concat "\\<" org-scheduled-string " *<\\([^>]+\\)>")
org-closed-time-regexp
(concat "\\<" org-closed-string " *\\[\\([^]]+\\)\\]")
org-keyword-time-regexp
(concat "\\<\\(" org-scheduled-string
"\\|" org-deadline-string
"\\|" org-closed-string "\\)"
" *[[<]\\([^]>]+\\)[]>]")) ;; FIXME: is this correct?
(org-set-font-lock-defaults)))
;; Tell the compiler about dynamically scoped variables,
@ -3138,22 +3178,24 @@ or nil."
(defun org-insert-heading (&optional force-heading)
"Insert a new heading or item with same depth at point."
(interactive "P")
(when (or force-heading (not (org-insert-item)))
(let* ((head (save-excursion
(condition-case nil
(org-back-to-heading)
(error (outline-next-heading)))
(prog1 (match-string 0)
(funcall outline-level)))))
(cond
((and (org-on-heading-p) (bolp)
(save-excursion (backward-char 1) (not (org-invisible-p))))
(open-line 1))
((bolp) nil)
(t (newline)))
(insert head)
(just-one-space)
(run-hooks 'org-insert-heading-hook))))
(if (= (buffer-size) 0)
(insert "\n* ")
(when (or force-heading (not (org-insert-item)))
(let* ((head (save-excursion
(condition-case nil
(org-back-to-heading)
(error (outline-next-heading)))
(prog1 (match-string 0)
(funcall outline-level)))))
(cond
((and (org-on-heading-p) (bolp)
(save-excursion (backward-char 1) (not (org-invisible-p))))
(open-line 1))
((bolp) nil)
(t (newline)))
(insert head)
(just-one-space)
(run-hooks 'org-insert-heading-hook)))))
(defun org-insert-item ()
"Insert a new item at the current level.
@ -3838,7 +3880,7 @@ heading be marked DONE, and the current time will be added."
;; Here we are back in the original buffer. Everything seems to have
;; worked. So now cut the tree and finish up.
(let (this-command) (org-cut-subtree))
(if (looking-at "[ \t]*$") (kill-line))
(if (and (not (eobp)) (looking-at "[ \t]*$")) (kill-line))
(message "Subtree archived %s"
(if (eq this-buffer buffer)
(concat "under heading: " heading)
@ -4108,6 +4150,61 @@ to modify it to the correct date."
(message "%s" (substitute-command-keys
"Use \\[org-timestamp-up-day] and \\[org-timestamp-down-day] to change the date.")))
(defun org-add-planning-info (what &optional time &rest remove)
"Insert new timestamp with keyword in the line directly after the headline.
WHAT indicates what kind of time stamp to add. TIME indicated the time to use.
If non is given, the user is prompted for a date.
REMOVE indicates what kind of entries to remove. An old WHAT entry will also
be removed."
(interactive)
(save-excursion
(let (beg end col list elt)
(org-show-entry) ; Avoid this.
(org-back-to-heading t)
(setq beg (point))
(looking-at (concat outline-regexp "\\( *\\)[^\r\n]*"))
(goto-char (match-end 1))
(setq col (current-column))
(goto-char (1+ (match-end 0)))
(if (and (not (looking-at outline-regexp))
(looking-at (concat "[^\r\n]*?" org-keyword-time-regexp
"[^\r\n]*")))
(narrow-to-region (match-beginning 0) (match-end 0))
(insert "\n")
(backward-char 1)
(narrow-to-region (point) (point))
(indent-to-column col))
;; Check if we have to remove something.
(setq list (cons what remove))
(while list
(setq elt (pop list))
(goto-char (point-min))
(when (or (and (eq elt 'scheduled)
(re-search-forward org-scheduled-time-regexp nil t))
(and (eq elt 'deadline)
(re-search-forward org-deadline-time-regexp nil t))
(and (eq elt 'closed)
(re-search-forward org-closed-time-regexp nil t)))
(replace-match "")
(if (looking-at " +") (replace-match ""))))
(goto-char (point-max))
(when what
(insert
(if (not (equal (char-before) ?\ )) " " "")
(cond ((eq what 'scheduled) org-scheduled-string)
((eq what 'deadline) org-deadline-string)
((eq what 'closed) org-closed-string))
" ")
(insert
(format-time-string
(if (eq what 'closed)
(concat "[" (substring (cdr org-time-stamp-formats) 1 -1) "]")
(car org-time-stamp-formats))
(or time (org-read-date nil 'to-time)))))
(goto-char (point-min))
(widen)
(if (looking-at "[ \t]+\r?\n")
(replace-match "")))))
(defun org-occur (regexp &optional callback)
"Make a compact tree which shows all matches of REGEXP.
@ -4798,7 +4895,7 @@ The following commands are available:
(org-add-hook 'post-command-hook 'org-agenda-post-command-hook nil 'local)
(org-add-hook 'pre-command-hook 'org-unhighlight nil 'local)
(unless org-agenda-keep-modes
(setq org-agenda-follow-mode nil
(setq org-agenda-follow-mode org-agenda-start-with-follow-mode
org-agenda-show-log nil))
(easy-menu-change
'("Agenda") "Agenda Files"
@ -5023,6 +5120,8 @@ C Configure your own agenda commands")
(cond
((eq type 'tags)
(org-tags-view current-prefix-arg string))
((eq type 'tags-todo)
(org-tags-view '(4) string))
((eq type 'todo)
(org-todo-list string))
((eq type 'tags-tree)
@ -7497,7 +7596,6 @@ in all files."
(cond
;; First check if there are any special
((run-hook-with-args-until-success 'org-execute-file-search-functions s))
;; Now try the builtin stuff
((save-excursion
(goto-char (point-min))
@ -7538,7 +7636,7 @@ in all files."
; re4 (concat "\\<" (mapconcat 'downcase words "[^a-zA-Z_\r\n]+") "\\>")
re2 (concat "[ \t\r\n]\\(" (mapconcat 'downcase words "[ \t]+") "\\)[ \t\r\n]")
re2a (concat "[ \t\r\n]\\(" (mapconcat 'downcase words "[ \t\r\n]+") "\\)[ \t\r\n]")
re4 (concat "[^a-zA-Z_\r\n]\\(" (mapconcat 'downcase words "[^a-zA-Z_\r\n]+") "\\)[^a-zA-Z_\r\n]")
re4 (concat "[^a-zA-Z_]\\(" (mapconcat 'downcase words "[^a-zA-Z_\r\n]+") "\\)[^a-zA-Z_]")
re1 (concat pre re2 post)
re3 (concat pre re4 post)
re5 (concat pre ".*" re4)
@ -7917,9 +8015,9 @@ folders."
(set-window-configuration org-window-config-before-follow-link)
(save-excursion (set-buffer b) (goto-char p)
(bibtex-url)))
(recenter 0))) ; Move entry start to beginning of window
(recenter 0)) ; Move entry start to beginning of window
;; return t to indicate that the search is done.
t)
t))
;; Finally add the functions to the right hooks.
(add-hook 'org-create-file-search-functions 'org-create-file-search-in-bibtex)
@ -8473,45 +8571,48 @@ RET on headline -> Store as sublevel entry to current headline
"Initialize *remember* buffer with template, invode `org-mode'.
This function should be placed into `remember-mode-hook' and in fact requires
to be run from that hook to fucntion properly."
(when org-remember-templates
(let* ((entry (if (= (length org-remember-templates) 1)
(cdar org-remember-templates)
(message "Select template: %s"
(mapconcat
(lambda (x) (char-to-string (car x)))
org-remember-templates " "))
(cdr (assoc (read-char-exclusive) org-remember-templates))))
(tpl (if (consp (cdr entry)) (cadr entry) (cdr entry)))
(file (if (consp (cdr entry)) (nth 2 entry)))
(v-t (format-time-string (car org-time-stamp-formats) (org-current-time)))
(v-T (format-time-string (cdr org-time-stamp-formats) (org-current-time)))
(v-u (concat "[" (substring v-t 1 -1) "]"))
(v-U (concat "[" (substring v-T 1 -1) "]"))
(v-a annotation) ; defined in `remember-mode'
(v-i initial) ; defined in `remember-mode'
(v-n user-full-name)
)
(unless tpl (setq tpl "") (message "No template") (ding))
(insert tpl) (goto-char (point-min))
(while (re-search-forward "%\\([tTuTai]\\)" nil t)
(when (and initial (equal (match-string 0) "%i"))
(save-match-data
(let* ((lead (buffer-substring
(point-at-bol) (match-beginning 0))))
(setq v-i (mapconcat 'identity
(if org-remember-templates
(let* ((entry (if (= (length org-remember-templates) 1)
(cdar org-remember-templates)
(message "Select template: %s"
(mapconcat
(lambda (x) (char-to-string (car x)))
org-remember-templates " "))
(cdr (assoc (read-char-exclusive) org-remember-templates))))
(tpl (if (consp (cdr entry)) (cadr entry) (cdr entry)))
(file (if (consp (cdr entry)) (nth 2 entry)))
(v-t (format-time-string (car org-time-stamp-formats) (org-current-time)))
(v-T (format-time-string (cdr org-time-stamp-formats) (org-current-time)))
(v-u (concat "[" (substring v-t 1 -1) "]"))
(v-U (concat "[" (substring v-T 1 -1) "]"))
(v-a annotation) ; defined in `remember-mode'
(v-i initial) ; defined in `remember-mode'
(v-n user-full-name)
)
(unless tpl (setq tpl "") (message "No template") (ding))
(insert tpl) (goto-char (point-min))
(while (re-search-forward "%\\([tTuTai]\\)" nil t)
(when (and initial (equal (match-string 0) "%i"))
(save-match-data
(let* ((lead (buffer-substring
(point-at-bol) (match-beginning 0))))
(setq v-i (mapconcat 'identity
(org-split-string initial "\n")
(concat "\n" lead))))))
(replace-match
(or (eval (intern (concat "v-" (match-string 1)))) "")
t t))
(let ((org-startup-folded nil)
(org-startup-with-deadline-check nil))
(org-mode))
(if (and file (string-match "\\S-" file) (not (file-directory-p file)))
(set (make-local-variable 'org-default-notes-file) file))
(goto-char (point-min))
(if (re-search-forward "%\\?" nil t) (replace-match ""))
(set (make-local-variable 'org-finish-function) 'remember-buffer))))
(replace-match
(or (eval (intern (concat "v-" (match-string 1)))) "")
t t))
(let ((org-startup-folded nil)
(org-startup-with-deadline-check nil))
(org-mode))
(if (and file (string-match "\\S-" file) (not (file-directory-p file)))
(set (make-local-variable 'org-default-notes-file) file))
(goto-char (point-min))
(if (re-search-forward "%\\?" nil t) (replace-match "")))
(let ((org-startup-folded nil)
(org-startup-with-deadline-check nil))
(org-mode)))
(set (make-local-variable 'org-finish-function) 'remember-buffer))
;;;###autoload
(defun org-remember-handler ()
@ -8580,6 +8681,9 @@ See also the variable `org-reverse-note-order'."
(if (not visiting)
(find-file-noselect file))
(with-current-buffer (get-file-buffer file)
(save-excursion (and (goto-char (point-min))
(not (re-search-forward "^\\* " nil t))
(insert "\n* Notes\n")))
(setq reversed (org-notes-order-reversed-p))
(save-excursion
(save-restriction
@ -9007,7 +9111,9 @@ With argument TABLE-TYPE, go to the beginning of a table.el-type table."
(if table-type org-table-any-border-regexp
org-table-border-regexp)
nil t))
(error "Can't find beginning of table")
; FIXME: OK to just use beginning-of-buffer?
; (error "Can't find beginning of table")
(progn (goto-char (point-min)) (point))
(goto-char (match-beginning 0))
(beginning-of-line 2)
(point))))
@ -9542,7 +9648,7 @@ also in table column 3. The command will prompt for the sorting method
(lambda (a b) (< (car a) (car b)))
(lambda (a b) (string< (car a) (car b)))))
(setq lns (mapcar (lambda(x) (cons (org-trim (substring x bcol ecol)) x))
(split-string (buffer-substring beg end) "\n")))
(org-split-string (buffer-substring beg end) "\n")))
(if numericp
(setq lns (mapcar (lambda(x)
(cons (string-to-number (car x)) (cdr x)))
@ -10980,7 +11086,7 @@ overwritten, and the table is not marked as requiring realignment."
(defconst org-export-plist-vars
'((:language . org-export-default-language)
(:headline-levels . org-export-headline-levels)
(:with-section-numbers . org-export-with-section-numbers)
(:section-numbers . org-export-with-section-numbers)
(:table-of-contents . org-export-with-toc)
(:emphasize . org-export-with-emphasize)
(:sub-superscript . org-export-with-sub-superscripts)
@ -11902,7 +12008,8 @@ org-mode's default settings, but still inferior to file-local settings."
(title (or (plist-get opt-plist :title)
(file-name-sans-extension
(file-name-nondirectory buffer-file-name))))
(quote-re (concat "^\\*+[ \t]*" org-quote-string "\\>"))
(quote-re0 (concat "^[ \t]*" org-quote-string "\\>"))
(quote-re (concat "^\\(\\*+\\)\\([ \t]*" org-quote-string "\\>\\)"))
(inquote nil)
(infixed nil)
(in-local-list nil)
@ -12060,7 +12167,7 @@ org-mode's default settings, but still inferior to file-local settings."
(catch 'nextline
;; end of quote section?
(when (and inquote (string-match "^\\*+" line))
(when (and inquote (string-match "^\\*+" line))
(insert "</pre>\n")
(setq inquote nil))
;; inside a quote section?
@ -12104,6 +12211,8 @@ org-mode's default settings, but still inferior to file-local settings."
"\" class=\"target\">" (match-string 1 line) "@</a> ")
t t line)))))
(setq line (org-html-handle-time-stamps line))
;; replace "&" by "&amp;", "<" and ">" by "&lt;" and "&gt;"
;; handle @<..> HTML tags (replace "@&gt;..&lt;" by "<..>")
(setq line (org-html-expand line))
@ -12191,6 +12300,8 @@ org-mode's default settings, but still inferior to file-local settings."
;; This is a headline
(setq level (org-tr-level (- (match-end 1) (match-beginning 1)))
txt (match-string 2 line))
(if (string-match quote-re0 txt)
(setq txt (replace-match "" t t txt)))
(if (<= level umax) (setq head-count (+ head-count 1)))
(when in-local-list
;; Close any local lists before inserting a new header line
@ -12265,6 +12376,7 @@ org-mode's default settings, but still inferior to file-local settings."
))
;; Properly close all local lists and other lists
(when inquote (insert "</pre>\n"))
(when in-local-list
;; Close any local lists before inserting a new header line
(while local-list-num
@ -12441,6 +12553,10 @@ But it has the disadvantage, that Org-mode's HTML conversions cannot be used."
(set-buffer " org-tmp2 ")
(buffer-substring (point-min) (point-max))))
(defun org-html-handle-time-stamps (s)
"FIXME: Format time stamps, or remove them"
s)
(defun org-html-protect (s)
;; convert & to &amp;, < to &lt; and > to &gt;
(let ((start 0))
@ -13072,7 +13188,8 @@ because, in this case the deletion might narrow the column."
(goto-char pos)
;; noalign: if there were two spaces at the end, this field
;; does not determine the width of the column.
(if noalign (setq org-table-may-need-update c))))
(if noalign (setq org-table-may-need-update c)))
(delete-char N))
(delete-char N)))
;; How to do this: Measure non-white length of current string
@ -13103,7 +13220,8 @@ COMMANDS is a list of alternating OLDDEF NEWDEF command names."
(defun org-shifttab ()
"Global visibility cycling or move to previous table field.
Calls `(org-cycle t)' or `org-table-previous-field', depending on context.
Calls `org-cycle' with argument t, or `org-table-previous-field', depending
on context.
See the individual commands for more information."
(interactive)
(cond
@ -13507,6 +13625,11 @@ See the individual commands for more information."
"--"
["Option Template" org-insert-export-options-template t]
["Toggle Fixed Width" org-toggle-fixed-width-section t])
("Publish"
["Current File" org-publish-current-file t]
["Current Project" org-publish-current-project t]
["Project..." org-publish t]
["All Projects" org-publish-all t])
"--"
("Documentation"
["Show Version" org-version t]

BIN
org.pdf

Binary file not shown.

View File

@ -4,7 +4,7 @@
@c @setfilename ../info/org
@settitle Org Mode Manual
@set VERSION 4.27
@set VERSION 4.28
@set DATE April 2006
@dircategory Emacs
@ -2782,7 +2782,9 @@ Go to the original location of the item and delete other windows.
@item f
Toggle Follow mode. In Follow mode, as you move the cursor through
the agenda buffer, the other window always shows the corresponding
location in the org file.
location in the org file. The initial setting for this mode in new
agenda buffers can be set with the variable
@code{org-agenda-start-with-follow-mode}.
@kindex l
@item l
@ -3819,7 +3821,6 @@ at @url{http://www.astro.uva.nl/~dominik/Tools}. Org-mode checks for
the function @code{constants-get}, which has to be autoloaded in your
setup. See the installation instructions in the file
@file{constants.el}.
@cindex @file{remember.el}
@cindex @file{CUA.el}
@item @file{CUA.el} by Kim. F. Storm
Keybindings in Org-mode conflict with the @kbd{S-<cursor>} keys
@ -3839,7 +3840,12 @@ S-RET -> C-S-RET
Yes, these are unfortunately more difficult to remember. If you want
to have other replacement keys, look at the variable
@code{org-disputed-keys}.
@item @file{windmove.el} by Hovav Shacham
@cindex @file{windmove.el}
Also this package uses the @kbd{S-<cursor>} keys, so everything written
in the paragraph above about CUA mode also applies here.
@item @file{remember.el} by John Wiegley
@cindex @file{remember.el}
Org mode cooperates with remember, see @ref{Remember}.
@file{Remember.el} is not part of Emacs, find it on the web.
@end table

Binary file not shown.

View File

@ -1,5 +1,5 @@
% Reference Card for Org Mode
\def\orgversionnumber{4.27}
\def\orgversionnumber{4.28}
\def\year{2006}
%
%**start of header