Fix #1336 - Print a friendly message when using invalid function names for fixers
This commit is contained in:
parent
5915a0ee39
commit
89f8d3e456
@ -392,7 +392,13 @@ function! s:GetCallbacks() abort
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
try
|
||||||
call add(l:corrected_list, ale#util#GetFunction(l:Item))
|
call add(l:corrected_list, ale#util#GetFunction(l:Item))
|
||||||
|
catch /E475/
|
||||||
|
" Rethrow exceptions for failing to get a function so we can print
|
||||||
|
" a friendly message about it.
|
||||||
|
throw 'BADNAME ' . v:exception
|
||||||
|
endtry
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
return l:corrected_list
|
return l:corrected_list
|
||||||
@ -427,7 +433,7 @@ function! ale#fix#Fix(...) abort
|
|||||||
|
|
||||||
try
|
try
|
||||||
let l:callback_list = s:GetCallbacks()
|
let l:callback_list = s:GetCallbacks()
|
||||||
catch /E700/
|
catch /E700\|BADNAME/
|
||||||
let l:function_name = join(split(split(v:exception, ':')[3]))
|
let l:function_name = join(split(split(v:exception, ':')[3]))
|
||||||
let l:echo_message = printf(
|
let l:echo_message = printf(
|
||||||
\ 'There is no fixer named `%s`. Check :ALEFixSuggest',
|
\ 'There is no fixer named `%s`. Check :ALEFixSuggest',
|
||||||
|
@ -574,6 +574,16 @@ Execute(ALE should print a message telling you something isn't a valid fixer whe
|
|||||||
|
|
||||||
AssertEqual 'There is no fixer named `invalidname`. Check :ALEFixSuggest', GetLastMessage()
|
AssertEqual 'There is no fixer named `invalidname`. Check :ALEFixSuggest', GetLastMessage()
|
||||||
|
|
||||||
|
Execute(ALE should complain about invalid fixers with minuses in the name):
|
||||||
|
let g:ale_fixers.testft = ['foo-bar']
|
||||||
|
ALEFix
|
||||||
|
|
||||||
|
AssertEqual 'There is no fixer named `foo-bar`. Check :ALEFixSuggest', GetLastMessage()
|
||||||
|
|
||||||
|
Execute(ALE should tolerate valid fixers with minuses in the name):
|
||||||
|
let g:ale_fixers.testft = ['prettier-standard']
|
||||||
|
ALEFix
|
||||||
|
|
||||||
Execute(Test fixing with chained callbacks):
|
Execute(Test fixing with chained callbacks):
|
||||||
let g:ale_fixers.testft = ['FirstChainCallback']
|
let g:ale_fixers.testft = ['FirstChainCallback']
|
||||||
ALEFix
|
ALEFix
|
||||||
|
Loading…
Reference in New Issue
Block a user