Restructured Textでテキストをストライクすることは可能ですか?
たとえば、HTMLに変換すると<strike>
タグとしてレンダリングされるもの: ReSTructuredText
VilleSäävuoriの提案に従って、ドキュメントをよりよくチェックし、次のように取り消し線を追加することにしました。
.. role:: strike
:class: strike
ドキュメントでは、これは次のように適用できます。
:strike:`This text is crossed out`
次に、私のcss
ファイルにエントリがあります。
.strike {
text-decoration: line-through;
}
それを行うには、少なくとも3つの方法があります。
.. role:: strike
An example of :strike:`strike through text`.
.. container:: strike
Here the full block of test is striked through.
An undecorated paragraph.
.. class:: strike
This paragraph too is is striked through.
.. admonition:: cancelled
:class: strike
I strike through cancelled text.
rst2html
を適用すると、次のようになります。
<p>An example of <span class="strike">strike through text</span>.</p>
<div class="strike container">
Here the full block of test is striked through.</div>
<p>An undecorated paragraph.</p>
<p class="strike">This paragraph too is is striked through.</p>
<div class="strike admonition">
<p class="first admonition-title">cancelled</p>
<p class="last">I strike through cancelled text.</p>
あなたはそれらをスタイルで使用します
.strike {
text-decoration: line-through;
}
ここでは、例としてadmonition
ディレクティブを取り上げましたが、:class:
オプションを許可するディレクティブであれば問題ありません。
span
を生成するため、段落の一部にスタイルを適用できるのはrole
ディレクティブだけです。
Gozzilliが提案するように、strike
という名前のディレクティブにクラスstrike
を追加するのは冗長です。これは、ディレクティブ名がhtml出力のデフォルトクラスであるためです。
これらの構文をrest2html
とSphinxの両方でチェックしました。しかし、すべてがrest2html
で期待どおりに機能する一方で、class
ディレクティブはSphinxで失敗します。あなたはそれを置き換える必要があります
.. rst-class:: strike
This paragraph too is is striked through.
これはonly小さな Sphinx reSt Primerの脚注 で述べられています。
公式仕様による ReSTには取り消し線マークアップのディレクティブはありません。
ただし、環境で:raw:ロールが許可されている場合、または独自のロールを作成できる場合は、そのためのカスタムプラグインを作成できます。
他の回答はとても役に立ちました。私はSphinxにあまり詳しくありませんが、プロジェクトに使用しています。私も取り消し線能力を望んでおり、以前の回答に基づいてそれを機能させました。明確にするために、gozzilliが述べたように取り消し線の役割を追加しましたが、スタックオーバーフロースレッドで説明されているように、rst_prolog変数を使用してconf.py内に保存しました ここ 。これは、この役割がすべての残りのファイルで使用できることを意味します。
次に、ソースディレクトリ内にlayout.html
内に_templates
を作成して、上記のようにベースhtmlテンプレートを拡張しました。このファイルの内容は次のとおりです。
{% extends "!layout.html" %}
{% set css_files = css_files + ["_static/myStyle.css"] %}
これには基本的に、ビルドされたすべてのデフォルトのhtmlドキュメントへのカスタムcssファイルが含まれます。
最後に、ソースディレクトリ内の_staticディレクトリに、以下を含むmyStyle.css
ファイルを含めました。
.strike {
text-decoration: line-through;
}
他の答えはすでに提供しています。
どのファイルを編集するかが限られたSphinxの経験ではわからなかったので、私は単にこの答えを書いています。