Files
Agent-n8n/web_frontend/exhibition-demo/node_modules/highlight.js/lib/languages/smali.js
Yep_Q 1564396449 feat: 完善会展策划演示系统
详细说明:
- 添加了V2版本的工作流页面和结果页面
- 更新了Serena记忆文件
- 添加了详细实施计划文档
- 优化了Vite配置
- 更新了项目文档CLAUDE.md
- 构建了演示系统的dist版本
- 包含了exhibition-demo的完整依赖
2025-09-08 11:15:23 +08:00

136 lines
2.3 KiB
JavaScript

/*
Language: Smali
Author: Dennis Titze <dennis.titze@gmail.com>
Description: Basic Smali highlighting
Website: https://github.com/JesusFreke/smali
*/
function smali(hljs) {
const smali_instr_low_prio = [
'add',
'and',
'cmp',
'cmpg',
'cmpl',
'const',
'div',
'double',
'float',
'goto',
'if',
'int',
'long',
'move',
'mul',
'neg',
'new',
'nop',
'not',
'or',
'rem',
'return',
'shl',
'shr',
'sput',
'sub',
'throw',
'ushr',
'xor'
];
const smali_instr_high_prio = [
'aget',
'aput',
'array',
'check',
'execute',
'fill',
'filled',
'goto/16',
'goto/32',
'iget',
'instance',
'invoke',
'iput',
'monitor',
'packed',
'sget',
'sparse'
];
const smali_keywords = [
'transient',
'constructor',
'abstract',
'final',
'synthetic',
'public',
'private',
'protected',
'static',
'bridge',
'system'
];
return {
name: 'Smali',
contains: [
{
className: 'string',
begin: '"',
end: '"',
relevance: 0
},
hljs.COMMENT(
'#',
'$',
{
relevance: 0
}
),
{
className: 'keyword',
variants: [
{
begin: '\\s*\\.end\\s[a-zA-Z0-9]*'
},
{
begin: '^[ ]*\\.[a-zA-Z]*',
relevance: 0
},
{
begin: '\\s:[a-zA-Z_0-9]*',
relevance: 0
},
{
begin: '\\s(' + smali_keywords.join('|') + ')'
}
]
},
{
className: 'built_in',
variants: [
{
begin: '\\s(' + smali_instr_low_prio.join('|') + ')\\s'
},
{
begin: '\\s(' + smali_instr_low_prio.join('|') + ')((-|/)[a-zA-Z0-9]+)+\\s',
relevance: 10
},
{
begin: '\\s(' + smali_instr_high_prio.join('|') + ')((-|/)[a-zA-Z0-9]+)*\\s',
relevance: 10
}
]
},
{
className: 'class',
begin: 'L[^\(;:\n]*;',
relevance: 0
},
{
begin: '[vp][0-9]+'
}
]
};
}
module.exports = smali;