Fix #2555 - Remove highlights in lowercase, etc

This commit is contained in:
w0rp 2019-06-03 20:16:49 +01:00
parent a730a6d5d5
commit a76f056bd9
No known key found for this signature in database
GPG key ID: 0FC1ECAA8C81CD83
3 changed files with 13 additions and 2 deletions

View file

@ -52,7 +52,7 @@ endfunction
function! ale#highlight#RemoveHighlights() abort function! ale#highlight#RemoveHighlights() abort
for l:match in getmatches() for l:match in getmatches()
if l:match.group =~# '^ALE' if l:match.group =~? '\v^ALE(Style)?(Error|Warning|Info)(Line)?$'
call matchdelete(l:match.id) call matchdelete(l:match.id)
endif endif
endfor endfor

View file

@ -279,6 +279,10 @@ Execute(Highlights should be cleared when ALE is disabled):
AssertEqual [], GetMatchesWithoutIDs() AssertEqual [], GetMatchesWithoutIDs()
Execute(Line highlights should be set when signs are disabled): Execute(Line highlights should be set when signs are disabled):
" This will mess with your settings, but it needs to be tested.
" We need to match highlights case-insenstive when removing them.
hi link aleerrorline spellbad
let g:ale_set_signs = 0 let g:ale_set_signs = 0
call ale#highlight#SetHighlights(bufnr(''), [ call ale#highlight#SetHighlights(bufnr(''), [
@ -292,8 +296,12 @@ Execute(Line highlights should be set when signs are disabled):
\ {'group': 'ALEError', 'priority': 10, 'pos1': [1, 1, 1]}, \ {'group': 'ALEError', 'priority': 10, 'pos1': [1, 1, 1]},
\ {'group': 'ALEWarning', 'priority': 10, 'pos1': [2, 1, 1]}, \ {'group': 'ALEWarning', 'priority': 10, 'pos1': [2, 1, 1]},
\ {'group': 'ALEInfo', 'priority': 10, 'pos1': [3, 1, 1]}, \ {'group': 'ALEInfo', 'priority': 10, 'pos1': [3, 1, 1]},
\ {'group': 'ALEErrorLine', 'priority': 10, 'pos1': [1]}, \ {'group': 'aleerrorline', 'priority': 10, 'pos1': [1]},
\ {'group': 'ALEWarningLine', 'priority': 10, 'pos1': [2]}, \ {'group': 'ALEWarningLine', 'priority': 10, 'pos1': [2]},
\ {'group': 'ALEInfoLine', 'priority': 10, 'pos1': [3]}, \ {'group': 'ALEInfoLine', 'priority': 10, 'pos1': [3]},
\ ], \ ],
\ GetMatchesWithoutIDs() \ GetMatchesWithoutIDs()
" All of the highlights should be removed.
call ale#highlight#RemoveHighlights()
AssertEqual [], GetMatchesWithoutIDs()

View file

@ -3,6 +3,9 @@
" Make most tests just set lists synchronously when run in Docker, etc. " Make most tests just set lists synchronously when run in Docker, etc.
let g:ale_set_lists_synchronously = 1 let g:ale_set_lists_synchronously = 1
" This lowercase highlight definition is needed for highlight tests.
hi link aleerrorline spellbad
" Load builtin plugins " Load builtin plugins
" We need this because run_vim.sh sets -i NONE " We need this because run_vim.sh sets -i NONE
if has('win32') if has('win32')