From 3a1c1bbb07a29030ad9f5b31e6d7e281321fcecb Mon Sep 17 00:00:00 2001 From: Syndamia Date: Fri, 24 Feb 2023 22:44:34 +0200 Subject: [.vimrc] Renamed my_statusline to just statusline --- .vim/miniplugins/my_statusline.vim | 81 -------------------------------------- .vim/miniplugins/statusline.vim | 81 ++++++++++++++++++++++++++++++++++++++ .vimrc | 11 ++---- 3 files changed, 85 insertions(+), 88 deletions(-) delete mode 100644 .vim/miniplugins/my_statusline.vim create mode 100644 .vim/miniplugins/statusline.vim diff --git a/.vim/miniplugins/my_statusline.vim b/.vim/miniplugins/my_statusline.vim deleted file mode 100644 index 92b9f10..0000000 --- a/.vim/miniplugins/my_statusline.vim +++ /dev/null @@ -1,81 +0,0 @@ -" Needed settings -set laststatus=2 -set timeoutlen=1000 ttimeoutlen=10 -set noshowmode - -" call hlset([#{name: 'StatusLine', ctermfg: '252', ctermbg: '239'}]) - -" Logic - -let leftcap = '' -let rightcap = '' -let leftmcap = '' -let rightmcap = '' - -set statusline= -" Mode - -" Values are, in order, for: normal (default), insert, replace, visual modes -" [ctermfg, ctermbg] -let s:modecolors = [ -\ ['236', '117'], -\ ['236', '119'], -\ ['236', '203'], -\ ['236', '216'], -\] - -let modestring = '' - -hi SLMode ctermfg=1 ctermbg=0 -hi SLModeC ctermfg=1 ctermbg=0 - - -function! SLModeSetter() - let cm = mode() - let ind = 0 - - if cm == 'i' - let ind = 1 - elseif cm == 'R' - let ind = 2 - let cm = 'r' - elseif cm == 'v' - let ind = 3 - endif - - call hlset([#{name: 'SLMode', ctermfg: s:modecolors[l:ind][0], ctermbg: s:modecolors[l:ind][1]}]) - call hlset([#{name: 'SLModeC', ctermfg: s:modecolors[l:ind][1], ctermbg: '239'}]) - let g:modestring = l:cm - - return '' -endfunction - -set statusline+=%{SLModeSetter()}%#SLModeC#%{leftcap}%#SLMode#%{modestring}%#SLModeC#%{rightcap} -" \______leftcap______/\________mode_______/\______rightcap_____/ - -" Filename - -set statusline+=%#StatusLine#\ %f\ %{rightmcap} - -" File stat - -function! SLReadonly() - return (&ft !~? 'vimfiler' && &readonly) ? ' ' : '' -endfunction - -function! SLModified() - return (&ft =~ 'vimfiler') ? '' : (&modified ? '' : (&modifiable ? '' : '')) -endfunction - -set statusline+=\ %{SLReadonly()}%{SLModified()}\ - -" Middle separator -set statusline+=%= - -" Filetype -set statusline+=%{leftmcap}\ %{WebDevIconsGetFileTypeSymbol()}\ %{&ft}\ - -" Line and column count -hi SLRowCol ctermfg=238 ctermbg=244 -hi SLRowColC ctermfg=244 ctermbg=239 -set statusline+=%#SLRowColC#%{leftcap}%#SLRowCol#%l:%c%#SLRowColC#%{rightcap} diff --git a/.vim/miniplugins/statusline.vim b/.vim/miniplugins/statusline.vim new file mode 100644 index 0000000..92b9f10 --- /dev/null +++ b/.vim/miniplugins/statusline.vim @@ -0,0 +1,81 @@ +" Needed settings +set laststatus=2 +set timeoutlen=1000 ttimeoutlen=10 +set noshowmode + +" call hlset([#{name: 'StatusLine', ctermfg: '252', ctermbg: '239'}]) + +" Logic + +let leftcap = '' +let rightcap = '' +let leftmcap = '' +let rightmcap = '' + +set statusline= +" Mode + +" Values are, in order, for: normal (default), insert, replace, visual modes +" [ctermfg, ctermbg] +let s:modecolors = [ +\ ['236', '117'], +\ ['236', '119'], +\ ['236', '203'], +\ ['236', '216'], +\] + +let modestring = '' + +hi SLMode ctermfg=1 ctermbg=0 +hi SLModeC ctermfg=1 ctermbg=0 + + +function! SLModeSetter() + let cm = mode() + let ind = 0 + + if cm == 'i' + let ind = 1 + elseif cm == 'R' + let ind = 2 + let cm = 'r' + elseif cm == 'v' + let ind = 3 + endif + + call hlset([#{name: 'SLMode', ctermfg: s:modecolors[l:ind][0], ctermbg: s:modecolors[l:ind][1]}]) + call hlset([#{name: 'SLModeC', ctermfg: s:modecolors[l:ind][1], ctermbg: '239'}]) + let g:modestring = l:cm + + return '' +endfunction + +set statusline+=%{SLModeSetter()}%#SLModeC#%{leftcap}%#SLMode#%{modestring}%#SLModeC#%{rightcap} +" \______leftcap______/\________mode_______/\______rightcap_____/ + +" Filename + +set statusline+=%#StatusLine#\ %f\ %{rightmcap} + +" File stat + +function! SLReadonly() + return (&ft !~? 'vimfiler' && &readonly) ? ' ' : '' +endfunction + +function! SLModified() + return (&ft =~ 'vimfiler') ? '' : (&modified ? '' : (&modifiable ? '' : '')) +endfunction + +set statusline+=\ %{SLReadonly()}%{SLModified()}\ + +" Middle separator +set statusline+=%= + +" Filetype +set statusline+=%{leftmcap}\ %{WebDevIconsGetFileTypeSymbol()}\ %{&ft}\ + +" Line and column count +hi SLRowCol ctermfg=238 ctermbg=244 +hi SLRowColC ctermfg=244 ctermbg=239 +set statusline+=%#SLRowColC#%{leftcap}%#SLRowCol#%l:%c%#SLRowColC#%{rightcap} diff --git a/.vimrc b/.vimrc index acae5b9..41f8429 100644 --- a/.vimrc +++ b/.vimrc @@ -1,11 +1,7 @@ -call plug#begin('~/.vim/plugged') - runtime startup/settings.vim runtime startup/mappings.vim -""" -""" Fetched plugins -""" +call plug#begin('~/.vim/plugged') """ Customization Plug 'morhetz/gruvbox', {'rtp': 'vim'} " Color theme @@ -38,14 +34,15 @@ Plug 'bfrg/vim-cpp-modern' " C/C++: Better synta Plug 'itchyny/vim-haskell-indent' " haskell: Adds identation Plug 'vim-scripts/syntaxhaskell.vim' " haskell: Better syntax highlighting +call plug#end() + """ """ Manual plugins """ runtime miniplugins/code_terminal.vim -runtime miniplugins/my_statusline.vim +runtime miniplugins/statusline.vim runtime miniplugins/spell_check_mode.vim runtime startup/pluginsettings.vim -call plug#end() -- cgit v1.2.3