blob: f22188839e2e87e144083a29e9e10f01d408c447 [file] [log] [blame]
/**
* HTML patterns
*
* @author Craig Campbell
* @version 1.0.7
*/
Rainbow.extend('html', [
{
'name': 'source.php.embedded',
'matches': {
2: {
'language': 'php'
}
},
'pattern': /<\?=?(?!xml)(php)?([\s\S]*?)(\?>)/gm
},
{
'name': 'source.css.embedded',
'matches': {
0: {
'language': 'css'
}
},
'pattern': /<style(.*?)>([\s\S]*?)<\/style>/gm
},
{
'name': 'source.js.embedded',
'matches': {
0: {
'language': 'javascript'
}
},
'pattern': /<script(?! src)(.*?)>([\s\S]*?)<\/script>/gm
},
{
'name': 'comment.html',
'pattern': /<\!--[\S\s]*?-->/g
},
{
'matches': {
1: 'support.tag.open',
2: 'support.tag.cclose'
},
'pattern': /(<)|(\/?\??>)/g
},
{
'name': 'support.tag',
'matches': {
1: 'support.tag',
2: 'support.tag.special',
3: 'support.tag-name'
},
'pattern': /(<\??)(\/|\!?)(\w+)/g
},
{
'matches': {
1: 'support.attribute'
},
'pattern': /([a-z-]+)(?=\=)/gi
},
{
'matches': {
1: 'support.operator',
2: 'string.quote',
3: 'string.value',
4: 'string.quote'
},
'pattern': /(=)('|")(.*?)(\2)/g
},
{
'matches': {
1: 'support.operator',
2: 'support.value'
},
'pattern': /(=)([a-zA-Z\-0-9]*)\b/g
},
{
'matches': {
1: 'support.attribute'
},
'pattern': /\s(\w+)(?=\s|>)(?![\s\S]*<)/g
}
], true);