Browse Source

Release 5.13c

Carsten Dominik 18 years ago
parent
commit
6baed5bdc9
6 changed files with 159 additions and 124 deletions
  1. 8 0
      ChangeLog
  2. 113 110
      org
  3. 30 9
      org.el
  4. BIN
      org.pdf
  5. 8 5
      org.texi
  6. BIN
      orgcard.pdf

+ 8 - 0
ChangeLog

@@ -1,3 +1,11 @@
+2007-10-20  Carsten Dominik  <dominik@science.uva.nl>
+
+	* org.el (org-agenda-file-regexp): New variable.
+
+2007-10-19  Carsten Dominik  <dominik@science.uva.nl>
+
+	* org.el (org-agenda-files): Allow directories in the variable.
+
 2007-10-18  Carsten Dominik  <dominik@science.uva.nl>
 2007-10-18  Carsten Dominik  <dominik@science.uva.nl>
 
 
 	* org.el (org-agenda-get-restriction-and-command): New function.
 	* org.el (org-agenda-get-restriction-and-command): New function.

+ 113 - 110
org

@@ -4174,10 +4174,13 @@ File: org,  Node: Agenda files,  Next: Agenda dispatcher,  Prev: Agenda views,
 =================
 =================
 
 
 The information to be shown is collected from all _agenda files_, the
 The information to be shown is collected from all _agenda files_, the
