Files
Agent-n8n/backups/exhibition-demo-backup-20250928-210916/node_modules/refractor/lang/excel-formula.js
Yep_Q 67f5dfbe50 feat: 实现多订单班支持系统
主要功能:
- 修改RequirementModal支持12个订单班选择
- 添加OrderClassIconMap图标映射组件
- Store中添加selectedOrderClass状态管理
- WorkflowPage支持传递orderClass参数
- web_result添加URL参数切换功能
- 创建order-class-handler.js动态处理页面主题

技术改进:
- 创建软链接关联订单班数据目录
- 生成wenlu.json和food.json数据结构
- 删除重复的web_result目录
- 添加测试页面test-order-class.html

影响范围:
- 展会策划系统现支持12个订单班
- 结果展示页面自动适配不同订单班主题
- 用户可选择不同行业生成对应方案

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-29 10:02:15 +08:00

74 lines
2.1 KiB
JavaScript

'use strict'
module.exports = excelFormula
excelFormula.displayName = 'excelFormula'
excelFormula.aliases = []
function excelFormula(Prism) {
Prism.languages['excel-formula'] = {
comment: {
pattern: /(\bN\(\s*)"(?:[^"]|"")*"(?=\s*\))/i,
lookbehind: true,
greedy: true
},
string: {
pattern: /"(?:[^"]|"")*"(?!")/,
greedy: true
},
reference: {
// https://www.ablebits.com/office-addins-blog/2015/12/08/excel-reference-another-sheet-workbook/
// Sales!B2
// 'Winter sales'!B2
// [Sales.xlsx]Jan!B2:B5
// D:\Reports\[Sales.xlsx]Jan!B2:B5
// '[Sales.xlsx]Jan sales'!B2:B5
// 'D:\Reports\[Sales.xlsx]Jan sales'!B2:B5
pattern:
/(?:'[^']*'|(?:[^\s()[\]{}<>*?"';,$&]*\[[^^\s()[\]{}<>*?"']+\])?\w+)!/,
greedy: true,
alias: 'string',
inside: {
operator: /!$/,
punctuation: /'/,
sheet: {
pattern: /[^[\]]+$/,
alias: 'function'
},
file: {
pattern: /\[[^[\]]+\]$/,
inside: {
punctuation: /[[\]]/
}
},
path: /[\s\S]+/
}
},
'function-name': {
pattern: /\b[A-Z]\w*(?=\()/i,
alias: 'keyword'
},
range: {
pattern:
/\$?\b(?:[A-Z]+\$?\d+:\$?[A-Z]+\$?\d+|[A-Z]+:\$?[A-Z]+|\d+:\$?\d+)\b/i,
alias: 'property',
inside: {
operator: /:/,
cell: /\$?[A-Z]+\$?\d+/i,
column: /\$?[A-Z]+/i,
row: /\$?\d+/
}
},
cell: {
// Excel is case insensitive, so the string "foo1" could be either a variable or a cell.
// To combat this, we match cells case insensitive, if the contain at least one "$", and case sensitive otherwise.
pattern: /\b[A-Z]+\d+\b|\$[A-Za-z]+\$?\d+\b|\b[A-Za-z]+\$\d+\b/,
alias: 'property'
},
number: /(?:\b\d+(?:\.\d+)?|\B\.\d+)(?:e[+-]?\d+)?\b/i,
boolean: /\b(?:FALSE|TRUE)\b/i,
operator: /[-+*/^%=&,]|<[=>]?|>=?/,
punctuation: /[[\]();{}|]/
}
Prism.languages['xlsx'] = Prism.languages['xls'] =
Prism.languages['excel-formula']
}