2012-05-29 16:12:10 -04:00
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
2016-05-14 08:22:57 -04:00
|
|
|
" Important:
|
2019-11-16 11:00:14 -05:00
|
|
|
" This requires that you install https://github.com/amix/vimrc !
|
2012-05-29 16:12:10 -04:00
|
|
|
"
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
|
|
|
|
|
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
" => Load pathogen paths
|
|
|
|
""""""""""""""""""""""""""""""
|
2017-03-27 15:27:30 -04:00
|
|
|
let s:vim_runtime = expand('<sfile>:p:h')."/.."
|
|
|
|
call pathogen#infect(s:vim_runtime.'/sources_forked/{}')
|
|
|
|
call pathogen#infect(s:vim_runtime.'/sources_non_forked/{}')
|
2017-05-20 05:33:48 -04:00
|
|
|
call pathogen#infect(s:vim_runtime.'/my_plugins/{}')
|
2012-05-29 17:32:24 -04:00
|
|
|
call pathogen#helptags()
|
2012-05-29 16:12:10 -04:00
|
|
|
|
2019-11-30 06:54:13 -05:00
|
|
|
|
2012-05-29 16:12:10 -04:00
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
" => bufExplorer plugin
|
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
let g:bufExplorerDefaultHelp=0
|
|
|
|
let g:bufExplorerShowRelativePath=1
|
|
|
|
let g:bufExplorerFindActive=1
|
|
|
|
let g:bufExplorerSortBy='name'
|
|
|
|
map <leader>o :BufExplorer<cr>
|
|
|
|
|
|
|
|
|
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
" => MRU plugin
|
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
let MRU_Max_Entries = 400
|
|
|
|
map <leader>f :MRU<CR>
|
|
|
|
|
|
|
|
|
2018-02-04 04:07:27 -05:00
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
" => YankStack
|
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
let g:yankstack_yank_keys = ['y', 'd']
|
|
|
|
|
2019-11-30 06:54:13 -05:00
|
|
|
nmap <C-p> <Plug>yankstack_substitute_older_paste
|
|
|
|
nmap <C-n> <Plug>yankstack_substitute_newer_paste
|
2018-02-04 04:07:27 -05:00
|
|
|
|
|
|
|
|
2012-05-29 16:12:10 -04:00
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
" => CTRL-P
|
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
let g:ctrlp_working_path_mode = 0
|
2012-08-15 22:29:05 -04:00
|
|
|
|
2020-05-10 11:04:55 -04:00
|
|
|
" Quickly find and open a file in the current working directory
|
2019-11-30 06:54:13 -05:00
|
|
|
let g:ctrlp_map = '<C-f>'
|
2014-04-18 08:52:50 -04:00
|
|
|
map <leader>j :CtrlP<cr>
|
2020-05-10 11:04:55 -04:00
|
|
|
|
|
|
|
" Quickly find and open a buffer
|
|
|
|
map <leader>b :CtrlPBuffer<cr>
|
|
|
|
|
2012-08-15 22:29:05 -04:00
|
|
|
let g:ctrlp_max_height = 20
|
|
|
|
let g:ctrlp_custom_ignore = 'node_modules\|^\.DS_Store\|^\.git\|^\.coffee'
|
2012-05-29 16:12:10 -04:00
|
|
|
|
|
|
|
|
2013-04-13 13:45:21 -04:00
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
" => ZenCoding
|
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
" Enable all functions in all modes
|
|
|
|
let g:user_zen_mode='a'
|
|
|
|
|
|
|
|
|
2012-05-29 16:12:10 -04:00
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
" => snipMate (beside <TAB> support <CTRL-j>)
|
|
|
|
""""""""""""""""""""""""""""""
|
2019-11-30 06:54:13 -05:00
|
|
|
ino <C-j> <C-r>=snipMate#TriggerSnippet()<cr>
|
|
|
|
snor <C-j> <esc>i<right><C-r>=snipMate#TriggerSnippet()<cr>
|
2021-05-31 16:26:57 -04:00
|
|
|
let g:snipMate = { 'snippet_version' : 1 }
|
2012-05-29 16:12:10 -04:00
|
|
|
|
|
|
|
|
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
" => Vim grep
|
|
|
|
""""""""""""""""""""""""""""""
|
|
|
|
let Grep_Skip_Dirs = 'RCS CVS SCCS .svn generated'
|
|
|
|
set grepprg=/bin/grep\ -nH
|
|
|
|
|
|
|
|
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" => Nerd Tree
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
2015-02-12 19:19:27 -05:00
|
|
|
let g:NERDTreeWinPos = "right"
|
2015-07-13 06:38:38 -04:00
|
|
|
let NERDTreeShowHidden=0
|
|
|
|
let NERDTreeIgnore = ['\.pyc$', '__pycache__']
|
2015-02-24 05:45:22 -05:00
|
|
|
let g:NERDTreeWinSize=35
|
2012-05-29 16:12:10 -04:00
|
|
|
map <leader>nn :NERDTreeToggle<cr>
|
2016-12-16 20:20:55 -05:00
|
|
|
map <leader>nb :NERDTreeFromBookmark<Space>
|
2012-05-29 16:12:10 -04:00
|
|
|
map <leader>nf :NERDTreeFind<cr>
|
|
|
|
|
|
|
|
|
2013-04-14 11:48:31 -04:00
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" => vim-multiple-cursors
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
2018-07-19 08:56:27 -04:00
|
|
|
let g:multi_cursor_use_default_mapping=0
|
|
|
|
|
|
|
|
" Default mapping
|
|
|
|
let g:multi_cursor_start_word_key = '<C-s>'
|
|
|
|
let g:multi_cursor_select_all_word_key = '<A-s>'
|
|
|
|
let g:multi_cursor_start_key = 'g<C-s>'
|
|
|
|
let g:multi_cursor_select_all_key = 'g<A-s>'
|
|
|
|
let g:multi_cursor_next_key = '<C-s>'
|
|
|
|
let g:multi_cursor_prev_key = '<C-p>'
|
|
|
|
let g:multi_cursor_skip_key = '<C-x>'
|
|
|
|
let g:multi_cursor_quit_key = '<Esc>'
|
2013-04-14 11:48:31 -04:00
|
|
|
|
|
|
|
|
2012-05-29 16:12:10 -04:00
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" => surround.vim config
|
2022-05-20 05:05:00 -04:00
|
|
|
" Annotate strings with gettext
|
2012-05-29 16:12:10 -04:00
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
2012-08-15 22:29:05 -04:00
|
|
|
vmap Si S(i_<esc>f)
|
|
|
|
au FileType mako vmap Si S"i${ _(<esc>2f"a) }<esc>
|
2013-11-16 14:45:48 -05:00
|
|
|
|
|
|
|
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
2016-05-14 08:22:57 -04:00
|
|
|
" => lightline
|
2013-11-16 14:45:48 -05:00
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
2016-05-14 08:22:57 -04:00
|
|
|
let g:lightline = {
|
2022-05-20 05:05:00 -04:00
|
|
|
\ 'colorscheme': 'wombat',
|
|
|
|
\ 'active': {
|
2022-08-10 23:57:20 -04:00
|
|
|
\ 'left': [ ['mode', 'paste'],
|
|
|
|
\ ['fugitive', 'readonly', 'filename', 'modified'] ],
|
|
|
|
\ 'right': [ [ 'lineinfo' ], ['percent'] ]
|
|
|
|
\ },
|
|
|
|
\ 'component': {
|
|
|
|
\ 'readonly': '%{&filetype=="help"?"":&readonly?"🔒":""}',
|
|
|
|
\ 'modified': '%{&filetype=="help"?"":&modified?"+":&modifiable?"":"-"}',
|
|
|
|
\ 'fugitive': '%{exists("*FugitiveHead")?FugitiveHead():""}'
|
|
|
|
\ },
|
|
|
|
\ 'component_visible_condition': {
|
|
|
|
\ 'readonly': '(&filetype!="help"&& &readonly)',
|
|
|
|
\ 'modified': '(&filetype!="help"&&(&modified||!&modifiable))',
|
|
|
|
\ 'fugitive': '(exists("*FugitiveHead") && ""!=FugitiveHead())'
|
|
|
|
\ },
|
|
|
|
\ 'separator': { 'left': ' ', 'right': ' ' },
|
|
|
|
\ 'subseparator': { 'left': ' ', 'right': ' ' }
|
|
|
|
\ }
|
2015-12-17 10:44:42 -05:00
|
|
|
|
2013-12-28 13:23:13 -05:00
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" => Vimroom
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
2013-12-29 05:37:14 -05:00
|
|
|
let g:goyo_width=100
|
2014-01-06 19:25:41 -05:00
|
|
|
let g:goyo_margin_top = 2
|
|
|
|
let g:goyo_margin_bottom = 2
|
2013-12-29 05:37:14 -05:00
|
|
|
nnoremap <silent> <leader>z :Goyo<cr>
|
2014-02-08 05:05:16 -05:00
|
|
|
|
|
|
|
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
2019-11-16 14:49:59 -05:00
|
|
|
" => Ale (syntax checker and linter)
|
2014-02-08 05:05:16 -05:00
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
2018-03-31 10:56:26 -04:00
|
|
|
let g:ale_linters = {
|
2022-05-20 05:05:00 -04:00
|
|
|
\ 'javascript': ['eslint'],
|
|
|
|
\ 'python': ['flake8'],
|
|
|
|
\ 'go': ['go', 'golint', 'errcheck']
|
|
|
|
\}
|
2018-03-31 10:56:26 -04:00
|
|
|
|
|
|
|
nmap <silent> <leader>a <Plug>(ale_next_wrap)
|
2015-07-13 06:42:13 -04:00
|
|
|
|
2018-06-14 06:31:05 -04:00
|
|
|
" Disabling highlighting
|
|
|
|
let g:ale_set_highlights = 0
|
|
|
|
|
|
|
|
" Only run linting when saving the file
|
|
|
|
let g:ale_lint_on_text_changed = 'never'
|
|
|
|
let g:ale_lint_on_enter = 0
|
|
|
|
|
2015-07-13 06:42:13 -04:00
|
|
|
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" => Git gutter (Git diff)
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
let g:gitgutter_enabled=0
|
|
|
|
nnoremap <silent> <leader>d :GitGutterToggle<cr>
|
2021-06-06 03:51:23 -04:00
|
|
|
|
|
|
|
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" => EditorConfig (project-specific EditorConfig rule)
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
let g:EditorConfig_exclude_patterns = ['fugitive://.*']
|
2021-10-11 05:29:06 -04:00
|
|
|
|
|
|
|
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" => Fugitive
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" Copy the link to the line of a Git repository to the clipboard
|
|
|
|
nnoremap <leader>v :.GBrowse!<CR>
|
|
|
|
xnoremap <leader>v :'<'>GBrowse!<CR>
|
2022-05-20 05:05:00 -04:00
|
|
|
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" => Coc.nvim
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" Use tab for trigger completion with characters ahead and navigate.
|
|
|
|
" NOTE: Use command ':verbose imap <tab>' to make sure tab is not mapped by
|
|
|
|
" other plugin before putting this into your config.
|
2022-08-11 04:35:49 -04:00
|
|
|
inoremap <silent><expr> <TAB>
|
|
|
|
\ coc#pum#visible() ? coc#pum#next(1):
|
|
|
|
\ CheckBackspace() ? "\<Tab>" :
|
|
|
|
\ coc#refresh()
|
|
|
|
inoremap <expr><S-TAB> coc#pum#visible() ? coc#pum#prev(1) : "\<C-h>"
|
2022-05-20 05:05:00 -04:00
|
|
|
|
2022-08-11 04:35:49 -04:00
|
|
|
" Make <CR> to accept selected completion item or notify coc.nvim to format
|
|
|
|
" <C-g>u breaks current undo, please make your own choice.
|
|
|
|
inoremap <silent><expr> <CR> coc#pum#visible() ? coc#pum#confirm()
|
|
|
|
\: "\<C-g>u\<CR>\<cr>=coc#on_enter()\<CR>"
|
2022-05-20 05:05:00 -04:00
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" => Vim-autoformat
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
let g:python3_host_prog="/usr/bin/python3"
|
2022-06-17 02:39:48 -04:00
|
|
|
autocmd BufWrite * :Autoformat
|
2022-05-27 22:39:46 -04:00
|
|
|
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" => Rainbow Parentheses
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
2022-08-10 23:57:20 -04:00
|
|
|
let g:rainbow_active = 1
|