Skip to content

Instantly share code, notes, and snippets.

@masala-man
Created October 25, 2022 06:23
Show Gist options
  • Save masala-man/f95bc4b217766c99e58acbec16a5742a to your computer and use it in GitHub Desktop.
Save masala-man/f95bc4b217766c99e58acbec16a5742a to your computer and use it in GitHub Desktop.
Snazzy vim-airline colourscheme for my very specific term setup
" base16-snazzy (sys-dependent version)
" theme format modified from wombat
" colors from sindresorhus/hyper-snazzy & h404bi/base16-snazzy-scheme/
" Made by Ayush Shenoy (masala-man)
"
" BASE16-SNAZZY
let s:base00 = '#282a36'
let s:base01 = '#34353e'
let s:base02 = '#43454f'
let s:base03 = '#78787e'
let s:base04 = '#a5a5a9'
let s:base05 = '#e2e4e5'
let s:base06 = '#eff0eb'
let s:base07 = '#f1f1f0'
let s:base08 = '#ff5c57'
let s:base09 = '#ff9f43'
let s:base0A = '#f3f99d'
let s:base0B = '#5af78e'
let s:base0C = '#9aedfe'
let s:base0D = '#57c7ff'
let s:base0E = '#ff6ac1'
let s:base0F = '#b2643c'
" Normal mode
" [ guifg , guibg , ctermfg , ctermbg , opts ]
let s:N1 = [ s:base00 , s:base0D , 235 , 12 ] " [ color of body and line-info ]
let s:N2 = [ s:base0D , s:base00 , 12 , 0 ] " [ diffcount and file-info ]
let s:N3 = [ s:base0D , s:base00 , 12 , 0 ] " [ filename ]
let s:N4 = [ s:base0D , 12 ] " [ buffer modified ]
" Insert mode
let s:I1 = [ s:base00 , s:base0B , 235 , 2 ]
let s:I2 = [ s:base0B , s:base00 , 2 , 0 ]
let s:I3 = [ s:base0B , s:base00 , 2 , 0 ]
let s:I4 = [ s:base0B , 2 ]
" Visual mode
let s:V1 = [ s:base00 , s:base0A , 235 , 11 ]
let s:V2 = [ s:base0A , s:base00 , 11 , 0 ]
let s:V3 = [ s:base0A , s:base00 , 11 , 0 ]
let s:V4 = [ s:base0A , 11 ]
" Replace mode
let s:R1 = [ s:base00 , s:base08 , 235 , 9 ]
let s:R2 = [ s:base08 , s:base00 , 9 , 0 ]
let s:R3 = [ s:base08 , s:base00 , 9 , 0 ]
let s:R4 = [ s:base08 , 9 ]
" Paste mode
let s:PA = [ s:base0B , 2 ]
" Info modified
let s:IM = [ s:base00 , 0 ]
" Inactive mode
let s:IA = [ '' , s:N3[1] , 0 , 8 , '' ] " [ color of bar on inactive splits ]
let g:airline#themes#snazzy#palette = {}
let g:airline#themes#snazzy#palette.accents = {
\ 'red': [ s:base08 , '' , 203 , '' , '' ]
\ }
let ER = [ s:base00 , s:base08 , 0 , 9 ] " [ error color ]
let WI = [ s:base00 , s:base0A , 0 , 11 ] " [ warning color ]
let g:airline#themes#snazzy#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3)
let g:airline#themes#snazzy#palette.normal_modified = {
\ 'airline_a': [ s:N1[0] , s:N4[0] , s:N1[2] , s:N4[1] , '' ] ,
\ 'airline_b': [ s:N4[0] , s:IM[0] , s:N4[1] , s:IM[1] , '' ] ,
\ 'airline_c': [ s:N4[0] , s:N3[1] , s:N4[1] , s:N3[3] , '' ] }
let g:airline#themes#snazzy#palette.normal.airline_error = ER
let g:airline#themes#snazzy#palette.normal.airline_warning = WI
let g:airline#themes#snazzy#palette.normal_modified.airline_error = ER
let g:airline#themes#snazzy#palette.normal_modified.airline_warning = WI
let g:airline#themes#snazzy#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3)
let g:airline#themes#snazzy#palette.insert_modified = {
\ 'airline_a': [ s:I1[0] , s:I4[0] , s:I1[2] , s:I4[1] , '' ] ,
\ 'airline_b': [ s:I4[0] , s:IM[0] , s:I4[1] , s:IM[1] , '' ] ,
\ 'airline_c': [ s:I4[0] , s:N3[1] , s:I4[1] , s:N3[3] , '' ] }
let g:airline#themes#snazzy#palette.insert.airline_error = ER
let g:airline#themes#snazzy#palette.insert.airline_warning = WI
let g:airline#themes#snazzy#palette.insert_modified.airline_error = ER
let g:airline#themes#snazzy#palette.insert_modified.airline_warning = WI
let g:airline#themes#snazzy#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3)
let g:airline#themes#snazzy#palette.visual_modified = {
\ 'airline_a': [ s:V1[0] , s:V4[0] , s:V1[2] , s:V4[1] , '' ] ,
\ 'airline_b': [ s:V4[0] , s:IM[0] , s:V4[1] , s:IM[1] , '' ] ,
\ 'airline_c': [ s:V4[0] , s:N3[1] , s:V4[1] , s:N3[3] , '' ] }
let g:airline#themes#snazzy#palette.visual.airline_error = ER
let g:airline#themes#snazzy#palette.visual.airline_warning = WI
let g:airline#themes#snazzy#palette.visual_modified.airline_error = ER
let g:airline#themes#snazzy#palette.visual_modified.airline_warning = WI
let g:airline#themes#snazzy#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3)
let g:airline#themes#snazzy#palette.replace_modified = {
\ 'airline_a': [ s:R1[0] , s:R4[0] , s:R1[2] , s:R4[1] , '' ] ,
\ 'airline_b': [ s:R4[0] , s:IM[0] , s:R4[1] , s:IM[1] , '' ] ,
\ 'airline_c': [ s:R4[0] , s:N3[1] , s:R4[1] , s:N3[3] , '' ] }
let g:airline#themes#snazzy#palette.replace.airline_error = ER
let g:airline#themes#snazzy#palette.replace.airline_warning = WI
let g:airline#themes#snazzy#palette.replace_modified.airline_error = ER
let g:airline#themes#snazzy#palette.replace_modified.airline_warning = WI
let g:airline#themes#snazzy#palette.insert_paste = {
\ 'airline_a': [ s:I1[0] , s:PA[0] , s:I1[2] , s:PA[1] , '' ] ,
\ 'airline_b': [ s:PA[0] , s:IM[0] , s:PA[1] , s:IM[1] , '' ] ,
\ 'airline_c': [ s:PA[0] , s:N3[1] , s:PA[1] , s:N3[3] , '' ] }
let g:airline#themes#snazzy#palette.insert_paste.airline_error = ER
let g:airline#themes#snazzy#palette.insert_paste.airline_warning = WI
let g:airline#themes#snazzy#palette.inactive = airline#themes#generate_color_map(s:IA, s:IA, s:IA)
let g:airline#themes#snazzy#palette.inactive_modified = {
\ 'airline_c': [ s:N4[0] , '' , s:N4[1] , '' , '' ] }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment