本文を読み飛ばす

docutilsで強制改行したい

docutilsでもっともやりたかったのが

強制改行=すなわち <br /> タグです.

<br> タグを挿入する方法

日本人は改行が好き...とかなんとかどこかに書いてましたが,
ビジネスのHowTo本でも改行に意味(=文の別れ目)をこめるって書いてますしね.

というか私もそんな感じで文章考えること多いんでやってみます.

手段がなかなか見付からなかったわけですが.
この間見付けることができました.

rawディレクティブを利用する方法

|b| みたいな記述を書けば生HTMLがはさめるのでそれを利用します.

ZReSTの場合はrenderにオプションを渡すため,

上記の raw_enable をonにしておくことが必要です.

.. |b| raw:: html

<br>

上のような行を最後の方に書いておけばOK.

でも全部のReSTに書かないといけないんでめんどくさいといえばそうです.

Python Scriptで無理矢理HTMLを挿入する方法

手順は/usr/lib/zope/doc/RESTRUCTUREDTEXT.txtに従って作ります.
Python Scriptの場合は:

オブジェクト--(call)-->文字列-->docutils-->HTML--[処理]-->br付きHTML

という処理になるので, 最後のHTMLにさらに手を加えます=[]の部分.

私の場合, TeXと同じにしたかったんで \\ をbrタグに変えちゃいます.

ただし, ReSTが\\を\にしてしまうあたりに注意が必要です.

また, ReSTがXHTMLを吐くのか, HTMLを吐くのか
ほんとは考えたりしないといけないと思いますが, 今回は気にしませんでした.

あと, raw_enable を有効にする作戦はこの方法ではできません.

というのも, PythonScript.standard.restructured_text は 都合の悪いことにオプションを

受け付けてくれないからです. むむむ...

といいつつ, うちではGlobalModulesを使ってPythonScript経由ではなく
docutilsを読んでしまっています.

このあたりでセキュリティは考えていません.

Zope使うのは一人だし.

コメント

Comments powered by Disqus
宣伝: