surarken.vim 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. " define an array thing for the palette
  2. let g:airline#themes#surarken#palette = {}
  3. let gui_bae_blue = "#00afff"
  4. let gui_bg = "#1c1c1c"
  5. let gui_blurple = "#5f5fff"
  6. let gui_cyan = "#00ffff"
  7. let gui_bleu1 = "#00005f"
  8. let gui_bleu2 = "#005fd7"
  9. let gui_gray1 = "#262626"
  10. let gui_gray2 = "#303030"
  11. let gui_gray3 = "#444444"
  12. let gui_gray4 = "#8a8a8a"
  13. let gui_gray5 = "#b2b2b2"
  14. let gui_near_dark = "#080808"
  15. let gui_pinkeon = "#ff00ff"
  16. let gui_purple = "#5f00af"
  17. let gui_sxbg = "#005f87"
  18. let gui_sxfg = "#00d7ff"
  19. let gui_scbg = "#005f87"
  20. let gui_scfg = "#00d7ff"
  21. let gui_pinkish = "#af5fff"
  22. let gui_white1 = "#eeeeee"
  23. let gui_white2 = "#ffffff"
  24. let bae_blue = 39
  25. let bg = 234
  26. let blurple = 63
  27. let cyan = 51
  28. let bleu1 = 17
  29. let bleu2 = 26
  30. let gray1 = 235
  31. let gray2 = 236
  32. let gray3 = 238
  33. let gray4 = 245
  34. let gray5 = 249
  35. let near_dark = 232
  36. let pinkeon = 201
  37. let purple = 55
  38. let sxbg = 24 " section X background
  39. let sxfg = 45 " section X foreground
  40. let scbg = sxbg " section C background
  41. let scfg = sxfg " section C foreground
  42. let pinkish = 135
  43. let white1 = 255
  44. let white2 = 231
  45. """""""""""""""""""""""""""""""
  46. " Colour mapping and variables
  47. " define and create NORMAL mode colours
  48. let s:N1 = [ gui_bleu1, gui_bae_blue , bleu1 , bae_blue , 'NONE' ]
  49. let s:N2 = [ gui_cyan , gui_bleu2 , cyan , bleu2 , 'NONE' ]
  50. let s:N3 = [ gui_scfg , gui_scbg , scfg , scbg , 'NONE' ]
  51. let g:airline#themes#surarken#palette.normal =
  52. \ airline#themes#generate_color_map(s:N1, s:N2, s:N3)
  53. " define and create INSERT mode colours
  54. let s:I1 = [ gui_white2 , gui_pinkeon, white2 , pinkeon , 'NONE' ]
  55. let s:I2 = [ gui_cyan , gui_purple , cyan , purple , 'NONE' ]
  56. let s:I3 = [ gui_near_dark, gui_blurple, near_dark , blurple , 'NONE' ]
  57. let g:airline#themes#surarken#palette.insert =
  58. \ airline#themes#generate_color_map(s:I1, s:I2, s:I3)
  59. " define and create VISUAL[LINE|BLOCK] colours
  60. let s:V1 = [ gui_white2 , gui_pinkeon, white2 , pinkeon , 'NONE' ]
  61. let s:V2 = [ gui_cyan , gui_purple , cyan , purple , 'NONE' ]
  62. let s:V3 = [ gui_near_dark, gui_blurple, near_dark , blurple , 'NONE' ]
  63. let g:airline#themes#surarken#palette.visual =
  64. \ airline#themes#generate_color_map(s:V1, s:V2, s:V3)
  65. " define and create INACTIVE mode colours
  66. let s:IA1 = [ gui_gray4, gui_bg , gray4, bg , 'NONE' ]
  67. let s:IA2 = [ gui_gray4, gui_gray1, gray4, gray1, 'NONE' ]
  68. let s:IA3 = [ gui_gray4, gui_gray2, gray4, gray2, 'NONE' ]
  69. let g:airline#themes#surarken#palette.inactive =
  70. \ airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3)
  71. """"""""""""""""""""""""
  72. " Normal settings
  73. " to work around Section X from defaulting to bold
  74. let g:airline#themes#surarken#palette.normal.airline_x =
  75. \ [ gui_sxfg, gui_sxbg, sxfg, sxbg, 'NONE' ]
  76. " what should happen when the buffer is modified during normal mode?
  77. let g:airline#themes#surarken#palette.normal_modified =
  78. \ {
  79. \ 'airline_x': [ gui_white1, gui_pinkeon, white1, pinkeon, 'bold' ],
  80. \ 'airline_c': [ gui_white1, gui_pinkeon, white1, pinkeon, 'bold' ]
  81. \ }
  82. """"""""""""""""""""""""
  83. " Insert settings
  84. " what should happen when the buffer is modified during insert mode?
  85. let g:airline#themes#surarken#palette.insert_modified =
  86. \ {
  87. \ 'airline_x': [ gui_white1, gui_pinkeon, white1, pinkeon, 'bold' ],
  88. \ 'airline_c': [ gui_white1, gui_pinkeon, white1, pinkeon, 'bold' ]
  89. \ }
  90. let g:airline#themes#surarken#palette.insert_paste =
  91. \ { 'airline_a': [ gui_white2, gui_pinkish, white2, pinkish, '' ] }
  92. """"""""""""""""""""""""
  93. " Replace settings
  94. " copy colours from INSERT mode to use for REPLACE
  95. let g:airline#themes#surarken#palette.replace =
  96. \ copy(g:airline#themes#surarken#palette.insert)
  97. " change Section A colour
  98. let g:airline#themes#surarken#palette.replace.airline_a =
  99. \ [ gui_cyan, gui_bae_blue, bleu1, bae_blue, '' ]
  100. " what should happen when the buffer is modified during replace mode?
  101. let g:airline#themes#surarken#palette.replace_modified =
  102. \ g:airline#themes#surarken#palette.insert_modified
  103. """"""""""""""""""""""""
  104. " Visual settings
  105. " what should happen when the buffer is modified during a visual mode?
  106. let g:airline#themes#surarken#palette.visual_modified =
  107. \ {
  108. \ 'airline_x': [ gui_white1, gui_pinkeon, white1, pinkeon, 'bold' ],
  109. \ 'airline_c': [ gui_gray2 , gui_pinkeon, gray2 , pinkeon, 'bold' ]
  110. \ }
  111. """"""""""""""""""""""""
  112. " Inactive settings
  113. " to work around it defaulting to bold O_o...?
  114. let g:airline#themes#surarken#palette.inactive.airline_c =
  115. \ [ gui_gray5 , gui_gray3, gray5, gray3, 'NONE' ]
  116. let g:airline#themes#surarken#palette.inactive.airline_x =
  117. \ [ gui_gray5 , gui_gray3, gray5, gray3, 'NONE' ]
  118. let g:airline#themes#surarken#palette.inactive.airline_y =
  119. \ [ gui_gray5 , gui_gray2, gray5, gray2, 'NONE' ]
  120. let g:airline#themes#surarken#palette.inactive.airline_z =
  121. \ [ gui_gray5 , gui_bg, gray5, bg, 'NONE' ]
  122. " what should happen when the buffer is modified during inactive mode?
  123. let g:airline#themes#surarken#palette.inactive_modified =
  124. \ {
  125. \ 'airline_c' : [ gui_white2 , '', white2, '', 'bold' ],
  126. \ 'airline_x' : [ gui_white2 , '', white2, '', 'bold' ],
  127. \ 'airline_y' : [ gui_white2 , '', white2, '', 'bold' ],
  128. \ 'airline_z' : [ gui_white2 , '', white2, '', 'bold' ]
  129. \ }
  130. """"""""""""""""""""""""
  131. " Warning colours
  132. let warning_colour = [ gui_near_dark, gui_blurple, near_dark, blurple , '' ]
  133. let g:airline#themes#surarken#palette.normal.airline_warning =
  134. \ warning_colour
  135. let g:airline#themes#surarken#palette.normal_modified.airline_warning =
  136. \ warning_colour
  137. let g:airline#themes#surarken#palette.insert.airline_warning =
  138. \ warning_colour
  139. let g:airline#themes#surarken#palette.insert_modified.airline_warning =
  140. \ warning_colour
  141. let g:airline#themes#surarken#palette.visual.airline_warning =
  142. \ warning_colour
  143. let g:airline#themes#surarken#palette.visual_modified.airline_warning =
  144. \ warning_colour
  145. let g:airline#themes#surarken#palette.replace.airline_warning =
  146. \ warning_colour
  147. let g:airline#themes#surarken#palette.replace_modified.airline_warning =
  148. \ warning_colour
  149. """"""""""""""""""""""""
  150. " Airline tab settings
  151. " airline_tab - unfocused tab
  152. " airline_tabsel - focused tab
  153. " airline_tabtype - that pink shit in the corner
  154. " airline_tabfill - the unused filler portion
  155. " airline_tabmod - modified buffer
  156. let g:airline#themes#surarken#palette.tabline =
  157. \ {
  158. \ 'airline_tab' : [ gui_cyan , gui_gray2 , cyan , gray2 , '' ],
  159. \ 'airline_tabsel' : [ gui_near_dark, gui_blurple, near_dark, blurple, '' ],
  160. \ 'airline_tabtype' : [ gui_near_dark, gui_blurple, near_dark, blurple, 'bold' ],
  161. \ 'airline_tabfill' : [ gui_white1 , gui_gray2 , white1 , gray2 , '' ],
  162. \ 'airline_tabmod' : [ gui_white2 , gui_pinkeon, white2 , pinkeon, 'bold' ]
  163. \ }
  164. " !! in order for this to work with any other name,
  165. " one would need to change the readonly portion in init.vim to say cyan
  166. " rather than red.
  167. let g:airline#themes#surarken#palette.accents =
  168. \ {
  169. \ 'red' : [ gui_cyan, '', cyan, '' ]
  170. \ }