2007-07-23から1日間の記事一覧

main

rubyのトップレベル(?)のselfはmainというオブジェクトだった。 % ruby -e 'p self' mainirbでも同じmainになってる。 なんかのクラスのインスタンスってわけじゃなくて素のObjectなようだ。 % irb irb(main):001:0> self => main irb(main):002:0> self.…

バッファ上のソースコードを実行

vim

その時点のバッファ上のソースコードを拡張子に応じた処理系で実行する。 動機 今までは、:%!rubyとかで済ましてたんだけど、runghcとかwscriptだと ファイルの拡張子を見てるのでそれに対処するために作ってみた。 準備 以下の内容をwindowsなら$VIM/_vimrc…

全ASCII文字を列挙

これも教えてもらった。 % ruby -e '" ".upto("~"){|s|puts s}'→訂正:出力結果を確認してなかった。これも下と同じで9で止まってしまう。uptoはブロックが必須。返値は自分のみ。 > " ".upto("~").to_a LocalJumpError: no block given > " ".upto("~"){|s|…

n行毎に連結する

教えてもらったのでメモ。 % seq 9 | perl -pe 's/\n/,/ if $.%3' 1,2,3 4,5,6 7,8,9 % seq 9 | perl -lpe '$\=$.%3?",":"\n"'改行を含んだ置換をする場合は、sedのかわりにperlを使うことを考えるとよい。 ruby版 % seq 9 | ruby -pe 'gsub(/\n/,",") if $.…