JSON
JSON 格式通常用于存储数据和配置文件。 PyCharm 可帮助您处理 JSON 文件 — 它会检查其语法和格式。 在常见类型的配置文件中,PyCharm 基于 JSON 架构 验证代码并提供代码补全,该格式用于描述此类文件的结构和内容。
PyCharm 随附一组适用于最流行格式的 已注册 架构。 您还可以 使用来自 JSON Schema Store 的架构 或 自定义 JSON 架构。

启用 JSON5
PyCharm 识别多种最流行的 JSON 标准,包括 JSON5。 PyCharm 默认将具有 json5 扩展名的文件视为 JSON5 文件,并在其中支持这种新语法。

将 JSON5 语法扩展到所有 JSON 文件
在 设置 对话框(Ctrl+Alt+S )中,转到 。
在 已识别的文件类型 列表中,选择 JSON5。
在 文件名模式 区域,点击
,然后在打开的 添加通配符 对话框中键入
*.json。
使用来自 JSON Schema Store 的架构
PyCharm 可自动从 JSON Schema Store 下载并使用架构,该站点托管了许多常用配置文件的架构文件。 只要您打开一个其名称与可用架构之一关联的文件(例如, tsconfig.json ),PyCharm 就会为其下载并使用该架构。 已应用架构的名称显示在状态栏中。

如果您的配置文件具有自定义名称,或者您正在处理 临时文件 ,请点击状态栏中的 无 JSON 架构 ,然后在列表中选择所需的架构。 PyCharm 会将当前文件与所选架构关联,并将此架构映射添加到 JSON 架构映射 页面上的列表中。
或者,点击 新建架构映射 打开 JSON 架构映射 页面,并 配置新的架构关联。

默认情况下,已启用从 JSON Schema Store 自动下载架构。 如果它被关闭,您可以随时再次启用。
自动从 JSON Schema Store 下载架构
在 设置 对话框(Ctrl+Alt+S )中,转到 。
选择 允许从远程来源下载 JSON 架构 和 使用 schemastore.org JSON 架构目录 复选框。
PyCharm 随附多个流行的架构。 尽管这些架构会定期自动更新,但仍可能过时。
使用内置架构的最新版本
在 设置 对话框(Ctrl+Alt+S )中,转到 。
选择 始终下载架构的最新版本 复选框。
使用自定义 JSON 架构
除了内置的已注册架构和 来自 JSON Schema Store 的架构之外,PyCharm 还允许您创建自己的架构,或使用来自其他存储位置的自定义架构。 您可以创建或下载所需的架构并将其存储在项目根目录下,或指定资源的 URL,以便 PyCharm 可自动下载该架构。
自定义架构必须符合 JSON 架构标准。 目前,PyCharm 支持 2020-12 及更早版本的架构。

创建自定义 JSON 架构关联
在 设置 对话框(Ctrl+Alt+S )中,转到 。
或者,点击状态栏中的 无 JSON 架构 ,然后选择 新建架构映射。 在这种情况下,PyCharm 会自动将该文件包含到 关联的文件、文件夹和模式的列表 中。
在显示您先前配置的所有架构的中央窗格中,点击工具栏上的
,并指定映射名称。
在 架构文件或 URL 字段中,指定先前创建或下载的架构文件的位置,或所需架构可用的 URL。 架构文件的名称或相应的 URL 地址会显示在 架构文件或 URL 字段中。

指定您的架构所遵循的 架构规范版本。

创建要根据此架构进行验证的文件或文件夹列表。 基于该列表,PyCharm 会在内部检测要验证的文件。
该列表可以包含特定文件的名称、整个目录的名称以及文件名模式。 使用以下规则来指定文件名模式:
role-*匹配所有名称以role-开头的文件。role-*/**/*.yaml匹配所有 .yaml 文件,这些文件的名称包含role、/和/。role-**.yaml匹配所有 .yaml 文件,这些文件的名称以role-开头。
要向列表添加条目,请点击
。

指定文件或文件夹的路径,或输入文件模式。 指定相对于项目根目录的路径。

启用从远程源自动下载 JSON 架构
在 设置 对话框(Ctrl+Alt+S )中,转到 。
选择 允许从远程来源下载 JSON 架构。
清除此复选框后,将禁用与 JSON 架构相关的任何网络活动,包括来自 JSON Schema Store 的架构。
禁用 JSON 架构
处理架构范围之间的冲突
如果某个文件、文件夹或模式属于两个或多个架构的范围,PyCharm 会检测到此冲突,并在编辑器以及 设置 对话框的 JSON 架构映射 页面上显示警告。
在编辑器中,当您打开属于多个范围的文件时,会显示警告。

在 设置 对话框的 JSON 架构映射 页面上,当多个映射的范围重叠时,会显示警告。

在 JSON 架构中使用 HTML 描述
默认情况下,PyCharm 在文档弹出窗口中显示 JSON 架构定义的文档时会转义 HTML 字符。
假设您的架构使用 description 属性:
则 快速文档 弹出窗口将如下所示:

若要获得带有丰富 HTML 标记的美观文档,请将 HTML 描述存储在 x-intellij-html-description 扩展属性中,而不是 description:
现在, 快速文档 弹出窗口如下所示:

配置语法高亮显示
您可以根据您的偏好和习惯配置 JSON 感知的语法高亮显示。
在 设置 对话框(Ctrl+Alt+S )中,转到 。
选择配色方案,接受从默认方案继承的高亮设置,或按照 颜色与字体 中的说明进行自定义。


