Avocet, A Structured Text Language

The aim is to come up with a very simple text format that requires minimal intervention from the user and has very little in the way of features. Even headings shouldn't be specially marked in some way; they should be gagueable from the flow of the text. Use inherent metadata!

Paragraphs are as per the above. Lists are as follows:

Preformatted sections are those that are preceded with a colon (or a colon and any number of tabs and spaces), except in the case of where what follows is a list. They end with a single blank line:

def example(): 
   print "An example!"

Links and headings are the most difficult things. Headings can be done by detecting capitalisation. Links can either be done {http://infomesh.net/pwyky/ Pwyky} style, or perhaps using something more akin to Markdown.

Rules for headings:

@@ Could do analysis of existing h1-h6 elements contained in text.

Anything not using the \{http://.*|U+[0-9A-F]{4}|U+[0-9A-F]{6}\} pattern can just be sic, so that there are no worries about { escaping. Hmm, should probably allow {2} too.

About Avocet

The name is from a thread on the Swhack Mailing List:
http://lists.swhack.com/swhack/2006-May/000075.html