From mboxrd@z Thu Jan 1 00:00:00 1970 From: Carsten Dominik Subject: Re: agenda restriction locks and searching all nodes quickly Date: Sat, 6 Nov 2010 17:36:03 -0400 Message-ID: <5CE901B0-EAF4-4C71-8F13-8FB788784411@gmail.com> References: Mime-Version: 1.0 (Apple Message framework v936) Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Return-path: Received: from [140.186.70.92] (port=37593 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PEqQj-0000Ia-2u for emacs-orgmode@gnu.org; Sat, 06 Nov 2010 17:36:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PEqQh-0006eD-PD for emacs-orgmode@gnu.org; Sat, 06 Nov 2010 17:36:08 -0400 Received: from mail-yw0-f41.google.com ([209.85.213.41]:42081) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PEqQh-0006e4-LM for emacs-orgmode@gnu.org; Sat, 06 Nov 2010 17:36:07 -0400 Received: by ywl5 with SMTP id 5so3356531ywl.0 for ; Sat, 06 Nov 2010 14:36:07 -0700 (PDT) In-Reply-To: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Samuel Wales Cc: emacs-orgmode@gnu.org Hi SAmuel, On Nov 6, 2010, at 12:47 AM, Samuel Wales wrote: > Having trouble with setting a restriction lock and also with > searching quickly. > > Can somebody kindly respond to the questions in the comments below? > > > (defun alpha-org-agenda-parent-subtree () > "Show agenda for all tasks in subtree above point. This means > all /siblings/ of point and everything beneath them. > > If the region is active, operate only on the region. > > You can get a fast sorted view with this command. In this > example, the agenda will show tasks under my subtree. > > * top level 1 -- not shown > * my subtree -- shown > * TODO a > * some other headline | (<- point is here) > * TODO [#A] b > * top level 2 -- not shown > > If you sort by priority, b will sort above a. > > This allows you to organize nodes hierarchically instead of > keeping things at the same level merely to allow sorting. > " > (interactive) > (save-excursion > ;;unwind-protect > (if (not (org-up-heading-safe)) > (message "top level is nyi") > ;;is this the right way to do it? i tried > ;;(let (org-agenda-overriding-restriction ... > ;; > ;;how do i make this work for the active region? > (org-agenda-set-restriction-lock 'subtree) > ;;is there a less kludgey way to specify all tasks in the > restriction? > ;;more importantly, what is the absolutely /fastest/ way? I guess you could remember start and end of the region and the implement a skipping function the checks if the match is in the range. If you are in a large file, this would still be somewhat wasteful. The fastest way for a region would be (untested) (setq org-agenda-restrict t) (setq org-agenda-overriding-restriction 'region) (put 'org-agenda-files 'org-restrict (list (buffer-file-name (buffer-base-buffer)))) (move-marker org-agenda-restrict-begin (region-beginning)) (move-marker org-agenda-restrict-end (region-end)) > ;; > ;;this seems to take forever even for a single node > (org-search-view nil "{.}")))) Try a tags/property match with "LEVEL>0", that should be more efficient. > > Thanks. > > Samuel > > -- > Q: How many CDC "scientists" does it take to change a lightbulb? > A: "You only think it's dark." [CDC has denied a deadly serious > disease for 25 years] > ========== > HIV-like virus: http://www.wpinstitute.org/xmrv/index.html -- PLEASE > DONATE > === > I want to see the original (pre-hold) Lo et al. 2010 NIH/FDA/Harvard > MLV paper. > > _______________________________________________ > Emacs-orgmode mailing list > Please use `Reply All' to send replies to the list. > Emacs-orgmode@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-orgmode