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
| 固定リンク
この記事へのコメントは終了しました。

コメント
Redmine2.2でチケット上の<code class="php">もこの対応で文字化けしなくなりました。
投稿: ひで | 2013年2月12日 (火) 14時45分