mindoc/static/editor.md/lib/highlight/languages/capnproto.js
lifei6671 327d6fb8d8 feat:1、修复无数据时报错的问题。
2、新增自定义代码着色格式
3、新增自动加载配置文件
2018-08-07 17:19:56 +08:00

56 lines
1.4 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
Language: Capn Proto
Author: Oleg Efimov <efimovov@gmail.com>
Description: Capn Proto message definition format
Category: protocols
*/
function(hljs) {
return {
aliases: ['capnp'],
keywords: {
keyword:
'struct enum interface union group import using const annotation extends in of on as with from fixed',
built_in:
'Void Bool Int8 Int16 Int32 Int64 UInt8 UInt16 UInt32 UInt64 Float32 Float64 ' +
'Text Data AnyPointer AnyStruct Capability List',
literal:
'true false'
},
contains: [
hljs.QUOTE_STRING_MODE,
hljs.NUMBER_MODE,
hljs.HASH_COMMENT_MODE,
{
className: 'meta',
begin: /@0x[\w\d]{16};/,
illegal: /\n/
},
{
className: 'symbol',
begin: /@\d+\b/
},
{
className: 'class',
beginKeywords: 'struct enum', end: /\{/,
illegal: /\n/,
contains: [
hljs.inherit(hljs.TITLE_MODE, {
starts: {endsWithParent: true, excludeEnd: true} // hack: eating everything after the first title
})
]
},
{
className: 'class',
beginKeywords: 'interface', end: /\{/,
illegal: /\n/,
contains: [
hljs.inherit(hljs.TITLE_MODE, {
starts: {endsWithParent: true, excludeEnd: true} // hack: eating everything after the first title
})
]
}
]
};
}