Cowsay

cowsayコマンド面白い。腹立つ。OSXだとbrew install cowsayで入る。

$ cowsay moo
 ___ __
< moo >  
 -----
        \   ^__^
         \  (oo)\___ ___ _
            (__)\       )\/\
                ||----w |
                ||     ||

$ cowsay -e ^^ moo
 ___ __
< moo >  
 -----
        \   ^__^
         \  (^^)\___ ___ _
            (__)\       )\/\
                ||----w |
                ||     ||

牛以外にもデフォルトでいろんなcowがある。

cowsayコマンドからは-lオプションで使えるcowが一覧できる。

$ cowsay -l
Cow files in /usr/local/share/cows:  
beavis.zen blowfish bong bud-frogs bunny cheese cower daemon default dragon  
dragon-and-cow elephant elephant-in-snake eyes flaming-sheep ghostbusters  
head-in hellokitty kiss kitty koala kosh luke-koala meow milk moofasa moose  
mutilated ren satanic sheep skeleton small sodomized stegosaurus stimpy  
supermilker surgery telebears three-eyes turkey turtle tux udder vader  
vader-koala www  

-fオプションでcowを指定できる。

$ cowsay -f tux moo
 ___ __
< moo >  
 -----
   \
    \
        .--.
       |o_o |
       |:_/ |
      //   \ \
     (|     | )
    /'\_   _/`\
    \___)=(___/

オリジナルのcowを作成してみた。レビューくん。キモい。

cowファイルは既存のファイルを参考に作成。

※ 画像なのはなんかghostでemoji使えないみたいなので…グヌヌ
※ あとコードブロックの中でアンダースコア3つ以上連続すると文字化けする(アンダースコア3つ以上で水平線になるという記法のためなのかな... )

$thoughtsの部分が\になっている。わざわざ変数にしているあたり、cowによっては違う形になっているのかな...。

オー!!cowthinkコマンドにすると変わった!!

$ cowthink -f feedkun LGTM
 ___ ___
( LGTM )
 ------
      o     _f_
       o   /   \
         ψ| . . |ψ
          \  w  /
           L   L

-lオプションでも確認できるけど、デフォルトのcowファイルは/usr/local/share/cowsにある。これは/usr/local/Cellar/cowsay/バージョン/share/cowsにリンクされている。自分で作ったcowもフルパスで指定しないで使えるようにしたいけど、/usr/local/share/cowsに入れたらたぶんcowsayアップデート時消えそう。

manによれば環境変数のCOWPATHでpathを指定できるので、そこに追加するのがよさそう。

FILES
/usr/local/Cellar/cowsay/3.04/share/cows holds a sample set of cowfiles. If your COWPATH is not explicitly set, it automatically contains this directory.

COWPATH/usr/local/share/mycows/usr/local/share/cowsにしてみる。

export COWPATH=/usr/local/share/mycows:/usr/local/share/cows  

デフォルトcowと、自分で作ったcowが使えるようになった!

$ cowsay -l
Cow files in /usr/local/share/mycows:  
feedkun reviewkun  
Cow files in /usr/local/share/cows:  
beavis.zen blowfish bong bud-frogs bunny cheese cower daemon default dragon  
dragon-and-cow elephant elephant-in-snake eyes flaming-sheep ghostbusters  
head-in hellokitty kiss kitty koala kosh luke-koala meow milk moofasa moose  
mutilated ren satanic sheep skeleton small sodomized stegosaurus stimpy  
supermilker surgery telebears three-eyes turkey turtle tux udder vader  
vader-koala www  

腹立つわぁ...。