2008-04-20から1日間の記事一覧

バッファリングの問題だな。

eshell で標準出力に出力されるタイミングが遅い問題について - gan2 の Ruby 勉強日記 alias :_puts :puts def puts(*args) _puts *args $stdout.flush end バッファリングの問題のようだから、再定義しなくても「$stdout.sync = true」でよくないかな?し…

yasnippetのインデントはやっぱりおかしい

たとえばブロック付きメソッド呼び出しのdoを定義してみる。 #name : do ... end # -- do $0 end で、doを展開させるとこんなインデントになってしまう。 def x hogehoge do end end ソースを読んだが、narrow-to-regionでnarrowingしてsnippetを挿入し、挿…

yasnippetはインデントしてくれないのか

ruby-modeで「Comp」をyasnippetに展開させると、 include Comparable def <=> other end と出てくれるが、indentしてくれない。skeletonでもindentしてくれるのに…だれかhackしてくれてるかな。 追記 と思ったら、今のインデントを維持してくれるんじゃん!…

yasnippet.elとskkとの相性問題を回避

yasnippetとskkの相性が悪いかも - http://rubikitch.com/に移転しました遅れ馳せながらyasnippetの導入を真剣に考えた。おすすめ通り、yas/trigger-keyを space にしといた。しかし、yasnippetとskkは相性が悪く、spaceをおしてもスペースが入力できない。 …

そこでskeletonですよ

Ruby が PHP に負けている点 #2: 複文の終わりを表す予約語が end しかない - kなんとかの日記 Ruby では end しかないから、if 文や for 文がネストしたときに end を書き忘れたりタイプ ミスしたりすると、どこを間違えたのか探し出すのが非常に困難である…

Array#uniqとUnix系OSのuniqの挙動が違う件

rubyのuniqがun*xのそれと動きが違う件 - 計算機と戯れる日々 un*xのコマンドのuniq ~$ echo -e "1\n2\n2\n3\n2\n2\n"|uniq 1 2 3 2 一方rubyは >> [1, 2, 2, 3, 2].uniq => [1, 2, 3] FAQな気がする。 追記 Unix系OSのuniqコマンドは「連続した重複行を取り…

Enumerable#injectはおかしくない

rubyのinjectにはバグがあるのか? - 計算機と戯れる日々 [1, 2, 2, 3, 2].inject([1]){|a,i|p a;p a[-1];a<<i} # => [1, 1, 2, 2, 3, 2] # >> [1] # >> 1 # >> [1, 1] # >> 1 # >> [1, 1, 2] # >> 2 # >> [1, 1, 2, 2] # >> 2 # >> [1, 1, 2, 2, 3] # >> 3 [1, 2, 2,</i}>…