Mercurial > emacs
changeset 101670:a15c11f894f1
2009-01-30 Carsten Dominik <carsten.dominik@gmail.com>
* org-timer.el (org-timer): Provide the timer feature.
* org.el (org-require-autoloaded-modules): Add a few more files to
the list of autoloaded modules.
* org-agenda.el (org-agenda-todo): Pass ARG to `org-todo'.
* org-exp.el (org-export-remove-or-extract-drawers): Only remove
drawers that are unprotected.
(org-export-html-format-image): Make sure inlined LaTeX fragment
images remain inlined.
* org.el (org-toggle-ordered-property): New function.
(org-mode-map): Add a key for `org-toggle-ordered-property'.
(org-org-menu): Add menu entries for TODO dependencies.
* org.el (org-default-properties): Add ORDERED to the default
properties, to get completion support for it.
* org-list.el (org-update-checkbox-count): Update more than one cookie.
* org.el (org-update-parent-todo-statistics): Update more than one
cookie.
author | Carsten Dominik <dominik@science.uva.nl> |
---|---|
date | Fri, 30 Jan 2009 08:32:49 +0000 |
parents | 7f3372c8c319 |
children | 4c26fea2986c |
files | lisp/org/ChangeLog lisp/org/org-agenda.el lisp/org/org-archive.el lisp/org/org-attach.el lisp/org/org-bbdb.el lisp/org/org-bibtex.el lisp/org/org-clock.el lisp/org/org-colview.el lisp/org/org-compat.el lisp/org/org-exp.el lisp/org/org-export-latex.el lisp/org/org-faces.el lisp/org/org-footnote.el lisp/org/org-gnus.el lisp/org/org-id.el lisp/org/org-info.el lisp/org/org-irc.el lisp/org/org-jsinfo.el lisp/org/org-list.el lisp/org/org-mac-message.el lisp/org/org-macs.el lisp/org/org-mew.el lisp/org/org-mhe.el lisp/org/org-mouse.el lisp/org/org-plot.el lisp/org/org-publish.el lisp/org/org-remember.el lisp/org/org-rmail.el lisp/org/org-table.el lisp/org/org-timer.el lisp/org/org-vm.el lisp/org/org-w3m.el lisp/org/org-wl.el lisp/org/org.el |
diffstat | 34 files changed, 130 insertions(+), 85 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/org/ChangeLog Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/ChangeLog Fri Jan 30 08:32:49 2009 +0000 @@ -1,3 +1,29 @@ +2009-01-30 Carsten Dominik <carsten.dominik@gmail.com> + + * org-timer.el (org-timer): Provide the timer feature. + + * org.el (org-require-autoloaded-modules): Add a few more files to + the list of autoloaded modules. + + * org-agenda.el (org-agenda-todo): Pass ARG to `org-todo'. + + * org-exp.el (org-export-remove-or-extract-drawers): Only remove + drawers that are unprotected. + (org-export-html-format-image): Make sure inlined LaTeX fragment + images remain inlined. + + * org.el (org-toggle-ordered-property): New function. + (org-mode-map): Add a key for `org-toggle-ordered-property'. + (org-org-menu): Add menu entries for TODO dependencies. + + * org.el (org-default-properties): Add ORDERED to the default + properties, to get completion support for it. + + * org-list.el (org-update-checkbox-count): Update more than one cookie. + + * org.el (org-update-parent-todo-statistics): Update more than one + cookie. + 2009-01-28 Carsten Dominik <carsten.dominik@gmail.com> * org-agenda.el (org-agenda-get-todos): Start search from correct
--- a/lisp/org/org-agenda.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-agenda.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;; @@ -5131,7 +5131,8 @@ (save-excursion (and (outline-next-heading) (org-flag-heading nil))) ; show the next heading - (call-interactively 'org-todo) + (let ((current-prefix-arg arg)) + (call-interactively 'org-todo)) (and (bolp) (forward-char 1)) (setq newhead (org-get-heading)) (when (and (org-bound-and-true-p
--- a/lisp/org/org-archive.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-archive.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-attach.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-attach.el Fri Jan 30 08:32:49 2009 +0000 @@ -4,7 +4,7 @@ ;; Author: John Wiegley <johnw@newartisans.com> ;; Keywords: org data task -;; Version: 6.20c +;; Version: 6.20g ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-bbdb.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-bbdb.el Fri Jan 30 08:32:49 2009 +0000 @@ -7,7 +7,7 @@ ;; Thomas Baumann <thomas dot baumann at ch dot tum dot de> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-bibtex.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-bibtex.el Fri Jan 30 08:32:49 2009 +0000 @@ -5,7 +5,7 @@ ;; Author: Bastien Guerry <bzg at altern dot org> ;; Carsten Dominik <carsten dot dominik at gmail dot com> ;; Keywords: org, wp, remember -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-clock.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-clock.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-colview.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-colview.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-compat.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-compat.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-exp.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-exp.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;; @@ -384,20 +384,6 @@ (const :tag "Only with braces" {}) (const :tag "Never interpret" nil))) -(defcustom org-export-with-special-strings t - "Non-nil means, interpret \"\-\", \"--\" and \"---\" for export. -When this option is turned on, these strings will be exported as: - -\\- : ­ --- : – ---- : — - -Not all export backends support this, but HTML does. - -This option can also be set with the +OPTIONS line, e.g. \"-:nil\"." - :group 'org-export-translation - :type 'boolean) - (defcustom org-export-with-TeX-macros t "Non-nil means, interpret simple TeX-like macros when exporting. For example, HTML export converts \\alpha to α and \\AA to Å. @@ -1767,7 +1753,8 @@ "\\|") "\\):[ \t]*\n\\([^@]*?\n\\)?[ \t]*:END:[ \t]*\n"))) (while (re-search-forward re nil t) - (replace-match ""))))) + (org-if-unprotected + (replace-match "")))))) (defun org-export-handle-export-tags (select-tags exclude-tags) "Modify the buffer, honoring SELECT-TAGS and EXCLUDE-TAGS. @@ -2618,7 +2605,6 @@ "\n")) thetoc have-headings first-heading-pos table-open table-buffer link desc) - (let ((inhibit-read-only t)) (org-unmodified (remove-text-properties (point-min) (point-max) @@ -2776,7 +2762,7 @@ (if (string-match "\\\\\\\\[ \t]*$" line) (setq line (replace-match "" t t line))) (if (and org-export-with-fixed-width - (string-match "^\\([ \t]*\\)\\(:\\)" line)) + (string-match "^\\([ \t]*\\)\\(:\\( \\|$\\)\\)" line)) (setq line (replace-match "\\1" nil nil line))) (insert line "\n")))) @@ -4036,18 +4022,20 @@ (defun org-export-html-format-image (src) "Create image tag with source and attributes." (save-match-data - (let* ((caption (org-find-text-property-in-string 'org-caption src)) - (attr (org-find-text-property-in-string 'org-attributes src)) - (label (org-find-text-property-in-string 'org-label src))) - (format "<div %sclass=\"figure\"> + (if (string-match "^ltxpng/" src) + (format "<img src=\"%s\"/>" src) + (let* ((caption (org-find-text-property-in-string 'org-caption src)) + (attr (org-find-text-property-in-string 'org-attributes src)) + (label (org-find-text-property-in-string 'org-label src))) + (format "<div %sclass=\"figure\"> <p><img src=\"%s\"%s /></p>%s </div>" - (if label (format "id=\"%s\" " label) "") - src - (if (string-match "\\<alt=" (or attr "")) - (concat " " attr ) - (concat " " attr " alt=\"" src "\"")) - (if caption (concat "\n<p>" caption "</p>") ""))))) + (if label (format "id=\"%s\" " label) "") + src + (if (string-match "\\<alt=" (or attr "")) + (concat " " attr ) + (concat " " attr " alt=\"" src "\"")) + (if caption (concat "\n<p>" caption "</p>") "")))))) (defvar org-table-colgroup-info nil) (defun org-format-table-ascii (lines)
--- a/lisp/org/org-export-latex.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-export-latex.el Fri Jan 30 08:32:49 2009 +0000 @@ -4,7 +4,7 @@ ;; ;; Emacs Lisp Archive Entry ;; Filename: org-export-latex.el -;; Version: 6.20c +;; Version: 6.20g ;; Author: Bastien Guerry <bzg AT altern DOT org> ;; Maintainer: Bastien Guerry <bzg AT altern DOT org> ;; Keywords: org, wp, tex
--- a/lisp/org/org-faces.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-faces.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-footnote.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-footnote.el Fri Jan 30 08:32:49 2009 +0000 @@ -5,7 +5,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-gnus.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-gnus.el Fri Jan 30 08:32:49 2009 +0000 @@ -7,7 +7,7 @@ ;; Tassilo Horn <tassilo at member dot fsf dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-id.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-id.el Fri Jan 30 08:32:49 2009 +0000 @@ -5,7 +5,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-info.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-info.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-irc.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-irc.el Fri Jan 30 08:32:49 2009 +0000 @@ -4,7 +4,7 @@ ;; ;; Author: Philip Jackson <emacs@shellarchive.co.uk> ;; Keywords: erc, irc, link, org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-jsinfo.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-jsinfo.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-list.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-list.el Fri Jan 30 08:32:49 2009 +0000 @@ -7,7 +7,7 @@ ;; Bastien Guerry <bzg AT altern DOT org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;; @@ -253,7 +253,9 @@ With prefix arg TOGGLE-PRESENCE, add or remove checkboxes. When there is an active region, toggle status or presence of the checkbox in the first line, and make every item in the region have the same -status or precence, respectively." +status or precence, respectively. +If the cursor is in a headline, apply this to all checkbox items in the +text below the heading." (interactive "P") (catch 'exit (let (beg end status first-present first-status) @@ -286,7 +288,10 @@ (save-excursion (goto-char beg) (setq first-present (org-at-item-checkbox-p) - first-status (and first-present (equal (match-string 0) "[X]"))) + first-status + (save-excursion + (and (re-search-forward "[ \t]\\(\\[[ X]\\]\\)" end t) + (equal (match-string 1) "[X]")))) (while (< (point) end) (if toggle-presence (cond @@ -343,7 +348,7 @@ end-cookie (match-end 1) cstat (+ cstat (if end-cookie 1 0)) startsearch (point-at-eol) - continue-from (point-at-bol) + continue-from (match-beginning 0) is-percent (match-beginning 2) lim (cond ((org-on-heading-p) (outline-next-heading) (point))
--- a/lisp/org/org-mac-message.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-mac-message.el Fri Jan 30 08:32:49 2009 +0000 @@ -3,7 +3,7 @@ ;; Copyright (C) 2008, 2009 Free Software Foundation, Inc. ;; Author: John Wiegley <johnw@gnu.org> -;; Version: 6.20c +;; Version: 6.20g ;; Keywords: outlines, hypermedia, calendar, wp ;; This file is part of GNU Emacs.
--- a/lisp/org/org-macs.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-macs.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-mew.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-mew.el Fri Jan 30 08:32:49 2009 +0000 @@ -5,7 +5,7 @@ ;; Author: Tokuya Kameshima <kames at fa2 dot so-net dot ne dot jp> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; This file is part of GNU Emacs.
--- a/lisp/org/org-mhe.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-mhe.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Thomas Baumann <thomas dot baumann at ch dot tum dot de> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-mouse.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-mouse.el Fri Jan 30 08:32:49 2009 +0000 @@ -4,7 +4,7 @@ ;; ;; Author: Piotr Zielinski <piotr dot zielinski at gmail dot com> ;; Maintainer: Carsten Dominik <carsten at orgmode dot org> -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-plot.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-plot.el Fri Jan 30 08:32:49 2009 +0000 @@ -5,7 +5,7 @@ ;; Author: Eric Schulte <schulte dot eric at gmail dot com> ;; Keywords: tables, plotting ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-publish.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-publish.el Fri Jan 30 08:32:49 2009 +0000 @@ -4,7 +4,7 @@ ;; Author: David O'Toole <dto@gnu.org> ;; Maintainer: Bastien Guerry <bzg AT altern DOT org> ;; Keywords: hypermedia, outlines, wp -;; Version: 6.20c +;; Version: 6.20g ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-remember.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-remember.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-rmail.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-rmail.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-table.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-table.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-timer.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-timer.el Fri Jan 30 08:32:49 2009 +0000 @@ -5,7 +5,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;; @@ -253,6 +253,8 @@ (concat " <" (substring (org-timer-value-string) 0 -1) ">")) (force-mode-line-update))) +(provide 'org-timer) + ;; arch-tag: 97538f8c-3871-4509-8f23-1e7b3ff3d107 ;;; org-timer.el ends here
--- a/lisp/org/org-vm.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-vm.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-w3m.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-w3m.el Fri Jan 30 08:32:49 2009 +0000 @@ -5,7 +5,7 @@ ;; Author: Andy Stewart <lazycat dot manatee at gmail dot com> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org-wl.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org-wl.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Tokuya Kameshima <kames at fa2 dot so-net dot ne dot jp> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;;
--- a/lisp/org/org.el Fri Jan 30 08:16:26 2009 +0000 +++ b/lisp/org/org.el Fri Jan 30 08:32:49 2009 +0000 @@ -6,7 +6,7 @@ ;; Author: Carsten Dominik <carsten at orgmode dot org> ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 6.20c +;; Version: 6.20g ;; ;; This file is part of GNU Emacs. ;; @@ -94,7 +94,7 @@ ;;; Version -(defconst org-version "6.20c" +(defconst org-version "6.20g" "The version number of the file org.el.") (defun org-version (&optional here) @@ -8561,6 +8561,18 @@ (throw 'dont-block nil))))))) t)) ; don't block +(defun org-toggle-ordered-property () + "Toggle the ORDERED property of the current entry." + (interactive) + (save-excursion + (org-back-to-heading) + (if (org-entry-get nil "ORDERED") + (progn + (org-delete-property "ORDERED") + (message "Subtasks can be completed in arbitrary order or parallel")) + (org-entry-put nil "ORDERED" "t") + (message "Subtasks must be completed in sequence")))) + (defun org-update-parent-todo-statistics () "Update any statistics cookie in the parent of the current headline." (interactive) @@ -8569,24 +8581,24 @@ (catch 'exit (save-excursion (setq level (org-up-heading-safe)) - (unless (and level - (re-search-forward box-re (point-at-eol) t)) + (unless level (throw 'exit nil)) - (setq is-percent (match-end 2)) - (save-match-data - (unless (outline-next-heading) (throw 'exit nil)) - (while (looking-at org-todo-line-regexp) - (setq kwd (match-string 2)) - (and kwd (setq cnt-all (1+ cnt-all))) - (and (member kwd org-done-keywords) - (setq cnt-done (1+ cnt-done))) - (condition-case nil - (org-forward-same-level 1) - (error (end-of-line 1))))) - (replace-match - (if is-percent - (format "[%d%%]" (/ (* 100 cnt-done) (max 1 cnt-all))) - (format "[%d/%d]" cnt-done cnt-all))) + (while (re-search-forward box-re (point-at-eol) t) + (setq is-percent (match-end 2)) + (save-match-data + (unless (outline-next-heading) (throw 'exit nil)) + (while (looking-at org-todo-line-regexp) + (setq kwd (match-string 2)) + (and kwd (setq cnt-all (1+ cnt-all))) + (and (member kwd org-done-keywords) + (setq cnt-done (1+ cnt-done))) + (condition-case nil + (org-forward-same-level 1) + (error (end-of-line 1))))) + (replace-match + (if is-percent + (format "[%d%%]" (/ (* 100 cnt-done) (max 1 cnt-all))) + (format "[%d/%d]" cnt-done cnt-all)))) (run-hook-with-args 'org-after-todo-statistics-hook cnt-done (- cnt-all cnt-done)))))) @@ -10342,7 +10354,7 @@ '("ARCHIVE" "CATEGORY" "SUMMARY" "DESCRIPTION" "LOCATION" "LOGGING" "COLUMNS" "VISIBILITY" "TABLE_EXPORT_FORMAT" "TABLE_EXPORT_FILE" - "EXPORT_FILE_NAME" "EXPORT_TITLE") + "EXPORT_FILE_NAME" "EXPORT_TITLE" "ORDERED") "Some properties that are used by Org-mode for various purposes. Being in this list makes sure that they are offered for completion.") @@ -12876,6 +12888,7 @@ (org-defkey org-mode-map "\C-c\C-x\C-l" 'org-preview-latex-fragment) (org-defkey org-mode-map "\C-c\C-x\C-b" 'org-toggle-checkbox) (org-defkey org-mode-map "\C-c\C-xp" 'org-set-property) +(org-defkey org-mode-map "\C-c\C-xo" 'org-toggle-ordered-property) (org-defkey org-mode-map "\C-c\C-xi" 'org-insert-columns-dblock) (org-defkey org-mode-map "\C-c\C-x." 'org-timer) @@ -13715,6 +13728,16 @@ ["Show TODO Tree" org-show-todo-tree t] ["Global TODO list" org-todo-list t] "--" + ["Enforce dependencies" (customize-variable 'org-enforce-todo-dependencies) + :selected org-enforce-todo-dependencies :style toggle :active t] + "Settings for tree at point" + ["Do Children sequentially" org-toggle-ordered-property :style radio + :selected (ignore-errors (org-entry-get nil "ORDERED")) + :active org-enforce-todo-dependencies :keys "C-c C-x o"] + ["Do Children parallel" org-toggle-ordered-property :style radio + :selected (ignore-errors (not (org-entry-get nil "ORDERED"))) + :active org-enforce-todo-dependencies :keys "C-c C-x o"] + "--" ["Set Priority" org-priority t] ["Priority Up" org-shiftup t] ["Priority Down" org-shiftdown t]) @@ -13849,9 +13872,9 @@ (defun org-require-autoloaded-modules () (interactive) (mapc 'require - '(org-agenda org-archive org-clock org-colview + '(org-agenda org-archive org-attach org-clock org-colview org-exp org-id org-export-latex org-publish - org-remember org-table))) + org-remember org-table org-timer))) ;;;###autoload (defun org-customize ()