我正在为 Jupyter 笔记本输出和元数据编写一个 git 过滤器,我想了解有关
metadata.language_info.codemirror_mode
键的更多信息,以便我可以就如何在过滤器中处理它做出明智的决定。一个好的答案会解释...
相关元问题:“[事物]做什么”问题可以问到什么程度?
nbformat 文档具有以下描述:“要使用的代码镜像模式的名称[可选]”。这并没有说明可能的名称......
上面的页面链接到Jupyter Notebook 格式的官方 JSON 模式,其中包含以下内容:
"codemirror_mode": {
"description": "The codemirror mode to use for code in this language.",
"oneOf": [{ "type": "string" }, { "type": "object" }]
}
不确定
string
或 object
应该是什么...
搜索“codemirror”让我找到CodeMirror 用户手册和参考指南,这就是关于模式的内容
mode (string or object)
这个很配!太棒了!
要使用的模式。如果没有给出,这将默认为加载的第一个模式。它可以是一个字符串,它可以简单地命名模式,也可以是与模式关联的 MIME 类型。或者,它可能是包含模式配置选项的对象,具有命名模式的 name 属性(例如 {name: "javascript", json: true})。每种模式的演示页面包含有关该模式支持的配置参数的信息。您可以询问 CodeMirror 使用 CodeMirror.listModes 和 CodeMirror.listMIMEs 函数加载了哪些模式和 MIME 类型。
仍然不确定到底什么是允许的以及它如何影响笔记本电脑。
键用于语法突出显示:它根据语言或格式确定代码的各种元素(如关键字、字符串、注释)的样式(颜色、字体等)。 它通过提供特定于语言的功能(例如自动缩进、括号匹配和代码折叠)来协助代码编辑。
codemirror_mode
的有效值为这两个值之一:
String:一个简单的字符串,用于命名模式或指定与模式关联的 MIME 类型。
示例:"python"
、
"text/x-c++src"
、
"application/json"
(请参阅“CodeMirror 语言模式”)。
Object:具有模式配置选项的对象,包括命名模式和其他可选设置的 name
属性。示例:
{name: "javascript", json: true}
用于 JavaScript 中的 JSON 数据。
codemirror_mode
时,它会根据指定的语言或格式定制代码单元的行为,从而提高可读性和易于编码。