2010-01-01から1年間の記事一覧

頭の体操

window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…

manコマンドっぽく美女リナックスの画像を取ってくる

巷では美女リナックスという女の子がUnixのコマンドを紹介してくれるサイトが話題になっています。 折角コマンドを紹介してくれるんだから、やっぱりブラウザからじゃなくてターミナルから参照したいですよね! .bashrcとかにこんな感じで書きましょう。 fun…

ウェブ上から画像を取得してRMagickで変換してRuby/Tkで表示する

#!/usr/bin/env ruby # coding: utf-8 require "rubygems" require "tk" require "tkextlib/tkimg/png" require "open-uri" require "rmagick" width = height = 45 icon = "http://a0.twimg.com/profile_images/1182392304/bakeneko.png" image = Magick::I…

オブジェクトが持っているメソッド一覧を出力する

def show_all_methods(o = Object) o = eval(o) if o.class == String all = [] o.methods.each do |m| begin all << o.method(m).call if m.to_s.include? "methods" rescue ArgumentError next end end all.flatten.uniq.sort end p show_all_methods ARGV…

Watirで診断メーカー巡り

Watirを使って延々と診断メーカーするだけの簡単なスクリプトを書いた。 入力フォームに入力されるのが妙に遅いのが気になるのと、Ctrl+Cしても異常終了しないようにSignal.trapしてるけど効いていない気がする。 #!/usr/bin/env ruby # coding: utf-8 requi…

Excelの列の形式を数字に変換する

Excel等では列が"AA"とか"AB"のようにアルファベットで表示されているんだけど、この表記だと今の列が何列目か直観的に分からないので書いてみた。 def col_to_number(str) sum = 0 al = ("a".."z").to_a.join str.downcase.split(//).reverse.each_with_ind…

『パーフェクトソフトウェア』を読んだ

前々からウェブ上で「テストファースト」とか「TDD(Test Driven Development)」を見かけて気になっていて、実践してみたいと思っていたんだけどなかなか実践できていなかった。そんな中本屋をぶらぶらしてるとこの本を見つけ、気になったので買ってきた。 思…

テキストを正方形っぽく整形したい

ふとなんとなくテキストを正方形っぽく整形したいなあと思って書いてみた。割とそれっぽくなるはず。 class String def pat w = Math.sqrt(self.length).ceil a = self.split(//) t = [] self.length.times do |s| t[s%w] ||= "" t[s%w] << a.shift end t en…

オレオレrequire

gemをいじってたら、gemのパス周りがなんだかヘンな事になってirb側からgemが読み込めなくなってしまった。 gemを直すのが先決なんだけど、とりあえず応急処置的な感じで読み込めるようにした。.irbrcの先頭にでも記述しましょう。 def require(path) begin …

CotEditorからTwitterにポストする

#!/usr/bin/ruby -Ku # %%%{CotEditorXInput=Selection}%%% # %%%{CotEditorXOutput=ReplaceSelection}%%% require "net/http" username = "" password = "" req = Net::HTTP::Post.new("/statuses/update.json") req.basic_auth username, password Net::HT…

ファイルの文字数を表示するCotEditorスクリプト

行数と文字数(改行含む)を表示する。やっつけ。 #!/usr/bin/ruby1.9 # %%%{CotEditorXInput=AllText}%%% # %%%{CotEditorXOutput=AppendToAllText}%%% while l = STDIN.gets lines += 1 len += l.length end print "#{lines} lines, #{len} chars."