Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [asciidoc-lang-dev] Markup for nested blocks

> Sylvain wrote:
So, when a parser encounters some metadata before a delimiter, it should
(must?) assume this is the start of a new block. But consider the
following example:

====
a
[example]
====
b
====
c
====

Admittedly, this is getting into some strange corners of AsciiDoc, but you're missing the actual explanation in your disambiguation scenarios (though it's a mix of the first and last one). If the AsciiDoc processor encounters an orphaned block attribute line at the bottom of a document, it just ignores it. Likewise, if it finds one at the bottom of a delimited block, it also ignores it there too. In order words, if an orphaned block attribute line or block anchor is found at the bottom of a leaf (meaning no more content at that nesting level), those lines of metadata are simply ignored.

So what the processor is seeing inside the first example block is:

a
[example]

Try that in a document by itself and you'll see what happens.

In essence, you're correct that the bottom of a leaf (which you could think of as "before a block closing delimiter") is not a valid location for block metadata.

So Asciidoctor's output is correct in this case.

Best Regards,

-Dan

--
Dan Allen, Vice President | OpenDevise Inc.
Pronouns: he, him, his
Content ∙ Strategy ∙ Community
opendevise.com

Back to the top