diff options
author | Abdó Roig-Maranges <abdo.roig@gmail.com> | 2012-12-24 14:49:04 +0100 |
---|---|---|
committer | Bastien Guerry <bzg@altern.org> | 2012-12-24 14:49:04 +0100 |
commit | a04ccc40b2924a7afc99c6b414ae394e1affdfdb (patch) | |
tree | 5b72d26534614de9535d9db2eab6c8bbc9ad9962 | |
parent | ca4219abc9e3e4da41a719d046d2a08fa7d604f1 (diff) | |
download | org-mode-a04ccc40b2924a7afc99c6b414ae394e1affdfdb.tar.gz |
org-agenda.el: New option `org-agenda-search-view-max-outline-level'
* org-agenda.el (org-agenda-search-view-max-outline-level):
New option to define the max level for the entries shown by
the search view. A value of 1 means to show the top parent
of the entries.
-rw-r--r-- | lisp/org-agenda.el | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el index fce98f6..ce3a01c 100644 --- a/lisp/org-agenda.el +++ b/lisp/org-agenda.el @@ -1320,6 +1320,14 @@ When nil, they may also match part of a word." :version "24.1" :type 'boolean) +(defcustom org-agenda-search-view-max-outline-level nil + "Maximum outline level to display in search view. +E.g. when this is set to 1, the search view will only +show headlines of level 1." + :group 'org-agenda-search-view + :version "24.3" + :type 'integer) + (defgroup org-agenda-time-grid nil "Options concerning the time grid in the Org-mode Agenda." :tag "Org Agenda Time Grid" @@ -4399,10 +4407,23 @@ in `org-agenda-text-search-extra-files'." (goto-char (max (point-min) (1- (point)))) (while (re-search-forward regexp nil t) (org-back-to-heading t) + (while (and org-agenda-search-view-max-outline-level + (> (org-reduced-level (org-outline-level)) + org-agenda-search-view-max-outline-level) + (forward-line -1) + (outline-back-to-heading t))) (skip-chars-forward "* ") (setq beg (point-at-bol) beg1 (point) - end (progn (outline-next-heading) (point))) + end (progn + (outline-next-heading) + (while (and org-agenda-search-view-max-outline-level + (> (org-reduced-level (org-outline-level)) + org-agenda-search-view-max-outline-level) + (forward-line 1) + (outline-next-heading))) + (point))) + (catch :skip (goto-char beg) (org-agenda-skip) |