-files listed in the variable `org-agenda-files'(1).  Thus even if you
-only work with a single Org-mode file, this file should be put into
-that list(2).  You can customize `org-agenda-files', but the easiest
-way to maintain it is through the following commands
+files listed in the variable `org-agenda-files'(1). If a directory is
+part of this list, all files with the extension `.org' in this
+directory will be part of the list.
+
+   Thus even if you only work with a single Org-mode file, this file
+should be put into that list(2).  You can customize `org-agenda-files',
+but the easiest way to maintain it is through the following commands
 
 
 `C-c ['
 `C-c ['
      Add current file to the list of agenda files.  The file is added to
      Add current file to the list of agenda files.  The file is added to
@@ -4200,7 +4203,7 @@ visit any of them.
 name, then the list of agenda files will be maintained in that external
 name, then the list of agenda files will be maintained in that external
 file.
 file.
 
 
-   (2) When using the dispatcher, pressing `1' before selecting a
+   (2) When using the dispatcher, pressing `<' before selecting a
 command will actually limit the command to the current file, and ignore
 command will actually limit the command to the current file, and ignore
 `org-agenda-files' until the next dispatcher command.
 `org-agenda-files' until the next dispatcher command.
 
 
@@ -7762,7 +7765,7 @@ Index
 * file links, searching:                 Search options.      (line   6)
 * file links, searching:                 Search options.      (line   6)
 * file name completion:                  Handling links.      (line  44)
 * file name completion:                  Handling links.      (line  44)
 * files for agenda:                      Agenda files.        (line   6)
 * files for agenda:                      Agenda files.        (line   6)
-* files, adding to agenda list:          Agenda files.        (line  12)
+* files, adding to agenda list:          Agenda files.        (line  15)
 * files, selecting for publishing:       Selecting files.     (line   6)
 * files, selecting for publishing:       Selecting files.     (line   6)
 * fixed width:                           Enhancing text.      (line  28)
 * fixed width:                           Enhancing text.      (line  28)
 * fixed-width sections:                  Export options.      (line  26)
 * fixed-width sections:                  Export options.      (line  26)
@@ -8145,8 +8148,8 @@ Key Index
 * C:                                     Agenda commands.     (line 216)
 * C:                                     Agenda commands.     (line 216)
 * c:                                     Agenda commands.     (line 196)
 * c:                                     Agenda commands.     (line 196)
 * C-#:                                   Advanced features.   (line   9)
 * C-#:                                   Advanced features.   (line   9)
-* C-':                                   Agenda files.        (line  18)
-* C-,:                                   Agenda files.        (line  18)
+* C-':                                   Agenda files.        (line  21)
+* C-,:                                   Agenda files.        (line  21)
 * C-<RET>:                               Structure editing.   (line  18)
 * C-<RET>:                               Structure editing.   (line  18)
 * C-_:                                   Agenda commands.     (line 108)
 * C-_:                                   Agenda commands.     (line 108)
 * C-c ! <1>:                             Footnotes.           (line  14)
 * C-c ! <1>:                             Footnotes.           (line  14)
@@ -8180,9 +8183,9 @@ Key Index
 * C-c >:                                 Creating timestamps. (line  27)
 * C-c >:                                 Creating timestamps. (line  27)
 * C-c ?:                                 Editing and debugging formulas.
 * C-c ?:                                 Editing and debugging formulas.
                                                               (line  24)
                                                               (line  24)
-* C-c [:                                 Agenda files.        (line  12)
+* C-c [:                                 Agenda files.        (line  15)
 * C-c \:                                 Tag searches.        (line   9)
 * C-c \:                                 Tag searches.        (line   9)
-* C-c ]:                                 Agenda files.        (line  15)
+* C-c ]:                                 Agenda files.        (line  18)
 * C-c ^ <1>:                             Built-in table editor.
 * C-c ^ <1>:                             Built-in table editor.
                                                               (line  96)
                                                               (line  96)
 * C-c ^:                                 Structure editing.   (line  58)
 * C-c ^:                                 Structure editing.   (line  58)
@@ -8625,105 +8628,105 @@ Node: Storing notes166201
 Ref: Storing notes-Footnote-1168680
 Ref: Storing notes-Footnote-1168680
 Node: Agenda views168782
 Node: Agenda views168782
 Node: Agenda files170733
 Node: Agenda files170733
-Ref: Agenda files-Footnote-1171701
-Ref: Agenda files-Footnote-2171850
-Node: Agenda dispatcher172043
-Ref: Agenda dispatcher-Footnote-1174097
-Ref: Agenda dispatcher-Footnote-2174191
-Node: Built-in agenda views174285
-Node: Weekly/Daily agenda174867
-Node: Global TODO list178204
-Node: Matching tags and properties180484
-Node: Timeline181575
-Node: Stuck projects182249
-Node: Presentation and sorting184102
-Node: Categories184895
-Ref: Categories-Footnote-1185606
-Node: Time-of-day specifications185926
-Node: Sorting of agenda items187899
-Node: Agenda commands189183
-Node: Custom agenda views196646
-Node: Storing searches197367
-Ref: Storing searches-Footnote-1199901
-Node: Block agenda200018
-Node: Setting Options201250
-Node: Exporting Agenda Views203991
-Ref: Exporting Agenda Views-Footnote-1208277
-Ref: Exporting Agenda Views-Footnote-2208334
-Node: Extracting Agenda Information for other programs208520
-Node: Embedded LaTeX212648
-Ref: Embedded LaTeX-Footnote-1213742
-Node: Math symbols213932
-Node: Subscripts and Superscripts214699
-Node: LaTeX fragments215545
-Ref: LaTeX fragments-Footnote-1217778
-Ref: LaTeX fragments-Footnote-2218039
-Node: Processing LaTeX fragments218173
-Node: CDLaTeX mode219121
-Ref: CDLaTeX mode-Footnote-1221607
-Node: Exporting221755
-Node: ASCII export223222
-Node: HTML export224723
-Node: HTML Export commands225349
-Node: Quoting HTML tags227136
-Node: Links227771
-Node: Images228468
-Ref: Images-Footnote-1229339
-Node: CSS support229400
-Ref: CSS support-Footnote-1230719
-Node: LaTeX export230832
-Node: LaTeX export commands231156
-Node: Quoting LaTeX code232318
-Node: XOXO export232823
-Node: iCalendar export233263
-Node: Text interpretation234732
-Node: Comment lines235323
-Node: Initial text235718
-Node: Footnotes237387
-Node: Enhancing text238178
-Ref: Enhancing text-Footnote-1240047
-Node: Export options240137
-Node: Publishing242539
-Ref: Publishing-Footnote-1243500
-Ref: Publishing-Footnote-2243644
-Node: Configuration243795
-Node: Project alist244513
-Node: Sources and destinations245579
-Node: Selecting files246309
-Node: Publishing action247057
-Node: Publishing options248391
-Node: Publishing links250766
-Node: Project page index252279
-Node: Sample configuration253057
-Node: Simple example253549
-Node: Complex example254222
-Node: Triggering publication256298
-Node: Miscellaneous256983
-Node: Completion257617
-Node: Customization259287
-Node: In-buffer settings259870
-Node: The very busy C-c C-c key265540
-Node: Clean view267395
-Node: TTY keys269972
-Node: Interaction271582
-Node: Cooperation271979
-Node: Conflicts274855
-Node: Bugs276858
-Node: Extensions and Hacking278354
-Node: Extensions279079
-Node: Adding hyperlink types281341
-Node: Tables in arbitrary syntax285003
-Node: Radio tables286092
-Node: A LaTeX example288595
-Ref: A LaTeX example-Footnote-1292241
-Ref: A LaTeX example-Footnote-2292389
-Node: Translator functions292824
-Ref: Translator functions-Footnote-1295933
-Node: Dynamic blocks296021
-Node: Special agenda views297993
-Node: Using the property API301238
-Node: History and Acknowledgments302719
-Node: Index309280
-Node: Key Index344349
+Ref: Agenda files-Footnote-1171821
+Ref: Agenda files-Footnote-2171970
+Node: Agenda dispatcher172163
+Ref: Agenda dispatcher-Footnote-1174217
+Ref: Agenda dispatcher-Footnote-2174311
+Node: Built-in agenda views174405
+Node: Weekly/Daily agenda174987
+Node: Global TODO list178324
+Node: Matching tags and properties180604
+Node: Timeline181695
+Node: Stuck projects182369
+Node: Presentation and sorting184222
+Node: Categories185015
+Ref: Categories-Footnote-1185726
+Node: Time-of-day specifications186046
+Node: Sorting of agenda items188019
+Node: Agenda commands189303
+Node: Custom agenda views196766
+Node: Storing searches197487
+Ref: Storing searches-Footnote-1200021
+Node: Block agenda200138
+Node: Setting Options201370
+Node: Exporting Agenda Views204111
+Ref: Exporting Agenda Views-Footnote-1208397
+Ref: Exporting Agenda Views-Footnote-2208454
+Node: Extracting Agenda Information for other programs208640
+Node: Embedded LaTeX212768
+Ref: Embedded LaTeX-Footnote-1213862
+Node: Math symbols214052
+Node: Subscripts and Superscripts214819
+Node: LaTeX fragments215665
+Ref: LaTeX fragments-Footnote-1217898
+Ref: LaTeX fragments-Footnote-2218159
+Node: Processing LaTeX fragments218293
+Node: CDLaTeX mode219241
+Ref: CDLaTeX mode-Footnote-1221727
+Node: Exporting221875
+Node: ASCII export223342
+Node: HTML export224843
+Node: HTML Export commands225469
+Node: Quoting HTML tags227256
+Node: Links227891
+Node: Images228588
+Ref: Images-Footnote-1229459
+Node: CSS support229520
+Ref: CSS support-Footnote-1230839
+Node: LaTeX export230952
+Node: LaTeX export commands231276
+Node: Quoting LaTeX code232438
+Node: XOXO export232943
+Node: iCalendar export233383
+Node: Text interpretation234852
+Node: Comment lines235443
+Node: Initial text235838
+Node: Footnotes237507
+Node: Enhancing text238298
+Ref: Enhancing text-Footnote-1240167
+Node: Export options240257
+Node: Publishing242659
+Ref: Publishing-Footnote-1243620
+Ref: Publishing-Footnote-2243764
+Node: Configuration243915
+Node: Project alist244633
+Node: Sources and destinations245699
+Node: Selecting files246429
+Node: Publishing action247177
+Node: Publishing options248511
+Node: Publishing links250886
+Node: Project page index252399
+Node: Sample configuration253177
+Node: Simple example253669
+Node: Complex example254342
+Node: Triggering publication256418
+Node: Miscellaneous257103
+Node: Completion257737
+Node: Customization259407
+Node: In-buffer settings259990
+Node: The very busy C-c C-c key265660
+Node: Clean view267515
+Node: TTY keys270092
+Node: Interaction271702
+Node: Cooperation272099
+Node: Conflicts274975
+Node: Bugs276978
+Node: Extensions and Hacking278474
+Node: Extensions279199
+Node: Adding hyperlink types281461
+Node: Tables in arbitrary syntax285123
+Node: Radio tables286212
+Node: A LaTeX example288715
+Ref: A LaTeX example-Footnote-1292361
+Ref: A LaTeX example-Footnote-2292509
+Node: Translator functions292944
+Ref: Translator functions-Footnote-1296053
+Node: Dynamic blocks296141
+Node: Special agenda views298113
+Node: Using the property API301358
+Node: History and Acknowledgments302839
+Node: Index309400
+Node: Key Index344469
 
 
 End Tag Table
 End Tag Table

+ 30 - 9
org.el

@@ -5,7 +5,7 @@
 ;; Author: Carsten Dominik <carsten at orgmode dot org>
 ;; Author: Carsten Dominik <carsten at orgmode dot org>
 ;; Keywords: outlines, hypermedia, calendar, wp
 ;; Keywords: outlines, hypermedia, calendar, wp
 ;; Homepage: http://orgmode.org
 ;; Homepage: http://orgmode.org
-;; Version: 5.13a
+;; Version: 5.13c
 ;;
 ;;
 ;; This file is part of GNU Emacs.
 ;; This file is part of GNU Emacs.
 ;;
 ;;
@@ -83,7 +83,7 @@
 
 
 ;;; Version
 ;;; Version
 
 
-(defconst org-version "5.13a"
+(defconst org-version "5.13c"
   "The version number of the file org.el.")
   "The version number of the file org.el.")
 (defun org-version ()
 (defun org-version ()
   (interactive)
   (interactive)
@@ -1987,14 +1987,25 @@ is used instead.")
 Entries may be added to this list with \\[org-agenda-file-to-front] and removed with
 Entries may be added to this list with \\[org-agenda-file-to-front] and removed with
 \\[org-remove-file].  You can also use customize to edit the list.
 \\[org-remove-file].  You can also use customize to edit the list.
 
 
+If an entry is a directory, all files in that directory that are matched by
+`org-agenda-file-regexp' will be part of the file list.
+
 If the value of the variable is not a list but a single file name, then
 If the value of the variable is not a list but a single file name, then
 the list of agenda files is actually stored and maintained in that file, one
 the list of agenda files is actually stored and maintained in that file, one
 agenda file per line."
 agenda file per line."
   :group 'org-agenda
   :group 'org-agenda
   :type '(choice
   :type '(choice
-	  (repeat :tag "List of files" file)
+	  (repeat :tag "List of files and directories" file)
 	  (file :tag "Store list in a file\n" :value "~/.agenda_files")))
 	  (file :tag "Store list in a file\n" :value "~/.agenda_files")))
 
 
