我正在尝试为我的项目创建文档,该文档具有通过串行接口的特定通信协议。
该协议的工作原理如下:
Request data: 'command id''argument1''argument2'
Response: 'command id''response'
其中 'command id' 是单个字符,并且 id 和参数之间没有空格。
我需要突出显示每个论点,以便阅读它的人可以识别每个论点的开始和结束位置,并在以后为每个论点提供定义。
我能得到的最好结果是使用glossary
sphinx 的选项。问题是词汇表是全球性的,所以我不能从任何命令中重复任何术语。
这是rst
带有glossary
解决方案的代码
command: L (0x4C)
-----------------
Description: Example command.
Usage: :term:`L`\ :term:`argument1`\ :term:`argument2`
.. glossary::
L
command identifier.
argument1
first argument1
argument2
second argument
Answer: :term:`L`\ :term:`response`
.. glossary::
L
command identifier.
response
response example.
我也尝试过使用:
:samp: `L{argument1}{argument2}`
但是这样一来,就不可能区分输出文档中的每个参数。这是一种交替每个参数颜色的方法吗?
还尝试用粗体标记替换每个参数,但如果它不是内容块,则会被主题样式覆盖。
我怎样才能达到示例中的结果,但glossary
仅限于我所描述的行?glossary
不需要在术语及其定义之间创建的引用。
我正在使用 readthedocs 提供的主题,但这不是必需的。