Mercurial > dotfiles.old
annotate vimrc @ 224:30eb5cded521
Add parenthesis matching function
author | zegervdv <zegervdv@me.com> |
---|---|
date | Tue, 13 Jan 2015 18:57:47 +0100 |
parents | ed108055146c |
children | 1d9bec72b9b3 |
rev | line source |
---|---|
27 | 1 " vim:fdm=marker |
187
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
2 " Vim-Plug {{{ |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
3 let g:plug_window='topleft new' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
4 call plug#begin('~/.vim/plugged') |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
5 " General Plugins |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
6 Plug 'tpope/vim-sensible' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
7 Plug 'tpope/vim-abolish' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
8 Plug 'tpope/vim-fugitive' |
215
ffe47a1b75f8
Add Scratch plugin and lazyload some plugins
zegervdv <zegervdv@me.com>
parents:
214
diff
changeset
|
9 Plug 'godlygeek/tabular', { 'on' : 'Tabularize' } |
187
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
10 Plug 'tpope/vim-endwise' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
11 Plug 'tpope/vim-surround' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
12 Plug 'jiangmiao/auto-pairs' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
13 Plug 'kshenoy/vim-signature' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
14 Plug 'tpope/vim-repeat' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
15 Plug 't9md/vim-smalls' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
16 Plug 'xolox/vim-session' |
215
ffe47a1b75f8
Add Scratch plugin and lazyload some plugins
zegervdv <zegervdv@me.com>
parents:
214
diff
changeset
|
17 Plug 'tpope/vim-eunuch', { 'on' : ['Remove', 'Unlink', 'Move', 'Rename', 'Mkdir', 'Chmod', 'Find', 'Locate', 'SudoEdit', 'SudoWrite']} |
187
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
18 Plug 'scrooloose/syntastic' |
200
a91590ba2b32
Replace tcomment with commentary
zegervdv <zegervdv@me.com>
parents:
196
diff
changeset
|
19 Plug 'tpope/vim-commentary' |
208 | 20 Plug 'wellle/targets.vim' |
215
ffe47a1b75f8
Add Scratch plugin and lazyload some plugins
zegervdv <zegervdv@me.com>
parents:
214
diff
changeset
|
21 Plug 'mtth/scratch.vim' |
218 | 22 Plug 'mrmargolis/dogmatic.vim' |
221 | 23 Plug 'xolox/vim-misc' |
24 Plug 'xolox/vim-notes' | |
215
ffe47a1b75f8
Add Scratch plugin and lazyload some plugins
zegervdv <zegervdv@me.com>
parents:
214
diff
changeset
|
25 |
187
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
26 " Undo |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
27 Plug 'sjl/gundo.vim', { 'on': 'GundoToggle' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
28 |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
29 " Tmux |
189
925861e874ec
Add vim-tmux-navigator for seamless navigation
zegervdv <zegervdv@me.com>
parents:
188
diff
changeset
|
30 Plug 'christoomey/vim-tmux-navigator' |
215
ffe47a1b75f8
Add Scratch plugin and lazyload some plugins
zegervdv <zegervdv@me.com>
parents:
214
diff
changeset
|
31 Plug 'tpope/vim-dispatch' |
187
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
32 |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
33 " Search and Complete |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
34 Plug 'Shougo/neocomplete' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
35 Plug 'Shougo/neosnippet' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
36 Plug 'Shougo/neosnippet-snippets' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
37 Plug 'Shougo/vimproc', { 'do': 'make' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
38 Plug 'Shougo/unite.vim' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
39 Plug 'Shougo/vimfiler.vim' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
40 Plug 'Shougo/unite-outline' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
41 Plug 'tsukkee/unite-tag' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
42 |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
43 " Ruby |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
44 Plug 'tpope/vim-rails', { 'for': 'ruby' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
45 Plug 'vim-ruby/vim-ruby', { 'for': 'ruby' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
46 Plug 'tpope/vim-bundler', { 'for': 'ruby' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
47 Plug 'tpope/vim-rake', { 'for': 'ruby' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
48 Plug 'slim-template/vim-slim', { 'for': 'ruby' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
49 Plug 'duwanis/tomdoc.vim', { 'for': 'ruby' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
50 |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
51 " Markdown |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
52 Plug 'tpope/vim-markdown', { 'for': 'markdown' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
53 |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
54 " C |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
55 Plug 'vim-scripts/a.vim', { 'for': 'c' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
56 Plug 'osyo-manga/vim-reunions', { 'for': 'c' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
57 Plug 'osyo-manga/vim-marching', { 'for': 'c' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
58 |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
59 " Coffeescript |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
60 Plug 'kchmck/vim-coffee-script', { 'for': 'coffeescript' } |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
61 |
201
6de3103d47f4
Use wildignore in unite file_rec/async
zegervdv <zegervdv@me.com>
parents:
200
diff
changeset
|
62 " Git |
6de3103d47f4
Use wildignore in unite file_rec/async
zegervdv <zegervdv@me.com>
parents:
200
diff
changeset
|
63 Plug 'tpope/vim-git' |
6de3103d47f4
Use wildignore in unite file_rec/async
zegervdv <zegervdv@me.com>
parents:
200
diff
changeset
|
64 |
187
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
65 " Dependencies |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
66 Plug 'MarcWeber/vim-addon-mw-utils' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
67 Plug 'tomtom/tlib_vim' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
68 Plug 'xolox/vim-misc' |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
69 |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
70 |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
71 call plug#end() |
e3639166a8ab
Remove pathogen in favour of Vim-plug
zegervdv <zegervdv@me.com>
parents:
183
diff
changeset
|
72 " }}} |
27 | 73 " General Settings {{{ |
0 | 74 set nocompatible |
75 | |
76 set backspace=2 | |
77 set autowrite | |
78 | |
79 set vb | |
80 set guioptions-=r | |
81 set guioptions-=l | |
82 set guioptions-=R | |
83 set guioptions-=L | |
84 | |
85 syntax on | |
86 set expandtab | |
87 set number | |
88 set ruler | |
89 set nocursorline | |
90 set showmatch | |
91 set title | |
92 set wrap | |
93 set wrapmargin=2 | |
94 set linebreak | |
147 | 95 set breakindent |
0 | 96 set lbr |
97 set tabstop=2 shiftwidth=2 | |
193 | 98 |
99 " Layout | |
100 set t_Co=256 | |
191 | 101 set background=dark |
102 color Tomorrow-Night | |
0 | 103 set guifont=Inconsolata\ for\ Powerline:h12 |
193 | 104 " Make background color same as terminal ("transparent") |
105 " hi Normal ctermbg=none | |
106 | |
0 | 107 set autowrite |
108 set hidden | |
109 set hlsearch | |
110 set incsearch | |
111 set ignorecase | |
32
2da8d8daa033
Add remaps to vim and aliases to zsh
zegervdv <zegervdv@me.com>
parents:
29
diff
changeset
|
112 set gdefault |
0 | 113 set smartcase |
114 set smartindent | |
115 set autoindent | |
116 set scrolloff=4 | |
117 set textwidth=80 | |
118 | |
119 set history=100 | |
120 set wildmenu | |
19 | 121 set wildmode=full |
79 | 122 set ttyfast |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
123 set lazyredraw |
0 | 124 |
174 | 125 set ttimeoutlen=10 |
126 " Set the timeout to a minimum | |
0 | 127 set diffopt+=iwhite |
128 | |
79 | 129 set tags=.git/tags |
130 | |
0 | 131 set formatoptions= |
132 set formatoptions+=c " Format comments | |
133 set formatoptions+=r " Continue comments by default | |
134 set formatoptions+=o " Make comment when using o or O from comment line | |
135 set formatoptions+=q " Format comments with gq | |
136 set formatoptions+=n " Recognize numbered lists | |
137 set formatoptions+=2 " Use indent from 2nd line of a paragraph | |
138 set formatoptions+=l " Don't break lines that are already long | |
139 set formatoptions+=1 " Break before 1-letter words | |
140 | |
214 | 141 " Enable cursorline |
142 set cursorline | |
143 autocmd WinEnter * setlocal cursorline | |
144 autocmd WinLeave * setlocal nocursorline | |
182 | 145 |
146 set sessionoptions-=options | |
147 | |
92 | 148 set complete+=kspell |
149 | |
0 | 150 set splitright |
151 set virtualedit=block | |
152 set conceallevel=0 | |
153 | |
154 set cryptmethod=blowfish | |
155 | |
156 filetype plugin indent on | |
157 autocmd FileType ruby set tabstop=2|set shiftwidth=2 | |
158 | |
107
508b8bc6ffd5
Improve mapping for split windows
zegervdv <zegervdv@me.com>
parents:
104
diff
changeset
|
159 set pastetoggle=<F2> |
0 | 160 set clipboard=unnamed |
161 | |
32
2da8d8daa033
Add remaps to vim and aliases to zsh
zegervdv <zegervdv@me.com>
parents:
29
diff
changeset
|
162 set undofile |
16 | 163 set viminfo='10,\"100,:20,%,n~/.viminfo |
188 | 164 set backupdir=/tmp//,. |
165 set directory=/tmp//,. | |
166 if v:version >= 703 | |
167 set undodir=/tmp//,. | |
168 endif | |
201
6de3103d47f4
Use wildignore in unite file_rec/async
zegervdv <zegervdv@me.com>
parents:
200
diff
changeset
|
169 set wildignore+=*/tmp/*,*.so,*.swp,*.zip,*.o,*.bin,*.elf,*.hex,*.eps,.git/** |
80 | 170 |
154 | 171 " Sentences are ended with double spaces |
172 set cpo+=J | |
173 | |
218 | 174 |
32
2da8d8daa033
Add remaps to vim and aliases to zsh
zegervdv <zegervdv@me.com>
parents:
29
diff
changeset
|
175 " set list |
91 | 176 " set listchars=tab:▸\ ,eol:¬ |
27 | 177 " }}} |
195 | 178 " Status line {{{ |
179 function! Status() | |
180 let statusline = '' | |
200
a91590ba2b32
Replace tcomment with commentary
zegervdv <zegervdv@me.com>
parents:
196
diff
changeset
|
181 let statusline .= "%n\ " |
195 | 182 let statusline .= "%f" |
183 let statusline .= "%1*%m%0*" | |
184 let statusline .= "\ [%{strlen(&ft)?&ft:'unknown'}]" | |
185 let statusline .= "%=" | |
186 let statusline .= "%P\ " | |
187 return statusline | |
188 endfunction | |
200
a91590ba2b32
Replace tcomment with commentary
zegervdv <zegervdv@me.com>
parents:
196
diff
changeset
|
189 set laststatus=2 |
195 | 190 set statusline=%!Status() |
191 " }}} | |
27 | 192 " Custom remaps and tricks {{{ |
101 | 193 " Enable spelling only for latex and text |
194 au BufNewFile,BufRead,BufEnter *.tex setlocal spell spelllang=en_gb | |
195 au BufNewFile,BufRead,BufEnter *.tex setlocal textwidth=0 | |
196 au BufNewFile,BufRead,BufEnter *.txt setlocal spell spelllang=en_gb | |
197 au BufNewFile,BufRead,BufEnter *.txt setlocal textwidth=0 | |
190 | 198 au FileType gitcommit setlocal spell spelllang=en_gb |
222 | 199 set thesaurus+=~/.vim/thesaurus/mthesaur.txt |
101 | 200 |
171 | 201 autocmd BufRead *_spec.rb set filetype=rspec |
202 | |
203 | 203 " Fix comments for matlab |
204 autocmd FileType matlab setlocal commentstring=\%\ %s | |
205 | |
140
e037d9b797eb
Fix colors and clipboad in vim and tmux
zegervdv <zegervdv@me.com>
parents:
135
diff
changeset
|
206 highlight SpellBad ctermbg=256 ctermfg=210 |
e037d9b797eb
Fix colors and clipboad in vim and tmux
zegervdv <zegervdv@me.com>
parents:
135
diff
changeset
|
207 highlight SpellLocal ctermbg=240 ctermfg=010 |
216
d216f4d5508e
Setup latex compiler for dispatch
zegervdv <zegervdv@me.com>
parents:
215
diff
changeset
|
208 highlight SpellCap ctermbg=256 ctermfg=211 |
101 | 209 |
16 | 210 " When editing a file, always jump to the last known cursor position. |
211 " Don't do it for commit messages, when the position is invalid, or when | |
212 " inside an event handler (happens when dropping a file on gvim). | |
213 autocmd BufReadPost * | |
146
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
214 \ if &ft != 'gitcommit' && line("'\"") > 0 && line("'\"") <= line("$") | |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
215 \ exe "normal g`\"" | |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
216 \ endif |
0 | 217 |
168 | 218 " Set leader to space |
174 | 219 " let mapleader = " " |
220 map <space> <leader> | |
40 | 221 |
175
a7247b4a7e69
Fix issue with mapping where vim would hang on unmapped <leader> keys
zegervdv <zegervdv@me.com>
parents:
174
diff
changeset
|
222 " Fix weird error where space n hangs vim with search |
a7247b4a7e69
Fix issue with mapping where vim would hang on unmapped <leader> keys
zegervdv <zegervdv@me.com>
parents:
174
diff
changeset
|
223 noremap <space>n <nop> |
a7247b4a7e69
Fix issue with mapping where vim would hang on unmapped <leader> keys
zegervdv <zegervdv@me.com>
parents:
174
diff
changeset
|
224 |
0 | 225 " See long lines as line breaks |
226 map j gj | |
227 map k gk | |
228 | |
229 " remap tag-search to better place | |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
230 " nmap <C-$> <C-]> |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
231 function! JumpToTagInSplit() |
146
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
232 execute "normal! \<c-w>v\<c-]>mzzMzvzz15\<c-e>" |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
233 execute "keepjumps normal! `z" |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
234 Pulse |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
235 endfunction |
94
c31e63aba1dd
Use better colors for matching parentheses
zegervdv <zegervdv@me.com>
parents:
93
diff
changeset
|
236 nnoremap <C-$> :silent! call JumpToTagInSplit()<CR> |
0 | 237 |
238 " Jump to end of line in insert mode | |
33 | 239 inoremap <C-a> <C-o>I |
0 | 240 inoremap <C-e> <C-o>A |
241 | |
33 | 242 nnoremap <C-a> ^ |
243 nnoremap <C-e> $ | |
244 | |
92 | 245 nnoremap <C-s> <C-e> |
246 | |
33 | 247 nnoremap + <C-a> |
248 | |
205 | 249 " Move while in insert mode |
250 inoremap <C-f> <right> | |
0 | 251 |
4
050d4d8c6796
Vim: use double space to alternate files
zegervdv <zegervdv@me.com>
parents:
3
diff
changeset
|
252 " Switch between the last two files |
175
a7247b4a7e69
Fix issue with mapping where vim would hang on unmapped <leader> keys
zegervdv <zegervdv@me.com>
parents:
174
diff
changeset
|
253 nnoremap <leader><leader> <C-^> |
146
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
254 " Move between buffers |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
255 nnoremap gb :bnext<CR> |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
256 nnoremap gB :bprevious<CR> |
4
050d4d8c6796
Vim: use double space to alternate files
zegervdv <zegervdv@me.com>
parents:
3
diff
changeset
|
257 |
0 | 258 " Very Magic search patterns |
259 nmap / /\v | |
260 cmap s/ s/\v | |
261 | |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
262 " Keep search matches in the middle of the window. |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
263 nnoremap n nzzzv |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
264 nnoremap N Nzzzv |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
265 |
40 | 266 " Clear highlight |
177
ca5bd373473e
Add function to search for word under cursor with Ag
zegervdv <zegervdv@me.com>
parents:
176
diff
changeset
|
267 nnoremap <silent><leader>l :noh<CR> |
40 | 268 |
0 | 269 inoremap £ \ |
270 | |
32
2da8d8daa033
Add remaps to vim and aliases to zsh
zegervdv <zegervdv@me.com>
parents:
29
diff
changeset
|
271 nnoremap <TAB> % |
2da8d8daa033
Add remaps to vim and aliases to zsh
zegervdv <zegervdv@me.com>
parents:
29
diff
changeset
|
272 vnoremap <TAB> % |
0 | 273 |
107
508b8bc6ffd5
Improve mapping for split windows
zegervdv <zegervdv@me.com>
parents:
104
diff
changeset
|
274 " Move between splits |
189
925861e874ec
Add vim-tmux-navigator for seamless navigation
zegervdv <zegervdv@me.com>
parents:
188
diff
changeset
|
275 " map <C-j> <C-w>j |
925861e874ec
Add vim-tmux-navigator for seamless navigation
zegervdv <zegervdv@me.com>
parents:
188
diff
changeset
|
276 " map <C-k> <C-w>k |
925861e874ec
Add vim-tmux-navigator for seamless navigation
zegervdv <zegervdv@me.com>
parents:
188
diff
changeset
|
277 " map <C-l> <C-w>l |
925861e874ec
Add vim-tmux-navigator for seamless navigation
zegervdv <zegervdv@me.com>
parents:
188
diff
changeset
|
278 " map <C-h> <C-w>h |
34
3ed98613040a
Add mapping to switch between tabs in vim
zegervdv <zegervdv@me.com>
parents:
33
diff
changeset
|
279 |
33 | 280 " highlight last inserted text |
281 nnoremap gV `[v`] | |
282 | |
283 " Briefly change colour of last highlight | |
94
c31e63aba1dd
Use better colors for matching parentheses
zegervdv <zegervdv@me.com>
parents:
93
diff
changeset
|
284 " nnoremap <silent> n n:call HLNext(0.4)<cr> |
c31e63aba1dd
Use better colors for matching parentheses
zegervdv <zegervdv@me.com>
parents:
93
diff
changeset
|
285 " nnoremap <silent> N N:call HLNext(0.4)<cr> |
0 | 286 |
287 function! HLNext (blinktime) | |
146
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
288 highlight WhiteOnRed ctermfg=white ctermbg=red guifg=white guibg=red |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
289 let [bufnum, lnum, col, off] = getpos('.') |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
290 let matchlen = strlen(matchstr(strpart(getline('.'),col-1),@/)) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
291 let target_pat = '\c\%#'.@/ |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
292 let ring = matchadd('WhiteOnRed', target_pat, 101) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
293 redraw |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
294 exec 'sleep ' . float2nr(a:blinktime * 1000) . 'm' |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
295 call matchdelete(ring) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
296 redraw |
0 | 297 endfunction |
298 | |
224
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
299 " This is adapted from |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
300 " http://vim.wikia.com/wiki/Windo_and_restore_current_window |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
301 function! KeepWin(command) |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
302 let currwin=winnr() |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
303 execute a:command |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
304 execute currwin . 'wincmd w' |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
305 endfunction |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
306 |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
307 augroup insertMatch |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
308 au! |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
309 au VimEnter * NoMatchParen |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
310 au InsertEnter * call KeepWin("DoMatchParen") |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
311 au InsertLeave * call KeepWin("NoMatchParen") |
30eb5cded521
Add parenthesis matching function
zegervdv <zegervdv@me.com>
parents:
223
diff
changeset
|
312 augroup END |
94
c31e63aba1dd
Use better colors for matching parentheses
zegervdv <zegervdv@me.com>
parents:
93
diff
changeset
|
313 |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
314 " Highlight VCS conflict markers |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
315 match ErrorMsg '^\(<\|=\|>\)\{7\}\([^=].\+\)\?$' |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
316 |
0 | 317 " Swap v and CTRL-V |
318 nnoremap v <C-V> | |
319 nnoremap <C-V> v | |
320 | |
321 vnoremap v <C-V> | |
322 vnoremap <C-V> v | |
323 | |
324 " Use backspace as delete in visual mode | |
325 vmap <BS> x | |
326 | |
327 " Keep selection when shifting | |
328 vmap <expr> > KeepVisualSelection(">") | |
329 vmap <expr> < KeepVisualSelection("<") | |
330 | |
331 function! KeepVisualSelection(cmd) | |
146
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
332 set nosmartindent |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
333 if mode() ==# "V" |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
334 return a:cmd . ":set smartindent\<CR>gv" |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
335 else |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
336 return a:cmd . ":set smartindent\<CR>" |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
337 endif |
0 | 338 endfunction |
339 | |
42 | 340 au FileType c setl foldmethod=syntax |
341 | |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
342 au VimResized * exe "normal! \<c-w>=" |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
343 |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
344 cnoremap <c-a> <home> |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
345 cnoremap <c-e> <end> |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
346 |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
347 " Swap backticks and quotes |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
348 nnoremap ` ' |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
349 nnoremap ' ` |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
350 |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
351 " Note that this will overwrite the contents of the z mark. I never use it, but |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
352 " if you do you'll probably want to use another mark. |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
353 inoremap <C-u> <esc>mzgUiw`za |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
354 |
188 | 355 nnoremap <leader>ev :split $MYVIMRC<cr> |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
356 |
178
899ac4d147ef
Add mapping to move visually selected lines
zegervdv <zegervdv@me.com>
parents:
177
diff
changeset
|
357 " Move lines from visual selection |
899ac4d147ef
Add mapping to move visually selected lines
zegervdv <zegervdv@me.com>
parents:
177
diff
changeset
|
358 vnoremap <S-j> :m '>+1<CR>gv=gv |
899ac4d147ef
Add mapping to move visually selected lines
zegervdv <zegervdv@me.com>
parents:
177
diff
changeset
|
359 vnoremap <S-k> :m '<-2<CR>gv=gv |
899ac4d147ef
Add mapping to move visually selected lines
zegervdv <zegervdv@me.com>
parents:
177
diff
changeset
|
360 |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
361 function! MyFoldText() " {{{ |
146
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
362 let line = getline(v:foldstart) |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
363 |
146
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
364 let nucolwidth = &fdc + &number * &numberwidth |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
365 let windowwidth = winwidth(0) - nucolwidth - 3 |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
366 let foldedlinecount = v:foldend - v:foldstart |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
367 |
146
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
368 " expand tabs into spaces |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
369 let onetab = strpart(' ', 0, &tabstop) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
370 let line = substitute(line, '\t', onetab, 'g') |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
371 |
146
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
372 let line = strpart(line, 0, windowwidth - 2 -len(foldedlinecount)) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
373 let fillcharcount = windowwidth - len(line) - len(foldedlinecount) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
374 return line . '…' . repeat(" ",fillcharcount) . foldedlinecount . '…' . ' ' |
85
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
375 endfunction " }}} |
8a5464ec3c29
Add vim mappings from https://bitbucket.org/sjl/dotfiles
zegervdv <zegervdv@me.com>
parents:
82
diff
changeset
|
376 set foldtext=MyFoldText() |
42 | 377 |
122 | 378 " VHDL ctags |
379 let g:tlist_vhdl_settings = 'vhdl;d:package declarations;b:package bodies;e:entities;a:architecture specifications;t:type declarations;p:processes;f:functions;r:procedures' | |
127 | 380 " }}} |
101 | 381 " Latex {{{ |
382 " Open pdf | |
216
d216f4d5508e
Setup latex compiler for dispatch
zegervdv <zegervdv@me.com>
parents:
215
diff
changeset
|
383 nnoremap <leader>v :!open -a /Applications/TeX/TeXShop.app %:r.pdf<CR><CR> |
d216f4d5508e
Setup latex compiler for dispatch
zegervdv <zegervdv@me.com>
parents:
215
diff
changeset
|
384 " Set compiler to rubber |
219
a7355c906b3e
Change to latexmk for compiling latex
zegervdv <zegervdv@me.com>
parents:
218
diff
changeset
|
385 autocmd FileType tex setlocal makeprg=latexmk\ -pdf\ %:r |
101 | 386 " }}} |
93
8278ded5eb8c
Replace ctrlp and yankring with unite
zegervdv <zegervdv@me.com>
parents:
92
diff
changeset
|
387 " Unite {{{ |
171 | 388 call unite#filters#matcher_default#use(['matcher_fuzzy']) |
146
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
389 call unite#filters#sorter_default#use(['sorter_rank']) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
390 " call unite#set_profile('files', 'smartcase', 1) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
391 call unite#custom#profile('files', 'context.smartcase', 1) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
392 call unite#custom#source('line,outline', 'matchers', 'matcher_fuzzy') |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
393 call unite#custom#source( 'buffer', 'converters', ['converter_file_directory']) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
394 " sort file results by length |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
395 call unite#custom#source('file', 'sorters', 'sorter_length') |
172 | 396 call unite#custom#source('file_rec/async', 'converters', []) |
397 call unite#custom#source('file_rec/async', 'sorters', []) | |
201
6de3103d47f4
Use wildignore in unite file_rec/async
zegervdv <zegervdv@me.com>
parents:
200
diff
changeset
|
398 call unite#custom#source('file_rec/async', 'ignore_globs', split(&wildignore, ',')) |
6de3103d47f4
Use wildignore in unite file_rec/async
zegervdv <zegervdv@me.com>
parents:
200
diff
changeset
|
399 call unite#custom#source('file_rec/async', 'max_candidates', 50) |
146
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
400 let g:unite_enable_start_insert=0 |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
401 let g:unite_source_history_yank_enable=1 |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
402 let g:unite_source_rec_max_cache_files=3000 |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
403 let g:unite_prompt='» ' |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
404 if executable('ag') |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
405 let g:unite_source_grep_command = 'ag' |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
406 let g:unite_source_grep_default_opts = |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
407 \ '-i --line-numbers --nocolor --nogroup --hidden --ignore ' . |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
408 \ '''.hg'' --ignore ''.svn'' --ignore ''.git'' --ignore ''.bzr''' |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
409 let g:unite_source_grep_recursive_opt = '' |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
410 let g:unite_source_rec_async_command = 'ag --nocolor --nogroup --hidden -g ""' |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
411 elseif executable('ack') |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
412 let g:unite_source_grep_command='ack' |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
413 let g:unite_source_grep_default_opts='--no-heading --no-color -C4' |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
414 let g:unite_source_grep_recursive_opt='' |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
415 endif |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
416 function! s:unite_settings() |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
417 nmap <buffer> Q <plug>(unite_exit) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
418 nmap <buffer> <esc> <plug>(unite_exit) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
419 imap <buffer> <C-j> <Plug>(unite_select_next_line) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
420 imap <buffer> <C-k> <Plug>(unite_select_previous_line) |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
421 endfunction |
3333853b8bbe
Use airline - tabline for buffer management
zegervdv <zegervdv@me.com>
parents:
144
diff
changeset
|
422 autocmd FileType unite call s:unite_settings() |
93
8278ded5eb8c
Replace ctrlp and yankring with unite
zegervdv <zegervdv@me.com>
parents:
92
diff
changeset
|
423 |
203 | 424 nnoremap <silent> <leader>k :<C-u>Unite -auto-preview -buffer-name=recent file_mru<cr> |
168 | 425 nnoremap <silent> <leader>y :<C-u>Unite -buffer-name=yanks history/yank<cr> |
176 | 426 nnoremap <silent> <leader>f :<C-u>Unite -no-quit -buffer-name=search grep:.<cr> |
177
ca5bd373473e
Add function to search for word under cursor with Ag
zegervdv <zegervdv@me.com>
parents:
176
diff
changeset
|
427 nnoremap <silent> <leader>g :<C-u>Unite -no-quit -buffer-name=search grep:.<CR><C-r><C-w><CR> |
168 | 428 nnoremap <silent> <leader>o :<C-u>Unite outline<CR> |
429 nnoremap <silent> <leader>t :<C-u>Unite tag<CR> | |
171 | 430 nnoremap <silent> <C-p> :<C-u>Unite -start-insert buffer file_rec/async<CR> |
174 | 431 " nnoremap <silent> <leader>h :<C-u>Unite ssh://Hurricane/STM-Quadcopter/source<CR> |
432 " nnoremap <silent> <leader>i :<C-u>Unite ssh://imac-van-zeger.local/Documents<CR> | |
40 | 433 " }}} |
103 | 434 " Unite Build {{{ |
435 " TODO: Create builders eg Latex, Vagrant? | |
436 " }}} | |
98 | 437 " Vimfiler {{{ |
438 " Use vimfiler as default | |
439 let g:vimfiler_as_default_explorer = 1 | |
440 nnoremap <leader>e :VimFilerExplorer<CR> | |
109 | 441 let g:vimfiler_ignore_pattern = '\%(.o\|.bin\|.elf\|.un\~\|.swp\)$' |
98 | 442 " }}} |
40 | 443 " Cucumber {{{ |
168 | 444 " map <leader>f :call RunAllFeatures()<CR> |
445 " map <leader>k :call RunCurrentFeature()<CR> | |
40 | 446 " }}} |
447 " Markdown {{{ | |
0 | 448 let g:vim_markdown_folding_disabled=1 |
40 | 449 " }}} |
450 " Neo Complete {{{ | |
91 | 451 let g:neocomplete#enable_at_startup = 1 |
223 | 452 let g:neocomplete#enable_smart_case = 1 |
453 let g:neocomplete#force_overwrite_completefunc = 1 | |
91 | 454 let g:marching_enable_neocomplete = 1 |
102 | 455 let g:neocomplete#enable_fuzzy_completion = 1 |
27 | 456 |
91 | 457 inoremap <expr><s-CR> pumvisible() ? neocomplete#smart_close_popup()"\<CR>" : "\<CR>" |
458 inoremap <expr><C-g> neocomplete#undo_completion() | |
459 inoremap <expr><C-l> neocomplete#complete_common_string() | |
460 function! CleverCr() | |
461 if pumvisible() | |
462 if neosnippet#expandable() | |
463 let exp = "\<Plug>(neosnippet_expand)" | |
464 return exp . neocomplete#smart_close_popup() | |
465 else | |
466 return neocomplete#smart_close_popup() | |
467 endif | |
468 else | |
469 return "\<CR>" | |
470 endif | |
471 endfunction | |
160 | 472 " <CR> close popup and save indent or expand snippet |
473 imap <expr> <CR> CleverCr() | |
171 | 474 |
40 | 475 " }}} |
476 " Neo Snippets {{{ | |
0 | 477 imap <C-k> <Plug>(neosnippet_expand_or_jump) |
478 smap <C-k> <Plug>(neosnippet_expand_or_jump) | |
479 xmap <C-k> <Plug>(neosnippet_expand_target) | |
480 | |
23
4112c6eb9f47
Correct tab completion with snippets
zegervdv <zegervdv@me.com>
parents:
22
diff
changeset
|
481 " imap <expr><TAB> neosnippet#expandable_or_jumpable() ? |
4112c6eb9f47
Correct tab completion with snippets
zegervdv <zegervdv@me.com>
parents:
22
diff
changeset
|
482 " \ "\<Plug>(neosnippet_expand_or_jump)" |
4112c6eb9f47
Correct tab completion with snippets
zegervdv <zegervdv@me.com>
parents:
22
diff
changeset
|
483 " \: pumvisible() ? "\<C-n>" : "\<TAB>" |
4112c6eb9f47
Correct tab completion with snippets
zegervdv <zegervdv@me.com>
parents:
22
diff
changeset
|
484 " smap <expr><TAB> neosnippet#expandable_or_jumpable() ? |
4112c6eb9f47
Correct tab completion with snippets
zegervdv <zegervdv@me.com>
parents:
22
diff
changeset
|
485 " \ "\<Plug>(neosnippet_expand_or_jump)" |
4112c6eb9f47
Correct tab completion with snippets
zegervdv <zegervdv@me.com>
parents:
22
diff
changeset
|
486 " \: "\<TAB>" |
4112c6eb9f47
Correct tab completion with snippets
zegervdv <zegervdv@me.com>
parents:
22
diff
changeset
|
487 |
4112c6eb9f47
Correct tab completion with snippets
zegervdv <zegervdv@me.com>
parents:
22
diff
changeset
|
488 |
4112c6eb9f47
Correct tab completion with snippets
zegervdv <zegervdv@me.com>
parents:
22
diff
changeset
|
489 imap <expr><TAB> neosnippet#expandable() == 1 ? "\<Plug>(neosnippet_expand_or_jump)" : pumvisible() ? "\<C-n>" : "\<TAB>" |
4112c6eb9f47
Correct tab completion with snippets
zegervdv <zegervdv@me.com>
parents:
22
diff
changeset
|
490 imap <expr><C-k> neosnippet#expandable_or_jumpable() == 1 ? "\<Plug>(neosnippet_expand_or_jump)" : pumvisible() ? "\<C-n>" : "\<TAB>" |
4112c6eb9f47
Correct tab completion with snippets
zegervdv <zegervdv@me.com>
parents:
22
diff
changeset
|
491 smap <expr><TAB> neosnippet#expandable() == 1 ? "\<Plug>(neosnippet_expand_or_jump)" : pumvisible() ? "\<C-n>" : "\<TAB>" |
90 | 492 " let g:neocomplete#sources#omni#input_patterns.ruby = '[^. *\t]\.\w*\|\h\w*::' |
0 | 493 |
494 let g:neosnippet#snippets_directory='~/.vim/snippets' | |
40 | 495 " }}} |
496 " Tabular {{{ | |
0 | 497 inoremap <silent> <Bar> <Bar><Esc>:call <SID>align()<CR>a |
498 | |
499 function! s:align() | |
500 let p = '^\s*|\s.*\s|\s*$' | |
501 if exists(':Tabularize') && getline('.') =~# '^\s*|' && (getline(line('.')-1) =~# p || getline(line('.')+1) =~# p) | |
502 let column = strlen(substitute(getline('.')[0:col('.')],'[^|]','','g')) | |
503 let position = strlen(matchstr(getline('.')[0:col('.')],'.*|\s*\zs.*')) | |
504 Tabularize/|/l1 | |
505 normal! 0 | |
506 call search(repeat('[^|]*|',column).'\s\{-\}'.repeat('.',position),'ce',line('.')) | |
507 endif | |
508 endfunction | |
509 | |
510 " Align Migration files | |
511 vmap <c-a> :Tabularize /:/l1l0l0<CR> | |
512 | |
513 nmap <Leader>a= :Tabularize /=<CR> | |
514 vmap <Leader>a= :Tabularize /=<CR> | |
515 nmap <Leader>a=> :Tabularize /=><CR> | |
516 vmap <Leader>a=> :Tabularize /=><CR> | |
517 nmap <Leader>a: :Tabularize /:\zs/l0l1<CR> | |
518 vmap <Leader>a: :Tabularize /:\zs/l0l1<CR> | |
519 nmap <Leader>a, :Tabularize /,\zs/l0l1<CR> | |
520 vmap <Leader>a, :Tabularize /,\zs/l0l1<CR> | |
521 vmap <Leader>a- :Tabularize /-<CR> | |
40 | 522 " }}} |
523 " Tagbar {{{ | |
0 | 524 nmap <F8> :TagbarToggle<CR> |
40 | 525 " }}} |
190 | 526 " Syntastic {{{ |
527 let g:syntastic_check_on_open=1 | |
528 " }}} | |
40 | 529 " Gundo tree {{{ |
0 | 530 nnoremap <leader>u :GundoToggle<CR> |
40 | 531 " }}} |
532 " Smalls {{{ | |
211
499a3887f569
Remap smalls to <C-s> to use default s functionality
zegervdv <zegervdv@me.com>
parents:
209
diff
changeset
|
533 nmap <C-s> <Plug>(smalls) |
499a3887f569
Remap smalls to <C-s> to use default s functionality
zegervdv <zegervdv@me.com>
parents:
209
diff
changeset
|
534 omap <C-s> <Plug>(smalls) |
499a3887f569
Remap smalls to <C-s> to use default s functionality
zegervdv <zegervdv@me.com>
parents:
209
diff
changeset
|
535 xmap <C-s> <Plug>(smalls) |
40 | 536 " }}} |
537 " Textmanip {{{ | |
14
09c60bc0fc38
Add vim-textmanip for visual block dragging
zegervdv <zegervdv@me.com>
parents:
13
diff
changeset
|
538 xmap <C-j> <Plug>(textmanip-move-down) |
09c60bc0fc38
Add vim-textmanip for visual block dragging
zegervdv <zegervdv@me.com>
parents:
13
diff
changeset
|
539 xmap <C-k> <Plug>(textmanip-move-up) |
09c60bc0fc38
Add vim-textmanip for visual block dragging
zegervdv <zegervdv@me.com>
parents:
13
diff
changeset
|
540 xmap <C-h> <Plug>(textmanip-move-left) |
09c60bc0fc38
Add vim-textmanip for visual block dragging
zegervdv <zegervdv@me.com>
parents:
13
diff
changeset
|
541 xmap <C-l> <Plug>(textmanip-move-right) |
09c60bc0fc38
Add vim-textmanip for visual block dragging
zegervdv <zegervdv@me.com>
parents:
13
diff
changeset
|
542 xmap <F10> <Plug>(textmanip-toggle-mode) |
40 | 543 " }}} |
544 " Startify {{{ | |
27 | 545 let g:startify_session_dir = "~/.vim/sessions" |
546 " }}} | |
54 | 547 " Vimwiki {{{ |
221 | 548 let g:notes_directories = ['~/.vim/notes'] |
54 | 549 " }}} |
58
b657d43a4fcb
Stop asking to save current session
zegervdv <zegervdv@me.com>
parents:
54
diff
changeset
|
550 " Vim Sessions {{{ |
b657d43a4fcb
Stop asking to save current session
zegervdv <zegervdv@me.com>
parents:
54
diff
changeset
|
551 let g:session_autosave = 'no' |
b657d43a4fcb
Stop asking to save current session
zegervdv <zegervdv@me.com>
parents:
54
diff
changeset
|
552 " }}} |
216
d216f4d5508e
Setup latex compiler for dispatch
zegervdv <zegervdv@me.com>
parents:
215
diff
changeset
|
553 " Dispatch {{{ |
d216f4d5508e
Setup latex compiler for dispatch
zegervdv <zegervdv@me.com>
parents:
215
diff
changeset
|
554 nnoremap <leader>s :Make<CR> |
217 | 555 autocmd FileType python setlocal makeprg=ipython\ --pdb\ % |
218 | 556 autocmd FileType ruby setlocal makeprg=ruby\ % |
189
925861e874ec
Add vim-tmux-navigator for seamless navigation
zegervdv <zegervdv@me.com>
parents:
188
diff
changeset
|
557 " }}} |
215
ffe47a1b75f8
Add Scratch plugin and lazyload some plugins
zegervdv <zegervdv@me.com>
parents:
214
diff
changeset
|
558 |
13 | 559 " Load local vimrc |
3
44d3af8838f8
Add support for local zshrc and vimrc files
zegervdv <zegervdv@me.com>
parents:
0
diff
changeset
|
560 if filereadable($HOME . "/.vimrc.local") |
44d3af8838f8
Add support for local zshrc and vimrc files
zegervdv <zegervdv@me.com>
parents:
0
diff
changeset
|
561 source ~/.vimrc.local |
44d3af8838f8
Add support for local zshrc and vimrc files
zegervdv <zegervdv@me.com>
parents:
0
diff
changeset
|
562 endif |
24 | 563 |
209 | 564 " Load project local vimrc |
565 if filereadable(".vimrc.local") | |
566 source .vimrc.local | |
567 endif | |
568 |