Mac OS X Lion に Perl のモジュール Imager を入れる

Perl CPANモジュールガイド という本を買って読んでる。それに載っている画像を扱う Imager というモジュールを入れるときのメモ。jpeg, gif, png, tiff を扱えるようにしてインストールする。

環境

やり方

まず jpeg, gif, tiff を Imager で扱えるようにするためにライブラリを brew でインストールする。png は既に /usr/X11 以下に入ってる。
brew install jpeg libtiff giflib
あとは cpanm に任せればいいと思いきや png のライブラリが入ってる場所を指定してインストールしないとだめ。よって
cpanm --look Imager
としてから
IM_INCPATH=/usr/X11/include IM_LIBPATH=/usr/X11/lib perl Makefile.PL
とする。ここでちゃんと

のように望みのライブラリが検出されてるかチェック。よかったら以下を実行。
make
make test
make install
ライブラリ含めて Imager がインストールされたかチェックしたいときは以下を実行。
perl -MImager -le 'print for keys %Imager::formats'

ちなみにはじめ、僕は Perl 5.14.2 を sudo perlbrew でインストールしてしまい、Imager が標準の ~/perl5/perlbrew/perls/perl-5.14.2/lib/site_perl/5.14.2 ではなく ~/perl5/lib/perl5 以下に配置されて Perl 5.14.2 から認識されない事態になっていて時間を無駄にした。perlbrew を使うときも cpanm 使うときも変に sudo を使うべきじゃない。

Rails 3.1.1 のメモ

Could not find a JavaScript runtime のエラー

rails s などをしたとき、Could not find a JavaScript runtime のエラーがでるときがある。これは Rails 3.1 から execjs を読み込むようになって、実行には JavaScript ランタイムが必要になったから。therubyracer または nodejs とかを入れればよい。therubyracer なら Gemfile に
gem 'therubyracer'
と書き足して
bundle install
nodejs を入れたければ、例えば Ubuntu のときは以下のようにする。
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
情報源:https://github.com/sstephenson/execjs
https://launchpad.net/~chris-lea/+archive/node.js/
http://aligach.net/diary/20110904.html

already initialized constant WFKV_ のエラー

common_192.rb の 53 行目を
remove_const :WFKV_
WFKV_ = '(?:[^%#=;&]*(?:%\h\h[^%#=;&]*)*)' # :nodoc:
に変える。( 多分 rack 1.3.5 を使えばこのエラーは出ない。)
情報源:http://d.hatena.ne.jp/gitrhythm/20111008/1318086227

undefined symbol: sqlite3_initialize のエラー

sqlite をソースからコンパイルして /usr/local などにインストールするとこのエラーがでるかもしれない。そのときは以下のような感じで場所を .bashrc などに書く。
LD_LIBRARY_PATH=/usr/local/lib
export LD_LIBRARY_PATH

rake test でこける

Ruby on Rails 3.1.1 で rake test とすると

..../turn-0.8.3/lib/turn/autorun/minitest.rb:14:in `<top (required)>': MiniTest v1.6.0 is out of date. (RuntimeError)
`gem install minitest` and add `gem 'minitest' to you test helper.
とのエラーが出た。これを直すには、

  • turn 0.8.2 を使うようにする
  • minitest をインストールして、それを使うようにする

のどちらかをすればいいっぽい。
参考:
http://stackoverflow.com/questions/7719114/rails-3-1-1-and-cucumber-error
http://pragprog.com/titles/rails4/errata

詳しくは以下。

turn 0.8.2 を使う場合

rails アプリのディレクトリにある Gemfile の最後の方を
group :test do
  # Pretty printed test output
  gem 'turn', '< 0.8.3'
end
に変えて
bundle install

minitest をインストールして、それを使うようにする場合

Gemfile の最後の方で
group :test do
  # Pretty printed test output
  gem 'turn', :require => false
  gem 'minitest'
end
として
bundle install
このとき一緒に minitest もインストールされる。

ちなみに turn 0.8.3 では表示が少し変わった。

OS X Lion で Eclipse 3.7 をフルスクリーンで使う

OS X Lion になっていくつかのソフトはフルスクリーンで使えるけど Eclipse はデフォルトでは無理。
でも http://alblue.bandlem.com/2011/07/full-screen-support-for-eclipse-on-osx.html によるとちょっといじればフルスクリーンになるらしい。それをやってくれるプラグインも公開してくれているのでやってみる。
試した環境は、OS X Lion 上の日本語化した Eclipse 3.7 (64bit)。

  1. [ヘルプ]->[新規ソフトウェアのインストール] を開き、右上の「追加」からロケーションに http://github.bandlem.com/ を入れ「OK」を押す。名前は適当に。
  2. すると下に General Utilities (その下部に Fullscreen feature for OSX Lion) が現れるのでチェックボックスにチェックを入れる。
  3. 後は「次へ」を押して指示に従っていけばインストールできる。インストールが終わって Eclipse 再起動したらフルスクリーンのボタンがでてきた。

P.S. Eclipse Marketplace からもインストールできるみたい。

