ruby-1.9用ししゃもパッチ

人工無脳ししゃもruby-1.9でも動くように書いてみた。
オリジナルのししゃもとのdiffです。

1a2
> #-*- coding: EUC-JP -*-
7c8,10
< $KCODE = 'e'
---
> if RUBY_VERSION.match(/^1\.[678]/) then
> 	$KCODE = 'e'
> end
462,463c465,473
< 			lines.each do |line|
< 				ary << line.gsub(/\s+/, ' ').strip
---
> 			case RUBY_VERSION
> 				when /^1\.[678]/ then
> 					lines.each do |line|
> 						ary << line.gsub(/\s+/, ' ').strip
> 					end
> 				when /^1\.9/ then
> 					lines.each_char do |line|
> 						ary << line.gsub(/\s+/, ' ').strip
> 					end

解説

手を加えた箇所は次のとおりです。

  • マジックコメントを入れた
  • RUBY_VERSIONが'1.9'なら、$KCODEは使わない
  • RUBY_VERSIONが'1.9'なら、String#eachの代わりに、String#each_charを使う

これで、1.9系のrubyでもししゃもが動くんだぜ。*1
1.8系の環境でもちゃんと動くので安心だぜ。

*1:あくまで”動くようにした”だけなんで、1.9に最適化したわけではありません。