Some days ago I discovered that an HTML tag can have attributes whose values span multiple lines. This is very useful when the value is a piece of javascript code, which in fact is immune to white space.
The HTML recipe I bundled to Chili 1.5 is a bit wrong, though, because it doesn’t consider that possibility. This is one that does:
/*
===============================================================================
Chili Recipe for the HTML language
...............................................................................
Version: 1.5a - 2007/02 - http://noteslog.com/chili/
-------------------------------------------------------------------------------
Copyright (c) 2006 Andrea Ercolino
http://www.opensource.org/licenses/mit-license.php
===============================================================================
*/
{
steps: {
mlcom : { exp: /<!--(?:.|n)*?-->/ }
, tag : { exp: /(?:<w+)|(?:>)|(?:</w+>)|(?:/>)/ }
, aname : { exp: /s+w+(?=s*=)/ }
, avalue: { exp: /(["'])(?:(?:[^1\]*?(?:11|\.))*[^1\]*?)1/ }
, entity: { exp: /&[w#]+?;/ }
}
}