« TortoiseHGの3-Way Diffの設定(WinMerge, P4Merge) | トップページ | Centos6でgemパッケージを作ってrubygems.orgで公開してみた »

2012年12月 6日 (木)

Redmineでphpをリポジトリ表示すると文字化けする

Redmine2.1.4 を入れたのだが、
phpのファイルをリポジトリ表示すると
日本語が文字化けしていた。

原因は Coderay がphpをうまく処理できないためらしい。
そこで、プログラムを変えて無理やり
ファイルタイプがphpだった場合は、
java_script として解釈させることにした。
redmine/lib/redmine/syntax_highlighting.rb
*** 40,51 ****
--- 40,53 ----
          # Should not return line numbers nor outer pre tag
          def highlight_by_filename(text, filename)
            language = ::CodeRay::FileType[filename]
+           language = :java_script if language == 'php' || language == :php
            language ? ::CodeRay.scan(text, language).html(:break_lines => true) : ERB::Util.h(text)
          end
  
          # Highlights +text+ using +language+ syntax
          # Should not return outer pre tag
          def highlight_by_language(text, language)
+           language = :java_script if language == 'php' || language == :php
            ::CodeRay.scan(text, language).html(:wrap => :span)
          end
        end

|
|

« TortoiseHGの3-Way Diffの設定(WinMerge, P4Merge) | トップページ | Centos6でgemパッケージを作ってrubygems.orgで公開してみた »

コメント

Redmine2.2でチケット上の<code class="php">もこの対応で文字化けしなくなりました。

投稿: ひで | 2013年2月12日 (火) 14時45分

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/533276/56260639

この記事へのトラックバック一覧です: Redmineでphpをリポジトリ表示すると文字化けする:

« TortoiseHGの3-Way Diffの設定(WinMerge, P4Merge) | トップページ | Centos6でgemパッケージを作ってrubygems.orgで公開してみた »