+(defcustom org-agenda-file-regexp "\\.org\\'"
+  "Regular expression to match files for `org-agenda-files'.
+If ny element in the list in that variable contains a directory instead
+of a normal file, all files in that directory that are matched by this
+regular expression will be included."
+  :group 'org-agenda
+  :type 'regexp)
+
 (defcustom org-agenda-skip-unavailable-files nil
 (defcustom org-agenda-skip-unavailable-files nil
   "t means to just skip non-reachable files in `org-agenda-files'.
   "t means to just skip non-reachable files in `org-agenda-files'.
 Nil means to remove them, after a query, from the list."
 Nil means to remove them, after a query, from the list."
@@ -9767,7 +9778,8 @@ With prefix arg ALL, do this for all lines in the table."
 
 
 (defun org-table-formula-substitute-names (f)
 (defun org-table-formula-substitute-names (f)
   "Replace $const with values in string F."
   "Replace $const with values in string F."
-  (let ((start 0) a (f1 f))
+  (message "form %s" f) (sit-for 1)
+  (let ((start 0) a (f1 f) (pp (/= (string-to-char f) ?')))
     ;; First, check for column names
     ;; First, check for column names
     (while (setq start (string-match org-table-column-name-regexp f start))
     (while (setq start (string-match org-table-column-name-regexp f start))
       (setq start (1+ start))
       (setq start (1+ start))
@@ -9779,7 +9791,8 @@ With prefix arg ALL, do this for all lines in the table."
       (setq start (1+ start))
       (setq start (1+ start))
       (if (setq a (save-match-data
       (if (setq a (save-match-data
 		    (org-table-get-constant (match-string 1 f))))
 		    (org-table-get-constant (match-string 1 f))))
-	  (setq f (replace-match (concat "(" a ")") t t f))))
+	  (setq f (replace-match
+		   (concat (if pp "(") a (if pp ")")) t t f))))
     (if org-table-formula-debug
     (if org-table-formula-debug
 	(put-text-property 0 (length f) :orig-formula f1 f))
 	(put-text-property 0 (length f) :orig-formula f1 f))
     f))
     f))
@@ -18613,6 +18626,12 @@ is currently in place."
 	  ((stringp org-agenda-files) (org-read-agenda-file-list))
 	  ((stringp org-agenda-files) (org-read-agenda-file-list))
 	  ((listp org-agenda-files) org-agenda-files)
 	  ((listp org-agenda-files) org-agenda-files)
 	  (t (error "Invalid value of `org-agenda-files'")))))
 	  (t (error "Invalid value of `org-agenda-files'")))))
