Yeah, I wouldn’t be really opposed to @name[]()
instead of @name[](){}
if that should emerge as the consensus for a more limited syntax.
That being said, I guess the appeal of {}
to me is that I would like it to become a no-brainer for a user to know what to put in there because it’s the same everywhere. The distinction between values ()
and key-value pairs {}
is also somewhat inspired by ConTeXt (see 1.3 Commands). (btw: ConTeXt, as opposed to LaTeX, also has a notion of a class, so .myClass
isn’t entirely HTML-centric.)
Finally, {}
is probably also easier to implement in parsers. But yes, as you proposed, I guess we could also have all the attributes in the ()
, as in
@video[title](filename.mp4 "autoplay=1")
![altText](myImage.png "title" .myClass width=40 height=50)
### myHeader ### #myId
It works okay for everything but headers (although it still works I guess). But some implementations like Pandoc already make use of {}
for attributes in some places. And my proposed span syntax [text]{.class}
can’t be converted to []()
since that is already taken for links.