Tuesday, June 26, 2012

Sphinx の SmartyPants を無効にする

Sphinx でハイフンの連続 -- が enダッシュ(—) に置き換わってしまうのを無効にしたい場合は、conf.py で html_use_smartypants を設定します。

# If true, SmartyPants will be used to convert quotes and dashes to
# typographically correct entities.
#html_use_smartypants = True
html_use_smartypants = False

これにより SmartyPants が行っている変換が無効になります。利用したい場合は unicode ブロックで定義して記述します。

.. |--| unicode:: 0x2012 

10 |--| 20

SmartyPants は pre code kbd script タグ内の文字列は変換しないので、コマンドオプションのような文字列であれば ``--foo`` のようにコードブロックでマークアップしておくことがよいでしょう。