AWS CLIのリファレンスを開くAlfred Workflowを作った

Githubに置いてある。 キーワードで検索してWeb上の公式リファレンスを開く。 Cmd+Enterでコマンドをクリップボードにコピーする。 詳しくはREADME参照。

https://github.com/handlename/alfred-awscli-reference-workflow

AWS CLIはコマンドが多くて使い方を覚えられない。 そこでWeb上のリファレンスのお世話になるわけだけど、 いちいち二階層分リンクを辿るのもめんどくさい。

だいいち目的のコマンドがどんな名前なのかわからない場合には、 それらしい単語でページ検索して該当するコマンドを見つけ出す作業も必要になる。 これもめんどくさい。

と、いうわけで思いついたキーワードでササッと検索できるAlfred Workflowを作った。 Goで書いてあるけど、テキストファイルとして保存しているコマンドリストをgrepしているだけなので、 素のPerlでもRubyでも、なんならシェルスクリプトでも充分実装できると思う。 Goを選んだのは単なる趣味。 (GoでAlfred Workflowを書くメリットはむかしこっちに書いた)

コマンドを検索する部分よりも、コマンドリストを生成するほうが手間だった。 作る方法はなんでもいいが、今回はAWS CLIのドキュメントをビルドしたときにつくられるsitemap.xmlから生成している。 sitemap.xmlから候補リストであるcandidates.txtを生成しているのがconvertというツール。 これもGoより他のスクリプト言語のほうが向いていると思う。

もっと手軽にコマンドリストを手に入れる方法があれば知りたい。 AWS CLIにはシェルでオプション補完するためのaws_completerというツールが付属している。 これが参照しているものをリストアップできればいちいちxmlを変換したりしなくてもいいかもしれない。