32 lines
722 B
JavaScript
32 lines
722 B
JavaScript
Prism.languages.smalltalk = {
|
|
'comment': /"(?:""|[^"])*"/,
|
|
'character': {
|
|
pattern: /\$./,
|
|
alias: 'string'
|
|
},
|
|
'string': /'(?:''|[^'])*'/,
|
|
'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(?:nil|true|false|self|super|new)\b/,
|
|
'number': [
|
|
/\d+r-?[\dA-Z]+(?:\.[\dA-Z]+)?(?:e-?\d+)?/,
|
|
/\b\d+(?:\.\d+)?(?:e-?\d+)?/
|
|
],
|
|
'operator': /[<=]=?|:=|~[~=]|\/\/?|\\\\|>[>=]?|[!^+\-*&|,@]/,
|
|
'punctuation': /[.;:?\[\](){}]/
|
|
};
|