31

reStructuredTextでノーブレークスペースを作成するにはどうすればよいですか?

明らかですが問題のある解決策は次のとおりです。

`word A`

ただし、rst2latexやrst2pdfなど、実装によって処理が異なる場合があります。さらに、斜体で表示されます。

4

5 に答える 5

37

unicodeディレクティブが必要ですが、これは置換でのみ使用できます。したがって、次のような置換を定義する必要があります。

.. |nbsp| unicode:: 0xA0 
   :trim:

次に、次のように使用します。

xx |nbsp| xx

:trim:置換の周りのそれらのスペースを取り除くためにあります。

于 2012-08-27T16:05:24.027 に答える
9

プレーンテキストとして読みやすくするというreStructuredTextの目標を考えると、視覚的に邪魔にならない|_|代わりに使用することもできます。|nbsp|

于 2013-01-09T15:29:14.260 に答える
5

docutils v0.9を実行しているため、ここでは問題は発生しません。少なくともrst2latexとrst2htmlは、改行しない空白に関して適切に動作しています。ラテックスは〜を生成し、htmlは を生成します 改行しない文字(\ xa0、\ 0240)を入力した場合。

たぶんあなたは編集者の問題を抱えていますか?文字を入力できれば、docutilsがその役割を果たします。

于 2012-08-29T00:58:40.920 に答える
1

私はSphinxの回避策を思いつくことになりました。HTMLおよびLaTeXライターを上書きして、~文字を改行しないスペースに変換します。HTMLのものは次のとおりです。

import sphinx.writers.html
BaseTranslator = sphinx.writers.html.SmartyPantsHTMLTranslator

class CustomHTMLTranslator(BaseTranslator):
    
    def bulk_text_processor(self, text):
        if '~' in text:
            text = text.replace('~', ' ')
        return text

sphinx.writers.html.SmartyPantsHTMLTranslator = CustomHTMLTranslator

そしてLaTeXのもの:

import sphinx.writers.latex
BaseTranslator = sphinx.writers.latex.LaTeXTranslator

class DocTranslator(BaseTranslator):

    def visit_Text(self, node):
        if self.verbatim is not None:
            self.verbatim += node.astext()
        else:
            text = self.encode(node.astext())
            if '\\textasciitilde{}' in text:
                text = text.replace('\\textasciitilde{}', '~')
            if not self.no_contractions:
                text = educate_quotes_latex(text)
            self.body.append(text)

sphinx.writers.latex.LaTeXTranslator = DocTranslator

それはそれほどきれいではなく、~キャラクターから逃れることさえできませんが、私の目的には役立ちます。

于 2012-08-27T16:52:01.453 に答える
0

私はそれをテストしていませんが、http://docutils.sourceforge.net/docs/ref/rst/directives.html#unicode-character-codesとユニコードの「ブレークスペースなし」の文字を使用できます http :// www .fileformat.info / info / unicode / char / a0 / index.htm

于 2012-08-07T13:45:26.523 に答える