現在接続されているカメラの台数をメニューバーに表示する


現在接続されているカメラの台数をメニューバーに表示するプログラムを作りました。

1. 使い方

1.1. BitBarをインストールする

https://github.com/matryer/bitbar
こちらから、BitBarをダウンロードしてインストールします。最新版はv1.9.2。

が、v.2.0.0でも良いと思います。
https://github.com/matryer/bitbar/releases/tag/v2.0.0-beta10

解凍したら、アプリケーションを、/Applicationsに移動します。

起動すると、メニューバーにBitBarと表示されるので、そこをクリックし、プラグインを保存するDirectoryを指定します。私の場合は、~/usr/pluginにしました。

1.2. show_camresをインストールする

制作したプログラムはこちらです。
https://github.com/eto/show_cameras/

こちらをダウンロードする。
https://raw.githubusercontent.com/eto/show_cameras/master/show_cameras.10s.sh

このファイルを、~/usr/pluginに移動する。

% mv show_cameras.10sec.sh ~/usr/plugin

BitBarをクリックし、Refresh allを選ぶ。起動するはずです。

2. BitBarプラグインの作り方

これは、BitBarを使ってみる実験として作りました。BitBarは、macにて、メニューバーに情報を出すための、とても簡単な方法です。なにしろ、標準出力から出力するだけ。

以下は、完全なBitBarのプラグインです。

biceps.sh
#!/bin/sh
echo 💪

これを、~/usr/plugin/biceps.shとなるように置いて、

% chmod +x biceps.sh

とします。それから、BitBarをRefresh allすると、上腕二頭筋がメニューバーに出てきます。これだけ。

定期実行も簡単です。

date.10s.sh
#!/bin/sh
date

chmod +xを忘れないように。それから、BitBarをRefresh allすると、メニューバーに現在時刻が出てきます。

BitBarのプラグインのページを見ると、どんなことができるかわかります。
https://github.com/matryer/bitbar-plugins

3. カメラ台数の取得方法

% system_profiler

とすると、macのシステム情報が出力されます。が、とても長い。関係する情報を全部出そうとするため。
今回は、カメラ関連だけで良い。その場合は、

% system_profiler SPCameraDataType

とします。こうすると、カメラ関連の情報だけを出力します。

以下を参考にしました。
https://qiita.com/takayukioda/items/585c4c64b3a3ec03082c

done!