Простой режим Codemirror - Regex lookbehind и lookahead не работает - PullRequest
0 голосов
/ 21 ноября 2018

Я только что реализовал простой режим для распознавания латексного кода.Вот пример кода, который можно выделить:

\documentclass{test}

Там должно быть все синее, кроме «теста», которое должно быть фиолетовым.Вот как моя реализация выглядит как atm:

const CodeMirror = require('codemirror')

CodeMirror.defineSimpleMode("simplemode", {
    start: [
        {
            regex: /(?<=\{).+?(?=\})/,
            token: 'argument'
        },
        {
            regex: /%.*/,
            token: 'comment'
        },
        /*{
            regex: /\\.*{.*}/,
            token: 'tag'
        },*/
        {
            regex: /\$.*\$/,
            token: 'math'
        }
    ],
    meta: {
        dontIndentStates: [],
        lineComment: '%'
    }
})

Я удалил часть тега, потому что я думал, что он будет перекрываться с тегом.В любом случае, даже если все регулярные выражения совпадают идеально в тестерах регулярных выражений для javascript, просмотр вперед и просмотр назад не работают.Есть ли обходной путь, исправление, ошибка?

...