Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
89 changes: 31 additions & 58 deletions autoload/airline/themes/nord.vim
Original file line number Diff line number Diff line change
Expand Up @@ -8,61 +8,34 @@
let s:nord_vim_version="0.8.0"
let g:airline#themes#nord#palette = {}

let s:nord0_gui = "#2E3440"
let s:nord1_gui = "#3B4252"
let s:nord2_gui = "#434C5E"
let s:nord3_gui = "#4C566A"
let s:nord4_gui = "#D8DEE9"
let s:nord5_gui = "#E5E9F0"
let s:nord6_gui = "#ECEFF4"
let s:nord7_gui = "#8FBCBB"
let s:nord8_gui = "#88C0D0"
let s:nord9_gui = "#81A1C1"
let s:nord10_gui = "#5E81AC"
let s:nord11_gui = "#BF616A"
let s:nord12_gui = "#D08770"
let s:nord13_gui = "#EBCB8B"
let s:nord14_gui = "#A3BE8C"
let s:nord15_gui = "#B48EAD"

let s:nord0_term = "NONE"
let s:nord1_term = "0"
let s:nord2_term = "NONE"
let s:nord4_term = "NONE"
let s:nord11_term = "1"
let s:nord14_term = "2"
let s:nord13_term = "3"
let s:nord9_term = "4"
let s:nord15_term = "5"
let s:nord8_term = "6"
let s:nord5_term = "7"
let s:nord3_term = "8"
let s:nord12_term = "11"
let s:nord10_term = "12"
let s:nord7_term = "14"
let s:nord6_term = "15"

let s:NMain = [s:nord1_gui, s:nord8_gui, s:nord1_term, s:nord8_term]
let s:NRight = [s:nord1_gui, s:nord9_gui, s:nord1_term, s:nord9_term]
let s:NMiddle = [s:nord4_gui, s:nord3_gui, s:nord4_term, s:nord3_term]
let g:airline#themes#nord#palette.normal = airline#themes#generate_color_map(s:NMain, s:NRight, s:NMiddle)

let s:IMain = [s:nord1_gui, s:nord14_gui, s:nord1_term, s:nord6_term]
let s:IRight = [s:nord1_gui, s:nord9_gui, s:nord1_term, s:nord9_term]
let s:IMiddle = [s:nord4_gui, s:nord3_gui, s:nord4_term, s:nord3_term]
let g:airline#themes#nord#palette.insert = airline#themes#generate_color_map(s:IMain, s:IRight, s:IMiddle)

let s:RMain = [s:nord1_gui, s:nord14_gui, s:nord1_term, s:nord14_term]
let s:RRight = [s:nord1_gui, s:nord9_gui, s:nord1_term, s:nord9_term]
let s:RMiddle = [s:nord4_gui, s:nord3_gui, s:nord4_term, s:nord3_term]
let g:airline#themes#nord#palette.replace = airline#themes#generate_color_map(s:RMain, s:RRight, s:RMiddle)

let s:VMain = [s:nord1_gui, s:nord7_gui, s:nord1_term, s:nord7_term]
let s:VRight = [s:nord1_gui, s:nord9_gui, s:nord1_term, s:nord9_term]
let s:VMiddle = [s:nord4_gui, s:nord3_gui, s:nord4_term, s:nord3_term]
let g:airline#themes#nord#palette.visual = airline#themes#generate_color_map(s:VMain, s:VRight, s:VMiddle)

let s:IAMain = [s:nord4_gui, s:nord3_gui, s:nord4_term, s:nord3_term]
let s:IARight = [s:nord4_gui, s:nord3_gui, s:nord4_term, s:nord3_term]
let s:IAMiddle = [s:nord4_gui, s:nord1_gui, s:nord4_term, s:nord1_term]
let g:airline#themes#nord#palette.inactive = airline#themes#generate_color_map(s:IAMain, s:IARight, s:IAMiddle)
let s:nord_gui = [
\ '#2E3440', '#3B4252', '#434C5E', '#4C566A', '#D8DEE9', '#E5E9F0',
\ '#ECEFF4', '#8FBCBB', '#88C0D0', '#81A1C1', '#5E81AC', '#BF616A',
\ '#D08770', '#EBCB8B', '#A3BE8C', '#B48EAD'
\ ]

let s:nord_term = [
\ 'NONE', '0', 'NONE', '8', 'NONE', '7', '15', '14', '6', '4', '12', '1',
\ '11', '3', '2', '5'
\ ]

let s:defaults = {
\ 'normal': [1, 8, 1, 9, 4, 3],
\ 'insert': [1, 6, 1, 9, 4, 3],
\ 'replace': [1, 14, 1, 9, 4, 3],
\ 'visual': [1, 7, 1, 9, 4, 3],
\ 'inactive': [4, 3, 4, 3, 4, 1]
\ }

for s:mode in keys(s:defaults)
let s:mainFg = get(g:, 'nord_airline_'.s:mode.'_main_fg', s:defaults[s:mode][0])
let s:mainBg = get(g:, 'nord_airline_'.s:mode.'_main_bg', s:defaults[s:mode][1])
let s:rightFg = get(g:, 'nord_airline_'.s:mode.'_right_fg', s:defaults[s:mode][2])
let s:rightBg = get(g:, 'nord_airline_'.s:mode.'_right_bg', s:defaults[s:mode][3])
let s:middleFg = get(g:, 'nord_airline_'.s:mode.'_middle_fg', s:defaults[s:mode][4])
let s:middleBg = get(g:, 'nord_airline_'.s:mode.'_middle_bg', s:defaults[s:mode][5])
let s:main = [ s:nord_gui[s:mainFg] , s:nord_gui[s:mainBg] , s:nord_term[s:mainFg] , s:nord_term[s:mainBg] ]
let s:right = [ s:nord_gui[s:rightFg] , s:nord_gui[s:rightBg] , s:nord_term[s:rightFg] , s:nord_term[s:rightBg] ]
let s:middle = [ s:nord_gui[s:middleFg] , s:nord_gui[s:middleBg] , s:nord_term[s:middleFg] , s:nord_term[s:middleBg] ]
let g:airline#themes#nord#palette[s:mode] = airline#themes#generate_color_map(s:main, s:right, s:middle)
endfor