2009/08/27 (木)
caddy.rb
面白そう.anarchy golf 用補助スクリプト.ただし,基本的に Linux/BSD 系での使用が前提の様子.
すげえ楽ちんで素晴らしい.なんか新しい言語を学んだりするのにも便利だろうなぁ.
インストール方法
基本的に README に書かれていますが
- ダウンロード&解凍する.以下,README に従って
- alias を作る.alias caddy='ruby /hogehoge/caddy.rb'
- caddy update で最新のゴルフ場情報を取得し,ユーザ名を設定する
でインストールできました.
使い方
以下では,Short Pi に ruby で回答する例を示します.
caddy short_pi.rb
などと実行すると,ファイル名から問題を推測してリストを提示してくれます.
short_pi corresponds to 0: none of below 1: Short Pi (1250) 2: show the way (6666) 3: slope lines (7272) 4: Drop first line (7333) 5: sort characters (7333) Input 0-5 [1] ? : 1
というわけで,ここでは 1 を選択.自動でテストが始まり
Loading testcases of 'Short Pi' Test #1... OK 0.072215
余分な空白や改行が取り除かれます.
Running squeezer... 11 => 10 (1/7/2) Test #1... OK 0.123399
テストに通れば,サーバに投稿することも可能です.
Submit this 10B code as ema (Y/n) ? : y Submitting... Success! And it's new record!
Ruby に限らず,たとえば,php なら
caddy short_pi.php
と実行すると
Loading testcases of 'Short Pi' Test #1... OK 0.085534 Running squeezer... 17 => 17 (1/15/1) Test #1... OK 0.063777 Submit this 17B code as ema (Y/n) ? : y Submitting... Success! And it's new record!
と php5 が有れば,自動でそちらを実行してくれるようです!
Statistics を見ると,バイナリ:1,アスキー:15,記号:1 と,どうやらファイル末尾に余分な改行コードが残っているようです(PHP ですから残っても仕方がないですね).修正して再投稿しました.
%> caddy short_pi.php Loading testcases of 'Short Pi' Test #1... OK 0.090966 Running squeezer... 16 => 16 (0/15/1) Test #1... OK 0.171221 Submit this 16B code as ema (Y/n) ? : y Submitting... Success! And it's new record!
超楽ちん!!
備考:Ubuntu で php5 コマンドを使う
なお,Ubuntu で php5 コマンドのインストールは,以下の通りのようです.
sudo apt-get install php5-cli
以上,最短がすぐに思いついたサンプルでした.e.rb とか hello world とかどうやっているんだろう?
なんか,文体が GIGAZINE っぽくてごめんなさい.
[ツッコミを入れる]

