From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Schulte Subject: Re: About commit named "Allow multi-line properties to be specified in property blocks" Date: Mon, 31 Oct 2011 14:05:22 -0600 Message-ID: <87vcr5j5a5.fsf@gmail.com> References: <87vcr5c76e.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([140.186.70.92]:54656) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RKy6s-0008OX-KK for emacs-orgmode@gnu.org; Mon, 31 Oct 2011 16:05:31 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RKy6r-0006Aa-3k for emacs-orgmode@gnu.org; Mon, 31 Oct 2011 16:05:30 -0400 Received: from mail-vw0-f41.google.com ([209.85.212.41]:46755) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RKy6q-0006AU-W4 for emacs-orgmode@gnu.org; Mon, 31 Oct 2011 16:05:29 -0400 Received: by vws16 with SMTP id 16so882395vws.0 for ; Mon, 31 Oct 2011 13:05:28 -0700 (PDT) In-Reply-To: <87vcr5c76e.fsf@gmail.com> (Nicolas Goaziou's message of "Mon, 31 Oct 2011 20:06:17 +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: Nicolas Goaziou Cc: Org Mode List Nicolas Goaziou writes: > Hello, > > I just noticed that commit (8354fd9e0f5fff04665b2272fff6376b15ec0225). > > Could we talk about it before pushing it, a few days before the release? > > I am a bit worried about the new block types being introduced recently. > Some may be justified, I don't know yet, but "#+begin_property" > definitely isn't. > > By looking at the Org syntax. what appears clearly is that Org blocks > are used for contents formatting. Center blocks, quote blocks, verse > blocks, special blocks, example blocks, export blocks, even src blocks > (even though these blocks may be used for very different things, they > exist primarily to display source code)... there's no exception. > > On the other hand, Org internals are controlled through keywords, > property drawers, and options on blocks. > > As "#+begin_property" block isn't about contents. I can't see any reason > for it to exist under this shape. So, again, can we discuss about > another approach that would not break the logic behind Org's syntax? > > I don't fully grasp the problem it tries to solve, but what's wrong > with, for example, "#+property: var multiple couples"? What's wrong > with :var_list: x=1,y=3,z=4 in a property drawer? What's wrong > with #+header: :var x=1, y=2, z=3 just above the source block? As your > already know, #+header can span already on multiple lines. > > Hoping we can find a more elegant solution, > The only problem with a single #+PROPERTY: line is that this line could become unreadably long. By allowing such an entry to span multiple lines it becomes feasible to chain together many variables into a single property. Another approach which is easily implementable would be to use syntax like the following... #+PROPERTY: var foo=1, #+PROPERTY+: bar=2, #+PROPERTY+: baz=3, #+PROPERTY+: qux=4 #+begin_src emacs-lisp (+ foo bar baz qux) #+end_src #+results: : 10 Although I originally switched from the above to the implemented because I thought that using a block would be more consistent with Org-mode syntax. Also, the above is undesirable in its requires the PROPERTY+ lines to care about their position in the Org-mode file, which isn't normally the case. I think of #+FOO: lines as containers for anything that fits on a single line, and as blocks as containers for anything that requires a line break, e.g., #+HTML and #+BEGIN_HTML/#+END_HTML. I didn't realize that there was an extra semantics of blocks as formatting, and I'm not sure if such an association is desirable or intentional. Best -- Eric > > > Regards, -- Eric Schulte http://cs.unm.edu/~eschulte/