diff options
| -rw-r--r-- | doc/misc/ChangeLog | 11 | ||||
| -rw-r--r-- | doc/misc/org.texi | 140 | ||||
| -rw-r--r-- | lisp/org/ChangeLog | 53 | ||||
| -rw-r--r-- | lisp/org/ob-eval.el | 14 | ||||
| -rw-r--r-- | lisp/org/org-agenda.el | 148 | ||||
| -rw-r--r-- | lisp/org/org-capture.el | 8 | ||||
| -rw-r--r-- | lisp/org/org-clock.el | 2 | ||||
| -rw-r--r-- | lisp/org/org-compat.el | 28 | ||||
| -rw-r--r-- | lisp/org/org-id.el | 2 | ||||
| -rw-r--r-- | lisp/org/org-lparse.el | 4 | ||||
| -rw-r--r-- | lisp/org/org-mobile.el | 8 | ||||
| -rw-r--r-- | lisp/org/org-odt.el | 2 | ||||
| -rw-r--r-- | lisp/org/org-protocol.el | 6 | ||||
| -rw-r--r-- | lisp/org/org-version.el | 4 | ||||
| -rw-r--r-- | lisp/org/org.el | 35 |
15 files changed, 260 insertions, 205 deletions
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog index 8d88336183d..e3ee947fe24 100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog | |||
| @@ -1,3 +1,14 @@ | |||
| 1 | 2013-01-13 Bastien Guerry <bzg@gnu.org> | ||
| 2 | |||
| 3 | * org.texi (Installation): Simplify. | ||
| 4 | |||
| 5 | 2013-01-13 François Allisson <francois@allisson.co> (tiny change) | ||
| 6 | |||
| 7 | * org.texi (Handling links): Update the mention to the obsolete | ||
| 8 | variable `org-link-to-org-use-id' with a mention to the newer | ||
| 9 | variable `org-id-link-to-org-use-id'. Mention the need to load | ||
| 10 | the org-id library. | ||
| 11 | |||
| 1 | 2013-01-08 Bastien Guerry <bzg@gnu.org> | 12 | 2013-01-08 Bastien Guerry <bzg@gnu.org> |
| 2 | 13 | ||
| 3 | * org.texi (Pushing to MobileOrg): Add footnote about using | 14 | * org.texi (Pushing to MobileOrg): Add footnote about using |
diff --git a/doc/misc/org.texi b/doc/misc/org.texi index 75298db29fe..d41d2848cc6 100644 --- a/doc/misc/org.texi +++ b/doc/misc/org.texi | |||
| @@ -2,7 +2,7 @@ | |||
| 2 | @c %**start of header | 2 | @c %**start of header |
| 3 | @setfilename ../../info/org | 3 | @setfilename ../../info/org |
| 4 | @settitle The Org Manual | 4 | @settitle The Org Manual |
| 5 | @set VERSION 7.9.3+ (GNU Emacs 24.3) | 5 | @set VERSION 7.9.3d (GNU Emacs 24.3) |
| 6 | 6 | ||
| 7 | @c Use proper quote and backtick for code sections in PDF output | 7 | @c Use proper quote and backtick for code sections in PDF output |
| 8 | @c Cf. Texinfo manual 14.2 | 8 | @c Cf. Texinfo manual 14.2 |
| @@ -339,7 +339,7 @@ with contributions by David O'Toole, Bastien Guerry, Philip Rooke, Dan Davison, | |||
| 339 | Introduction | 339 | Introduction |
| 340 | 340 | ||
| 341 | * Summary:: Brief summary of what Org does | 341 | * Summary:: Brief summary of what Org does |
| 342 | * Installation:: How to install a downloaded version of Org | 342 | * Installation:: Installing Org |
| 343 | * Activation:: How to activate Org for certain buffers | 343 | * Activation:: How to activate Org for certain buffers |
| 344 | * Feedback:: Bug reports, ideas, patches etc. | 344 | * Feedback:: Bug reports, ideas, patches etc. |
| 345 | * Conventions:: Typesetting conventions in the manual | 345 | * Conventions:: Typesetting conventions in the manual |
| @@ -771,7 +771,7 @@ MobileOrg | |||
| 771 | 771 | ||
| 772 | @menu | 772 | @menu |
| 773 | * Summary:: Brief summary of what Org does | 773 | * Summary:: Brief summary of what Org does |
| 774 | * Installation:: How to install a downloaded version of Org | 774 | * Installation:: Installing Org |
| 775 | * Activation:: How to activate Org for certain buffers | 775 | * Activation:: How to activate Org for certain buffers |
| 776 | * Feedback:: Bug reports, ideas, patches etc. | 776 | * Feedback:: Bug reports, ideas, patches etc. |
| 777 | * Conventions:: Typesetting conventions in the manual | 777 | * Conventions:: Typesetting conventions in the manual |
| @@ -851,118 +851,69 @@ Theory Ltd.} | |||
| 851 | @cindex installation | 851 | @cindex installation |
| 852 | @cindex XEmacs | 852 | @cindex XEmacs |
| 853 | 853 | ||
| 854 | @b{Important:} @i{If you the version of Org that comes with Emacs or as a | 854 | Org is part of recent distributions of GNU Emacs, so you normally don't need |
| 855 | XEmacs package, please skip this section and go directly to @ref{Activation}. | 855 | to install it. If, for one reason or another, you want to install Org on top |
| 856 | If you downloaded Org as an ELPA package, please read the instructions on the | 856 | of this pre-packaged version, there are three ways to do it: |
| 857 | @uref{http://orgmode.org/elpa.html, Org ELPA page}. To see what version of Org | ||
| 858 | (if any) is part of your Emacs distribution, type @kbd{M-x org-version} (if | ||
| 859 | your Emacs distribution does not come with Org, this function will not be | ||
| 860 | defined).} | ||
| 861 | |||
| 862 | Installation of Org mode uses a build system, which is described in more | ||
| 863 | detail on @uref{http://orgmode.org/worg/dev/org-build-system.html, Worg}. | ||
| 864 | |||
| 865 | If you have downloaded Org from the Web as a distribution @file{.zip} or | ||
| 866 | @file{.tar.gz} archive, take the following steps to install it: | ||
| 867 | 857 | ||
| 868 | @itemize @bullet | 858 | @itemize @bullet |
| 869 | @item Unpack the distribution archive. | 859 | @item By using Emacs package system. |
| 870 | @item Change into (@code{cd}) the Org directory. | 860 | @item By downloading Org as an archive. |
| 871 | @item Run @code{make help config} | 861 | @item By using Org's git repository. |
| 872 | and then check and edit the file @file{local.mk} if the default configuration | ||
| 873 | does not match your system. Set the name of the Emacs binary (likely either | ||
| 874 | @file{emacs} or @file{xemacs}), and the paths to the directories where local | ||
| 875 | Lisp and Info files will be installed. If the Emacs binary is not in your | ||
| 876 | path, give the full path to the executable. Avoid spaces in any path names. | ||
| 877 | @item Run @code{make config} | ||
| 878 | again to check the configuration. | ||
| 879 | @item Run @code{make install} or @code{sudo make install} | ||
| 880 | to build and install Org mode on your system. | ||
| 881 | @end itemize | 862 | @end itemize |
| 882 | 863 | ||
| 883 | If you use a cloned Git repository, then the procedure is slightly different. | 864 | We @b{strongly recommend} to stick to a single installation method. |
| 884 | The following description assumes that you are using the @code{master} branch | ||
| 885 | (where the development is done). You could also use the @code{maint} branch | ||
| 886 | instead, where the release versions are published, just replace @code{master} | ||
| 887 | with @code{maint} in the description below. | ||
| 888 | 865 | ||
| 889 | @itemize @bullet | 866 | @subsubheading Using Emacs packaging system |
| 890 | @item Change into (@code{cd}) the Org repository. | ||
| 891 | @item Run @code{git checkout master} | ||
| 892 | to switch to the @code{master} branch of the Org repository. | ||
| 893 | @item Run @code{make help} | ||
| 894 | and then check and edit the file @file{local.mk}. You must set the name of | ||
| 895 | the Emacs binary (likely either @file{emacs} or @file{xemacs}), and the paths | ||
| 896 | to the directories where local Lisp and Info files will be installed. If the | ||
| 897 | Emacs binary is not in your path, you must give the full path to the | ||
| 898 | executable. Avoid spaces in any path names. | ||
| 899 | @item Run @code{make config} | ||
| 900 | to check the configuration. | ||
| 901 | @item Optionally run @code{make test} | ||
| 902 | to build Org mode and then run the full testsuite. | ||
| 903 | @item Run @code{make update2} or @code{make up2} | ||
| 904 | to update the Git repository and build and install Org mode. The latter | ||
| 905 | invocation runs the complete test suite before installation and installs only | ||
| 906 | if the build passes all tests. | ||
| 907 | @end itemize | ||
| 908 | 867 | ||
| 909 | If you don't have access to the system-wide directories and you don't want to | 868 | Recent Emacs distributions include a packaging system which lets you install |
| 910 | install somewhere into your home directory, you can run Org directly from the | 869 | Elisp libraries. You can install Org with @kbd{M-x package-install RET org}. |
| 911 | distribution directory or Org repository by compiling Org mode in place: | 870 | To make sure your Org configuration is well taken into account, initialize |
| 912 | 871 | the package system with @code{(package-initialize)} before setting any Org | |
| 913 | @itemize @bullet | 872 | option. If you want to use Org's package repository, check out the |
| 914 | @item Change into (@code{cd}) the Org repository. | 873 | @uref{http://orgmode.org/elpa.html, Org ELPA page}. |
| 915 | @item Run @code{git checkout master} | ||
| 916 | to switch to the @code{master} branch of the Org repository. | ||
| 917 | @item Run @code{make compile} | ||
| 918 | @end itemize | ||
| 919 | 874 | ||
| 920 | Last but not least you can also run Org mode directly from an Org repository | 875 | @subsubheading Downloading Org as an archive |
| 921 | without any compilation. Simply replace the last step in the recipe above | ||
| 922 | with @code{make uncompiled}. | ||
| 923 | 876 | ||
| 924 | Then add the following line to @file{.emacs}: | 877 | You can download Org latest release from @uref{http://orgmode.org/, Org's |
| 878 | website}. In this case, make sure you set the load-path correctly in your | ||
| 879 | @file{.emacs}: | ||
| 925 | 880 | ||
| 926 | @example | 881 | @example |
| 927 | (add-to-list 'load-path "~/path/to/orgdir/lisp") | 882 | (add-to-list 'load-path "~/path/to/orgdir/lisp") |
| 928 | @end example | 883 | @end example |
| 929 | 884 | ||
| 930 | @noindent | 885 | The downloaded archive contains contributed libraries that are not included |
| 931 | If you plan to use code from the @file{contrib} subdirectory without | 886 | in Emacs. If you want to use them, add the @file{contrib} directory to your |
| 932 | compiling them, do a similar step for this directory: | 887 | load-path: |
| 933 | 888 | ||
| 934 | @example | 889 | @example |
| 935 | (add-to-list 'load-path "~/path/to/orgdir/contrib/lisp" t) | 890 | (add-to-list 'load-path "~/path/to/orgdir/contrib/lisp" t) |
| 936 | @end example | 891 | @end example |
| 937 | 892 | ||
| 938 | If you want to include those files with the build and install, please | 893 | Optionally, you can compile the files and/or install them in your system. |
| 939 | customize the variable @code{ORG_ADD_CONTRIB} instead in your @code{local.mk} | 894 | Run @code{make help} to list compilation and installation options. |
| 940 | file, for more details please see this | ||
| 941 | @uref{http://orgmode.org/worg/dev/org-build-system.html#sec-4-1-2, | ||
| 942 | description on Worg}. | ||
| 943 | 895 | ||
| 944 | Installing Info files is system dependent, because of differences in the | 896 | @subsubheading Using Org's git repository |
| 945 | @file{install-info} program. The Info documentation is installed together | 897 | |
| 946 | with the rest of Org mode. If you don't install Org mode, it is possible to | 898 | You can clone Org's repository and install Org like this: |
| 947 | install the Info documentation separately (you need to have | ||
| 948 | install-info@footnote{The output from install-info (if any) is system | ||
| 949 | dependent. In particular Debian and its derivatives use two different | ||
| 950 | versions of install-info and you may see the message: | ||
| 951 | 899 | ||
| 952 | @example | 900 | @example |
| 953 | This is not dpkg install-info anymore, but GNU install-info | 901 | $ cd ~/src/ |
| 954 | See the man page for ginstall-info for command line arguments | 902 | $ git clone git://orgmode.org/org-mode.git |
| 903 | $ make autoloads | ||
| 955 | @end example | 904 | @end example |
| 956 | 905 | ||
| 957 | @noindent which can be safely ignored.} | 906 | Note that @code{make autoloads} is mandatory: it defines Org's version and |
| 958 | on your system). | 907 | Org's autoloaded functions, respectively in @file{org-version.el} and in |
| 908 | @file{org-loaddefs.el}. | ||
| 959 | 909 | ||
| 960 | @example | 910 | Remember to add the correct load-path as described in the method above. |
| 961 | make install-info | ||
| 962 | @end example | ||
| 963 | 911 | ||
| 964 | Do not forget to activate Org as described in the following section. | 912 | You can also compile and install Org from this git repository: check |
| 965 | @page | 913 | @code{make help} to get the list of compilation/installation options. |
| 914 | |||
| 915 | For more detailed explanations on Org's build system, please check the Org | ||
| 916 | Build System page on @uref{http://orgmode.org/worg/dev/org-build-system.html, Worg}. | ||
| 966 | 917 | ||
| 967 | @node Activation, Feedback, Installation, Introduction | 918 | @node Activation, Feedback, Installation, Introduction |
| 968 | @section Activation | 919 | @section Activation |
| @@ -3384,13 +3335,16 @@ be the description@footnote{If the headline contains a timestamp, it will be | |||
| 3384 | removed from the link and result in a wrong link---you should avoid putting | 3335 | removed from the link and result in a wrong link---you should avoid putting |
| 3385 | timestamp in the headline.}. | 3336 | timestamp in the headline.}. |
| 3386 | 3337 | ||
| 3387 | @vindex org-link-to-org-use-id | 3338 | @vindex org-id-link-to-org-use-id |
| 3388 | @cindex property, CUSTOM_ID | 3339 | @cindex property, CUSTOM_ID |
| 3389 | @cindex property, ID | 3340 | @cindex property, ID |
| 3390 | If the headline has a @code{CUSTOM_ID} property, a link to this custom ID | 3341 | If the headline has a @code{CUSTOM_ID} property, a link to this custom ID |
| 3391 | will be stored. In addition or alternatively (depending on the value of | 3342 | will be stored. In addition or alternatively (depending on the value of |
| 3392 | @code{org-link-to-org-use-id}), a globally unique @code{ID} property will be | 3343 | @code{org-id-link-to-org-use-id}), a globally unique @code{ID} property will |
| 3393 | created and/or used to construct a link. So using this command in Org | 3344 | be created and/or used to construct a link@footnote{The library @code{org-id} |
| 3345 | must first be loaded, either through @code{org-customize} by enabling | ||
| 3346 | @code{id} in @code{org-modules} , or by adding @code{(require 'org-id)} in | ||
| 3347 | your @file{.emacs}.}. So using this command in Org | ||
| 3394 | buffers will potentially create two links: a human-readable from the custom | 3348 | buffers will potentially create two links: a human-readable from the custom |
| 3395 | ID, and one that is globally unique and works even if the entry is moved from | 3349 | ID, and one that is globally unique and works even if the entry is moved from |
| 3396 | file to file. Later, when inserting the link, you need to decide which one | 3350 | file to file. Later, when inserting the link, you need to decide which one |
diff --git a/lisp/org/ChangeLog b/lisp/org/ChangeLog index 1201fa36a9f..b6d196ecf54 100644 --- a/lisp/org/ChangeLog +++ b/lisp/org/ChangeLog | |||
| @@ -1,24 +1,47 @@ | |||
| 1 | 2013-01-08 Achim Gratz <Stromeko@Stromeko.de> | 1 | 2013-01-13 Bastien Guerry <bzg@gnu.org> |
| 2 | |||
| 3 | * org-compat.el (org-condition-case-unless-debug): Delete. | ||
| 4 | |||
| 5 | * org-odt.el (org-odt-cleanup-xml-buffers): Use | ||
| 6 | `condition-case' instead of `org-condition-case-unless-debug', | ||
| 7 | which is now deleted. | ||
| 8 | |||
| 9 | * org-capture.el (org-capture-templates-contexts): | ||
| 10 | * org-agenda.el (org-agenda-custom-commands-contexts): | ||
| 11 | Docstring fix. | ||
| 12 | |||
| 13 | * org.el (org-get-tags-at): Remove duplicate inherited tags. | ||
| 14 | |||
| 15 | * org-agenda.el (org-agenda-show-inherited-tags): Allow to be set | ||
| 16 | to 'always or to a list of agenda types. | ||
| 17 | (org-agenda-finalize): Rework conditions under which inherited | ||
| 18 | tags should be made available even when not displayed. | ||
| 19 | (org-search-view, org-agenda-get-todos) | ||
| 20 | (org-agenda-get-timestamps, org-agenda-get-sexps) | ||
| 21 | (org-agenda-get-progress, org-agenda-get-scheduled) | ||
| 22 | (org-agenda-get-blocks): Use new possible values of | ||
| 23 | `org-agenda-show-inherited-tags'. | ||
| 2 | 24 | ||
| 3 | * org-compat.el (org-define-obsolete-function-alias) | 25 | * org.el (org-open-at-point): Fix opening all links at point. |
| 4 | (org-define-obsolete-variable-alias): Introduce new compatibility | ||
| 5 | macros to obsolete functions and variables. | ||
| 6 | 26 | ||
| 7 | * org-agenda.el, org-clock.el, org-id.el, org-lparse.el, | 27 | * org-agenda.el (org-get-entries-from-diary): Turn off |
| 8 | org-protocol.el org.el: Use | 28 | `diary-file-name-prefix' instead of |
| 9 | `org-define-obsolete-{function,variable}-alias' instead of | 29 | `diary-file-name-prefix-function', the former is checked before |
| 10 | `define-obsolate{function,variable}-alias'. | 30 | the latter. |
| 31 | |||
| 32 | * org.el (org-edit-special): Check for table.el before checking | ||
| 33 | for Org tables. | ||
| 34 | |||
| 35 | 2013-01-13 Michael Albinus <michael.albinus@gmx.de> | ||
| 36 | |||
| 37 | * ob-eval.el (org-babel-shell-command-on-region): Use | ||
| 38 | `executable-find' for local `shell-file-name'. | ||
| 39 | |||
| 40 | 2013-01-08 Achim Gratz <Stromeko@Stromeko.de> | ||
| 11 | 41 | ||
| 12 | * org-faces.el: Define face alias mode-line for XEmacs (it's | 42 | * org-faces.el: Define face alias mode-line for XEmacs (it's |
| 13 | called modeline there). | 43 | called modeline there). |
| 14 | 44 | ||
| 15 | * org-compat.el (org-condition-case-unless-debug): Do not use | ||
| 16 | defalias for special forms, the Emacs 22 byte-compiler does not | ||
| 17 | recognize them correctly when compiling macros. Use a macro | ||
| 18 | instead and rely on macro expansion. That however makes the | ||
| 19 | decision at compile time, which should be acceptable in this case | ||
| 20 | since it only affects debugging. | ||
| 21 | |||
| 22 | * org-compat.el (org-no-popups): New wrapper macro which let-binds | 45 | * org-compat.el (org-no-popups): New wrapper macro which let-binds |
| 23 | the correct variables to suppress popup windows depending on the | 46 | the correct variables to suppress popup windows depending on the |
| 24 | Emacs version in use. This is a compile-time decision when | 47 | Emacs version in use. This is a compile-time decision when |
diff --git a/lisp/org/ob-eval.el b/lisp/org/ob-eval.el index 5884d33d786..22d2bcf288e 100644 --- a/lisp/org/ob-eval.el +++ b/lisp/org/ob-eval.el | |||
| @@ -137,11 +137,17 @@ specifies the value of ERROR-BUFFER." | |||
| 137 | t))) | 137 | t))) |
| 138 | (let ((input-file (org-babel-temp-file "input-")) | 138 | (let ((input-file (org-babel-temp-file "input-")) |
| 139 | (error-file (if error-buffer (org-babel-temp-file "scor-") nil)) | 139 | (error-file (if error-buffer (org-babel-temp-file "scor-") nil)) |
| 140 | ;; Unfortunately, `executable-find' does not support file name | ||
| 141 | ;; handlers. Therefore, we could use it in the local case | ||
| 142 | ;; only. | ||
| 140 | (shell-file-name | 143 | (shell-file-name |
| 141 | (if (file-executable-p | 144 | (cond ((and (not (file-remote-p default-directory)) |
| 142 | (concat (file-remote-p default-directory) shell-file-name)) | 145 | (executable-find shell-file-name)) |
| 143 | shell-file-name | 146 | shell-file-name) |
| 144 | "/bin/sh")) | 147 | ((file-executable-p |
| 148 | (concat (file-remote-p default-directory) shell-file-name)) | ||
| 149 | shell-file-name) | ||
| 150 | ("/bin/sh"))) | ||
| 145 | exit-status) | 151 | exit-status) |
| 146 | ;; There is an error in `process-file' when `error-file' exists. | 152 | ;; There is an error in `process-file' when `error-file' exists. |
| 147 | ;; This is fixed in Emacs trunk as of 2012-12-21; let's use this | 153 | ;; This is fixed in Emacs trunk as of 2012-12-21; let's use this |
diff --git a/lisp/org/org-agenda.el b/lisp/org/org-agenda.el index 2eb96c2510b..ca8459ca33d 100644 --- a/lisp/org/org-agenda.el +++ b/lisp/org/org-agenda.el | |||
| @@ -890,7 +890,7 @@ you want to use two-columns display (see `org-agenda-menu-two-columns')." | |||
| 890 | :version "24.1" | 890 | :version "24.1" |
| 891 | :type 'boolean) | 891 | :type 'boolean) |
| 892 | 892 | ||
| 893 | (org-define-obsolete-variable-alias 'org-agenda-menu-two-column 'org-agenda-menu-two-columns "24.3") | 893 | (define-obsolete-variable-alias 'org-agenda-menu-two-column 'org-agenda-menu-two-columns "24.3") |
| 894 | 894 | ||
| 895 | (defcustom org-agenda-menu-two-columns nil | 895 | (defcustom org-agenda-menu-two-columns nil |
| 896 | "Non-nil means, use two columns to show custom commands in the dispatcher. | 896 | "Non-nil means, use two columns to show custom commands in the dispatcher. |
| @@ -900,7 +900,7 @@ to nil." | |||
| 900 | :version "24.1" | 900 | :version "24.1" |
| 901 | :type 'boolean) | 901 | :type 'boolean) |
| 902 | 902 | ||
| 903 | (org-define-obsolete-variable-alias 'org-finalize-agenda-hook 'org-agenda-finalize-hook "24.3") | 903 | (define-obsolete-variable-alias 'org-finalize-agenda-hook 'org-agenda-finalize-hook "24.3") |
| 904 | (defcustom org-agenda-finalize-hook nil | 904 | (defcustom org-agenda-finalize-hook nil |
| 905 | "Hook run just before displaying an agenda buffer. | 905 | "Hook run just before displaying an agenda buffer. |
| 906 | The buffer is still writable when the hook is called. | 906 | The buffer is still writable when the hook is called. |
| @@ -1648,26 +1648,53 @@ When non-nil, this must be the number of minutes, e.g. 60 for one hour." | |||
| 1648 | (const :tag "No default duration"))) | 1648 | (const :tag "No default duration"))) |
| 1649 | 1649 | ||
| 1650 | (defcustom org-agenda-show-inherited-tags t | 1650 | (defcustom org-agenda-show-inherited-tags t |
| 1651 | "Non-nil means show inherited tags in each agenda line." | 1651 | "Non-nil means show inherited tags in each agenda line. |
| 1652 | |||
| 1653 | When this option is set to 'always, it take precedences over | ||
| 1654 | `org-agenda-use-tag-inheritance' and inherited tags are shown | ||
| 1655 | in every agenda. | ||
| 1656 | |||
| 1657 | When this option is set to t (the default), inherited tags are | ||
| 1658 | shown when they are available, i.e. when the value of | ||
| 1659 | `org-agenda-use-tag-inheritance' has been taken into account. | ||
| 1660 | |||
| 1661 | This can be set to a list of agenda types in which the agenda | ||
| 1662 | must display the inherited tags. Available types are 'todo, | ||
| 1663 | 'agenda, 'search and 'timeline. | ||
| 1664 | |||
| 1665 | When set to nil, never show inherited tags in agenda lines." | ||
| 1652 | :group 'org-agenda-line-format | 1666 | :group 'org-agenda-line-format |
| 1653 | :type 'boolean) | 1667 | :group 'org-agenda |
| 1668 | :version "24.3" | ||
| 1669 | :type '(choice | ||
| 1670 | (const :tag "Show inherited tags when available" t) | ||
| 1671 | (const :tag "Always show inherited tags" 'always) | ||
| 1672 | (repeat :tag "Show inherited tags only in selected agenda types" | ||
| 1673 | (symbol :tag "Agenda type")))) | ||
| 1654 | 1674 | ||
| 1655 | (defcustom org-agenda-use-tag-inheritance '(todo search timeline agenda) | 1675 | (defcustom org-agenda-use-tag-inheritance '(todo search timeline agenda) |
| 1656 | "List of agenda view types where to use tag inheritance. | 1676 | "List of agenda view types where to use tag inheritance. |
| 1657 | 1677 | ||
| 1658 | In tags/tags-todo/tags-tree agenda views, tag inheritance is | 1678 | In tags/tags-todo/tags-tree agenda views, tag inheritance is |
| 1659 | controlled by `org-use-tag-inheritance'. In other agenda types, | 1679 | controlled by `org-use-tag-inheritance'. In other agenda types, |
| 1660 | `org-use-tag-inheritance' is not used when selecting the agenda | 1680 | `org-use-tag-inheritance' is not used for the selection of the |
| 1661 | entries, but you may want the agenda to use the inherited tags | 1681 | agenda entries. Still, you may want the agenda to be aware of |
| 1662 | anyway, e.g. for later tag filtering. | 1682 | the inherited tags anyway, e.g. for later tag filtering. |
| 1663 | 1683 | ||
| 1664 | The default value reset tags in every agenda type. Setting this | 1684 | Allowed value are 'todo, 'search, 'timeline and 'agenda. |
| 1665 | option to nil will speed up non-tags agenda view a lot. | ||
| 1666 | 1685 | ||
| 1667 | Allowed value are 'todo, 'search, 'timeline and 'agenda." | 1686 | This variable has no effect if `org-agenda-show-inherited-tags' |
| 1668 | :version "24.3" | 1687 | is set to 'always. In that case, the agenda is aware of those |
| 1688 | tags. | ||
| 1689 | |||
| 1690 | The default value sets tags in every agenda type. Setting this | ||
| 1691 | option to nil will speed up non-tags agenda view a lot." | ||
| 1669 | :group 'org-agenda | 1692 | :group 'org-agenda |
| 1670 | :type '(repeat (symbol :tag "Agenda type"))) | 1693 | :version "24.3" |
| 1694 | :type '(choice | ||
| 1695 | (const :tag "Use tag inheritance in all agenda types" t) | ||
| 1696 | (repeat :tag "Use tag inheritance in selected agenda types" | ||
| 1697 | (symbol :tag "Agenda type")))) | ||
| 1671 | 1698 | ||
| 1672 | (defcustom org-agenda-hide-tags-regexp nil | 1699 | (defcustom org-agenda-hide-tags-regexp nil |
| 1673 | "Regular expression used to filter away specific tags in agenda views. | 1700 | "Regular expression used to filter away specific tags in agenda views. |
| @@ -2363,7 +2390,7 @@ For example, if you have a custom agenda command \"p\" and you | |||
| 2363 | want this command to be accessible only from plain text files, | 2390 | want this command to be accessible only from plain text files, |
| 2364 | use this: | 2391 | use this: |
| 2365 | 2392 | ||
| 2366 | '((\"p\" (in-file . \"\\.txt\"))) | 2393 | '((\"p\" ((in-file . \"\\.txt\")))) |
| 2367 | 2394 | ||
| 2368 | Here are the available contexts definitions: | 2395 | Here are the available contexts definitions: |
| 2369 | 2396 | ||
| @@ -2379,7 +2406,7 @@ accessible if there is at least one valid check. | |||
| 2379 | You can also bind a key to another agenda custom command | 2406 | You can also bind a key to another agenda custom command |
| 2380 | depending on contextual rules. | 2407 | depending on contextual rules. |
| 2381 | 2408 | ||
| 2382 | '((\"p\" \"q\" (in-file . \"\\.txt\"))) | 2409 | '((\"p\" \"q\" ((in-file . \"\\.txt\")))) |
| 2383 | 2410 | ||
| 2384 | Here it means: in .txt files, use \"p\" as the key for the | 2411 | Here it means: in .txt files, use \"p\" as the key for the |
| 2385 | agenda command otherwise associated with \"q\". (The command | 2412 | agenda command otherwise associated with \"q\". (The command |
| @@ -3569,8 +3596,14 @@ generating a new one." | |||
| 3569 | (save-excursion (next-single-property-change (point-min) 'org-habit-p))) | 3596 | (save-excursion (next-single-property-change (point-min) 'org-habit-p))) |
| 3570 | (org-habit-insert-consistency-graphs)) | 3597 | (org-habit-insert-consistency-graphs)) |
| 3571 | (setq org-agenda-type (org-get-at-bol 'org-agenda-type)) | 3598 | (setq org-agenda-type (org-get-at-bol 'org-agenda-type)) |
| 3572 | (when (delq nil (mapcar (lambda (tp) (org-agenda-check-type nil tp)) | 3599 | (unless (or (eq org-agenda-show-inherited-tags 'always) |
| 3573 | org-agenda-use-tag-inheritance)) | 3600 | (and (listp org-agenda-show-inherited-tags) |
| 3601 | (memq org-agenda-type org-agenda-show-inherited-tags)) | ||
| 3602 | (and (eq org-agenda-show-inherited-tags t) | ||
| 3603 | (or (eq org-agenda-use-tag-inheritance t) | ||
| 3604 | (and (listp org-agenda-use-tag-inheritance) | ||
| 3605 | (not (memq org-agenda-type | ||
| 3606 | org-agenda-use-tag-inheritance)))))) | ||
| 3574 | (let (mrk) | 3607 | (let (mrk) |
| 3575 | (save-excursion | 3608 | (save-excursion |
| 3576 | (goto-char (point-min)) | 3609 | (goto-char (point-min)) |
| @@ -4290,7 +4323,7 @@ in `org-agenda-text-search-extra-files'." | |||
| 4290 | 'help-echo (format "mouse-2 or RET jump to location"))) | 4323 | 'help-echo (format "mouse-2 or RET jump to location"))) |
| 4291 | (full-words org-agenda-search-view-force-full-words) | 4324 | (full-words org-agenda-search-view-force-full-words) |
| 4292 | (org-agenda-text-search-extra-files org-agenda-text-search-extra-files) | 4325 | (org-agenda-text-search-extra-files org-agenda-text-search-extra-files) |
| 4293 | regexp rtn rtnall files file pos | 4326 | regexp rtn rtnall files file pos inherited-tags |
| 4294 | marker category category-pos tags c neg re boolean | 4327 | marker category category-pos tags c neg re boolean |
| 4295 | ee txt beg end words regexps+ regexps- hdl-only buffer beg1 str) | 4328 | ee txt beg end words regexps+ regexps- hdl-only buffer beg1 str) |
| 4296 | (unless (and (not edit-at) | 4329 | (unless (and (not edit-at) |
| @@ -4444,7 +4477,13 @@ in `org-agenda-text-search-extra-files'." | |||
| 4444 | (setq marker (org-agenda-new-marker (point)) | 4477 | (setq marker (org-agenda-new-marker (point)) |
| 4445 | category (org-get-category) | 4478 | category (org-get-category) |
| 4446 | category-pos (get-text-property (point) 'org-category-position) | 4479 | category-pos (get-text-property (point) 'org-category-position) |
| 4447 | tags (org-get-tags-at nil t) | 4480 | inherited-tags |
| 4481 | (or (eq org-agenda-show-inherited-tags 'always) | ||
| 4482 | (memq 'todo org-agenda-show-inherited-tags) | ||
| 4483 | (and (eq org-agenda-show-inherited-tags t) | ||
| 4484 | (or (eq org-agenda-use-tag-inheritance t) | ||
| 4485 | (memq 'todo org-agenda-use-tag-inheritance)))) | ||
| 4486 | tags (org-get-tags-at nil (not inherited-tags)) | ||
| 4448 | txt (org-agenda-format-item | 4487 | txt (org-agenda-format-item |
| 4449 | "" | 4488 | "" |
| 4450 | (buffer-substring-no-properties | 4489 | (buffer-substring-no-properties |
| @@ -4974,7 +5013,7 @@ of what a project is and how to check if it stuck, customize the variable | |||
| 4974 | (pop-up-frames nil) | 5013 | (pop-up-frames nil) |
| 4975 | (diary-list-entries-hook | 5014 | (diary-list-entries-hook |
| 4976 | (cons 'org-diary-default-entry diary-list-entries-hook)) | 5015 | (cons 'org-diary-default-entry diary-list-entries-hook)) |
| 4977 | (diary-file-name-prefix-function nil) ; turn this feature off | 5016 | (diary-file-name-prefix nil) ; turn this feature off |
| 4978 | (diary-modify-entry-list-string-function 'org-modify-diary-entry-string) | 5017 | (diary-modify-entry-list-string-function 'org-modify-diary-entry-string) |
| 4979 | entries | 5018 | entries |
| 4980 | (org-disable-agenda-to-diary t)) | 5019 | (org-disable-agenda-to-diary t)) |
| @@ -5250,7 +5289,7 @@ the documentation of `org-diary'." | |||
| 5250 | "\\|") "\\)")) | 5289 | "\\|") "\\)")) |
| 5251 | (t org-not-done-regexp)))) | 5290 | (t org-not-done-regexp)))) |
| 5252 | marker priority category category-pos tags todo-state | 5291 | marker priority category category-pos tags todo-state |
| 5253 | ee txt beg end) | 5292 | ee txt beg end inherited-tags) |
| 5254 | (goto-char (point-min)) | 5293 | (goto-char (point-min)) |
| 5255 | (while (re-search-forward regexp nil t) | 5294 | (while (re-search-forward regexp nil t) |
| 5256 | (catch :skip | 5295 | (catch :skip |
| @@ -5268,7 +5307,14 @@ the documentation of `org-diary'." | |||
| 5268 | category-pos (get-text-property (point) 'org-category-position) | 5307 | category-pos (get-text-property (point) 'org-category-position) |
| 5269 | txt (org-trim | 5308 | txt (org-trim |
| 5270 | (buffer-substring (match-beginning 2) (match-end 0))) | 5309 | (buffer-substring (match-beginning 2) (match-end 0))) |
| 5271 | tags (org-get-tags-at nil t) | 5310 | inherited-tags |
| 5311 | (or (eq org-agenda-show-inherited-tags 'always) | ||
| 5312 | (and (listp org-agenda-show-inherited-tags) | ||
| 5313 | (memq 'todo org-agenda-show-inherited-tags)) | ||
| 5314 | (and (eq org-agenda-show-inherited-tags t) | ||
| 5315 | (or (eq org-agenda-use-tag-inheritance t) | ||
| 5316 | (memq 'todo org-agenda-use-tag-inheritance)))) | ||
| 5317 | tags (org-get-tags-at nil (not inherited-tags)) | ||
| 5272 | txt (org-agenda-format-item "" txt category tags t) | 5318 | txt (org-agenda-format-item "" txt category tags t) |
| 5273 | priority (1+ (org-get-priority txt)) | 5319 | priority (1+ (org-get-priority txt)) |
| 5274 | todo-state (org-get-todo-state)) | 5320 | todo-state (org-get-todo-state)) |
| @@ -5395,7 +5441,8 @@ Do we have a reason to ignore this TODO entry because it has a time stamp? | |||
| 5395 | "\\|\\(<%%\\(([^>\n]+)\\)>\\)")) | 5441 | "\\|\\(<%%\\(([^>\n]+)\\)>\\)")) |
| 5396 | marker hdmarker deadlinep scheduledp clockp closedp inactivep | 5442 | marker hdmarker deadlinep scheduledp clockp closedp inactivep |
| 5397 | donep tmp priority category category-pos ee txt timestr tags | 5443 | donep tmp priority category category-pos ee txt timestr tags |
| 5398 | b0 b3 e3 head todo-state end-of-match show-all warntime habitp) | 5444 | b0 b3 e3 head todo-state end-of-match show-all warntime habitp |
| 5445 | inherited-tags) | ||
| 5399 | (goto-char (point-min)) | 5446 | (goto-char (point-min)) |
| 5400 | (while (setq end-of-match (re-search-forward regexp nil t)) | 5447 | (while (setq end-of-match (re-search-forward regexp nil t)) |
| 5401 | (setq b0 (match-beginning 0) | 5448 | (setq b0 (match-beginning 0) |
| @@ -5447,7 +5494,14 @@ Do we have a reason to ignore this TODO entry because it has a time stamp? | |||
| 5447 | (assoc (point) deadline-position-alist)) | 5494 | (assoc (point) deadline-position-alist)) |
| 5448 | (throw :skip nil)) | 5495 | (throw :skip nil)) |
| 5449 | (setq hdmarker (org-agenda-new-marker) | 5496 | (setq hdmarker (org-agenda-new-marker) |
| 5450 | tags (org-get-tags-at nil t)) | 5497 | inherited-tags |
| 5498 | (or (eq org-agenda-show-inherited-tags 'always) | ||
| 5499 | (and (listp org-agenda-show-inherited-tags) | ||
| 5500 | (memq 'agenda org-agenda-show-inherited-tags)) | ||
| 5501 | (and (eq org-agenda-show-inherited-tags t) | ||
| 5502 | (or (eq org-agenda-use-tag-inheritance t) | ||
| 5503 | (memq 'agenda org-agenda-use-tag-inheritance)))) | ||
| 5504 | tags (org-get-tags-at nil (not inherited-tags))) | ||
| 5451 | (looking-at "\\*+[ \t]+\\([^\r\n]+\\)") | 5505 | (looking-at "\\*+[ \t]+\\([^\r\n]+\\)") |
| 5452 | (setq head (or (match-string 1) "")) | 5506 | (setq head (or (match-string 1) "")) |
| 5453 | (setq txt (org-agenda-format-item | 5507 | (setq txt (org-agenda-format-item |
| @@ -5479,7 +5533,7 @@ Do we have a reason to ignore this TODO entry because it has a time stamp? | |||
| 5479 | (abbreviate-file-name buffer-file-name)))) | 5533 | (abbreviate-file-name buffer-file-name)))) |
| 5480 | (regexp "^&?%%(") | 5534 | (regexp "^&?%%(") |
| 5481 | marker category extra category-pos ee txt tags entry | 5535 | marker category extra category-pos ee txt tags entry |
| 5482 | result beg b sexp sexp-entry todo-state warntime) | 5536 | result beg b sexp sexp-entry todo-state warntime inherited-tags) |
| 5483 | (goto-char (point-min)) | 5537 | (goto-char (point-min)) |
| 5484 | (while (re-search-forward regexp nil t) | 5538 | (while (re-search-forward regexp nil t) |
| 5485 | (catch :skip | 5539 | (catch :skip |
| @@ -5497,7 +5551,14 @@ Do we have a reason to ignore this TODO entry because it has a time stamp? | |||
| 5497 | (setq marker (org-agenda-new-marker beg) | 5551 | (setq marker (org-agenda-new-marker beg) |
| 5498 | category (org-get-category beg) | 5552 | category (org-get-category beg) |
| 5499 | category-pos (get-text-property beg 'org-category-position) | 5553 | category-pos (get-text-property beg 'org-category-position) |
| 5500 | tags (save-excursion (org-back-to-heading t) (org-get-tags-at nil t)) | 5554 | inherited-tags |
| 5555 | (or (eq org-agenda-show-inherited-tags 'always) | ||
| 5556 | (and (listp org-agenda-show-inherited-tags) | ||
| 5557 | (memq 'agenda org-agenda-show-inherited-tags)) | ||
| 5558 | (and (eq org-agenda-show-inherited-tags t) | ||
| 5559 | (or (eq org-agenda-use-tag-inheritance t) | ||
| 5560 | (memq 'agenda org-agenda-use-tag-inheritance)))) | ||
| 5561 | tags (org-get-tags-at nil (not inherited-tags)) | ||
| 5501 | todo-state (org-get-todo-state) | 5562 | todo-state (org-get-todo-state) |
| 5502 | warntime (get-text-property (point) 'org-appt-warntime) | 5563 | warntime (get-text-property (point) 'org-appt-warntime) |
| 5503 | extra nil) | 5564 | extra nil) |
| @@ -5628,7 +5689,7 @@ please use `org-class' instead." | |||
| 5628 | 1 11)))) | 5689 | 1 11)))) |
| 5629 | (org-agenda-search-headline-for-time nil) | 5690 | (org-agenda-search-headline-for-time nil) |
| 5630 | marker hdmarker priority category category-pos tags closedp | 5691 | marker hdmarker priority category category-pos tags closedp |
| 5631 | statep clockp state ee txt extra timestr rest clocked) | 5692 | statep clockp state ee txt extra timestr rest clocked inherited-tags) |
| 5632 | (goto-char (point-min)) | 5693 | (goto-char (point-min)) |
| 5633 | (while (re-search-forward regexp nil t) | 5694 | (while (re-search-forward regexp nil t) |
| 5634 | (catch :skip | 5695 | (catch :skip |
| @@ -5666,7 +5727,14 @@ please use `org-class' instead." | |||
| 5666 | (setq txt org-agenda-no-heading-message) | 5727 | (setq txt org-agenda-no-heading-message) |
| 5667 | (goto-char (match-beginning 0)) | 5728 | (goto-char (match-beginning 0)) |
| 5668 | (setq hdmarker (org-agenda-new-marker) | 5729 | (setq hdmarker (org-agenda-new-marker) |
| 5669 | tags (org-get-tags-at nil t)) | 5730 | inherited-tags |
| 5731 | (or (eq org-agenda-show-inherited-tags 'always) | ||
| 5732 | (and (listp org-agenda-show-inherited-tags) | ||
| 5733 | (memq 'todo org-agenda-show-inherited-tags)) | ||
| 5734 | (and (eq org-agenda-show-inherited-tags t) | ||
| 5735 | (or (eq org-agenda-use-tag-inheritance t) | ||
| 5736 | (memq 'todo org-agenda-use-tag-inheritance)))) | ||
| 5737 | tags (org-get-tags-at nil (not inherited-tags))) | ||
| 5670 | (looking-at "\\*+[ \t]+\\([^\r\n]+\\)") | 5738 | (looking-at "\\*+[ \t]+\\([^\r\n]+\\)") |
| 5671 | (setq txt (match-string 1)) | 5739 | (setq txt (match-string 1)) |
| 5672 | (when extra | 5740 | (when extra |
| @@ -5944,7 +6012,7 @@ FRACTION is what fraction of the head-warning time has passed." | |||
| 5944 | deadline-results)) | 6012 | deadline-results)) |
| 5945 | d2 diff pos pos1 category category-pos tags donep | 6013 | d2 diff pos pos1 category category-pos tags donep |
| 5946 | ee txt head pastschedp todo-state face timestr s habitp show-all | 6014 | ee txt head pastschedp todo-state face timestr s habitp show-all |
| 5947 | did-habit-check-p warntime) | 6015 | did-habit-check-p warntime inherited-tags) |
| 5948 | (goto-char (point-min)) | 6016 | (goto-char (point-min)) |
| 5949 | (while (re-search-forward regexp nil t) | 6017 | (while (re-search-forward regexp nil t) |
| 5950 | (catch :skip | 6018 | (catch :skip |
| @@ -6006,7 +6074,14 @@ FRACTION is what fraction of the head-warning time has passed." | |||
| 6006 | pastschedp)) | 6074 | pastschedp)) |
| 6007 | (setq mm (assoc pos1 deadline-position-alist))) | 6075 | (setq mm (assoc pos1 deadline-position-alist))) |
| 6008 | (throw :skip nil))) | 6076 | (throw :skip nil))) |
| 6009 | (setq tags (org-get-tags-at nil t)) | 6077 | (setq inherited-tags |
| 6078 | (or (eq org-agenda-show-inherited-tags 'always) | ||
| 6079 | (and (listp org-agenda-show-inherited-tags) | ||
| 6080 | (memq 'agenda org-agenda-show-inherited-tags)) | ||
| 6081 | (and (eq org-agenda-show-inherited-tags t) | ||
| 6082 | (or (eq org-agenda-use-tag-inheritance t) | ||
| 6083 | (memq 'agenda org-agenda-use-tag-inheritance)))) | ||
| 6084 | tags (org-get-tags-at nil (not inherited-tags))) | ||
| 6010 | (setq head (buffer-substring-no-properties | 6085 | (setq head (buffer-substring-no-properties |
| 6011 | (point) | 6086 | (point) |
| 6012 | (progn (skip-chars-forward "^\r\n") (point)))) | 6087 | (progn (skip-chars-forward "^\r\n") (point)))) |
| @@ -6061,7 +6136,7 @@ FRACTION is what fraction of the head-warning time has passed." | |||
| 6061 | (regexp org-tr-regexp) | 6136 | (regexp org-tr-regexp) |
| 6062 | (d0 (calendar-absolute-from-gregorian date)) | 6137 | (d0 (calendar-absolute-from-gregorian date)) |
| 6063 | marker hdmarker ee txt d1 d2 s1 s2 category category-pos | 6138 | marker hdmarker ee txt d1 d2 s1 s2 category category-pos |
| 6064 | todo-state tags pos head donep) | 6139 | todo-state tags pos head donep inherited-tags) |
| 6065 | (goto-char (point-min)) | 6140 | (goto-char (point-min)) |
| 6066 | (while (re-search-forward regexp nil t) | 6141 | (while (re-search-forward regexp nil t) |
| 6067 | (catch :skip | 6142 | (catch :skip |
| @@ -6087,8 +6162,15 @@ FRACTION is what fraction of the head-warning time has passed." | |||
| 6087 | (if (not (re-search-backward org-outline-regexp-bol nil t)) | 6162 | (if (not (re-search-backward org-outline-regexp-bol nil t)) |
| 6088 | (setq txt org-agenda-no-heading-message) | 6163 | (setq txt org-agenda-no-heading-message) |
| 6089 | (goto-char (match-beginning 0)) | 6164 | (goto-char (match-beginning 0)) |
| 6090 | (setq hdmarker (org-agenda-new-marker (point))) | 6165 | (setq hdmarker (org-agenda-new-marker (point)) |
| 6091 | (setq tags (org-get-tags-at nil t)) | 6166 | inherited-tags |
| 6167 | (or (eq org-agenda-show-inherited-tags 'always) | ||
| 6168 | (and (listp org-agenda-show-inherited-tags) | ||
| 6169 | (memq 'agenda org-agenda-show-inherited-tags)) | ||
| 6170 | (and (eq org-agenda-show-inherited-tags t) | ||
| 6171 | (or (eq org-agenda-use-tag-inheritance t) | ||
| 6172 | (memq 'agenda org-agenda-use-tag-inheritance)))) | ||
| 6173 | tags (org-get-tags-at nil (not inherited-tags))) | ||
| 6092 | (looking-at "\\*+[ \t]+\\([^\r\n]+\\)") | 6174 | (looking-at "\\*+[ \t]+\\([^\r\n]+\\)") |
| 6093 | (setq head (match-string 1)) | 6175 | (setq head (match-string 1)) |
| 6094 | (let ((remove-re | 6176 | (let ((remove-re |
| @@ -7702,7 +7784,7 @@ When called with a prefix argument, include all archive files as well." | |||
| 7702 | ""))) | 7784 | ""))) |
| 7703 | (force-mode-line-update)) | 7785 | (force-mode-line-update)) |
| 7704 | 7786 | ||
| 7705 | (org-define-obsolete-function-alias | 7787 | (define-obsolete-function-alias |
| 7706 | 'org-agenda-post-command-hook 'org-agenda-update-agenda-type "24.3") | 7788 | 'org-agenda-post-command-hook 'org-agenda-update-agenda-type "24.3") |
| 7707 | 7789 | ||
| 7708 | (defun org-agenda-update-agenda-type () | 7790 | (defun org-agenda-update-agenda-type () |
diff --git a/lisp/org/org-capture.el b/lisp/org/org-capture.el index c888536b385..8a271b8d055 100644 --- a/lisp/org/org-capture.el +++ b/lisp/org/org-capture.el | |||
| @@ -451,7 +451,7 @@ For example, if you have a capture template \"c\" and you want | |||
| 451 | this template to be accessible only from `message-mode' buffers, | 451 | this template to be accessible only from `message-mode' buffers, |
| 452 | use this: | 452 | use this: |
| 453 | 453 | ||
| 454 | '((\"c\" (in-mode . \"message-mode\"))) | 454 | '((\"c\" ((in-mode . \"message-mode\")))) |
| 455 | 455 | ||
| 456 | Here are the available contexts definitions: | 456 | Here are the available contexts definitions: |
| 457 | 457 | ||
| @@ -467,11 +467,11 @@ accessible if there is at least one valid check. | |||
| 467 | You can also bind a key to another agenda custom command | 467 | You can also bind a key to another agenda custom command |
| 468 | depending on contextual rules. | 468 | depending on contextual rules. |
| 469 | 469 | ||
| 470 | '((\"c\" \"d\" (in-mode . \"message-mode\"))) | 470 | '((\"c\" \"d\" ((in-mode . \"message-mode\")))) |
| 471 | 471 | ||
| 472 | Here it means: in `message-mode buffers', use \"d\" as the | 472 | Here it means: in `message-mode buffers', use \"c\" as the |
| 473 | key for the capture template otherwise associated with \"d\". | 473 | key for the capture template otherwise associated with \"d\". |
| 474 | \(The template originally associated with \"q\" is not displayed | 474 | \(The template originally associated with \"d\" is not displayed |
| 475 | to avoid duplicates.)" | 475 | to avoid duplicates.)" |
| 476 | :version "24.3" | 476 | :version "24.3" |
| 477 | :group 'org-capture | 477 | :group 'org-capture |
diff --git a/lisp/org/org-clock.el b/lisp/org/org-clock.el index 32cfa9ae913..c043dd19e11 100644 --- a/lisp/org/org-clock.el +++ b/lisp/org/org-clock.el | |||
| @@ -205,7 +205,7 @@ file name play this sound file. If not possible, fall back to beep" | |||
| 205 | (const :tag "Standard beep" t) | 205 | (const :tag "Standard beep" t) |
| 206 | (file :tag "Play sound file"))) | 206 | (file :tag "Play sound file"))) |
| 207 | 207 | ||
| 208 | (org-define-obsolete-variable-alias 'org-clock-modeline-total | 208 | (define-obsolete-variable-alias 'org-clock-modeline-total |
| 209 | 'org-clock-mode-line-total "24.3") | 209 | 'org-clock-mode-line-total "24.3") |
| 210 | 210 | ||
| 211 | (defcustom org-clock-mode-line-total 'auto | 211 | (defcustom org-clock-mode-line-total 'auto |
diff --git a/lisp/org/org-compat.el b/lisp/org/org-compat.el index 687b81fd882..9292b994367 100644 --- a/lisp/org/org-compat.el +++ b/lisp/org/org-compat.el | |||
| @@ -169,24 +169,6 @@ If DELETE is non-nil, delete all those overlays." | |||
| 169 | (set-buffer-modified-p modified-p)) | 169 | (set-buffer-modified-p modified-p)) |
| 170 | (decompose-region beg end))) | 170 | (decompose-region beg end))) |
| 171 | 171 | ||
| 172 | (defmacro org-define-obsolete-function-alias (o-name c-name when &optional doc) | ||
| 173 | "Reconcile the two-argument form of | ||
| 174 | `define-obsolete-function-alias' in XEmacs/Emacs 22 with the 3-4 | ||
| 175 | argument form in Emacs 23 and later." | ||
| 176 | (if (or (featurep 'xemacs) | ||
| 177 | (< emacs-major-version 23)) | ||
| 178 | `(define-obsolete-function-alias ,o-name ,c-name) | ||
| 179 | `(define-obsolete-function-alias ,o-name ,c-name ,when ,doc))) | ||
| 180 | |||
| 181 | (defmacro org-define-obsolete-variable-alias (o-name c-name when &optional doc) | ||
| 182 | "Reconcile the two-argument form of | ||
| 183 | `define-obsolete-variable-alias' in XEmacs/Emacs 22 with the 3-4 | ||
| 184 | argument form in Emacs 23 and later." | ||
| 185 | (if (or (featurep 'xemacs) | ||
| 186 | (< emacs-major-version 23)) | ||
| 187 | `(define-obsolete-variable-alias ,o-name ,c-name) | ||
| 188 | `(define-obsolete-variable-alias ,o-name ,c-name ,when ,doc))) | ||
| 189 | |||
| 190 | ;; Miscellaneous functions | 172 | ;; Miscellaneous functions |
| 191 | 173 | ||
| 192 | (defun org-add-hook (hook function &optional append local) | 174 | (defun org-add-hook (hook function &optional append local) |
| @@ -463,16 +445,6 @@ With two arguments, return floor and remainder of their quotient." | |||
| 463 | 'pop-to-buffer-same-window buffer-or-name norecord) | 445 | 'pop-to-buffer-same-window buffer-or-name norecord) |
| 464 | (funcall 'switch-to-buffer buffer-or-name norecord))) | 446 | (funcall 'switch-to-buffer buffer-or-name norecord))) |
| 465 | 447 | ||
| 466 | ;; `condition-case-unless-debug' has been introduced in Emacs 24.1 | ||
| 467 | ;; `condition-case-no-debug' has been introduced in Emacs 23.1 | ||
| 468 | (defmacro org-condition-case-unless-debug (var bodyform &rest handlers) | ||
| 469 | (declare (debug condition-case) (indent 2)) | ||
| 470 | (or (and (fboundp 'condition-case-unless-debug) | ||
| 471 | `(condition-case-unless-debug ,var ,bodyform ,@handlers)) | ||
| 472 | (and (fboundp 'condition-case-no-debug) | ||
| 473 | `(condition-case-no-debug ,var ,bodyform ,@handlers)) | ||
| 474 | `(condition-case ,var ,bodyform ,@handlers))) | ||
| 475 | |||
| 476 | ;; RECURSIVE has been introduced with Emacs 23.2. | 448 | ;; RECURSIVE has been introduced with Emacs 23.2. |
| 477 | ;; This is copying and adapted from `tramp-compat-delete-directory' | 449 | ;; This is copying and adapted from `tramp-compat-delete-directory' |
| 478 | (defun org-delete-directory (directory &optional recursive) | 450 | (defun org-delete-directory (directory &optional recursive) |
diff --git a/lisp/org/org-id.el b/lisp/org/org-id.el index 5d8e5b0dcf9..6e865b50c2c 100644 --- a/lisp/org/org-id.el +++ b/lisp/org/org-id.el | |||
| @@ -83,7 +83,7 @@ | |||
| 83 | :tag "Org ID" | 83 | :tag "Org ID" |
| 84 | :group 'org) | 84 | :group 'org) |
| 85 | 85 | ||
| 86 | (org-define-obsolete-variable-alias | 86 | (define-obsolete-variable-alias |
| 87 | 'org-link-to-org-use-id 'org-id-link-to-org-use-id "24.3") | 87 | 'org-link-to-org-use-id 'org-id-link-to-org-use-id "24.3") |
| 88 | (defcustom org-id-link-to-org-use-id nil | 88 | (defcustom org-id-link-to-org-use-id nil |
| 89 | "Non-nil means storing a link to an Org file will use entry IDs. | 89 | "Non-nil means storing a link to an Org file will use entry IDs. |
diff --git a/lisp/org/org-lparse.el b/lisp/org/org-lparse.el index e9fbbea586e..11711353ff7 100644 --- a/lisp/org/org-lparse.el +++ b/lisp/org/org-lparse.el | |||
| @@ -1718,7 +1718,7 @@ information." | |||
| 1718 | (org-lparse-end-paragraph) | 1718 | (org-lparse-end-paragraph) |
| 1719 | (org-lparse-end-list-item (or type "u"))) | 1719 | (org-lparse-end-list-item (or type "u"))) |
| 1720 | 1720 | ||
| 1721 | (org-define-obsolete-function-alias | 1721 | (define-obsolete-function-alias |
| 1722 | 'org-lparse-preprocess-after-blockquote-hook | 1722 | 'org-lparse-preprocess-after-blockquote-hook |
| 1723 | 'org-lparse-preprocess-after-blockquote | 1723 | 'org-lparse-preprocess-after-blockquote |
| 1724 | "24.3") | 1724 | "24.3") |
| @@ -1736,7 +1736,7 @@ information." | |||
| 1736 | (format "ORG-%s-END %s" (upcase (match-string 2)) | 1736 | (format "ORG-%s-END %s" (upcase (match-string 2)) |
| 1737 | (match-string 3))) t t)))) | 1737 | (match-string 3))) t t)))) |
| 1738 | 1738 | ||
| 1739 | (org-define-obsolete-function-alias | 1739 | (define-obsolete-function-alias |
| 1740 | 'org-lparse-strip-experimental-blocks-maybe-hook | 1740 | 'org-lparse-strip-experimental-blocks-maybe-hook |
| 1741 | 'org-lparse-strip-experimental-blocks-maybe | 1741 | 'org-lparse-strip-experimental-blocks-maybe |
| 1742 | "24.3") | 1742 | "24.3") |
diff --git a/lisp/org/org-mobile.el b/lisp/org/org-mobile.el index d2e7c217f76..a410de0d775 100644 --- a/lisp/org/org-mobile.el +++ b/lisp/org/org-mobile.el | |||
| @@ -620,12 +620,10 @@ The table of checksums is written to the file mobile-checksums." | |||
| 620 | (delete-region (point) (point-at-eol))) | 620 | (delete-region (point) (point-at-eol))) |
| 621 | ((get-text-property (point) 'org-agenda-structural-header) | 621 | ((get-text-property (point) 'org-agenda-structural-header) |
| 622 | (setq in-date nil) | 622 | (setq in-date nil) |
| 623 | (setq app (get-text-property (point) | 623 | (setq app (get-text-property (point) 'org-agenda-title-append)) |
| 624 | 'org-agenda-title-append)) | 624 | (setq short (get-text-property (point) 'short-heading)) |
| 625 | (setq short (get-text-property (point) | ||
| 626 | 'short-heading)) | ||
| 627 | (when (and short (looking-at ".+")) | 625 | (when (and short (looking-at ".+")) |
| 628 | (replace-match short) | 626 | (replace-match short nil t) |
| 629 | (beginning-of-line 1)) | 627 | (beginning-of-line 1)) |
| 630 | (when app | 628 | (when app |
| 631 | (end-of-line 1) | 629 | (end-of-line 1) |
diff --git a/lisp/org/org-odt.el b/lisp/org/org-odt.el index b5f6e21c0c2..92228f37eb8 100644 --- a/lisp/org/org-odt.el +++ b/lisp/org/org-odt.el | |||
| @@ -447,7 +447,7 @@ values. See Info node `(emacs) File Variables'." | |||
| 447 | xml-files)) | 447 | xml-files)) |
| 448 | ;; delete temporary directory. | 448 | ;; delete temporary directory. |
| 449 | (org-delete-directory org-odt-zip-dir t))))) | 449 | (org-delete-directory org-odt-zip-dir t))))) |
| 450 | (org-condition-case-unless-debug err | 450 | (condition-case err |
| 451 | (prog1 (progn ,@body) | 451 | (prog1 (progn ,@body) |
| 452 | (funcall --cleanup-xml-buffers)) | 452 | (funcall --cleanup-xml-buffers)) |
| 453 | ((quit error) | 453 | ((quit error) |
diff --git a/lisp/org/org-protocol.el b/lisp/org/org-protocol.el index fd84e62c003..18c6d6d70a4 100644 --- a/lisp/org/org-protocol.el +++ b/lisp/org/org-protocol.el | |||
| @@ -128,15 +128,15 @@ | |||
| 128 | (filename &optional up)) | 128 | (filename &optional up)) |
| 129 | (declare-function server-edit "server" (&optional arg)) | 129 | (declare-function server-edit "server" (&optional arg)) |
| 130 | 130 | ||
| 131 | (org-define-obsolete-function-alias | 131 | (define-obsolete-function-alias |
| 132 | 'org-protocol-unhex-compound 'org-link-unescape-compound | 132 | 'org-protocol-unhex-compound 'org-link-unescape-compound |
| 133 | "2011-02-17") | 133 | "2011-02-17") |
| 134 | 134 | ||
| 135 | (org-define-obsolete-function-alias | 135 | (define-obsolete-function-alias |
| 136 | 'org-protocol-unhex-string 'org-link-unescape | 136 | 'org-protocol-unhex-string 'org-link-unescape |
| 137 | "2011-02-17") | 137 | "2011-02-17") |
| 138 | 138 | ||
| 139 | (org-define-obsolete-function-alias | 139 | (define-obsolete-function-alias |
| 140 | 'org-protocol-unhex-single-byte-sequence | 140 | 'org-protocol-unhex-single-byte-sequence |
| 141 | 'org-link-unescape-single-byte-sequence | 141 | 'org-link-unescape-single-byte-sequence |
| 142 | "2011-02-17") | 142 | "2011-02-17") |
diff --git a/lisp/org/org-version.el b/lisp/org/org-version.el index f638e57ad94..e62eba3cf83 100644 --- a/lisp/org/org-version.el +++ b/lisp/org/org-version.el | |||
| @@ -5,13 +5,13 @@ | |||
| 5 | (defun org-release () | 5 | (defun org-release () |
| 6 | "The release version of org-mode. | 6 | "The release version of org-mode. |
| 7 | Inserted by installing org-mode or when a release is made." | 7 | Inserted by installing org-mode or when a release is made." |
| 8 | (let ((org-release "7.9.3+")) | 8 | (let ((org-release "7.9.3d")) |
| 9 | org-release)) | 9 | org-release)) |
| 10 | ;;;###autoload | 10 | ;;;###autoload |
| 11 | (defun org-git-version () | 11 | (defun org-git-version () |
| 12 | "The Git version of org-mode. | 12 | "The Git version of org-mode. |
| 13 | Inserted by installing org-mode or when a release is made." | 13 | Inserted by installing org-mode or when a release is made." |
| 14 | (let ((org-git-version "7.9.3+-GNU-Emacs-24-3 (commit 4cac75153)")) | 14 | (let ((org-git-version "7.9.3d-GNU-Emacs-24-3 (commit e8f5b0ad)")) |
| 15 | org-git-version)) | 15 | org-git-version)) |
| 16 | ;;;###autoload | 16 | ;;;###autoload |
| 17 | (defvar org-odt-data-dir "/usr/share/emacs/etc/org" | 17 | (defvar org-odt-data-dir "/usr/share/emacs/etc/org" |
diff --git a/lisp/org/org.el b/lisp/org/org.el index 32ed13fc1a3..9409feca178 100644 --- a/lisp/org/org.el +++ b/lisp/org/org.el | |||
| @@ -7402,7 +7402,12 @@ even level numbers will become the next higher odd number." | |||
| 7402 | ((< change 0) (max 1 (1+ (* 2 (/ (+ level (* 2 change)) 2)))))) | 7402 | ((< change 0) (max 1 (1+ (* 2 (/ (+ level (* 2 change)) 2)))))) |
| 7403 | (max 1 (+ level (or change 0))))) | 7403 | (max 1 (+ level (or change 0))))) |
| 7404 | 7404 | ||
| 7405 | (org-define-obsolete-function-alias 'org-get-legal-level 'org-get-valid-level "23.1") | 7405 | (if (boundp 'define-obsolete-function-alias) |
| 7406 | (if (or (featurep 'xemacs) (< emacs-major-version 23)) | ||
| 7407 | (define-obsolete-function-alias 'org-get-legal-level | ||
| 7408 | 'org-get-valid-level) | ||
| 7409 | (define-obsolete-function-alias 'org-get-legal-level | ||
| 7410 | 'org-get-valid-level "23.1"))) | ||
| 7406 | 7411 | ||
| 7407 | (defvar org-called-with-limited-levels nil) ;; Dynamically bound in | 7412 | (defvar org-called-with-limited-levels nil) ;; Dynamically bound in |
| 7408 | ;; ̀org-with-limited-levels' | 7413 | ;; ̀org-with-limited-levels' |
| @@ -9684,12 +9689,14 @@ application the system uses for this file type." | |||
| 9684 | "[ \t]:[^ \t\n]+:[ \t]*$"))) | 9689 | "[ \t]:[^ \t\n]+:[ \t]*$"))) |
| 9685 | (not (get-text-property (point) 'org-linked-text))) | 9690 | (not (get-text-property (point) 'org-linked-text))) |
| 9686 | (or (let* ((lkall (org-offer-links-in-entry (current-buffer) (point) arg)) | 9691 | (or (let* ((lkall (org-offer-links-in-entry (current-buffer) (point) arg)) |
| 9687 | (lk (car lkall)) | 9692 | (lk0 (car lkall)) |
| 9693 | (lk (if (stringp lk0) (list lk0) lk0)) | ||
| 9688 | (lkend (cdr lkall))) | 9694 | (lkend (cdr lkall))) |
| 9689 | (when lk | 9695 | (mapcar (lambda(l) |
| 9690 | (prog1 (search-forward lk nil lkend) | 9696 | (search-forward l nil lkend) |
| 9691 | (goto-char (match-beginning 0)) | 9697 | (goto-char (match-beginning 0)) |
| 9692 | (org-open-at-point)))) | 9698 | (org-open-at-point)) |
| 9699 | lk)) | ||
| 9693 | (progn (require 'org-attach) (org-attach-reveal 'if-exists)))) | 9700 | (progn (require 'org-attach) (org-attach-reveal 'if-exists)))) |
| 9694 | ((run-hook-with-args-until-success 'org-open-at-point-functions)) | 9701 | ((run-hook-with-args-until-success 'org-open-at-point-functions)) |
| 9695 | ((and (org-at-timestamp-p t) | 9702 | ((and (org-at-timestamp-p t) |
| @@ -13524,7 +13531,10 @@ ignore inherited ones." | |||
| 13524 | (error nil))))) | 13531 | (error nil))))) |
| 13525 | (if local | 13532 | (if local |
| 13526 | tags | 13533 | tags |
| 13527 | (append (org-remove-uninherited-tags org-file-tags) tags)))))) | 13534 | (reverse (delete-dups |
| 13535 | (reverse (append | ||
| 13536 | (org-remove-uninherited-tags | ||
| 13537 | org-file-tags) tags))))))))) | ||
| 13528 | 13538 | ||
| 13529 | (defun org-add-prop-inherited (s) | 13539 | (defun org-add-prop-inherited (s) |
| 13530 | (add-text-properties 0 (length s) '(inherited t) s) | 13540 | (add-text-properties 0 (length s) '(inherited t) s) |
| @@ -17798,7 +17808,7 @@ BEG and END default to the buffer boundaries." | |||
| 17798 | (list 'org-display-inline-remove-overlay)) | 17808 | (list 'org-display-inline-remove-overlay)) |
| 17799 | (push ov org-inline-image-overlays))))))))) | 17809 | (push ov org-inline-image-overlays))))))))) |
| 17800 | 17810 | ||
| 17801 | (org-define-obsolete-function-alias | 17811 | (define-obsolete-function-alias |
| 17802 | 'org-display-inline-modification-hook 'org-display-inline-remove-overlay "24.3") | 17812 | 'org-display-inline-modification-hook 'org-display-inline-remove-overlay "24.3") |
| 17803 | 17813 | ||
| 17804 | (defun org-display-inline-remove-overlay (ov after beg end &optional len) | 17814 | (defun org-display-inline-remove-overlay (ov after beg end &optional len) |
| @@ -18178,7 +18188,7 @@ If not, return to the original position and throw an error." | |||
| 18178 | (defvar org-table-auto-blank-field) ; defined in org-table.el | 18188 | (defvar org-table-auto-blank-field) ; defined in org-table.el |
| 18179 | (defvar org-speed-command nil) | 18189 | (defvar org-speed-command nil) |
| 18180 | 18190 | ||
| 18181 | (org-define-obsolete-function-alias | 18191 | (define-obsolete-function-alias |
| 18182 | 'org-speed-command-default-hook 'org-speed-command-activate "24.3") | 18192 | 'org-speed-command-default-hook 'org-speed-command-activate "24.3") |
| 18183 | 18193 | ||
| 18184 | (defun org-speed-command-activate (keys) | 18194 | (defun org-speed-command-activate (keys) |
| @@ -18191,7 +18201,7 @@ Use `org-speed-commands-user' for further customization." | |||
| 18191 | (cdr (assoc keys (append org-speed-commands-user | 18201 | (cdr (assoc keys (append org-speed-commands-user |
| 18192 | org-speed-commands-default))))) | 18202 | org-speed-commands-default))))) |
| 18193 | 18203 | ||
| 18194 | (org-define-obsolete-function-alias | 18204 | (define-obsolete-function-alias |
| 18195 | 'org-babel-speed-command-hook 'org-babel-speed-command-activate "24.3") | 18205 | 'org-babel-speed-command-hook 'org-babel-speed-command-activate "24.3") |
| 18196 | 18206 | ||
| 18197 | (defun org-babel-speed-command-activate (keys) | 18207 | (defun org-babel-speed-command-activate (keys) |
| @@ -19026,14 +19036,13 @@ Otherwise, return a user error." | |||
| 19026 | (beginning-of-line 1) | 19036 | (beginning-of-line 1) |
| 19027 | (looking-at "\\(?:#\\+\\(?:setupfile\\|include\\):?[ \t]+\"?\\|[ \t]*<include\\>.*?file=\"\\)\\([^\"\n>]+\\)")) | 19037 | (looking-at "\\(?:#\\+\\(?:setupfile\\|include\\):?[ \t]+\"?\\|[ \t]*<include\\>.*?file=\"\\)\\([^\"\n>]+\\)")) |
| 19028 | (find-file (org-trim (match-string 1)))) | 19038 | (find-file (org-trim (match-string 1)))) |
| 19039 | ((org-at-table.el-p) (org-edit-src-code)) | ||
| 19029 | ((or (org-at-table-p) | 19040 | ((or (org-at-table-p) |
| 19030 | (save-excursion | 19041 | (save-excursion |
| 19031 | (beginning-of-line 1) | 19042 | (beginning-of-line 1) |
| 19032 | (let ((case-fold-search )) (looking-at "[ \t]*#\\+tblfm:")))) | 19043 | (let ((case-fold-search )) (looking-at "[ \t]*#\\+tblfm:")))) |
| 19033 | (call-interactively 'org-table-edit-formulas)) | 19044 | (call-interactively 'org-table-edit-formulas)) |
| 19034 | ((or (org-in-block-p '("src" "example" "latex" "html")) | 19045 | ((org-in-block-p '("src" "example" "latex" "html")) (org-edit-src-code)) |
| 19035 | (org-at-table.el-p)) | ||
| 19036 | (org-edit-src-code)) | ||
| 19037 | ((org-in-fixed-width-region-p) (org-edit-fixed-width-region)) | 19046 | ((org-in-fixed-width-region-p) (org-edit-fixed-width-region)) |
| 19038 | ((org-at-regexp-p org-any-link-re) (call-interactively 'ffap)) | 19047 | ((org-at-regexp-p org-any-link-re) (call-interactively 'ffap)) |
| 19039 | (t (user-error "No special environment to edit here")))) | 19048 | (t (user-error "No special environment to edit here")))) |