Ansible 文档风格指南
欢迎来到 Ansible 风格指南!为了在 docs.ansible.com 上创建清晰、简洁、一致且有用的材料,请遵循以下准则
语言准则
我们希望 Ansible 文档是
清晰的
直接的
对话式的
易于翻译的
我们希望阅读文档的感觉就像有一位经验丰富、友好的同事解释 Ansible 的工作原理。
风格速查表
此速查表说明了一些有助于实现“Ansible 基调”的规则
规则 |
好的例子 |
不好的例子 |
---|---|---|
使用主动语态 |
你可以通过以下方式运行任务 |
任务可以通过以下方式运行 |
使用现在时 |
此命令创建一个 |
此命令将创建一个 |
称呼读者 |
当你扩展你的清单时 |
当受管节点的数量增长时 |
使用标准英语 |
返回此页面 |
跳回此页面 |
使用美式英语 |
输出的颜色 |
输出的颜色 |
标题和标题大小写
标题和标题应使用句子大小写。例如,本节的标题是 标题 和 标题 大小写
,而不是 标题 和 标题 大小写
或 标题 和 标题 大小写
。
避免使用拉丁语短语
英语使用者很容易理解像 例如
或 等等
这样的拉丁语单词和短语。对于其他人来说,它们可能更难理解,而且对于自动翻译也很棘手。
使用以下英语术语代替拉丁语术语或缩写
拉丁语 |
英语 |
---|---|
即 |
换句话说 |
例如 |
例如 |
等等 |
等等 |
通过 |
通过/通过 |
与/对比 |
而不是/反对 |
reStructuredText 指南
Ansible 文档是用 reStructuredText 编写的,并由 Sphinx 处理。我们在所有 rST 页面上遵循这些技术或机械指南
标题表示法
reStructuredText 中的章节标题可以使用各种表示法。Sphinx 将在创建标题层次结构时“动态学习”。为了使我们的文档易于阅读和编辑,我们遵循一组标准的标题表示法。我们使用
###
带上划线,用于部分
###############
Developer guide
###############
***
带上划线,用于章节
*******************
Ansible style guide
*******************
===
用于节
Mechanical guidelines
=====================
---
用于子节
Internal navigation
-------------------
^^^
用于子子节
Adding anchors
^^^^^^^^^^^^^^
"""
用于段落
Paragraph that needs a title
""""""""""""""""""""""""""""
语法高亮 - Pygments
Ansible 文档支持一系列 Pygments 词法分析器,用于 语法高亮,以使我们的代码示例看起来不错。每个代码块都必须正确缩进并用空行包围。
Ansible 文档允许以下值
none(不突出显示)
ansible-output(用于 Ansible 输出的自定义词法分析器)
bash
控制台
csharp
ini
json
powershell
python
rst
sh
shell
shell-session
text
yaml
yaml+jinja
例如,你可以使用以下语法突出显示 Python 代码
.. code-block:: python
def my_beautiful_python_code():
pass
Markdown 指南
一些 Ansible 生态系统文档是用 markdown 编写并通过 mkdocs 处理的。我们在所有 .md 页面上遵循这些技术或机械指南
标题表示法
markdown 中的章节标题可以使用多种表示法。为了使我们的文档易于阅读和编辑,我们遵循一组标准的标题表示法。我们使用
#
用于页面标题
# Installation
##
用于节标题
## Installing on Linux
子节为每个子节添加一个额外的 #
。我们建议不要超过 ####
,因为它表明文档嵌套很深,最好以多个页面的形式呈现。
Markdown 中的链接
使用 Mkdocs,您可以使用本地文件的文件名而不是外部 URL 来格式化 内部链接 <https://mkdocs.pythonlang.cn/user-guide/writing-your-docs/#writing-with-markdown>`_。
[configuration](/configuration)
您也可以直接链接到文件中的标题。使用标题的小写形式。
[dependency](/configuration/#dependency)
外部链接使用类似的格式和外部 URL。
[Ansible Documentation](https://docs.ansible.org.cn)
代码块
Markdown 支持以下格式的代码块。
```text
docs/
index.md
user-guide/getting-started.md
user-guide/configuration-options.md
license.md
```
辅助功能指南
Ansible 文档的目标是更易于访问。请使用以下指南来帮助我们实现此目标。
图像和替代文本
确保所有图标、图像、图表和非文本元素都具有有意义的替代文本描述。不要包含 CLI 输出的屏幕截图。请改用代码块。
要在 rst 中添加 alt 文本
.. image:: path/networkdiag.png :width: 400 :alt: SpiffyCorp network diagram
要在 md 中添加 alt 文本
![SpiffyCorp network diagram](path/networkdiag.png)
链接和超文本
URL 和交叉引用链接具有描述性文本,这些文本传达有关链接目标内容的信息。有关如何在 RST 中格式化链接,请参阅 内部导航,有关 Markdown,请参阅 Markdown 中的链接。
表格
表格从左到右,从上到下具有简单、逻辑的阅读顺序。表格包括标题行,并避免空或空白的表格单元格。用描述性标题标记表格。
对于 RST
.. table:: File descriptions +----------+----------------------------+ |File |Purpose | +==========+============================+ |foo.txt |foo configuration settings | +----------+----------------------------+ |bar.txt |bar configuration settings | +----------+----------------------------+
对于 Markdown
#### File descriptions |File |Purpose | |---------- | -------------------------- | |foo.txt | foo configuration settings | |bar.txt | bar configuration settings |
颜色和其他视觉信息
避免仅依赖感官特征的说明。例如,不要使用
单击 方形 蓝色 按钮 以继续。
通过方法而不是仅通过颜色来传达信息。
确保图像和图表中的前景和背景文本或图形元素之间有足够的对比度。
在没有方向指示(例如左、右、上和下)的情况下,用于浏览界面的说明应该有意义。
辅助功能资源
使用以下资源来帮助测试您的文档更改
axe DevTools 浏览器扩展程序 - 突出显示网站页面上的辅助功能问题。
WebAIM 的 WAVE 浏览器扩展程序 - 另一个辅助功能测试器。
Orca 屏幕阅读器 - 视力障碍人士常用的工具。
颜色过滤器 - 用于色盲测试。
更多资源
这些页面为文档的语法、文体和技术规则提供了更多帮助。
另请参阅
- 为 Ansible 文档做出贡献
如何为 Ansible 文档做出贡献
- 在本地测试文档
如何构建 Ansible 文档
- 交流
有问题吗?需要帮助吗?想分享您的想法吗?请访问 Ansible 交流指南