Proposal for meta-data (third revision)

Andrea Censi andrea at censi.org
Wed Jan 10 16:09:52 EST 2007


Hello again!

This is the revised revised revised proposal:

http://maruku.rubyforge.org/proposal.md
http://maruku.rubyforge.org/proposal.html
http://maruku.rubyforge.org/proposal.pdf

The main change was to use an opening string of brace+colon "{:" to
not lock-up the precious "{" forever, so that in the future one could
think of using the braces also for other purposes.

Changes were:

* Changed the syntax for compatibility with a future extension mechanism.

The first character in the curly braces must be a colon, optionally
followed by a space:

{: ref .class #id}

The old syntax was `{ref .class #id}`.

For ALDs, the new syntax is:

{:ref_id: key=val .class #id }

instead of:

{ref_id}: key=val .class #id

Converters that don't use this syntax may just ignore everything
which is in curly braces and starts with ":".

For regexp-based interpreters, this is the regular expression to
get rid of this stuff: `/\{:(\\\}|[^\}])*\}/`. Just do a
`gsub` with the empty
string, and you are done.

* IAL can be put both *before* and *after* the element.
There is no ambiguity as a blank line is needed between elements:

Paragraph 1

{:par2}
Paragraph 2

is equivalent to:

Paragraph 1

Paragraph 2
{:par2}

* Simplified rules for escaping.


--
Andrea Censi
"Life is too important to be taken seriously" (Oscar Wilde)
Web: http://www.dis.uniroma1.it/~censi


More information about the Markdown-Discuss mailing list