唠唠闲话

https://www.bilibili.com/video/BV1hK411W7qg

https://github.com/google/mdbook-i18n-helpers

这边有几个方案。方案概述。

  1. 关于 i18n 的介绍。
  2. pot, po, mo 文件的介绍。
  3. i18next 等翻译项目。

“i18next”: “^23.10.1”,
“i18next-http-backend”: “^2.5.0”,
“i18next-scanner-typescript”: “^1.2.0”,

回归传统方案。

Q1: Lean-zh 目前的翻译方案是什么?
Q2: lean2md 以及 md2lean
Q3: LEAN 社区代码交互相关的项目有哪些?
Q4: LEAN 学习指南。

.pot.po 文件是与 GNU gettext 工具链相关的文件格式,常用于软件国际化(i18n)中。它们用于处理和管理翻译文本。

.pot 文件全称:Portable Object Template
翻译模板文件,包含应用程序中所有可以翻译的字符串的默认提取。如 xgettext)提取生成。
翻译者使用这个文件来生成不同语言的 .po 文件。

.po 文件全称:Portable Object
基于 .pot 模板文件,为每种语言创建一个独立的 .po 文件。这些文件包含原文和对应语言的翻译文本。
每个条目通常包括以下部分:

  • msgid:需要翻译的原始字符串。
  • msgstr:翻译后的字符串。
  • 还有一些可选的部分,比如注释、引用位置等。

开发者可以使用这些 .po 文件,通过工具(如 msgfmt)生成机器可读的 .mo 文件,这些 .mo 文件可以在应用程序中使用来实现多语言支持。

流程:

  1. 提取字符串:使用 xgettext 从源码中提取可翻译字符串,生成 .pot 文件。
  2. 生成翻译文件:使用 .pot 文件生成各语言的 .po 文件。
  3. 翻译:翻译人员在 .po 文件中翻译 msgid 字符串到目标语言。
  4. 编译:将翻译完成的 .po 文件编译为 .mo 文件,以供程序运行时加载。
  5. 集成和测试:将 .mo 文件集成到应用程序中,测试以确保正确显示翻译内容。

i18n 国际化

i18n 是 “internationalization”(国际化)的缩写,其中 “i” 和 “n” 分别代表单词的首字母和尾字母,而 “18” 表示中间的字母数。在软件开发和工程领域,国际化是指设计和开发软件应用程序的过程,使其能够在不同的语言和文化环境中使用,且无需进行额外的工程修改。

国际化关键功能包括:

  1. 分离用户界面文本:将用户界面中的文本与代码分离,通常通过使用资源文件或翻译文件来实现。

  2. 支持多种语言:确保软件能够加载和显示多种语言的文本,包括适当的字符集和编码。

gettext 用法

https://zhuanlan.zhihu.com/p/669282869