summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarsten Dominik <dominik@nb-dominik2.science.uva.nl>2008-01-31 11:34:26 +0100
committerCarsten Dominik <dominik@nb-dominik2.science.uva.nl>2008-01-31 11:34:26 +0100
commit41887136c191dd2889264759113f145d5f0f9a7f (patch)
tree1769c8abc9b936d8c1c8b4329a13db2a66cee31f
parent49c42c816a9f22986d505fc133c4a488113a994b (diff)
downloadorg-mode-41887136c191dd2889264759113f145d5f0f9a7f.tar.gz
Release 4.71release_4.71
-rw-r--r--org395
-rw-r--r--org-mouse.el13
-rw-r--r--org-publish.el37
-rw-r--r--org.el162
-rw-r--r--org.pdfbin704954 -> 705258 bytes
-rw-r--r--org.texi53
-rw-r--r--orgcard.pdfbin58754 -> 58696 bytes
-rw-r--r--orgcard.tex2
8 files changed, 373 insertions, 289 deletions
diff --git a/org b/org
index 0a546e8..0556ecb 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.70).
+ This manual is for Org-mode (version 4.71).
Copyright (C) 2004, 2005, 2006, 2007 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.70).
+This manual is for Org-mode (version 4.71).
Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation
@@ -620,10 +620,14 @@ The following commands jump to other headlines in the buffer.
`C-c C-j'
Jump to a different place without changing the current outline
visibility. Shows the document structure in a temporary buffer,
- where you can use visibility cycling (<TAB>) to find your
- destination. After pressing <RET>, the cursor moves to the
- selected location in the original buffer, and the headings
- hierarchy above it is made visible.
+ where you can use the following keys to find your destination:
+ <TAB> Cycle visibility.
+ <down> / <up> Next/previous visible headline.
+ n / p Next/previous visible headline.
+ f / b Next/previous headline same level.
+ u One level up.
+ 0-9 Digit argument.
+ <RET> Select this location.

File: org, Node: Structure editing, Next: Archiving, Prev: Motion, Up: Document structure
@@ -2199,8 +2203,7 @@ For specific link types, the following keywords will be defined:
info | %:file %:node
calendar | %:date"
-If you would like to have the cursor in a specific position after the
-template has been expanded:
+To place the cursor after template expansion use:
%? After completing the template, position cursor here.
@@ -2225,20 +2228,24 @@ target file - if you press <RET>, the value specified for the template
is used. Then the command offers the headings tree of the selected
file, with the cursor position at the default headline (if you had
specified one in the template). You can either immediately press <RET>
-to get the note placed there. Or you can use vertical cursor motion
-(<up> and <down>) and visibility cycling (<TAB>) to find a better
-place. Pressing <RET> or <left> or <right> then leads to the following
+to get the note placed there. Or you can use the following keys to
+find a better location:
+ <TAB> Cycle visibility.
+ <down> / <up> Next/previous visible headline.
+ n / p Next/previous visible headline.
+ f / b Next/previous headline same level.
+ u One level up.
+ Pressing <RET> or <left> or <right> then leads to the following
result.
-Cursor Key Note gets inserted
-position
-buffer-start <RET> as level 2 heading at end of file
-on headline <RET> as sublevel of the heading at cursor
- <left> as same level, before current heading
- <right> as same level, after current heading
-not on <RET> at cursor position, level taken from context.
-headline Or use prefix arg to specify level
- manually.
+Cursor Key Note gets inserted
+position
+buffer-start <RET> as level 2 heading at end of file
+on headline <RET> as sublevel of the heading at cursor
+ <left>/<right>as same level, before/after current heading
+not on <RET> at cursor position, level taken from context.
+headline Or use prefix arg to specify level
+ manually.
So a fast way to store the note to its default location is to press
`C-c C-c <RET> <RET>'. Even shorter would be `C-u C-c C-c', which does
@@ -4254,7 +4261,9 @@ the typeset result of these fragments, and upon export to HTML, all
fragments will be converted to images and inlined into the HTML
document. For this to work you need to be on a system with a working
LaTeX installation. You also need the `dvipng' program, available at
-`http://sourceforge.net/projects/dvipng/'.
+`http://sourceforge.net/projects/dvipng/'. The LaTeX header that will
+be used when processing a fragment can be configured with the variable
+`org-format-latex-header'.
LaTeX fragments don't need any special marking at all. The following
snippets will be identified as LaTeX source code:
@@ -5109,17 +5118,17 @@ File: org, Node: Triggering publication, Prev: Sample configuration, Up: Publ
Once org-publish is properly configured, you can publish with the
following functions:
-`C-c C-e c'
+`C-c C-e C'
Prompt for a specific project and publish all files that belong to
it.
-`C-c C-e p'
+`C-c C-e P'
Publish the project containing the current file.
-`C-c C-e f'
+`C-c C-e F'
Publish only the current file.
-`C-c C-e a'
+`C-c C-e A'
Publish all projects.
Org uses timestamps to track when a file has changed. The above
@@ -6948,173 +6957,173 @@ Ref: Visibility cycling-Footnote-123934
Ref: Visibility cycling-Footnote-223992
Ref: Visibility cycling-Footnote-324042
Node: Motion24312
-Node: Structure editing25096
-Node: Archiving27922
-Node: ARCHIVE tag28480
-Node: Moving subtrees30273
-Node: Sparse trees31584
-Ref: Sparse trees-Footnote-133716
-Ref: Sparse trees-Footnote-233898
-Node: Plain lists34013
-Ref: Plain lists-Footnote-137782
-Ref: Plain lists-Footnote-238140
-Node: Tables38324
-Node: Built-in table editor38838
-Node: Narrow columns45857
-Ref: Narrow columns-Footnote-147790
-Node: orgtbl-mode47836
-Node: The spreadsheet48640
-Node: References49727
-Ref: References-Footnote-153856
-Node: Formula syntax for Calc54145
-Node: Formula syntax for Lisp56611
-Node: Field formulas57880
-Node: Column formulas59188
-Node: Editing and debugging formulas60787
-Node: Updating the table64940
-Node: Advanced features65975
-Node: Hyperlinks70500
-Node: Link format71273
-Node: Internal links72566
-Ref: Internal links-Footnote-174491
-Node: Radio targets74623
-Node: External links75314
-Node: Handling links77718
-Ref: Handling links-Footnote-182828
-Ref: Handling links-Footnote-283065
-Node: Link abbreviations83139
-Node: Search options84818
-Ref: Search options-Footnote-186598
-Node: Custom searches86679
-Node: Remember87727
-Node: Setting up remember88714
-Node: Remember templates89296
-Ref: Remember templates-Footnote-192610
-Node: Storing notes92708
-Node: TODO items94516
-Node: TODO basics95499
-Node: TODO extensions97198
-Node: Workflow states98017
-Ref: Workflow states-Footnote-199192
-Node: TODO types99285
-Ref: TODO types-Footnote-1100868
-Node: Multiple sets in one file100950
-Node: Per file keywords102561
-Ref: Per file keywords-Footnote-1103850
-Node: Priorities104051
-Node: Breaking down tasks105297
-Ref: Breaking down tasks-Footnote-1105817
-Node: Checkboxes105913
-Node: Timestamps108668
-Node: Time stamps109202
-Ref: Time stamps-Footnote-1112696
-Ref: Time stamps-Footnote-2112812
-Node: Creating timestamps112967
-Node: The date/time prompt115625
-Ref: The date/time prompt-Footnote-1117586
-Node: Custom time format117692
-Node: Repeating items119250
-Node: Progress logging121060
-Node: Closing items121706
-Ref: Closing items-Footnote-1122640
-Ref: Closing items-Footnote-2122709
-Node: Tracking TODO state changes122782
-Node: Clocking work time123638
-Ref: Clocking work time-Footnote-1127284
-Ref: Clocking work time-Footnote-2127362
-Node: Tags127488
-Node: Tag inheritance128250
-Node: Setting tags129187
-Ref: Setting tags-Footnote-1133710
-Ref: Setting tags-Footnote-2133822
-Node: Tag searches133905
-Node: Agenda views136616
-Node: Agenda files138561
-Ref: Agenda files-Footnote-1139527
-Ref: Agenda files-Footnote-2139676
-Node: Agenda dispatcher139869
-Node: Built-in agenda views141560
-Node: Weekly/Daily agenda142138
-Node: Global TODO list144267
-Node: Matching headline tags146539
-Node: Timeline147610
-Node: Stuck projects148276
-Node: Presentation and sorting149975
-Node: Categories150766
-Node: Time-of-day specifications151430
-Node: Sorting of agenda items153401
-Node: Agenda commands154683
-Node: Custom agenda views161412
-Node: Storing searches162087
-Node: Block agenda163999
-Node: Setting Options165229
-Node: Batch processing167941
-Node: Embedded LaTeX169071
-Ref: Embedded LaTeX-Footnote-1170163
-Node: Math symbols170353
-Node: Subscripts and Superscripts171118
-Node: LaTeX fragments171962
-Ref: LaTeX fragments-Footnote-1174070
-Node: Processing LaTeX fragments174332
-Node: CDLaTeX mode175278
-Ref: CDLaTeX mode-Footnote-1177762
-Node: Exporting177910
-Node: ASCII export179224
-Node: HTML export180514
-Node: Export commands181133
-Node: Quoting HTML tags181944
-Node: Links182574
-Node: Images183271
-Ref: Images-Footnote-1184142
-Node: CSS support184203
-Ref: CSS support-Footnote-1185522
-Node: XOXO export185635
-Node: iCalendar export186074
-Node: Text interpretation187293
-Node: Comment lines187835
-Node: Initial text188230
-Node: Enhancing text189904
-Ref: Enhancing text-Footnote-1191766
-Node: Export options191856
-Node: Publishing193749
-Ref: Publishing-Footnote-1194545
-Node: Configuration194741
-Node: Project alist195459
-Node: Sources and destinations196525
-Node: Selecting files197255
-Node: Publishing action198003
-Node: Publishing options199236
-Node: Publishing links201388
-Node: Project page index202901
-Node: Sample configuration203679
-Node: Simple example204171
-Node: Complex example204844
-Node: Triggering publication206920
-Node: Miscellaneous207605
-Node: Completion208239
-Node: Customization209710
-Node: In-buffer settings210293
-Node: The very busy C-c C-c key214770
-Node: Clean view216414
-Node: TTY keys218991
-Node: Interaction220601
-Node: Cooperation220998
-Node: Conflicts223740
-Node: Bugs225332
-Node: Extensions and Hacking226828
-Node: Extensions227424
-Node: Tables in arbitrary syntax229371
-Node: Radio tables230448
-Node: A LaTeX example232951
-Ref: A LaTeX example-Footnote-1236597
-Ref: A LaTeX example-Footnote-2236745
-Node: Translator functions237180
-Ref: Translator functions-Footnote-1240289
-Node: Dynamic blocks240377
-Node: Special agenda views242349
-Ref: Special agenda views-Footnote-1244628
-Node: History and Acknowledgments244888
-Node: Index250748
-Node: Key Index281729
+Node: Structure editing25266
+Node: Archiving28092
+Node: ARCHIVE tag28650
+Node: Moving subtrees30443
+Node: Sparse trees31754
+Ref: Sparse trees-Footnote-133886
+Ref: Sparse trees-Footnote-234068
+Node: Plain lists34183
+Ref: Plain lists-Footnote-137952
+Ref: Plain lists-Footnote-238310
+Node: Tables38494
+Node: Built-in table editor39008
+Node: Narrow columns46027
+Ref: Narrow columns-Footnote-147960
+Node: orgtbl-mode48006
+Node: The spreadsheet48810
+Node: References49897
+Ref: References-Footnote-154026
+Node: Formula syntax for Calc54315
+Node: Formula syntax for Lisp56781
+Node: Field formulas58050
+Node: Column formulas59358
+Node: Editing and debugging formulas60957
+Node: Updating the table65110
+Node: Advanced features66145
+Node: Hyperlinks70670
+Node: Link format71443
+Node: Internal links72736
+Ref: Internal links-Footnote-174661
+Node: Radio targets74793
+Node: External links75484
+Node: Handling links77888
+Ref: Handling links-Footnote-182998
+Ref: Handling links-Footnote-283235
+Node: Link abbreviations83309
+Node: Search options84988
+Ref: Search options-Footnote-186768
+Node: Custom searches86849
+Node: Remember87897
+Node: Setting up remember88884
+Node: Remember templates89466
+Ref: Remember templates-Footnote-192732
+Node: Storing notes92830
+Node: TODO items94798
+Node: TODO basics95781
+Node: TODO extensions97480
+Node: Workflow states98299
+Ref: Workflow states-Footnote-199474
+Node: TODO types99567
+Ref: TODO types-Footnote-1101150
+Node: Multiple sets in one file101232
+Node: Per file keywords102843
+Ref: Per file keywords-Footnote-1104132
+Node: Priorities104333
+Node: Breaking down tasks105579
+Ref: Breaking down tasks-Footnote-1106099
+Node: Checkboxes106195
+Node: Timestamps108950
+Node: Time stamps109484
+Ref: Time stamps-Footnote-1112978
+Ref: Time stamps-Footnote-2113094
+Node: Creating timestamps113249
+Node: The date/time prompt115907
+Ref: The date/time prompt-Footnote-1117868
+Node: Custom time format117974
+Node: Repeating items119532
+Node: Progress logging121342
+Node: Closing items121988
+Ref: Closing items-Footnote-1122922
+Ref: Closing items-Footnote-2122991
+Node: Tracking TODO state changes123064
+Node: Clocking work time123920
+Ref: Clocking work time-Footnote-1127566
+Ref: Clocking work time-Footnote-2127644
+Node: Tags127770
+Node: Tag inheritance128532
+Node: Setting tags129469
+Ref: Setting tags-Footnote-1133992
+Ref: Setting tags-Footnote-2134104
+Node: Tag searches134187
+Node: Agenda views136898
+Node: Agenda files138843
+Ref: Agenda files-Footnote-1139809
+Ref: Agenda files-Footnote-2139958
+Node: Agenda dispatcher140151
+Node: Built-in agenda views141842
+Node: Weekly/Daily agenda142420
+Node: Global TODO list144549
+Node: Matching headline tags146821
+Node: Timeline147892
+Node: Stuck projects148558
+Node: Presentation and sorting150257
+Node: Categories151048
+Node: Time-of-day specifications151712
+Node: Sorting of agenda items153683
+Node: Agenda commands154965
+Node: Custom agenda views161694
+Node: Storing searches162369
+Node: Block agenda164281
+Node: Setting Options165511
+Node: Batch processing168223
+Node: Embedded LaTeX169353
+Ref: Embedded LaTeX-Footnote-1170445
+Node: Math symbols170635
+Node: Subscripts and Superscripts171400
+Node: LaTeX fragments172244
+Ref: LaTeX fragments-Footnote-1174478
+Node: Processing LaTeX fragments174740
+Node: CDLaTeX mode175686
+Ref: CDLaTeX mode-Footnote-1178170
+Node: Exporting178318
+Node: ASCII export179632
+Node: HTML export180922
+Node: Export commands181541
+Node: Quoting HTML tags182352
+Node: Links182982
+Node: Images183679
+Ref: Images-Footnote-1184550
+Node: CSS support184611
+Ref: CSS support-Footnote-1185930
+Node: XOXO export186043
+Node: iCalendar export186482
+Node: Text interpretation187701
+Node: Comment lines188243
+Node: Initial text188638
+Node: Enhancing text190312
+Ref: Enhancing text-Footnote-1192174
+Node: Export options192264
+Node: Publishing194157
+Ref: Publishing-Footnote-1194953
+Node: Configuration195149
+Node: Project alist195867
+Node: Sources and destinations196933
+Node: Selecting files197663
+Node: Publishing action198411
+Node: Publishing options199644
+Node: Publishing links201796
+Node: Project page index203309
+Node: Sample configuration204087
+Node: Simple example204579
+Node: Complex example205252
+Node: Triggering publication207328
+Node: Miscellaneous208013
+Node: Completion208647
+Node: Customization210118
+Node: In-buffer settings210701
+Node: The very busy C-c C-c key215178
+Node: Clean view216822
+Node: TTY keys219399
+Node: Interaction221009
+Node: Cooperation221406
+Node: Conflicts224148
+Node: Bugs225740
+Node: Extensions and Hacking227236
+Node: Extensions227832
+Node: Tables in arbitrary syntax229779
+Node: Radio tables230856
+Node: A LaTeX example233359
+Ref: A LaTeX example-Footnote-1237005
+Ref: A LaTeX example-Footnote-2237153
+Node: Translator functions237588
+Ref: Translator functions-Footnote-1240697
+Node: Dynamic blocks240785
+Node: Special agenda views242757
+Ref: Special agenda views-Footnote-1245036
+Node: History and Acknowledgments245296
+Node: Index251156
+Node: Key Index282137

