org-mode/lisp
Bastien Guerry d378c7b41b Implement context filtering for agenda commands and capture templates.
* org.el (org-contextualize-agenda-or-capture)
(org-rule-validate): New functions, implement context
filtering for agenda commands and capture templates.

* org-agenda.el (org-agenda-custom-commands-contexts): New
option.
(org-agenda): Use it.

* org-capture.el (org-capture-templates-contexts): New option.
(org-capture-select-template): Use it.

* org.texi (Templates in contexts): Document the new option
`org-capture-templates-contexts'.
(Storing searches): Document the new option
`org-agenda-custom-commands-contexts'.

This idea comes from Sylvain Rousseau, who implemented a similar
feature with org-context.el: https://github.com/thisirs/org-context

This implementation is a bit simpler and more general.  Simpler
because it relies on existing templates, no need to define other
contextual ones.  More general because contexts can be defined
wrt files and modes.

Thanks *very much* to Sylvain for paving the way -- certainly a
great addition to Org.
2012-08-23 11:08:47 +02:00
..
Makefile Makefile: error out on invalid values of ORGCM 2012-08-22 20:02:47 +02:00
ob-asymptote.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-awk.el Don't use `org-flet' in ob-awk.el and ob-sh.el 2012-08-10 16:05:26 +02:00
ob-C.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-calc.el Replace "ob-" by "org-babel-" as a prefix for two functions 2012-08-21 13:17:08 +02:00
ob-clojure.el code-block languages may specify their own headers and values 2012-04-13 08:43:16 -04:00
ob-comint.el Fix many small typos. 2012-08-13 05:59:44 +02:00
ob-css.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-ditaa.el Fix the master branch. 2012-03-19 22:01:29 +01:00
ob-dot.el Fix copyright years in maint. 2012-03-17 16:31:04 +01:00
ob-emacs-lisp.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-eval.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-exp.el ob-*.el: Use ̀org-no-properties' instead of `org-babel-clean-text-properties' 2012-08-15 09:39:24 +02:00
ob-fortran.el Replace "ob-" by "org-babel-" as a prefix for two functions 2012-08-21 13:17:08 +02:00
ob-gnuplot.el Don't use `org-flet' in some functions 2012-08-09 21:06:33 +02:00
ob-haskell.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-io.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-java.el More fixes to the copyright year... 2012-02-19 08:18:53 -07:00
ob-js.el Fix many small typos. 2012-08-13 05:59:44 +02:00
ob-keys.el Fix copyright years in maint. 2012-03-17 16:31:04 +01:00
ob-latex.el Fix many small typos. 2012-08-13 05:59:44 +02:00
ob-ledger.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-lilypond.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-lisp.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-lob.el ob-*.el: Use ̀org-no-properties' instead of `org-babel-clean-text-properties' 2012-08-15 09:39:24 +02:00
ob-matlab.el More copyright year fixes. 2012-02-19 08:16:42 -07:00
ob-maxima.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-mscgen.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-ocaml.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-octave.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-org.el More copyright year fixes. 2012-02-19 08:16:27 -07:00
ob-perl.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-picolisp.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-plantuml.el Fix many small typos. 2012-08-13 05:59:44 +02:00
ob-python.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-R.el ob-R.el (org-babel-edit-prep:R): Don't set the session 2012-08-14 23:57:24 +02:00
ob-ref.el ob-ref.el (org-babel-ref-index-list): Fix bug introduced by commit e85479 2012-08-16 00:27:35 +02:00
ob-ruby.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-sass.el Fix copyright years in maint. 2012-03-17 16:31:04 +01:00
ob-scala.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-scheme.el Add :version to ob-scheme.el option. 2012-04-03 13:44:15 +02:00
ob-screen.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-sh.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
ob-shen.el Copyright, license, and header fixes. 2012-02-19 08:21:03 -07:00
ob-sql.el Fix many small typos. 2012-08-13 05:59:44 +02:00
ob-sqlite.el Fix many small typos. 2012-08-13 05:59:44 +02:00
ob-table.el ob-*.el: Use ̀org-no-properties' instead of `org-babel-clean-text-properties' 2012-08-15 09:39:24 +02:00
ob-tangle.el ob-*.el: Use ̀org-no-properties' instead of `org-babel-clean-text-properties' 2012-08-15 09:39:24 +02:00
ob.el Always use the compatibility function `org-region-active-p' 2012-08-20 05:45:25 +02:00
org-agenda.el Implement context filtering for agenda commands and capture templates. 2012-08-23 11:08:47 +02:00
org-archive.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-ascii.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-attach.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-bbdb.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-beamer.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-bibtex.el Replace org-labels' by let*' 2012-08-15 09:56:35 +02:00
org-capture.el Implement context filtering for agenda commands and capture templates. 2012-08-23 11:08:47 +02:00
org-clock.el org-clock.el: Fix clock overlays bug 2012-08-19 08:01:43 +02:00
org-colview-xemacs.el Call buffer-substring-no-properties' and remove org-no-properties' 2012-08-15 09:22:51 +02:00
org-colview.el org-colview.el: Make sure to add a face to a string that has no face 2012-08-21 20:05:34 +02:00
org-compat.el Merge branch 'org-no-properties' 2012-08-15 14:43:35 +02:00
org-crypt.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-ctags.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-datetree.el Don't use :version "24.3" until Emacs 24.3 is released and/or Org sync'ed in Emacs 2012-08-20 07:49:16 +02:00
org-docbook.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-docview.el Fix copyright years in maint. 2012-03-17 16:31:04 +01:00
org-element.el org-element: Fix comment typo 2012-08-20 11:21:16 +02:00
org-entities.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-eshell.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-exp-blocks.el Fix many small typos. 2012-08-13 05:59:44 +02:00
org-exp.el Remove useless (t nil) sexps at the end of some (cond ...) constructs 2012-08-19 14:42:54 +02:00
org-faces.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-feed.el org-feed.el: Add declarations 2012-08-12 10:40:02 +02:00
org-footnote.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-freemind.el org-freemind.el: Fix bug when converting links 2012-08-22 00:42:02 +02:00
org-gnus.el Remove `org-substring-no-properties' and some redundant code 2012-08-15 09:35:21 +02:00
org-habit.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-html.el Add licenses to embedded and external javascript code. 2012-08-21 12:37:32 +02:00
org-icalendar.el org-icalendar.el: Fix bug. 2012-08-22 02:41:18 +02:00
org-id.el Remove useless (t nil) sexps at the end of some (cond ...) constructs 2012-08-19 14:42:54 +02:00
org-indent.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-info.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-inlinetask.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-irc.el Fix many small typos. 2012-08-13 05:59:44 +02:00
org-jsinfo.el Add licenses to embedded and external javascript code. 2012-08-21 12:37:32 +02:00
org-latex.el Don't use :version "24.3" until Emacs 24.3 is released and/or Org sync'ed in Emacs 2012-08-20 07:49:16 +02:00
org-list.el Remove useless (t nil) sexps at the end of some (cond ...) constructs 2012-08-19 14:42:54 +02:00
org-lparse.el Remove useless (t nil) sexps at the end of some (cond ...) constructs 2012-08-19 14:42:54 +02:00
org-mac-message.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-macs.el Remove `org-substring-no-properties' and some redundant code 2012-08-15 09:35:21 +02:00
org-mew.el Delete org-make-link' and replace previous occurrences by concat'. 2012-08-03 19:03:21 +02:00
org-mhe.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-mks.el Delete trailing whitespaces in core files. 2012-03-28 02:05:36 +02:00
org-mobile.el Remove useless (t nil) sexps at the end of some (cond ...) constructs 2012-08-19 14:42:54 +02:00
org-mouse.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-odt.el Always use the compatibility function `org-region-active-p' 2012-08-20 05:45:25 +02:00
org-pcomplete.el org-pcomplete.el: Allow to match and complete a "thing" containing dashes 2012-08-22 00:20:09 +02:00
org-plot.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-protocol.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-publish.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-remember.el Remove `org-substring-no-properties' and some redundant code 2012-08-15 09:35:21 +02:00
org-rmail.el Fix a compiler warning. 2012-08-10 11:17:02 +02:00
org-special-blocks.el org-special-blocks.el: Prevent errors by first checking `org-line' is not nil. 2012-06-28 11:19:56 +02:00
org-src.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-table.el org-table.el: Better message when interactively toggling Row/Col display 2012-08-21 20:09:25 +02:00
org-taskjuggler.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-timer.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-vm.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-w3m.el Fix copyright years in maint. 2012-03-17 16:31:04 +01:00
org-wl.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org-xoxo.el Massive code clean-up. 2012-08-11 19:10:44 +02:00
org.el Implement context filtering for agenda commands and capture templates. 2012-08-23 11:08:47 +02:00