Urara-Blog/node_modules/.pnpm-store/v3/files/95/f62a330f037b6f4c946f6b3ab257e2d00f63763d9a8022cfdf102eace77d4dcf9d39c4492508e0430630881daddd12430acfab1d9c5342bf4a36e7484d57ce
2022-08-14 01:14:53 +08:00

51 lines
1.1 KiB
Text

(function (Prism) {
var guid = {
// https://en.wikipedia.org/wiki/Universally_unique_identifier#Format
pattern: /\{[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}\}/i,
alias: 'constant',
inside: {
'punctuation': /[{}]/
}
};
Prism.languages['solution-file'] = {
'comment': {
pattern: /#.*/,
greedy: true
},
'string': {
pattern: /"[^"\r\n]*"|'[^'\r\n]*'/,
greedy: true,
inside: {
'guid': guid
}
},
'object': {
// Foo
// Bar("abs") = 9
// EndBar
// Prop = TRUE
// EndFoo
pattern: /^([ \t]*)(?:([A-Z]\w*)\b(?=.*(?:\r\n?|\n)(?:\1[ \t].*(?:\r\n?|\n))*\1End\2(?=[ \t]*$))|End[A-Z]\w*(?=[ \t]*$))/m,
lookbehind: true,
greedy: true,
alias: 'keyword'
},
'property': {
pattern: /^([ \t]*)(?!\s)[^\r\n"#=()]*[^\s"#=()](?=\s*=)/m,
lookbehind: true,
inside: {
'guid': guid
}
},
'guid': guid,
'number': /\b\d+(?:\.\d+)*\b/,
'boolean': /\b(?:FALSE|TRUE)\b/,
'operator': /=/,
'punctuation': /[(),]/
};
Prism.languages['sln'] = Prism.languages['solution-file'];
}(Prism));