From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marco Wahl Subject: Re: [RFC] Document level property drawer Date: Mon, 30 Sep 2019 22:46:01 +0200 Message-ID: <84tv8tjywm.fsf@gmail.com> References: <87eezxrcwv.fsf@alphapapa.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:47580) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iF2Yt-00036f-1O for emacs-orgmode@gnu.org; Mon, 30 Sep 2019 16:46:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iF2Yp-0001bU-1U for emacs-orgmode@gnu.org; Mon, 30 Sep 2019 16:46:24 -0400 Received: from 195-159-176-226.customer.powertech.no ([195.159.176.226]:49702 helo=blaine.gmane.org) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iF2Yj-0001Wt-DW for emacs-orgmode@gnu.org; Mon, 30 Sep 2019 16:46:19 -0400 Received: from list by blaine.gmane.org with local (Exim 4.89) (envelope-from ) id 1iF2YZ-000kAc-50 for emacs-orgmode@gnu.org; Mon, 30 Sep 2019 22:46:07 +0200 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" To: emacs-orgmode@gnu.org Adam Porter writes: > Gustav Wikström writes: > >> 3) Properties defined in a property drawer will have precedence over >> properties defined as a property keyword, if the same property is >> defined using both conventions. > > That protocol seems unnatural and confusing to me: > > - If precedence were to be defined by something other than file-order, > it seems to me that those defined with #+ keywords should have > precedence, because they are more visible, while those in drawers are > hidden. > - However, it seems to me that the simplest, most natural protocol would > be for later declarations to override earlier ones. I think it would be quite natural to use the tree structure of Org. A property setting in a subtree overrides the setting in a parent (which could be the document(= the whole file.)) >> 4) The position for the document level property drawer is: >> - At the first line in a file that is not a comment or a keyword. >> >> I.e. the following will work: >> >> #+begin_src org >> # -*- mode: org -*- >> ,#+TITLE: Test >> :PROPERTIES: >> :CATEGORY: Test >> :END: >> >> Preamble >> >> ,* Some heading >> Some content >> #+end_src [...] > That feels unintuitive to me. Document-level property keywords may > appear anywhere in a file, so it seems inconsistent for document-level > property drawers to be limited in this way, as if there were an implied > headline at the top of the file. If it were so, I would expect to see > many mailing list posts by users asking why the properties defined in > their document-level property drawers aren't working. Given that there > is no enforcement in Org's UI to keep such drawers in certain places, I > think the implementation should be tolerant of users' preferences and > mistakes (cf. Postel's Law). TBH allowing document-level properties anywhere in an Org file looks rather messy to me. When a user is interested in all the document-level properties she needs to scan the whole file. Also the spread out document-level properties introduce a distinction between a whole Org file and an Org subtree. I think the distinction between Org file and Org subtree should be kept to a minimum. Wouldn't it be nice if Org files can be considered as Org subtrees? In this sense a property drawer for the document is a step in the right direction. Ciao, -- Marco