From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id iEF5MDYxl18jYQAA0tVLHw (envelope-from ) for ; Mon, 26 Oct 2020 20:27:34 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id 939mLDYxl1/xPAAA1q6Kng (envelope-from ) for ; Mon, 26 Oct 2020 20:27:34 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 4CF8F9402A8 for ; Mon, 26 Oct 2020 20:27:34 +0000 (UTC) Received: from localhost ([::1]:51974 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kX95Y-0003zP-M5 for larch@yhetil.org; Mon, 26 Oct 2020 16:27:32 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44076) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kX94F-0003fb-JI for emacs-orgmode@gnu.org; Mon, 26 Oct 2020 16:26:11 -0400 Received: from mail-pf1-x432.google.com ([2607:f8b0:4864:20::432]:45436) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kX94D-0000as-Pl; Mon, 26 Oct 2020 16:26:11 -0400 Received: by mail-pf1-x432.google.com with SMTP id e7so6815847pfn.12; Mon, 26 Oct 2020 13:26:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=references:user-agent:from:to:cc:subject:in-reply-to:date :message-id:mime-version; bh=8jt+rpkdG0z4c/MRTel2Be5Iqto3ThzIiveZzeP1WMY=; b=ZBEiycHtpKPLP97NypNHP8Uf9xPpz+Ri+/phd+4vASg/heKLdXPjEBUsOD8fNVsaSu 2C07l/ApGh3TTNqqNuqK5RCPX/bL8pDrQeLXsj6Kag/aS4pgEEceew7+grmRe93onEQR VZpfrzU8BlXzFrPTReZcuSa40UtIz5yu5BRDR+JgXAvg1kKrfODEGAQ85ruk2hcNczkI yOfmhBl638WAwuHVjt+qd07lPLzEnM6BgHadIqgmraCqPoNF9ARBOxW5kg+XADond/Qd 2xXcbM1saFJtl/rQhuBySGXm7asJKifkvX64u35KJl0MBH/7l6NQ8kQQhkmzFUQvTaG/ JJmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:references:user-agent:from:to:cc:subject :in-reply-to:date:message-id:mime-version; bh=8jt+rpkdG0z4c/MRTel2Be5Iqto3ThzIiveZzeP1WMY=; b=oo9wDFkoNQ08UBDryQcx53Kf23H3DlKd8awrmI07ANCHPGPWUdsLnkmsZKEnGZ8oyF wESVtIJfzPsEZKlj+LS4SlMJF/v4KSLSbja5ckIaCSBQE5E+WA3z+he4e6O0EVUtRFeQ aRcO1Vb9sxQWzHZkhtxt0pmarqzR4DTLlFQXjnHL38XaZWbDrzvg6w/T6iGzyXL82v/w Vr/rhll4aQLo4s3YU5bCdFCX3aDVsapYKfWA1FDj5E2kX70Nemzbd4GL9tyTv7IiZ2Jk rbq4koPQCF/JFQmhdyGZYV1cF/5wuVAaiPuxW7Wc91C7l4b1jihXegHQBvpaq8q9pger BNWQ== X-Gm-Message-State: AOAM533cy55+EmmfKtggpQceMU37aHREnLR1ghDtkhNitwUb4V9CMtYg WEwYEKnw71R1Zt08us+CiJwrjx0QX/E= X-Google-Smtp-Source: ABdhPJzSo+vk1WdhiI+intojSstIpcbKaesJ4nhCpVjw5bNfQtNa9m9IS7C2tZnwPExcIzAQpY+xMg== X-Received: by 2002:a63:e657:: with SMTP id p23mr14729666pgj.116.1603743967844; Mon, 26 Oct 2020 13:26:07 -0700 (PDT) Received: from geus3064linuxwsm (97-126-80-198.tukw.qwest.net. [97.126.80.198]) by smtp.gmail.com with ESMTPSA id d186sm12695007pfa.76.2020.10.26.13.26.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Oct 2020 13:26:07 -0700 (PDT) References: <68dc1ea1-52e8-7d9e-fb2d-bcf08c111eca@intrepidus.pl> <874kno7w3v.fsf@gnu.org> <87k0vdkz7c.fsf@gmail.com> <87sga13w62.fsf@nicolasgoaziou.fr> <87r1plj71v.fsf@gmail.com> <87mu093qgn.fsf@nicolasgoaziou.fr> <87o8kpj5mu.fsf@gmail.com> User-agent: mu4e 1.4.3; emacs 27.1 From: Ken Mankoff To: Tom Gillespie Subject: Re: official orgmode parser In-reply-to: Date: Mon, 26 Oct 2020 13:26:06 -0700 Message-ID: <874kmgka3l.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2607:f8b0:4864:20::432; envelope-from=mankoff@gmail.com; helo=mail-pf1-x432.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Bastien , =?utf-8?Q?Przemys=C5=82aw_Kami=C5=84ski?= , emacs-orgmode , Nicolas Goaziou Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=fail (rsa verify failed) header.d=gmail.com header.s=20161025 header.b=ZBEiycHt; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Spam-Score: 0.09 X-TUID: aMLyUHfiEpU9 On 2020-10-26 at 10:59 -07, Tom Gillespie wrote... > You can identify headlines, but you can't identify nesting level; Do you need to? This is valid as an entire Org file, I think: *** foo * bar ***** baz And that can be represented in EBNF. I'm not aware of places where behavior is indent-level specific, except inline tasks, and that edge case can be represented. > There is a similar issue with the indentation level in > order to correctly interpret plain lists. list ::= ('+' string newline)+ sublist? sublist ::= (indent list)+ I think this captures lists? > Another example of something that requires a stack is the greater > blocks, where you have #+begin_{name} and #+end_{name}, and the names > must match. Definitely not able to be represented in EBNF, unless as you say {name} is a limited vocabulary. -k.