何かやってみるブログ

興味をもったこと、趣味のこと、技術について色々書きます。

[メモ]oh-my-zshのgitignore pluginで良い感じの.gitignoreを作成する

oh-my-zshのリポジトリをボーッと眺めてたらgitignoreという良さそうなpluginを見つけ、趣味でGoとか触る時に使えそうだなぁと思って追加してみた。

github.com

シェルで何をやってるのか?

gitignore.ioというサービスのAPIを叩いている。

www.toptal.com

function gi() { curl -fLw '\n' https://www.gitignore.io/api/"${(j:,:)@}" }

_gitignoreio_get_command_list() {
  curl -sfL https://www.gitignore.io/api/list | tr "," "\n"
}

_gitignoreio () {
  compset -P '*,'
  compadd -S '' `_gitignoreio_get_command_list`
}

compdef _gitignoreio gi

セットアップ

# Which plugins would you like to load?
# Standard plugins can be found in $ZSH/plugins/
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(... gitignore)

使い方

対応する言語とかIDEとかの一覧を取得する

$ gi list

生成される .gitignoreを確認する

ex) Goの場合

$ gi go

.gitignoreを追加する

ex) Goの場合

gi go >> .gitignore