aboutsummaryrefslogtreecommitdiffstats
path: root/public/prism/prism-kumir.min.js
diff options
context:
space:
mode:
authorArmand Philippot <git@armandphilippot.com>2021-12-30 19:47:21 +0100
committerArmand Philippot <git@armandphilippot.com>2021-12-30 19:47:21 +0100
commita98b5ea6fe8e8cc98a55e0fd793e6e8660ea31c1 (patch)
tree542810ab5aef99150db228bb54fd58303dcb31c7 /public/prism/prism-kumir.min.js
parentab355897a12b7bda1089a44de326d41455a0f7a3 (diff)
chore: add prismjs for syntax highlighting
Diffstat (limited to 'public/prism/prism-kumir.min.js')
-rw-r--r--public/prism/prism-kumir.min.js66
1 files changed, 66 insertions, 0 deletions
diff --git a/public/prism/prism-kumir.min.js b/public/prism/prism-kumir.min.js
new file mode 100644
index 0000000..d1e5c4d
--- /dev/null
+++ b/public/prism/prism-kumir.min.js
@@ -0,0 +1,66 @@
+!(function (n) {
+ function o(n, o) {
+ return RegExp(
+ n.replace(
+ /<nonId>/g,
+ '\\s\\x00-\\x1f\\x22-\\x2f\\x3a-\\x3f\\x5b-\\x5e\\x60\\x7b-\\x7e'
+ ),
+ o
+ );
+ }
+ (n.languages.kumir = {
+ comment: { pattern: /\|.*/ },
+ prolog: { pattern: /#.*/, greedy: !0 },
+ string: { pattern: /"[^\n\r"]*"|'[^\n\r']*'/, greedy: !0 },
+ boolean: {
+ pattern: o('(^|[<nonId>])(?:да|нет)(?=[<nonId>]|$)'),
+ lookbehind: !0,
+ },
+ 'operator-word': {
+ pattern: o('(^|[<nonId>])(?:и|или|не)(?=[<nonId>]|$)'),
+ lookbehind: !0,
+ alias: 'keyword',
+ },
+ 'system-variable': {
+ pattern: o('(^|[<nonId>])знач(?=[<nonId>]|$)'),
+ lookbehind: !0,
+ alias: 'keyword',
+ },
+ type: [
+ {
+ pattern: o(
+ '(^|[<nonId>])(?:вещ|лит|лог|сим|цел)(?:\\x20*таб)?(?=[<nonId>]|$)'
+ ),
+ lookbehind: !0,
+ alias: 'builtin',
+ },
+ {
+ pattern: o('(^|[<nonId>])(?:компл|сканкод|файл|цвет)(?=[<nonId>]|$)'),
+ lookbehind: !0,
+ alias: 'important',
+ },
+ ],
+ keyword: {
+ pattern: o(
+ '(^|[<nonId>])(?:алг|арг(?:\\x20*рез)?|ввод|ВКЛЮЧИТЬ|вс[её]|выбор|вывод|выход|дано|для|до|дс|если|иначе|исп|использовать|кон(?:(?:\\x20+|_)исп)?|кц(?:(?:\\x20+|_)при)?|надо|нач|нс|нц|от|пауза|пока|при|раза?|рез|стоп|таб|то|утв|шаг)(?=[<nonId>]|$)'
+ ),
+ lookbehind: !0,
+ },
+ name: {
+ pattern: o(
+ '(^|[<nonId>])[^\\d<nonId>][^<nonId>]*(?:\\x20+[^<nonId>]+)*(?=[<nonId>]|$)'
+ ),
+ lookbehind: !0,
+ },
+ number: {
+ pattern: o(
+ '(^|[<nonId>])(?:\\B\\$[\\da-f]+\\b|(?:\\b\\d+(?:\\.\\d*)?|\\B\\.\\d+)(?:e[+-]?\\d+)?)(?=[<nonId>]|$)',
+ 'i'
+ ),
+ lookbehind: !0,
+ },
+ punctuation: /:=|[(),:;\[\]]/,
+ 'operator-char': { pattern: /\*\*?|<[=>]?|>=?|[-+/=]/, alias: 'operator' },
+ }),
+ (n.languages.kum = n.languages.kumir);
+})(Prism);