9
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

WindowsにNeovim環境を構築

Posted at

#Neovim本体のインストール
https://github.com/neovim/neovim/wiki/Installing-Neovim

  1. 上記のサイトからバイナリー版をダウンロードする。
  2. Zipファイルを解凍し、任意のディレクトリに配置する。
  3. nvim-qt.exe をダブルクリックして、nvim が起動できれば動作確認完了。

#Vimのプラグインマネージャーをインストールする
プラグインマネージャーの dein と dein の動作前提である python3 をインストールする。

##python3のインストール
https://www.python.org/

  1. 上記のサイトからインストーラー版をダウンロードする。
  2. インストーラーを起動する。
  3. インストーラーの "Add Python 3.x to Path" のチェックボックスをチェックしてインストールする。
  4. インストール完了後、コマンドプロンプトから下記のコマンド入力し、バージョンが表示されれば動作確認完了。
コマンドプロンプト
C:> python --version 
Python 3.7.0

##Neovim Python Client のインストール
###Microsoft Visual C++ Build Tools をインストール
https://download.microsoft.com/download/5/F/7/5F7ACAEB-8363-451F-9425-68A90F98B238/visualcppbuildtools_full.exe

  1. 上記のサイトからインストーラー版ダウンロードする。
  2. インストーラーに従ってインストールする。

###Python provider のインストール

  1. コマンドプロンプトから下記のコマンドを入力し、正常終了することを確認する。
コマンドプロンプト
C:> pip install neovim
  1. nvim を起動し、:CheckHealth コマンドを入力して、以下のようにpython provider の下の行にエラーが出力されていないことを確認する。
Neovim
## Python 3 provider (optional)
  - INFO: Using: g:python3_host_prog = "C:/Users/kishiro/Envs/neovim3/Scripts/python.exe"
  - INFO: Multiple python.exe executables found.  Set `g:python3_host_prog` to avoid surprises.
  - INFO: Executable: C:\bin\Python\Python37\python.exe
  - INFO: Other python executable: /python.exe
  - INFO: Python3 version: 3.7.0
  - INFO: python.exe-neovim version: 0.2.6
  - OK: Latest python.exe-neovim is installed: 0.2.6

git のインストール

  1. 上記のサイトからインストーラー版ダウンロードする。
  2. インストーラーに従ってインストールする。

https://qiita.com/toshi-click/items/dcf3dd48fdc74c91b409
インストール時の選択項目については、上記のURLの内容を推奨する。
ただし、nvim から直接gitを呼び出す場合、環境変数PATHに C:\Program Files\Git\cmd が設定されている必要があるので、インストール時に gitbash only を選択した場合、手作業で環境変数PATHを設定する。

git の global設定

gitアカウントの氏名、メールアドレス、文字コードをUTF-8、日本語ファイル名を表示を設定する。

gitbash
$ git config --global user.name "taro yamada"
$ git config --global user.email taro.yamada@example.com
$ git config --global gui.encoding utf-8
$ git config --global core.quotepath false

dein の設定

init.vim の配置場所

  • Windowsのデフォルト: %LOCALAPPDATA%\nvim\init.vim
  • 環境変数XDG_CONFIG_HOME設定時: %XDG_CONFIG_HOME%\nvim\init.vim
init.vim
set runtimepath+=~/.nvim/dein/repos/github.com/Shougo/dein.vim

let s:dein_home_dir  = expand('~/.nvim/dein')
let s:dein_repo_dir  = expand('~/.nvim/dein/repos/github.com/Shougo/dein.vim')
let s:toml_file      = expand('~/.nvim/conf/dein.toml')
let s:toml_lazy      = expand('~/.nvim/conf/dein_lazy.toml')


" dein.vim がなければ git clone
if !isdirectory(s:dein_repo_dir)
  execute '!git clone https://github.com/Shougo/dein.vim' s:dein_repo_dir
endif


" プラグイン読み込み&キャッシュ作成
if dein#load_state(s:dein_home_dir)
  call dein#begin(s:dein_home_dir)
  call dein#load_toml(s:toml_file, {'lazy': 0})
  call dein#load_toml(s:toml_lazy, {'lazy': 1})
  call dein#end()
  call dein#save_state()
endif


" 不足プラグインの自動インストール
if has('vim_starting') && dein#check_install()
  call dein#install()
endif

###起動時ロード用のプラグイン設定

dein.toml
[[plugins]]
repo = 'Shougo/dein.vim'

###遅延ロード用のプラグイン設定

dein_lazy.toml
[[plugins]]
[[plugins]]
repo = 'Shougo/denite.nvim'
on_cmd = 'Denite'
on_i = 1
hook_source = '''
  call denite#custom#map('insert', '<c-n>', '<denite:move_to_next_line>', 'noremap')
  call denite#custom#map('insert', '<c-p>', '<denite:move_to_previous_line>', 'noremap')
'''

[[plugins]] # Plugin to easily access Most Recently Used (MRU) files
repo = 'Shougo/neomru.vim'
on_source = 'denite.nvim'
on_path = '.*'

[[plugins]] # Yank
repo = 'Shougo/neoyank.vim'
on_source = 'denite.nvim'
on_event = 'TextYankPost'
9
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?