Go言語(golang)でTUIふたたび ( その4 ListDB の作成 )
今回も、taps の利用例を紹介します。
このアプリケーションは、 「PythonでTUIアプリを作ろう 第二部入魂編(その1 個人データの管理を考える)」と「PythonでTUIアプリを作ろう 第二部入魂編(その2 ListDBの構造について)」で説明したPythonアプリを、Go言語に移行したものです。当初、2022年に作成したのですが、色々不具合があり、一旦削除してしまったものです。
今回は taps をベースに一から書き直しました。前回、3000ステップ近く書いたコードを、なんとか1100ステップ程度に収めることができました。
[1] コンパイル
下記のコマンドでコンパイルします。
go build -o apb main.go
なお、Release に、Linux、Windows 用の各バイナリを格納してあります。
[2] 使用法
(1) 起動
listdbg <DB Name> <DB File>
ex) ./listdbg SQLITE3 ./db/ListDB.sqlite3
(2) データテーブル一覧の表示と選択
起動後、画面上の<T>ボタンをクリック、あるいはキーボードから’T‘を押すと、下図のようにデータテーブルの一覧が表示されるので、表示したいデータを選択します。ここでは、「ブックオフ店舗情報(東京)」を選んだとします。
(3) List一覧画面
「ブックオフ店舗情報(東京)」のList一覧が表示されます。
(4) Categoryの選択
この画面から、<C>ボタンをクリック、あるいはキーボードから’C‘を押すと、Categoryによる絞り込みができます。このデータテーブルでは、Categoryは東京二十三区になっているので、その区分の一覧が表示されます。
(5) 文字列検索
この画面から、<S>ボタンをクリック、あるいはキーボードから’S‘を押すと、文字列による絞り込みができます。
(6) Detail表示
List一覧画面からデータをEnterキー、あるいはマウスで選択すると、Detail表示画面に移行します。一応、下部のボタンによる更新処理も可能です。
(7) Google Mapsとの連携
TUI部品とは全く関係ありませんが、ちょっとした機能を付加してみました。
Field01、あるいはField02のフィールド名が’Address’あるいは’Map’の場合、上記(6)のDetail表示にリンク機能が働きます。
ここでEnterキーを叩くか、マウスでクリックするとブラウザが起動、Google Mapsに該当アドレスが表示されます。
以上、簡単なアプリケーションですが、何かの参考になれば幸いです。
ソースコードについて
GitHubに登録しました。