Last active
August 1, 2021 12:56
-
-
Save nav-mike/0f5d7289fb381e41cb27b4c135a561fd to your computer and use it in GitHub Desktop.
my .vimrc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
syntax on | |
set exrc | |
set guicursor= | |
set tabstop=2 softtabstop=2 | |
set shiftwidth=2 | |
set expandtab | |
set smartindent | |
set nu | |
set nowrap | |
set relativenumber | |
set noswapfile | |
set hidden | |
set noerrorbells | |
set nobackup | |
set undodir=~/.vim/undodir | |
set undofile | |
set incsearch | |
set scrolloff=8 | |
set signcolumn=yes | |
set colorcolumn=100 | |
set updatetime=100 | |
set laststatus=2 | |
if exists('$TMUX') | |
let &t_SI = "\<Esc>Ptmux;\<Esc>\e[5 q\<Esc>\\" | |
let &t_EI = "\<Esc>Ptmux;\<Esc>\e[2 q\<Esc>\\" | |
else | |
let &t_SI = "\<Esc>]50;CursorShape=1\x7" | |
let &t_SR = "\<Esc>]50;CursorShape=2\x7" | |
let &t_EI = "\<Esc>]50;CursorShape=0\x7" | |
end | |
call plug#begin('~/.vim/plugged') | |
Plug 'joshdick/onedark.vim' | |
Plug 'preservim/nerdtree' | |
Plug 'preservim/nerdtree' | | |
\ Plug 'Xuyuanp/nerdtree-git-plugin' | | |
\ Plug 'ryanoasis/vim-devicons' | |
Plug 'tiagofumo/vim-nerdtree-syntax-highlight' | |
Plug 'PhilRunninger/nerdtree-visual-selection' | |
Plug 'vim-ruby/vim-ruby' | |
Plug 'preservim/nerdcommenter' | |
Plug 'airblade/vim-gitgutter' | |
Plug 'itchyny/lightline.vim' | |
Plug 'jiangmiao/auto-pairs' | |
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } } | |
Plug 'junegunn/fzf.vim' | |
Plug 'pangloss/vim-javascript' | |
Plug 'leafgarland/typescript-vim' | |
Plug 'peitalin/vim-jsx-typescript' | |
Plug 'styled-components/vim-styled-components', { 'branch': 'main' } | |
Plug 'jparise/vim-graphql' | |
Plug 'mhinz/vim-startify' | |
Plug 'tpope/vim-fugitive' | |
Plug 'ngmy/vim-rubocop' | |
Plug 'tpope/vim-rails' | |
Plug 'thoughtbot/vim-rspec' | |
Plug 'christoomey/vim-tmux-navigator' | |
Plug 'neoclide/coc.nvim', {'branch': 'release'} | |
Plug 'Shougo/echodoc.vim' | |
Plug 'vimwiki/vimwiki' | |
Plug 'dbeniamine/cheat.sh-vim' | |
Plug 'tpope/vim-surround' | |
Plug 'unblevable/quick-scope' | |
Plug 'wakatime/vim-wakatime' | |
Plug 'ntpeters/vim-better-whitespace' | |
call plug#end() | |
colorscheme onedark | |
function! StartUp() | |
if 0 == argc() | |
Startify | |
else | |
NERDTree | wincmd p | |
end | |
endfunction | |
autocmd VimEnter * call StartUp() | |
autocmd BufEnter *.{js,jsx,ts,tsx} :syntax sync fromstart | |
autocmd BufLeave *.{js,jsx,ts,tsx} :syntax sync clear | |
let mapleader=" " | |
nnoremap <leader>n :NERDTreeFocus<CR> | |
nnoremap <C-n> :NERDTree<CR> | |
nnoremap <C-t> :NERDTreeToggle<CR> | |
nnoremap <C-f> :NERDTreeFind<CR> | |
let g:NERDCreateDefaultMappings = 1 | |
" Default value is clap | |
let g:dashboard_default_executive ='fzf' | |
function! LightlineFilename() | |
let root = fnamemodify(get(b:, 'git_dir'), ':h') | |
let path = expand('%:p') | |
if path[:len(root)-1] ==# root | |
return path[len(root)+1:] | |
endif | |
return expand('%') | |
endfunction | |
let g:lightline = { | |
\ 'colorscheme': 'wombat', | |
\ 'active': { | |
\ 'left': [ [ 'mode', 'paste' ], | |
\ [ 'gitbranch', 'readonly', 'filename', 'modified' ] ] | |
\ }, | |
\ 'component_function': { | |
\ 'gitbranch': 'FugitiveHead', | |
\ 'filename': 'LightlineFilename' | |
\ }, | |
\ } | |
let g:coc_global_extensions = [ 'coc-tsserver', 'coc-solargraph', 'coc-react-refactor', 'coc-eslint', 'coc-styled-components' ] | |
if isdirectory('./node_modules') && isdirectory('./node_modules/prettier') | |
let g:coc_global_extensions += ['coc-prettier'] | |
endif | |
if isdirectory('./node_modules') && isdirectory('./node_modules/eslint') | |
let g:coc_global_extensions += ['coc-eslint'] | |
endif | |
nmap <silent> [g <Plug>(coc-diagnostic-prev) | |
nmap <silent> ]g <Plug>(coc-diagnostic-next) | |
nmap <silent> gd <Plug>(coc-definition) | |
nmap <silent> gy <Plug>(coc-type-definition) | |
nmap <silent> gi <Plug>(coc-implementation) | |
nmap <silent> gr <Plug>(coc-references) | |
function! s:show_documentation() | |
if (index(['vim', 'help'], &filetype) >= 0) | |
execute 'h '.expand('<cword>') | |
elseif (coc#rpc#ready()) | |
call CocActionAsync('doHover') | |
else | |
execute '!' . &keywordprg . " " . expand('<cword>') | |
endif | |
endfunction | |
nnoremap <silent> K :call <SID>show_documentation()<CR> | |
autocmd CursorHold * silent call CocActionAsync('highlight') | |
nmap <leader>rn <Plug>(coc-rename) | |
xmap <leader>f <Plug>(coc-format-selected) | |
nmap <leader>f <Plug>(coc-format-selected) | |
let g:CheatSheetDisableFrameworkDetection=0 | |
let g:CheatSheetFrameworks = { | |
\ 'javascript' : ['javascript', 'node', 'react', 'meteor'], | |
\ 'ruby' : ['ruby', 'rails', 'sinatra'], | |
\ 'typescript' : ['typescript', 'nestjs']} | |
let g:better_whitespace_enabled=1 | |
let g:strip_whitespace_on_save=1 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment