この記事はACCESS Advent Calendar 10日目の記事です。
コードに没頭して一息ついた時、ちょっとバカバカしいことやりたくなることありますよね。 ありますよね。
今回はそんなときの息抜きがてら往年のジョークプログラム、その名もsl
を動かしてみましょう。
slとは
Wikipediaの解説記事によると、
slはUNIX系OSのコマンドの一つ。コンソール画面をアスキーアートで描かれた蒸気機関車 (SL) が走り抜ける。
とのこと。ジョークです。 真に受けちゃぁいけません。
インストール
インストールしないことには話にならないので早速インストール。
Linuxの場合
$ sudo apt-get install sl
$ alias ls='sl -aF'
大体こんな感じ。環境に合わせて下さい。
Macの場合
$ brew install sl
$ alias ls='sl -aF'
brewが入っていないという方はこちらを参照してインストールしてください。
実行
$ sl
見事slが走りました。
オプションを知りたいときは sl --help
。
残念。-l
がオプションとして認識されて、リトルバージョンが走ってしまいました。man sl
とやると、幾つかあるオプションを知ることが出来ます。
更に進化したsl
と、ここで終わっちゃバカバカしさの度合いが少ないので、更に改造を施します。
幾年も年を重ねていますんどえ、SL改造計画というジョークアプリにも時代考証を行うという素敵サイトでパッチが公開されています。最新版のslにはそのままでは当たらないのでちょっと手を入れてマージしてみました。
ソースコードは以下に置いておきました。問題があるようでしたらご連絡下さい。
一歩進んだslをご自宅で
git からcloneしてきて、出来たバイナリをパスの通っているところに置いて実行。
$ git clone https://github.com/gmkou/sl.git
$ cd sl
$ make
gcc -O -o sl sl.c -lncurses
$ ./sl
踏切も付いて、3重連の機関車になって客車も長くなって盛りだくさんです。-r
オプションで往復します。
おわりに
いやぁ、バカバカしいコマンドっていいですね。
補足
-
Ctrl-\
はハンドルされていないので、現実に引き戻された方はこちらを使うと良いです。 - 冒頭に書いているインストール手順のところ、
alias
の行を実行すると日頃の作業が仕事にならないと思います。