Skip to content

Instantly share code, notes, and snippets.

@juancsr
Last active January 1, 2023 22:38
Show Gist options
  • Save juancsr/1eb990106c9d9e4b4a202d3c99c0a32a to your computer and use it in GitHub Desktop.
Save juancsr/1eb990106c9d9e4b4a202d3c99c0a32a to your computer and use it in GitHub Desktop.
My nvim configuration
call plug#begin('~/.local/share/nvim/plugged')
" Themes
Plug 'morhetz/gruvbox'
" Nerdtree
Plug 'preservim/nerdtree'
Plug 'Xuyuanp/nerdtree-git-plugin'
Plug 'ryanoasis/vim-devicons'
Plug 'johnstef99/vim-nerdtree-syntax-highlight'
" airline
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
" ctrlp
Plug 'ctrlpvim/ctrlp.vim'
" go develop
Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' }
" javascript
Plug 'pangloss/vim-javascript'
" autopairs
" Plug 'jiangmiao/auto-pairs'
call plug#end()
if (has("termguicolors"))
set termguicolors
endif
syntax enable
set encoding=UTF-8
set number relativenumber
colorscheme gruvbox
autocmd ColorScheme * highlight CocErrorFloat guifg=#ffffff
autocmd ColorScheme * highlight CocInfoFloat guifg=#ffffff
autocmd ColorScheme * highlight CocWarningFloat guifg=#ffffff
autocmd ColorScheme * highlight SignColumn guibg=#adadad
" utils
noremap <A-,> :source /home/juancsr/.config/nvim/init.vim<CR>
noremap <C-s> :w<CR>
noremap <C-x> :x<CR>
" NERDTree configuration
noremap <C-b> :NERDTreeToggle <bar> :NERDTreeRefreshRoot <CR>
noremap <C-e> :NERDTreeFocus <bar> :NERDTreeRefreshRoot <CR>
let g:NERDTreeHighlightFolders = 1
let g:webdevicons_conceal_nerdtree_brackets = 0
" Tabs configuration
noremap l gt
noremap j gT
noremap <C-n> :tabnew<CR>
noremap <C-w> :tabclose<CR>
noremap 0 :tabfirst<CR>
" airline configuration
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#formatter = 'jsformatter'
" ctrlp
let g:ctrlp_user_command = ['.git', 'cd %s && git ls-files -co --exclude-standard'] "Hide files in .gitignore
let g:ctrlp_show_hidden = 1 "Show dotfiles
" Kite configuration
let g:kite_supported_languages = ['*']
" vim-go configuration
" 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
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
" vim-javascript config
let g:javascript_plugin_jsdoc = 1
let g:javascript_conceal_function = "ƒ"
let g:javascript_conceal_null = "ø"
let g:javascript_conceal_this = "@"
let g:javascript_conceal_return = "⇚"
let g:javascript_conceal_undefined = "¿"
let g:javascript_conceal_NaN = "ℕ"
let g:javascript_conceal_prototype = "¶"
let g:javascript_conceal_static = "•"
let g:javascript_conceal_super = "Ω"
let g:javascript_conceal_arrow_function = "⇒"
let g:javascript_conceal_noarg_arrow_function = "🞅"
let g:javascript_conceal_underscore_arrow_function = "🞅"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment