本文档详细介绍了 tldr-pages 的标准化客户端规范,并为客户端应用程序如何与 tldr 内容交互提供了指导。它为希望根据项目标准创建访问和显示 tldr 页面的应用程序的客户端开发人员提供了技术参考。
有关构建和部署系统的信息,请参阅构建和部署系统。
tldr-pages 客户端规范定义了访问 tldr 内容的应用程序的一致界面和行为。该规范可确保用户在不同的客户端实现中获得熟悉的体验。当前版本为 2.3,其中包含处理短格式/长格式选项和特定于平台的行为的规范。
来源:CLIENT-SPECIFICATION.md1-10 README.md60-96
该规范定义了两个关键术语
common、linux、osx)来源:CLIENT-SPECIFICATION.md10-27
具有 CLI 的客户端必须支持这些参数
| 选项 | 必需? | 含义 |
|---|---|---|
-v, --version | 是 | 显示客户端版本和规范版本 |
-p, --platform | 是 | 指定平台(包括common) |
-u, --update | 有条件 | 更新离线缓存 |
-l, --list | 否 | 列出当前平台上的所有页面 |
-L, --language | 否 | 指定首选语言 |
--short-options | 否 | 显示短格式选项 |
--long-options | 否 | 显示长格式选项 |
默认情况下,如果没有指定--short-options或--long-options,客户端应仅显示长格式选项。
来源:CLIENT-SPECIFICATION.md29-54 pages/common/tldr.md3-37
tldr 内容遵循特定的目录结构
pages/:英文页面的主目录common/:平台无关的命令linux/、windows/、osx/ 等:特定于平台的命令pages.<locale>/:遵循相同结构的翻译建议客户端将macos作为osx的别名。
来源:CLIENT-SPECIFICATION.md80-104 CONTRIBUTING.md55-81
页面使用 CommonMark,带有特殊的占位符
{{...}}:用户可替换的值{{[...]}}:短格式和长格式选项变体(以|分隔)客户端必须
\{\{ 和 \}\})示例
ping {{example.com}} → "ping example.com"git add {{[-A|--all]}} → "git add -A"(短格式)或 "git add --all"(长格式)来源:CLIENT-SPECIFICATION.md120-140 contributing-guides/style-guide.md16-65
当找不到页面时,客户端应以非零代码退出。
来源:CLIENT-SPECIFICATION.md143-188
算法
LANG 环境变量LANGUAGE 中提取优先级列表LANG 追加到优先级列表强烈建议在查找时优先考虑平台而非语言。
对于linux平台,当LANG=it且LANGUAGE="it:fr:en"时的示例查找
pages.it/linux/command.mdpages.fr/linux/command.mdpages/linux/command.md(英语)pages.it/common/command.mdpages.fr/common/command.mdpages/common/command.md(英语)来源:CLIENT-SPECIFICATION.md189-232
客户端应通过下载实现缓存
https://github.com/tldr-pages/tldr/releases/latest/download/tldr.ziphttps://github.com/tldr-pages/tldr/releases/latest/download/tldr-pages.{{language-code}}.ziphttps://github.com/tldr-pages/tldr/releases/latest/download/tldr-pages.zip注意:旧的资产 URL(https://tldr.sh/assets)已弃用,将于 2025 年 12 月移除。
来源:CLIENT-SPECIFICATION.md234-240
集成 tldr-pages 到客户端的开发者应
来源:CLIENT-SPECIFICATION.md README.md60-96
tldr-pages 项目有几个官方客户端
npm install -g tldrpip3 install tldrbrew install tlrc有关所有客户端的完整列表,包括社区开发的客户端,请参阅项目的 Wiki。
客户端规范已历经多个版本演进
| 版本 | 日期 | 关键变更 |
|---|---|---|
| 2.3 | 2025年3月7日 | 添加了长格式/短格式规范,common作为平台选项 |
| 2.2 | 2024年3月20日 | 将资产 URL 更新为使用 GitHub releases |
| 2.1 | 2023年11月30日 | 增加了对占位符语法转义的支持 |
| 2.0 | 2023年9月10日 | 为osx添加了macos别名,删除了“all”平台,强制要求长选项 |
| 1.5 | 2021年3月17日 | 增加了命令名称小写的要求 |
| 1.4 | 2020年8月13日 | 增加了非零退出码的要求 |
| 1.3 | 2020年6月11日 | 澄清了英语回退机制,更新了环境变量 |
| 1.2 | 2019年7月3日 | 添加了语言选项,迁移到 POSIX 区域设置标签 |
请注意,旧版本(2.0 之前)已弃用。