ただのにっき
2012-06-12(火) [長年日記]
■ Ruby 2.0を使ってみたくなったので今さらながらrbenvを導入
基本的に1.9系の最新リリースしか使わない方向で環境を整備してあるのだけど、そろそろLazyとか使いたいじゃないですか。いまだに1.8でしか動かないツールを使いたいとかそういう後ろ向きの理由じゃなくてね。
というわけでrbenv導入の単なる作業メモ。ネットで見つかる導入解説記事は信用せず、オリジナルのドキュメントを読んだ方が良い。最近はruby-buildのインストール先なんかがずいぶん整備されている。
rbenv本体のインストール。このインストール方法はなかなか好み:
% cd % git clone git://github.com/sstephenson/rbenv.git .rbenv % echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshenv % echo 'eval "$(rbenv init -)"' >> ~/.zshenv % exec $SHELL
続いてruby-buildプラグインを導入:
% mkdir ~/.rbenv/plugins % cd ~/.rbenv/plugins % git clone git://github.com/sstephenson/ruby-build.git
今まで使ってた古いrubyは一旦退避:
% mv ~/bin/ruby ~/bin/ruby193
rubyのインストール。最新リリースの1.9.3と開発中の2.0.0:
% rbenv install : 1.9.3-p194 1.9.3-preview1 1.9.3-rc1 2.0.0-dev : % rbenv install 1.9.3-p194 % rbenv install 2.0.0-dev : /home/sho/.rbenv/plugins/ruby-build/bin/ruby-build: line 161: autoconf: command not found
ぎゃ(笑)。しばらくHEADをビルドしてなかったからなぁ。たしかautoconfだけじゃなくてbisonも必要だったはず:
% sudo aptitude install autoconf bison % rbenv install 2.0.0-dev % rbenv versions * 1.9.3-p194 (set by /home/sho/.rbenv/version) 2.0.0-dev % rbenv global 1.9.3-p194 % ruby -v ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux] % rbenv global 2.0.0-dev % ruby -v ruby 2.0.0dev (2012-06-12 trunk 36037) [i686-linux]
よし。
% pry zsh: command not found: pry
ああ、そりゃそうですね。gemを全部入れなおすのはめんどいなぁ。
% gem install pry % rbenv rehash % pry [1] pry(main)> (0..Float::INFINITY).lazy.map{|i| i*2 }.take(5).force => [0, 2, 4, 6, 8]
わーい。
でもまぁ、gemとかいろいろ移行が面倒だし、当面は「rbenv global system」しておこう(ぉぃ)。
■ 「やっかいな放射線と向き合って暮らしていくための基礎知識」をKindleで読むためのCropBox設定
物理学者の田崎晴明が書いた「やっかいな放射線と向き合って暮らしていくための基礎知識」という電子書籍(?)がPDFで公開された。まわりの評判をみるかぎり、きちんとしたもののようだ*1。というわけで、Kindleに入れて読みましょう。
PDFのなかを見ると各ページのマージンをCropBoxで指定しているようなので、以前紹介した手法が使える。この場合はOFFSETを[60, 50, -60, -70]にすればいい感じになるようだ。
せっかくなのでスクリプトもcropbox.rbという名前でKindlizerに入れておいた。ご利用ください。
*1 一部の不届き者のせいで科学者が書いたというだけでは信用できないご時世なのがなんとも悲しい話である。