Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- """"""""""""""""""""""""""""""""""""""""
- " vim-plug
- """"""""""""""""""""""""""""""""""""""""
- call plug#begin('~/.vim/plugged')
- Plug 'vim-airline/vim-airline'
- Plug 'vim-airline/vim-airline-themes'
- Plug 'tpope/vim-fugitive'
- Plug 'scrooloose/nerdtree'
- Plug 'Xuyuanp/nerdtree-git-plugin'
- Plug 'tiagofumo/vim-nerdtree-syntax-highlight'
- Plug 'valloric/youcompleteme'
- Plug 'w0rp/ale'
- Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
- Plug 'junegunn/fzf.vim'
- Plug 'pangloss/vim-javascript'
- Plug 'mxw/vim-jsx'
- Plug 'posva/vim-vue'
- Plug 'lumiliet/vim-twig'
- Plug 'Yggdroot/indentLine', { 'commit': '0a6171444fe036411c3155c04d4022a7b4af4bb6' }
- Plug 'chriskempson/base16-vim'
- Plug 'ryanoasis/vim-devicons'
- call plug#end()
- """"""""""""""""""""""""""""""""""""""""
- " Basic Vim Settings
- """"""""""""""""""""""""""""""""""""""""
- if &t_Co > 2 || has("gui_running")
- syntax on
- endif
- set nocompatible " (cp) use Vim defaults (much better)
- set encoding=utf-8
- set ttyfast
- set lazyredraw
- set pastetoggle=<F3>
- set hidden
- set history=1000
- set undolevels=1000
- set nobackup
- set nowritebackup
- set noswapfile
- set conceallevel=1
- set clipboard=unnamedplus
- set timeoutlen=1000
- set ttimeoutlen=0
- "- Window
- """ add '<C-W>_' to make it full height while switching window
- "map <C-J> <C-W>_j
- "map <C-K> <C-W>_k
- """ Move Window's Cursor
- nmap <C-k> <C-w>k
- nmap <C-j> <C-w>j
- nmap <C-l> <C-w>l
- nmap <C-h> <C-w>h
- """ Switch Window Position
- nmap <C-S-K> <C-w>K
- nmap <C-S-J> <C-w>J
- """ For copy to clipboard
- vnoremap <C-d> "+d
- vnoremap <C-c> "+y
- inoremap <C-v> <ESC>"+pa
- "- Colors
- set t_Co=256
- " if &t_Co >= 256 || has("gui_running")
- set termguicolors
- let base16colorspace=256
- colorscheme base16-default-dark-gnome
- " endif
- hi MatchParen cterm=bold ctermbg=none ctermfg=166
- "" Line number color
- " highlight LineNr term=bold cterm=NONE ctermfg=243 ctermbg=157 gui=NONE guifg=DarkGrey guibg=NONE
- "" Visual mode color
- " hi Visual ctermfg=0 ctermbg=255 gui=NONE guibg=White guifg=Black
- "" Cursor Line & Column color
- " hi CursorLine cterm=NONE ctermbg=darkred ctermfg=white guibg=darkred guifg=white
- " hi CursorColumn cterm=NONE ctermbg=darkred ctermfg=white guibg=darkred guifg=white
- " nnoremap <Leader>c :set cursorline! cursorcolumn!<CR>
- au BufNewFile,BufRead *.ejs set filetype=html
- "- Spaces & Tabs
- set autoindent
- set smartindent
- set tabstop=2
- set shiftwidth=2
- set smarttab
- set expandtab
- "-- for html/rb/js/coffee/jade files, 2 spaces
- autocmd Filetype html,ruby,javascript,coffeescript,jade setlocal ts=2 sw=2
- autocmd Filetype javascript,coffeescript,jade setlocal sts=2
- "-- for php & etc files, 4 spaces
- autocmd Filetype php,yaml,cpp setlocal ts=4 sw=4 sts=0
- "- UI Config
- set ruler " (ru) show the cursor position at all times
- set number " (nu) show line numbers
- set showcmd " (sc) display an incomplete command in the lower right
- set cursorline
- set wildmenu
- set showmatch
- if has('mouse')
- set mouse=a
- endif
- filetype plugin indent on
- "- Searching
- set wrapscan " (ws) allows search to wrap to top of document when the bottom has been hit
- set incsearch " (is) highlights what you are searching for as you type
- set hlsearch " (hls) highlights all instances of the last searched string
- set ignorecase " (ic) ignores case in search patterns
- set smartcase " (scs) don't ignore case when the search pattern has uppercase
- set infercase " (inf) during keyword completion, fix case of new word (when ignore case is on)
- hi search cterm=NONE ctermfg=0 ctermbg=191
- "- Folding
- set foldenable
- set foldlevelstart=10
- set foldmethod=indent " (fdm) creates a fold for every level of indentation
- nnoremap <space> za
- let mapleader=","
- nnoremap <F4> :exec &conceallevel ? ":set conceallevel=0" : "set conceallevel=1"<cr>
- """"""""""""""""""""""""""""""""""""""""
- " vim-airline
- """"""""""""""""""""""""""""""""""""""""
- set laststatus=2
- let g:airline_theme = 'molokai'
- let g:airline_left_sep = ''
- let g:airline_right_sep = ''
- let g:airline_powerline_fonts=1
- let g:airline#extensions#tabline#enabled = 1
- let g:airline#extensions#tabline#left_sep = ''
- let g:airline#extensions#tabline#left_alt_sep = '|'
- let g:airline#extensions#tabline#fnametruncate = 1
- let g:airline#extensions#tabline#show_buffers = 0
- let g:airline#extensions#tabline#buf_label_first = 1
- let g:airline#extensions#tabline#buffers_label = 'b'
- let g:airline#extensions#tabline#tabs_label = 't'
- let g:airline#extensions#tabline#buffer_idx_mode = 1
- nmap <leader>1 <Plug>AirlineSelectTab1
- nmap <leader>2 <Plug>AirlineSelectTab2
- nmap <leader>3 <Plug>AirlineSelectTab3
- nmap <leader>4 <Plug>AirlineSelectTab4
- nmap <leader>5 <Plug>AirlineSelectTab5
- nmap <leader>6 <Plug>AirlineSelectTab6
- nmap <leader>7 <Plug>AirlineSelectTab7
- nmap <leader>8 <Plug>AirlineSelectTab8
- nmap <leader>9 <Plug>AirlineSelectTab9
- nmap <leader>- <Plug>AirlineSelectPrevTab
- nmap <leader>+ <Plug>AirlineSelectNextTab
- """"""""""""""""""""""""""""""""""""""""
- " NERDTree
- """"""""""""""""""""""""""""""""""""""""
- map <leader>nn :NERDTreeToggle<cr>
- map <leader>nf :NERDTreeFind<cr>
- autocmd StdinReadPre * let s:std_in=1
- autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists("s:std_in") | exe 'NERDTree' argv()[0] | wincmd p | ene | endif
- " let g:NERDTreeDirArrowExpandable = '▸'
- " let g:NERDTreeDirArrowCollapsible = '▾'
- let g:NERDTreeIndicatorMapCustom = {
- \ "Modified" : "✹",
- \ "Staged" : "✚",
- \ "Untracked" : "✭",
- \ "Renamed" : "➜",
- \ "Unmerged" : "═",
- \ "Deleted" : "✖",
- \ "Dirty" : "✗",
- \ "Clean" : "✔︎",
- \ 'Ignored' : '☒',
- \ "Unknown" : "?"
- \ }
- """"""""""""""""""""""""""""""""""""""""
- " vim fzf
- """"""""""""""""""""""""""""""""""""""""
- map <c-p> :FZF<CR>
- let g:fzf_action = {
- \ 'ctrl-t': 'tab split',
- \ 'ctrl-x': 'split',
- \ 'ctrl-v': 'vsplit' }
- let g:fzf_layout = { 'down': '~40%' }
- let g:fzf_colors =
- \ { 'fg': ['fg', 'Normal'],
- \ 'bg': ['bg', 'Normal'],
- \ 'hl': ['fg', 'Comment'],
- \ 'fg+': ['fg', 'CursorLine', 'CursorColumn', 'Normal'],
- \ 'bg+': ['bg', 'CursorLine', 'CursorColumn'],
- \ 'hl+': ['fg', 'Statement'],
- \ 'info': ['fg', 'PreProc'],
- \ 'border': ['fg', 'Ignore'],
- \ 'prompt': ['fg', 'Conditional'],
- \ 'pointer': ['fg', 'Exception'],
- \ 'marker': ['fg', 'Keyword'],
- \ 'spinner': ['fg', 'Label'],
- \ 'header': ['fg', 'Comment'] }
- let g:fzf_history_dir = '~/.local/share/fzf-history'
- let g:fzf_buffers_jump = 1
- """"""""""""""""""""""""""""""""""""""""
- " vim-indentline
- """"""""""""""""""""""""""""""""""""""""
- let g:indentLine_enabled = 1
- " let g:indentLine_setConceal = 0
- let g:indentLine_color_gui = '#e37272'
- """"""""""""""""""""""""""""""""""""""""
- " vim-javascript
- """"""""""""""""""""""""""""""""""""""""
- let g:javascript_plugin_jsdoc = 1
- let g:javascript_plugin_flow = 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 = "🞅"
- """"""""""""""""""""""""""""""""""""""""
- " vim-jsx
- """"""""""""""""""""""""""""""""""""""""
- let g:jsx_ext_required = 0
- """"""""""""""""""""""""""""""""""""""""
- " vim-ale
- """"""""""""""""""""""""""""""""""""""""
- let g:ale_linters = {
- \ 'javascript': ['eslint', 'flow'],
- \ 'jsx': ['eslint'],
- \}
- let g:ale_completion_enabled = 1
- let g:ale_set_highlights = 1
- let g:ale_sign_error = 'X'
- let g:ale_sign_warning = '?'
- let g:ale_statusline_format = ['X %d', '? %d', '']
- let g:ale_echo_msg_format = '%linter% says %s'
- let g:ale_lint_on_text_changed = 'never'
- let g:ale_fix_on_save = 1
- let g:ale_open_list = 0
- augroup FiletypeGroup
- autocmd!
- au BufNewFile,BufRead *.jsx set filetype=javascript.jsx
- augroup END
- highlight clear ALEErrorSign " otherwise uses error bg color (typically red)
- highlight clear ALEWarningSign " otherwise uses error bg color (typically red)
- nnoremap <leader>an :ALENextWrap<cr>
- nnoremap <leader>ap :ALEPreviousWrap<cr>
- """"""""""""""""""""""""""""""""""""""""
- " vim-devicons
- """"""""""""""""""""""""""""""""""""""""
- " Force extra padding in NERDTree so that the filetype icons line up vertically
- let g:WebDevIconsNerdTreeGitPluginForceVAlign = 0
- " enable folder/directory glyph flag (default 0)
- let g:WebDevIconsUnicodeDecorateFolderNodes = 0
- " enable open and close folder/directory glyph flags (default 0)
- let g:DevIconsEnableFoldersOpenClose = 1
- " enable file extension pattern matching glyphs on folder/directory (default with 0)
- let g:DevIconsEnableFolderExtensionPatternMatching = 1
- " Load all plugins now.
- " Plugins need to be added to runtimepath before helptags can be generated.
- packloadall
- " Load all of the helptags now, after plugins have been loaded.
- " All messages and errors will be ignored.
- silent! helptags ALL
Add Comment
Please, Sign In to add comment