codegeex需手动启用json支持并绑定schema才能精准补全:在设置中添加"json"(及"jsonc")到languagewhitelist,通过"$schema"字段或settings.json关联schema后,可在tsconfig.json等文件中按ctrl+enter生成符合语义的嵌套结构。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在 VSCode 中编辑大型 JSON 配置文件(如 tsconfig.json、jest.config.js 的 JSON 形式、launch.json 或自定义 schema 的配置)时,手动记忆字段名、嵌套结构和值类型极易出错,补全不全或格式错位会导致校验失败甚至运行异常。CodeGeeX 插件可基于上下文理解语义并生成合法、符合 Schema 的 JSON 片段,但默认设置下它对 JSON 文件的补全能力是关闭的,需针对性开启与调优。
启用 CodeGeeX 对 JSON 文件的语言支持
VSCode 默认将 .json 文件识别为 json 语言模式,而 CodeGeeX 默认仅激活于 javascript、typescript、python 等编程语言,【必须手动添加 json 到支持列表,否则补全图标不会出现】。
打开 VSCode 设置(Ctrl+, / Cmd+,)→ 搜索 codegeex language → 找到 CodeGeeX: Supported Languages → 点击右侧铅笔图标编辑设置项 → 在数组中加入 "json",保存后重启 VSCode。
这一步做完后,打开任意 .json 文件,光标置于大括号内任意位置,按 Ctrl+Enter(Windows/Linux)或 Cmd+Enter(macOS)即可触发补全建议。
让 CodeGeeX 理解你的 JSON Schema
纯 JSON 补全容易生成语法正确但语义错误的内容(例如给 "target" 字段填 "ES2025" 这种不存在的值)。要获得精准建议,必须让 CodeGeeX 知道当前 JSON 遵循哪个 Schema。
方法一:通过 $schema 字段声明(推荐)
在 JSON 文件顶部添加一行:"$schema": "https://json.schemastore.org/tsconfig.json"(以 TypeScript 配置为例)。CodeGeeX 会自动拉取该 Schema 并据此约束字段名、枚举值、必填项与嵌套深度。
方法二:手动绑定本地 Schema 文件
若使用私有或未发布到 SchemaStore 的配置(如公司内部 CI 配置),可在 VSCode 设置中配置 json.schemas,将文件路径与 Schema URI 关联。CodeGeeX 会读取该映射关系——这步不做,它就只能靠通用 JSON 模式猜测。
注意:如果 JSON 文件含注释(// 或 /* */),VSCode 会将其识别为 jsonc 模式,此时必须把 "jsonc" 也加进 CodeGeeX 支持语言列表,否则补全失效。
编写复杂嵌套结构时的高效补全操作流
当需要补全多层嵌套对象(如 compilerOptions.lib 数组或 jest.setupFilesAfterEnv 路径列表)时,依赖逐级输入效率极低。按以下顺序操作可一次性生成完整结构:
第一步:在目标位置(如 "compilerOptions": { 后)换行并缩进,输入 "lib": [
第二步:保持光标在方括号内,按下 Ctrl+Enter → CodeGeeX 会分析上下文,给出常见库组合(["DOM", "ES2022"])及注释说明
第三步:若建议不匹配,立即按 Esc 放弃,然后输入双引号 + 左花括号 "{} → 再次 Ctrl+Enter,它会识别为对象字面量并生成带 key-value 的嵌套结构
第四步:对生成的字段(如 "jsxFactory")继续在其值位置触发补全,CodeGeeX 将结合 tsconfig 官方文档推断合法字符串值("React.createElement" 或 "h")
这一步的关键在于:不要等补全弹窗消失再动,要在建议高亮时用方向键选择后回车,否则它会降级为普通文本补全。











