Neovimでgolangを書く設定 備忘録

概要

Macgolangをインストールし、Neovimで書く環境を整えます。

インストール

まずはgolangをインストールします。

$ brew install go
$ nvim .zshrc #下記を追加
if [[ -d /usr/local/opt/go ]];then
    export GOPATH=$HOME/work.go
    export PATH=$PATH:$GOPATH/bin:/usr/local/opt/go/libexec/bin
fi

設定

設定するものは下記です。

GOPATH

golangで使用するディレクトリをGOPATHに指定する必要があるので、設定します。
GOPATH : https://github.com/golang/go/wiki/GOPATH

.zshrcに下記を追加します。
今回は~/devをGOPATHに指定しています。

#go
if [[ -d /usr/local/opt/go ]];then
    export GOPATH=$HOME/dev
    export PATH=$PATH:$GOPATH/bin:/usr/local/opt/go/libexec/bin
fi

GOPATHを指定すると、今後はgo getでインストールするgolangのライブラリがこの下にインストールされるようになります。

補完

deoplete.nvimを使っているので、deoplete-goをセットアップすればいいです。
設定も公式サイトのものをとりあえずそのまま使用しています。
deoplete-go : https://github.com/zchee/deoplete-go

依存しているものをインストールします。

$pip2 install --upgrade neovim
$pip3 install --upgrade neovim
$go get -u github.com/nsf/gocode #GOPATHで指定したディレクトリの下にインストールされる

dein_lazy.tomlに下記を追加します。

[[plugins]]
repo = 'zchee/deoplete-go'
on_ft = 'go'

vim-go

ちょっと前だとvim-goはneovimに対応してなかったようですが、今は使えるようになっているみたいなのでvim-goを入れます。
dein_lazy.tomlに下記を追加します。

[[plugins]]
repo = 'fatih/vim-go'
on_ft = 'go'

インストールしたら下記をneovimで実行すると、vim-goで使うライブラリがGOPATHの下にインストールされます。

:GoInstallBinaries

vim-go自体にチュートリアルがあるのでそれをやれば一通りの使い方はわかりそう
vim-go-tutorial : https://github.com/fatih/vim-go-tutorial

シンタックスチェック

neovimではSyntasticの代わりにneomakeでシンタックスチェックをするので、neomakeをインストールします。
dein.tomlに下記を追加します。

[[plugins]]
repo = 'neomake/neomake'