Schema Element 编辑器
Schema Element Editor 内置功能强大的代码编辑器,基于 CodeMirror 6 构建,提供专业的 JSON 编辑体验。
编辑器界面
编辑器界面分为以下几个部分:
| 区域 | 说明 |
|---|---|
| 标题栏 | 显示元素参数、导入导出按钮 |
| 工具栏 | 提供格式化、转义等操作按钮 |
| 编辑区域 | CodeMirror 代码编辑器 |
| 底部栏 | 显示内容类型、保存按钮 |
工具栏功能
内容类型切换
编辑器会自动检测 Schema 数据的类型:
| 类型 | 说明 |
|---|---|
| AST | Elements[] 数组格式,常用于 Agentic UI |
| RawString | Markdown 字符串格式 |
| JSON | 普通 JSON 对象 |
您可以通过工具栏的切换按钮在 AST 和 RawString 之间转换。
格式化与压缩
| 按钮 | 功能 | 快捷键 |
|---|---|---|
| 格式化 | 将 JSON 格式化为易读的缩进格式 | Alt + F |
| 压缩 | 将 JSON 压缩成一行 | - |
转义与去转义
处理嵌套的字符串数据:
| 按钮 | 功能 |
|---|---|
| 转义 | 将内容包装成 JSON 字符串值 |
| 去转义 | 将 JSON 字符串值还原为原始内容 |
适用场景:当 Schema 中包含嵌套的 JSON 字符串时。
解析(Deserialize)
将多层嵌套或转义的 JSON 字符串自动解析为结构化数据。
JSON 智能修复
当 JSON 存在语法错误时,编辑器会:
- 显示错误提示和错误位置
- 尝试智能修复常见错误
- 提供一键修复功能
AST 自动补全
编辑 AST (Elements[]) 类型数据时,编辑器提供自动补全功能。
功能特性
- 🎯 上下文感知 - 根据光标位置智能推断可用字段
- ⚡ 实时补全 - 输入时自动触发补全提示
- 📚 类型提示 - 显示字段类型和描述信息
触发方式
| 方式 | 说明 |
|---|---|
| 自动触发 | 输入时自动显示补全提示 |
Cmd + . / Ctrl + . | 手动触发补全 |
Alt + / | 备用快捷键 |
支持的补全内容
Element 类型值(21 种):
paragraph,heading-one,heading-two,heading-threelink,image,code-block,code-linebulleted-list,numbered-list,list-item- 等等...
Element 字段名(37+ 个):
type,children,text,id,classbold,italic,underline,codeurl,title,level,language- 等等...
启用/禁用
在配置页面「编辑器配置」→「编辑器功能」中可以开启或关闭 AST 类型提示。
快速单独编辑
在编辑器中对选中的内容快速打开独立编辑弹窗,提供完整的编辑和格式化功能。
功能特性
- 🎯 独立编辑空间 - 在弹窗中专注编辑选中的片段,不影响主编辑器
- 🛠️ 完整工具栏 - 提供格式化、转义、JSON 修复等所有编辑功能
- 🔍 智能修复 - 支持 JSON 错误定位和智能修复,带 Diff 对比
- 💾 一键替换 - 编辑完成后直接替换原选中内容
适用场景
场景 1:修复嵌套 JSON
当 Schema 中包含多层嵌套的 JSON 字符串时,可以选中该字符串片段,在单独编辑弹窗中进行解析、格式化和修复,无需在主编辑器中处理复杂的转义。
场景 2:编辑大型对象中的片段
在编辑大型 Schema 对象时,可以选中某个子对象或数组,在弹窗中专注编辑该部分,避免主编辑器滚动查找。
场景 3:快速格式化局部内容
选中一段压缩的 JSON 片段,打开单独编辑弹窗进行格式化,不影响其他内容的格式。
触发方式
插件提供两种触发方式,可在配置页面切换:
方式 1:选中自动出现(默认)
- 在编辑器中选中需要编辑的内容
- 鼠标松开后,选区附近自动显示"单独编辑"按钮
- 点击按钮打开编辑弹窗
优点:操作快捷,无需额外按键
方式 2:右键触发
- 在编辑器中选中需要编辑的内容
- 右键点击选中区域
- 在右键菜单中选择"单独编辑"
- 打开编辑弹窗
优点:不会遮挡编辑器内容,适合精确操作
弹窗功能
单独编辑弹窗提供完整的编辑环境:
| 功能 | 说明 |
|---|---|
| 代码编辑器 | 完整的 CodeMirror 编辑器,支持语法高亮和折叠 |
| 工具栏 | 格式化、压缩、转义、去转义、解析等操作 |
| JSON 修复 | 智能检测和修复 JSON 语法错误 |
| Diff 对比 | 修复前后内容对比,确认修改无误 |
| 组合键操作 | 提供常用操作组合,一键完成多步骤转换 |
| 主题切换 | 支持切换编辑器主题 |
| 保存并替换 | 一键将编辑结果替换回主编辑器的选中位置 |
使用步骤
- 选中内容:在主编辑器中选中要编辑的文本
- 触发弹窗:根据配置的触发方式打开编辑弹窗
- 编辑内容:在弹窗中使用工具栏功能编辑和修复内容
- 保存替换:点击"保存并替换"按钮,将编辑结果替换回主编辑器
组合键操作
单独编辑弹窗提供组合键功能,将多个常用操作组合成一键操作,简化工作流程。
可用的组合键
| 组合键 | 说明 | 适用场景 |
|---|---|---|
| 加引号→去转义 | 先添加外层引号,再执行去转义。将裸露的转义 JSON 转换为标准 JSON | 处理从日志中复制的转义 JSON 片段 |
| 压缩→转义→去引号 | 先压缩 JSON,再转义,最后去除外层引号。将格式化 JSON 转为紧凑裸露格式 | 将格式化的 JSON 转换为适合日志输出的紧凑格式 |
使用示例
场景 1:修复日志中的转义 JSON
从日志中复制了一段转义 JSON:{\"user\":\"Alice\",\"age\":25}
- 在主编辑器中选中这段内容
- 打开单独编辑弹窗
- 点击「加引号→去转义」组合键
- 内容自动转换为标准 JSON:
{"user":"Alice","age":25} - 继续编辑或直接保存替换
场景 2:生成紧凑格式的日志数据
需要将格式化的 JSON 转换为紧凑格式用于日志输出:
{
"user": "Alice",
"action": "login"
}
操作步骤:
- 选中该 JSON 片段
- 打开单独编辑弹窗
- 点击「压缩→转义→去引号」组合键
- 自动转换为紧凑裸露格式:
{\"user\":\"Alice\",\"action\":\"login\"} - 保存替换到主编辑器
与基础操作的对比
组合键相当于手动执行多个步骤的快捷方式:
| 组合键 | 等价的手动操作 |
|---|---|
| 加引号→去转义 | 手动在首尾添加引号 → 点击去转义 |
| 压缩→转义→去引号 | 点击压缩 → 点击转义 → 手动删除引号 |
使用组合键可以一键完成,省去多次点击和手动编辑的步骤。
配置选项
在配置页面「编辑器配置」→「编辑器功能」中可以:
- 开启/关闭单独编辑功能
- 选择触发方式(选中自动出现 / 右键触发)
编辑器主题
Schema Element Editor 支持多种编辑器主题:
| 主题 | 说明 |
|---|---|
| SEE Dark(默认) | 自定义深色主题,优化了括号匹配和语法高亮 |
| Dark | 标准深色主题 |
| Light | 浅色主题 |
在工具栏点击主题切换按钮即可切换。主题选择会自动保存。
主题色配置
您可以自定义插件的主题色,用于配置页面和编辑器界面的高亮颜色。
在配置页面「编辑器配置」→「外观设置」中设置。
快捷键
编辑器内快捷键
| 快捷键 | 功能 | 可自定义 |
|---|---|---|
Alt + S | 保存 | ✅ |
Alt + F | 格式化 | ✅ |
Alt + P | 打开/更新预览 | ✅ |
Shift + Alt + P | 关闭预览 | ✅ |
Cmd/Ctrl + . | 触发 AST 补全 | ❌ |
Alt + / | 触发 AST 补全(备用) | ❌ |
自定义快捷键
在配置页面「快捷键配置」中,您可以自定义编辑器内的快捷键:
- 点击快捷键输入框
- 按下想要的快捷键组合
- 配置自动保存
注意事项:
- 快捷键必须包含
Ctrl/Cmd或Alt修饰键 - 避免使用浏览器保留快捷键(如
Cmd+W、Cmd+T) - 快捷键仅在编辑器获得焦点时生效
Markdown 字符串自动解析
当获取的 Schema 数据为字符串类型时,插件可以自动将其解析为 Markdown Elements 结构。
工作原理
- 页面返回 Markdown 字符串
- 插件自动解析为 Elements[] 结构
- 编辑器以 AST 模式显示
- 保存时自动转换回 Markdown 字符串
适用场景
- AI 智能体对话场景
- 符合 Agentic UI 数据规范的页面
启用/禁用
在配置页面「编辑器配置」→「编辑器功能」→「字符串自动解析」中设置。
默认开启。
功能开关
您可以在配置页面「功能开关」中控制工具栏按钮的显示:
| 功能 | 说明 |
|---|---|
| AST/RawString 切换 | 内容类型切换按钮 |
| 转义/去转义 | 字符串转义相关按钮 |
| 解析 | Deserialize 按钮 |
| 压缩 | Serialize 按钮 |
| 格式化 | Format 按钮 |
| 预览 | Preview 按钮 |
| 导入导出 | Import/Export 按钮 |
如果您只需要基础编辑功能,可以点击「一键精简」关闭所有附加功能。
故障排除
JSON 格式错误无法保存
- 查看编辑器底部的错误提示
- 点击「定位错误」跳转到错误位置
- 尝试点击「智能修复」
- 手动修正 JSON 语法
AST 补全不工作
- 确认数据类型为 AST(Elements[])
- 检查配置中「AST 类型提示」是否开启
- 尝试手动触发:
Cmd/Ctrl + .
快捷键无响应
- 确保编辑器获得焦点(点击编辑区域)
- 检查快捷键是否与浏览器或系统快捷键冲突
- 在配置页面检查快捷键设置