Nicolas Goaziou <n.goaz...@gmail.com> writes: >> I want to write an 'unusual' backend that does not need anything else >> from the exporting framework but the parse-tree as a list. > > Then you don't want the exporting framework at all, only org-element.el.
yes, only the parser. > Anyway I'm confused. The parse-tree _is_ a list. To convince yourself, > evaluate the following in any Org buffer: > > (listp (org-element-parse-buffer)) > >> So all I need would be a workaround for this read-error issue, i.e. >> a tip how to get a version of the parse tree that can be used as list >> in a Lisp program. > > Have you tried (setq print-circle t) ? > >> I could not find any explanation for the '#1' and '#2' syntax I >> encountered, so I don't really know what its all about. > > It is explained in the info link I gave you. I read this link, it says: ,-------------------------------------------------------------------- | To represent shared or circular structures within a complex of Lisp | objects, you can use the reader constructs ‘#n=’ and ‘#n#’. `-------------------------------------------------------------------- what is not quite the same like ,----------- | :parent #1 `----------- but with your other hints, I now understand the problem. I wanted to see how the parse tree looks like, so I printed it out (I did not know about the existance of 'print-circle' then, but it was set to nil). Then I tried to experiment with the printed representation, but the #1 syntax gave me an error. When I set 'print-circle' to t, the printed result looks like described in the info page, with elements like [...] :parent #66#)))) #67=(headline [...] -- cheers, Thorsten