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: Thu, 03 Nov 2011 14:18:01 -0600 Message-ID: <87mxcdeyy5.fsf@gmail.com> 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> <87obwtgip9.fsf@gmail.com> <87aa8dgekw.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([140.186.70.92]:46733) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RM3ye-0008Vj-Ad for emacs-orgmode@gnu.org; Thu, 03 Nov 2011 16:33:33 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RM3yc-0008DK-Vh for emacs-orgmode@gnu.org; Thu, 03 Nov 2011 16:33:32 -0400 Received: from mail-yw0-f41.google.com ([209.85.213.41]:42169) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RM3yc-0008C9-IZ for emacs-orgmode@gnu.org; Thu, 03 Nov 2011 16:33:30 -0400 Received: by ywa17 with SMTP id 17so2001559ywa.0 for ; Thu, 03 Nov 2011 13:33:30 -0700 (PDT) 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: Bastien , Org Mode List , mail@christianmoe.com Nicolas Goaziou writes: > Eric Schulte writes: > >>>> On the contrary, creating a block for each keyword would mean a lot of >>>> new syntax. >>>> >>>> We currently have 8 types of blocks (not counting dynamic blocks, whose >>>> syntax is a bit different), all requiring to be parsed differently: >>>> >>>> 1. Center blocks, >>>> 2. Comment blocks, >>>> 3. Example blocks, >>>> 4. Export blocks, >>>> 5. Quote blocks, >>>> 6. Special blocks, >>>> 7. Src blocks, >>>> 8. Verse blocks. >>> >>> I'm not sure what do you mean by "requiring to be parsed differently". >>> Can you explain it? I understand they should be treated differently by >>> the exporters, but I don't understand why they would need to be parsed >>> differently. >>> >> >> I also wouldn't think of this as new syntax, I don't see 8 rules for the >> 8 types above but rather one rule along the lines of #+begin_SOMETHING >> where the SOMETHING can be anything. > > Well, certainly, from a "Press TAB on #+begin_ line", they have exactly > the same meaning, and could as well be labelled #+begin_SOMETHING. But, > > - If I consider fontification, "Src blocks" differ from "Example > blocks", which differ from everything else. > > - If I consider `org-edit-special', C-c ' will bring you to a buffer > with a special mode in "Src blocks", fundamental mode in "Example > blocks" and "Verse blocks". > > - If I consider lists, you can have them in "Quote blocks", but not in > "Export blocks" or "Verse blocks", for example. > > - If I consider indentation, it will be ignored for "Example blocks" > (and should do the same for "Verse blocks"), could do something > entirely different on "Src blocks", and will indent normally, > i.e. "Quote blocks". > > - If I consider recursion, you can have "Quote blocks" inside "Center > blocks", but not inside "Export blocks". > > - If I consider options on the "begin_" line, "Example blocks" accept > them, but not "Center blocks". > > - If I consider entities, you can have them in "Verse blocks" but not > in "Example blocks" > > - If I consider export, obviously, they will all be treated very > differently. > > And I'm pretty sure I'm forgetting some other case. So, yes, from the > moon, they're pretty much indistinguishable ;) From an Org point of > view, they have 8 different meanings and, as such, need to be parsed > differently. At least, I've had to proceed that way when I wrote an Org > parser. > Point made :), I concede a huge difference between block types. I'm ultimately happy that the begin_property approach has not moved forward. Best -- Eric -- Eric Schulte http://cs.unm.edu/~eschulte/