Ghostty 本地化快速上手:3 步完成你的第一次翻译贡献 📅 发布时间:2026/8/24 12:19:26 👁 浏览次数: Ghostty 本地化快速上手3 步完成你的第一次翻译贡献【免费下载链接】ghostty Ghostty is a fast, feature-rich, and cross-platform terminal emulator that uses platform-native UI and GPU acceleration.项目地址: https://gitcode.com/GitHub_Trending/gh/ghosttyGhostty 本地化已覆盖 30 余种语言这款平台原生、GPU 加速的跨平台终端模拟器靠社区译文让菜单、标签与设置项以母语显示。参与 Ghostty 翻译贡献不需要会写代码——安装 gettext 工具链、编辑一个 po 文件、通过校验并提交 PR三个步骤就能完成你的第一条多语言翻译。本文按先补一条译文、再进阶接入新语言、最后了解维护机制的顺序展开。第一步安装 gettext 并验证工具链gettext 是开源软件事实上的标准翻译工具链负责模板生成、编译与格式校验。Ghostty 的全部译文集中在仓库根目录的 po/ 下后续操作都围绕它进行。按你的系统安装 gettext# Debian/Ubuntu sudo apt install gettext # macOS (Homebrew) brew install gettextWindows 上同样推荐包管理器官方文档明确不建议使用多年未更新的 GnuWin32 旧包scoop install gettext # 或 winget install gettext执行下面的命令确认安装成功输出里应出现 GNU gettext-runtime 的版本号$ gettext -V gettext (GNU gettext-runtime) 0.21.1第二步编辑 po 文件读懂每一条翻译条目用 Poedit 或任意文本编辑器打开 po/ 中你语言对应的文件中文简体为zh_CN.po日语为ja.po。一个典型条目长这样#. Translators: the category in the right-click context menu that contains split items #: src/apprt/gtk/ui/1.0/menu-surface-context-menu.blp:38 msgctxt Context menu msgid Split msgstr 分屏各行的含义msgid界面里的英文原文msgstr你要填写的译文msgstr 表示尚未翻译这是新手认领任务的首选msgctxt上下文标签同一句英文在不同位置可以给出不同译法#.开头是开发者留下的背景说明#:是字符串在源码中的位置翻译时一般无需理会。动手前先读一遍 po/README_TRANSLATORS.md 的风格约定语气保持指导式、专业而不客套术语跟随系统里其他应用保持一致源文用 Unicode 省略号…时照抄该字符不要写成三个句点英文的 Title Case 不要硬套到不习惯大写的语言上。改完后更新文件头部元数据的PO-Revision-Date与Last-Translator并删除编辑器可能自动写入的X-Generator行。特别提醒com.mitchellh.ghostty.pot是由代码自动生成的模板文件不要手动编辑它。第三步构建与校验让翻译真正生效先做格式检查确认 po 文件没有语法错误msgfmt --check po/zh_CN.po再构建并启动 Ghostty用--language指定你的语言查看效果zig build run -- --languagezh_CN如果目标语言与系统语言一致直接zig build run即可也可以改用LANGUAGE环境变量。KDE Plasma 默认的服务端窗口装饰会隐藏部分字符串追加--window-decorationclient才能看到全部译文。注意 macOS 端的本地化加载目前尚未实现验证请在 LinuxGTK 运行时上进行。进阶为 Ghostty 接入一门新语言若目标语言还没有 po 文件用msginit从模板初始化一份X换成语言码存在地区差异时带国家码如fr_CAmsginit -i po/com.mitchellh.ghostty.pot -l X -o po/X.po接着编辑 src/os/i18n_locales.zig把语言名加入locales数组。该列表顺序影响回退匹配拿不准就按文件内注释放到末尾pub const locales [_][:0]const u8{ zh_CN, // ...其余语言 X, };最后在 CODEOWNERS 的 Localization 区块登记维护团队团队名固定包含语言码与国家码/po/X.po ghostty-org/xx_YY新语言的 PR 需要至少两位维护者共同认领才会被合并目的是保证译文有人交叉审核——提交前先在 PR 描述里找好同伴。提交 PR 与长期维护仓库克隆地址git clone https://gitcode.com/GitHub_Trending/gh/ghostty按 CONTRIBUTING.md 的流程提交PR 标题建议写作i18n: update xx_YY translations。功能迭代后维护者会运行zig build update-translations重新生成模板并同步所有 po 文件译文在构建时编译为.mo二进制文件安装到share/locale/LOCALE/LC_MESSAGES/com.mitchellh.ghostty.moGTK 运行时通过 libintl 直接加载。持续跟进这些同步 PR是语言维护者的日常工作。下一步认领一条未翻译条目打开po/中你的语言文件搜出第一个msgstr 填上译文跑一遍msgfmt --check然后提交 PR——这就是完整的 Ghostty 本地化贡献闭环。【免费下载链接】ghostty Ghostty is a fast, feature-rich, and cross-platform terminal emulator that uses platform-native UI and GPU acceleration.项目地址: https://gitcode.com/GitHub_Trending/gh/ghostty创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考