vscode插件如key replacer不管理函数映射配置,需用户将key-mapping.json置于工作区根目录,文件名大小写敏感且json格式必须合法;fun.js须export default导出含唯一id的数组;多根工作区仅识别首个根目录。

VSCode 插件本身不管理函数映射配置文件,而是由具体插件(如 Key Replacer)自行读取、解析和应用这类文件;你得自己放对位置、写对格式,插件才认。
key-mapping.json 必须放在工作区根目录
Key Replacer 这类插件默认只在工作区(即打开的文件夹)根目录查找 key-mapping.json。它不会向上递归搜索父目录,也不会自动创建该文件。
- 如果项目是多层嵌套结构,比如
my-project/backend/src,但你在backend目录下打开 VS Code,则key-mapping.json必须放在backend/下,而非backend/src/或my-project/ - 文件名必须严格为
key-mapping.json,大小写敏感,不能叫mapping.json或keyMapping.json - 首次使用时需手动创建:右键工作区根目录 → “KeyReplacer: 创建映射文件”,或直接新建空 JSON 文件并填入合法内容,例如:
{ "[用户]": "user", "[订单]": "order" }
JSON 格式错误会导致替换完全失效,且无明显报错提示
Key Replacer 在读取 key-mapping.json 时采用静默失败策略:解析失败就跳过,继续用空映射执行替换,结果就是“点了替换但啥也没变”。常见坑点包括:
使用ydata-profiling(前身为pandas-profiling)生成全面的数据质量报告,包含相关性分析、缺失值模式和基数检测。导出交互式HTML仪表板和JSON摘要。
- 末尾多逗号(
"[用户]": "user",后紧跟})——JSON 不允许 - 用了单引号代替双引号(
'[用户]': 'user')——JSON 要求双引号 - 键或值含不可见控制字符(如 Windows 复制粘贴带 BOM 的 UTF-8)——建议用 VS Code 自带 JSON 支持校验,保存时会高亮语法错误
- 值为空字符串但没加引号(
"[用户]":)——语法非法
fun.js 自定义函数必须导出数组,且 id 唯一
当插件支持通过 fun.js 注册自定义文本处理逻辑时,这个文件不是普通 JS 脚本,而是被 require() 后直接取其默认导出值。它的结构约束很硬:
- 必须用
export default [ ... ]导出一个数组,不能是对象、函数或module.exports = [...] - 每个数组项必须有
id字段,且全局唯一;重复id会导致后加载的覆盖前一个,但插件不报错 -
id会作为命令 ID 出现在命令面板中,例如keyReplacer.fun.trim,所以别用空格或特殊符号 - 示例合法结构:
export default [ { id: "trim", title: "【替换】移除选中内容中的空格", fn: (text) => text.replace(/\s/g, "") } ];
复杂点在于:映射文件和自定义函数是解耦加载的,但都依赖工作区上下文。如果你在多根工作区(Multi-root Workspace)中操作,插件默认只认第一个文件夹的根目录,其他根目录下的 key-mapping.json 或 fun.js 会被忽略——这点文档很少提,但实测如此。










