2025-02-28 19:43:11 +08:00

53 lines
1.1 KiB
JavaScript

/*
Language: Parser3
Requires: xml.js
Author: Oleg Volchkov <oleg@volchkov.net>
*/
module.exports = function(hljs){
hljs.LANGUAGES.parser3 = function() {
var COMMENTED_BLOCK = {
begin: '{', end: '}'
};
COMMENTED_BLOCK.contains = [COMMENTED_BLOCK];
return {
defaultMode: {
subLanguage: 'html',
contains: [
{
className: 'comment',
begin: '^#', end: '$'
},
{
className: 'comment',
contains: [COMMENTED_BLOCK],
begin: '\\^rem{', end: '}',
relevance: 10
},
{
className: 'preprocessor',
begin: '^@(?:BASE|USE|CLASS|OPTIONS)$',
relevance: 10
},
{
className: 'title',
begin: '@[\\w\\-]+\\[[\\w^;\\-]*\\](?:\\[[\\w^;\\-]*\\])?(?:.*)$'
},
{
className: 'variable',
begin: '\\$\\{?[\\w\\-\\.\\:]+\\}?'
},
{
className: 'keyword',
begin: '\\^[\\w\\-\\.\\:]+'
},
{
className: 'number',
begin: '\\^#[0-9a-fA-F]+'
},
hljs.C_NUMBER_MODE
]
}
};
}();
};