mirror of
https://github.com/Funkoala14/knowledgebase_law.git
synced 2025-06-08 20:48:15 +08:00
46 lines
1.0 KiB
JavaScript
46 lines
1.0 KiB
JavaScript
'use strict'
|
|
|
|
module.exports = smalltalk
|
|
smalltalk.displayName = 'smalltalk'
|
|
smalltalk.aliases = []
|
|
function smalltalk(Prism) {
|
|
Prism.languages.smalltalk = {
|
|
comment: {
|
|
pattern: /"(?:""|[^"])*"/,
|
|
greedy: true
|
|
},
|
|
char: {
|
|
pattern: /\$./,
|
|
greedy: true
|
|
},
|
|
string: {
|
|
pattern: /'(?:''|[^'])*'/,
|
|
greedy: true
|
|
},
|
|
symbol: /#[\da-z]+|#(?:-|([+\/\\*~<>=@%|&?!])\1?)|#(?=\()/i,
|
|
'block-arguments': {
|
|
pattern: /(\[\s*):[^\[|]*\|/,
|
|
lookbehind: true,
|
|
inside: {
|
|
variable: /:[\da-z]+/i,
|
|
punctuation: /\|/
|
|
}
|
|
},
|
|
'temporary-variables': {
|
|
pattern: /\|[^|]+\|/,
|
|
inside: {
|
|
variable: /[\da-z]+/i,
|
|
punctuation: /\|/
|
|
}
|
|
},
|
|
keyword: /\b(?:new|nil|self|super)\b/,
|
|
boolean: /\b(?:false|true)\b/,
|
|
number: [
|
|
/\d+r-?[\dA-Z]+(?:\.[\dA-Z]+)?(?:e-?\d+)?/,
|
|
/\b\d+(?:\.\d+)?(?:e-?\d+)?/
|
|
],
|
|
operator: /[<=]=?|:=|~[~=]|\/\/?|\\\\|>[>=]?|[!^+\-*&|,@]/,
|
|
punctuation: /[.;:?\[\](){}]/
|
|
}
|
|
}
|