我在reStructuredText文档中有这个片段:
1. Find the file at ``~/Google Drive/code/mac/install.sh``.
注意代码/报价环境。请注意路径中Google
和Drive
之间的空格。
在HTML中使用Sphinx渲染时,Google
和Drive
之间有一个换行符,空间消失了。 (由于这是文档,我需要代码环境中的所有内容完全按照输入的方式显示给用户,其中包括“Google”和“Drive”之间的空间。不仅应该有空格,还应该用阴影显示灰色就像代码环境中的所有其他代码一样)
如何告诉reStructuredText在该位置使用不间断的空间?
答案 0 :(得分:1)
将一些css放在项目顶部库中的文件_static/custom.css
中
code.docutils.literal {
white-space : pre;
}
(我不知道CSS中是如何允许在斜杠处说而不是在空格处说的。)
对于
方法,你可以这样做:
1. Find the file in our Google Drive folder It is located at
``~/Google`` |_| ``Drive/Quisquam/code/repo/latest/application-bundles/mac/install.sh``.
.. |_| unicode:: 0x00A0
:trim:
击> <击> 撞击>
编辑:比comment中指出的更好的第二种方法是在reST源中使用NO-BREAK SPACE。然后HTML将使用
,并且URL仍然会以斜线换行,而不是上面的第一种方法,这使得它真正解开(在我的简短调查中)。
我在其他上下文中使用了第二种方法(也是针对LaTeX输出)来插入Unicode + 202F,而且我已经忘记了对于Unicode + 00A0,只需要在reST源中直接使用它。
答案 1 :(得分:1)
如果常规空格字符被reST文件中的非中断空格(U + 00A0)替换,它对我有用。这将在输出中生成包含<span>
的单个Google Drive
元素:
<span class="pre">~/Google Drive/code/mac/install.sh</span>
插入文字不间断空格可以通过多种方式完成。请参阅https://en.wikipedia.org/wiki/Non-breaking_space#Keyboard_entry_methods。