From a48b24909da9c733eb990c6075f384309449c997 Mon Sep 17 00:00:00 2001 From: Pavel Lutskov Date: Sat, 13 Jan 2018 11:53:44 +0100 Subject: [PATCH] saner statusline --- plugin/statusline.vim | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/plugin/statusline.vim b/plugin/statusline.vim index b415ba0..a62f64b 100644 --- a/plugin/statusline.vim +++ b/plugin/statusline.vim @@ -17,10 +17,15 @@ function! GetFilePath() elseif strlen(filename) < winwidth(filename) - 40 return filename endif - let dirpath=split(@%, '\/') + if has('win32') + let sep = '\' + else + let sep = '/' + endif + let dirpath=split(@%, sep) let result = '' - if expand('%:p') == filename - let result .= '/' + if filename[0] == sep + let result .= sep endif for direntry in dirpath[:-2] let result .= direntry[0] . '/' @@ -33,12 +38,12 @@ set statusline= set statusline+=%w%q%h "Is it help/preview/loclist? set statusline+=%{GetGitStatus()} "Is it git? set statusline+=\ -set statusline+=%{GetFilePath()} "What's the filename? +set statusline+=%< "Trim here +set statusline+=%{GetFilePath()} "What's the filename? (nicely adjusted) set statusline+=%m%r "Is it modifiable/readonly? set statusline+=[%LL] "How many lines? set statusline+=%= "Go to the right ----> set statusline+=\ -set statusline+=%< "Trim here set statusline+=%{&fileencoding?&fileencoding:&encoding} set statusline+=\|%{&fileformat} "Unix/Win? set statusline+=%y "What's the type of the file?