はじめに
vimのプラグインを導入したり、vimrcを書き換えて自分好みのvimを設定したいと思い、色々調べつつ設定していったので、それをここに記録します。
ここではluaを必要とするプラグイン(neocompleteという補完機能のプラグイン)を使用します。
あらかじめluaの入ったvimを用意しておきましょう。
osはubuntu18.04です!
docker上で操作しています。
vim --version | grep lua
でluaが入っているかどうかが分かる。+lua
と表示されたら入っている。
$apt install vim*
でインストールできる。*
をつけるとluaが有効なvimをインストール出来た。
vimrcのコマンドの意味
vimrcとはvim起動時に一度だけ自動で読み込まれるファイル。ここに命令を記述することで、自分好みの設定をすることができる。しかし、コマンドの意味を理解していないと、思った通りに動いてくれなかったり、詳細な設定が難しいと思い、調べることにした。
ちなみにこのvimrcはホームディレクトリに置いておくことで自動的に読み込まれるみたいだ!!
autocmd
autocmdとはvimで指定したイベントが発生したときに実行するコマンドを指定するコマンドだい。
autocmd BufNewFile * put = ちーっす
上のようにすると、新しいファイルを作成したときに自動でちーっす
が入力される。ここのBufNewFile
にあたる部分をイベントと呼ぶ。イベントにたくさん種類があって:help{event}
で調べることができる。
ただ、これだと問題が起きるらしい。vimrcの設定を書き換えても、前に書いていた設定が残っていて複数回同じコマンドを出してしまうのだとか。それを防ぐためにaugroup
というコマンドがある。
augroup
autocmdをグループ化するコマンド。以下のように使う。
augroup sample
autocmd!
autocmd BufNewFile * put = 'ちーっす'
augroup END
noremap
キーマッピング設定をするコマンド。「このキーを押したらこのキーと同じ挙動をする」っていうような設定ができる。使い方は以下の通りである。
noremap <C-a> <Esc>$a
この場合はCntrl+a
を押したときに、<Esc>$a
と同じ挙動をするぜって意味。
ちなみに、これはノーマルモードのキーマッピング設定を行うためのコマンドで、インサートモードではinoremap
を使うぜ!
autocmd
の以前の設定を削除するためにautocmd!
を実行したのちに、新たにautocmd
を設定しますよっていうやつ。一連の操作をまとめてくれているんだね!
追加したい機能
自分のvimを設定するにあたり、追加したい機能は以下の通りだ。
- htmlの閉じタグを自動補完
- 見た目をよくしたい(カラースキーマの設定)
- ファイルをツリー上に表示して移動しやすくしたい
htmlの閉じタグを自動補完
augroup MyXML
autocmd!
autocmd Filetype xml inoremap <buffer> </ </<C-x><C-o>
autocmd Filetype html inoremap <buffer> </ </<C-x><C-o>
autocmd Filetype eruby inoremap <buffer> </ </<C-x><C-o>
augroup END
プラグインを入れる。
プラグインを入れる前に、プラグイン管理ツールを導入しよう。
今回はシンプルなvim-plugを使用。
インストールも使い方も簡単。
以下のコマンドを実行しよう。
curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
そして以下をvimrcに追記
call plug#begin()
Plug '入れたいプラグイン'
call plug#end()
要はcall plug#begin()
とcall plug#end()
の間に入れたいプラグインを記述していくだけでOK!簡単!
記述したらPlugInstall
でインストールできるぞ!
消したいときはPlugClean
でプラグインを削除できるぞ!
追記
最近macに買い替えたため、macでのやり方も書いておく。
macではデフォルトでvimが入っている。しかし、このvimはluaが標準装備ではないのでluaを追加する必要がある!
しかしありがたいことに2020/03/31現在ではbrew install vim
でインストールしたものにデフォルトでluaが入っているのだとか。やったー
なので普通にbrew install vim
でインストールしよう!
しかし、ここで当たり前なのだがterminalでvim
と打ち込むと既存のvimが起動する!
なので新しくインストールしたvimを起動するためにPATHを変更しよう!
新しくインストールされたvimは/usr/local/bin/vim
に置かれるためここにPATHを通そう!export PATH=$PATH:/usr/local/bin/vim
で通せるよ。念のため以下のコマンドでluaが入ってるか確かめておこう。
$vim --version
+lua
が確認できたらOKだ!
ちなみにこの記事ではneocomplete
を使うためにluaを入れているが、neocomplete
自体は開発終了するため、deoplete
というプラグインを使う方がいいのだとか....。
参考
https://qiita.com/s_of_p/items/b61e4c3a0c7ee279848a
https://qiita.com/puriketu99/items/1c32d3f24cc2919203eb
https://qiita.com/kouichi_c/items/e19ccf94b8e5ab6ed18e
https://github.com/junegunn/vim-plug
.vueファイルを編集するときのVimの設定