32 lines
815 B
VimL
32 lines
815 B
VimL
|
func! STL()
|
||
|
let stl = '%f [%{(&fenc==""?&enc:&fenc).((exists("+bomb") && &bomb)?",B":"")}%M%R%H%W] %y [%l/%L,%v] [%p%%]'
|
||
|
let barWidth = &columns - 65 " <-- wild guess
|
||
|
let barWidth = barWidth < 3 ? 3 : barWidth
|
||
|
|
||
|
if line('$') > 1
|
||
|
let progress = (line('.')-1) * (barWidth-1) / (line('$')-1)
|
||
|
else
|
||
|
let progress = barWidth/2
|
||
|
endif
|
||
|
|
||
|
" line + vcol + %
|
||
|
let pad = strlen(line('$'))-strlen(line('.')) + 3 - strlen(virtcol('.')) + 3 - strlen(line('.')*100/line('$'))
|
||
|
let bar = repeat(' ',pad).' [%1*%'.barWidth.'.'.barWidth.'('
|
||
|
\.repeat('-',progress )
|
||
|
\.'%2*0%1*'
|
||
|
\.repeat('-',barWidth - progress - 1).'%0*%)%<]'
|
||
|
|
||
|
return stl.bar
|
||
|
endfun
|
||
|
|
||
|
hi def link User1 DiffAdd
|
||
|
hi def link User2 DiffDelete
|
||
|
set stl=%!STL()
|
||
|
|
||
|
set number
|
||
|
set laststatus=2
|
||
|
|
||
|
autocmd VimLeave * :!open -a iTerm
|
||
|
|
||
|
|