diff options
Diffstat (limited to 'colors')
162 files changed, 2916 insertions, 486 deletions
diff --git a/colors/base16-3024.vim b/colors/base16-3024.vim index 5327b35..799ec5b 100644 --- a/colors/base16-3024.vim +++ b/colors/base16-3024.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-apathy.vim b/colors/base16-apathy.vim index da14b02..333a6e9 100644 --- a/colors/base16-apathy.vim +++ b/colors/base16-apathy.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-ashes.vim b/colors/base16-ashes.vim index 516c8b4..cbe3a07 100644 --- a/colors/base16-ashes.vim +++ b/colors/base16-ashes.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-cave-light.vim b/colors/base16-atelier-cave-light.vim index 5eda1c6..0bed708 100644 --- a/colors/base16-atelier-cave-light.vim +++ b/colors/base16-atelier-cave-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-cave.vim b/colors/base16-atelier-cave.vim index 45e6cd8..bb70124 100644 --- a/colors/base16-atelier-cave.vim +++ b/colors/base16-atelier-cave.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-dune-light.vim b/colors/base16-atelier-dune-light.vim index f020dc3..1c46d1b 100644 --- a/colors/base16-atelier-dune-light.vim +++ b/colors/base16-atelier-dune-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-dune.vim b/colors/base16-atelier-dune.vim index b7fbe34..c417c38 100644 --- a/colors/base16-atelier-dune.vim +++ b/colors/base16-atelier-dune.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-estuary-light.vim b/colors/base16-atelier-estuary-light.vim index 7dd9993..97d9673 100644 --- a/colors/base16-atelier-estuary-light.vim +++ b/colors/base16-atelier-estuary-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-estuary.vim b/colors/base16-atelier-estuary.vim index 6077ada..f6bd360 100644 --- a/colors/base16-atelier-estuary.vim +++ b/colors/base16-atelier-estuary.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-forest-light.vim b/colors/base16-atelier-forest-light.vim index e4b6193..e75d407 100644 --- a/colors/base16-atelier-forest-light.vim +++ b/colors/base16-atelier-forest-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-forest.vim b/colors/base16-atelier-forest.vim index 9f35c9b..d1f59af 100644 --- a/colors/base16-atelier-forest.vim +++ b/colors/base16-atelier-forest.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-heath-light.vim b/colors/base16-atelier-heath-light.vim index b816524..8bd78ed 100644 --- a/colors/base16-atelier-heath-light.vim +++ b/colors/base16-atelier-heath-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-heath.vim b/colors/base16-atelier-heath.vim index af8242b..6b995db 100644 --- a/colors/base16-atelier-heath.vim +++ b/colors/base16-atelier-heath.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-lakeside-light.vim b/colors/base16-atelier-lakeside-light.vim index d0dd623..7d39ce3 100644 --- a/colors/base16-atelier-lakeside-light.vim +++ b/colors/base16-atelier-lakeside-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-lakeside.vim b/colors/base16-atelier-lakeside.vim index 9872a10..d04bb5d 100644 --- a/colors/base16-atelier-lakeside.vim +++ b/colors/base16-atelier-lakeside.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-plateau-light.vim b/colors/base16-atelier-plateau-light.vim index 488ca7b..30602b1 100644 --- a/colors/base16-atelier-plateau-light.vim +++ b/colors/base16-atelier-plateau-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-plateau.vim b/colors/base16-atelier-plateau.vim index 3c55db7..884a89d 100644 --- a/colors/base16-atelier-plateau.vim +++ b/colors/base16-atelier-plateau.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-savanna-light.vim b/colors/base16-atelier-savanna-light.vim index 5e10447..b910d12 100644 --- a/colors/base16-atelier-savanna-light.vim +++ b/colors/base16-atelier-savanna-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-savanna.vim b/colors/base16-atelier-savanna.vim index 36631fc..a28add3 100644 --- a/colors/base16-atelier-savanna.vim +++ b/colors/base16-atelier-savanna.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-seaside-light.vim b/colors/base16-atelier-seaside-light.vim index 2af5ac2..64612c1 100644 --- a/colors/base16-atelier-seaside-light.vim +++ b/colors/base16-atelier-seaside-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-seaside.vim b/colors/base16-atelier-seaside.vim index d946a62..bab591d 100644 --- a/colors/base16-atelier-seaside.vim +++ b/colors/base16-atelier-seaside.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-sulphurpool-light.vim b/colors/base16-atelier-sulphurpool-light.vim index d32751f..55df0b4 100644 --- a/colors/base16-atelier-sulphurpool-light.vim +++ b/colors/base16-atelier-sulphurpool-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atelier-sulphurpool.vim b/colors/base16-atelier-sulphurpool.vim index 48c21fe..2a1b302 100644 --- a/colors/base16-atelier-sulphurpool.vim +++ b/colors/base16-atelier-sulphurpool.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-atlas.vim b/colors/base16-atlas.vim index ffab561..0f1c96a 100644 --- a/colors/base16-atlas.vim +++ b/colors/base16-atlas.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-bespin.vim b/colors/base16-bespin.vim index c9eab75..f950a72 100644 --- a/colors/base16-bespin.vim +++ b/colors/base16-bespin.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-black-metal-bathory.vim b/colors/base16-black-metal-bathory.vim index 80b7afb..4ac3794 100644 --- a/colors/base16-black-metal-bathory.vim +++ b/colors/base16-black-metal-bathory.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-black-metal-burzum.vim b/colors/base16-black-metal-burzum.vim index 7863a1b..04726dc 100644 --- a/colors/base16-black-metal-burzum.vim +++ b/colors/base16-black-metal-burzum.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-black-metal-dark-funeral.vim b/colors/base16-black-metal-dark-funeral.vim index 6adc1f5..2d800ab 100644 --- a/colors/base16-black-metal-dark-funeral.vim +++ b/colors/base16-black-metal-dark-funeral.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-black-metal-gorgoroth.vim b/colors/base16-black-metal-gorgoroth.vim index 9a68945..645dd17 100644 --- a/colors/base16-black-metal-gorgoroth.vim +++ b/colors/base16-black-metal-gorgoroth.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-black-metal-immortal.vim b/colors/base16-black-metal-immortal.vim index 90f1c94..fc4f1e1 100644 --- a/colors/base16-black-metal-immortal.vim +++ b/colors/base16-black-metal-immortal.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-black-metal-khold.vim b/colors/base16-black-metal-khold.vim index 3a8e750..7de5ee2 100644 --- a/colors/base16-black-metal-khold.vim +++ b/colors/base16-black-metal-khold.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-black-metal-marduk.vim b/colors/base16-black-metal-marduk.vim index 5edccc7..6a19c5f 100644 --- a/colors/base16-black-metal-marduk.vim +++ b/colors/base16-black-metal-marduk.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-black-metal-mayhem.vim b/colors/base16-black-metal-mayhem.vim index 3f490d9..f5e4193 100644 --- a/colors/base16-black-metal-mayhem.vim +++ b/colors/base16-black-metal-mayhem.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-black-metal-nile.vim b/colors/base16-black-metal-nile.vim index f3b7426..6bca9c0 100644 --- a/colors/base16-black-metal-nile.vim +++ b/colors/base16-black-metal-nile.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-black-metal-venom.vim b/colors/base16-black-metal-venom.vim index b94d621..c24788d 100644 --- a/colors/base16-black-metal-venom.vim +++ b/colors/base16-black-metal-venom.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-black-metal.vim b/colors/base16-black-metal.vim index eb44ef5..34e5a35 100644 --- a/colors/base16-black-metal.vim +++ b/colors/base16-black-metal.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-brewer.vim b/colors/base16-brewer.vim index ac85dab..f26c0fb 100644 --- a/colors/base16-brewer.vim +++ b/colors/base16-brewer.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-bright.vim b/colors/base16-bright.vim index 7f94e6f..0c93036 100644 --- a/colors/base16-bright.vim +++ b/colors/base16-bright.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-brogrammer.vim b/colors/base16-brogrammer.vim index 4579ba9..bc4f8c4 100644 --- a/colors/base16-brogrammer.vim +++ b/colors/base16-brogrammer.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-brushtrees-dark.vim b/colors/base16-brushtrees-dark.vim index 9654bd4..cb600c0 100644 --- a/colors/base16-brushtrees-dark.vim +++ b/colors/base16-brushtrees-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-brushtrees.vim b/colors/base16-brushtrees.vim index c207903..05709f6 100644 --- a/colors/base16-brushtrees.vim +++ b/colors/base16-brushtrees.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-chalk.vim b/colors/base16-chalk.vim index 63c457d..f5e9c50 100644 --- a/colors/base16-chalk.vim +++ b/colors/base16-chalk.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-circus.vim b/colors/base16-circus.vim index 5c83993..99f2906 100644 --- a/colors/base16-circus.vim +++ b/colors/base16-circus.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-classic-dark.vim b/colors/base16-classic-dark.vim index 58e05ec..eaa1c04 100644 --- a/colors/base16-classic-dark.vim +++ b/colors/base16-classic-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-classic-light.vim b/colors/base16-classic-light.vim index f70be3c..9d17058 100644 --- a/colors/base16-classic-light.vim +++ b/colors/base16-classic-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-codeschool.vim b/colors/base16-codeschool.vim index 1167208..baf2e39 100644 --- a/colors/base16-codeschool.vim +++ b/colors/base16-codeschool.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-cupcake.vim b/colors/base16-cupcake.vim index e0233f9..861f3fa 100644 --- a/colors/base16-cupcake.vim +++ b/colors/base16-cupcake.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-cupertino.vim b/colors/base16-cupertino.vim index 8a1d0d8..ebb46be 100644 --- a/colors/base16-cupertino.vim +++ b/colors/base16-cupertino.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-darkmoss.vim b/colors/base16-darkmoss.vim index 484302b..612ce39 100644 --- a/colors/base16-darkmoss.vim +++ b/colors/base16-darkmoss.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-darktooth.vim b/colors/base16-darktooth.vim index 68d31c7..a2fd2a5 100644 --- a/colors/base16-darktooth.vim +++ b/colors/base16-darktooth.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-darkviolet.vim b/colors/base16-darkviolet.vim index dc79815..1d53508 100644 --- a/colors/base16-darkviolet.vim +++ b/colors/base16-darkviolet.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-decaf.vim b/colors/base16-decaf.vim index a3bcdfe..f09798e 100644 --- a/colors/base16-decaf.vim +++ b/colors/base16-decaf.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-default-dark.vim b/colors/base16-default-dark.vim index 1b13793..d7511a1 100644 --- a/colors/base16-default-dark.vim +++ b/colors/base16-default-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-default-light.vim b/colors/base16-default-light.vim index 4e6d410..cff87e0 100644 --- a/colors/base16-default-light.vim +++ b/colors/base16-default-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-dirtysea.vim b/colors/base16-dirtysea.vim index 0426ae6..219add1 100644 --- a/colors/base16-dirtysea.vim +++ b/colors/base16-dirtysea.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-dracula.vim b/colors/base16-dracula.vim index fbd0f4b..bf91775 100644 --- a/colors/base16-dracula.vim +++ b/colors/base16-dracula.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-edge-dark.vim b/colors/base16-edge-dark.vim index 3610fd1..19ccb83 100644 --- a/colors/base16-edge-dark.vim +++ b/colors/base16-edge-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-edge-light.vim b/colors/base16-edge-light.vim index b12fa5d..eba543d 100644 --- a/colors/base16-edge-light.vim +++ b/colors/base16-edge-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-eighties.vim b/colors/base16-eighties.vim index db81e9f..864fa73 100644 --- a/colors/base16-eighties.vim +++ b/colors/base16-eighties.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-embers.vim b/colors/base16-embers.vim index a5bfafd..d6c33ef 100644 --- a/colors/base16-embers.vim +++ b/colors/base16-embers.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-equilibrium-dark.vim b/colors/base16-equilibrium-dark.vim index f25cdf2..78bd0b0 100644 --- a/colors/base16-equilibrium-dark.vim +++ b/colors/base16-equilibrium-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-equilibrium-gray-dark.vim b/colors/base16-equilibrium-gray-dark.vim index 2966a87..954a751 100644 --- a/colors/base16-equilibrium-gray-dark.vim +++ b/colors/base16-equilibrium-gray-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-equilibrium-gray-light.vim b/colors/base16-equilibrium-gray-light.vim index 21bc22b..b2f188c 100644 --- a/colors/base16-equilibrium-gray-light.vim +++ b/colors/base16-equilibrium-gray-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-equilibrium-light.vim b/colors/base16-equilibrium-light.vim index 29330d0..73f376d 100644 --- a/colors/base16-equilibrium-light.vim +++ b/colors/base16-equilibrium-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-espresso.vim b/colors/base16-espresso.vim index b73feb3..e0afa1d 100644 --- a/colors/base16-espresso.vim +++ b/colors/base16-espresso.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-eva-dim.vim b/colors/base16-eva-dim.vim index cbe7296..75279b2 100644 --- a/colors/base16-eva-dim.vim +++ b/colors/base16-eva-dim.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-eva.vim b/colors/base16-eva.vim index 0651fca..fc86588 100644 --- a/colors/base16-eva.vim +++ b/colors/base16-eva.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-flat.vim b/colors/base16-flat.vim index b7270b5..3d88d80 100644 --- a/colors/base16-flat.vim +++ b/colors/base16-flat.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-framer.vim b/colors/base16-framer.vim index e736744..bca5ae0 100644 --- a/colors/base16-framer.vim +++ b/colors/base16-framer.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-fruit-soda.vim b/colors/base16-fruit-soda.vim index 24a44e8..270fb95 100644 --- a/colors/base16-fruit-soda.vim +++ b/colors/base16-fruit-soda.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-gigavolt.vim b/colors/base16-gigavolt.vim index 40962e5..59e35c7 100644 --- a/colors/base16-gigavolt.vim +++ b/colors/base16-gigavolt.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-github.vim b/colors/base16-github.vim index 41d2f6c..7bceb94 100644 --- a/colors/base16-github.vim +++ b/colors/base16-github.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-google-dark.vim b/colors/base16-google-dark.vim index 660445e..5ac1d1f 100644 --- a/colors/base16-google-dark.vim +++ b/colors/base16-google-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-google-light.vim b/colors/base16-google-light.vim index 714a930..959f740 100644 --- a/colors/base16-google-light.vim +++ b/colors/base16-google-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-grayscale-dark.vim b/colors/base16-grayscale-dark.vim index d8ae003..281d4ad 100644 --- a/colors/base16-grayscale-dark.vim +++ b/colors/base16-grayscale-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-grayscale-light.vim b/colors/base16-grayscale-light.vim index 953fe19..643d8cb 100644 --- a/colors/base16-grayscale-light.vim +++ b/colors/base16-grayscale-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-greenscreen.vim b/colors/base16-greenscreen.vim index c6b10b1..7feb2a0 100644 --- a/colors/base16-greenscreen.vim +++ b/colors/base16-greenscreen.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-gruvbox-dark-hard.vim b/colors/base16-gruvbox-dark-hard.vim index 88a0b89..801f0d9 100644 --- a/colors/base16-gruvbox-dark-hard.vim +++ b/colors/base16-gruvbox-dark-hard.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-gruvbox-dark-medium.vim b/colors/base16-gruvbox-dark-medium.vim index 385fa06..0089015 100644 --- a/colors/base16-gruvbox-dark-medium.vim +++ b/colors/base16-gruvbox-dark-medium.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-gruvbox-dark-pale.vim b/colors/base16-gruvbox-dark-pale.vim index 396fafc..95b2a32 100644 --- a/colors/base16-gruvbox-dark-pale.vim +++ b/colors/base16-gruvbox-dark-pale.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-gruvbox-dark-soft.vim b/colors/base16-gruvbox-dark-soft.vim index 5d8355c..7f07335 100644 --- a/colors/base16-gruvbox-dark-soft.vim +++ b/colors/base16-gruvbox-dark-soft.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-gruvbox-light-hard.vim b/colors/base16-gruvbox-light-hard.vim index d1adcdd..e389ebf 100644 --- a/colors/base16-gruvbox-light-hard.vim +++ b/colors/base16-gruvbox-light-hard.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-gruvbox-light-medium.vim b/colors/base16-gruvbox-light-medium.vim index 71c4700..6aaa434 100644 --- a/colors/base16-gruvbox-light-medium.vim +++ b/colors/base16-gruvbox-light-medium.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-gruvbox-light-soft.vim b/colors/base16-gruvbox-light-soft.vim index 501945d..2f13651 100644 --- a/colors/base16-gruvbox-light-soft.vim +++ b/colors/base16-gruvbox-light-soft.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-hardcore.vim b/colors/base16-hardcore.vim index 5ac53c6..e1b7ec7 100644 --- a/colors/base16-hardcore.vim +++ b/colors/base16-hardcore.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-harmonic-dark.vim b/colors/base16-harmonic-dark.vim index fb0e7d1..020037a 100644 --- a/colors/base16-harmonic-dark.vim +++ b/colors/base16-harmonic-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-harmonic-light.vim b/colors/base16-harmonic-light.vim index bbdb9e3..10b1477 100644 --- a/colors/base16-harmonic-light.vim +++ b/colors/base16-harmonic-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-heetch-light.vim b/colors/base16-heetch-light.vim index 4fef411..b5be04f 100644 --- a/colors/base16-heetch-light.vim +++ b/colors/base16-heetch-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-heetch.vim b/colors/base16-heetch.vim index 0364d75..fa925ac 100644 --- a/colors/base16-heetch.vim +++ b/colors/base16-heetch.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-helios.vim b/colors/base16-helios.vim index 874dc16..14a1a71 100644 --- a/colors/base16-helios.vim +++ b/colors/base16-helios.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-hopscotch.vim b/colors/base16-hopscotch.vim index b75486f..a792fbd 100644 --- a/colors/base16-hopscotch.vim +++ b/colors/base16-hopscotch.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-horizon-dark.vim b/colors/base16-horizon-dark.vim index 7320974..3c2e91d 100644 --- a/colors/base16-horizon-dark.vim +++ b/colors/base16-horizon-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-horizon-light.vim b/colors/base16-horizon-light.vim index 9208e46..ad26061 100644 --- a/colors/base16-horizon-light.vim +++ b/colors/base16-horizon-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-horizon-terminal-dark.vim b/colors/base16-horizon-terminal-dark.vim index 84dbf1b..1daae5d 100644 --- a/colors/base16-horizon-terminal-dark.vim +++ b/colors/base16-horizon-terminal-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-horizon-terminal-light.vim b/colors/base16-horizon-terminal-light.vim index 026751e..df8423d 100644 --- a/colors/base16-horizon-terminal-light.vim +++ b/colors/base16-horizon-terminal-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-humanoid-dark.vim b/colors/base16-humanoid-dark.vim index 087c71b..5635ca2 100644 --- a/colors/base16-humanoid-dark.vim +++ b/colors/base16-humanoid-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-humanoid-light.vim b/colors/base16-humanoid-light.vim index ec9f238..42b0329 100644 --- a/colors/base16-humanoid-light.vim +++ b/colors/base16-humanoid-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-ia-dark.vim b/colors/base16-ia-dark.vim index f358e31..df6d6c2 100644 --- a/colors/base16-ia-dark.vim +++ b/colors/base16-ia-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-ia-light.vim b/colors/base16-ia-light.vim index 2b4e27c..3392648 100644 --- a/colors/base16-ia-light.vim +++ b/colors/base16-ia-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-icy.vim b/colors/base16-icy.vim index 0cce16f..482d079 100644 --- a/colors/base16-icy.vim +++ b/colors/base16-icy.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-irblack.vim b/colors/base16-irblack.vim index 1eb525b..afef6f9 100644 --- a/colors/base16-irblack.vim +++ b/colors/base16-irblack.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-isotope.vim b/colors/base16-isotope.vim index 6b2d8b1..f374084 100644 --- a/colors/base16-isotope.vim +++ b/colors/base16-isotope.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-kimber.vim b/colors/base16-kimber.vim index 954e0c1..4e8bc61 100644 --- a/colors/base16-kimber.vim +++ b/colors/base16-kimber.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-macintosh.vim b/colors/base16-macintosh.vim index af9a39b..3fdb1e7 100644 --- a/colors/base16-macintosh.vim +++ b/colors/base16-macintosh.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-marrakesh.vim b/colors/base16-marrakesh.vim index 94dbad0..9f5d9cb 100644 --- a/colors/base16-marrakesh.vim +++ b/colors/base16-marrakesh.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-materia.vim b/colors/base16-materia.vim index 5fcf2e6..dd7886d 100644 --- a/colors/base16-materia.vim +++ b/colors/base16-materia.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-material-darker.vim b/colors/base16-material-darker.vim index 06d637b..ce88582 100644 --- a/colors/base16-material-darker.vim +++ b/colors/base16-material-darker.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-material-lighter.vim b/colors/base16-material-lighter.vim index 66f92bd..2456dea 100644 --- a/colors/base16-material-lighter.vim +++ b/colors/base16-material-lighter.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-material-palenight.vim b/colors/base16-material-palenight.vim index f48d767..c01b81d 100644 --- a/colors/base16-material-palenight.vim +++ b/colors/base16-material-palenight.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-material-vivid.vim b/colors/base16-material-vivid.vim index 6260e1a..249b3e0 100644 --- a/colors/base16-material-vivid.vim +++ b/colors/base16-material-vivid.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-material.vim b/colors/base16-material.vim index 3c494c4..242c67c 100644 --- a/colors/base16-material.vim +++ b/colors/base16-material.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-mellow-purple.vim b/colors/base16-mellow-purple.vim index ed3c508..0a592a1 100644 --- a/colors/base16-mellow-purple.vim +++ b/colors/base16-mellow-purple.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-mexico-light.vim b/colors/base16-mexico-light.vim index 7c6bdc5..76cfcf8 100644 --- a/colors/base16-mexico-light.vim +++ b/colors/base16-mexico-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-mocha.vim b/colors/base16-mocha.vim index 870283b..c2226ac 100644 --- a/colors/base16-mocha.vim +++ b/colors/base16-mocha.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-monokai.vim b/colors/base16-monokai.vim index 9930f5d..75ad259 100644 --- a/colors/base16-monokai.vim +++ b/colors/base16-monokai.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-nebula.vim b/colors/base16-nebula.vim index faf9558..6f9c40f 100644 --- a/colors/base16-nebula.vim +++ b/colors/base16-nebula.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-nord.vim b/colors/base16-nord.vim index 8a820ea..39426fa 100644 --- a/colors/base16-nord.vim +++ b/colors/base16-nord.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-nova.vim b/colors/base16-nova.vim index cc659ad..e936da1 100644 --- a/colors/base16-nova.vim +++ b/colors/base16-nova.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-ocean.vim b/colors/base16-ocean.vim index 60aed2e..a141593 100644 --- a/colors/base16-ocean.vim +++ b/colors/base16-ocean.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-oceanicnext.vim b/colors/base16-oceanicnext.vim index de6406b..1318c7e 100644 --- a/colors/base16-oceanicnext.vim +++ b/colors/base16-oceanicnext.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-one-light.vim b/colors/base16-one-light.vim index 3ef2862..571e6a8 100644 --- a/colors/base16-one-light.vim +++ b/colors/base16-one-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-onedark.vim b/colors/base16-onedark.vim index 8d4f2ee..62ed91c 100644 --- a/colors/base16-onedark.vim +++ b/colors/base16-onedark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-outrun-dark.vim b/colors/base16-outrun-dark.vim index 61f4c06..7e82214 100644 --- a/colors/base16-outrun-dark.vim +++ b/colors/base16-outrun-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-papercolor-dark.vim b/colors/base16-papercolor-dark.vim index aad141f..1553335 100644 --- a/colors/base16-papercolor-dark.vim +++ b/colors/base16-papercolor-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-papercolor-light.vim b/colors/base16-papercolor-light.vim index c3e0595..7cefdae 100644 --- a/colors/base16-papercolor-light.vim +++ b/colors/base16-papercolor-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-paraiso.vim b/colors/base16-paraiso.vim index a45544f..867c3c8 100644 --- a/colors/base16-paraiso.vim +++ b/colors/base16-paraiso.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-pasque.vim b/colors/base16-pasque.vim index 163f246..1d509a6 100644 --- a/colors/base16-pasque.vim +++ b/colors/base16-pasque.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-phd.vim b/colors/base16-phd.vim index cc33967..fe55a4a 100644 --- a/colors/base16-phd.vim +++ b/colors/base16-phd.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-pico.vim b/colors/base16-pico.vim index c6d7eb9..3bd60e9 100644 --- a/colors/base16-pico.vim +++ b/colors/base16-pico.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-pop.vim b/colors/base16-pop.vim index 0f0cb09..c6a3606 100644 --- a/colors/base16-pop.vim +++ b/colors/base16-pop.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-porple.vim b/colors/base16-porple.vim index 522e9d4..336d3be 100644 --- a/colors/base16-porple.vim +++ b/colors/base16-porple.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-railscasts.vim b/colors/base16-railscasts.vim index ed08018..06b9ad6 100644 --- a/colors/base16-railscasts.vim +++ b/colors/base16-railscasts.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-rebecca.vim b/colors/base16-rebecca.vim index 1fc178d..32b5b7a 100644 --- a/colors/base16-rebecca.vim +++ b/colors/base16-rebecca.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-sagelight.vim b/colors/base16-sagelight.vim index bd4f167..f78f1ee 100644 --- a/colors/base16-sagelight.vim +++ b/colors/base16-sagelight.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-sandcastle.vim b/colors/base16-sandcastle.vim index c6b0b8a..2999171 100644 --- a/colors/base16-sandcastle.vim +++ b/colors/base16-sandcastle.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-seti.vim b/colors/base16-seti.vim index fd3d63e..ef5dc46 100644 --- a/colors/base16-seti.vim +++ b/colors/base16-seti.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-shapeshifter.vim b/colors/base16-shapeshifter.vim index 7f6637e..271a9e6 100644 --- a/colors/base16-shapeshifter.vim +++ b/colors/base16-shapeshifter.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-silk-dark.vim b/colors/base16-silk-dark.vim index 66ecf66..cae366d 100644 --- a/colors/base16-silk-dark.vim +++ b/colors/base16-silk-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-silk-light.vim b/colors/base16-silk-light.vim index b841cc9..6f0d1f3 100644 --- a/colors/base16-silk-light.vim +++ b/colors/base16-silk-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-snazzy.vim b/colors/base16-snazzy.vim index ff284dc..7c12fe8 100644 --- a/colors/base16-snazzy.vim +++ b/colors/base16-snazzy.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-solarflare-light.vim b/colors/base16-solarflare-light.vim index 8a75502..d798167 100644 --- a/colors/base16-solarflare-light.vim +++ b/colors/base16-solarflare-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-solarflare.vim b/colors/base16-solarflare.vim index 0ff8d14..70ef9c0 100644 --- a/colors/base16-solarflare.vim +++ b/colors/base16-solarflare.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-solarized-dark.vim b/colors/base16-solarized-dark.vim index 2e85eb6..fba0b7a 100644 --- a/colors/base16-solarized-dark.vim +++ b/colors/base16-solarized-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-solarized-light.vim b/colors/base16-solarized-light.vim index 1f40397..24a3302 100644 --- a/colors/base16-solarized-light.vim +++ b/colors/base16-solarized-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-spacemacs.vim b/colors/base16-spacemacs.vim index 3532acb..630ea58 100644 --- a/colors/base16-spacemacs.vim +++ b/colors/base16-spacemacs.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-summercamp.vim b/colors/base16-summercamp.vim index 464cfed..99de296 100644 --- a/colors/base16-summercamp.vim +++ b/colors/base16-summercamp.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-summerfruit-dark.vim b/colors/base16-summerfruit-dark.vim index 5d398a1..5e38fca 100644 --- a/colors/base16-summerfruit-dark.vim +++ b/colors/base16-summerfruit-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-summerfruit-light.vim b/colors/base16-summerfruit-light.vim index 3784c17..925dce2 100644 --- a/colors/base16-summerfruit-light.vim +++ b/colors/base16-summerfruit-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-synth-midnight-dark.vim b/colors/base16-synth-midnight-dark.vim index 9e61f07..e9cf3c0 100644 --- a/colors/base16-synth-midnight-dark.vim +++ b/colors/base16-synth-midnight-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-synth-midnight-light.vim b/colors/base16-synth-midnight-light.vim index ce37d6b..61b5fa7 100644 --- a/colors/base16-synth-midnight-light.vim +++ b/colors/base16-synth-midnight-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-tango.vim b/colors/base16-tango.vim index 9ac4751..37f4281 100644 --- a/colors/base16-tango.vim +++ b/colors/base16-tango.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-tomorrow-night-eighties.vim b/colors/base16-tomorrow-night-eighties.vim index 6763d17..279f984 100644 --- a/colors/base16-tomorrow-night-eighties.vim +++ b/colors/base16-tomorrow-night-eighties.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-tomorrow-night.vim b/colors/base16-tomorrow-night.vim index f3fe5cd..93095fe 100644 --- a/colors/base16-tomorrow-night.vim +++ b/colors/base16-tomorrow-night.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-tomorrow.vim b/colors/base16-tomorrow.vim index 17b2977..9ba1e4b 100644 --- a/colors/base16-tomorrow.vim +++ b/colors/base16-tomorrow.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-tube.vim b/colors/base16-tube.vim index 05267cd..8599929 100644 --- a/colors/base16-tube.vim +++ b/colors/base16-tube.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-twilight.vim b/colors/base16-twilight.vim index f325806..9c5e689 100644 --- a/colors/base16-twilight.vim +++ b/colors/base16-twilight.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-unikitty-dark.vim b/colors/base16-unikitty-dark.vim index 80f636f..f8ac19b 100644 --- a/colors/base16-unikitty-dark.vim +++ b/colors/base16-unikitty-dark.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-unikitty-light.vim b/colors/base16-unikitty-light.vim index ded1992..e1e9e91 100644 --- a/colors/base16-unikitty-light.vim +++ b/colors/base16-unikitty-light.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-vulcan.vim b/colors/base16-vulcan.vim index 4d3cdb4..e2ffc9c 100644 --- a/colors/base16-vulcan.vim +++ b/colors/base16-vulcan.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-woodland.vim b/colors/base16-woodland.vim index d5863d5..4d6d7ed 100644 --- a/colors/base16-woodland.vim +++ b/colors/base16-woodland.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-xcode-dusk.vim b/colors/base16-xcode-dusk.vim index 7409870..6ded6bb 100644 --- a/colors/base16-xcode-dusk.vim +++ b/colors/base16-xcode-dusk.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction diff --git a/colors/base16-zenburn.vim b/colors/base16-zenburn.vim index 8c11a00..ba27f63 100644 --- a/colors/base16-zenburn.vim +++ b/colors/base16-zenburn.vim @@ -153,11 +153,22 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) let l:attr = get(a:, 1, "") let l:guisp = get(a:, 2, "") + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + if a:guifg != "" - exec "hi " . a:group . " guifg=#" . a:guifg + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=#" . a:guifg + endif endif if a:guibg != "" - exec "hi " . a:group . " guibg=#" . a:guibg + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=#" . a:guibg + endif endif if a:ctermfg != "" exec "hi " . a:group . " ctermfg=" . a:ctermfg @@ -169,7 +180,11 @@ function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr endif if l:guisp != "" - exec "hi " . a:group . " guisp=#" . l:guisp + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=#" . l:guisp + endif endif endfunction |