From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thorsten Jolitz Subject: Re: Invalid read syntax (#) in org-element parse tree Date: Tue, 12 Feb 2013 21:47:19 +0100 Message-ID: <87fw115kfc.fsf@gmail.com> References: <87vc9ybt65.fsf@gmail.com> <87fw12cyka.fsf@gmail.com> <87r4kmbfon.fsf@gmail.com> <87zjz99v6j.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:45505) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U5MlK-0003e8-W2 for emacs-orgmode@gnu.org; Tue, 12 Feb 2013 15:47:37 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U5MlF-0007YF-RM for emacs-orgmode@gnu.org; Tue, 12 Feb 2013 15:47:34 -0500 Received: from plane.gmane.org ([80.91.229.3]:42283) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U5MlF-0007Xx-KI for emacs-orgmode@gnu.org; Tue, 12 Feb 2013 15:47:29 -0500 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1U5MlX-0001yh-Cq for emacs-orgmode@gnu.org; Tue, 12 Feb 2013 21:47:47 +0100 Received: from e178056063.adsl.alicedsl.de ([85.178.56.63]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 12 Feb 2013 21:47:47 +0100 Received: from tjolitz by e178056063.adsl.alicedsl.de with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 12 Feb 2013 21:47:47 +0100 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: emacs-orgmode@gnu.org Nicolas Goaziou 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