reprism
Version:
Modular Syntax highlighting for the web
55 lines (54 loc) • 1.74 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = {
language: 'lolcode',
init: function init(Prism) {
Prism.languages.lolcode = {
comment: [/\bOBTW\s+[\s\S]*?\s+TLDR\b/, /\bBTW.+/],
string: {
pattern: /"(?::.|[^"])*"/,
inside: {
variable: /:\{[^}]+\}/,
symbol: [/:\([a-f\d]+\)/i, /:\[[^\]]+\]/, /:[)>o":]/]
},
greedy: true
},
number: /(?:\B-)?(?:\b\d+\.?\d*|\B\.\d+)/,
symbol: {
pattern: /(^|\s)(?:A )?(?:YARN|NUMBR|NUMBAR|TROOF|BUKKIT|NOOB)(?=\s|,|$)/,
lookbehind: true,
inside: {
keyword: /A(?=\s)/
}
},
label: {
pattern: /((?:^|\s)(?:IM IN YR|IM OUTTA YR) )[a-zA-Z]\w*/,
lookbehind: true,
alias: 'string'
},
function: {
pattern: /((?:^|\s)(?:I IZ|HOW IZ I|IZ) )[a-zA-Z]\w*/,
lookbehind: true
},
keyword: [{
pattern: /(^|\s)(?:O HAI IM|KTHX|HAI|KTHXBYE|I HAS A|ITZ(?: A)?|R|AN|MKAY|SMOOSH|MAEK|IS NOW(?: A)?|VISIBLE|GIMMEH|O RLY\?|YA RLY|NO WAI|OIC|MEBBE|WTF\?|OMG|OMGWTF|GTFO|IM IN YR|IM OUTTA YR|FOUND YR|YR|TIL|WILE|UPPIN|NERFIN|I IZ|HOW IZ I|IF U SAY SO|SRS|HAS A|LIEK(?: A)?|IZ)(?=\s|,|$)/,
lookbehind: true
}, /'Z(?=\s|,|$)/],
boolean: {
pattern: /(^|\s)(?:WIN|FAIL)(?=\s|,|$)/,
lookbehind: true
},
variable: {
pattern: /(^|\s)IT(?=\s|,|$)/,
lookbehind: true
},
operator: {
pattern: /(^|\s)(?:NOT|BOTH SAEM|DIFFRINT|(?:SUM|DIFF|PRODUKT|QUOSHUNT|MOD|BIGGR|SMALLR|BOTH|EITHER|WON|ALL|ANY) OF)(?=\s|,|$)/,
lookbehind: true
},
punctuation: /\.{3}|…|,|!/
};
}
};