call plug#begin('~/.vim/plugged') Plug 'Smirnov-O/nten16.vim' " Color scheme Plug 'itchyny/lightline.vim' " Status bar Plug 'maximbaz/lightline-ale' " Linter info in bar Plug 'dense-analysis/ale' " Linter Plug 'airblade/vim-gitgutter' " Git indicator Plug 'ap/vim-css-color' " Preview CSS colors Plug 'jiangmiao/auto-pairs' " Auto close brackets Plug 'editorconfig/editorconfig-vim' " Editor Config support Plug 'christoomey/vim-tmux-navigator' " Jump from vim in tmux Plug 'maxboisvert/vim-simple-complete' " Sublime like completion " Language support Plug 'pangloss/vim-javascript', {'for': 'javascript'} Plug 'mxw/vim-jsx', {'for': ['javascript.jsx', 'javascript']} Plug 'plasticboy/vim-markdown', {'for': 'markdown'} Plug 'PotatoesMaster/i3-vim-syntax', {'for': 'i3'} Plug 'cespare/vim-toml', {'for': 'toml'} Plug 'zah/nim.vim', {'for': 'nim'} call plug#end() syntax on " Theme set termguicolors colorscheme nten16 set t_Co=256 " number line set nu rnu " Status line set noshowmode showcmd set ruler " Mouse set mouse=a mousehide set cursorline " Encoding set encoding=utf-8 fileencodings=utf-8 " Line wrap set nowrap nolinebreak " Backup file & history set nobackup noswapfile set history=100 " Auto reload file set autoread " Tabs set ts=4 sts=4 set expandtab autoindent set shiftwidth=4 " Search set incsearch ignorecase smartcase " Buffer(s) set hidden smartindent " Spell set spell spelllang=en_us " Space/tab indicator set list listchars=tab:>·,trail:~,extends:>,precedes:<,space:· " Disable sound set visualbell t_vb= "== Language configuration let g:jsx_ext_required = 0 " Markdown let g:vim_markdown_folding_disabled = 1 let g:markdown_fenced_languages = ['javascript', 'js=javascript', 'jsx=javascript.jsx', 'python', 'bash', 'sh=bash'] "== Plug in configuration let g:lightline = { \ 'colorscheme': 'nten16', \ 'active': { \ 'left': [ [ 'mode', 'paste' ], \ [ 'readonly', 'modified' ], \ [ 'linter_errors', 'linter_warnings', 'linter_infos' ] ], \ 'right': [ [ 'lineinfo' ], \ [ 'percent' ], \ [ 'filename', 'filetype' ] ]}, \ 'component_expand': { \ 'linter_errors': 'lightline#ale#errors', \ 'linter_infos': 'lightline#ale#infos', \ 'linter_warnings': 'lightline#ale#warnings' \ }, } " Ale let g:ale_disable_lsp = 1 let g:ale_sign_error = '> ' let g:ale_sign_warning = '- ' let g:ale_echo_msg_format = '%severity%: %s' let g:ale_fixers = { \ 'javascript': ['prettier', 'eslint' ], \ 'python': ['flake8', 'pylint8']} " == Mapping let mapleader="\\" imap jj " Window(s) nmap :wincmd h nmap :wincmd j nmap :wincmd k nmap :wincmd l nmap :wincmd K nmap :wincmd L nmap :wincmd n " C-j/k as up/down in menu inoremap ("\") inoremap ("\") " Tab(s) noremap :tabnext noremap :tabprev noremap :tabnew noremap :tabclose noremap :tabn 1 noremap :tabn 2 noremap :tabn 3 noremap :tabn 4 noremap :tabn 5 noremap :tabn 6 noremap :tabn 7 noremap :tabn 8 noremap :tabn 9 " Buffer(s) noremap b :bnext noremap p :bprev " Paste & copy from/in system clipboard noremap c "*yy noremap v "+p