OS X Lion に Eclipse 3.7 を入れる + 日本語化

  1. JREがインストールされていなければインストールしておく。 http://support.apple.com/kb/DL1421?viewlocale=ja_JP
  2. http://www.eclipse.org/downloads/ から適当な Eclipse をダウンロードする。僕の場合は Eclipse IDE for Java Developers の Mac OS X 64bit 版をダウンロードした。
    また http://mergedoc.sourceforge.jp/ から日本語化プラグイン pleiades_1.3.3.zip もダウンロードする。
  3. Eclipse を解凍して Applications フォルダに入れる。
    tar -xvf ~/Downloads/eclipse-java-indigo-macosx-cocoa-x86_64.tar.gz -C /Applications
  4. pleiades_1.3.3.zip を解凍して出てきた features フォルダと plugins フォルダを /Applications/eclipse 以下に結合する。
    unzip ~/Downloads/pleiades_1.3.3.zip features/* plugins/* -d /Applications/eclipse
  5. /Applications/eclipse/Eclipse.app/Contents/MacOS/eclipse.ini を開いて最終行に
    -javaagent:/Applications/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar
    を追加して保存する。これで終わり。

EmEditor で JavaScript を整形する

「EmEdtior で Perl のスクリプトを整形する」 に続いて、今度は JavaScript を整形してみる。

試した環境と必要なもの

  • EmEditor Pro 32bit ver10.0.8 - フリーはマクロが設定できないからダメ
  • JsDecoder.js - JavaScript を整形するスクリプト。 Cezary Tomczak という方の作。
  • Windows Vista HomePre 32bit - XP,7 でも大差ないと思う。

やり方

  1. 下記の URL から JsDecoder.zip をダウンロードしてきて、解凍して出てきた JsDecoder.jsEmEditor のマクロ用フォルダに入れる。例えば C:\Users\USERNAME\Documents\Macros\JsDecoder.js とする。
    http://www.gosu.pl/decoder/
  2. 下記の内容を適当な名前(拡張子は .jsee )でマクロ用フォルダに保存する。例えば C:\Users\USERNAME\Documents\Macros\JsFormat.jsee とする。
    if ( document.ConfigName == 'JavaScript' 
    || document.ConfigName == 'JavaScript for EmEditor' )
    {
    var objFileSys
    = new ActiveXObject('Scripting.FileSystemObject');
    var macroFolder
    = String(ScriptFullName).replace(ScriptName, '');
    var jsdecoderFile = objFileSys.OpenTextFile(
    objFileSys.BuildPath(macroFolder, 'JsDecoder.js'), 1);
    var contentOfJsdecoder = jsdecoderFile.ReadAll();
    jsdecoderFile.Close();
    eval(contentOfJsdecoder);
    var jsdecoder = new JsDecoder();
    document.selection.SelectAll();
    jsdecoder.s = document.selection.Text;
    var code = jsdecoder.decode();
    document.selection.DestructiveInsert(code);
    }
  3. EmEditor のメニューから マクロ->選択 で今作成したファイルを選択する。
  4. ツールバーにマクロツールバーがなかったら、ツールバーを右クリックしてマクロツールバーをチェックして表示する。
  5. これで JavaScript のファイルを編集しているとき、マクロツールバーの JsFormat ボタンを押せば整形される。
  6. キーボードショートカットの登録は、 JavaScript の設定->キーボード からできる。
P.S. UniversalIndentGUI を使えば、いろいろな言語を整形できる。ただし EmEditor と連携させるには一つ一つの言語についてどうするか書かなくちゃだめそうで面倒。

USB メモリから Chromium OS を試してみる

すこし前に、アメリカなどで Chrome OS を積んだ "Chromebook" がサムスンとエイサーから発売されるというニュースが流れていた。日本での発売予定はないらしい。
けれどガジェット通信の記事 によれば、Chromium OS を USB メモリから気軽に試せるということなので、手持ちの Let's note S9 でやってみた。
※ちなみに HP nx6120 で試したら、USB メモリからブートして "Chromium" のロゴが出てから一行に進まなくなったので、無理な PC も結構あると思う。
20110702195929

USB メモリの準備から起動の仕方

  1. 4GB ぐらいの USB メモリを準備する。
  2. 下記の URL から Hexxeh という方(17歳!?)がビルドした Chromium OS の USB メモリ用のもの(200MB前後)をダウンロードしてくる。
    http://chromeos.hexxeh.net/vanilla.php
  3. ダウンロードしたものは tar.gz なので解凍しておく。解凍ソフトが手許になければ 7-zip をダウンロードしてきてそれで解凍する。解凍後は 2GB弱になる。
  4. 解凍して出てきた img ファイルを Image Writer 0.1 で USB メモリに書きこむ。これで USB メモリは完成。
  5. 試したい PC の Bios に入って USB メモリからブートするように設定する。
  6. PC に USB メモリを挿し、起動する。
  7. "Chromium" のロゴが出たあと、言語とキーボードの設定の画面になるので、どちらも日本語を選ぶ。
  8. ユーザーとネット接続方法の入力画面になるので、普段 Chrome を管理しているアカウントとそのパスワード、適切なネット接続方法を選ぶ。僕の場合、無線ランが認識しなかったので仕方なくランケーブルを挿してイーサネットを選んだ。
  9. 完了!

感想など

全体的にはいい感じ。
  • 日本語の表示や入力に関して特に問題はなかった。フォントは IPA P Gothic が使われていてキレイ。日本語入力システムは多分、Googleの日本語入力が使われていて特に不満がない。日本語入力への切り替えは Windows と同じ半角/全角キーが使える。
  • 文章を書きたければ Google ドキュメントを使えばいい。メモを取りたければ Springpad とか使えばいい。
  • Ctrl + m でファイルにアクセスできる。外部ストレージもここからアクセスできる仕組みらしい。
  • やはり、Googleアカウントを最初に入れただけで、今までの Chrome のブックマークや拡張機能が自動的に設定されるのはとても楽でいい。
  • 時々、もたつく場面があるが、これは Chromium OS のせいではなくて、USB メモリで起動させているからだと思う。
  • Ctrl+Alt+T で crosh というターミナルが開くが ls more less pwd などのコマンドがない。
  • about:*** で色々な情報にアクセスできるっぽい。
まず Chromium OS がどういうものか理解しないといけない