2017-08-06 96 views
4

當我在我的獅身人面像文檔中使用如何使用尾隨空格的內聯代碼?

``# `` 

我得到以下警告:

WARNING: Inline literal start-string without end-string. 

試圖

:samp:`# ` 

導致

WARNING: Inline interpreted text or phrase reference start-string without end-string. 

公關會徽似乎是尾隨的空白,但我無法找出解決這個問題的方法。用反斜槓(\)轉義空白也沒有幫助(第一個示例警告仍然存在,第二個示例在生成的文檔中省略了空白)。

This answer不起作用,因爲內聯代碼段將|space|解釋爲文字字符串。


經驗與獅身人面像1.6.2。

+1

我建議你[向獅身人面像提交一個錯誤報告](https://github.com/sphinx-doc/sphinx/issues/new),並引用這個問題和其他問題。我找不出解決方法。 –

+0

同樣在這裏,沒有運氣做到這一點! –

+0

@StevePiercy說到一個錯誤什麼是預期的行爲?應該用反斜槓工作逃脫? –

回答

2

解決方法是對尾隨空格使用不間斷空格字符(U + 00A0)而不是常規空格(U + 0020)。

有幾種方法可以插入文字不間斷空格字符。見https://en.wikipedia.org/wiki/Non-breaking_space#Keyboard_entry_methods

+0

謝謝你的回覆。不過,我不知道如何在源代碼中插入NBSP。 [The documentation](http://docutils.sourceforge.net/docs/ref/rst/directives.html#unicode)指出,unicode指令只能用於替代定義和AFAIK,它們不能在內聯代碼段中使用。另外,當我將文檔編譯爲例如HTML然後這可能最終成爲一個不同的HTML實體(它最有可能用於視覺目的,但是當這段代碼被複制時,人們將以不同於預期的字符結束;不確定)。 –

+0

答覆已更新。我使用Emacs,'Ctrl-X 8 Space'運行良好。 – mzjn

+1

謝謝我設法插入它並驗證它的工作原理。它在編譯後的HTML源代碼中插入一個' '(無論如何,這可能是HTML中僅有的尾隨空格?)。您可以評論複製和粘貼部分,即如果有人從呈現的HTML複製內聯代碼部分會發生什麼情況?他們最終會複製一個固定的空間還是一個不間斷的空間角色?這可能取決於瀏覽器引擎(?),我嘗試使用Firefox和Chrome,最終複製了一個常規空間。 –