From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nicolas Goaziou Subject: Re: [ANN] Merge export-block type within special-block Date: Sun, 31 Aug 2014 14:56:34 +0200 Message-ID: <87oav0vmv1.fsf@nicolasgoaziou.fr> References: <87y4vf0ygz.fsf@nicolasgoaziou.fr> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:60310) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XO4fz-0003JD-1Q for emacs-orgmode@gnu.org; Sun, 31 Aug 2014 08:56:21 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XO4fo-000818-Sg for emacs-orgmode@gnu.org; Sun, 31 Aug 2014 08:56:10 -0400 In-Reply-To: (KDr2's message of "Fri, 29 Aug 2014 22:02:47 +0800") 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: KDr2 Cc: Bastien Guerry , Org Mode List Hello, KDr2 writes: > This is nice, but it brought a bug, `[N]' in HTML block is recognized as > footnote, e.g.: > > #+BEGIN_HTML > ONE[1] > > #+END_HTML > > There are two footnotes in the generated HTML. Would you fix this > please? Unfortunately, no, I cannot fix it. The problem is even deeper. Indeed, my approach is fundamentally wrong: it is impossible to postpone choosing between parsed or raw data at export time. This information must be obtained at parsing time. Yet, I think syntax should not depend on the libraries loaded. So the initial problem still needs a solution. Special blocks and export blocks are just too similar. We could make them slightly different. One solution is to mark explicitly blocks meant to insert raw code. E.g., #+BEGIN_SOMETHING :special t ... #+END_SOMETHING vs #+BEGIN_SOMETHING ... #+END_SOMETHING In the first case contents would be parsed and the block treated as a special block (i.e. depending on the back-end) whereas in the second case, contents would be inserted as-is in the buffer, provided target export back-ends accepts data from "SOMETHING" blocks (IOW "SOMETHING" = "LATEX" if ox-latex is used). This is clearly not backward-compatible. But it only modifies syntax for special blocks, which, I guess, are much less used than their cousins, export blocks. The ":special t" may be shorter, too. Cc'ing Bastien for his opinion. Regards, -- Nicolas Goaziou