🛎️

銅鑼を鳴らすCLIをGolangで作った

2022/05/20に公開

めちゃくちゃ小ネタなのでサラッと。

よくターミナルからスクリプトを実行したりテストを回したりしてるとすぐに実行が終わらない時がある。数十秒くらいならまぁ待てばいいが、数分、数十分となると流石にただ指を加えて待っているわけにはいかない。その場合は他のタスクに取り掛かるかコーヒーブレイクになるのだが、実行しているスクリプトがどのくらいで終わるのかわからないとどうもソワソワする。そういう時にすぐ気づける仕組みがあると便利だなと思ったので銅鑼を鳴らすだけのCLIを作った。
https://github.com/YuheiNakasaka/dora?a=1

使い方としてはインストールしてdoraと叩くだけ。

$ go install github.com/YuheiNakasaka/dora@latest
$ dora

encoderやdecoderを書いたりと難しいことは全くやっていないのでmainの実装自体は5分で終わった。内部ではfaiface/beepというライブラリを使わせてもらっている。便利。

あと音声ファイルは効果音ラボから。

そういえば音声ファイルはGo1.16から導入されたgo:embedの機能を使って実行バイナリに埋め込むようにしている。実行ファイルはちょっと大きくなるが実行環境ごとの煩わしい処理が必要なくなるので楽。

その他には-sというオプションをつけると音が鳴らなくなるサイレントモードというのもあるが完全にネタ。

やはりGolangは雑にCLIをガンガン作れて便利ですね。

Discussion