详细说明: - 添加了V2版本的工作流页面和结果页面 - 更新了Serena记忆文件 - 添加了详细实施计划文档 - 优化了Vite配置 - 更新了项目文档CLAUDE.md - 构建了演示系统的dist版本 - 包含了exhibition-demo的完整依赖
47 lines
1.3 KiB
JavaScript
47 lines
1.3 KiB
JavaScript
'use strict'
|
|
var refractorC = require('./c.js')
|
|
module.exports = bison
|
|
bison.displayName = 'bison'
|
|
bison.aliases = []
|
|
function bison(Prism) {
|
|
Prism.register(refractorC)
|
|
Prism.languages.bison = Prism.languages.extend('c', {})
|
|
Prism.languages.insertBefore('bison', 'comment', {
|
|
bison: {
|
|
// This should match all the beginning of the file
|
|
// including the prologue(s), the bison declarations and
|
|
// the grammar rules.
|
|
pattern: /^(?:[^%]|%(?!%))*%%[\s\S]*?%%/,
|
|
inside: {
|
|
c: {
|
|
// Allow for one level of nested braces
|
|
pattern: /%\{[\s\S]*?%\}|\{(?:\{[^}]*\}|[^{}])*\}/,
|
|
inside: {
|
|
delimiter: {
|
|
pattern: /^%?\{|%?\}$/,
|
|
alias: 'punctuation'
|
|
},
|
|
'bison-variable': {
|
|
pattern: /[$@](?:<[^\s>]+>)?[\w$]+/,
|
|
alias: 'variable',
|
|
inside: {
|
|
punctuation: /<|>/
|
|
}
|
|
},
|
|
rest: Prism.languages.c
|
|
}
|
|
},
|
|
comment: Prism.languages.c.comment,
|
|
string: Prism.languages.c.string,
|
|
property: /\S+(?=:)/,
|
|
keyword: /%\w+/,
|
|
number: {
|
|
pattern: /(^|[^@])\b(?:0x[\da-f]+|\d+)/i,
|
|
lookbehind: true
|
|
},
|
|
punctuation: /%[%?]|[|:;\[\]<>]/
|
|
}
|
|
}
|
|
})
|
|
}
|