Vim設定ファイルの見直し
Vimの設定ファイルの見直しを行いました。
1. init.vimの整理
いくつかのオプションの見直しを行いましたが、一番大きいのはプラグインの設定をdein.toml
やdein_lazy.toml
に追い出しました。
以下のような感じで、deinのプラグインの読み出しの後に、hook_add
で今までinit.vim
で行なっていた設定をこちら側に移してきています。
# -------------------------------------------- # Setting for NERDTree # ファイラー # -------------------------------------------- [[plugins]] repo = 'scrooloose/nerdtree' hook_add = ''' nnoremap <silent><C-n> :NERDTreeToggle<CR> let g:NERDTreeShowBookmarks=1 '''
このため、init.vim
の行数がぐんと減りました。
2. プラグインの遅延読み込み
deinの遅延読み込みをより活用するため、読み込み条件を見直しました。
deinの読み込み条件にはいくつか指定できますが、私が使っているのは以下の2つのパターンです。
バッファに読み込んだファイルタイプで読み込みたいプラグインは以下のような設定をしています。
# -------------------------------------------- # PythonのインデントをPEP8の定義に # -------------------------------------------- [[plugins]] repo = 'Vimjas/vim-python-pep8-indent' on_ft = 'python'
Vimのイベントで読み込みを行いたいプラグインには以下のような指定をしています。
# -------------------------------------------- # Setting for Autodate # 更新日を追加してくれるプラグイン # -------------------------------------------- [[plugins]] repo = 'vim-scripts/autodate.vim' on_event = ['BufWritePre'] hook_add = ''' let g:autodate_format = '%Y-%m-%d %H:%M:%S' '''
イベントについてはautocmd のイベント定義を見ると、どのようなものがイベントとして使えるかわかります。
3. Gitでの管理
これまで設定ファイルは特にバージョン管理をしていませんでしが、仕事用のMacでも共有したいのでGitで管理することにしました。
BitBucketを使うことにしました。
手順は以下の通りです。
まず、.config
の下にあるのは色々面倒なので別のフォルダに必要なファイルを移動させてシンボリックリンクを張ることにしました。
$ cd ~ $ mkdir vimfiles $ mv .config/nvim/init.vim vimfiles/ $ mv .config/nvim/dein.toml vimfiles/ $ mv .config/nvim/dein_lazy.toml vimfiles/ $ ln -s vimfiles/init.vim .config/nvim/init.vim $ ln -s vimfiles/dein.toml .config/nvim/dein.toml $ ln -s vimfiles/dein_lazy.toml .config/nvim/dein_lazy.toml
次にgitへの登録です。
$ git init $ git add . $ git commit -m 'Initial commit' $ git remote add origin https://USERNAME@bitbucket.org/USERNAME/vimfiles.git $ git push -u origin master
git push
に-u
オプションをつけると、次回からのpush
ではオプションを指定しなくても、勝手に origin master で push してくれます。
USERNAMEの部分はBitBucketのユーザー名です。
以降は、設定ファイルの編集を行うたびに、
$ git add . $ git commit -m "変更理由" $ git push