From mboxrd@z Thu Jan 1 00:00:00 1970 From: Aaron Ecay Subject: Re: fold all drawers in a buffer? Date: Fri, 01 Nov 2013 14:34:27 -0400 Message-ID: <87txfw0y4s.fsf@gmail.com> References: <87ppqkktky.fsf@gmail.com> <87d2mkkr8c.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:58173) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VcJYE-0008EH-4C for emacs-orgmode@gnu.org; Fri, 01 Nov 2013 14:34:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VcJYD-0005gb-CS for emacs-orgmode@gnu.org; Fri, 01 Nov 2013 14:34:30 -0400 Received: from mail-qc0-x22e.google.com ([2607:f8b0:400d:c01::22e]:42610) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VcJYD-0005gV-7W for emacs-orgmode@gnu.org; Fri, 01 Nov 2013 14:34:29 -0400 Received: by mail-qc0-f174.google.com with SMTP id v1so2689192qcw.33 for ; Fri, 01 Nov 2013 11:34:28 -0700 (PDT) In-Reply-To: <87d2mkkr8c.fsf@gmail.com> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Thorsten Jolitz , emacs-orgmode@gnu.org Hi Thorsten, 2013ko azaroak 1an, Thorsten Jolitz-ek idatzi zuen: > I tested the above functions with a big org file - way to slow.=20 > These versions perfom better, but only on property drawers: >=20 > #+begin_src emacs-lisp > (defun org-show-drawers () > "Unfold all drawers in buffer" > (interactive) > (save-excursion > (goto-char (point-min)) > (while (re-search-forward org-property-start-re nil 'NOERROR) > (and (org-element-property :hiddenp (org-element-at-point)) > (org-cycle))))) >=20 > (defun org-hide-drawers () > "Unfold all drawers in buffer" > (interactive) > (save-excursion > (goto-char (point-min)) > (while (re-search-forward org-property-start-re nil 'NOERROR) > (and (not (org-element-property :hiddenp (org-element-at-poi= nt))) > (org-cycle))))) > #+end_src This will work on recent versions of org, but the :hiddenp properties were taken out of the parser by the following git commit (not yet in any released version of org AFAIK): commit fe27ca9906f1d6c48a93f463d85850925687b825 Author: Nicolas Goaziou Date: Thu Oct 3 22:57:02 2013 +0200 For forward compatibility you can skip the visibility check and use =E2=80=98(org-flag-drawer nil)=E2=80=99 unconditionally, I think. --=20 Aaron Ecay