vim: tweak visuals

master
an 2019-07-27 14:35:51 -04:00
parent bafe2ba183
commit fe64c098dd
1 changed files with 75 additions and 78 deletions

153
vim/vimrc
View File

@ -7,26 +7,26 @@ set autochdir
set laststatus=2
" visuals
set statusline=[%{&syntax}]\ %f
set statusline+=%r
set statusline+=%m
set statusline+=\ %{FugitiveStatusline()}
"set statusline+=\ %{tagbar#currenttag('←\ %s\ ','','f')}
set statusline+=\ %=
set statusline=%{StatuslinePrelude()}
set statusline+=%{ModePrint()}
set statusline+=\ %r
set statusline+=\ %{&filetype}
set statusline+=\ %f
set statusline+=%=
set statusline+=\ %m
set statusline+=\ %{FileSize()}
set statusline+=\ %4l:%-3c
set statusline+=\ %4L
set statusline+=\ ↑%4l→%-3c
set statusline+=\ ↓%5L
set statusline+=\ %3p%%
set ruler
set showcmd
set noshowmode
set numberwidth=4
"set relativenumber
"set number
set numberwidth=2
set relativenumber
set colorcolumn=81
set colorcolumn=80
set conceallevel=1
set belloff=all
@ -132,50 +132,6 @@ let g:zig_fmt_autosave=0
" polyglot
let g:polyglot_disabled=['c++11']
" airline
let g:airline_powerline_fonts=1
let g:airline_mode_map = {
\ '__' : '-',
\ 'c' : '/',
\ 'i' : 'I',
\ 'ic' : 'i',
\ 'ix' : 'ï',
\ 'n' : '~',
\ 'multi': 'M',
\ 'ni' : 'N',
\ 'no' : 'n',
\ 'R' : 'R',
\ 'Rv' : 'r',
\ 's' : 's',
\ 'S' : 'S',
\ '' : 'ß',
\ 't' : 't',
\ 'v' : 'v',
\ 'V' : 'V',
\ '' : 'ʌ',
\}
let g:airline#extensions#default#section_truncate_width={}
fu! AirlineInit()
let spc = g:airline_symbols.space
call airline#parts#define_function('mfsize', 'FileSize')
let g:airline_section_a=airline#section#create_left(['mode', 'readonly'])
let g:airline_section_b=airline#section#create(['filetype', 'hunks', 'branch', 'tagbar'])
let g:airline_section_c=airline#section#create(['file'])
let g:airline_section_x=airline#section#create_right([])
let g:airline_section_y=airline#section#create_right(['mfsize'])
let g:airline_section_z=airline#section#create_right(['%4l:%-3c'.spc, '%4L'.spc, '%3p%%'])
let g:airline_section_error=''
let g:airline_section_warning=''
endfu
au User AirlineAfterInit call AirlineInit()
" gui and terminal specific settings
if has('gui_running')
set guicursor+=i:hor10-Cursor
@ -184,7 +140,7 @@ if has('gui_running')
set guitablabel=%N.%t
set lines=24
set columns=80
set columns=83
else
" use 256-color terminal capabilities
set t_Co=256
@ -248,27 +204,20 @@ else
endif
" set up colors and file types
colorscheme quantum
" good color schemes:
" aurora
" badwolf
" candid
" base16-ashes
" base16-atelier-cave
" base16-atelier-forest
" base16-atelier-heath
" base16-atelier-sulphurpool
" base16-circus
" base16-dracula
" base16-material-palenight
" base16-monokai
" base16-onedark
" base16-porple
" base16-unikitty-dark
" base16-zenburn
" plastic
" quantum
let g:good_cr=[
\ 'base16-ashes',
\ 'base16-atelier-cave',
\ 'base16-atelier-forest',
\ 'base16-atelier-heath',
\ 'base16-circus',
\ 'base16-dracula',
\ 'base16-material-palenight',
\ 'base16-monokai',
\ 'base16-onedark',
\ 'base16-porple',
\ 'base16-unikitty-dark',
\]
let g:cr_scheme=-1 " -1 = random
syntax on
@ -301,6 +250,49 @@ fu! FileSize()
endif
endfu
" Mode printer
fu! ModePrint()
let mode_map = {
\ 'n' : '~ ',
\ 'no' : 'n ',
\ 'nov' : 'n→',
\ 'noV' : 'n↓',
\ 'no' : 'n↔',
\ 'niI' : '←i',
\ 'niR' : '←R',
\ 'niV' : '←v',
\ 'v' : 'v→',
\ 'V' : 'v↓',
\ '' : 'v↔',
\ 's' : 's→',
\ 'S' : 's↓',
\ '' : 's↔',
\ 'i' : 'i ',
\ 'ic' : '↗c',
\ 'ix' : '↗x',
\ 'R' : 'R ',
\ 'Rc' : '↗r',
\ 'Rv' : "R'",
\ 'Rx' : '↗X',
\ 'c' : '% ',
\ 'cv' : ":'",
\ 'ce' : ': ',
\ 'r' : '↲ ',
\ 'rm' : '⎬ ',
\ 'r?' : "↲'",
\ '!' : '… ',
\ 't' : '…!',
\ }
return mode_map[mode()]
endfu
" Statusline prelude function
fu! StatuslinePrelude()
hi clear StatusLine
hi StatusLine guibg=#0a0a0a guifg=#92ebf0
return ''
endfu
" Strip whitespace on buffer write
fu! s:StripWhite()
ruby<<
@ -346,6 +338,11 @@ au BufNewFile,BufRead *.s,*.inc setlocal shiftwidth=8 filetype=asm_ca65
" close empty buffers automatically
au BufEnter * call s:CloseEmptyBuffers()
" set color randomly on buffer enter
if g:cr_scheme == -1
au BufEnter * execute 'colorscheme' g:good_cr[localtime() % len(g:good_cr)]
endif
" .rkt → Racket
au BufRead,BufNewFile *.rkt set syntax=racket