diff --git a/autoload/airline/themes/onedark.vim b/autoload/airline/themes/onedark.vim index a914592..052b668 100644 --- a/autoload/airline/themes/onedark.vim +++ b/autoload/airline/themes/onedark.vim @@ -6,15 +6,35 @@ " It is based on vim-airline's ["tomorrow" theme](https://github.com/vim-airline/vim-airline-themes/blob/master/autoload/airline/themes/tomorrow.vim). function! airline#themes#onedark#refresh() + if get(g:, 'onedark_termcolors', 256) == 16 + let s:term_red = 1 + let s:term_green = 2 + let s:term_yellow = 3 + let s:term_blue = 4 + let s:term_purple = 5 + let s:term_white = 7 + let s:term_black = 0 + let s:term_visual_grey = 15 + else + let s:term_red = 204 + let s:term_green = 114 + let s:term_yellow = 180 + let s:term_blue = 39 + let s:term_purple = 170 + let s:term_white = 145 + let s:term_black = 235 + let s:term_visual_grey = 237 + endif + let g:airline#themes#onedark#palette = {} let g:airline#themes#onedark#palette.accents = { - \ 'red': [ '#E06C75', '', 204, 0 ] + \ 'red': [ '#E06C75', '', s:term_red, 0 ] \ } - let s:N1 = [ '#282C34', '#98C379', 235, 114 ] - let s:N2 = [ '#ABB2BF', '#3E4452', 145, 237 ] - let s:N3 = [ '#98C379', '#282C34', 114, '' ] + let s:N1 = [ '#282C34', '#98C379', s:term_black, s:term_green ] + let s:N2 = [ '#ABB2BF', '#3E4452', s:term_white, s:term_visual_grey ] + let s:N3 = [ '#98C379', '#282C34', s:term_green, '' ] let g:airline#themes#onedark#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) let group = airline#themes#get_highlight('vimCommand') @@ -22,26 +42,26 @@ function! airline#themes#onedark#refresh() \ 'airline_c': [ group[0], '', group[2], '', '' ] \ } - let s:I1 = [ '#282C34', '#61AFEF', 235, 39 ] + let s:I1 = [ '#282C34', '#61AFEF', s:term_black, s:term_blue ] let s:I2 = s:N2 - let s:I3 = [ '#61AFEF', '#282C34', 39, '' ] + let s:I3 = [ '#61AFEF', '#282C34', s:term_blue, '' ] let g:airline#themes#onedark#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) let g:airline#themes#onedark#palette.insert_modified = g:airline#themes#onedark#palette.normal_modified - let s:R1 = [ '#282C34', '#E06C75', 235, 204 ] + let s:R1 = [ '#282C34', '#E06C75', s:term_black, s:term_red ] let s:R2 = s:N2 - let s:R3 = [ '#E06C75', '#282C34', 204, '' ] + let s:R3 = [ '#E06C75', '#282C34', s:term_red, '' ] let g:airline#themes#onedark#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) let g:airline#themes#onedark#palette.replace_modified = g:airline#themes#onedark#palette.normal_modified - let s:V1 = [ '#282C34', '#C678DD', 235, 170 ] + let s:V1 = [ '#282C34', '#C678DD', s:term_black, s:term_purple ] let s:V2 = s:N2 - let s:V3 = [ '#C678DD', '#282C34', 170, '' ] + let s:V3 = [ '#C678DD', '#282C34', s:term_purple, '' ] let g:airline#themes#onedark#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) let g:airline#themes#onedark#palette.visual_modified = g:airline#themes#onedark#palette.normal_modified - let s:IA1 = [ '#282C34', '#ABB2BF', 235, 145 ] - let s:IA2 = [ '#ABB2BF', '#3E4452', 145, 237 ] + let s:IA1 = [ '#282C34', '#ABB2BF', s:term_black, s:term_white ] + let s:IA2 = [ '#ABB2BF', '#3E4452', s:term_white, s:term_visual_grey ] let s:IA3 = s:N2 let g:airline#themes#onedark#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) let g:airline#themes#onedark#palette.inactive_modified = { @@ -51,7 +71,7 @@ function! airline#themes#onedark#refresh() " Warning/Error styling code from vim-airline's ["base16" theme](https://github.com/vim-airline/vim-airline-themes/blob/master/autoload/airline/themes/base16.vim) " Warnings - let s:WI = [ '#282C34', '#E5C07B', 235, 180 ] + let s:WI = [ '#282C34', '#E5C07B', s:term_black, s:term_yellow ] let g:airline#themes#onedark#palette.normal.airline_warning = [ \ s:WI[0], s:WI[1], s:WI[2], s:WI[3] \ ] @@ -78,7 +98,7 @@ function! airline#themes#onedark#refresh() \ g:airline#themes#onedark#palette.normal.airline_warning " Errors - let s:ER = [ '#282C34', '#E06C75', 235, 204 ] + let s:ER = [ '#282C34', '#E06C75', s:term_black, s:term_red ] let g:airline#themes#onedark#palette.normal.airline_error = [ \ s:ER[0], s:ER[1], s:ER[2], s:ER[3] \ ] diff --git a/autoload/lightline/colorscheme/onedark.vim b/autoload/lightline/colorscheme/onedark.vim index f74ba11..a87dba6 100644 --- a/autoload/lightline/colorscheme/onedark.vim +++ b/autoload/lightline/colorscheme/onedark.vim @@ -3,14 +3,34 @@ " This is a [lightline.vim](https://github.com/itchyny/lightline.vim) colorscheme for use with " the [onedark.vim](https://github.com/joshdick/onedark.vim) colorscheme. -let s:black = [ '#282C34', 235 ] -let s:blue = [ '#61AFEF', 39 ] -let s:green = [ '#98C379', 114 ] -let s:grey = [ '#3E4452', 237 ] -let s:purple = [ '#C678DD', 170 ] -let s:red = [ '#E06C75', 204 ] -let s:white = [ '#ABB2BF', 145 ] -let s:yellow = [ '#E5C07B', 180 ] +if get(g:, 'onedark_termcolors', 256) == 16 + let s:term_red = 1 + let s:term_green = 2 + let s:term_yellow = 3 + let s:term_blue = 4 + let s:term_purple = 5 + let s:term_white = 7 + let s:term_black = 0 + let s:term_visual_grey = 15 +else + let s:term_red = 204 + let s:term_green = 114 + let s:term_yellow = 180 + let s:term_blue = 39 + let s:term_purple = 170 + let s:term_white = 145 + let s:term_black = 235 + let s:term_visual_grey = 237 +endif + +let s:red = [ '#E06C75', s:term_red ] +let s:green = [ '#98C379', s:term_green ] +let s:yellow = [ '#E5C07B', s:term_yellow ] +let s:blue = [ '#61AFEF', s:term_blue ] +let s:purple = [ '#C678DD', s:term_purple ] +let s:white = [ '#ABB2BF', s:term_white ] +let s:black = [ '#282C34', s:term_black ] +let s:grey = [ '#3E4452', s:term_visual_grey ] let s:p = {'normal': {}, 'inactive': {}, 'insert': {}, 'replace': {}, 'visual': {}, 'tabline': {}} let s:p.normal.left = [ [ s:black, s:green ], [ s:white, s:grey ] ] diff --git a/build/templates/airline.template.vim b/build/templates/airline.template.vim index 4c75539..aadf49c 100644 --- a/build/templates/airline.template.vim +++ b/build/templates/airline.template.vim @@ -6,15 +6,35 @@ " It is based on vim-airline's ["tomorrow" theme](https://github.com/vim-airline/vim-airline-themes/blob/master/autoload/airline/themes/tomorrow.vim). function! airline#themes#onedark#refresh() + if get(g:, 'onedark_termcolors', 256) == 16 + let s:term_red = {{=it.red.cterm16}} + let s:term_green = {{=it.green.cterm16}} + let s:term_yellow = {{=it.yellow.cterm16}} + let s:term_blue = {{=it.blue.cterm16}} + let s:term_purple = {{=it.purple.cterm16}} + let s:term_white = {{=it.white.cterm16}} + let s:term_black = {{=it.black.cterm16}} + let s:term_visual_grey = {{=it.visual_grey.cterm16}} + else + let s:term_red = {{=it.red.cterm}} + let s:term_green = {{=it.green.cterm}} + let s:term_yellow = {{=it.yellow.cterm}} + let s:term_blue = {{=it.blue.cterm}} + let s:term_purple = {{=it.purple.cterm}} + let s:term_white = {{=it.white.cterm}} + let s:term_black = {{=it.black.cterm}} + let s:term_visual_grey = {{=it.visual_grey.cterm}} + endif + let g:airline#themes#onedark#palette = {} let g:airline#themes#onedark#palette.accents = { - \ 'red': [ '{{=it.red.gui}}', '', {{=it.red.cterm}}, 0 ] + \ 'red': [ '{{=it.red.gui}}', '', s:term_red, 0 ] \ } - let s:N1 = [ '{{=it.black.gui}}', '{{=it.green.gui}}', {{=it.black.cterm}}, {{=it.green.cterm}} ] - let s:N2 = [ '{{=it.white.gui}}', '{{=it.visual_grey.gui}}', {{=it.white.cterm}}, {{=it.visual_grey.cterm}} ] - let s:N3 = [ '{{=it.green.gui}}', '{{=it.black.gui}}', {{=it.green.cterm}}, '' ] + let s:N1 = [ '{{=it.black.gui}}', '{{=it.green.gui}}', s:term_black, s:term_green ] + let s:N2 = [ '{{=it.white.gui}}', '{{=it.visual_grey.gui}}', s:term_white, s:term_visual_grey ] + let s:N3 = [ '{{=it.green.gui}}', '{{=it.black.gui}}', s:term_green, '' ] let g:airline#themes#onedark#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) let group = airline#themes#get_highlight('vimCommand') @@ -22,26 +42,26 @@ function! airline#themes#onedark#refresh() \ 'airline_c': [ group[0], '', group[2], '', '' ] \ } - let s:I1 = [ '{{=it.black.gui}}', '{{=it.blue.gui}}', {{=it.black.cterm}}, {{=it.blue.cterm}} ] + let s:I1 = [ '{{=it.black.gui}}', '{{=it.blue.gui}}', s:term_black, s:term_blue ] let s:I2 = s:N2 - let s:I3 = [ '{{=it.blue.gui}}', '{{=it.black.gui}}', {{=it.blue.cterm}}, '' ] + let s:I3 = [ '{{=it.blue.gui}}', '{{=it.black.gui}}', s:term_blue, '' ] let g:airline#themes#onedark#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) let g:airline#themes#onedark#palette.insert_modified = g:airline#themes#onedark#palette.normal_modified - let s:R1 = [ '{{=it.black.gui}}', '{{=it.red.gui}}', {{=it.black.cterm}}, {{=it.red.cterm}} ] + let s:R1 = [ '{{=it.black.gui}}', '{{=it.red.gui}}', s:term_black, s:term_red ] let s:R2 = s:N2 - let s:R3 = [ '{{=it.red.gui}}', '{{=it.black.gui}}', {{=it.red.cterm}}, '' ] + let s:R3 = [ '{{=it.red.gui}}', '{{=it.black.gui}}', s:term_red, '' ] let g:airline#themes#onedark#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) let g:airline#themes#onedark#palette.replace_modified = g:airline#themes#onedark#palette.normal_modified - let s:V1 = [ '{{=it.black.gui}}', '{{=it.purple.gui}}', {{=it.black.cterm}}, {{=it.purple.cterm}} ] + let s:V1 = [ '{{=it.black.gui}}', '{{=it.purple.gui}}', s:term_black, s:term_purple ] let s:V2 = s:N2 - let s:V3 = [ '{{=it.purple.gui}}', '{{=it.black.gui}}', {{=it.purple.cterm}}, '' ] + let s:V3 = [ '{{=it.purple.gui}}', '{{=it.black.gui}}', s:term_purple, '' ] let g:airline#themes#onedark#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) let g:airline#themes#onedark#palette.visual_modified = g:airline#themes#onedark#palette.normal_modified - let s:IA1 = [ '{{=it.black.gui}}', '{{=it.white.gui}}', {{=it.black.cterm}}, {{=it.white.cterm}} ] - let s:IA2 = [ '{{=it.white.gui}}', '{{=it.visual_grey.gui}}', {{=it.white.cterm}}, {{=it.visual_grey.cterm}} ] + let s:IA1 = [ '{{=it.black.gui}}', '{{=it.white.gui}}', s:term_black, s:term_white ] + let s:IA2 = [ '{{=it.white.gui}}', '{{=it.visual_grey.gui}}', s:term_white, s:term_visual_grey ] let s:IA3 = s:N2 let g:airline#themes#onedark#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) let g:airline#themes#onedark#palette.inactive_modified = { @@ -51,7 +71,7 @@ function! airline#themes#onedark#refresh() " Warning/Error styling code from vim-airline's ["base16" theme](https://github.com/vim-airline/vim-airline-themes/blob/master/autoload/airline/themes/base16.vim) " Warnings - let s:WI = [ '{{=it.black.gui}}', '{{=it.yellow.gui}}', {{=it.black.cterm}}, {{=it.yellow.cterm}} ] + let s:WI = [ '{{=it.black.gui}}', '{{=it.yellow.gui}}', s:term_black, s:term_yellow ] let g:airline#themes#onedark#palette.normal.airline_warning = [ \ s:WI[0], s:WI[1], s:WI[2], s:WI[3] \ ] @@ -78,7 +98,7 @@ function! airline#themes#onedark#refresh() \ g:airline#themes#onedark#palette.normal.airline_warning " Errors - let s:ER = [ '{{=it.black.gui}}', '{{=it.red.gui}}', {{=it.black.cterm}}, {{=it.red.cterm}} ] + let s:ER = [ '{{=it.black.gui}}', '{{=it.red.gui}}', s:term_black, s:term_red ] let g:airline#themes#onedark#palette.normal.airline_error = [ \ s:ER[0], s:ER[1], s:ER[2], s:ER[3] \ ] diff --git a/build/templates/lightline.template.vim b/build/templates/lightline.template.vim index 6dbfb33..685c118 100644 --- a/build/templates/lightline.template.vim +++ b/build/templates/lightline.template.vim @@ -3,14 +3,34 @@ " This is a [lightline.vim](https://github.com/itchyny/lightline.vim) colorscheme for use with " the [onedark.vim](https://github.com/joshdick/onedark.vim) colorscheme. -let s:black = [ '{{=it.black.gui}}', {{=it.black.cterm}} ] -let s:blue = [ '{{=it.blue.gui}}', {{=it.blue.cterm}} ] -let s:green = [ '{{=it.green.gui}}', {{=it.green.cterm}} ] -let s:grey = [ '{{=it.visual_grey.gui}}', {{=it.visual_grey.cterm}} ] -let s:purple = [ '{{=it.purple.gui}}', {{=it.purple.cterm}} ] -let s:red = [ '{{=it.red.gui}}', {{=it.red.cterm}} ] -let s:white = [ '{{=it.white.gui}}', {{=it.white.cterm}} ] -let s:yellow = [ '{{=it.yellow.gui}}', {{=it.yellow.cterm}} ] +if get(g:, 'onedark_termcolors', 256) == 16 + let s:term_red = {{=it.red.cterm16}} + let s:term_green = {{=it.green.cterm16}} + let s:term_yellow = {{=it.yellow.cterm16}} + let s:term_blue = {{=it.blue.cterm16}} + let s:term_purple = {{=it.purple.cterm16}} + let s:term_white = {{=it.white.cterm16}} + let s:term_black = {{=it.black.cterm16}} + let s:term_visual_grey = {{=it.visual_grey.cterm16}} +else + let s:term_red = {{=it.red.cterm}} + let s:term_green = {{=it.green.cterm}} + let s:term_yellow = {{=it.yellow.cterm}} + let s:term_blue = {{=it.blue.cterm}} + let s:term_purple = {{=it.purple.cterm}} + let s:term_white = {{=it.white.cterm}} + let s:term_black = {{=it.black.cterm}} + let s:term_visual_grey = {{=it.visual_grey.cterm}} +endif + +let s:red = [ '{{=it.red.gui}}', s:term_red ] +let s:green = [ '{{=it.green.gui}}', s:term_green ] +let s:yellow = [ '{{=it.yellow.gui}}', s:term_yellow ] +let s:blue = [ '{{=it.blue.gui}}', s:term_blue ] +let s:purple = [ '{{=it.purple.gui}}', s:term_purple ] +let s:white = [ '{{=it.white.gui}}', s:term_white ] +let s:black = [ '{{=it.black.gui}}', s:term_black ] +let s:grey = [ '{{=it.visual_grey.gui}}', s:term_visual_grey ] let s:p = {'normal': {}, 'inactive': {}, 'insert': {}, 'replace': {}, 'visual': {}, 'tabline': {}} let s:p.normal.left = [ [ s:black, s:green ], [ s:white, s:grey ] ]