runtime(colors): color names in the v:colornames dict should be lower cased
Vim will lookup color names from the v:colornames dictionary by its lower case color name. So when sourcing the v:colornames dictionary, make sure to convert upper case color names to lower case. Also, while at it, mention in the documentation, that the dictionary should contain lower case names only. fixes: #13976 Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
@ -4,6 +4,9 @@
|
||||
" Similar in spirit to rgb.txt, this plugin establishes a human-friendly name
|
||||
" for every color listed in the CSS standard:
|
||||
"
|
||||
" Note: the color names should be in lower case, because Vim will lookup the
|
||||
" a color by its lower case name.
|
||||
"
|
||||
" https://www.w3.org/TR/css-color-3/
|
||||
|
||||
let s:keepcpo= &cpo
|
||||
@ -26,7 +29,6 @@ call extend(v:colornames, {
|
||||
\ 'css_blue': '#0000FF',
|
||||
\ 'css_teal': '#008080',
|
||||
\ 'css_aqua': '#00FFFF',
|
||||
\
|
||||
\ 'css_aliceblue': '#f0f8ff',
|
||||
\ 'css_antiquewhite': '#faebd7',
|
||||
\ 'css_aquamarine': '#7fffd4',
|
||||
@ -160,6 +162,14 @@ call extend(v:colornames, {
|
||||
\ 'css_yellowgreen': '#9acd32',
|
||||
\ }, 'keep')
|
||||
|
||||
" all keys should be in lower case, convert keys that are not yet
|
||||
for [key, val] in items(filter(copy(v:colornames), { key -> key =~ '\u'}))
|
||||
call remove(v:colornames, key)
|
||||
if !has_key(v:colornames, tolower(key))
|
||||
call extend(v:colornames, {tolower(key): val}, 'keep')
|
||||
endif
|
||||
endfor
|
||||
|
||||
let &cpo= s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
|
||||
@ -6,6 +6,8 @@
|
||||
" time the highlight command fails to recognize a gui color. You can override
|
||||
" these colors by introducing a new colors/lists/default.vim file earlier in
|
||||
" the runtimepath.
|
||||
" Note: the color names should be in lower case, because Vim will lookup the
|
||||
" a color by its lower case name.
|
||||
|
||||
" make sure line continuation works
|
||||
let s:keepcpo = &cpo
|
||||
@ -802,6 +804,14 @@ call extend(v:colornames, {
|
||||
\ 'teal': '#008080'
|
||||
\ }, 'keep')
|
||||
|
||||
" all keys should be in lower case, convert keys that are not yet
|
||||
for [key, val] in items(filter(copy(v:colornames), { key -> key =~ '\u'}))
|
||||
call remove(v:colornames, key)
|
||||
if !has_key(v:colornames, tolower(key))
|
||||
call extend(v:colornames, {tolower(key): val}, 'keep')
|
||||
endif
|
||||
endfor
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
|
||||
Reference in New Issue
Block a user