UNPKG

prism-react-editor

Version:

Lightweight, extensible code editor component for React apps

73 lines (72 loc) 2.56 kB
import { l as languages } from "../../index-k28m3HFc.js"; import { r as re } from "../../shared-Sq5P6lf6-Sq5P6lf6.js"; var nonId = ['\\s\0-"-/:-?[-^`{-~']; languages.kum = languages.kumir = { "comment": /\|.*/, "prolog": { pattern: /#.*/g, greedy: true }, "string": { pattern: /"[^\n"]*"|'[^\n']*'/g, greedy: true }, "boolean": { pattern: re("(^|[<0>])(?:да|нет)(?![^<0>])", nonId), lookbehind: true }, "operator-word": { pattern: re("(^|[<0>])(?:и|или|не)(?![^<0>])", nonId), lookbehind: true, alias: "keyword" }, "system-variable": { pattern: re("(^|[<0>])знач(?![^<0>])", nonId), lookbehind: true, alias: "keyword" }, "type": [ { pattern: re("(^|[<0>])(?:вещ|лит|лог|сим|цел)(?: *таб)?(?![^<0>])", nonId), lookbehind: true, alias: "builtin" }, { pattern: re("(^|[<0>])(?:компл|сканкод|файл|цвет)(?![^<0>])", nonId), lookbehind: true, alias: "important" } ], /** * Should be performed after searching for type names because of "таб". * "таб" is a reserved word, but never used without a preceding type name. * "НАЗНАЧИТЬ", "Фввод", and "Фвывод" are not reserved words. */ "keyword": { pattern: re("(^|[<0>])(?:алг|арг(?: *рез)?|ввод|ВКЛЮЧИТЬ|вс[её]|выбор|вывод|выход|дано|для|до|дс|если|иначе|исп|использовать|кон(?:(?: +|_)исп)?|кц(?:(?: +|_)при)?|надо|нач|нс|нц|от|пауза|пока|при|раза?|рез|стоп|таб|то|утв|шаг)(?![^<0>])", nonId), lookbehind: true }, /** Should be performed after searching for reserved words. */ "name": { // eslint-disable-next-line regexp/no-super-linear-backtracking pattern: re("(^|[<0>])[^\\d<0>][^<0>]*(?: +[^<0>]+)*(?![^<0>])", nonId), lookbehind: true }, /** Should be performed after searching for names. */ "number": { pattern: re("(^|[<0>])(?:\\B\\$[a-f\\d]+\\b|(?:\\b\\d+(?:\\.\\d*)?|\\B\\.\\d+)(?:e[+-]?\\d+)?)(?![^<0>])", nonId, "i"), lookbehind: true }, /** Should be performed after searching for words. */ "punctuation": /:=|[()[\],:;]/, /** * Should be performed after searching for * - numeric constants (because of "+" and "-"); * - punctuation marks (because of ":=" and "="). */ "operator-char": { pattern: /\*\*?|<>|>=?|<=?|[=/+-]/, alias: "operator" } }; //# sourceMappingURL=kumir.js.map