+    (setq files (apply 'append
+		       (mapcar (lambda (f)
+				 (if (file-directory-p f)
+				     (directory-files f t "\\.org\\'")
+				   (list f)))
+			       files)))
     (if org-agenda-skip-unavailable-files
     (if org-agenda-skip-unavailable-files
 	(delq nil
 	(delq nil
 	      (mapcar (function
 	      (mapcar (function
@@ -23830,7 +23849,7 @@ lang=\"%s\" xml:lang=\"%s\">
 
 
       (unless body-only
       (unless body-only
 	(when (plist-get opt-plist :auto-postamble)
 	(when (plist-get opt-plist :auto-postamble)
-	  (insert "<div=\"postamble\">")
+	  (insert "<div id=\"postamble\">")
 	  (when (and org-export-author-info author)
 	  (when (and org-export-author-info author)
 	    (insert "<p class=\"author\"> "
 	    (insert "<p class=\"author\"> "
 		    (nth 1 lang-words) ": " author "\n")
 		    (nth 1 lang-words) ": " author "\n")
@@ -23866,7 +23885,7 @@ lang=\"%s\" xml:lang=\"%s\">
 	  (when (looking-at "\\s-*</p>")
 	  (when (looking-at "\\s-*</p>")
 	    (goto-char (match-end 0))
 	    (goto-char (match-end 0))
 	    (insert "\n")))
 	    (insert "\n")))
-	(insert "<div class=\"table-of-contents\">\n")
+	(insert "<div id=\"table-of-contents\">\n")
 	(mapc 'insert thetoc)
 	(mapc 'insert thetoc)
 	(insert "</div>\n"))
 	(insert "</div>\n"))
       ;; remove empty paragraphs and lists
       ;; remove empty paragraphs and lists
@@ -24210,8 +24229,10 @@ But it has the disadvantage, that Org-mode's HTML conversions cannot be used."
 (defun org-html-expand (string)
 (defun org-html-expand (string)
   "Prepare STRING for HTML export.  Applies all active conversions.
   "Prepare STRING for HTML export.  Applies all active conversions.
 If there are links in the string, don't modify these."
 If there are links in the string, don't modify these."
-  (let* (m s l res)
-    (while (setq m (string-match org-bracket-link-regexp string))
+  (let* ((re (concat org-bracket-link-regexp "\\|"
+		     (org-re "[ \t]+\\(:[[:alnum:]_@:]+:\\)[ \t]*$")))
+	 m s l res)
+    (while (setq m (string-match re string))
       (setq s (substring string 0 m)
       (setq s (substring string 0 m)
 	    l (match-string 0 string)
 	    l (match-string 0 string)
 	    string (substring string (match-end 0)))
 	    string (substring string (match-end 0)))

BIN
org.pdf


+ 8 - 5
org.texi

@@ -4523,11 +4523,14 @@ window configuration is restored when the agenda exits:
 The information to be shown is collected from all @emph{agenda files},
 The information to be shown is collected from all @emph{agenda files},
 the files listed in the variable @code{org-agenda-files}@footnote{If the
 the files listed in the variable @code{org-agenda-files}@footnote{If the
 value of that variable is not a list, but a single file name, then the
 value of that variable is not a list, but a single file name, then the
-list of agenda files will be maintained in that external file.}.  Thus even
-if you only work with a single Org-mode file, this file should be put
-into that list@footnote{When using the dispatcher, pressing @kbd{1}
-before selecting a command will actually limit the command to the
-current file, and ignore @code{org-agenda-files} until the next
+list of agenda files will be maintained in that external file.}. If a
+directory is part of this list, all files with the extension @file{.org}
+in this directory will be part of the list.
+
+Thus even if you only work with a single Org-mode file, this file should
+be put into that list@footnote{When using the dispatcher, pressing
+@kbd{<} before selecting a command will actually limit the command to
+the current file, and ignore @code{org-agenda-files} until the next
 dispatcher command.}.  You can customize @code{org-agenda-files}, but
 dispatcher command.}.  You can customize @code{org-agenda-files}, but
 the easiest way to maintain it is through the following commands
 the easiest way to maintain it is through the following commands
 
 

BIN
orgcard.pdf