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

75 lines
2.1 KiB
JavaScript

'use strict'
module.exports = latex
latex.displayName = 'latex'
latex.aliases = ['tex', 'context']
function latex(Prism) {
;(function (Prism) {
var funcPattern = /\\(?:[^a-z()[\]]|[a-z*]+)/i
var insideEqu = {
'equation-command': {
pattern: funcPattern,
alias: 'regex'
}
}
Prism.languages.latex = {
comment: /%.*/,
// the verbatim environment prints whitespace to the document
cdata: {
pattern:
/(\\begin\{((?:lstlisting|verbatim)\*?)\})[\s\S]*?(?=\\end\{\2\})/,
lookbehind: true
},
/*
* equations can be between $$ $$ or $ $ or \( \) or \[ \]
* (all are multiline)
*/
equation: [
{
pattern:
/\$\$(?:\\[\s\S]|[^\\$])+\$\$|\$(?:\\[\s\S]|[^\\$])+\$|\\\([\s\S]*?\\\)|\\\[[\s\S]*?\\\]/,
inside: insideEqu,
alias: 'string'
},
{
pattern:
/(\\begin\{((?:align|eqnarray|equation|gather|math|multline)\*?)\})[\s\S]*?(?=\\end\{\2\})/,
lookbehind: true,
inside: insideEqu,
alias: 'string'
}
],
/*
* arguments which are keywords or references are highlighted
* as keywords
*/
keyword: {
pattern:
/(\\(?:begin|cite|documentclass|end|label|ref|usepackage)(?:\[[^\]]+\])?\{)[^}]+(?=\})/,
lookbehind: true
},
url: {
pattern: /(\\url\{)[^}]+(?=\})/,
lookbehind: true
},
/*
* section or chapter headlines are highlighted as bold so that
* they stand out more
*/
headline: {
pattern:
/(\\(?:chapter|frametitle|paragraph|part|section|subparagraph|subsection|subsubparagraph|subsubsection|subsubsubparagraph)\*?(?:\[[^\]]+\])?\{)[^}]+(?=\})/,
lookbehind: true,
alias: 'class-name'
},
function: {
pattern: funcPattern,
alias: 'selector'
},
punctuation: /[[\]{}&]/
}
Prism.languages.tex = Prism.languages.latex
Prism.languages.context = Prism.languages.latex
})(Prism)
}