From: Tom Gillespie <firstname.lastname@example.org> To: Bastien <email@example.com> Cc: emacs-orgmode <firstname.lastname@example.org> Subject: Re: [POLL] Setting `org-adapt-indentation' to nil by default? Date: Sun, 2 May 2021 11:11:19 -0700 [thread overview] Message-ID: <CA+G3_PNQysBX8sSwpr54ZvwOc0Y8gVSK3ixSpa_jwMZT9EZ81w@mail.gmail.com> (raw) In-Reply-To: <email@example.com> Hi Bastien, Strong +1 here. Users can get the same visual effect without materializing the whitespace into the file. Materializing the whitespace causes many potential issues with source blocks for languages that have significant whitespace, issues with #+begin_src and #+end_src having different levels of indentation (still an issue if you want a block in a plain list), weirdness with noweb, obligatory two pass parsing to get the spacing correct in paragraphs, etc. There are many cases where adapting indentation requires the specification of extremely detailed heuristics that must be followed exactly in order to get at least a consistent parse of a source block. The only sane way forward for a language specification would be to avoid that leading whitespace or avoid trying to specify the interpretation of source blocks in contexts with leading whitespace (src blocks in plain lists may come back to haunt us here). Setting org-adapt-indentation to nil by default would be a major step toward resolving these issues and frankly I couldn't ask for more. Best! Tom PS I have included some notes on the worg/dev/org-syntax.org file that I wrote while working on the formal grammar. I would qualify what I wrote slightly to state that users could in principle have leading whitespace before source blocks but that the behavior of org in such cases would be left unspecified in the not quite nasal demons sense, but that it might be better to have the behavior described below with a note that no attempt to deal with correctly preserving leading whitespace is required, user beware. A final aside: maybe plain lists could have the #+begin_ and #+end_ lines indented to the level of the plain list but maybe not the body? ----------------------------- Eliminate leading whitespace in the canonical representation. There are other ways that make it possible to have the indentation visibility without adding massive complexity to the implementation. The existing implementation can continue to support it, but any other implementation SHALL convert indented sections to the canonical form where there is NO leading whitespace. This eliminates the problem of significant whitespace for everything except plain lists. Users will need a migration path and this will require extensive testing to make sure that the tooling catches as many of the issues as possible. However, the benefits in the long run are vastly reduced complexity without all the risks of accidentally botching an indent somewhere.
next prev parent reply other threads:[~2021-05-02 18:14 UTC|newest] Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-05-02 6:09 Bastien 2021-05-02 7:13 ` Tim Cross 2021-05-02 8:06 ` Jean Louis 2021-05-02 8:47 ` Tim Cross 2021-05-02 20:18 ` Jean Louis 2021-05-02 22:25 ` Tim Cross 2021-05-03 7:41 ` Kévin Le Gouguec 2021-05-03 10:15 ` Jean Louis 2021-05-02 8:56 ` Bastien 2021-05-02 8:59 ` Bastien 2021-05-02 20:24 ` Jean Louis 2021-05-02 20:21 ` Jean Louis 2021-05-02 20:22 ` Jean Louis 2021-05-02 10:07 ` Eric S Fraga 2021-05-02 15:01 ` Detlef Steuer 2021-05-02 15:44 ` Colin Baxter 2021-05-02 15:46 ` Amin Bandali 2021-05-02 18:11 ` Tom Gillespie [this message] 2021-05-02 18:19 ` Nicolas Goaziou 2021-05-02 18:48 ` Tom Gillespie 2021-05-02 19:20 ` Nicolas Goaziou 2021-05-03 10:11 ` Dr. Arne Babenhauserheide 2021-05-02 18:31 ` Jim Porter 2021-05-02 20:44 ` Kévin Le Gouguec 2021-05-03 7:33 ` Kévin Le Gouguec 2021-05-03 8:06 ` Bastien 2021-05-03 12:53 ` Kévin Le Gouguec 2021-05-03 13:40 ` Bastien 2021-05-03 14:57 ` Kévin Le Gouguec 2021-05-06 14:50 ` Maxim Nikulin 2021-05-15 20:51 ` Bastien 2021-05-19 17:02 ` [PATCH] etc/ORG-NEWS: Suggest against disabling `electric-indent-mode' Maxim Nikulin 2021-05-20 12:25 ` Bastien 2021-05-19 17:08 ` [PATCH] org-faq.org: Expand "What is the best setup for indenting?" Maxim Nikulin 2021-05-19 18:06 ` Greg Minshall 2021-05-20 15:57 ` Maxim Nikulin 2021-05-21 2:45 ` Greg Minshall 2021-05-27 16:11 ` Maxim Nikulin 2021-05-21 9:38 ` Bastien 2021-05-20 12:28 ` Bastien 2021-05-19 17:08 ` [POLL] Setting `org-adapt-indentation' to nil by default? Maxim Nikulin 2021-05-02 21:07 ` Jack Kamm 2021-05-05 7:54 ` Bastien 2021-05-06 14:13 ` Bastien 2021-05-09 16:42 ` Kévin Le Gouguec 2021-05-15 12:46 ` Bastien
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style List information: https://www.orgmode.org/ * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=CA+G3_PNQysBX8sSwpr54ZvwOc0Y8gVSK3ixSpa_jwMZT9EZ81w@mail.gmail.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --subject='Re: [POLL] Setting `org-adapt-indentation'\'' to nil by default?' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Code repositories for project(s) associated with this inbox: https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).