📝 更新日志
本文档记录了 i18n Mage 扩展的所有重要变更。
格式遵循 Keep a Changelog 规范,并且本项目遵循 语义化版本 准则。
[1.3.1] - 2026-03-03
新增
- 重写结果预览:重写词条值时新增预览确认功能,支持在应用修改前查看重写结果。
- 状态栏词条计数:底部状态栏新增当前文件词条数量展示,点击即可触发浏览文件词条翻译功能。
- 非源语言处理选项:提取硬编码文案时,为包含非源语言的文案新增专门的处理方式选择。
优化
- 引用视图升级:将 key 悬浮面板中的引用查看方式由 peek 弹窗改为侧边栏 reference 视图,提供更持久的引用浏览体验。
- 词典模块增强:侧边栏词典模块添加图标区分 key 前缀与实际名称;支持对单个词条复制词条名。
- 文件检查逻辑优化:改进检查触发机制,修改非语言文件时不再触发语言文件检查;修复 Git 操作后文件变更未触发检查的问题。
- 语言选择体验提升:优化语言选择弹窗,添加语言标准名称作为描述信息,提升选择准确性。
- 配置分组合理化:将硬编码提取引导配置中的跳过注入开关与注入语句设置合并为同一组,使依赖关系更清晰。
- 预览界面样式统一:完善修复预览界面样式,解决输入框宽度不一致的显示问题。
修复
- 命令展示条件:完善单文件硬编码文案提取功能的命令展示逻辑,仅当文件可处理时显示在右键菜单中。
- 取消操作响应:解决重写词条进程开启后点击取消操作无法正常终止的问题。
- AI 键名生成:修复提取包含非源语言的硬编码文案时,键名回退策略无法正常使用 AI 生成的异常。
[1.3.0] - 2026-02-25
新增
- 硬编码字符提取:新增硬编码文本提取模块,支持对未国际化项目快速添加国际化支持,以及对已国际化项目进行补充完善。提供近二十条配置项,可通过
ctrl/cmd + alt + e快捷键或i18nMage.extractHardcodedTexts命令触发。 - YAML 语言文件支持:新增对 YAML 格式语言文件的完整支持,扩展项目适配范围。
- 广东话支持:新增粤语翻译语种,完善语言代码别名映射关系,提升中文区域语言覆盖。
- 调试模式:新增调试模式配置,启用后在插件输出通道记录用户操作与执行结果,便于问题排查与分析。
- 拼音命名风格配置:采用拼音生成 key 时,支持配置命名风格(如大驼峰、小驼峰等),提供更灵活的键名定制。
- 嵌套结构排序:新增对嵌套结构语言文件的按 key 排序支持,保持文件结构一致性。
- 实时装饰更新配置:开放
translationHints.realtimeVisibleRangeUpdate配置,控制滚动时是否立即更新可见区域装饰,平衡视觉反馈与性能。 - 装饰作用范围配置:开放
translationHints.decorationScope配置,支持选择装饰应用于可见区域或整个文件,解决粘滞区域显示问题。 - OpenAI 代理支持:统一 ChatGPT 相关配置命名为 OpenAI,新增代理配置并修正请求地址,提升服务稳定性。
优化
- 修复预览界面重构:全新设计的修复预览界面,以词条为核心聚合展示信息,支持 key 编辑、一键折叠/展开、条件筛选、语言选择性应用等功能,操作更直观高效。
- 多编辑器装饰同步:翻译装饰现可同时应用于分屏打开的多个编辑器文件,不再局限于当前活跃文件。
- Excel 功能增强:扩展导入导出能力,新增版本差异对比功能,支持选择 Git 提交节点生成差异表格,并可将修改后内容重新导入。
- 检查性能提升:引入缓存策略优化检查逻辑,显著提升扫描速度。
- 界面操作简化:合并侧边栏视图的导入导出按钮为统一的 Excel 按钮,点击后弹出选择框,操作路径更清晰。
- 导出预填文件名:导出 Excel 时自动在保存对话框中预填文件名,减少手动输入步骤。
- 配置项清理:移除实际作用有限的
analysis.languageFileParser配置,简化设置项。 - 键盘快捷关闭:修复预览界面支持通过 Escape 键快速关闭,提升操作效率。
- 配置命名优化:将需要扫描的文件扩展名配置从通用模块移至检查规则模块,并同步更新配置命名。
文档
- 官方站点升级:新增英文文档支持,完善中文文档功能说明,提供更全面的使用指南。
[1.2.4] - 2026-02-10
新增
- 跨项目词条迁移:新增词条数据复制粘贴功能,支持将单个或当前页词条复制后,在其他项目的词典模块中直接粘贴写入,实现项目间词条无缝迁移。
- 智能搜索过滤:搜索词条时新增对词典模块的过滤支持,提供更精准的搜索结果。
- AI 翻译个性化:新增配置支持将自定义领域术语或风格指令注入 AI 翻译流程,满足专业领域翻译需求。
优化
- 界面操作逻辑重构:优化侧边栏插件视图的操作布局,将只读相关命令置于行内按钮,写入相关命令移至右键上下文菜单,提升操作逻辑清晰度。
- 无干扰复制体验:移除复制词条名/值时的成功提示框,减少视觉干扰,保持编辑流连续性。
- 界面元素显示修复:修复排序按钮显示异常问题,确保界面元素正常呈现。
[1.2.3] - 2026-02-02
新增
- 高级搜索选项:搜索词条功能新增区分大小写支持,可通过 Alt+C 快捷键或界面按钮快速切换。
- 键值引用追踪:实现词条 key 的完整引用特性,在引用位置右键或使用 Shift+F12 即可查看该 key 的所有引用位置。
优化
- 增强悬浮信息面板:词条悬浮信息面板全面升级,将翻译源语言文案置顶显示;为每个语言文案独立添加重写按钮;在标题区域添加键值引用次数标注并支持快速跳转。
- 重写逻辑精细化:优化词条重写逻辑,即使重写后文案与原文相同仍会执行重写操作,确保语义同步的完整性。
[1.2.2] - 2026-01-26
新增
- 便捷语种扩展:插件侧边栏“同步”模块新增“添加语言”按钮,支持一键添加新语言并自动调用翻译服务填充内容。
- 智能 Excel 导入模式:扩展 Excel 表格导入功能,新增按语言匹配模式,可根据现有语言文案智能同步其他语言的翻译内容。
- 搜索增强功能:搜索文案现支持全词匹配模式,可通过 Alt+W 快捷键或界面按钮快速切换。
优化
- 智能搜索触发:优化搜索模式触发逻辑,自动带入选中字符或光标所在词条的翻译文案至搜索框,提升搜索效率。
- 文件检测健壮性:完善过大文件检测方法的类型校验机制,避免路径参数为空时出现异常。
[1.2.1] - 2026-01-17
优化
- 修复进度提示增强:优化修复操作中的进度提示,新增英文键名生成状态信息,提升操作过程的可感知性。
修复
- 多词条修复顺序处理:解决单文件内修复多个未定义词条时,因位置顺序处理不当导致的文件写入异常问题。
- 未定义词条引用定位:修复侧边栏使用情况模块中未定义词条无法查看引用位置的功能缺陷。
- 现有键值匹配修复:解决开启
matchExistingKey配置后,对可匹配到现有文案的单个未定义词条进行修复操作失效的问题。 - 预览界面键盘交互:修复新版本 VS Code 中修复预览界面加载完成后键盘事件监听异常,导致无法通过回车键应用修改的问题。
- 键名重命名功能:解决重命名词条 key 操作失败的功能异常。
[1.2.0] - 2026-01-15
新增
- 全语种词条搜索(感谢 @Gur1a):侧边栏插件视图新增搜索功能,支持通过搜索按钮或 Ctrl+Alt+S 快捷键触发,可在当前文件和全局范围内搜索所有语言翻译内容。
- 对象属性翻译支持(感谢 @Gur1a):国际化特性配置新增
accessMode和translationObjectIdentifiers设置,支持通过对象属性而非翻译函数访问翻译内容的开发模式。 - 大文件友好提示:添加大文件检测机制,当打开过大文件时显示明确提示,帮助用户理解插件对大文件的处理策略。
优化
- 多模式定义跳转:完善键值定义跳转功能,除原有 F12 快捷键外,新增支持 Ctrl+ 鼠标点击进行跳转,提供更灵活的操作方式。
- 翻译补充智能提示:优化补充缺失翻译时的键值选择界面,新增键值对应翻译内容展示,帮助用户更直观地做出选择。
- 动态词条显示修复:修正含点号键值的动态词条装饰及悬停信息显示问题,确保所有动态词条都能正确展示翻译内容。
[1.1.8] - 2025-12-22
优化
- 修复预览界面交互优化:调整修复预览界面功能按钮位置至左侧,避免结果提示遮挡操作按钮;优化界面自动聚焦逻辑,确保可直接使用回车键应用修改。
- 智能键值匹配选择:开启现有键值匹配配置时,若匹配到多个词条,新增手动选择功能,允许用户从匹配结果中指定目标键值。
- 修复流程简化:优化修复操作逻辑,无需新增词条时将跳过冗余的选择步骤,直接应用修复结果。
- 编辑提示信息精准化:修正插件侧边栏词条结构模块中编辑弹窗的提示信息,确保正确展示当前编辑词条名称。
[1.1.7] - 2025-12-08
新增
- 智能词条重写功能:新增词条文案重写功能,支持在修改翻译源语言文案后自动调用翻译服务更新其他语言翻译。可通过悬浮面板、侧边栏右键菜单或
rewriteEntry命令触发。 - 键名重构:新增 key 重命名功能,在词条使用位置按 F2 即可重命名键值,自动同步更新语言文件和所有引用处的词条名称。
优化
- 检查命令静默执行:运行检查命令后将不再自动打开插件侧边栏视图,保持当前编辑上下文不被打断。
- 修复操作与诊断联动:将未定义词条的快捷修复操作按钮与诊断功能智能绑定,统一启用/禁用状态,简化配置管理。
修复
- 多语言写入完整性:解决使用原文填充未定义词条时英文语言文件遗漏写入的同步问题。
[1.1.6] - 2025-11-17
新增
- 灵活语言文件结构配置:新增
languageStructure设置,支持根据项目需求选择嵌套或扁平的文件结构组织方式。 - 智能点号转换控制:新增嵌套结构下的点号使用控制,禁用时可自动将
"a.b"形式键名转换为层级对象{ a: { b: "" } }。 - 自动路径前缀生成:
keyPrefix配置新增auto-path选项,支持基于文件路径自动生成前缀并按目录结构创建嵌套键名。 - 前缀排除列表:新增
stopPrefixes配置,允许自定义需要排除使用的键名前缀列表。
优化
- 修复操作交互升级:将文件内未定义词条的修复操作从 CodeLens 改为 CodeAction 形式,解决编辑器自动聚焦问题,提升用户体验。
- 动态词条显示精度:修正动态拼接词条文案装饰的显示位置,确保提示信息精准对齐。
修复
- 特殊字符键名导航:解决含非特殊含义点号的键名在使用 F12 导航时无法正确跳转到源语言文件对应位置的问题。
- 多层级路径前缀解析:修复翻译目录存在不同层级语言文件时键名前缀读取错误的路径解析问题。
[1.1.5] - 2025-11-11
新增
- 智能键值导航:现在在词条 key 上按 F12 可直接跳转到翻译源语言文件的对应键值位置,提供快速定义定位。
- 动态词条增强展示:强化动态拼接词条的提示展示,匹配到多个 key 时显示所有翻译内容(以 " | " 分隔),并支持悬浮信息查看全部匹配键值。
- CodeLens 快捷操作:为当前文件内的未定义词条添加 CodeLens 快捷按钮,支持一键提取为新词条或忽略操作。
- 快速翻译预览:新增 QuickSelect 功能,可查看当前文件所有词条翻译,选中后直接跳转到使用位置(通过右键菜单或 Ctrl+Alt+T 触发)。
- 跨平台快捷键支持:为 Mac 用户新增 Command 键快捷键支持,提升跨平台使用体验。
优化
- 精准变量识别规则:调整变量名判定规则,全大写英文字母不再被误判为变量,下划线连接的英文字母正确识别为变量。
- 字符串字面量可视化:开启“扫描字符串字面量”配置后,侧边栏“当前文件”模块的“已定义”分区现在会展示所有潜在词条信息。
修复
- 提取范围隔离:解决单独提取未定义文案时错误弹出全局缺失翻译操作交互的范围混淆问题。
[1.1.4] - 2025-10-31
优化
- 智能框架检测:国际化框架配置新增
auto选项并设为默认值,采用更精准的自动检测逻辑,简化项目配置流程。 - Vue-I18n 动态语法支持:增强对 Vue-I18n 数组形式动态拼接用法的识别能力,确保复杂模板语法下的词条正确显示。
修复
- 内联翻译颜色实时更新:解决手动更改浅色/深色主题的翻译文本颜色后未立即生效的视觉反馈问题。
- 单文件提取范围精准化:修正单文件提取未定义词条时错误包含全局词条的范围判断问题。
- 嵌套对象结构解析:解决嵌套对象结构的语言文件在生成类别树时数据构建错误的解析问题。
[1.1.3] - 2025-10-28
新增
- 多样化内联翻译展示:新增内联翻译装饰的呈现方式配置,支持将翻译文本与原始文本并行展示,提供更灵活的代码阅读体验。
- 斜体装饰样式:新增支持将翻译装饰以斜体样式展示,增强视觉区分度。
- 普通字符串翻译支持:扩展内联翻译装饰功能,现支持对普通字符串文本应用翻译装饰。
- 智能键名回退策略:新增提取未定义词条时生成 key 失败的回退机制,提供传统文件名编号和 AI 智能生成两种恢复方案。
优化
- 配置字段命名统一:优化写入规则模块配置命名字段,移除冗余前缀,提升配置项的一致性(如
generatedKeyStrategy→keyStrategy)。 - 命名空间智能处理:针对 react-i18next 和 i18next 框架,优化默认命名空间词条的引入格式,避免不必要的命名空间前缀添加。
修复
- React 项目命名空间识别:解决使用 react-i18next 或 i18next 的国际化项目在插件初始化时命名空间策略判断错误的问题。
- 修复预览数据同步:修正修复预览界面中选中数量显示与实际选中数量可能不一致的数据同步问题。
- 多语言文件写入完整性:解决应用修复结果时可能出现的个别语言文件遗漏写入的完整性问题。
[1.1.2] - 2025-10-21
新增
- 扩展翻译服务支持:新增 ChatGPT 和有道翻译作为可选的翻译服务提供商。
- 增强谷歌翻译集成:新增支持配置官方谷歌翻译 API Key,配置后将调用官方 API,未配置时仍使用现有的免费谷歌翻译服务。
- 灵活缩进格式支持:写入语言文件时新增支持 tab 缩进,提供更符合不同团队习惯的代码格式化选项。
优化
- 默认键前缀策略调整:将新生成 key 的前缀默认值由
none调整为manual-selection,提供更友好的键名生成体验。 - 配置描述文案精炼:将翻译内联提示的背景透明度配置描述修正为"不透明度",避免用户理解混淆。
修复
- 多语言文案显示纠错:解决插件面板"同步信息"模块中各语言板块错误显示参考语言文案而非对应语言文案的问题。
- 插件初始化刷新机制:修复插件初始化完成后未自动刷新导致的内联翻译装饰、当前显示语言等信息未及时展示的问题。
- 预览数据应用一致性:解决在修改预览界面中更新数据后,实际应用的仍是修改前数据的同步问题。
[1.1.1] - 2025-10-13
优化
- 增强词条悬浮提示交互:强化词条悬浮提示功能,新增支持快速定位到语言文件定义位置、一键复制文案、实时翻译缺失文案等便捷操作。
修复
- 悬浮提示编辑功能:解决词条悬浮信息展示中的编辑按钮点击不生效的问题。
- 修复结果数据同步:修正取消应用修复结果后,插件界面数据仍显示修复结果而非原始状态的同步问题。
- 变量词条过滤逻辑:解决在开启"忽略疑似变量"配置时,全局修复过程中疑似变量的未定义词条仍错误出现在选择列表中的问题。
- 面板数据实时更新:修复插件面板"当前文件"模块在某些情况下词条信息未及时刷新的问题。
- 自动补全触发机制:解决 key 自动补全功能在特定情况下未正确触发的异常情况。
- 修正修复结果反馈:优化修复成功提示信息,改进进度条展示效果。
[1.1.0] - 2025-10-09
新增
- 精细化修复操作:现在支持针对单个词条进行精准操作,包括为未定义词条单独生成新键、为特定语言补充翻译、为单个缺失翻译项进行补全。
- 智能代码补全:为翻译函数添加智能提示功能,输入
t("时自动弹出词条候选列表,支持按键名、键值、中文拼音及首字母进行智能匹配。 - 多样化键名生成:支持基于拼音或英文翻译自动生成键名,提供更灵活的命名选择。
- 智能变量识别:新增配置选项,控制是否将检测到的变量文本排除在未定义词条提取范围之外。
- 可配置翻译范围:新增选项控制生成新键时的翻译补全范围,可按需选择最小语言集或全语种翻译。
优化
- 键长度计算逻辑:优化
maxGeneratedKeyLength的作用范围,现在仅统计键名本身而非完整路径(如common.test只计算test部分)。 - 语言校验机制升级:扩展
validateLanguageBeforeTranslate的应用场景,现同时适用于新键生成和缺漏翻译补全。增强校验失败时的处理选项,支持跳过、保留原值、强制翻译或切换翻译源等操作。 - 文档系统重构:将中文文档迁移至全新的 VitePress 站点,提供更完善的使用指南和 API 文档。
修复
- 状态栏显示异常:修复在非国际化项目中状态栏错误显示语言信息的问题。
- 特殊字符处理:解决扁平文件结构中包含点符号的键名在生成新词条时被意外转义的问题。
- 排序功能失效:修复部分情况下修复操作后排序规则未正确应用的问题。
[1.0.7] - 2025-09-28
新增
- 状态栏语言信息:在状态栏添加了当前显示语言和翻译源语言信息显示,点击后可重新选择对应语言。
变更
- 统一语言文件结构:整合了各语言的文件结构,在选择未定义词条写入文件位置时即可选择部分语言不存在的文件位置(不存在的话写入时会自动创建对应文件)。
- 增强语言文件解析:优化了语言文件数据提取逻辑,提供完整的语法分析、精确的目标识别和更好的容错机制。
- 简化提示信息显示:在插件面板同步情况模块中,移除了“正常”和“多余”两个类别词条的全语种翻译提示,仅对“缺失”和“空值”两个类别展示,使界面更加清晰。
修复
- 空对象选择问题:解决了语言文件内如果有嵌套的空对象,那么在手动选择未定义词条写入的对象时无法选择这个空对象的问题。
[1.0.6] - 2025-09-19
修复
- 数组值解析异常:解决了翻译文件含数组值时词条解析异常的问题。
- 参考语言同步问题:解决了在配置文件中更改参考语言时插件未同步更新的问题。
- 数组值导航问题:修正了值为数组的词条未能正确跳转到对应定义位置的问题。
- 单文件清理问题:解决了清除未使用词条时无法删除单文件内所有词条的问题。
[1.0.5] - 2025-09-17
新增
- 单文件操作:现在可以在打开的文件里右键选择复制词条和修复未定义词条了。
- 命名空间配置:新增命名空间配置,控制翻译键命名空间的生成策略,可选值:
'auto'(自动推断)、'full'(完整路径)、'file'(仅文件名)、'none'(无命名空间)。 - 诊断开关配置:新增配置用来控制诊断的启用和禁用。
- 手动前缀选择:在 key 前缀生成规则配置中新增手动选择选项,支持对未定义词条文本作为文案生成翻译 key 时手动从已有前缀中选择配置 key 的前缀。
变更
- 优化内联提示颜色:更换翻译内联提示默认文本与背景颜色,采用更柔和专业的色调,最大程度减少对代码的视觉干扰:
- 浅色模式:字体颜色 #2E7D9A,背景色 #9EC9D7,透明度 40%
- 深色模式:字体颜色 #4EC9B0,背景色 #264F48,透明度 60%
- 优化 DeepSeek 文本分隔:进一步优化 deepseek 文本分隔逻辑,解决在只有一条翻译文本时,deepseek 可能会输出分隔符的问题。
修复
- 中文语言检测:解决了 zh 会被识别为繁体中文而不是简体中文的问题。
- 转义字符处理:编辑词条值时添加转义处理,解决了之前无法正常处理换行符等问题,同时对复制词条值功能和翻译悬浮提示的文案展示也做了相应转义处理。
[1.0.4] - 2025-09-09
新增
- DeepL 翻译服务:新增 deepl 翻译服务支持。
- 容器菜单:容器顶部新增三点菜单,菜单下包含查看插件文档、打开插件设置和 issue 反馈等功能按钮。
- 状态栏切换指示器:通过快捷键启用或禁用提示时,会在状态栏出现启用/禁用提示。
变更
- 优化 DeepSeek 解析:优化 deepseek 翻译文案分隔逻辑,解决 deepseek 输出多余换行符导致无法正确解析的问题。
- 调整翻译优先级:将没有 api key 配置要求的谷歌翻译在翻译调用默认优先级中调至最低,同时由于优化了 DeepSeek 的换行符处理,提升 DeepSeek 默认优先级。
- 魔法主题品牌:更换插件修复按钮图标,调整插件描述以及视图名称,使其更具魔法色彩。
- 自动切换视图:运行统计词条信息命令后自动切换到插件在活动栏上的视图面板。
修复
- 诊断与提示关联问题:解决了禁用内联提示后,词条诊断也被禁用的问题。
- 动态装饰清理:解决了先启用再禁用内联提示后,动态词条装饰未消失的问题。
- 引号写入错误:解决了修正未定义词条时引号写入错误的情况。
- 键名大小写问题:解决了修复未定义词条时词条 key 过长采用文件名来组成 key 时,文件名变成全小写的问题。
- 活动栏可见性:解决了打开非国际化项目时,活动栏插件图标未消失的问题。
- 文档和文本优化:优化文案展示,完善文档说明。
[1.0.3] - 2025-09-01
新增
- 增强提示信息:在插件活动栏的"同步信息"模块中使用 tooltip 展示语言目录,在"使用情况"的"未定义"模块添加 tooltip 来提示是否开启了未定义词条修正。
变更
- 键前缀默认值变更:将"写入规则"配置中的 Key Prefix 配置的默认值由 auto-popular 改为 none,避免用户对这个莫名出现的前缀造成困扰。
- 翻译 API 优先级调整:由于 AI 输出的不稳定性,将插件配置中的"翻译 API 优先级"的默认配置中的 deepseek 调整到最后。
修复
- 改进激活条件:完善插件激活条件,补充了"onCommand:i18nMage.*"等多种语言和命令触发器。
- 命令分类:命令添加插件名称 category,用以解决用户打开命令面板时无法通过名称判断该命令是否为本插件的。
- 命令面板参数处理:解决了通过命令面板调用命令报错的问题(兼容了没有入参的情况)。
- 文档和文本优化:优化文案展示,完善文档说明。
[1.0.2] - 2025-08-28
修复
- 修复未定义词条修正逻辑:解决了由于未定义词条修正功能被关闭,导致修正逻辑无法正常启用的问题。
[1.0.1] - 2025-08-28
修复
- 语言文件缩进检测修复:修正了语言文件缩进级别的检测方法,解决了在扁平文件中错误识别的问题。
[1.0.0] - 2025-08-25
新增
- 首次发布:神奇的 i18n 助手来了!
- 树形视图面板:全面展示所有翻译键、状态和同步状态的概览。
- 内联提示:在代码中的
t()函数旁边直接显示翻译文本。 - 智能修复未定义键:自动为未定义文本生成键和翻译。
- 一键翻译补全:集成谷歌、DeepSeek、百度和腾讯翻译 API,自动填充缺失翻译。
- Excel 导入导出:通过 Excel 文件方便地与翻译团队协作。
- 未使用键检测:分析项目以查找并帮助移除未使用的键。
- 深度配置:超过 50 个选项来自定义扩展行为,适应任何项目。
- 为中国开发者内置优化:原生中文界面和内置的国内翻译 API 访问。
已知问题
- 请在 GitHub Issues 页面上报告任何问题。我们重视您的反馈!
