概要
golangの開発環境は数多く存在すれど、B2Bの現場では例えばintellijの導入を許可されていないなど、ソフトウェアのインストールにハードルがあって、使いたいIDEを導入できない場合がある。その中でも比較的導入しやすいvimに、golangの開発環境を設定し、必要最小限でgolangの開発環境を整えてみた。
vim-goは公式のここをインストールすることにします。
本記事では、仮想環境上にvim-goを導入する手順を示す。
前提
- ここが完了していること
- NeoBundleがインストールされていること
手順
1. NeoBundleをインストールするcurl https://raw.githubusercontent.com/Shougo/neobundle.vim/master/bin/install.sh > install.sh
sh ./install.sh
rm -rf install.sh
2. ホームディレクトリに、.vimrcを作成する。
[vagrant@develop ~]$ vi ~/.vimrc
" Note: Skip initialization for vim-tiny or vim-small.
if 0 | endif
if &compatible
set nocompatible " Be iMproved
endif
" Required:
set runtimepath^=~/.vim/bundle/neobundle.vim/
" Required:
call neobundle#begin(expand('~/.vim/bundle/'))
" Let NeoBundle manage NeoBundle
" Required:
NeoBundleFetch 'Shougo/neobundle.vim'
" My Bundles here:
" Refer to |:NeoBundle-examples|.
" Note: You don't set neobundle setting in .gvimrc!
NeoBundle 'fatih/vim-go'
call neobundle#end()
" Required:
filetype plugin indent on
" If there are uninstalled bundles found on startup,
" this will conveniently prompt you to install them.
NeoBundleCheck
3. vimを起動する。
[vagrant@develop ~]$ vim
4. インストールが始まるので、yをタイプする。
Not installed bundles: ['vim-go']
Install bundles now?
(y)es, [N]o:
5. 完了後、 :qでvimを終了する。
6. 再度vimを起動し、vim内で以下のコマンドを実行し、vim-goのインストールを開始する。
:GoInstallBinaries
すると、vim-goのインストールが開始される。
vim-go: gocode not found. Installing github.com/nsf/gocode to folder /home/vagrant/go/bin/
vim-go: gometalinter not found. Installing github.com/alecthomas/gometalinter to folder /h
ome/vagrant/go/bin/
vim-go: goimports not found. Installing golang.org/x/tools/cmd/goimports to folder /home/v
agrant/go/bin/
vim-go: godef not found. Installing github.com/rogpeppe/godef to folder /home/vagrant/go/b
in/
vim-go: oracle not found. Installing golang.org/x/tools/cmd/oracle to folder /home/vagrant
/go/bin/
vim-go: gorename not found. Installing golang.org/x/tools/cmd/gorename to folder /home/vag
rant/go/bin/
vim-go: golint not found. Installing github.com/golang/lint/golint to folder /home/vagrant
/go/bin/
vim-go: errcheck not found. Installing github.com/kisielk/errcheck to folder /home/vagrant
/go/bin/
vim-go: gotags not found. Installing github.com/jstemmer/gotags to folder /home/vagrant/go
/bin/
vim-go: asmfmt not found. Installing github.com/klauspost/asmfmt/cmd/asmfmt to folder /hom
e/vagrant/go/bin/
Press ENTER or type command to continue
完了です。
動作確認
1. 以下のコマンドでgoファイルを新規作成する。
vim main.go
2. 以下のフォーマットめちゃくちゃなコード内容を記述する
package main
import "fmt"
func main() {
fmt.Println("Hello vim-go!")
}
3. 以下のコマンドを実行すると
:GoFmt
フォーマットがかかります。
package main
import "fmt"
func main() {
fmt.Println("Hello vim-go!")
}
4. 以下のコマンドを実行すると
:GoRun
実行できます
vim main.go
Hello vim-go!
Press ENTER or type command to continue
おつかれさまでした。