スフィンクスの単一の単語(または文字)の色を設定する方法はありますか?HTMLのタグのようなマークアップタグがあるはずですfont
。
5 に答える
Sphinxを利用したWebサイトでは、次の組み合わせを使用しています。
- 色ごとに1つずつ、役割の定義を含むrestructuredTextファイル-.special.rst(BitBucketリンク)を参照
- 各役割のカラールールを含むCSSファイル-hacks.cssの最初の行を参照してください( BitBucketリンク)
次に、色が必要なすべてのrSTファイルで、最初に.special.rst
手動で上部にインポートします。
.. include:: .special.rst
またはrst_epilog
、Sphinxのconf.py
ファイルの構成変数を使用します。
rst_epilog = "\n.. include:: .special.rst\n"
そして、各役割は純粋なrST構文で簡単に使用できます。
This is :red:`red !` And :blue:`this part is blue`.
詳細はこのページに記載されています (フランス語で申し訳ありません)。
これは、html出力(およびhtmlのようなもの)には完全に機能しますが、PDFには機能しません。色付きのPDFを作成するには、上記の最初の回答を参照してください。
HTMLに縛られずにこれを実行したい場合は、通常の本文テキストとは異なるスタイルを単語に適用してみてください。
rst2pdfマニュアルを基にしたこの例では、使用しているバックエンドで赤である既存のルーブリックスタイルを適用します。
Before red.
.. role:: rubric
I like color :rubric:`rubric`.
After red.
単語の実際の外観は、ドキュメントの生成時に使用するスタイルシートで選択したスタイルがどのように定義されているかによって異なります。青いテキストが必要な場合は、青いテキストスタイルを作成し、通常のテキストスタイルから派生させます。スタイルシートはバックエンド固有であり、デフォルトを使用している可能性があります。rst2pdf.pyのデフォルトを印刷するには、次のようにします(rst2pdfマニュアルから)。
rst2pdf --print-stylesheet
rst2pdfスタイルシートの例を続けて、これをスタイルシートに追加して、青いテキストスタイルにします。
bluetext:
parent: bodytext
textColor: blue
ドキュメントでは、このスタイルを参照して青い単語を取得できます。このビットは一般的なものであり、HTMLまたはバックエンドのスタイルシートで青いスタイルを定義する場合は青いテキストを作成する必要があることに注意してください。
Before blue.
.. role:: bluetext
I like color :bluetext:`blue`.
After blue.
生成されたPDFには、色付きの単語が含まれています。
Sphinxは、含めることを目的とした標準定義ファイルで色をすでにサポートしています(ただし、CSSファイルはありません)。s5defs.txt
次のテキストを作成して、ファイル内の
rst_epilog
sphinx構成の値に追加します。docs/conf.py
rst_prolog = """ .. include:: <s5defs.txt> """
Sphinxの指示に従って、色付きのcssを追加します(たとえば、@Næreenの回答
hack.css
からを採用します)。
cssファイルをegに配置します
_static/css/s4defs-roles.css
;shtml_css_files
そのパスをsphinx構成に追加します。html_css_files = ['css/s4defs-roles.css']
その後、以下を使用できます。
Some :red:`colored text` at last!
ヒント:LaTeX出力にもスタイリングを表示したい場合は、このSO をお読みください。
これは機能しますが、HTMLは別の段落に残されます。
.. raw:: html
<font color="blue">Blue word,</font>
And a word without color
誰かがより良い答えを持っているなら、私はそれを受け入れます。
に似たものを探してここに着陸したので、簡単にメモしhtml
ます。
これは私にとってSphinxv2.0.1で動作します。これは@adam-matanによって報告された概念を使用しますが、フォーマットの問題(つまり、段落の問題)は発生しません。
.. role:: raw-html(raw)
:format: html
:raw-html:`<font color="blue">Blue word,</font>` And a word without color