読者です 読者をやめる 読者になる 読者になる

oshiete-camelman

M-x oshiete-shirosanがおもしろいなぁ、って思って。見たことないんだけど、適当に想像して、Growlを使って作ってみた。

#!/usr/bin/env ruby

require 'rubygems'

require 'open3'
require 'meow'
require 'optparse'

$icon_path = "camelman.jpg"

opt = OptionParser.new {|opt|
  opt.on('-i icon', '--icon=icon') {|v| $icon_path = v }
}

opt.order!(ARGV)

Open3.popen3(*ARGV) {|stdin, stdout, stderr|
  stdin.close()
  out_read = stdout.read
  err_read = stderr.read
  
  STDOUT.print out_read
  STDERR.print err_read
  
  unless err_read.empty?
    meep = Meow.new("")
    meep.notify(ARGV[0], err_read, :icon => Meow.import_image($icon_path))
  end
}

あと適当に写真をcamelman.jpgとかして保存する。

これで、

$ ./growlrun ocamlc a.ml

とかやると、こんな風にラクダ人間が得意気に型エラーを教えてくれます。

うわーむかつくー。

そういう時は、こうやって

$ wget http://pauillac.inria.fr/~xleroy/pictures/maphoto.jpg
$ wget http://www.sci.nagoya-u.ac.jp/kouhou/09/14-1.jpg

こうやって、

$ mv maphoto.jpg xl.jpg
$ mv 14-1.jpg jg.jpg

こうやって、

$ ./growlrun -i xl.jpg ocamlc a.ml
$ ./growlrun -i jg.jpg ocamlc a.ml

こうやると…………


これはちょっとなごむ……かな?