0
我試圖創建CodeMirror的模式覆蓋。CodeMirror模式:線的匹配子集的正則表達式
我有一大堆的匹配線(從流)的部分是測試正則表達式的,我想,如果我可以用這些來匹配,並且該行的記號化的一部分。
例如:
# h1
變爲:
<span class="..."><span class="cm-overlay cm-markup">#</span> h1</span>
除了simplemode
插件,我不能夠找到模式使用正則表達式的任何實例。這個問題與我正在做的非常相似,但是沒有關於如何僅爲流線子集返回令牌的答案:CodeMirror - Using RegEx with overlay
我設法創建了以下工作模式,但匹配整條生產線,所以生成HTML,如:<span class="cm-overlay cm-markup"># h1</span>
CodeMirror.defineMode("markdown-extra", function() {
return {
token: function(stream, state) {
markup = stream.match(/^([#]{1,6})[^#]/g); // matches markdown header syntax
stream.skipToEnd();
if (markup){
console.log(markup, stream)
return "markup"
}
return null
}
};
});
的文檔要我用stream.match
「吃」的匹配字符,但並沒有提及如何同時仍然使用正則表達式只是象徵一個小節。
我真的不知道如何繼續。