From: Thorsten Jolitz <tjolitz@gmail.com>
To: emacs-orgmode@gnu.org
Subject: [BUG] in org-property-drawer-re?
Date: Tue, 01 Oct 2013 19:50:03 +0200 [thread overview]
Message-ID: <87r4c4519w.fsf@gmail.com> (raw)
Hi List,
for the navi-mode keyword-search for complete property drawers I copied
,-----------------------
| org-property-drawer-re
`-----------------------
from org.el:
#+begin_src emacs-lisp
(concat "\\(" org-property-start-re "\\)[^\000]*\\("
org-property-end-re "\\)\n?")
#+end_src
#+results:
: \(^[ ]*:PROPERTIES:[ ]*$\)[^\\000]*\(^[ ]*:END:[ ]*$\)
: ?
A bit unreadable, but you get the message ... here is my hopefully equivalent
version:
,--------------------------------------------------------------
| (:propertydrawer
| . (concat "\\(^[\\s\\t]*:PROPERTIES:[\\s\\t]*$\\)[^\\000]*"
| "\\(^[\\s\\t]*:END:[\\s\\t]*$\\)\\n?"))
`--------------------------------------------------------------
But this did not match correctly in Bernt Hansens tutorial:
,--------------------------------------------------------------------------
| 43::PROPERTIES:
| ::CUSTOM_ID: Setup
| ::END:
| 131::PROPERTIES:
| ::CUSTOM_ID: OrgFiles
| ::END:
| 185::PROPERTIES:
| ::CUSTOM_ID: AgendaSetup
| ::END:
| :
| :Here is my current =org-agenda-files= setup.
| :#+begin_src emacs-lisp :tangle no
| : (setq org-agenda-files (quote ("~/git/org"
| : "~/git/org/client1"
| : "~/git/org/bzflag"
| : "~/git/client2")))
| :#+end_src
| :
| :#+begin_src emacs-lisp :tangle yes :exports none
| : ;; The following setting is different from the document so that you
| : ;; can override the document org-agenda-files by setting your
| : ;; org-agenda-files in the variable org-user-agenda-files
| : ;;
| : (if (boundp 'org-user-agenda-files)
| : (setq org-agenda-files org-user-agenda-files)
| : (setq org-agenda-files (quote ("~/git/org"
| : "~/git/org/client1"
| : "~/git/org/bzflag"
| : "~/git/client2"))))
| :
| :#+end_src
`--------------------------------------------------------------------------
I had to add two ? after the * and delete the final \n
,-------------------------------------------------------------
| (:propertydrawer
| . (concat "\\(^[\\s\\t]*:PROPERTIES:[\\s\\t]*$\\)[^\\000]*?"
| "\\(^[\\s\\t]*:END:[\\s\\t]*?$\\)"))
`-------------------------------------------------------------
to get the desired results:
,---------------------------------
| 43::PROPERTIES:
| ::CUSTOM_ID: Setup
| ::END:
| 131::PROPERTIES:
| ::CUSTOM_ID: OrgFiles
| ::END:
| 185::PROPERTIES:
| ::CUSTOM_ID: AgendaSetup
| ::END:
| 234::PROPERTIES:
| ::CUSTOM_ID: OrgFileStructure
| ::END:
`---------------------------------
A bug in the regexp?
PS
Can anybody explain this marvelous construct in the regexp:
,---------
| [^\\000]
`---------
I often pondered about how to achieve its effect with other means, since
I did not find it in the Emacs Lisp manual.
--
cheers,
Thorsten
next reply other threads:[~2013-10-01 17:50 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-01 17:50 Thorsten Jolitz [this message]
2013-10-01 18:17 ` [BUG] in org-property-drawer-re? Carsten Dominik
2013-10-01 18:36 ` Thorsten Jolitz
2013-10-01 18:44 ` Carsten Dominik
2013-10-02 9:55 ` Nicolas Goaziou
2013-10-02 11:05 ` Carsten Dominik
2013-10-02 11:14 ` Nicolas Goaziou
2013-10-02 11:37 ` Carsten Dominik
2013-10-02 11:38 ` Thorsten Jolitz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87r4c4519w.fsf@gmail.com \
--to=tjolitz@gmail.com \
--cc=emacs-orgmode@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.