if ! exists("b:iainhex")
let b:iainhex = 0
endif
+ if ! exists("b:iainverbose")
+ let b:iainverbose = 0
+ endif
endfun
" Helper for status line.
fun! Show_StatusLine()
call Iain_Vars()
let sl1='%2n\:\ %<%f\ [%{Show_List()}%{Show_Case()}%{Show_Tabstop()}%{Show_Paste()}%Y%M%R]\ %='
- let sl2='\ \|\ P:%4.6o\ L:%4.6l/%-4.6L\ C:%3.6c\ \|\ %P'
+ let sl3='L:%4.6l/%-4.6L\ C:%3.6c\ \|\ %P'
let hexformat='%b'
if b:iainhex
let hexformat='0\x%02B'
endif
- exec "set statusline=" . sl1 . hexformat . sl2
+ if b:iainverbose
+ let sl2=hexformat . '\ \|\ P:%4.6o\ '
+ else
+ let sl2=''
+ endif
+ exec "set statusline=" . sl1 . sl2 . sl3
endfun
" Restore window size.
call Show_StatusLine()
endfun
+" Cycle verbose display of toolbar stuff.
+fun! Cycle_VerboseStatusLine()
+ call Iain_Vars()
+ let b:iainverbose = ! b:iainverbose
+ call Show_StatusLine()
+endfun
+
" Cycle between number mode.
" FIXME: Toggling in a split window doesn't work properly. We need to track
" the number of windows and number modes. Something for later...
map Qp :se paste!<CR>:<CR>
" Swap hex/decimal statusline with Qx
map Qx :call Cycle_HexStatusLine()<CR>:<CR>
+" Change statusline verbosity with Qv
+map Qv :call Cycle_VerboseStatusLine()<CR>:<CR>
" Swap case-sensitivity with Qc.
map Qc :call Invert_Case()<CR>:<CR>
" Cycle list styles with Ql.