blog.hekt.org

Google Syntax Highlighter for WordPressに言語を追加

最近Emacs LispやらBashやらのコードをエントリーに載せていますが、それらの言語にGoogle Syntax Highlighter for WordPressが対応していないので、普通の<pre>タグのスタイルで表示されていました。それがけっこう不満だったので、調べて対応させてみました。

ちなみに他のプラグインを使うという案もあったのですが、構造を調べてCSSを弄るのが面倒なので却下されました。

今回はBash(shell)とLispを追加してみます。

まず、テキトーにググってshBrushBash.jsshBrushLisp.jsを入手。

Bashのほうは普通に使えますが、Lispのほうはバージョンが違うのかなにかよくわかりませんがこのままじゃ動かないのでちょっと編集します。

具体的にはSyntaxHighlighterdp.shに置換し、getKeywordsregexLibなどのメソッド名の先頭を大文字に置換します。ただし、8行目のthis.regexListは小文字のままでいいみたいです。shBrushBash.jsと照らし合わせてみれば分かりやすいと思います。

で、それをWordPressのプラグインディレクトリにある google-syntax-highlighter/Scripts にアップロードします。

最後に google-syntax-highlighter/google_syntax_highlighter.php に以下の二行を追加すれば完了。

<script class="javascript" src="<?php echo $current_path; ?>Scripts/shBrushBash.js"></script>
<script class="javascript" src="<?php echo $current_path; ?>Scripts/shBrushLisp.js"></script>

どこに追加するかはすぐ分かるはず。僕はついでに使わない言語のスクリプトタグを削除しておきました。少しは軽くなるか……?