forked from acornejo/dotfiles
-
Notifications
You must be signed in to change notification settings - Fork 0
/
vimrc.00plugins
268 lines (251 loc) · 8.35 KB
/
vimrc.00plugins
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
if ! filereadable(expand("$HOME/.vim/autoload/plug.vim"))
echo "Must install plug.vim to handle plugins."
echo ""
echo "curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim"
finish
endif
"************************************
" Plugin settings
"************************************
let g:netrw_list_hide = '\(^\|\s\s\)\zs\.\S\+' " Hide .* files
let g:netrw_browsex_viewer='open' " Open files with viewer
let g:netrw_fast_browse=2 " Use fast browsing
let g:netrw_liststyle=1 " Display file details in browser
let g:netrw_hide=1 " show not-hidden files
let g:python_failquietly=1 " Dont complain if there is no python
let g:buftabs_marker_start="" " marker around active buftab
let g:buftabs_marker_end="" " marker around active buftab
let g:buftabs_separator=":" " marker around active buftab
let g:buftabs_marker_modified="+" " Marker for modified buftabs
let g:buftabs_only_basename=1 " Show short name in buftabs
let g:buftabs_in_statusline=1 " Show buftabs in status line
let g:buftabs_inactive_highlight_group="StatusLine" " Color for inactive tabs
let g:buftabs_active_highlight_group="Title" " Color for active tabs
let g:yankring_history_file = ".vim_yankring"
let g:yankring_min_element_length = 2
let g:yankring_manage_numbered_reg = 1
let g:ycm_confirm_extra_conf = 0
let g:ycm_autoclose_preview_window_after_completion = 1
let g:ycm_autoclose_preview_window_after_insertion = 1
let g:ycm_add_preview_to_completeopt = 1
let g:ycm_always_populate_location_list = 1
let g:UltiSnipsListSnippets="<c-k>"
let g:UltiSnipsExpandTrigger="<c-j>"
let g:UltiSnipsJumpForwardTrigger="<c-j>"
let g:UltiSnipsJumpBackwardTrigger="<c-k>"
let g:xmledit_enable_html = 1
let g:sparkupExecuteMapping="<c-i>"
let g:airline_powerline_fonts = 0
" let g:airline#extensions#tabline#enabled = 1 " Enable bufline
let g:airline_left_sep = ''
let g:airline_right_sep = ''
let g:syntastic_html_tidy_ignore_errors=['trimming empty', 'lacks "alt" attribute', 'lacks "src" attribute']
let g:syntastic_check_on_open = 0
let g:syntastic_check_on_wq = 0
let g:syntastic_mode_map = {"mode": "passive" }
let g:syntastic_cpp_config_file = '.vim_syntax'
let g:markdown_fenced_languages = ['html', 'python', 'bash=sh', 'javascript', 'cpp']
let g:signify_vcs_list = [ 'git' ]
let g:rsi_no_meta = 1
let g:EasyClipShareYanks = 1
let g:EasyClipEnableBlackHoleRedirect = 0
let g:tcommentMapLeader2 = '' " Disable leader key maps
let g:notes_unicode_enabled = 0
let g:GPGPreferArmor = 1
let g:GPGPreferSign = 1
let g:scratch_no_mappings = 1
let g:scratch_persistence_file = expand("$HOME/.vim_scratch")
let g:scratch_horizontal = 0
let g:scratch_top = 0
let s:python_ver = 0
silent! python import sys, vim;
\ vim.command("let s:python_ver="+"".join(map(str,sys.version_info[0:3])))
call plug#begin('~/.vim/plugged')
" =========================================================
" Colorschemes
" =========================================================
" solarized
Plug 'altercation/vim-colors-solarized'
" molokai
Plug 'tomasr/molokai'
" =========================================================
" UI improvements
" =========================================================
" mark changed lines in git
Plug 'airblade/vim-gitgutter'
" syntax checker
Plug 'scrooloose/syntastic'
" nice status line
Plug 'itchyny/lightline.vim'
" Mark display/jump improvements (whitespace problems on GV)
Plug 'acornejo/vim-signature'
" =========================================================
" Filetype support
" =========================================================
" Language support
Plug 'sheerun/vim-polyglot'
" CSV
Plug 'chrisbra/csv.vim', {'for': 'csv'}
" XML
Plug 'sukima/xmledit'
" Latex
Plug 'acornejo/vim-texhelpers', {'for': 'tex'}
" quick html generation
Plug 'rstacruz/sparkup', {'rtp': 'vim/'}
" gpg decryption
if version >= 702
Plug 'jamessan/vim-gnupg'
endif
" =========================================================
" Editor motions
" =========================================================
" cx mapping for exchange
Plug 'tommcdo/vim-exchange'
" sensible target motions
Plug 'wellle/targets.vim'
" custom textobjects
Plug 'kana/vim-textobj-user'
" insert closing bracket, paren, etc
Plug 'jiangmiao/auto-pairs'
" align blocks of things
Plug 'junegunn/vim-easy-align'
" =========================================================
" TPOPE goodness
" =========================================================
" tmux integration
Plug 'tpope/vim-tbone'
" git integration
Plug 'tpope/vim-fugitive'
" useful mappings
Plug 'tpope/vim-unimpaired'
" surround text with anything
Plug 'tpope/vim-surround'
" readline bindings for vim
Plug 'tpope/vim-rsi'
" unix wrapper utilities
Plug 'tpope/vim-eunuch'
" repeat action for scripts
Plug 'tpope/vim-repeat'
" For autocorrect
Plug 'tpope/vim-abolish'
" (un)comment blocks
Plug 'tpope/vim-commentary'
" =========================================================
" Misc Productivity
" =========================================================
" fzf integration
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': 'yes \| ./install' }
Plug 'junegunn/fzf.vim'
" git browser
Plug 'junegunn/gv.vim'
" ack/ag integration
Plug 'mileszs/ack.vim'
" find and switch to project root
Plug 'airblade/vim-rooter'
" tmux integration
Plug 'benmills/vimux'
" snippets
if version >= 704 && s:python_ver >= 260
Plug 'SirVer/ultisnips'
Plug 'honza/vim-snippets'
endif
" scratch buffer
Plug 'mtth/scratch.vim'
" close all but this buffer
Plug 'duff/vim-bufonly'
" netrw replacement
Plug 'justinmk/vim-dirvish'
if version >= 703 && s:python_ver >= 260
" highlight closing tag
Plug 'Valloric/MatchTagAlways'
endif
" search and replace
Plug 'gabesoft/vim-ags'
" C/C++/Javascript completion
if !isdirectory('/usr/share/vim/google')
if version > 703 || (version >= 703 && has('patch584'))
Plug 'Valloric/YouCompleteMe', { 'do': './install.sh --clang-completer' , 'on': [] }
command! YcmEnable call plug#load('YouCompleteMe') | call youcompleteme#Enable()
endif
endif
" =========================================================
" Disabled
" =========================================================
" Hex editor
" Plug 'vim-scripts/hexman.vim'
" Javascript completion (with youcompleteme)
" Plug 'marijnh/tern_for_vim'
" Buffer list in statusbar
" Plug 'bling/vim-bufferline'
" For local vimrc project files
" Plug 'MarcWeber/vim-addon-local-vimrc'
" quick open
" Plug 'kien/ctrlp.vim'
" base16 color scheme
" Plug 'chriskempson/base16-vim'
" navigating everything (files,buffers,ack/ag)
" if version >= 703
" Plug 'Shougo/unite.vim'
" endif
" add MRU source to unite
" if version >= 703
" Plug 'Shougo/neomru.vim'
" endif
" add project source to unite
" if version >= 703
" Plug 'acornejo/vim-unite-projects'
" endif
" asynchronous execution in vim
" if version >= 703
" Plug 'Shougo/vimproc.vim', { 'do': 'make' }
" endif
" mark changed lines in vcs
" if version >= 703
" Plug 'mhinz/vim-signify'
" endif
" Yank register management
" Plug 'vim-scripts/YankRing.vim'
" nice status bar
" Plug 'bling/vim-airline'
" " Search for visual selection
" Plug 'bronson/vim-visual-star-search'"
" " multiple cursors
" Plug 'terryma/vim-multiple-cursors'
" " quick jumping around file
" Plug 'Lokaltog/vim-easymotion'
" " sane vim clipboard behavior
" Plug 'svermeulen/vim-easyclip'
" " gitk emulation
" Plug 'gregsexton/gitv', {'on': ['Gitv']}
" " camel case ,w ,e ,b motions
" Plug 'bkad/CamelCaseMotion'
" " netrw improvements
" Plug 'tpope/vim-vinegar'
" " (un)comment blocks
" if version >= 702
" Plug 'tomtom/tcomment_vim'
" endif
call plug#end()
" Load matchit.vim, but only if the user hasn't installed a newer version.
if !exists('g:loaded_matchit') && findfile('plugin/matchit.vim', &rtp) ==# ''
runtime! macros/matchit.vim
endif
" Prompt for vmux command
nnoremap <expr> <leader>v exists("g:VimuxRunnerIndex") ? ":VimuxRunLastCommand<CR>" : ":VimuxPromptCommand<CR>"
if has_key(g:plugs, 'vim-easy-align')
" Start interactive EasyAlign in visual mode (e.g. vipga)
xmap ga <Plug>(EasyAlign)
" Start interactive EasyAlign for a motion/text object ()"
nmap ga <Plug>(EasyAlign)
endif
if has_key(g:plugs, 'vim-textobj-user')
call textobj#user#plugin('camelcase', {
\ 'camel': {
\ 'pattern': '_\{0,1\}[A-Za-z][a-z0-9]\+',
\ 'select': ['ac', 'ic']
\ }
\})
endif
if !empty($NOCD)
let g:rooter_manual_only = 1
endif