You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
1.0 KiB
50 lines
1.0 KiB
3 years ago
|
/*
|
||
|
Language: Leaf
|
||
|
Author: Hale Chan <halechan@qq.com>
|
||
|
Description: Based on the Leaf reference from https://vapor.github.io/documentation/guide/leaf.html.
|
||
|
*/
|
||
|
|
||
|
function leaf(hljs) {
|
||
|
return {
|
||
|
name: 'Leaf',
|
||
|
contains: [
|
||
|
{
|
||
|
className: 'function',
|
||
|
begin: '#+' + '[A-Za-z_0-9]*' + '\\(',
|
||
|
end: / \{/,
|
||
|
returnBegin: true,
|
||
|
excludeEnd: true,
|
||
|
contains: [
|
||
|
{
|
||
|
className: 'keyword',
|
||
|
begin: '#+'
|
||
|
},
|
||
|
{
|
||
|
className: 'title',
|
||
|
begin: '[A-Za-z_][A-Za-z_0-9]*'
|
||
|
},
|
||
|
{
|
||
|
className: 'params',
|
||
|
begin: '\\(',
|
||
|
end: '\\)',
|
||
|
endsParent: true,
|
||
|
contains: [
|
||
|
{
|
||
|
className: 'string',
|
||
|
begin: '"',
|
||
|
end: '"'
|
||
|
},
|
||
|
{
|
||
|
className: 'variable',
|
||
|
begin: '[A-Za-z_][A-Za-z_0-9]*'
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
};
|
||
|
}
|
||
|
|
||
|
module.exports = leaf;
|