From 603de94d16c0929bc334591e35fa1d6ddb76d34a Mon Sep 17 00:00:00 2001 From: Nirmal Kumar R Date: Sat, 28 Feb 2026 04:02:19 +0530 Subject: [PATCH] Configure Vundle and add Go development plugins Added Vundle plugin manager and Go development settings. --- .vimrc | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 61 insertions(+), 4 deletions(-) diff --git a/.vimrc b/.vimrc index 51f503b..067cf64 100644 --- a/.vimrc +++ b/.vimrc @@ -1,4 +1,17 @@ -set nocompatible +set nocompatible " be iMproved, required +filetype off " required + +" set the runtime path to include Vundle and initialize +set rtp+=~/.vim/bundle/Vundle.vim +call vundle#begin() + +" Ag +Plugin 'rking/ag.vim' + +" Go development plugin +Plugin 'fatih/vim-go' + +call vundle#end() set laststatus=2 set t_Co=256 @@ -31,12 +44,10 @@ filetype plugin on filetype indent on syntax enable -" :color shine -:colorscheme jellybeans autocmd FileType markdown setlocal tw=80 et ts=2 sw=2 autocmd FileType text setlocal tw=80 -autocmd FileType c,cpp set set tabstop=4 shiftwidth=4 expandtab +autocmd FileType c,cpp set tabstop=4 shiftwidth=4 expandtab autocmd FileType c set omnifunc=ccomplete#Complete autocmd FileType html,xhtml,css,xml,xslt set shiftwidth=2 softtabstop=2 autocmd FileType vim,lua,nginx set shiftwidth=2 softtabstop=2 @@ -46,6 +57,36 @@ autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags autocmd FileType make set noexpandtab shiftwidth=8 softtabstop=0 autocmd FileType asm set noexpandtab shiftwidth=8 softtabstop=0 syntax=nasm +" Golang customizations +let g:go_fmt_command = "goimports" +let g:go_fmt_fail_silently = 1 +let g:go_bin_path = expand("$HOME/go/bin") +let g:go_auto_type_info = 1 + +" Syntax Highlighting for Golang +let g:go_highlight_functions = 1 +let g:go_highlight_methods = 1 +let g:go_highlight_structs = 1 +let g:go_highlight_interfaces = 1 +let g:go_highlight_operators = 1 +let g:go_highlight_build_constraints = 1 + +" Go keymaps +" Type Info +au FileType go nmap i (go-info) +" GoDoc +au FileType go nmap gd (go-doc) +au Filetype go nmap gv (go-doc-vertical) +" Build/Run/Test +au FileType go nmap r (go-run) +au FileType go nmap b (go-build) +au FileType go nmap t (go-test) +" GoDef +au FileType go nmap gd (go-def) +au FileType go nmap gs (go-def-split) +au FileType go nmap gv (go-def-vertical) +au FileType go nmap gt (go-def-tab) + " Enhanced keyboard mappings " " in normal mode F2 will save the file @@ -60,4 +101,20 @@ map :e %:p:s,.h$,.X123X,:s,.c$,.h,:s,.X123X$,.c, map :make map :make clean all +" The Silver Searcher +" bind \ (backward slash) to grep shortcut +command -nargs=+ -complete=file -bar Ag silent! grep! |cwindow|redraw! +nnoremap \ :Ag + set notermguicolors + +" Solarized stuff +"let g:solarized_termtrans=1 +"let g:solarized_contrast='high' +let g:enable_bold_font = 1 +let g:enable_italic_font = 1 +let g:hybrid_custom_term_colors = 1 +let base16colorspace=256 +set background=dark +colorscheme hybrid +highlight CursorLine cterm=BOLD ctermbg=235 ctermfg=NONE