diff --git a/nvim/.config/nvim/plugin/statusline.vim b/nvim/.config/nvim/plugin/statusline.vim index 5a36d51..e8f1a06 100644 --- a/nvim/.config/nvim/plugin/statusline.vim +++ b/nvim/.config/nvim/plugin/statusline.vim @@ -19,9 +19,24 @@ function! GetCursorPosition() \ : '' endfunction +function! GetFileStatus() + if &buftype != '' + return '' + endif + + let l:file = expand('%:p') + let l:status = + \ (&readonly || (filereadable(l:file) && !filewritable(l:file)) + \ ? 'R' + \ : '') + \ . (&modified ? '+m' : '') + return len(l:status) > 0 ? ' ' . l:status : '' +endfunction + function! ActiveStatus() abort let statusline="" let statusline.="%1*\ %{winnr()}\ " + let statusline.="%4*\ %{GetFileStatus()}" let statusline.="%2*\ %Y\ " let statusline.="%3*%<%f" let statusline.="%=" @@ -32,6 +47,7 @@ endfunction function! PassiveStatus() abort let statusline="" let statusline.="%5*\ %{winnr()}\ " + let statusline.="%8*\ %{GetFileStatus()}" let statusline.="%6*\ %Y\ " let statusline.="%7*%<%f" let statusline.="%="