denite.nvim で Gist を見る
最近コードのsnippetをGistに保存してたんですが、いざ探す時に面倒だったので、 denite.nvimで一覧を出して選択したgistのページを開くpluginを作ってみました。
vim-denite-gists
Gistのリストは単純にGistのAPIを呼んで取得しているだけで、選択したものをブラウザで開く部分も open-browser.vimを呼んでるだけなのでたいしたことはしてないですが、この辺をくっつけるのを Denit
のインターフェースにするのが簡単に書けて良いですね。
作ってから知ったんですが、unite.vimにunite-gistというのが既にあるようでして、 Denite
からUnite
のソースを呼ぶ Denite unite:xxx
で呼んで動くならそれでいい気もしましたが、試してみるとなぜかエラーになったので、まぁ、こっちがあってもいいかと思って記事にしました。
unite-gistの方はもっと高機能で、プライベートなgist
とかも見れるようです。
インストール
denite.nvim
は既にインストールされているとして、
依存ライブラリも含めて dein.vim
だと
call dein#add('tyru/open-browser.vim')
call dein#add('pocari/vim-denite-gists')
で入ります。その他のプラグインマネージャーを使っている場合は適宜合わせてください。
使用方法
起動方法
:Denite gists:(github username)
で、(github username)のユーザのpublicなgistの一覧がDeniteの候補として表示されます。
また、 gitconfig
に
[github]user=xxx
を追加しておくと、:Denite gists
と引数のユーザ名無しでgistを取得できます。(unite-gist
からそのまま借りた)
アクション
アクションのデフォルトは選択したものをopen-browser.vim
で開く、です。
複数候補の選択も対応しているので、複数選択してEnter
するとブラウザのタブがいっぱい開きます。
・・・ところで、自分の(少ない)gistを見るのにしか使ってないので、もし大量にgistを持ってる人とかが開いたらどうなるのかはまだ良くわからないので、もし使ってみて問題があったら教えてもらえると幸いです。