-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Radu's vim setup
RaduBerinde edited this page Feb 4, 2016
·
15 revisions
A quick and dirty for how to get started with vim
and go
.
1. Install pathogen
mkdir -p ~/.vim/autoload ~/.vim/bundle && \
curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim
And add to the top of ~/.vimrc
:
execute pathogen#infect()
syntax on
filetype plugin indent on
2. Install vim-go
git clone https://github.com/fatih/vim-go.git ~/.vim/bundle/vim-go
Add these to ~/.vimrc
:
let g:go_highlight_functions = 1
let g:go_highlight_methods = 1
let g:go_highlight_structs = 1
let g:go_highlight_build_constraints = 1
autocmd FileType go set number fo+=croq tw=100
autocmd Filetype go set makeprg=go\ build\ .
autocmd Filetype go nmap <C-]> :exec("GoDef")<CR>
autocmd Filetype go nmap <F9> :GoReferrers<CR>
autocmd Filetype go nmap <C-\> <Plug>(go-def-split)
autocmd Filetype go nmap <Space> <Plug>(go-info)
Make sure $GOPATH
is set correctly, start vim
and run
:GoInstallBinaries
Optional: set up ag
Install ag
(a faster, better grep
) on your system. On Debian:
apt-get install silversearcher-ag
Then install the vim plugin
cd ~/.vim/bundle && git clone https://github.com/rking/ag.vim
You can use commands like :Ag
in vim now. Here are some useful mappings that you can put in ~/.vimrc
:
nmap <F7> :let @/ = "<C-R><C-W>"<CR>:Ag -s -w <C-R><C-W> *<CR>
nmap <F8> :let @/ = "<C-R><C-W>"<CR>:!ag -s -w <C-R><C-W> *<CR>
These search the identifier under the cursor, and also put that identifier in the search register so you can keep searching in files with n
.