Файл: error-kitty/node_modules/highlight.js/lib/languages/asciidoc.js
Строк: 161
<?php
module.exports = function(hljs) {
return {
contains: [
// block comment
{
className: 'comment',
begin: '^/{4,}\n',
end: '\n/{4,}$',
// can also be done as...
//begin: '^/{4,}$',
//end: '^/{4,}$',
relevance: 10
},
// line comment
{
className: 'comment',
begin: '^//',
end: '$',
relevance: 0
},
// title
{
className: 'title',
begin: '^\.\w.*$'
},
// example, admonition & sidebar blocks
{
begin: '^[=\*]{4,}\n',
end: '\n^[=\*]{4,}$',
relevance: 10
},
// headings
{
className: 'header',
begin: '^(={1,5}) .+?( \1)?$',
relevance: 10
},
{
className: 'header',
begin: '^[^\[\]\n]+?\n[=\-~\^\+]{2,}$',
relevance: 10
},
// document attributes
{
className: 'attribute',
begin: '^:.+?:',
end: '\s',
excludeEnd: true,
relevance: 10
},
// block attributes
{
className: 'attribute',
begin: '^\[.+?\]$',
relevance: 0
},
// quoteblocks
{
className: 'blockquote',
begin: '^_{4,}\n',
end: '\n_{4,}$',
relevance: 10
},
// listing and literal blocks
{
className: 'code',
begin: '^[\-\.]{4,}\n',
end: '\n[\-\.]{4,}$',
relevance: 10
},
// passthrough blocks
{
begin: '^\+{4,}\n',
end: '\n\+{4,}$',
contains: [
{
begin: '<', end: '>',
subLanguage: 'xml',
relevance: 0
}
],
relevance: 10
},
// lists (can only capture indicators)
{
className: 'bullet',
begin: '^(\*+|\-+|\.+|[^\n]+?::)\s+'
},
// admonition
{
className: 'label',
begin: '^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\s+',
relevance: 10
},
// inline strong
{
className: 'strong',
// must not follow a word character or be followed by an asterisk or space
begin: '\B\*(?![\*\s])',
end: '(\n{2}|\*)',
// allow escaped asterisk followed by word char
contains: [
{
begin: '\\*\w',
relevance: 0
}
]
},
// inline emphasis
{
className: 'emphasis',
// must not follow a word character or be followed by a single quote or space
begin: '\B'(?!['\s])',
end: '(\n{2}|')',
// allow escaped single quote followed by word char
contains: [
{
begin: '\\'\w',
relevance: 0
}
],
relevance: 0
},
// inline emphasis (alt)
{
className: 'emphasis',
// must not follow a word character or be followed by an underline or space
begin: '_(?![_\s])',
end: '(\n{2}|_)',
relevance: 0
},
// inline double smart quotes
{
className: 'smartquote',
begin: "``.+?''",
relevance: 10
},
// inline single smart quotes
{
className: 'smartquote',
begin: "`.+?'",
relevance: 10
},
// inline code snippets (TODO should get same treatment as strong and emphasis)
{
className: 'code',
begin: '(`.+?`|\+.+?\+)',
relevance: 0
},
// indented literal block
{
className: 'code',
begin: '^[ \t]',
end: '$',
relevance: 0
},
// horizontal rules
{
className: 'horizontal_rule',
begin: '^'{3,}[ \t]*$',
relevance: 10
},
// images and links
{
begin: '(link:)?(http|https|ftp|file|irc|image:?):\S+\[.*?\]',
returnBegin: true,
contains: [
{
//className: 'macro',
begin: '(link|image:?):',
relevance: 0
},
{
className: 'link_url',
begin: '\w',
end: '[^\[]+',
relevance: 0
},
{
className: 'link_label',
begin: '\[',
end: '\]',
excludeBegin: true,
excludeEnd: true,
relevance: 0
}
],
relevance: 10
}
]
};
};
?>