Skip to main content

XML Abstract Markup Language

Project description

an easier way for humans to write xml

if a line starts with any xaml component ( % @ . # $ ) that line represents an xml element:

- an element continues until eol, or an unquoted :
- an element can be continued to the next line(s) using unquoted parens

elif a line starts with a “:” it is specifying how the following lines should be interpreted:

- :markdown -> markdown text (not implemented)
- :css -> css styles (not implemented)

elif a line starts with // it is a comment, and will be converted into an xml comment

elif a line starts with a “-” it is Python code that will be run to help generate the final xml output

else the line represents the content of an xml element

xaml components:

- % -> element name
- @ -> name attribute
- . -> class attribute
- # -> id attribute
- $ -> string attribute (_ to ' ' conversion not implemented)

  e.g. %document .bold #doc_1 @AutoBiography $My_Biography ->

  <document class="bold" id="doc_1" name="AutoBiography" string="My Biography"/>

Based on haml [1] but aimed at Python.

Still in its early stages – send email to ethan at stoneleaf dot us if you would like to get involved!

Mercurial repository, wiki, and issue tracker at [2].

[1] http://haml.info/ [2] https://bitbucket.org/stoneleaf/xaml

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page