All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@git.madduck.net.
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
2 Save g:ale_change_sign_column_color
5 function! ParseHighlight(name) abort
7 silent execute 'highlight ' . a:name
10 return substitute(join(split(l:output)[2:]), ' Last set.*', '', '')
13 function! SetHighlight(name, syntax) abort
14 let l:match = matchlist(a:syntax, '\vlinks to (.+)$')
17 execute 'highlight link ' . a:name . ' ' . l:match[1]
19 execute 'highlight ' . a:name . ' ' a:syntax
23 let g:sign_highlight = ParseHighlight('SignColumn')
28 delfunction ParseHighlight
29 call SetHighlight('SignColumn', g:sign_highlight)
30 delfunction SetHighlight
31 unlet! g:sign_highlight
35 Execute(The SignColumn highlight shouldn't be changed if the option is off):
36 let g:ale_change_sign_column_color = 0
37 let b:sign_highlight = ParseHighlight('SignColumn')
39 call ale#sign#SetSigns(bufnr(''), [
40 \ {'bufnr': bufnr(''), 'lnum': 1, 'col': 1, 'type': 'W', 'text': 'x'},
42 AssertEqual b:sign_highlight, ParseHighlight('SignColumn')
44 call ale#sign#SetSigns(bufnr(''), [])
45 AssertEqual b:sign_highlight, ParseHighlight('SignColumn')
47 Execute(The SignColumn highlight should be set and reset):
48 let g:ale_change_sign_column_color = 1
50 call ale#sign#SetSigns(bufnr(''), [
51 \ {'bufnr': bufnr(''), 'lnum': 1, 'col': 1, 'type': 'W', 'text': 'x'},
53 AssertEqual 'links to ALESignColumnWithErrors', ParseHighlight('SignColumn')
55 call ale#sign#SetSigns(bufnr(''), [])
56 AssertEqual 'links to ALESignColumnWithoutErrors', ParseHighlight('SignColumn')
58 Execute(The SignColumn should be correctly parsed when verbose=1):
60 highlight SignColumn ctermfg=246 ctermbg=7 guifg=#839496 guibg=Grey
62 call ale#sign#SetUpDefaultColumnWithoutErrorsHighlight()
66 \ ? 'ctermfg=246 ctermbg=7 guifg=#839496 guibg=Grey'
67 \ : 'term=standout ctermfg=246 ctermbg=7 guifg=#839496 guibg=Grey',
68 \ ParseHighlight('ALESignColumnWithoutErrors')