Decorator Plugin

id:nekotank:20071218:1197950579で、Decorator Plugin のチケット項目カスタマイズできたらいいですよねといったら、Shibuya.trac のミーティングで Decorator Plugin カスタマイズできるようにアップデートしたよと、岡本さんに教えてもらったんでアップデートしてみました。…が

Traceback (most recent call last):
  File "/usr/lib/python2.4/site-packages/trac/web/main.py", line 406, in dispatch_request
    dispatcher.dispatch(req)
  File "/usr/lib/python2.4/site-packages/trac/web/main.py", line 239, in dispatch
    template, content_type = self._post_process_request(req,
  File "/usr/lib/python2.4/site-packages/trac/web/main.py", line 269, in _post_process_request
    content_type)
  File "build/bdist.linux-i686/egg/decorator/decorator.py", line 128, in post_process_request
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 368: ordinal not in range(128)

Unicode問題で…。最初は、trac.ini のカスタマイズかと思ったのだけどそうでもなさそう。
コード見てみたけどなぁ〜

                script = script+"  ultimania.trac.decorate();\n"

            script = script+"}"
            script = script+"</script>"
            script = req.hdf['project.footer'] + script # ←ここでエラー
            req.hdf['project.footer'] = Markup(script)

設定ファイルから読み込むときに、coding がうまく言ってなさそうな感じするんだけど。
project.footer を unicode 関数で読んであげないといけないのかな??
あんまりわかりません><

追記

WeekBuildのHACK日記 UnicodeとUTF-8の違い*1であるように、

project.footer=(project.footer, utf8)

とすればいいのかな?

*1:あ、これHirobeさんのところだ