emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Lesser blocks allowing unescaped lines


From: Ihor Radchenko
Subject: Re: Lesser blocks allowing unescaped lines
Date: Thu, 05 Oct 2023 10:29:38 +0000

"Tom Alexander" <tom@fizz.buzz> writes:

> This happens in worg at: 
> https://git.sr.ht/~bzg/worg/tree/ba6cda890f200d428a5d68e819eef15b5306055f/exporters/ox-docstrings.org#L2490
>
> The documentation for lesser blocks[1] states:
>> Lines beginning with an asterisk or `#+` must be quoted by a comma (`,*`, 
>> `,#+`).
>
> However, the following test document parses as a lesser block despite 
> containing a line starting with an unescaped #+:
> ```
> #+CATEGORY: foo
> #+begin_src text
> #+CATEGORY: bar
> #+end_src
> ```

Escaping #+ lines is optional and mostly necessary to avoid confusing
parser.
For example, one would need to escape


#+CATEGORY: foo
#+begin_src text
,#+end_src
#+end_src

for obvious reasons.

I have clarified the syntax document in
https://git.sr.ht/~bzg/worg/commit/b1d16efc

Hope the new examples explain better what is going on.

> This test document shows that lines with an unescaped "*" do break up the 
> lesser block:
> ```
> * foo
> #+begin_src text
> * bar
> #+end_src
> ```

Unlike #+ lines, * is _always_ interpreted as a heading. So, it must
always be escaped.

The parser simply removes commas in all the ,* and ,#+ lines.

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]