active/inactive statusline format

This commit is contained in:
ManjaroOne666 2018-03-05 21:27:09 +00:00
parent 0b818319fe
commit d4bc6393d3
1 changed files with 74 additions and 45 deletions

119
vimrc
View File

@ -255,57 +255,86 @@ iabbrev tehn then
" #statusline format " #statusline format
set statusline=%#LineNr# function! ActiveStatus()
set statusline+=\ \ \ let l:statusline='%#StatusLineFile# '
set statusline+=%#StatusLineFile# let l:statusline.='%#StatusLineMod#'
set statusline+=\ let l:statusline.='%M'
set statusline+=%#StatusLineMod# let l:statusline.='%*'
set statusline+=%M " modified flag let l:statusline.='%#StatusLineDir# '
set statusline+=%* let l:statusline.=expand('%:p:h:t') . '/'
set statusline+=%#StatusLineDir# let l:statusline.='%#StatusLineFile#'
set statusline+=\ %{expand('%:p:h:t')}/ " directory tail let l:statusline.="%{expand('%:t:r')}"
set statusline+=%#StatusLineFile# let l:statusline.='%#StatusLineDot#'
set statusline+=%{expand('%:t:r')} let l:statusline.='%#StatusLineExt#'
set statusline+=%#StatusLineDot# let l:extension=expand('%:e')
set statusline+=. if strlen(l:extension) > 0
set statusline+=%#StatusLineExt# let l:statusline.='.' . l:extension
set statusline+=%{expand('%:e')}\ endif
set statusline+=%* let l:statusline.=' %*'
set statusline+=%q " quickfix/location list flag let l:statusline.='%q%h%w%r'
set statusline+=%h " help file flag let l:statusline.='%#StatusLineNC# '
set statusline+=%w " preview window flag let l:statusline.='%*'
set statusline+=%r " read only flag let l:statusline.=" %{strlen(&ft)?&ft:'none'},"
set statusline+=%#StatusLineNC# let l:statusline.='%{strlen(&fenc)?&fenc:&enc},'
set statusline+=\ let l:statusline.='%{&fileformat} '
set statusline+=%* let l:statusline.='%#StatusLineNC# '
set statusline+=\ %{strlen(&ft)?&ft:'none'}, " filetype let l:statusline.='%*'
set statusline+=%{strlen(&fenc)?&fenc:&enc}, " encoding let l:statusline.=' %{&spelllang} '
set statusline+=%{&fileformat}\ let l:statusline.='%#StatusLineNC#'
set statusline+=%#StatusLineNC#
set statusline+=\
set statusline+=%*
set statusline+=\ %{&spelllang}\
set statusline+=%#StatusLineNC#
set statusline+=%= " left/right separator let l:statusline.='%='
set statusline+=%#StatusLineNC# let l:statusline.='%#StatusLineNC#'
set statusline+=\ let l:statusline.=' '
set statusline+=%* let l:statusline.='%*'
set statusline+=\ \"%{v:register}\"\ let l:statusline.=' "%{v:register}" '
set statusline+=%#StatusLineNC# let l:statusline.='%#StatusLineNC#'
set statusline+=\ let l:statusline.=' '
set statusline+=%* let l:statusline.='%*'
set statusline+=\ %{ObsessionStatus(fnamemodify(v:this_session,':t'),'---')}\ " session status let l:statusline.=" %{ObsessionStatus(fnamemodify(v:this_session,':t'),'---')} "
set statusline+=%#InterfaceH2# let l:statusline.='%#InterfaceH2#'
set statusline+=\ %{LinterStatus()} let l:statusline.=' %{LinterStatus()}'
set statusline+=%#InterfaceNormalDark# let l:statusline.='%#InterfaceNormalDark#'
set statusline+=\ %P\ " percentage through file let l:statusline.=' %P '
set statusline+=%* let l:statusline.='%*'
return l:statusline
endfunction
function! InactiveStatus()
let l:statusline='%#StatusLineFile# '
let l:statusline.='%#StatusLineMod#'
let l:statusline.='%M'
let l:statusline.='%*'
let l:statusline.='%#StatusLineDir# '
let l:statusline.=expand('%:p') . '/'
let l:statusline.='%#StatusLineFile#'
let l:statusline.="%{expand('%:t:r')}"
let l:statusline.='%#StatusLineDot#'
let l:statusline.='%#StatusLineExt#'
let l:extension=expand('%:e')
if strlen(l:extension) > 0
let l:statusline.='.' . l:extension
endif
let l:statusline.=' %*'
let l:statusline.='%=%#InterfaceH2#'
let l:statusline.='%{LinterStatus()}'
let l:statusline.='%#InterfaceNormalDark#'
let l:statusline.=' %P '
let l:statusline.='%*'
return l:statusline
endfunction
augroup status
autocmd!
autocmd WinEnter * setlocal statusline=%!ActiveStatus()
autocmd WinLeave * setlocal statusline=%!InactiveStatus()
augroup END
" #autocommands " #autocommands