D言語/D言語くんAdvent Calendar 2016の25日目です。
突然ですが、UNIX(Linux)にディレクトリの内容を表示するls
コマンドありますよね?
ls
コマンドっていつも間違いませんか?
dubを使っているD言語使いの皆さんであれば、間違って dub fetch dl
からのdub run dl
とか打ちますよね?
え?
ちょっと打ってみてください!
…
…
…
…
…
…
…
…
_ _
(_) (_)
/______ \
\\(O(O \/
| | | |
| |_| |
/______/
< >
(_) (_)
ばばーん
なんだこれは
名目上は「lsコマンドのタイピングミスを矯正する高度なアニメーションを表示するプログラム」です。
はい。そろそろ何番煎じかわかりませんが、slコマンドに似せたジョークプログラムです。
slコマンド(Wikipedia):https://ja.wikipedia.org/wiki/Sl_(UNIX)
なお、ANSIエスケープコードを使っているので、Windowsで動かすにはVisual Studio Codeのターミナルとか使ってもらうと良い感じになると思います。cmd.exeだと大体の環境は変な文字列が表示されます。
Visual Studio Code公式:https://code.visualstudio.com
元ネタ
本プログラムは、2015年のD言語くんAdvent Calendarで @simd_nyan さんがAAを作り、@ueshita さんが走るプログラムを公開されたのでその内容をベースにしています。また一部2016年のアドベントカレンダーから @kotet さんのアスキーアートもCreative commonsということで利用させていただいています。
なにごとか
結果を見てそのままですが、dub fetch dl
は「dubを使って、dlというパッケージをダウンロードする」、dub run dl
は「dlというパッケージを実行する」というコマンドでした。
dub run <package>
というコマンドで、dubに登録されている実行ファイルになるパッケージはfetch済みなら直接実行することができます。
dub run <package> -- <options>
という具合に引数を渡すこともできます。(dlコマンドにも引数が…?--help…?)
まとめ
以上、dubはツールのダウンロードから実行までお手軽簡単超便利!D言語くんかわいい!というお話でした。
あとはこの仕組みを使って何か便利なツールが出てくるといいなーと期待しています。
というわけで、みなさんもお手軽にD言語くんを召喚してタイピングミスを矯正しましょう!
2016年のD言語/D言語くんアドベントカレンダーお疲れさまでした!!
関連URL
- dlコマンド
- dubパッケージ:http://code.dlang.org/packages/dl
- GitHubリポジトリ:https://github.com/lempiji/dl
- D言語くんのAAを作ったよ
- lsを間違えてdlと入力してしまったときに、D言語くんが通り過ぎるコマンド
- cowsay -f dman