From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id qD5WBHJHSmHc+wAAgWs5BA (envelope-from ) for ; Tue, 21 Sep 2021 22:58:26 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id 2GZ7O3FHSmElJAAA1q6Kng (envelope-from ) for ; Tue, 21 Sep 2021 20:58:25 +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 6B7DB2CEAE for ; Tue, 21 Sep 2021 22:58:25 +0200 (CEST) Received: from localhost ([::1]:40940 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mSmqO-0001y2-Hb for larch@yhetil.org; Tue, 21 Sep 2021 16:58:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:47624) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mSmRv-0002kN-Qq for emacs-orgmode@gnu.org; Tue, 21 Sep 2021 16:33:07 -0400 Received: from mail-wr1-x434.google.com ([2a00:1450:4864:20::434]:43821) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mSmRu-00015Y-2L for emacs-orgmode@gnu.org; Tue, 21 Sep 2021 16:33:07 -0400 Received: by mail-wr1-x434.google.com with SMTP id w17so307196wrv.10 for ; Tue, 21 Sep 2021 13:33:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=mNgl25wWrx1XsEfBiJwvn/uxOP//lYQ8HVKTjgagJYk=; b=JRey/DZJ8iQ7+I3Qn745B1ksFSPVUKKbGTpj8V3s3fY/LrZHsafHW3regbDIpyp8s9 3a9OfcRJ9311mxKMu+8f+iQVLkHnpmkoiyGVRJSsd/iBwqTNx1x9cWAwo8+6qL9P35EL prLyzLGTCv/WapPzi2d+KXQQD3/S6RA9yM8pE9ZvvHcqYzUiCCHiiOiK8iZgoveRekUe LXMXYoOqab2q5xdADIpVS6PBbkM5BhgtyKv3zGmAv1OD84KZgikh180kjr6PrE+GWHfj 1PSr+qD3kbcq8oOjCTQVHzU7TNNvfdgEKSnj2kN5UvNcILFiVGF6WRQ5/96iLvEd6Lm9 2i/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=mNgl25wWrx1XsEfBiJwvn/uxOP//lYQ8HVKTjgagJYk=; b=xRS2kODIjcajpW85Q7VjGWHAs7lQ33056imlWKNQvlSUWHApUIDkQcbWGQY4bEJBcD 9uY9mLg/UK1nD1AkxQ4gCiKJV+/59YSdfKM6roUgn9ZyEu7MdhOSJRhk+SCXu4XCeJi2 Ls6E/UbNUoDCROWJ2hC80uOfDanLNtdZ70p513Txusffx8e0S/+Ui4rOnT98svk9aB35 DdZkoGyWWM25HNFFiBT5ozszTr/jyndu59mW5UnbfnEpCRldNKf0dp8fKzgXvBKHdzb1 ozjsNB8FzpXLPwHJdIRI4zxAx0//DF+iGBZE+QZ13Kuzu/KVYJeWhRB+YRaP/gZZrzEK ubqg== X-Gm-Message-State: AOAM5335WyGQBqWr5CE0IOjcxvOKkImXSfx8oopvq+vfUmhEF2I9UZwn u9owlnHKO6xF6JzD3oIIzJUJ0SPf8R0IovYn/ew= X-Google-Smtp-Source: ABdhPJwM8hNTkJY7RoY0G0Zzz/XEP6dRGyUZ3kGEm1HhZbJfZr6Aa6jub8KS28JZgIW/vfaGhcKkGMTy6LYK7eUccO0= X-Received: by 2002:a05:6000:1379:: with SMTP id q25mr36755032wrz.280.1632256383188; Tue, 21 Sep 2021 13:33:03 -0700 (PDT) MIME-Version: 1.0 References: <87h7ee5q8u.fsf@gmail.com> <87o88mqd6o.fsf@localhost> In-Reply-To: <87o88mqd6o.fsf@localhost> From: Tom Gillespie Date: Tue, 21 Sep 2021 13:32:51 -0700 Message-ID: Subject: Re: Org lint and named source blocks To: Ihor Radchenko Content-Type: text/plain; charset="UTF-8" Received-SPF: pass client-ip=2a00:1450:4864:20::434; envelope-from=tgbugs@gmail.com; helo=mail-wr1-x434.google.com 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: Dominik Schrempf , Emacs Org Mode Mailing List Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1632257905; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=mNgl25wWrx1XsEfBiJwvn/uxOP//lYQ8HVKTjgagJYk=; b=MsoyVupyIg9lKTtHJoosrzklu3U+H2FK5TYK1zLpDduq6+JOMkX1IubNbsB/DOCw0HgE3J tvFTAPG6UFRELT9YOO99EL7O7pa0h1aUGIj0VEOmOxxYD3YXrl7YFgrsiR6Pzpn3FyyHvR MScw29bK5ejgz3KiQnlcL9xiqivfMTw+oMJ2Vh4ILUMp73oFl+t/W4E8rFFbqxAUgX2MEC sthjcgOpRUXg8Qhw0CMJMWp6wVaZ3igsyG56ouxugKcOJYNn0GLEnxOl0w0annhDrQusNG Kv647c+nLSo3YjLslL9AcXO1SOlLac6I+Hgx7xdBTLPDDg1kGUjsuBhzubsMqw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1632257905; a=rsa-sha256; cv=none; b=aOIpDTBcyKYI5dQvojuqoNzsC49xm4drdGLlMvfUIX5KgQigENA0gOZJdmZ2+Zo9ADcOwL vOGfkSIstiayrx6UeoNNIHS6E4lQWht77o8mNX80RNmaPpr1rESOt2eMyEsaK40qOosL8w qjwwW0UnzS/BMqLlHGTlbzezghdj3NNARLebjQQgwILkK6/q2yQ/YNdfBwIZgeHWVU1fi/ PYkveS0UnEXWKwoxY/JhKU7rVfuflB0BTog0V4C2jLwiQHwpRRcMzh914vX1T7XMsDnVff LKU9Vim+n8ThtlHQjfWR9ksIz6rlsY0EmSsj39u3sQCTMcuIqyboodzzCQrpbQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20210112 header.b="JRey/DZJ"; dmarc=pass (policy=none) header.from=gmail.com; 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-Migadu-Spam-Score: -3.09 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20210112 header.b="JRey/DZJ"; dmarc=pass (policy=none) header.from=gmail.com; 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-Migadu-Queue-Id: 6B7DB2CEAE X-Spam-Score: -3.09 X-Migadu-Scanner: scn0.migadu.com X-TUID: t3Zo2i1HAS6Z > Should we allow syntax like #+KEYWORD:value to be correct or do we > require a whitespace/space after colon all the time? The spec as written is ambiguous/silent on this issue. In my work on laundry tokenizer and grammar I have found keyword syntax to be a thorny issue, and I strongly suggest that for the time being we either make no ruling on this or we state that the colon that ends the keyword should be followed by a space as a precautionary measure. The safe thing to do is to always require whitespace after the colon because it guarantees correct interpretation. Requiring whitespace after the colon simplifies the grammar, however it means that you can't compact keyword lines, and it induces an annoying failure mode where missing spaces are no longer keywords. However, it is technically possible to make keywords work without the whitespace, so long as there is at least one whitespace prior to the next colon (but not contained in square brackets, e.g. #+key:lol[ a b c ]:value is a well formed keyword under a slighly generalized grammar). The problem is that we would like to make keyword syntax fully closed, and I need a bit more time to get that worked out before any definitive conclusions are drawn. The complexity of the generalized keyword syntax can be seen here https://github.com/tgbugs/laundry/blob/5a396bef98d9a3cd9ee929f21cd47612dd6cb1ac/laundry/lex-abbrev.rkt#L107-L249 Best, Tom