summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorw0rp <w0rp@users.noreply.github.com>2019-10-04 15:42:46 +0100
committerGitHub <noreply@github.com>2019-10-04 15:42:46 +0100
commita486aa1d24294c5b14c8b2763a3b5ffdc39d0739 (patch)
treea09faccd42afe963d69b32d0314f3579ffae0d1b
parent41ff80dc9ec2cc834cc8c4aaa753e308223d48b8 (diff)
parent7c2f5e83ab99a388fd95b8030c98a9e9ceab3205 (diff)
downloadale-a486aa1d24294c5b14c8b2763a3b5ffdc39d0739.zip
Merge pull request #2809 from hsanson/2802-fix-sign-group-parsing
Fix sign parser to be language independent.
-rw-r--r--autoload/ale/sign.vim12
-rw-r--r--test/sign/test_sign_parsing.vader19
2 files changed, 22 insertions, 9 deletions
diff --git a/autoload/ale/sign.vim b/autoload/ale/sign.vim
index 79352f47..7430c7f2 100644
--- a/autoload/ale/sign.vim
+++ b/autoload/ale/sign.vim
@@ -178,11 +178,12 @@ function! ale#sign#ParsePattern() abort
if has('nvim-0.4.0') || (v:version >= 801 && has('patch614'))
" Matches output like :
" line=4 id=1 group=ale name=ALEErrorSign
- " строка=1 id=1000001 group=ale имя=ALEErrorSign
- " 行=1 識別子=1000001 group=ale 名前=ALEWarningSign
- " línea=12 id=1000001 group=ale nombre=ALEWarningSign
- " riga=1 id=1000001 group=ale nome=ALEWarningSign
- let l:pattern = '\v^.*\=(\d+).*\=(\d+).*group\=ale.*\=(ALE[a-zA-Z]+Sign)'
+ " строка=1 id=1000001 группа=ale имя=ALEErrorSign
+ " 行=1 識別子=1000001 グループ=ale 名前=ALEWarningSign
+ " línea=12 id=1000001 grupo=ale nombre=ALEWarningSign
+ " riga=1 id=1000001 gruppo=ale nome=ALEWarningSign
+ " Zeile=235 id=1000001 Gruppe=ale Name=ALEErrorSign
+ let l:pattern = '\v^.*\=(\d+).*\=(\d+).*\=ale>.*\=(ALE[a-zA-Z]+Sign)'
else
" Matches output like :
" line=4 id=1 name=ALEErrorSign
@@ -190,6 +191,7 @@ function! ale#sign#ParsePattern() abort
" 行=1 識別子=1000001 名前=ALEWarningSign
" línea=12 id=1000001 nombre=ALEWarningSign
" riga=1 id=1000001 nome=ALEWarningSign
+ " Zeile=235 id=1000001 Name=ALEErrorSign
let l:pattern = '\v^.*\=(\d+).*\=(\d+).*\=(ALE[a-zA-Z]+Sign)'
endif
diff --git a/test/sign/test_sign_parsing.vader b/test/sign/test_sign_parsing.vader
index de2a3e8c..8fb7f8e0 100644
--- a/test/sign/test_sign_parsing.vader
+++ b/test/sign/test_sign_parsing.vader
@@ -19,7 +19,7 @@ Execute (Parsing Russian signs should work):
if has('nvim-0.4.0') || (v:version >= 801 && has('patch614'))
AssertEqual
\ [0, [[1, 1000001, 'ALEErrorSign']]],
- \ ale#sign#ParseSigns([' строка=1 id=1000001 group=ale имя=ALEErrorSign'])
+ \ ale#sign#ParseSigns([' строка=1 id=1000001 группа=ale имя=ALEErrorSign'])
else
AssertEqual
\ [0, [[1, 1000001, 'ALEErrorSign']]],
@@ -30,7 +30,7 @@ Execute (Parsing Japanese signs should work):
if has('nvim-0.4.0') || (v:version >= 801 && has('patch614'))
AssertEqual
\ [0, [[1, 1000001, 'ALEWarningSign']]],
- \ ale#sign#ParseSigns([' 行=1 識別子=1000001 group=ale 名前=ALEWarningSign'])
+ \ ale#sign#ParseSigns([' 行=1 識別子=1000001 グループ=ale 名前=ALEWarningSign'])
else
AssertEqual
\ [0, [[1, 1000001, 'ALEWarningSign']]],
@@ -41,7 +41,7 @@ Execute (Parsing Spanish signs should work):
if has('nvim-0.4.0') || (v:version >= 801 && has('patch614'))
AssertEqual
\ [0, [[12, 1000001, 'ALEWarningSign']]],
- \ ale#sign#ParseSigns([' línea=12 id=1000001 group=ale nombre=ALEWarningSign'])
+ \ ale#sign#ParseSigns([' línea=12 id=1000001 grupo=ale nombre=ALEWarningSign'])
else
AssertEqual
\ [0, [[12, 1000001, 'ALEWarningSign']]],
@@ -52,13 +52,24 @@ Execute (Parsing Italian signs should work):
if has('nvim-0.4.0') || (v:version >= 801 && has('patch614'))
AssertEqual
\ [0, [[1, 1000001, 'ALEWarningSign']]],
- \ ale#sign#ParseSigns([' riga=1 id=1000001, group=ale nome=ALEWarningSign'])
+ \ ale#sign#ParseSigns([' riga=1 id=1000001, gruppo=ale nome=ALEWarningSign'])
else
AssertEqual
\ [0, [[1, 1000001, 'ALEWarningSign']]],
\ ale#sign#ParseSigns([' riga=1 id=1000001, nome=ALEWarningSign'])
endif
+Execute (Parsing German signs should work):
+ if has('nvim-0.4.0') || (v:version >= 801 && has('patch614'))
+ AssertEqual
+ \ [0, [[235, 1000001, 'ALEErrorSign']]],
+ \ ale#sign#ParseSigns([' Zeile=235 id=1000001 Gruppe=ale Name=ALEErrorSign'])
+ else
+ AssertEqual
+ \ [0, [[235, 1000001, 'ALEErrorSign']]],
+ \ ale#sign#ParseSigns([' Zeile=235 id=1000001 Name=ALEErrorSign'])
+ endif
+
Execute (The sign parser should indicate if the dummy sign is set):
if has('nvim-0.4.0') || (v:version >= 801 && has('patch614'))
AssertEqual