Vimメモ : Neovimで開発環境を段階的に構築する(1)インストールとcheckhealth
最近はVisual Studio Codeを使うことも多くなってきたが、Vimが好きなのでNeovimで開発環境を構築してみる。
Vimの設定については検索すると色々出てくるが、設定ファイルが複雑だったり、自分の環境では動かなかったりすることがあるので、なるべく設定ファイルが長くならないようにプラグインを用いて段階的に下記項目の設定をしていく。
- プラグインマネージャー
- カラースキーム
- ステータスライン
- 空白可視化
- インデント可視化
- ファイルエクスプローラー
- タグ一覧表示
- あいまい検索
- Git連携
- Git差分表示
- 多言語パック
- Linter
- Formatter
- スニペット
- 入力補完
- 定義元ジャンプ
- プログラム実行
開発環境を構築するためにはどのような機能が必要かを整理するのが目的なので、この記事で紹介する設定ファイルを使っても完璧な設定にはならないことに注意。
Neovimのインストール
Neovimのインストール方法はこのページに書いてある。
今回はCentOS 7で試してみる。
$ cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core)
以下の方法でインストールしたところv0.3.0
と少しバージョンが古かった。
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm sudo yum install neovim
Releasesのページにはバイナリがあるので、以下のようにすることでnvim
コマンドでNeovimが起動できるようになる。
curl -LO https://github.com/neovim/neovim/releases/download/v0.3.8/nvim.appimage chmod u+x nvim.appimage sudo mv nvim.appimage /usr/local/bin/nvim nvim
今回はNVIM nightly (unstable)を使うのでバージョンは0.4.0
。
checkhealth
Neovimの起動画面にtype :checkhealth<Enter> to optimize Nvim
と書いてあるので:checkhealth
を実行してみる。
WARNINGやERRORがあるのでまずはこれらを解消してみる。
Configurationの項目では設定ファイルがないということだが、Neovimの設定ファイルは~/.vimrc
ではなく~/.config/nvim/init.vim
のようだ。
以下のように設定ファイルを作成して、
mkdir -p ~/.config/nvim nvim ~/.config/nvim/init.vim
下記設定を記述。
set number
は行番号を表示、set termguicolors
はTrueColorで表示する設定。
set number set termguicolors
再度:checkhealth
を実行してみるとConfigurationの部分がOKになっていることが確認できる。
残りの部分はClipboard, Python, Ruby, Node.js providerに関する項目で順番に見ていく。
Clipboardは:help clipboard
によると以下のツールが使用でき、
- g:clipboard - pbcopy, pbpaste (macOS) - wl-copy, wl-paste (if $WAYLAND_DISPLAY is set) - xclip (if $DISPLAY is set) - xsel (if $DISPLAY is set) - lemonade (for SSH) https://github.com/pocke/lemonade - doitclient (for SSH) http://www.chiark.greenend.org.uk/~sgtatham/doit/ - win32yank (Windows) - tmux (if $TMUX is set)
以下のようなカスタム設定ができる。
でも、Clipboardは環境に依存しそうなのでとりあえずはスキップ。
let g:clipboard = { ¦ \ 'name': 'myClipboard', ¦ \ 'copy': { ¦ \ '+': 'tmux load-buffer -', ¦ \ '*': 'tmux load-buffer -', ¦ \ }, ¦ \ 'paste': { ¦ \ '+': 'tmux save-buffer -', ¦ \ '*': 'tmux save-buffer -', ¦ \ }, ¦ \ 'cache_enabled': 1, ¦ \ }
Python providerはPython2とPython3のそれぞれでpynvim
(前はneovim
という名前だった)パッケージをインストールするとOKになる。
例えば、pyenv
とpyenv-virtualenv
を使用している場合は以下のようにする。
pyenv install 3.7.4 pyenv install 2.7.16 pyenv virtualenv 3.7.4 neovim3 pyenv virtualenv 2.7.16 neovim2 pyenv shell neovim3 pip install pynvim pyenv shell neovim2 pip install pynvim
そして、init.vim
でPythonのパスを設定する。
let g:python_host_prog = $HOME . '/.pyenv/versions/neovim2/bin/python' let g:python3_host_prog = $HOME . '/.pyenv/versions/neovim3/bin/python'
RubyとNode.jsも同様にneovim
パッケージをインストールするとOKになる。
rbenv instlal 2.6.3 rbenv global 2.6.3 gem install neovim
npm install -g neovim
同様にパスを明示的に指定することもできるが、パスが通っていれば不要かもしれない。
let g:ruby_host_prog = $HOME . '/.rbenv/versions/2.6.3/bin/neovim-ruby-host' let g:node_host_prog = $HOME . '/.n/lib/node_modules/neovim/bin/cli.js'
これで全てがOKになったので次回以降で開発環境を構築していく。
まとめ
今回の~/.config/nvim/init.vim
。
set number set termguicolors let g:python_host_prog = $HOME . '/.pyenv/versions/neovim2/bin/python' let g:python3_host_prog = $HOME . '/.pyenv/versions/neovim3/bin/python'
- 作者: DrewNeil,新丈径
- 出版社/メーカー: 角川アスキー総合研究所
- 発売日: 2014/01/28
- メディア: Kindle版
- この商品を含むブログ (4件) を見る