💬
vimでGitのコミットプレフィックス入力を効率化しよう!
みなさんGitのコミットメッセージをどう書いていますか?私はvimで書いています。
なので今回は、Gitのコミットメッセージに含めるprefixの入力をvimの標準機能を使って効率化する方法を書いていきます。
デモ
使う機能
- abbrev
- autocmd,augroup
コード
augroup gitabbr
autocmd!
autocmd FileType gitcommit iabbrev add [add]
autocmd FileType gitcommit iabbrev fix [fix]
autocmd FileType gitcommit iabbrev feat [feat]
augroup END
解説
今回はadd
などよく使う単語で設定しているので、autocmdを使ってfiletypeが gitcommit
の時のみ適応されるようにしています。
autocmd FileType gitcommit iabbrev
が今回のポイントになっています。
iabbrevは、インサートモードのときにだけ、短縮入力を定義するものです。これにより、
- filetypeがgitcommitである
- インサートモードである
という状況下において、短縮入力が動作します。
まとめ
今回は、Gitのコミットメッセージに含めるprefixの入力をvimの標準機能を使って効率化する方法を書いていきました。
abbrevは、スニペットを使うほど大きくない場合にサクっと使えるのでとても便利です。
みなさんも是非、試してみてください!
Discussion
一応補足しておくと、この設定でiabbrevで定義するとその後のコミットメッセージ部分でaddやfixという単語を使うと自動置換されてしまうためあまりおすすめできないです。
プレフィックスを自動付与したいのであれば https://github.com/gotchane/vim-git-commit-prefix のような形式をとるのがいいと思われます。
確かにそうですね! ありがとうございます