aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/misc/ChangeLog11
-rw-r--r--doc/misc/org.texi140
-rw-r--r--lisp/org/ChangeLog53
-rw-r--r--lisp/org/ob-eval.el14
-rw-r--r--lisp/org/org-agenda.el148
-rw-r--r--lisp/org/org-capture.el8
-rw-r--r--lisp/org/org-clock.el2
-rw-r--r--lisp/org/org-compat.el28
-rw-r--r--lisp/org/org-id.el2
-rw-r--r--lisp/org/org-lparse.el4
-rw-r--r--lisp/org/org-mobile.el8
-rw-r--r--lisp/org/org-odt.el2
-rw-r--r--lisp/org/org-protocol.el6
-rw-r--r--lisp/org/org-version.el4
-rw-r--r--lisp/org/org.el35
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 @@
12013-01-13 Bastien Guerry <bzg@gnu.org>
2
3 * org.texi (Installation): Simplify.
4
52013-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
12013-01-08 Bastien Guerry <bzg@gnu.org> 122013-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,
339Introduction 339Introduction
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 854Org is part of recent distributions of GNU Emacs, so you normally don't need
855XEmacs package, please skip this section and go directly to @ref{Activation}. 855to install it. If, for one reason or another, you want to install Org on top
856If you downloaded Org as an ELPA package, please read the instructions on the 856of 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
859your Emacs distribution does not come with Org, this function will not be
860defined).}
861
862Installation of Org mode uses a build system, which is described in more
863detail on @uref{http://orgmode.org/worg/dev/org-build-system.html, Worg}.
864
865If 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.
872and then check and edit the file @file{local.mk} if the default configuration
873does 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
875Lisp and Info files will be installed. If the Emacs binary is not in your
876path, give the full path to the executable. Avoid spaces in any path names.
877@item Run @code{make config}
878again to check the configuration.
879@item Run @code{make install} or @code{sudo make install}
880to build and install Org mode on your system.
881@end itemize 862@end itemize
882 863
883If you use a cloned Git repository, then the procedure is slightly different. 864We @b{strongly recommend} to stick to a single installation method.
884The 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
886instead, where the release versions are published, just replace @code{master}
887with @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}
892to switch to the @code{master} branch of the Org repository.
893@item Run @code{make help}
894and then check and edit the file @file{local.mk}. You must set the name of
895the Emacs binary (likely either @file{emacs} or @file{xemacs}), and the paths
896to the directories where local Lisp and Info files will be installed. If the
897Emacs binary is not in your path, you must give the full path to the
898executable. Avoid spaces in any path names.
899@item Run @code{make config}
900to check the configuration.
901@item Optionally run @code{make test}
902to build Org mode and then run the full testsuite.
903@item Run @code{make update2} or @code{make up2}
904to update the Git repository and build and install Org mode. The latter
905invocation runs the complete test suite before installation and installs only
906if the build passes all tests.
907@end itemize
908 867
909If you don't have access to the system-wide directories and you don't want to 868Recent Emacs distributions include a packaging system which lets you install
910install somewhere into your home directory, you can run Org directly from the 869Elisp libraries. You can install Org with @kbd{M-x package-install RET org}.
911distribution directory or Org repository by compiling Org mode in place: 870To make sure your Org configuration is well taken into account, initialize
912 871the package system with @code{(package-initialize)} before setting any Org
913@itemize @bullet 872option. 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}
916to switch to the @code{master} branch of the Org repository.
917@item Run @code{make compile}
918@end itemize
919 874
920Last but not least you can also run Org mode directly from an Org repository 875@subsubheading Downloading Org as an archive
921without any compilation. Simply replace the last step in the recipe above
922with @code{make uncompiled}.
923 876
924Then add the following line to @file{.emacs}: 877You can download Org latest release from @uref{http://orgmode.org/, Org's
878website}. 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 885The downloaded archive contains contributed libraries that are not included
931If you plan to use code from the @file{contrib} subdirectory without 886in Emacs. If you want to use them, add the @file{contrib} directory to your
932compiling them, do a similar step for this directory: 887load-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
938If you want to include those files with the build and install, please 893Optionally, you can compile the files and/or install them in your system.
939customize the variable @code{ORG_ADD_CONTRIB} instead in your @code{local.mk} 894Run @code{make help} to list compilation and installation options.
940file, for more details please see this
941@uref{http://orgmode.org/worg/dev/org-build-system.html#sec-4-1-2,
942description on Worg}.
943 895
944Installing 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
946with the rest of Org mode. If you don't install Org mode, it is possible to 898You can clone Org's repository and install Org like this:
947install the Info documentation separately (you need to have
948install-info@footnote{The output from install-info (if any) is system
949dependent. In particular Debian and its derivatives use two different
950versions of install-info and you may see the message:
951 899
952@example 900@example
953This is not dpkg install-info anymore, but GNU install-info 901$ cd ~/src/
954See 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.} 906Note that @code{make autoloads} is mandatory: it defines Org's version and
958on your system). 907Org's autoloaded functions, respectively in @file{org-version.el} and in
908@file{org-loaddefs.el}.
959 909
960@example 910Remember to add the correct load-path as described in the method above.
961make install-info
962@end example
963 911
964Do not forget to activate Org as described in the following section. 912You 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
915For more detailed explanations on Org's build system, please check the Org
916Build 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
3384removed from the link and result in a wrong link---you should avoid putting 3335removed from the link and result in a wrong link---you should avoid putting
3385timestamp in the headline.}. 3336timestamp 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
3390If the headline has a @code{CUSTOM_ID} property, a link to this custom ID 3341If the headline has a @code{CUSTOM_ID} property, a link to this custom ID
3391will be stored. In addition or alternatively (depending on the value of 3342will 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
3393created and/or used to construct a link. So using this command in Org 3344be created and/or used to construct a link@footnote{The library @code{org-id}
3345must 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
3347your @file{.emacs}.}. So using this command in Org
3394buffers will potentially create two links: a human-readable from the custom 3348buffers will potentially create two links: a human-readable from the custom
3395ID, and one that is globally unique and works even if the entry is moved from 3349ID, and one that is globally unique and works even if the entry is moved from
3396file to file. Later, when inserting the link, you need to decide which one 3350file 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 @@
12013-01-08 Achim Gratz <Stromeko@Stromeko.de> 12013-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
352013-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
402013-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.
906The buffer is still writable when the hook is called. 906The 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
1653When this option is set to 'always, it take precedences over
1654`org-agenda-use-tag-inheritance' and inherited tags are shown
1655in every agenda.
1656
1657When this option is set to t (the default), inherited tags are
1658shown when they are available, i.e. when the value of
1659`org-agenda-use-tag-inheritance' has been taken into account.
1660
1661This can be set to a list of agenda types in which the agenda
1662must display the inherited tags. Available types are 'todo,
1663'agenda, 'search and 'timeline.
1664
1665When 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
1658In tags/tags-todo/tags-tree agenda views, tag inheritance is 1678In tags/tags-todo/tags-tree agenda views, tag inheritance is
1659controlled by `org-use-tag-inheritance'. In other agenda types, 1679controlled 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
1661entries, but you may want the agenda to use the inherited tags 1681agenda entries. Still, you may want the agenda to be aware of
1662anyway, e.g. for later tag filtering. 1682the inherited tags anyway, e.g. for later tag filtering.
1663 1683
1664The default value reset tags in every agenda type. Setting this 1684Allowed value are 'todo, 'search, 'timeline and 'agenda.
1665option to nil will speed up non-tags agenda view a lot.
1666 1685
1667Allowed value are 'todo, 'search, 'timeline and 'agenda." 1686This variable has no effect if `org-agenda-show-inherited-tags'
1668 :version "24.3" 1687is set to 'always. In that case, the agenda is aware of those
1688tags.
1689
1690The default value sets tags in every agenda type. Setting this
1691option 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
2363want this command to be accessible only from plain text files, 2390want this command to be accessible only from plain text files,
2364use this: 2391use this:
2365 2392
2366 '((\"p\" (in-file . \"\\.txt\"))) 2393 '((\"p\" ((in-file . \"\\.txt\"))))
2367 2394
2368Here are the available contexts definitions: 2395Here are the available contexts definitions:
2369 2396
@@ -2379,7 +2406,7 @@ accessible if there is at least one valid check.
2379You can also bind a key to another agenda custom command 2406You can also bind a key to another agenda custom command
2380depending on contextual rules. 2407depending on contextual rules.
2381 2408
2382 '((\"p\" \"q\" (in-file . \"\\.txt\"))) 2409 '((\"p\" \"q\" ((in-file . \"\\.txt\"))))
2383 2410
2384Here it means: in .txt files, use \"p\" as the key for the 2411Here it means: in .txt files, use \"p\" as the key for the
2385agenda command otherwise associated with \"q\". (The command 2412agenda 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
451this template to be accessible only from `message-mode' buffers, 451this template to be accessible only from `message-mode' buffers,
452use this: 452use this:
453 453
454 '((\"c\" (in-mode . \"message-mode\"))) 454 '((\"c\" ((in-mode . \"message-mode\"))))
455 455
456Here are the available contexts definitions: 456Here are the available contexts definitions:
457 457
@@ -467,11 +467,11 @@ accessible if there is at least one valid check.
467You can also bind a key to another agenda custom command 467You can also bind a key to another agenda custom command
468depending on contextual rules. 468depending on contextual rules.
469 469
470 '((\"c\" \"d\" (in-mode . \"message-mode\"))) 470 '((\"c\" \"d\" ((in-mode . \"message-mode\"))))
471 471
472Here it means: in `message-mode buffers', use \"d\" as the 472Here it means: in `message-mode buffers', use \"c\" as the
473key for the capture template otherwise associated with \"d\". 473key 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
475to avoid duplicates.)" 475to 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
175argument 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
184argument 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"))))