From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleh Krehel Subject: Re: Is it possible to keep /all/ the heading properties in one place? Date: Thu, 25 Feb 2016 15:26:11 +0100 Message-ID: <87oab4sw70.fsf@gmail.com> References: <87fuwht5s3.fsf@gmail.com> <87lh683o7c.fsf@nicolasgoaziou.fr> <878u28ucl8.fsf@gmail.com> <878u283n15.fsf@nicolasgoaziou.fr> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:54638) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aYwrz-0007XH-6w for emacs-orgmode@gnu.org; Thu, 25 Feb 2016 09:26:19 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aYwru-0006qG-7L for emacs-orgmode@gnu.org; Thu, 25 Feb 2016 09:26:19 -0500 Received: from mail-wm0-x22c.google.com ([2a00:1450:400c:c09::22c]:35931) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aYwrt-0006q7-W9 for emacs-orgmode@gnu.org; Thu, 25 Feb 2016 09:26:14 -0500 Received: by mail-wm0-x22c.google.com with SMTP id g62so31139151wme.1 for ; Thu, 25 Feb 2016 06:26:13 -0800 (PST) Received: from firefly ([91.219.111.102]) by smtp.gmail.com with ESMTPSA id 8sm3468392wmk.13.2016.02.25.06.26.12 for (version=TLS1_2 cipher=AES128-SHA bits=128/128); Thu, 25 Feb 2016 06:26:12 -0800 (PST) In-Reply-To: <878u283n15.fsf@nicolasgoaziou.fr> (Nicolas Goaziou's message of "Thu, 25 Feb 2016 15:03:18 +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: > Because not everything is a node property. This shouldn't prevent us from keeping things that /are/ node properties all in one place. > TODO keywords, tags and properties are all different, and blurring the > distinction between them would not make Org easier. Note that Org > doesn't force you to use any of them. I would most definitely make Org easier in some respects. Suppose a person wants to parse an Org file's content, just for displaying it on a website (like Github does right now). If all properties were in a single place, they could be trivially skipped with a regex, resulting in an almost ASCII-like export of the Org file. > CLOCK cannot be located within PROPERTIES drawer because it not > a key-value association. You can have multiple clocks with different > values. :LOGBOOK: could be the key, and all of its contents would be the value. Same thing with putting :TAGS: into :PROPERTIES:. > SCHEDULED and DEADLINE could have been moved within PROPERTIES drawer. > It was even discussed a couple of times on this ML. However, Carsten > decided to keep them separated, mainly because such an important > information should not be hidden in the document, in particular for > newcomers. I still agree with him. Could we have an option to customize this? Just declare a standard getter and setter interface for :SCHEDULED: and :DEADLINE:. I'll customize them in my config to put them in the :PROPERTIES: drawer. Here's another idea for the :PROPERTIES: drawer that might make things a lot less hairy - make it fully in Lisp: (properties (scheduled [2016-02-25 Thu]) (id ca23d969-d189-4d38-aee3-aa21feb5b305) (logbook (clock [2016-02-25 Thu 15:03]) (clock [2016-02-25 Thu 14:33] [2016-02-25 Thu 14:58]) (clock [2016-02-25 Thu 13:24] [2016-02-25 Thu 13:49])) (added [2016-02-25 Thu 11:24])) I think it would greatly enhance the parsing of Org files, and simplify many functions in org.el. With this, a simple `read' will suffice to parse all the stuff.