summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--autoload/ale.vim1
-rw-r--r--test/test_should_do_nothing_conditions.vader12
2 files changed, 13 insertions, 0 deletions
diff --git a/autoload/ale.vim b/autoload/ale.vim
index 9defbd82..6941a9a5 100644
--- a/autoload/ale.vim
+++ b/autoload/ale.vim
@@ -48,6 +48,7 @@ function! ale#ShouldDoNothing(buffer) abort
\ || ale#util#InSandbox()
\ || !ale#Var(a:buffer, 'enabled')
\ || ale#FileTooLarge()
+ \ || getbufvar(a:buffer, '&l:statusline') =~# 'CtrlPMode.*funky'
endfunction
" (delay, [linting_flag, buffer_number])
diff --git a/test/test_should_do_nothing_conditions.vader b/test/test_should_do_nothing_conditions.vader
new file mode 100644
index 00000000..4d6facf9
--- /dev/null
+++ b/test/test_should_do_nothing_conditions.vader
@@ -0,0 +1,12 @@
+Before:
+ Save &l:statusline
+
+After:
+ Restore
+
+Execute(ALE shouldn't do much of anything for ctrlp-funky buffers):
+ Assert !ale#ShouldDoNothing(bufnr('')), 'The preliminary check failed'
+
+ let &l:statusline = '%#CtrlPMode2# prt %*%#CtrlPMode1# line %* <mru>={%#CtrlPMode1# funky %*}=<fil> <-> %=%<%#CtrlPMode2# %{getcwd()} %*'
+
+ Assert ale#ShouldDoNothing(bufnr(''))