ソースコードを色分け表示するQuickLookプラグイン「QLColorCode」(2)

海上忍
2010-01-21 12:18:01
  • このエントリーをはてなブックマークに追加
最新特集【一覧】

 前回、qlmanageコマンドを利用し、指定したファイルのUTIおよび適用されるQuickLookプラグインを表示する方法を紹介した。その際、筆者のシステムでは、Cソースファイル(UTIは「public.c-source」)の表示には/Developer/Applications/Xcode.app/Contents/Library/QuickLook/SourceCode.qlgeneratorが使用され、意図していたプラグイン(~/Library/QuickLook/QLColorCode.qlgenerator)は機能していないことが判明した。

 この問題を解決するには、Xcode内部のプラグインを無効化することが近道。前述のパスにある「SourceCode.qlgenerator」の拡張子を適当にリネームすればいいだろう。これで、ほかのアプリケーションに含まれるQuickTimeプラグインが「public.c-source」に対応していなければ、CのソースコードをクイックルックしたときQLColorCode.qlgeneratorがロードされるはずだ。

 ようやく作業完了……と思うのは早計で、プラグイン内部に若干の手直しが必要。QLColorCode.qlgeneratorのバンドル内部にあるシェルスクリプト「colorize.sh」を適当なテキストエディタで開き、30行目にオプション「--encoding utf-8」を加え、34行目に「nkf」のパスを登録しよう(UTF-8で出力するための「-w」オプションを忘れずに)。これで、コメント部分などに日本語を含むソースもクイックルックできるはずだ。

--- colorize.orig2010-01-18 14:15:17.000000000 +0900
+++ colorize.sh2010-01-18 14:50:34.000000000 +0900
@@ -27,11 +27,11 @@
 cmd=$hlDir/bin/highlight
 cmdOpts=(-I --font $font --quiet --add-data-dir $rsrcDir/override \
          --data-dir $rsrcDir/highlight/share/highlight --style $hlTheme \
-         --font-size $fontSizePoints ${=extraHLFlags})
+         --encoding utf-8 --font-size $fontSizePoints ${=extraHLFlags})
 
 #for o in $cmdOpts; do echo $o\
; done -reader=(cat $target) +reader=(/usr/local/bin/nkf -w $target) if [ $thumb = "1" ]; then filter=(head -n 100) else
クイックルック 無事、コメント部分に日本語を含むソースをクイックルックできた
  • 新着記事
  • 特集
  • ブログ