是否可以在CodeMirror中显示隐藏的字符?

时间:2013-10-08 11:29:20

标签: codemirror

是否可以在 Codemirror文本编辑器中显示隐藏字符(如回车字符),但我在其文档中未找到任何有关它的配置参考。这可能吗?

2 个答案:

答案 0 :(得分:3)

这可以通过overlays的帮助和带有空格和EOL符号的预定义样式来完成:

cm.addOverlay({
    name: 'invisibles',
    token:  function nextToken(stream) {
        var ret,
            spaces  = 0,
            peek    = stream.peek() === ' ';

        if (peek) {
            while (peek && spaces < Maximum) {
                ++spaces;

                stream.next();
                peek = stream.peek() === ' ';
            }

            ret = 'whitespace whitespace-' + spaces;
        } else {
            while (!stream.eol() && !peek) {
                stream.next();

                peek = stream.peek() === ' ';
            }

            ret = 'cm-eol';
        }

        return ret;
    }
});

您可以将插件CodeMirror Show Invisibles用于此目的。

答案 1 :(得分:2)

回车特别由CodeMirror解释(当它自己时,它会创建一个换行符,当在换行符前面时,它将被忽略),所以在这种情况下,不可以。< / p>

但默认情况下,其他非打印字符(例如\b)将以红点显示,您可以调整相关的CSS类cm-invalidchar来自定义其外观。