When I wrote this proposal, I was (and still am) on the fence on whether the attributes should come before or after paragraphs.
We have mixed precedents: in fenced block quotes it’s before:
``` {.python}
x=1
```
while in headings it’s after:
# my title {.myclass}
But you people have certainly made good argument in favour of having them come before. Especially:
Regarding:
I thought this could be resolved by requiring the attributes to be on their own line. But it may well be that it’s easier to parse if the attributes come at the beginning of the block.
Currently, there isn’t any. Commonmark hasn’t even reached 1.0 due to some edge cases that need to be resolved. That being said, it’s certainly a valuable forum to have different implementers discuss pros and cons of future extension syntax.
Btw., if you’re interested to see what happens if you bolt-on attributes and some other pandoc extensions on the token-based parser of markdown-it.js (on a least-effort basis), feel free to play around with this bundle of markdown-it plugins: GitHub - mb21/markdown-it-pandoc: Package bundling a few markdown-it plugins to approximate pandoc flavoured markdown.