CodeMirror-语言自动检测



我使用的是独立的高亮显示(而不是编辑器),如下所示:http://codemirror.net/demo/runmode.html

如何在运行荧光笔时自动检测要使用的语言?

这里有一个模式自动切换演示:http://codemirror.net/demo/changemode.html

但我不知道如何将其应用于Codemirror.runMode()。我希望使用自动检测方案突出显示整个代码块。

"changemode"演示只能区分"Scheme"编程语言和"其他一切",请参阅的实现

function looksLikeScheme(code) {
    return !/^s*(s*functionb/.test(code) && /^s*[;(]/.test(code);
}

因此,这无法自动检测其他编程语言,正如演示页面所说,即使是检测Scheme,它也非常粗糙。

不幸的是,从源代码片段中自动检测大量编程语言并不容易(对于小片段,不同的编程语言甚至可能使用完全相同的语法)。然而,在从代码片段中检测编程语言时,提出了一种合理的方法。

最新更新