1

我第一次使用Read the Docs。我正在为命令行系统编写文档,我的“代码示例”包括 shell 输出日志。shell 输出最终看起来像这样

读取文档的 shell 输出图像试图将其格式化为源代码,导致一些奇怪的选择

那就是——服务(或我对它的使用?)正在尝试格式化这个运行 shell 命令的示例,就好像它是源代码一样,并且将它magento2:generate视为一个类常量。

我可以控制哪些代码块在阅读文档时获取源代码格式吗?我尝试在管理员中不设置基本语言,但似乎没有效果。或者这是我需要在狮身人面像级别的 mkdocs 上控制的东西?(通过将您的 markdown 或 sphinx 文件转换为漂亮的 HTML 文件来阅读文档)或者其他什么?还是我运气不好?

4

1 回答 1

4

您需要在源文档中定义代码块的“语言”。Sphinx 和 MkDocs 都会尝试猜测语言,这通常已经足够好了。但是,有时,它会猜错并导致奇怪的突出显示。为了避免这种情况,两种实现都提供了一种机制来手动定义每个代码块的语言。

狮身人面像

对于 Sphinx,您可以使用代码块指令并包含块的“语言”:

.. code-block:: console

    You shell commands go here

在上面的例子中,我使用console了一个shell session。别名shell-session也可以。请注意,替代词法分析器bash(及其别名:shkshzshshell)并不严格适用于 shell 脚本,而您在 shell 会话中同时显示命令和输出。

可以在 Pygments 文档中找到支持的语言代码的完整列表。

文档

MkDocs 使用 Fenced Code Block Markdown 扩展来定义代码块的“语言”:

``` shell
Your shell commands go here
```

由于 MkDocs 使用highlight.js而不是 Pygments,所以支持的语言列表是不同的。因此,我shell在上面的示例中使用了(用于 shell 会话)。

于 2019-07-09T18:04:56.317 回答