aboutsummaryrefslogtreecommitdiffhomepage
path: root/vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim')
-rw-r--r--vim/init/config.vim12
-rw-r--r--vim/init/keymaps.vim46
-rw-r--r--vim/lua/chadrc.lua2
3 files changed, 43 insertions, 17 deletions
diff --git a/vim/init/config.vim b/vim/init/config.vim
index 1910004..ae623ec 100644
--- a/vim/init/config.vim
+++ b/vim/init/config.vim
@@ -1,11 +1,14 @@
1"====================================================================== 1"======================================================================
2" init-config.vim - 正常模式下的配置,在 init-basic.vim 后调用 2" init-config.vim
3" Do some autocommand for by contexts
3"====================================================================== 4"======================================================================
4 5
5" foo Unnamed Buffer ----------------{{{ 6" Unnamed Buffer ----------------{{{
7
6augroup DeleteUnnamedEmptBuffer! 8augroup DeleteUnnamedEmptBuffer!
7 au BufLeave {} if getline(1, '$') == [''] | setlocal bufhidden=wipe | endif 9 au BufLeave {} if getline(1, '$') == [''] | setlocal bufhidden=wipe | endif
8augroup END 10augroup END
11
9" }}} 12" }}}
10" X11 ----------------{{{ 13" X11 ----------------{{{
11 14
@@ -99,7 +102,7 @@ call s:key_escape('<S-F12>', '[24;2~')
99augroup InitFileTypes 102augroup InitFileTypes
100 103
101 au! 104 au!
102source 105
103 " Filetype for Vim ----------------{{{ 106 " Filetype for Vim ----------------{{{
104 107
105 " Help page 108 " Help page
@@ -174,7 +177,9 @@ source
174 177
175 " }}} 178 " }}}
176 " Mail ----------------{{{ 179 " Mail ----------------{{{
180
177 autocmd BufRead /tmp/mutt-* set tw=72 181 autocmd BufRead /tmp/mutt-* set tw=72
182
178 " }}} 183 " }}}
179 " Password ----------------{{{ 184 " Password ----------------{{{
180 185
@@ -194,7 +199,6 @@ source
194 " }}} 199 " }}}
195 " Beancount ----------------{{{ 200 " Beancount ----------------{{{
196 201
197 " Set filetype for beancount
198 autocmd BufRead,BufNewFile *.bean call PrepareBean() 202 autocmd BufRead,BufNewFile *.bean call PrepareBean()
199 function PrepareBean() 203 function PrepareBean()
200 set filetype=beancount 204 set filetype=beancount
diff --git a/vim/init/keymaps.vim b/vim/init/keymaps.vim
index 6978f63..f46e67b 100644
--- a/vim/init/keymaps.vim
+++ b/vim/init/keymaps.vim
@@ -8,23 +8,12 @@
8" Space for searching 8" Space for searching
9map <space> / 9map <space> /
10 10
11" j/k will move virtual lines (lines that wrap)
12noremap <silent> <expr> j (v:count == 0 ? 'gj' : 'j')
13noremap <silent> <expr> k (v:count == 0 ? 'gk' : 'k')
14
15" Search for selected test 11" Search for selected test
16vnoremap * y/\V<C-R>=escape(@",'/\')<CR><CR> 12vnoremap * y/\V<C-R>=escape(@",'/\')<CR><CR>
17 13
18" set buflisted
19noremap <leader>st :set<space>
20
21" Disable highlight when <leader><CR> is pressed 14" Disable highlight when <leader><CR> is pressed
22map <silent> <leader><CR> :noh<CR> 15map <silent> <leader><CR> :noh<CR>
23 16
24" Quick move in a line
25noremap <C-h> 30h
26noremap <C-l> 30l
27
28" Paste register 0 17" Paste register 0
29nnoremap <C-p> "0p 18nnoremap <C-p> "0p
30 19
@@ -99,7 +88,7 @@ nnoremap <leader>P :r !xsel -ob<CR>
99vnoremap Y :w !xsel -ib<CR> 88vnoremap Y :w !xsel -ib<CR>
100 89
101" Spell 90" Spell
102nnoremap <leader>ts :set spell!<CR> 91nnoremap <leader><leader>sp :set spell!<CR>
103nnoremap <leader>ss ]s 92nnoremap <leader>ss ]s
104nnoremap <leader>S [s 93nnoremap <leader>S [s
105 94
@@ -116,12 +105,26 @@ nnoremap <leader><leader>so :source ~/.vimrc<CR>
116vnoremap so :source<CR> 105vnoremap so :source<CR>
117 106
118" }}} 107" }}}
108" MOVE ----------------{{{
109
110" j/k will move virtual lines (lines that wrap)
111noremap <silent> <expr> j (v:count == 0 ? 'gj' : 'j')
112noremap <silent> <expr> k (v:count == 0 ? 'gk' : 'k')
113
114" Quick move in a line
115noremap <C-h> 30h
116noremap <C-l> 30l
117
118" }}}
119" MANAGE_VIMRC ----------------{{{ 119" MANAGE_VIMRC ----------------{{{
120
120nnoremap <leader>e :scriptnames<space> 121nnoremap <leader>e :scriptnames<space>
121nnoremap <leader>ee :edit $MYVIMRC<CR> 122nnoremap <leader>ee :edit $MYVIMRC<CR>
122autocmd! BUFWRITEPOST $MYVIMRC source $MYVIMRC 123autocmd! BUFWRITEPOST $MYVIMRC source $MYVIMRC
124
123" }}} 125" }}}
124" MOVING_WITH_READLINE ----------------{{{ 126" MOVING_WITH_READLINE ----------------{{{
127
125inoremap <C-f> <Right> 128inoremap <C-f> <Right>
126inoremap <C-b> <Left> 129inoremap <C-b> <Left>
127inoremap <C-a> <C-o>0 130inoremap <C-a> <C-o>0
@@ -155,13 +158,16 @@ inoremap <m-j> <c-\><c-o>gj
155inoremap <m-k> <c-\><c-o>gk 158inoremap <m-k> <c-\><c-o>gk
156" }}} 159" }}}
157" INSERT_SURROUNDING ----------------{{{ 160" INSERT_SURROUNDING ----------------{{{
161
158inoremap ' ''<Left> 162inoremap ' ''<Left>
159inoremap " ""<Left> 163inoremap " ""<Left>
160inoremap ( ()<Left> 164inoremap ( ()<Left>
161inoremap [ []<Left> 165inoremap [ []<Left>
162inoremap { {}<Left> 166inoremap { {}<Left>
167
163" }}} 168" }}}
164" JUMP_TO_TABS_WITH_ALT ----------------{{{ 169" JUMP_TO_TABS_WITH_ALT ----------------{{{
170
165noremap <silent><A-1> :tabn 1<CR> 171noremap <silent><A-1> :tabn 1<CR>
166noremap <silent><A-2> :tabn 2<CR> 172noremap <silent><A-2> :tabn 2<CR>
167noremap <silent><M-3> :tabn 3<CR> 173noremap <silent><M-3> :tabn 3<CR>
@@ -180,6 +186,7 @@ inoremap <silent><M-6> <Esc>:tabn 6<CR>
180inoremap <silent><M-7> <Esc>:tabn 7<CR> 186inoremap <silent><M-7> <Esc>:tabn 7<CR>
181inoremap <silent><M-8> <Esc>:tabn 8<CR> 187inoremap <silent><M-8> <Esc>:tabn 8<CR>
182inoremap <silent><M-9> <Esc>:tablast<CR> 188inoremap <silent><M-9> <Esc>:tablast<CR>
189
183" }}} 190" }}}
184" MANAGE_TABS ----------------{{{ 191" MANAGE_TABS ----------------{{{
185 192
@@ -217,6 +224,9 @@ endfunc
217" }}} 224" }}}
218" MANAGE_BUFFERS ----------------{{{ 225" MANAGE_BUFFERS ----------------{{{
219 226
227" set buflisted
228noremap <leader>st :set<space>
229
220" Open a new buffer 230" Open a new buffer
221nmap <leader><leader>b :enew<CR> 231nmap <leader><leader>b :enew<CR>
222nmap <leader>B :enew<CR> 232nmap <leader>B :enew<CR>
@@ -261,6 +271,7 @@ com! SwitchDiffForGitHEAD call s:SwitchDiffForGitHEAD()
261nnoremap <C-w>D <Cmd>silent! SwitchDiffForGitHEAD<CR> 271nnoremap <C-w>D <Cmd>silent! SwitchDiffForGitHEAD<CR>
262" }}} 272" }}}
263" MANAGE_WINDOWS ----------------{{{ 273" MANAGE_WINDOWS ----------------{{{
274
264nnoremap <leader><leader>sb :windo set scrollbind!<CR> 275nnoremap <leader><leader>sb :windo set scrollbind!<CR>
265 276
266" 窗口切换:ALT+SHIFT+hjkl 277" 窗口切换:ALT+SHIFT+hjkl
@@ -296,19 +307,24 @@ elseif has('nvim')
296endif 307endif
297" }}} 308" }}}
298" FOLDING ----------------{{{ 309" FOLDING ----------------{{{
310
299" Set foldmethod 311" Set foldmethod
300noremap <leader><leader>fm :<C-\>e'set foldmethod='..&foldmethod<CR> 312noremap <leader><leader>fm :<C-\>e'set foldmethod='..&foldmethod<CR>
301 313
302" Show fold level when it changes 314" Show fold level when it changes
303nnoremap zm zm:set foldlevel<CR> 315nnoremap zm zm:set foldlevel<CR>
304nnoremap zr zr:set foldlevel<CR> 316nnoremap zr zr:set foldlevel<CR>
317
305" Use l to open fold 318" Use l to open fold
306nnoremap <expr> l foldclosed('.') == -1 ? 'l' : 'zo' 319nnoremap <expr> l foldclosed('.') == -1 ? 'l' : 'zo'
320sourcesourcesource
307" Open fold in next line 321" Open fold in next line
308nnoremap <expr> zo foldclosed('.') == -1 ? 'zjzo' : 'zo' 322nnoremap <expr> zo foldclosed('.') == -1 ? 'zjzo' : 'zo'
309nnoremap <expr> zO foldclosed('.') == -1 ? 'zjzO' : 'zO' 323nnoremap <expr> zO foldclosed('.') == -1 ? 'zjzO' : 'zO'
324
310" }}} 325" }}}
311" SURROURD_WITH_CHAR ----------------{{{ 326" SURROURD_WITH_CHAR ----------------{{{
327
312vnoremap S sa 328vnoremap S sa
313vnoremap ' <ESC>`<i'<ESC>`>la'<ESC> 329vnoremap ' <ESC>`<i'<ESC>`>la'<ESC>
314vnoremap q <ESC>`<i"<ESC>`>la"<ESC> 330vnoremap q <ESC>`<i"<ESC>`>la"<ESC>
@@ -318,6 +334,7 @@ vnoremap { <ESC>`<i{<ESC>`>la}<ESC>
318vnoremap ` <ESC>`<i`<ESC>`>la`<ESC> 334vnoremap ` <ESC>`<i`<ESC>`>la`<ESC>
319vnoremap <space> <ESC>`<i<space><ESC>`>la<space><ESC> 335vnoremap <space> <ESC>`<i<space><ESC>`>la<space><ESC>
320vnoremap Q <ESC>`<i「<ESC>`>la」<ESC> 336vnoremap Q <ESC>`<i「<ESC>`>la」<ESC>
337
321" }}} 338" }}}
322" REDIRECTION_WITH_BUFFER ----------------{{{ 339" REDIRECTION_WITH_BUFFER ----------------{{{
323 340
@@ -380,12 +397,14 @@ vnoremap <CR> <Cmd>call SubstituteBySearch()<CR>
380 397
381" }}} 398" }}}
382" GIT_TIG ----------------{{{ 399" GIT_TIG ----------------{{{
400
383let g:tig_explorer_keymap_commit_split = '<C-s>' 401let g:tig_explorer_keymap_commit_split = '<C-s>'
384let g:tig_explorer_keymap_commit_vsplit = '<C-v>' 402let g:tig_explorer_keymap_commit_vsplit = '<C-v>'
385nnoremap <C-t> <Cmd>Tig<CR> 403nnoremap <C-t> <Cmd>Tig<CR>
386nnoremap <C-t>s <Cmd>TigStatus<CR> 404nnoremap <C-t>s <Cmd>TigStatus<CR>
387nnoremap <C-t>b <Cmd>TigBlame<CR> 405nnoremap <C-t>b <Cmd>TigBlame<CR>
388nnoremap <C-t>d :vertical TigOpenFileWithCommit <C-R>+ % 0<CR> 406nnoremap <C-t>d :vertical TigOpenFileWithCommit <C-R>+ % 0<CR>
407
389" }}} 408" }}}
390" Markdown items (temproray solution) ----------------{{{ 409" Markdown items (temproray solution) ----------------{{{
391 410
@@ -401,8 +420,10 @@ nnoremap <C-t>d :vertical TigOpenFileWithCommit <C-R>+ % 0<CR>
401nnoremap <leader>dd :r !sh -c 'LANG=en zenity --calendar --date-format="\%Y.\%m.\%d" 2>/dev/null'<CR><CR> 420nnoremap <leader>dd :r !sh -c 'LANG=en zenity --calendar --date-format="\%Y.\%m.\%d" 2>/dev/null'<CR><CR>
402nnoremap <leader>dD :r !sh -c 'LANG=en zenity --calendar --date-format="\%a \%b \%d" 2>/dev/null'<CR><CR> 421nnoremap <leader>dD :r !sh -c 'LANG=en zenity --calendar --date-format="\%a \%b \%d" 2>/dev/null'<CR><CR>
403nnoremap <leader>dt :r !date +\%H:\%m<CR>A 422nnoremap <leader>dt :r !date +\%H:\%m<CR>A
423
404" }}} 424" }}}
405" Compile ----------------{{{ 425" Compile ----------------{{{
426
406" 编译运行 C/C++ 项目 427" 编译运行 C/C++ 项目
407" 详细见:http://www.skywind.me/blog/archives/2084 428" 详细见:http://www.skywind.me/blog/archives/2084
408"---------------------------------------------------------------------- 429"----------------------------------------------------------------------
@@ -506,4 +527,5 @@ else
506 \ --include='*.js' --include='*.vim' 527 \ --include='*.js' --include='*.vim'
507 \ '<root>' <CR> 528 \ '<root>' <CR>
508endif 529endif
530
509" }}} 531" }}}
diff --git a/vim/lua/chadrc.lua b/vim/lua/chadrc.lua
index e19b897..6006371 100644
--- a/vim/lua/chadrc.lua
+++ b/vim/lua/chadrc.lua
@@ -5,7 +5,7 @@
5local M = {} 5local M = {}
6 6
7M.ui = { 7M.ui = {
8 theme = "onedark", 8 theme = "bearded-arc",
9 9
10 -- hl_override = { 10 -- hl_override = {
11 -- Comment = { italic = true }, 11 -- Comment = { italic = true },