moinのparserにpygmentsを用いる
moinのsyntax highlightがデフォルトで対応している言語が少ないのでpygmentsを入れてみた.この文書のままやったら素直にできた.
pygmentsというのはpythonで書かれたシンタックスハイライトツールで多様な言語に対応している.
ubuntuだとパッケージがあるので
$ easy_install pygments
すればインストールできる.
しかし,moinから実行するにはexternal/moin-parser.pyが必要なのでさらにソースを落としてきてmoinのインスタンスにコピーする
$ hg clone http://dev.pocoo.org/hg/pygments-main pygments $ cp pygments/external/moin-parser.py /path/to/moin-instance/data/plugin/parser/code.py
あとは,ハイライト用のスタイルシートを作成して適当な場所にコピーする
$ echo "<html></html>" | pygmentize -f html -l html -O full=True,cssfile=./pygments.css $ cp pygments.css /path/to/css-dir
インスタンスがcss見つけられるようにwikiconfig.pyに設定する
stylesheets = [('screen', '/path/to/css-dir/pygments.css')]
それでapacheの再起動すれば以下のコードでシンタックスハイライトされる.
{{{ #!code perl print "Hello, World\n"; }}}