End Tag Table
diff --git a/org-mouse.el b/org-mouse.el
index ae544e6..53cba3a 100644
--- a/org-mouse.el
+++ b/org-mouse.el
@@ -3,7 +3,7 @@
;; Copyright (c) 2006 Piotr Zielinski
;;
;; Author: Piotr Zielinski <piotr dot zielinski at gmail dot com>
-;; Version: 0.24
+;; Version: 0.24a
;; $Id: org-mouse.el 817 2007-02-01 00:28:02Z pz215 $
;;
;; The latest version of this file is available from
@@ -548,6 +548,9 @@ SCHEDULED: or DEADLINE: or ANYTHINGLIKETHIS:"
(set-match-data ',match)
(apply ',function rest)))))
+(defun org-mouse-todo-keywords ()
+ (if (boundp 'org-todo-keywords-1) org-todo-keywords-1 org-todo-keywords))
+
(defun org-mouse-match-todo-keyword ()
(save-excursion
(org-back-to-heading)
@@ -616,10 +619,10 @@ SCHEDULED: or DEADLINE: or ANYTHINGLIKETHIS:"
(org-mouse-remove-match-and-spaces))))]
)))
((and (org-mouse-looking-at "\\b\\w+" "a-zA-Z0-9_")
- (member (match-string 0) org-todo-keywords))
+ (member (match-string 0) (org-mouse-todo-keywords)))
(popup-menu
`(nil
- ,@(org-mouse-keyword-replace-menu org-todo-keywords)
+ ,@(org-mouse-keyword-replace-menu (org-mouse-todo-keywords))
"--"
["Check TODOs" org-show-todo-tree t]
["List all TODO keywords" org-todo-list t]
@@ -758,7 +761,8 @@ SCHEDULED: or DEADLINE: or ANYTHINGLIKETHIS:"
,@(org-mouse-tag-menu))
("TODO Status"
,@(progn (org-mouse-match-todo-keyword)
- (org-mouse-keyword-replace-menu org-todo-keywords 1)))
+ (org-mouse-keyword-replace-menu (org-mouse-todo-keywords)
+ 1)))
["Show Tags"
(with-current-buffer org-mouse-main-buffer (org-agenda-show-tags))
:visible (not org-mouse-direct)]
@@ -1028,7 +1032,6 @@ SCHEDULED: or DEADLINE: or ANYTHINGLIKETHIS:"
["Exit and Release Buffers" org-agenda-exit t]
))))
-
(defun org-mouse-get-gesture (event)
(let ((startxy (posn-x-y (event-start event)))
(endxy (posn-x-y (event-end event))))
diff --git a/org-publish.el b/org-publish.el
index 4f0939c..0ceeb2c 100644
--- a/org-publish.el
+++ b/org-publish.el
@@ -6,7 +6,7 @@
;; Keywords: hypermedia, outlines
;; Version:
-;; $Id: org-publish.el,v 1.78 2006/09/10 06:41:23 dto Exp dto $
+;; $Id: org-publish.el,v 1.80 2007/03/22 02:31:03 dto Exp dto $
;; This file is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
@@ -319,6 +319,7 @@ whether file should be published."
(if (not (file-exists-p timestamp))
;; create file
(with-temp-buffer
+ (make-directory (file-name-directory timestamp) :parents)
(write-file timestamp)
(kill-buffer (current-buffer)))))
rtn))
@@ -549,9 +550,10 @@ default is 'index.org'."
(interactive (list (completing-read "Project name: " org-publish-project-alist
nil t)
current-prefix-arg))
- (let ((org-publish-use-timestamps-flag (if force nil t))
- (plists (org-publish-get-plists project-name)))
- (mapcar 'org-publish-plist plists)))
+ (save-window-excursion
+ (let ((org-publish-use-timestamps-flag (if force nil t))
+ (plists (org-publish-get-plists project-name)))
+ (mapcar 'org-publish-plist plists))))
;;;###autoload
@@ -559,11 +561,12 @@ default is 'index.org'."
"Publish the project associated with the current file.
With prefix argument, force publishing all files in project."
(interactive "P")
- (let* ((project-name (org-publish-get-project-from-filename (buffer-file-name)))
- (org-publish-use-timestamps-flag (if force nil t)))
- (if (not project-name)
- (error (format "File %s is not part of any known project." (buffer-file-name))))
- (org-publish project-name)))
+ (save-window-excursion
+ (let* ((project-name (org-publish-get-project-from-filename (buffer-file-name)))
+ (org-publish-use-timestamps-flag (if force nil t)))
+ (if (not project-name)
+ (error (format "File %s is not part of any known project." (buffer-file-name))))
+ (org-publish project-name))))
;;;###autoload
@@ -571,9 +574,10 @@ With prefix argument, force publishing all files in project."
"Publish the current file.
With prefix argument, force publish the file."
(interactive "P")
- (let ((org-publish-use-timestamps-flag
- (if force nil t)))
- (org-publish-file (buffer-file-name))))
+ (save-window-excursion
+ (let ((org-publish-use-timestamps-flag
+ (if force nil t)))
+ (org-publish-file (buffer-file-name)))))
;;;###autoload
@@ -581,10 +585,11 @@ With prefix argument, force publish the file."
"Publish all projects.
With prefix argument, force publish all files."
(interactive "P")
- (let ((org-publish-use-timestamps-flag
- (if force nil t))
- (plists (org-publish-get-plists)))
- (mapcar 'org-publish-plist plists)))
+ (save-window-excursion
+ (let ((org-publish-use-timestamps-flag
+ (if force nil t))
+ (plists (org-publish-get-plists)))
+ (mapcar 'org-publish-plist plists))))
diff --git a/org.el b/org.el
index 904c921..ac3eaa9 100644
--- a/org.el
+++ b/org.el
@@ -5,7 +5,7 @@
;; Author: Carsten Dominik <dominik at science dot uva dot nl>
;; Keywords: outlines, hypermedia, calendar, wp
;; Homepage: http://www.astro.uva.nl/~dominik/Tools/org/
-;; Version: 4.70
+;; Version: 4.71
;;
;; This file is part of GNU Emacs.
;;
@@ -83,7 +83,7 @@
;;; Version
-(defconst org-version "4.70"
+(defconst org-version "4.71"
"The version number of the file org.el.")
(defun org-version ()
(interactive)
@@ -1368,6 +1368,7 @@ taken from the (otherwise obsolete) variable `org-todo-interpretation'."
(defvar org-todo-keywords-1 nil)
(make-variable-buffer-local 'org-todo-keywords-1)
+(defvar org-todo-keywords-for-agenda nil)
(defvar org-not-done-keywords nil)
(make-variable-buffer-local 'org-not-done-keywords)
(defvar org-done-keywords nil)
@@ -2232,6 +2233,18 @@ This is a property list with the following properties:
:group 'org-latex
:type 'plist)
+(defcustom org-format-latex-header "\\documentclass{article}
+\\usepackage{fullpage} % do not remove
+\\usepackage{amssymb}
+\\usepackage[usenames]{color}
+\\usepackage{amsmath}
+\\usepackage{latexsym}
+\\usepackage[mathscr]{eucal}
+\\pagestyle{empty} % do not remove"
+ "The document header used for processing LaTeX fragments."
+ :group 'org-latex
+ :type 'string)
+
(defgroup org-export nil
"Options for exporting org-listings."
:tag "Org Export"
@@ -2642,12 +2655,24 @@ This option can also be set with the +OPTIONS line, e.g. \"@:nil\"."
(defcustom org-export-html-table-tag
"<table border=\"2\" cellspacing=\"0\" cellpadding=\"6\" rules=\"groups\" frame=\"hsides\">"
- "The HTML tag used to start a table.
+ "The HTML tag that is used to start a table.
This must be a <table> tag, but you may change the options like
borders and spacing."
:group 'org-export-html
:type 'string)
+(defcustom org-export-table-header-tags '("<th>" . "</th>")
+ "The opening tag for table header fields.
+This is customizable so that alignment options can be specified."
+ :group 'org-export-tables
+ :type '(cons (string :tag "Opening tag") (string :tag "Closing tag")))
+
+(defcustom org-export-table-data-tags '("<td>" . "</td>")
+ "The opening tag for table data fields.
+This is customizable so that alignment options can be specified."
+ :group 'org-export-tables
+ :type '(cons (string :tag "Opening tag") (string :tag "Closing tag")))
+
(defcustom org-export-html-with-timestamp nil
"If non-nil, write `org-export-html-html-helper-timestamp'
into the exported HTML text. Otherwise, the buffer will just be saved
@@ -4036,7 +4061,7 @@ between words."
(if org-fontify-done-headline
(list (concat "^[*]+ +\\<\\("
(mapconcat 'regexp-quote org-done-keywords "\\|")
- "\\)\\(.*\\)\\>")
+ "\\)\\(.*\\)")
'(1 'org-done t) '(2 'org-headline-done t))
(list (concat "^[*]+ +\\<\\("
(mapconcat 'regexp-quote org-done-keywords "\\|")
@@ -4804,6 +4829,7 @@ is signaled in this case."
(setq folded (org-invisible-p)))
(outline-end-of-subtree))
(outline-next-heading)
+ (if (not (bolp)) (insert "\n"))
(setq end (point))
;; Find insertion point, with error handling
(goto-char beg)
@@ -5340,7 +5366,7 @@ If the cursor is not in an item, throw an error."
(if (catch 'exit
(while t
(beginning-of-line 0)
- (if (< (point) limit) (throw 'exit nil))
+ (if (or (bobp) (< (point) limit)) (throw 'exit nil))
(if (looking-at "[ \t]*$")
(setq ind1 ind-empty)
@@ -12478,7 +12504,7 @@ used to insert the time stamp into the buffer to include the time."
(calendar-forward-day (- (time-to-days default-time)
(calendar-absolute-from-gregorian
(calendar-current-date))))
- (org-eval-in-calendar nil)
+ (org-eval-in-calendar nil t)
(let* ((old-map (current-local-map))
(map (copy-keymap calendar-mode-map))
(minibuffer-local-map (copy-keymap minibuffer-local-map)))
@@ -12576,13 +12602,13 @@ used to insert the time stamp into the buffer to include the time."
(format "%04d-%02d-%02d %02d:%02d" year month day hour minute)
(format "%04d-%02d-%02d" year month day)))))
-(defun org-eval-in-calendar (form)
+(defun org-eval-in-calendar (form &optional keepdate)
"Eval FORM in the calendar window and return to current window.
Also, store the cursor date in variable org-ans2."
(let ((sw (selected-window)))
(select-window (get-buffer-window "*Calendar*"))
(eval form)
- (when (calendar-cursor-to-date)
+ (when (and (not keepdate) (calendar-cursor-to-date))
(let* ((date (calendar-cursor-to-date))
(time (encode-time 0 0 0 (nth 1 date) (nth 0 date) (nth 2 date))))
(setq org-ans2 (format-time-string "%Y-%m-%d" time))))
@@ -12591,7 +12617,8 @@ Also, store the cursor date in variable org-ans2."
;; Update the prompt to show new default date
(save-excursion
(goto-char (point-min))
- (when (and (re-search-forward "\\[[-0-9]+\\]" nil t)
+ (when (and org-ans2
+ (re-search-forward "\\[[-0-9]+\\]" nil t)
(get-text-property (match-end 0) 'field))
(let ((inhibit-read-only t))
(replace-match (concat "[" org-ans2 "]") t t)
@@ -13620,6 +13647,11 @@ The following commands are available:
`(unless (get-text-property (point) 'org-protected)
,@body))
+(defmacro org-unmodified (&rest body)
+ "Execute body without changing buffer-modified-p."
+ `(set-buffer-modified-p
+ (prog1 (buffer-modified-p) ,@body)))
+
(defmacro org-with-remote-undo (_buffer &rest _body)
"Execute BODY while recording undo information in two buffers."
(declare (indent 1) (debug t))
@@ -14046,6 +14078,7 @@ Optional argument FILE means, use this file instead of the current."
(defvar org-agenda-buffer-name "*Org Agenda*")
(defvar org-pre-agenda-window-conf nil)
(defun org-prepare-agenda ()
+ (setq org-todo-keywords-for-agenda nil)
(if org-agenda-multi
(progn
(setq buffer-read-only nil)
@@ -14055,6 +14088,8 @@ Optional argument FILE means, use this file instead of the current."
(narrow-to-region (point) (point-max)))
(org-agenda-maybe-reset-markers 'force)
(org-prepare-agenda-buffers (org-agenda-files))
+ (setq org-todo-keywords-for-agenda
+ (org-uniquify org-todo-keywords-for-agenda))
(let* ((abuf (get-buffer-create org-agenda-buffer-name))
(awin (get-buffer-window abuf)))
(cond
@@ -14102,6 +14137,8 @@ Optional argument FILE means, use this file instead of the current."
(set-buffer (org-get-agenda-file-buffer file))
(widen)
(setq bmp (buffer-modified-p))
+ (setq org-todo-keywords-for-agenda
+ (append org-todo-keywords-for-agenda org-todo-keywords-1))
(save-excursion
(remove-text-properties (point-min) (point-max) pall)
(when org-agenda-skip-archived-trees
@@ -14506,24 +14543,23 @@ for a keyword. A numeric prefix directly selects the Nth keyword in
(require 'calendar)
(org-compile-prefix-format 'todo)
(org-set-sorting-strategy 'todo)
+ (org-prepare-agenda)
(let* ((today (time-to-days (current-time)))
(date (calendar-gregorian-from-absolute today))
- (kwds org-todo-keywords-1)
+ (kwds org-todo-keywords-for-agenda)
(completion-ignore-case t)
(org-select-this-todo-keyword
(if (stringp arg) arg
(and arg (integerp arg) (> arg 0)
- (nth (1- arg) org-todo-keywords-1))))
+ (nth (1- arg) kwds))))
rtn rtnall files file pos)
(when (equal arg '(4))
(setq org-select-this-todo-keyword
(completing-read "Keyword (or KWD1|K2D2|...): "
- (mapcar 'list org-todo-keywords-1)
- nil nil)))
+ (mapcar 'list kwds) nil nil)))
(and (equal 0 arg) (setq org-select-this-todo-keyword nil))
- (org-prepare-agenda)
(org-set-local 'org-last-arg arg)
- (org-set-local 'org-todo-keywords-1 kwds)
+;FIXME (org-set-local 'org-todo-keywords-for-agenda kwds)
(setq org-agenda-redo-command
'(org-todo-list (or current-prefix-arg org-last-arg)))
(setq files (org-agenda-files)
@@ -14544,13 +14580,15 @@ for a keyword. A numeric prefix directly selects the Nth keyword in
(add-text-properties pos (1- (point)) (list 'face 'org-warning))
(setq pos (point))
(unless org-agenda-multi
- (insert
- "Available with `N r': (0)ALL "
- (let ((n 0))
- (mapconcat (lambda (x)
- (format "(%d)%s" (setq n (1+ n)) x))
- org-todo-keywords-1 " "))
- "\n"))
+ (insert "Available with `N r': (0)ALL")
+ (let ((n 0) s)
+ (mapc (lambda (x)
+ (setq s (format "(%d)%s" (setq n (1+ n)) x))
+ (if (> (+ (current-column) (string-width s) 1) (frame-width))
+ (insert "\n "))
+ (insert " " s))
+ kwds))
+ (insert "\n"))
(add-text-properties pos (1- (point)) (list 'face 'org-level-3)))
(when rtnall
(insert (org-finalize-agenda-entries rtnall) "\n"))
@@ -16726,15 +16764,8 @@ The images can be removed again with \\[org-ctrl-c-ctrl-c]."
(fg (or (plist-get options :foreground) "Black"))
(bg (or (plist-get options :background) "Transparent")))
(with-temp-file texfile
- (insert "\\documentclass{article}
-\\usepackage{fullpage}
-\\usepackage{amssymb}
-\\usepackage[usenames]{color}
-\\usepackage{amsmath}
-\\usepackage{latexsym}
-\\usepackage[mathscr]{eucal}
-\\pagestyle{empty}
-\\begin{document}\n" string "\n\\end{document}\n"))
+ (insert org-format-latex-header
+ "\n\\begin{document}\n" string "\n\\end{document}\n"))
(let ((dir default-directory))
(condition-case nil
(progn
@@ -16864,6 +16895,7 @@ The images can be removed again with \\[org-ctrl-c-ctrl-c]."
"Skip lines starting with \"#\" and subtrees starting with COMMENT."
(let ((re1 (concat "^\\(\\*+\\)[ \t]+" org-comment-string))
(re2 "^\\(\\*+\\)[ \t\n\r]")
+ (case-fold-search nil)
rtn line level)
(while (setq line (pop lines))
(cond
@@ -17387,8 +17419,9 @@ translations. There is currently no way for users to extend this.")
(let ((end (save-excursion (outline-next-heading) (point))))
(when (re-search-forward "^[ \t]*[^# \t\r\n].*\n" end t)
;; Mark the line so that it will not be exported as normal text.
- (add-text-properties (match-beginning 0) (match-end 0)
- (list :org-license-to-kill t))
+ (org-unmodified
+ (add-text-properties (match-beginning 0) (match-end 0)
+ (list :org-license-to-kill t)))
;; Return the title string
(org-trim (match-string 0))))))
@@ -17463,10 +17496,6 @@ underlined headlines. The default is 3."
(setq-default org-todo-line-regexp org-todo-line-regexp)
(let* ((opt-plist (org-combine-plists (org-default-export-plist)
(org-infile-export-plist)))
- (region
- (buffer-substring
- (if (org-region-active-p) (region-beginning) (point-min))
- (if (org-region-active-p) (region-end) (point-max))))
(custom-times org-display-custom-times)
(org-ascii-current-indentation '(0 . 0))
(level 0) line txt
@@ -17496,6 +17525,10 @@ underlined headlines. The default is 3."
; (quote-re (concat "^\\(\\*+\\)\\([ \t]*" org-quote-string "\\>\\)"))
(todo nil)
(lang-words nil)
+ (region
+ (buffer-substring
+ (if (org-region-active-p) (region-beginning) (point-min))
+ (if (org-region-active-p) (region-end) (point-max))))
(lines (org-skip-comments
(org-split-string
(org-cleaned-string-for-export
@@ -17506,7 +17539,8 @@ underlined headlines. The default is 3."
"[\r\n]")))
thetoc have-headings first-heading-pos)
- (remove-text-properties (point-min) (point-max) '(:org-license-to-kill t))
+ (org-unmodified
+ (remove-text-properties (point-min) (point-max) '(:org-license-to-kill t)))
(setq org-last-level 1)
(org-init-section-numbers)
@@ -18001,7 +18035,8 @@ associated with a file."
rpl path desc descp desc1 desc2 link
)
- (remove-text-properties (point-min) (point-max) '(:org-license-to-kill t))
+ (org-unmodified
+ (remove-text-properties (point-min) (point-max) '(:org-license-to-kill t)))
(message "Exporting...")
@@ -18536,8 +18571,10 @@ lang=\"%s\" xml:lang=\"%s\">
(string-match org-table-number-regexp x))
(incf (aref fnum i)))
(if head
- (concat "<th>" x "</th>")
- (concat "<td>" x "</td>")))
+ (concat (car org-export-table-header-tags) x
+ (cdr org-export-table-header-tags))
+ (concat (car org-export-table-data-tags) x
+ (cdr org-export-table-data-tags))))
fields "")
"</tr>")
html)))
@@ -18593,17 +18630,21 @@ But it has the disadvantage, that no cell- or row-spanning is allowed."
(progn
(if field-buffer
(progn
- (setq html (concat
- html
- "<tr>"
- (mapconcat
- (lambda (x)
- (if (equal x "") (setq x empty))
- (if head
- (concat "<th>" x "</th>\n")
- (concat "<td>" x "</td>\n")))
- field-buffer "\n")
- "</tr>\n"))
+ (setq
+ html
+ (concat
+ html
+ "<tr>"
+ (mapconcat
+ (lambda (x)
+ (if (equal x "") (setq x empty))
+ (if head
+ (concat (car org-export-table-header-tags) x
+ (cdr org-export-table-header-tags))
+ (concat (car org-export-table-data-tags) x
+ (cdr org-export-table-data-tags))))
+ field-buffer "\n")
+ "</tr>\n"))
(setq head nil)
(setq field-buffer nil)))
;; Ignore this line
@@ -18748,6 +18789,10 @@ stacked delimiters is N. Escaping delimiters is not possible."
"\\(\\(?:\\*\\|[-+]?[^-+*!@#$%^_ \t\r\n,:\"?<>~;./{}=()]+\\)\\)\\)")
"The regular expression matching a sub- or superscript.")
+;(let ((s "a\\_b"))
+; (and (string-match org-match-substring-regexp s)
+; (conca t (match-string 1 s) ":::" (match-string 2 s))))
+
(defun org-export-html-convert-sub-super (string)
"Convert sub- and superscripts in STRING to HTML."
(let (key c (s 0) (requireb (eq org-export-with-sub-superscripts '{})))
@@ -18762,9 +18807,9 @@ stacked delimiters is N. Escaping delimiters is not possible."
string (replace-match
(concat (match-string 1 string)
"<" key ">" c "</" key ">")
- t t string)))
- (while (string-match "\\\\\\([_^]\\)" string)
- (setq string (replace-match (match-string 1 string) t t string))))
+ t t string))))
+ (while (string-match "\\\\\\([_^]\\)" string)
+ (setq string (replace-match (match-string 1 string) t t string)))
string))
(defun org-export-html-convert-emphasize (string)
@@ -20075,6 +20120,12 @@ really on, so that the block visually is on the match."
(throw 'exit t)))
nil))))
+(defun org-uniquify (list)
+ "Remove duplicate elements from LIST."
+ (let (res)
+ (mapc (lambda (x) (add-to-list 'res x 'append)) list)
+ res))
+
(defun org-delete-all (elts list)
"Remove all elements in ELTS from LIST."
(while elts
@@ -20211,6 +20262,7 @@ not an indirect buffer"
;; fill the headline as well.
(org-set-local 'comment-start-skip "^#+[ \t]*")
(org-set-local 'paragraph-separate "\f\\|\\*\\|[ ]*$\\|[ \t]*[:|]")
+;; FIXME!!!!!!! (org-set-local 'paragraph-separate "\f\\|[ ]*$")
;; The paragraph starter includes hand-formatted lists.
(org-set-local 'paragraph-start
"\f\\|[ ]*$\\|\\([*\f]+\\)\\|[ \t]*\\([-+*][ \t]+\\|[0-9]+[.)][ \t]+\\)\\|[ \t]*[:|]")
diff --git a/org.pdf b/org.pdf
index 0c91f6e..4ad3c24 100644
--- a/org.pdf
+++ b/org.pdf
Binary files differ
diff --git a/org.texi b/org.texi
index 9570802..a99ab26 100644
--- a/org.texi
+++ b/org.texi
@@ -3,8 +3,8 @@
@setfilename ../info/org
@settitle Org Mode Manual
-@set VERSION 4.70
-@set DATE March 2007
+@set VERSION 4.71
+@set DATE April 2007
@dircategory Emacs
@direntry
@@ -717,10 +717,16 @@ Backward to higher level heading.
@item C-c C-j
Jump to a different place without changing the current outline
visibility. Shows the document structure in a temporary buffer, where
-you can use visibility cycling (@key{TAB}) to find your destination.
-After pressing @key{RET}, the cursor moves to the selected location in
-the original buffer, and the headings hierarchy above it is made
-visible.
+you can use the following keys to find your destination:
+@example
+@key{TAB} @r{Cycle visibility.}
+@key{down} / @key{up} @r{Next/previous visible headline.}
+n / p @r{Next/previous visible headline.}
+f / b @r{Next/previous headline same level.}
+u @r{One level up.}
+0-9 @r{Digit argument.}
+@key{RET} @r{Select this location.}
+@end example
@end table
@node Structure editing, Archiving, Motion, Document structure
@@ -2460,8 +2466,7 @@ calendar | %:date"
@end example
@noindent
-If you would like to have the cursor in a specific position after the
-template has been expanded:
+To place the cursor after template expansion use:
@example
%? @r{After completing the template, position cursor here.}
@@ -2481,17 +2486,25 @@ target file - if you press @key{RET}, the value specified for the
template is used. Then the command offers the headings tree of the
selected file, with the cursor position at the default headline (if you
had specified one in the template). You can either immediately press
-@key{RET} to get the note placed there. Or you can use vertical cursor
-motion (@key{up} and @key{down}) and visibility cycling (@key{TAB}) to
-find a better place. Pressing @key{RET} or @key{left} or @key{right}
+@key{RET} to get the note placed there. Or you can use the following
+keys to find a better location:
+@example
+@key{TAB} @r{Cycle visibility.}
+@key{down} / @key{up} @r{Next/previous visible headline.}
+n / p @r{Next/previous visible headline.}
+f / b @r{Next/previous headline same level.}
+u @r{One level up.}
+@c 0-9 @r{Digit argument.}
+@end example
+@noindent
+Pressing @key{RET} or @key{left} or @key{right}
then leads to the following result.
-@multitable @columnfractions 0.2 0.1 0.7
+@multitable @columnfractions 0.2 0.15 0.65
@item @b{Cursor position} @tab @b{Key} @tab @b{Note gets inserted}
@item buffer-start @tab @key{RET} @tab as level 2 heading at end of file
@item on headline @tab @key{RET} @tab as sublevel of the heading at cursor
-@item @tab @key{left} @tab as same level, before current heading
-@item @tab @key{right} @tab as same level, after current heading
+@item @tab @key{left}/@key{right} @tab as same level, before/after current heading
@item not on headline @tab @key{RET}
@tab at cursor position, level taken from context.
Or use prefix arg to specify level manually.
@@ -4679,7 +4692,9 @@ preview the typeset result of these fragments, and upon export to HTML,
all fragments will be converted to images and inlined into the HTML
document. For this to work you need to be on a system with a working
La@TeX{} installation. You also need the @file{dvipng} program,
-available at @url{http://sourceforge.net/projects/dvipng/}.
+available at @url{http://sourceforge.net/projects/dvipng/}. The LaTeX
+header that will be used when processing a fragment can be configured
+with the variable @code{org-format-latex-header}.
La@TeX{} fragments don't need any special marking at all. The following
snippets will be identified as LaTeX source code:
@@ -5605,13 +5620,13 @@ Once org-publish is properly configured, you can publish with the
following functions:
@table @kbd
-@item C-c C-e c
+@item C-c C-e C
Prompt for a specific project and publish all files that belong to it.
-@item C-c C-e p
+@item C-c C-e P
Publish the project containing the current file.
-@item C-c C-e f
+@item C-c C-e F
Publish only the current file.
-@item C-c C-e a
+@item C-c C-e A
Publish all projects.
@end table
diff --git a/orgcard.pdf b/orgcard.pdf
index 5710017..ff9abf4 100644
--- a/orgcard.pdf
+++ b/orgcard.pdf
Binary files differ
diff --git a/orgcard.tex b/orgcard.tex
index e4c18b8..b5fb56c 100644
--- a/orgcard.tex
+++ b/orgcard.tex
@@ -1,5 +1,5 @@
% Reference Card for Org Mode
-\def\orgversionnumber{4.70}
+\def\orgversionnumber{4.71}
\def\versionyear{2007} % latest update
\def\year{2007} % latest copyright year
%