Skip to content

Instantly share code, notes, and snippets.

@juniovitorino
Last active January 8, 2021 11:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save juniovitorino/0db6449bab57a69e7190f9a70f2250d4 to your computer and use it in GitHub Desktop.
Save juniovitorino/0db6449bab57a69e7190f9a70f2250d4 to your computer and use it in GitHub Desktop.
Custom init.vim config file
" NeoVim CONFIG
" Plugin Section
call plug#begin("~/.vim/plugged")
Plug 'terryma/vim-multiple-cursors'
Plug 'scrooloose/nerdtree'
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
Plug 'junegunn/fzf.vim' " brew install the_silver_searcher ripgrep
Plug 'ryanoasis/vim-devicons'
Plug 'jiangmiao/auto-pairs'
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'leafgarland/typescript-vim'
Plug 'peitalin/vim-jsx-typescript'
Plug 'neoclide/coc-tsserver', {'do': 'yarn install --frozen-lockfile'}
Plug 'mattn/emmet-vim'
Plug 'morhetz/gruvbox'
call plug#end()
" Config Section
if (has("termguicolors"))
set termguicolors
endif
" colorscheme gruvbox
syntax enable
set number
set background=dark
set relativenumber
set hidden
set inccommand=split
set mouse=a
let g:NERDTreeShowHidden = 1
let g:NERDTreeMinimalUI = 1
let g:NERDTreeIgnore = []
let g:NERDTreeStatusline = ''
" Automaticaly close nvim if NERDTree is only thing left open
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
" Toggle
nnoremap <silent> <C-b> :NERDTreeToggle<CR>
" Tabulation
set autoindent
set smartindent
set tabstop=2
set shiftwidth=2
set expandtab
set wildmenu
" Status-line
set statusline=
set statusline+=%#IncSearch#
set statusline+=\ %y
set statusline+=\ %r
set statusline+=%#CursorLineNr#
set statusline+=\ %F
set statusline+=%= "Right side settings
set statusline+=%#Search#
set statusline+=\ %l/%L
set statusline+=\ [%c]
set splitbelow splitright
set nobackup nowritebackup
nnoremap <Up> :resize +2<CR>
nnoremap <Down> :resize -2<CR>
nnoremap <Left> :vertical resize +2<CR>
nnoremap <Right> :vertical resize -2<CR>
xnoremap K :move '<-2<CR>gv-gv
xnoremap J :move '>+1<CR>gv-gv
" Quick colorscheme change
map <F1> :colorscheme gruvbox<CR>
map <F2> :colorscheme base16-default-dark<CR>
map <F3> :colorscheme hybrid_reverse<CR>
map <F4> :colorscheme PaperColor<CR>
map <F5> :colorscheme spacegray<CR>
nnoremap Q <nop>
nnoremap <leader>h <C-W>h
nnoremap <leader>j <C-W>j
nnoremap <leader>k <C-W>k
nnoremap <leader>l <C-W>l
" Fuzzy
nnoremap <C-p> :FZF<CR>
let g:fzf_action = {
\ 'ctrl-t': 'tab split',
\ 'ctrl-s': 'split',
\ 'ctrl-v': 'vsplit'
\}
let $FZF_DEFAULT_COMMAND = 'ag -g ""'
let g:coc_node_path = '~/.config/nvm/15.1.0/bin/node'
let g:coc_global_extensions = ['coc-cssmodules', 'coc-git', 'coc-graphql', 'coc-highlight', 'coc-solargraph', 'coc-sourcekit', 'coc-sql', 'coc-vetur', 'coc-emmet', 'coc-css', 'coc-html', 'coc-json', 'coc-prettier', 'coc-tsserver', 'coc-elixir', 'coc-eslint', 'coc-go', 'coc-phpls', 'coc-python', 'coc-svelte', 'coc-svg', 'coc-tailwindcss', 'coc-yaml', 'coc-xml' ]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment