资讯动态

GTweak 14 种语言怎么维护?WPF 本地化一次讲清

发布时间:2026/10/23 4:31:33 来源:尧图企业网站定制
GTweak 14 种语言怎么维护WPF 本地化一次讲清【免费下载链接】GTweakPortable Tool for an Ideal Windows Setup项目地址: https://gitcode.com/GitHub_Trending/gt/GTweakWPF 应用扛着 14 种非英语语言每加一种要动一堆文件很容易乱。GTweak 的本地化思路很直接一语言一文件夹靠同步脚本兜底。资源加载链路Localize.xaml 运行时怎么找到所有文案集中在固定路径.Source/GTweak/Languages/。目录里一共 15 个文件夹14 种非英语语言加英文基准en每个文件夹只放一个Localize.xaml标准 WPF 资源字典。运行时不是扫全目录而是按四步定位启动时读取系统区域设置拿到code-region组合比如zh-CN拿它去语言清单里匹配清单就是 LanguageCatalog.xaml 的 key 集合key 里的_会转回-再比较命中后拼出资源地址Languages/zh-CN/Localize.xaml合并进全局资源字典完整区域没命中但语言部分命中比如pt-PT的pt回退到对应语言文件夹再没有就用英文。这回答了常见疑问为什么 pt-BR 和 zh-CN 必须各占一个文件夹因为地址是按系统区域逐字符拼出来的zh-CN 和 zh-TW 拼出的是两条不同的路径合在一个文件夹里就是后者覆盖前者。这是运行时匹配逻辑决定的不是人为规定。回退规则也写死在代码里例如白俄罗斯语be会落到俄语用户在 Windows 里选了巴西葡语程序就自动加载 pt-BR绝不会拿到中文。新增语言四步走以 ja-JP 为例复制en文件夹重命名为ja-JP。内部文件名 Localize.xaml 保持不动它是资源地址的一部分。复制 en 最干净键集完整、顺序就是基准复制其他语言可能带上未翻译的残留。把 Localize.xaml 里的值改成日语键名一个字符都不要动。在 LanguageCatalog.xaml 注册一行key 全小写下划线显示名用原生写法v:String x:Keyja_jp日本語 (JP)/v:String跑一遍同步脚本验证ja-JP 的差异报告为零就完成。注册顺序不影响界面展示程序会按代码自动排序。文件夹名和目录 key 的大小写坑文件夹名跟随系统区域设置惯例BCP-47 风格语言小写、地区大写、连字符连接目录 key 是另一套规则全小写、下划线替代连字符。口诀是「路径带横线大写地区key 用全小写下划线」。出现位置错误写法正确写法文件夹名PT_BRpt-BR目录 keypt-BRpt_br两处写错都会让该语言在运行时「消失」文件夹名错是地址拼不出来key 错是清单匹配不上。这也解释了为什么同步脚本能自动修目录 key——规范统一脚本才敢按同一条规则改写。翻译 Localize.xaml 的三条铁律不改x:Key。键是程序与界面之间的契约改键即断链v:String x:Keybtn_changeChange/v:String !-- 英文基准 -- v:String x:Keybtn_change変更/v:String !-- 只动值 --保留#region分区注释。文件按窗口和页面切成 16 个区Load Window、Main Window、Packages Page 等翻译时按区对照原文最方便同步脚本也是靠这些注释名做区域比对的。条数与基准对齐。英文基准 522 个键pt-BR 和 zh-CN 也各是 522。条数对不上说明漏翻或多了键提交前必须查清。翻译前必跑的同步脚本LocalizeSyncTools/LocalizeSync.cmd 是双击即用的批处理封装内部是 PowerShell以en/Localize.xaml为基准自动定位 Languages 目录无需手填路径。三个能力键名规范化把目录里pt-BR这类 key 自动改写成pt_br。差异报告逐语言列出新增/删除的键和区域[]与[-]标注。安全参数-DryRun只报告不写盘-Backup写前留.bak-Placeholder给缺失键自动填空占位。推荐工作流三步DryRun 确认 → 正式执行 → Backup 兜底。Tools\LocalizeSync.cmd -DryRun # 先看差异清单 Tools\LocalizeSync.cmd -Backup # 正式执行并留底正式执行会把每个语言文件按 en 的结构重排只保留各语言自己的值翻译错乱了用 .bak 恢复即可。文档层README 按语言分拆本地化延伸到了文档仓库根目录每种语言一份独立 READMEREADME-zh-cn.md、README-pt-br.md 等非英语共 13 份主 README 顶部用国旗徽章链接到各自文档。其中「Localization Translation」章节给出翻译贡献的两个入口直接提交 PR或先提 Issue 请求后由维护者协助处理。提交前自检清单✅ 文件夹名 pt-BR 格式✅ 目录 key 小写下划线✅ 键与英文基准完全一致✅ 分区完整、条数对齐✅ 跑 LocalizeSync.ps1 -DryRun确认零差异再提交【免费下载链接】GTweakPortable Tool for an Ideal Windows Setup项目地址: https://gitcode.com/GitHub_Trending/gt/GTweak创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