Jeff Atwood recently proposed that Markdown users come together and create a unified specification. While I do think a unified specification would be useful I do not think Markdown is the right syntax. I have used it and many of the other structured text markup alternatives. For programmer types and anyone else used to machine readable documents, structured text markup is a great way to reduce the effort needed to get content on the page. However, HTML is a great way to reduce the effort needed too. The problem with both is that Markdown is too weak a syntax and HTML is too strong of a one. We need a middle ground.
Here is a proposal for a middle ground. I am going to call this syntax Permatext:
- A valid HTML document is a valid Permatext document.
- HTML class and style information is discarded by a Permatext processor.
- Any HTML end tags can be dropped if it is clear from the context that the end tag would be used. So, for example, an opening P tag automatically closes the previous P tag. An opening A tag need not use the closing tag if the link's title is a single word. Etc.
- A short closing tag, </>, closes the most recient open tag.
- Text within a code or pre tag need not be XML escaped. However, escaped XML will be honored. That is, if a valid named or numbered entity is found then it is honored. [tricky]
<h1>Lightweight Markup Languages</> <p>According to <i>Wikipedia</>: <blockquote> A <a href="http://is.gd/gns">lightweight markup language</> is a markup language with a simple syntax, designed to be easy for a human to enter with a simple text editor, and easy to read in its raw form. <p>Some examples are: <li>Markdown <li>Textile <li>BBCode <li>Wikipedia Markup should also extend to <i>code</>: <pre> 10 PRINT "I ROCK AT BASIC!" 20 GOTO 10
[NOTE: The A tag is hard to read. Perhaps assume href.]
For all Permatext details see Permatext.info.