Goの開発環境Vim版について、mattnさんの記事を見ながら作りました。
私はVimの環境にVundleを使っており、その絡みでほんの少し手順に違いがあったので、メモとして残しておきます。
ついでにLintも入れてみる次第です。
大前提:PATHの設定
Goの環境変数はGOROOT(Goのインストールフォルダ)とGOPATH(Goの外部ライブラリを保存するフォルダ)の2つがありますが、このうちGOPATHを用いて $GOPATH/bin を環境変数PATHに含めます(Windowsの場合は%GOPATH%\bin)。
gocodeとGo用lintのインストール
gocodeは下記コマンドでインストール。
go get github.com/nsf/gocode
Golintは下記コマンドでインストール。
go get github.com/golang/lint
それぞれ、$GOPATH/bin/ 以下にgocode, golintの実行形式ファイルが出来ていればOKです。
.vimrcの設定
Vundle用gocode設定として、下記の設定を追加し、BundleInstallでインストールします。
Bundle 'Blackrush/vim-gocode'
既にVundleをご利用の方は、""Vundleの設定と書いているコメントより下の2行が既に.vimrcに書かれているかと思います。
このVundleの設定よりも上に、gocodeとgolintの設定を記述します。
" gocode
set rtp+=$GOROOT/misc/vim
"golint
exe "set rtp+=" . globpath($GOPATH, "src/github.com/golang/lint/misc/vim")
""Vundleの設定
set rtp+=~/vimfiles/bundle/vundle/
call vundle#rc('~/vimfiles/bundle')
最後にGo用に下記も記載してください。
"" Go
filetype plugin indent on
syntax on
これでVimの設定は完了です。
コード補完、Lintの実行方法
コードの補完はオムニ補完を使えばOKですが、使い方は最初に上げたmattnさんの記事が断然参考になります。
mattnさんの記事に書かれていないLintの使い方ですが、単純に:Lintと打てばOKです。
少し触った感じですと、publicの関数・メソッドに対してコメントが書かれていない場合などに指摘してくれるようです。
TODO
この辺は対応して行きたい…
- quickrunによるテスト
- ソース保存時の自動フォーマット → 追記しました(2013-06-11)
ソース保存時の自動フォーマット (2013-06-11追記)
保存時に自動フォーマットを行うには、下記を.vimrcに追加してください。
これで保存時に有無を言わさず自動フォーマットがかかります。
auto BufWritePre *.go Fmt