emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Orgmode] [BUG] some nasty bugs with PROPERTIES drawers


From: Paul Sexton
Subject: [Orgmode] [BUG] some nasty bugs with PROPERTIES drawers
Date: Tue, 31 Aug 2010 03:13:45 +0000 (UTC)
User-agent: Loom/3.14 (http://gmane.org/)

There seems to be a fairly nasty bug caused by :PROPERTIES: drawers still 
being recognised by org when they appear inside BEGIN_EXAMPLE or 
BEGIN_SRC blocks. I encountered this behaviour while writing docs for 
"org-drill". The doc file, README.org, contains quoted examples of org
"items", and also of an emacs lisp capture template containing the string
":PROPERTIES:".

The first thing I noticed was that PROPERTIES drawers inside EXAMPLE/SRC 
blocks appear *folded* when the file is opened in org mode, and 
'org-cycle' toggles their folded status, as if they belonged to a 
real org heading.

That is cosmetic, but I also encountered a more serious problem. 
README.org contains the following block of example elisp code, which 
is meant to illustrate an example setup of org-capture:

#+BEGIN_SRC emacs-lisp
(setq org-capture-templates
       `(("u"
         "Task: Read this URL"
         entry
         (file+headline "tasks.org" "Articles To Read")
         ,(concat "* TODO Read article: '%:description'\nURL: %c\n\n")
         :empty-lines 1
         :immediate-finish t)

        ("w"
         "Capture web snippet"
         entry
         (file+headline "my-facts.org" "Inbox")
         ,(concat "* Fact: '%:description'        :"
                  (format "%s" org-drill-question-tag)
                  ":\n:PROPERTIES:\n:DATE_ADDED: %u\n:SOURCE_URL:
%c\n:END:\n\n%i\n%?\n")
         :empty-lines 1
         :immediate-finish t)
        ;; ...other capture templates...
    ))
#+END_EXAMPLE

Basically, every time I tried to export this file to HTML, Emacs would 
become unresponsive (C-g did nothing) and would have to be killed with 
the task manager (or xkill in Linux -- I tried on 2 systems).

After about 20 crashes and restarts of Emacs, I finally identified the 
problem (I think). when I changed the above block from BEGIN_SRC to
BEGIN_EXAMPLE, the file exported correctly.

I think org was seeing the ":PROPERTIES" string within the elisp code 
and trying to interpret it as the beginning of a drawer, with disastrous
results.

Once I managed to fix the problem for myself I did not investigate it 
further. However I hope someone can fix it as it certainly caused a 
stressful afternoon.

Paul 

PS: I also realised that I was confused regarding how to get a syntax-
highlighted block of "example source code" into an org document, as 
BEGIN_SRC appears to execute the code by default, which was not what 
I wanted. Should BEGIN_EXAMPLE take an argument which specifies syntax 
highlighting (eg "BEGIN_EXAMPLE emacs-lisp")?







reply via email to

[Prev in Thread] Current Thread [Next in Thread]