macos
neovim

macOSでコードリーディング向けneovim環境を手早く構築する

macOS High Sierra(10.13.1)上にNeovim(0.2.0)環境を整理したので手順を残します。「コードリーディング向け」環境を「手早く」ということで以下を前提にします。

 ・Vim Bootstrapの利用してNeovimの設定ファイルを作成
 ・タグジャンプ用にgtagsを追加
 ・カーソル移動を快適にするeasymotionを追加

neovimのインストール

Homebrewがすでにインストールされていることを前提にします。

$ brew install neovim

Vim Bootstrap

Vim Bootstrapは,vimの設定ファイルを数クリックで生成してくれる便利なサイトです。私自身CとPythonのソースコードを扱う機会が多いため,その2つを選択して設定ファイルを生成しました。

中央の「Make your .vimrc now!」を押して,
画面.png

ターゲットとなるプログラミング言語を選択(複数可)して,
言語選択.png

vimとneovimのどちらかを選んで,「Generate!」ボタンをクリックすれば終了(簡単!)
スクリーンショット 2017-11-07 6.16.27.png

設定ファイルの登録

以後の操作は,基本的にこちらに書いてありますので,詳細はこちらを参考にしてください。

まず生成した設定ファイルをneovimの初期化ファイルとして配置します。すでにneovimをカスタマイズして利用している方は,事前にinit.vimファイルのバックアップを取得することをお勧めします。

$ mv ~/Downloads/generate.vim $XDG_CONFIG_HOME/nvim/init.vim

ここで利用している環境変数XDG_CONFIG_HOMEについてはこちらを参照してください。検証時の環境では,この環境変数が定義されておらず,init.vimが~/.config/nvim配下にあったため,こちらを指定しました。

$ mv ~/Downloads/generate.vim ~/.config/nvim/init.vim

次にneovimのプラグインをインストールします。

$ nvim +PlugInstall +qall

カスタマイズ

Vim Bootstrapによって生成した設定ファイルは基本的に変更を加えないほうがよいです。このため,独自のカスタマイズを行う際は,同ディレクトリにlocal_bundles.vimlocal_init.vimを作成し,こちらに記述します。

local_bundle.vimの作成(プラグインの追加)

下記のように追加したいプラグインを列挙していくだけです。

$XDG_CONFIG_HOME/nvim/local_bundles.vim
Plug 'easymotion/vim-easymotion'
Plug 'ghttiger2505/gtags.vim'
Plug 'vim-scripts/gtags.vim'

念のため,作成後にもプラグインの反映コマンドを実行します。

$ nvim +PlugInstall +qall

local_init.vimの作成(そのほかのカスタマイズ)

プラグイン以外の設定はlocal_init.vimに設定します。下記はあくまで参考です。お好みの設定をしてください。

$XDG_CONFIG_HOME/nvim/local_init.vim
" for easy motion
let g:EasyMotion_do_mapping = 0 "Disable default mapping
nmap m <Plug>(easymotion-s2)

" for gtags
nnoremap <silent> <Space>g :Gtags<CR>
nnoremap <silent> <Space>j :GtagsCursor<CR>
nnoremap <silent> <Space>l :Gtags -f %<CR>
nnoremap <silent> <Space>n :cn<CR>
nnoremap <silent> <Space>p :cp<CR>

"mouse enable
set mouse=a

参考:設定の適用順序

Vim bootstrapが生成したinit.vimファイルを見ると以下の流れで上記の設定が反映されることがわかります。

  1. Vim bootstrapのデフォルトプラグインのロード
  2. local_bundles.vimに記述したプラグインのロード
  3. Vim bootstrapのデフォルトセットアップ
  4. local_init.vimに記述したデフォルトセットアップ

さいごに

Vim-bootstrapを利用すれば簡単にneovim(vim)の設定ファイルを作成することができ,それ以外のカスタマイズを別ファイルに分けることができるため設定情報もシンプルに扱うことができます。