From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thorsten Jolitz Subject: Re: Parser - which values are possible for `archivedp'? Date: Tue, 04 Mar 2014 15:58:31 +0100 Message-ID: <871tyiko2w.fsf@gmail.com> References: <87ha7ekq0k.fsf@gmail.com> <87ha7edoag.fsf@gmail.com> <87a9d6koly.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:34056) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WKqmz-0006b4-5L for emacs-orgmode@gnu.org; Tue, 04 Mar 2014 09:57:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WKqmr-0007lk-RX for emacs-orgmode@gnu.org; Tue, 04 Mar 2014 09:57:49 -0500 Received: from plane.gmane.org ([80.91.229.3]:42680) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WKqmr-0007lX-LF for emacs-orgmode@gnu.org; Tue, 04 Mar 2014 09:57:41 -0500 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1WKqmq-0000x1-NN for emacs-orgmode@gnu.org; Tue, 04 Mar 2014 15:57:40 +0100 Received: from g231224072.adsl.alicedsl.de ([92.231.224.72]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 04 Mar 2014 15:57:40 +0100 Received: from tjolitz by g231224072.adsl.alicedsl.de with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 04 Mar 2014 15:57:40 +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 Jonathan Leech-Pepin writes: > Hello, > > On 4 March 2014 09:47, Thorsten Jolitz wrote: > > > Nick Dokos writes: > > > Thorsten Jolitz writes: > > > >> Hi List, > >> > >> the name of headline attribute `archivedp' suggests its just a > boolean > >> nil/t variable, but in parse trees I see e.g. a list as value > >> > >> ,----------------------- > >> | :archivedp ("ARCHIVE") > >> `----------------------- > >> > >> and I vaguely remember that I have seen different symbols as > values of > >> this attribute too. > >> > >> So what do I have to expect as values here? A list of strings > or nil? Or > >> something else too? Whatever is defined in > >> > >> ,--------------------------------------------------- > >> | org-archive-tag is a variable defined in `org.el'. > >> | Its value is "ARCHIVE" > >> `--------------------------------------------------- > >> > >> ? > >> > >> PS > >> > >> If the tag is just a string like in this case, why is it shown > as > >> list in the parse tree? > > > > It is set like this > > (let > > ... > > (archivedp (member org-archive-tag tags)) > > ...) > > > > in org-element.el. It is effectively a boolean, but there is no > > need to reduce the return value of ``member'' to t if it is > non-nil: > > > > ,---- > > | member is a built-in function in `C source code'. > > | > > | (member ELT LIST) > > | > > | Return non-nil if ELT is an element of LIST. Comparison done > with > > | equal'. > > `---- > > > > So if non-nil, it will be a list of tags, starting with the > value of > > org-archive-tag. AFAICT, the rest of the tags can be arbitrary. > > > > ** Second Level 2 :tag:my:ARCHIVE: > > > ,------------------------------------------------ > | :tags ("tag" "my") [...] :archivedp ("ARCHIVE") > `------------------------------------------------ > > Change the order of the tags so that Archive comes before the others > and you get: > > ** Second level 2 :ARCHIVE:tag:my: > :tags ("tag" "my") :archivedp ("ARCHIVE" "tag" "my") A very useful feature of the `member' function in lisp programming, but not that great in this case I would say ... why not use (car (member ...))? Then its just a string, and the single value of interest. -- cheers, Thorsten