本页面将介绍定制 Hugo 短代码,可以用于 Kubernetes markdown 文档书写。
更多关于短代码参见 Hugo 文档。
本站上面的 markdown 页面,你可以加入短代码来展示已经文档介绍的功能的版本和状态(state)。
下面是一个功能状态代码段的演示,表明这个功能已经在 Kubernetes v1.10时就已经稳定了。
{{< feature-state for_k8s_version="v1.10" state="stable" >}}
会转换为:
state
的可选值如下:
下面是为每个现有的功能状态的模板代码。
显示的 Kubernetes 默认为该页或站点版本。
这个可以通过修改 for_k8s_version
短代码参数来调整。
{{< feature-state for_k8s_version="v1.10" state="stable" >}}
会转换为:
{{< feature-state feature-state state="alpha" >}}
会转换为:
Kubernetes v1.16
alpha{{< feature-state feature-state state="beta" >}}
会转换为:
Kubernetes v1.16
beta{{< feature-state feature-state state="stable" >}}
会转换为:
{{< feature-state feature-state state="deprecated" >}}
会转换为:
你可以通过加入术语词汇的短代码,来自动更新和替换相应链接中的内容(我们的词汇库) 这样,在浏览在线文档,鼠标移到术语上时,术语解释就会显示在提示框中。
词汇术语的原始数据保存在 https://github.com/kubernetes/website/tree/master/content/en/docs/reference/glossary,每个内容文件对应相应的术语解释。
例如,下面的代码在 markdown 中将会转换为 <a class='glossary-tooltip' href='/~jayme/k8s-docs/v1.16/zh/docs/reference/glossary/?all=true#term-cluster' target='_blank'>cluster<span class='tooltip-text'>集群由一组被称作节点的机器组成。这些节点上运行 Kubernetes 所管理的容器化应用。集群具有至少一个工作节点和至少一个主节点。</span>
</a>
,然后在提示框中显示。
{{< glossary_tooltip text="cluster" term_id="cluster" >}}
在本站的 markdown 页面(.md
文件)中,你可以加入一个标签页集来显示不同形式的解决方案。
标签页的短代码包含以下参数:
name
: 标签页上的名字。codelang
: 如果要在tab
短代码中加入内部内容,需要告知 Hugo 使用的是什么代码语言,方便代码高亮。include
: 标签页中所要包含的文件。如果标签页是在 Hugo 的页面包(leaf bundle)中,文件(可以是 Hugo 所支持的 MIME 类型文件)将会在包中查找。如果不是,所要包含的内容页面将会在当前路径的相关路径下查找。注意,在include
属性部分,不能加入短代码内部内容,必须要使用自结束(self-closing)的语法。
非内容文件将会被代码高亮。如果没有在codelang
进行声明的话,所用的代码语言将会来自文件名。%
分隔符来包装标签页,例如,{{% tab name="Tab 1" %}}This is **markdown**{{% /tab %}}
下面是演示标签页短代码。
注意: The tab name in atabs
definition must be unique within a content page. 一个内容页面下的,标签页定义中的标签页 名 必须是唯一的。
{{< tabs name="tab_with_code" >}}
{{{< tab name="Tab 1" codelang="bash" >}}
echo "This is tab 1."
{{< /tab >}}
{{< tab name="Tab 2" codelang="go" >}}
println "This is tab 2."
{{< /tab >}}}
{{< /tabs >}}
会转换为:
{{< tabs name="tab_with_md" >}}
{{% tab name="Markdown" %}}
This is **some markdown.**
{{< note >}}**Note:** It can even contain shortcodes.{{< /note >}}
{{% /tab %}}
{{< tab name="HTML" >}}
<div>
<h3>Plain HTML</h3>
<p>This is some <i>plain</i> HTML.</p>
</div>
{{< /tab >}}
{{< /tabs >}}
会转换为:
This is some markdown.
注意: Note: It can even contain shortcodes.
This is some plain HTML.
{{< tabs name="tab_with_file_include" >}}
{{< tab name="Content File #1" include="example1" />}}
{{< tab name="Content File #2" include="example2" />}}
{{< tab name="JSON File" include="podtemplate" />}}
{{< /tabs >}}
会转换为:
这是一个内容文件示例,位于一个includes叶子包中。
注意:包含的内容文件也可以包含短代码。
这是另一个内容文件示例,位于一个includes叶子包中。
{
"apiVersion": "v1",
"kind": "PodTemplate",
"metadata": {
"name": "nginx"
},
"template": {
"metadata": {
"labels": {
"name": "nginx"
},
"generateName": "nginx-"
},
"spec": {
"containers": [{
"name": "nginx",
"image": "dockerfile/nginx",
"ports": [{"containerPort": 80}]
}]
}
}
}
此页是否对您有帮助?
感谢反馈。如果您有一个关于如何使用 Kubernetes 的特定的、需要答案的问题,可以访问 Stack Overflow. 在 GitHub 仓库上登记新的问题 报告问题 或者 提出改进建议.