From a98b5ea6fe8e8cc98a55e0fd793e6e8660ea31c1 Mon Sep 17 00:00:00 2001 From: Armand Philippot Date: Thu, 30 Dec 2021 19:47:21 +0100 Subject: chore: add prismjs for syntax highlighting --- public/prism/prism-kumir.min.js | 66 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 public/prism/prism-kumir.min.js (limited to 'public/prism/prism-kumir.min.js') 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( + //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('(^|[])(?:да|нет)(?=[]|$)'), + lookbehind: !0, + }, + 'operator-word': { + pattern: o('(^|[])(?:и|или|не)(?=[]|$)'), + lookbehind: !0, + alias: 'keyword', + }, + 'system-variable': { + pattern: o('(^|[])знач(?=[]|$)'), + lookbehind: !0, + alias: 'keyword', + }, + type: [ + { + pattern: o( + '(^|[])(?:вещ|лит|лог|сим|цел)(?:\\x20*таб)?(?=[]|$)' + ), + lookbehind: !0, + alias: 'builtin', + }, + { + pattern: o('(^|[])(?:компл|сканкод|файл|цвет)(?=[]|$)'), + lookbehind: !0, + alias: 'important', + }, + ], + keyword: { + pattern: o( + '(^|[])(?:алг|арг(?:\\x20*рез)?|ввод|ВКЛЮЧИТЬ|вс[её]|выбор|вывод|выход|дано|для|до|дс|если|иначе|исп|использовать|кон(?:(?:\\x20+|_)исп)?|кц(?:(?:\\x20+|_)при)?|надо|нач|нс|нц|от|пауза|пока|при|раза?|рез|стоп|таб|то|утв|шаг)(?=[]|$)' + ), + lookbehind: !0, + }, + name: { + pattern: o( + '(^|[])[^\\d][^]*(?:\\x20+[^]+)*(?=[]|$)' + ), + lookbehind: !0, + }, + number: { + pattern: o( + '(^|[])(?:\\B\\$[\\da-f]+\\b|(?:\\b\\d+(?:\\.\\d*)?|\\B\\.\\d+)(?:e[+-]?\\d+)?)(?=[]|$)', + 'i' + ), + lookbehind: !0, + }, + punctuation: /:=|[(),:;\[\]]/, + 'operator-char': { pattern: /\*\*?|<[=>]?|>=?|[-+/=]/, alias: 'operator' }, + }), + (n.languages.kum = n.languages.kumir); +})(Prism); -- cgit v1.2.3