From 934b34bc4ac029b71e36ead9ea27dd8ea516391d Mon Sep 17 00:00:00 2001 From: Nirmal Kumar R Date: Sun, 31 May 2026 13:28:36 +0530 Subject: Update vimrc and remove dot --- vimrc | 88 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 vimrc (limited to 'vimrc') diff --git a/vimrc b/vimrc new file mode 100644 index 0000000..1d1be12 --- /dev/null +++ b/vimrc @@ -0,0 +1,88 @@ +" Vim Plug + +call plug#begin('~/.vim/plugged') + +"utility +Plug 'junegunn/fzf', { 'do': { -> fzf#install() } } +Plug 'junegunn/fzf.vim' +Plug 'tpope/vim-fugitive' +Plug 'neoclide/coc.nvim', {'branch': 'release'} +Plug 'preservim/nerdtree' +Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' } + +"accessiblities +Plug 'NLKNguyen/papercolor-theme' +Plug 'itchyny/lightline.vim' + +call plug#end() + +syntax on +set background=dark +set laststatus=2 +set t_Co=256 +set encoding=utf-8 + +let g:lightline = { + \ 'colorscheme': 'PaperColor', + \ } +let g:NERDTreeFileLines = 1 + +colorscheme PaperColor + +" disable all linters as that is taken care of by coc.nvim +let g:go_diagnostics_enabled = 0 +let g:go_metalinter_enabled = [] + +" don't jump to errors after metalinter is invoked +let g:go_jump_to_error = 0 + +" run go imports on file save +let g:go_fmt_command = "goimports" + +" automatically highlight variable your cursor is on +let g:go_auto_sameids = 0 + +" Go syntax highlighting +let g:go_highlight_types = 1 +let g:go_highlight_fields = 1 +let g:go_highlight_functions = 1 +let g:go_highlight_function_calls = 1 +let g:go_highlight_operators = 1 +let g:go_highlight_extra_types = 1 +let g:go_highlight_build_constraints = 1 +let g:go_highlight_generate_tags = 1 + +set shiftwidth=4 +set tabstop=4 +set expandtab +set smarttab +set autoindent +filetype on +set number +set ruler +set mouse=a +set noswapfile + +autocmd FileType c setlocal shiftwidth=2 softtabstop=2 expandtab + +nnoremap n :NERDTreeFocus +nnoremap :NERDTreeToggle +nnoremap :NERDTreeFind + +" show the function signature for a given routine +autocmd BufEnter *.go nmap i (go-info) +" show the interfaces a type implements +autocmd BufEnter *.go nmap ii (go-implements) +" describe the definition of a given type +autocmd BufEnter *.go nmap ci (go-describe) +" see the callers of a given function +autocmd BufEnter *.go nmap cc (go-callers) +" find all references of a given type/function in the codebase +nmap cr (coc-references) + +" go to definition or go back +nmap +nmap (coc-definition) + +" refactor with renaming Go code +nmap r (coc-rename) -- cgit v1.3