From 79f18e7d87e426fcd5af9dd6e84067c301ae5fa4 Mon Sep 17 00:00:00 2001 From: Manuel Unno Vio Date: Thu, 2 Mar 2017 12:17:43 +0100 Subject: Update sign regex for LANG = it_IT.UTF-8 I've noticed that signs weren't unplaced and, learning that this was an issue depending on locale and :sign place, I've fixed the regular expression used to match those messages in my locale (it_IT.UTF-8). --- autoload/ale/sign.vim | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/autoload/ale/sign.vim b/autoload/ale/sign.vim index 9d613480..e95de58f 100644 --- a/autoload/ale/sign.vim +++ b/autoload/ale/sign.vim @@ -35,7 +35,9 @@ function! ale#sign#ParseSigns(line_list) abort " строка=1 id=1000001 имя=ALEErrorSign " 行=1 識別子=1000001 名前=ALEWarningSign " línea=12 id=1000001 nombre=ALEWarningSign - let l:pattern = '^.*=\d*\s\+.*=\(\d\+\)\s\+.*=ALE\(Warning\|Error\|Dummy\)Sign' + " riga=1 id=1000001, nome=ALEWarningSign + let l:pattern = '^.*=\d*\s\+.*=\(\d\+\)\,\?\s\+.*=ALE\(Warning\|Error\|Dummy\)Sign' + let l:id_list = [] -- cgit v1.2.3 From 0e50a7d2783fb82ce4abf9ad6c58c5a035d9d047 Mon Sep 17 00:00:00 2001 From: w0rp Date: Thu, 2 Mar 2017 23:36:31 +0000 Subject: Fix #373 - echo the cursor message after lint cycles or when leaving Insert mode --- autoload/ale/engine.vim | 6 ++++++ plugin/ale.vim | 4 ++++ test/test_cursor_warnings.vader | 39 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 49 insertions(+) diff --git a/autoload/ale/engine.vim b/autoload/ale/engine.vim index bc834083..ffef76a9 100644 --- a/autoload/ale/engine.vim +++ b/autoload/ale/engine.vim @@ -268,6 +268,12 @@ function! ale#engine#SetResults(buffer, loclist) abort if g:ale_set_highlights call ale#highlight#SetHighlights(a:buffer, a:loclist) endif + + if g:ale_echo_cursor + " Try and echo the warning now. + " This will only do something meaningful if we're in normal mode. + call ale#cursor#EchoCursorWarning() + endif endfunction function! s:SetExitCode(job, exit_code) abort diff --git a/plugin/ale.vim b/plugin/ale.vim index 1d7f77a5..90505f29 100644 --- a/plugin/ale.vim +++ b/plugin/ale.vim @@ -166,6 +166,10 @@ function! s:ALEInitAuGroups() abort autocmd! if g:ale_enabled && g:ale_echo_cursor autocmd CursorMoved,CursorHold * call ale#cursor#EchoCursorWarningWithDelay() + " Look for a warning to echo as soon as we leave Insert mode. + " The script's position variable used when moving the cursor will + " not be changed here. + autocmd InsertLeave * call ale#cursor#EchoCursorWarning() endif augroup END diff --git a/test/test_cursor_warnings.vader b/test/test_cursor_warnings.vader index b12f2451..8d998a87 100644 --- a/test/test_cursor_warnings.vader +++ b/test/test_cursor_warnings.vader @@ -36,7 +36,16 @@ Before: \ }, \} + " Turn off other features, we only care about this one feature in this test. + let g:ale_set_loclist = 0 + let g:ale_set_signs = 0 + let g:ale_set_highlights = 0 + After: + let g:ale_set_loclist = 1 + let g:ale_set_signs = 1 + let g:ale_set_highlights = 1 + unlet! g:output unlet! g:lines let g:ale_buffer_info = {} @@ -84,3 +93,33 @@ Then(Check the cursor output): let g:lines = split(g:output, "\n") AssertEqual 'Missing radix parameter (radix)', g:lines[-1] + +Execute(Set results for a lint cycle, with the cursor on line 1): + :1 + call ale#engine#SetResults( + \ bufnr('%'), + \ g:ale_buffer_info[bufnr('%')].loclist, + \) + +Then(Check the cursor output): + redir => g:output + :mess + redir END + + let g:lines = split(g:output, "\n") + + AssertEqual 'Missing semicolon. (semi)', g:lines[-1] + +Execute(Simulate leaving insert mode on line 2): + :2 + normal 16h + doautocmd InsertLeave + +Then(Check the cursor output): + redir => g:output + :mess + redir END + + let g:lines = split(g:output, "\n") + + AssertEqual 'Infix operators must be spaced. (space-infix-ops)', g:lines[-1] -- cgit v1.2.3 From 969274ccc2a2d334d36b3e767de362b8dc40f4e2 Mon Sep 17 00:00:00 2001 From: w0rp Date: Fri, 3 Mar 2017 01:01:24 +0000 Subject: Try and fix issues on Travis --- test/test_cursor_warnings.vader | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/test/test_cursor_warnings.vader b/test/test_cursor_warnings.vader index 8d998a87..ab7937bd 100644 --- a/test/test_cursor_warnings.vader +++ b/test/test_cursor_warnings.vader @@ -60,7 +60,7 @@ Execute(Evaluate the cursor function at line 1): Then(Check the cursor output): redir => g:output - :mess + silent mess redir END let g:lines = split(g:output, "\n") @@ -73,7 +73,7 @@ Execute(Evaluate the cursor function at line 2): Then(Check the cursor output): redir => g:output - :mess + silent mess redir END let g:lines = split(g:output, "\n") @@ -87,7 +87,7 @@ Execute(Evaluate the cursor function later in line 2): Then(Check the cursor output): redir => g:output - :mess + silent mess redir END let g:lines = split(g:output, "\n") @@ -103,7 +103,7 @@ Execute(Set results for a lint cycle, with the cursor on line 1): Then(Check the cursor output): redir => g:output - :mess + silent mess redir END let g:lines = split(g:output, "\n") @@ -117,7 +117,7 @@ Execute(Simulate leaving insert mode on line 2): Then(Check the cursor output): redir => g:output - :mess + silent mess redir END let g:lines = split(g:output, "\n") -- cgit v1.2.3