better status line

This commit is contained in:
ManjaroOne666 2018-03-15 17:12:20 +00:00
commit 6b6f648eba
2 changed files with 33 additions and 33 deletions

60
vimrc
View file

@ -252,46 +252,48 @@ iabbrev tehn then
" #statusline format{{{
" isactive = 0 when inactive, 1 otherwise
" get status line{{{
function! GetStatus(isactive)
let l:separator='%#StatusLineSeparator#'
let l:separator='%#StatusLineSeparator# '
let l:normal='%#StatusLineNormal#'
let l:active='%#StatusLineActive#'
let l:statusline=''
"}}}
" linter status
" linter status{{{
let l:statusline.='%#InterfaceH2# %{LinterStatus()} %*'
" file info
"}}}
" file info{{{
if a:isactive == 1
let l:statusline.=l:active
let l:statusline.='%q%h%w%r'
let l:statusline.=" %{strlen(&ft)?&ft:'none'},"
let l:statusline.='%{strlen(&fenc)?&fenc:&enc},'
let l:statusline.='%{&fileformat} '
let l:statusline.=l:separator . ' %* %{&spelllang} %*'
let l:statusline.=l:separator . l:active
let l:statusline.=' %{&spelllang} '
else
let l:statusline.=l:separator
endif
" current register
"}}}
" current register{{{
if a:isactive
let l:statusline.=l:separator . ' %* "%{v:register}" %*'
let l:statusline.=l:separator . l:active
let l:statusline.=' %#StatusLineActiveQuotes#"' . l:active . '%{v:register}%#StatusLineActiveQuotes#" '
endif
" session status
"}}}
" session status{{{
if a:isactive
let l:statusline.=l:separator . ' %*'
let l:statusline.=l:separator . l:active
let l:statusline.=" %{ObsessionStatus(fnamemodify(v:this_session,':t'),'---')} %*"
let l:statusline.=l:separator . ' %*'
let l:statusline.=l:separator . l:active
else
let l:statusline.='%#StatusLineDivider# %< - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - >%* '
let l:statusline.='%#StatusLineDivider# %< - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - >' . l:separator . '%*'
endif
" right/left separator
let l:statusline.='%='
" path/filename.extension
"}}}
" right/left separator{{{
let l:statusline.='%#StatusLineNC#%='
"}}}
" path/filename.extension{{{
let l:statusline.='%#StatusLineDir# '
if a:isactive
@ -309,23 +311,23 @@ function! GetStatus(isactive)
let l:statusline.="%{strlen(expand('%:e'))?'.':''}"
let l:statusline.="%{strlen(expand('%:e'))?expand('%:e'):expand('%:e')}"
let l:statusline.=' %*'
" modified flag
"}}}
" modified flag {{{
let l:statusline.='%#StatusLineMod#%M' . l:separator . ' %*'
" file percentage
"}}}
" file percentage{{{
let l:statusline.='%#InterfaceNormalDark# %P %*'
return l:statusline
endfunction
" status line autocommands
"}}}
" status line autocommands{{{
augroup status
autocmd!
autocmd WinEnter * setlocal statusline=%!GetStatus(1)
autocmd WinLeave * setlocal statusline=%!GetStatus(0)
autocmd InsertChange * setlocal statusline=%!GetStatus(1)
" autocmd InsertChange * setlocal statusline=%!GetStatus(1)
augroup END
"}}}
"}}}}}}
" #autocommands{{{