mdbook-i18n-helpers 使用教程
1. 项目的目录结构及介绍
mdbook-i18n-helpers/
├── Cargo.toml
├── Cargo.lock
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── dprint.json
├── i18n-helpers/
│ ├── CHANGELOG.md
│ ├── src/
│ │ ├── directives.rs
│ │ ├── gettext.rs
│ │ ├── lib.rs
│ │ ├── normalize.rs
│ │ ├── preprocessors.rs
│ │ └── xgettext.rs
│ └── tests/
├── i18n-report/
│ ├── src/
│ │ └── main.rs
│ └── tests/
└── mdbook-tera-backend/
├── src/
│ └── main.rs
└── tests/
目录结构介绍
Cargo.toml
和Cargo.lock
:Rust 项目的包管理文件。CONTRIBUTING.md
:贡献指南。LICENSE
:项目许可证。README.md
:项目介绍和使用说明。dprint.json
:代码格式化配置文件。i18n-helpers/
:主要逻辑和功能实现目录。CHANGELOG.md
:版本更新日志。src/
:源代码目录。directives.rs
:处理指令逻辑。gettext.rs
:gettext 翻译支持。lib.rs
:库入口文件。normalize.rs
:Markdown 规范化。preprocessors.rs
:预处理器逻辑。xgettext.rs
:xgettext 工具逻辑。
tests/
:测试代码目录。
i18n-report/
:生成翻译状态报告的工具。src/
:源代码目录。main.rs
:主入口文件。
tests/
:测试代码目录。
mdbook-tera-backend/
:Tera 模板扩展后端。src/
:源代码目录。main.rs
:主入口文件。
tests/
:测试代码目录。
2. 项目的启动文件介绍
i18n-helpers
i18n-helpers/src/lib.rs
:库的入口文件,包含了项目的核心逻辑和功能。
i18n-report
i18n-report/src/main.rs
:主入口文件,用于生成翻译状态报告。
mdbook-tera-backend
mdbook-tera-backend/src/main.rs
:主入口文件,用于扩展 mdbook 的 HTML 渲染器。
3. 项目的配置文件介绍
Cargo.toml
[package]
name = "mdbook-i18n-helpers"
version = "0.3.5"
edition = "2018"
[dependencies]
anyhow = "1.0.83"
chrono = "0.4.38"
dateparser = "0.2.1"
mdbook = "0.4.37"
polib = "0.2.0"
pulldown-cmark = "0.11.0"
pulldown-cmark-to-cmark = "15.0.1"
regex = "1.10"
semver = "1.0.23"
serde_json = "1.0.120"
syntect = "5.2.0"
textwrap = "0.16.1"
[dev-dependencies]
pretty_assertions = "1.3.0"
tempfile = "3.10.1"
dprint.json
{
"extends": [
"https://plugins.dprint.dev/rustfmt.json"
]
}
README.md
README.md 文件包含了项目的介绍、使用说明和安装指南。
CONTRIBUTING.md
CONTRIBUTING.md