diff options
Diffstat (limited to 'vim/init')
-rw-r--r-- | vim/init/config.vim | 23 | ||||
-rw-r--r-- | vim/init/keymaps.vim | 3 |
2 files changed, 25 insertions, 1 deletions
diff --git a/vim/init/config.vim b/vim/init/config.vim index 07bed12..489521f 100644 --- a/vim/init/config.vim +++ b/vim/init/config.vim | |||
@@ -10,6 +10,29 @@ | |||
10 | " Open help page in a new tab | 10 | " Open help page in a new tab |
11 | autocmd BufEnter *.txt if &filetype == 'help' | wincmd T | endif | 11 | autocmd BufEnter *.txt if &filetype == 'help' | wincmd T | endif |
12 | 12 | ||
13 | " Quickly edit html tag class | ||
14 | function! s:ChangeAttr(pattern) | ||
15 | |||
16 | let l:attr = matchstr(getline('.'), a:pattern.'="') | ||
17 | if l:attr == '' | ||
18 | let l:all_attrs = matchstr(getline('.'), '<[[:alnum:]]\+\zs\s\?[^>]*>\ze') | ||
19 | execute 's/'.l:all_attrs.'/ '.a:pattern.'=""'.l:all_attrs.'/' | ||
20 | noh | ||
21 | normal! 0f"l | ||
22 | startinsert | ||
23 | else | ||
24 | normal! 0 | ||
25 | call search(l:attr) | ||
26 | normal! f"l | ||
27 | noh | ||
28 | startinsert | ||
29 | endif | ||
30 | endfunction | ||
31 | |||
32 | autocmd FileType html nnoremap <leader>cl :call <SID>ChangeAttr("class")<CR> | ||
33 | autocmd BufLeave nunmap <leader>cl | ||
34 | autocmd FileType html nnoremap <leader>id :call <SID>ChangeAttr("id")<CR> | ||
35 | autocmd BufLeave nunmap <leader>id | ||
13 | 36 | ||
14 | "---------------------------------------------------------------------- | 37 | "---------------------------------------------------------------------- |
15 | " 有 tmux 何没有的功能键超时(毫秒) | 38 | " 有 tmux 何没有的功能键超时(毫秒) |
diff --git a/vim/init/keymaps.vim b/vim/init/keymaps.vim index 245905a..ff4821e 100644 --- a/vim/init/keymaps.vim +++ b/vim/init/keymaps.vim | |||
@@ -246,6 +246,7 @@ endfunc | |||
246 | 246 | ||
247 | " Open a new buffer | 247 | " Open a new buffer |
248 | nmap <leader><leader>b :enew<CR> | 248 | nmap <leader><leader>b :enew<CR> |
249 | nmap <leader>B :enew<CR> | ||
249 | nmap <leader>O :e /tmp/buffer<CR> | 250 | nmap <leader>O :e /tmp/buffer<CR> |
250 | 251 | ||
251 | " Next buffer | 252 | " Next buffer |
@@ -254,7 +255,7 @@ noremap <leader>l :exe "buffer ".g:lastbuffer<CR> | |||
254 | 255 | ||
255 | " set filetype | 256 | " set filetype |
256 | noremap <leader><leader>ft :set filetype= | 257 | noremap <leader><leader>ft :set filetype= |
257 | noremap <leader><leader>f :set foldmetho = | 258 | noremap <leader><leader>fm :set foldmethod= |
258 | 259 | ||
259 | " Let <leader>l toggle between this and the last accessed buffer | 260 | " Let <leader>l toggle between this and the last accessed buffer |
260 | let g:lastbuffer = 1 | 261 | let g:lastbuffer = 1 |