プログラマのブログなのでシンタックスハイライターの GeSHi Filter モジュール を導入した

Module 紹介

Drupal のサポート事務所ってことで、ソースコードを記述することが多い。もちろん、このブログでもコードのサンプルを示したりする予定。なので、Syntax Highlighter (シンタックスハイライター)のモジュールを探しているところ。とりあえず、サーバ側で変換してくれるタイプの GeSHi を使ってみることに

GeSHi の Drupal モジュール(GeSHi Filter)は、 https://drupal.org/project/geshifilter から入手できる。このモジュールは、フィルターとして動作し、本文に入力されたプログラムのソースコードを、シンタックスハイライトされた HTML に変換してくれる。また、フィールドタイプとしても追加できる。

このモジュールを使うために他に必要なものは、Libraries APIモジュール。そして、GeSHi ライブラリ。GeSHi ライブラリは、1.1.x 系だとサポートしていないらしいので、1.0.x 系を使うこと。

インストール

GeSHi Filterモジュール(もしまだインストールしていない場合は、Libraries API モジュールも一緒に)を sites/all/modules/ 等のサードパーティモジュール置き場に展開し、sites/all/libraries/ に GeSHi ライブラリを展開する。そのあとにモジュールの管理ページで GeSHi Filter モジュールを有効にする。

設定

GeSHi フィルターの管理画面は、 admin/config/content/formats/geshifilter になる。
(特に設定を変更する必要は無さそうだが、何か気づいたら今後追記していく予定)

GeSHi フィルターをブログなどの本文中で利用するために、テキストフィルター設定が必要になる。テキストフィルターの設定は admin/config/content/formats にある。

一応管理者なので、Text format の Full HTML を主に利用しているが、Filterd HTML の場合は、「Limit allowed HTML tags」の後にインストールすると良い。

使用例

PHP のソースコード

これが、以下のように置き換わる

シンタックスハイライトされた PHP のソースコード

使ってみて

特に使いにくいところもなく、良いモジュールだと思う。対応している言語の数もかなり多い。C言語や Objective-C にも対応しているので、別のブログでもこのモジュールを使ってみようかと思う。

このエントリーをはてなブックマークに追加
Pocket