仕事で使う月次データを日別に分解するコンバーターを Go で書いた。が、
.\month2daily [-o OUTPUT.zip] source.tsv
というコマンドラインのパラメータ、非開発者では使えんので。GUI が欲しい。
Walk 使おうかとも思ったが、manifest ファイルを作成しないといけないのがややこしいので、パス(今は要らんかもしれんけどね)
ローカルホストにウェブサーバー立てて、ブラウザでアクセス
- 元のコンバーターを、コマンドラインクライアント部分と、純粋にコンバートするだけの処理を別パッケージに分ける。
- net/http で、ウェブサーバーを立てる
- get リクエストで、アップロード用のフォームを書いた html 出して、post リエクストでファイル受け取って、コンバートして返すだけ
- このままだと、本体を起動した後、ブラウザを別途起動するのが面倒くさいので、 https://github.com/toqueteos/webbrowser でブラウザも同時に起動するようにした。
OS標準のファイル選択ダイアログを使う
なんか、たかだかファイルの選択だけにウェブサーバーとブラウザを起動するのも大掛かりすぎると、作ってしまってから気がついた。こんなの OS標準のファイル選択ダイアログを呼んだ方が早いのでは( 判断が遅い! )
syscall 使って自力で呼ぼうかと思ったが、既成のライブラリがあったので、それ使った → https://github.com/sqweek/dialog
成果物
zetamatta ちゃうけど、気にせんといてな
記事にしたけど、ほとんど自分用のメモやね