[vim] add nice folding
This commit is contained in:
parent
b4a6205b4d
commit
b376025223
1 changed files with 23 additions and 7 deletions
30
vim/vimrc
30
vim/vimrc
|
@ -28,13 +28,6 @@ set nocompatible
|
||||||
set laststatus=2
|
set laststatus=2
|
||||||
set lazyredraw
|
set lazyredraw
|
||||||
set list
|
set list
|
||||||
if has('multi_byte') && &encoding ==# 'utf-8'
|
|
||||||
let &listchars = 'tab:▷ ,extends:»,precedes:«,trail:·'
|
|
||||||
let &showbreak = ' ⤷ '
|
|
||||||
else
|
|
||||||
let &listchars = 'tab:>~,extends:>,precedes:<,trail:-'
|
|
||||||
let &showbreak = '-> '
|
|
||||||
endif
|
|
||||||
set modelines=0
|
set modelines=0
|
||||||
set number
|
set number
|
||||||
set scrolloff=5
|
set scrolloff=5
|
||||||
|
@ -69,6 +62,16 @@ set nocompatible
|
||||||
set wildmenu
|
set wildmenu
|
||||||
set wrap
|
set wrap
|
||||||
set writebackup
|
set writebackup
|
||||||
|
|
||||||
|
if has('multi_byte') && &encoding ==# 'utf-8'
|
||||||
|
set foldtext=VimrcFoldText()
|
||||||
|
set fillchars=fold:·
|
||||||
|
let &listchars = 'tab:▷ ,extends:»,precedes:«,trail:·'
|
||||||
|
let &showbreak = ' ⤷ '
|
||||||
|
else
|
||||||
|
let &listchars = 'tab:>~,extends:>,precedes:<,trail:-'
|
||||||
|
let &showbreak = '-> '
|
||||||
|
endif
|
||||||
" }}}
|
" }}}
|
||||||
|
|
||||||
" Plugins {{{
|
" Plugins {{{
|
||||||
|
@ -140,6 +143,19 @@ set nocompatible
|
||||||
endif
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
" Turn fold text from this:
|
||||||
|
"
|
||||||
|
" +--- 2 lines: text of first line in fold --------------------------
|
||||||
|
"
|
||||||
|
" into this:
|
||||||
|
"
|
||||||
|
" ··· 2ℓ: text of first line in fold ······························
|
||||||
|
function! VimrcFoldText() abort
|
||||||
|
let l:level=substitute(v:folddashes, '-', '·', 'g')
|
||||||
|
let l:count=(v:foldend - v:foldstart + 1)
|
||||||
|
let l:title=substitute(getline(v:foldstart), '\v *', '', '')
|
||||||
|
return l:level . ' ' . l:count . 'ℓ: ' . l:title . ' '
|
||||||
|
endfunction
|
||||||
" }}}"
|
" }}}"
|
||||||
|
|
||||||
" Mappings {{{
|
" Mappings {{{
|
||||||
|
|
Loading…
Add table
Reference in a new issue