gpt4 book ai didi

python-sphinx - 如何在 Sphinx reStructuredText 中向等宽文本添加前导/尾随空格

转载 作者:行者123 更新时间:2023-12-04 13:48:29 24 4
gpt4 key购买 nike

标题说明了一切......这适用于创建等宽文本:

``foo``

但这些没有:
`` foo``
``foo ``

如何在等宽文本中获得前导/尾随空格? (在有人向我引用 XY 问题之前:这正是我想要的,不多也不少。)

最佳答案

咕噜噜这似乎需要愚蠢的 Sphinx/docutils 黑客来解决,并使用自定义角色。

添加到 conf.py:

import re
from docutils import nodes

tt_re = re.compile('^:tt:`\\|(.*)\\|`$')
def tt_role(name, rawtext, text, lineno, inliner, options={}, content=[]):
"""
Can be used as :tt:`|SOME_TEXT_HERE|`,
where SOME_TEXT_HERE can include leading/trailing spaces
"""
result = []
m = tt_re.search(rawtext)
if m:
arg = m.group(1)
result = [nodes.literal('', arg)]
return result,[]

def setup(app):
app.add_role('tt', tt_role)

用法示例:
this :tt:`|  ab12    |` is just like ``foobar`` except it can have leading/trailing spaces.
code.literal 的 CSS还应该有一个固定宽度的字体(出于某种原因,空格被保留在 <span class="pre"> 块之外)并使用 white-space: pre; or white-space: pre-wrap; .

关于python-sphinx - 如何在 Sphinx reStructuredText 中向等宽文本添加前导/尾随空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39151571/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com