From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nick Dokos Subject: Re: About commit named "Allow multi-line properties to be specified in property blocks" Date: Thu, 03 Nov 2011 11:10:00 -0400 Message-ID: <4967.1320333000@alphaville.dokosmarshall.org> References: <87vcr5c76e.fsf@gmail.com> <87vcr5j5a5.fsf@gmail.com> <4EAF118C.8050806@christianmoe.com> <87hb2mo7ek.fsf@altern.org> <87obwuh19t.fsf@gmail.com> <87hb2mdmi9.fsf@gnu.org> <4EB24BEE.90902@christianmoe.com> Reply-To: nicholas.dokos@hp.com Return-path: Received: from eggs.gnu.org ([140.186.70.92]:47436) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RLyvh-000702-7Z for emacs-orgmode@gnu.org; Thu, 03 Nov 2011 11:10:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RLyvc-0001aZ-SM for emacs-orgmode@gnu.org; Thu, 03 Nov 2011 11:10:09 -0400 Received: from g4t0017.houston.hp.com ([15.201.24.20]:3909) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RLyvc-0001a7-NN for emacs-orgmode@gnu.org; Thu, 03 Nov 2011 11:10:04 -0400 In-Reply-To: Message from Christian Moe of "Thu, 03 Nov 2011 09:08:14 BST." <4EB24BEE.90902@christianmoe.com> 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: mail@christianmoe.com Cc: Bastien , nicholas.dokos@hp.com, Org Mode List , Nicolas Goaziou Christian Moe wrote: > On 11/3/11 2:26 AM, Bastien wrote: > > Hi Nicolas, > > > > Nicolas Goaziou writes: > (...) > >> There is also "#+bind:", whose purpose is close enough. > > > > Indeed. Eric, would it be possible to use > > > > #+bind foo 1 > > > > instead of > > > > #+property var foo=1 > > Correct me if I'm wrong, but the purpose of #+BIND is to specify a > file local variable, isn't it? The manual gives one example of how to > modify export settings with it. > It's actually more restricted than that: during preprocessing, the function org-install-letbind adds the bindings as file-locals *during export*. > With Babel blocks, there should be clarity what variables are to be > passed to the block as arguments, and what variables should not. > Currently this is completely clear: Only variables named in a `var' > property or header argument are passed. > > Using =#+bind foo 1= would be ambiguous; you wouldn't know when it's > for Babel and when it's not. Say we make Babel use BIND values, and > someone has this setup: > > #+BIND: org-export-latex-low-levels itemize > #+BIND: foo 1 > #+BIND: bar 2 > > Then this: > > #+BEGIN_SRC emacs-lisp > (+ foo bar) > #+END_SRC > > would tangle to something like: > > (let ((org-export-latex-low-levels (guote itemize)) > (foo (quote 1)) > (bar (quote 2))) > (+ foo bar)) > > -- which was not the intention. > I agree - the bind namespace and the code block variable name space should be separate. BIND was iirc Carsten's throwing up his hands when people were asking for more and more options to be settable from within the file: he built a general (if not particularly convenient) mechanism to allow people to do just that. Nick > Yours, > Christian >