动态语法高亮指的是对用户可以修改的代码进行的高亮。只有一处会出现这种情况,那就是在线编辑器。
代码片段、迭代之类的内容都是_静态_的,因为用户无法即时修改自己的代码。 如果想进一步了解我们如何处理静态语法高亮,请查看静态语法高亮文档。
动态语法高亮使用 CodeMirror 库实现。
在为你的语言添加支持时,有三种选择:
要为你的语言启用 CodeMirror 支持,请在论坛上发一个新话题。之后我们(Exercism)会创建一个 Pull Request,在网站上为你的语言启用 CodeMirror 支持。
要使用现有插件,它需要已发布到 NPM 上。
如果该插件尚未发布到 NPM,你可以:
CodeMirror 网站上有社区构建的语言插件列表。
下一步是启用语言。
以下是入门的步骤:
codemirror-lang-...,确认还没有现成的。为了帮你上手,为你创建的代码仓库里包含一个最小示例语法,你可以在此基础上继续构建或调整。
我们有一个极其友好、乐于助人的社区,在你完成这一切的过程中会很乐意帮助你!如果卡住了,请随时在 Exercism 论坛上发一个新话题,或者按需到 exercism/exercism 上创建新的 issue 🙂
你的语言的语法与另一种语言的语法(很)相似,这种情况下你可以考虑用那种语言的语法高亮来高亮你的语言。要这样做,就用另一种语言的 CodeMirror 插件来配置该学习轨道。更多信息见启用语言一节。