HRBrain Advent Calendar 2022、25日目の記事です。
はじめに
こんにちは。株式会社HRBrainでエンジニアリングマネージャーをしている山口です。
ついにクリスマスですね。皆様いかがお過ごしでしょうか?
クリスマスチキンは骨があって食べにくいので、今年の我が家は唐揚げでいくことが決定しました。
本記事では、ターミナル上にクリスマスツリーを出力するプログラムを紹介します。
remove dead code
2020年07月29日22時09分01秒、npmからxmasコマンドを削除するコミットが作られました。
このコミットはnpm@7から反映されているため、npm@7以降のnpmではxmasコマンドを使えません。
なるほど。これは死活問題です。
「npm xmasってコマンドがあってさー知ってる?w」という雑談鉄板ネタが言えなくなってしまいました。
ないんだったら、自分で作ればいいのよ!
まずChatGPTにお願いしてみましたが、これでも良いけれどコレジャナイ感……
というわけで移植しました。今回はDenoで動かすことを想定しています。
Deno依存の記述はないので、ts-nodeやtsxでも動くと思います。
インストール
$ deno install --name xmas app.ts
インストールの必要はないけれど、コマンドを設定したいのでやっておきます。
deno install
ではなくdeno compile
だとバイナリファイルが出力されるので、好みで使い分けてもいいかもしれないですね。
使い方
$ xmas
単純明快で摩訶不思議。xmas
と入力するだけで美しいツリーが完成します。簡単ですね。
npm xmasとの比較
以下にnpm xmasの実行結果と並べてみます。
npm | deno |
---|---|
オーナメントの種類・位置・色は毎回ランダムで変わるので、だいたい同じものを出力できました。
良さそうですね。これで今年も無事にクリスマスを迎えられそうです!
さいごに
HRBrainでは引き続き仲間を募集しております。最新の募集状況などは下記からご確認ください。