MkDocs 中的全局变量
Global variables in MkDocs
我有一个用 MkDocs 制作的文档项目。我想在配置文件 (mkdocs.yml
) 中定义全局变量,以便在降价页面 (*.md
) 中使用。
阅读此 issue,似乎可以通过在 mkdocs.yml
文件中包含一个 extra
配置来完成,例如:
extra:
version: 1.0
...然后,在页面中使用该变量,例如如下:
---> My version: {{ config.extra.version }}
我试过了,但不幸的是它在我的示例中不起作用(没有变量替换):
- 我是不是做错了什么?
- 有没有可能实现这个功能?
不,目前无法做到。
你说你"use that variable in page"。我假设您指的是 "Markdown" 页面。目前模板变量在 Markdown 页面中不可用。模板引擎甚至 运行 都不反对 Markdown。 Markdown 解析器的输出是传递给模板的变量之一。有关其工作原理的更详细说明,请参阅我对 的回答。
特定于 MkDocs,有一个未解决的问题 (#304) 讨论添加功能以支持 Markdown 页面中的一些有限模板,但它计划在 post-1.0,因此它目前不是头等大事。
作为更新,可以完全按照您的描述将变量从 extra
插槽插入 mkocs.yml
。
要实现此功能,您需要安装 markdownextradata 插件。
给定的答案已过时,因为这可以使用上面提到的 macros or markdownextradata 之类的插件来完成,除非您只引用 {{ version }}
.
我有一个用 MkDocs 制作的文档项目。我想在配置文件 (mkdocs.yml
) 中定义全局变量,以便在降价页面 (*.md
) 中使用。
阅读此 issue,似乎可以通过在 mkdocs.yml
文件中包含一个 extra
配置来完成,例如:
extra:
version: 1.0
...然后,在页面中使用该变量,例如如下:
---> My version: {{ config.extra.version }}
我试过了,但不幸的是它在我的示例中不起作用(没有变量替换):
- 我是不是做错了什么?
- 有没有可能实现这个功能?
不,目前无法做到。
你说你"use that variable in page"。我假设您指的是 "Markdown" 页面。目前模板变量在 Markdown 页面中不可用。模板引擎甚至 运行 都不反对 Markdown。 Markdown 解析器的输出是传递给模板的变量之一。有关其工作原理的更详细说明,请参阅我对
特定于 MkDocs,有一个未解决的问题 (#304) 讨论添加功能以支持 Markdown 页面中的一些有限模板,但它计划在 post-1.0,因此它目前不是头等大事。
作为更新,可以完全按照您的描述将变量从 extra
插槽插入 mkocs.yml
。
要实现此功能,您需要安装 markdownextradata 插件。
给定的答案已过时,因为这可以使用上面提到的 macros or markdownextradata 之类的插件来完成,除非您只引用 {{ version }}
.