Before: runtime ale_linters/sh/shell.vim After: call ale#linter#Reset() Execute(The shell handler should parse lines correctly): AssertEqual \ [ \ { \ 'lnum': 13, \ 'text': 'syntax error near unexpected token d', \ }, \ { \ 'lnum': 7, \ 'text': 'line 42: line 36:', \ }, \ { \ 'lnum': 11, \ 'text': 'Syntax error: "(" unexpected', \ }, \ { \ 'lnum': 95, \ 'text': 'parse error near `out=$(( $1 / 1024. )...', \ }, \ { \ 'lnum': 22, \ 'text': ':11: :33: :44:', \ }, \ { \ 'lnum': 9, \ 'text': '`done'' unexpected', \ }, \ ], \ ale_linters#sh#shell#Handle(347, [ \ 'bash: line 13: syntax error near unexpected token d', \ 'bash: line 7: line 42: line 36:', \ 'sh: 11: Syntax error: "(" unexpected', \ 'qfm:95: parse error near `out=$(( $1 / 1024. )...', \ 'qfm:22: :11: :33: :44:', \ 'foo.sh: syntax error at line 9: `done'' unexpected', \ ]) Execute(The shell handler should parse Simplified Chinese lines correctly): AssertEqual \ [ \ { \ 'lnum': 0, \ 'text': '未预期的符号“done”附近有语法错误', \ }, \ { \ 'lnum': 90, \ 'text': '寻找匹配的“"”时遇到了未预期的文件结束符', \ }, \ { \ 'lnum': 111, \ 'text': '语法错误: 未预期的文件结尾', \ }, \ { \ 'lnum': 22, \ 'text': ':11: :33: :44:', \ }, \ ], \ ale_linters#sh#shell#Handle(347, [ \ '/tmp/nvimWL5sOL/2/a.sh:行0: 未预期的符号“done”附近有语法错误', \ '/tmp/nvimWL5sOL/2/a.sh:行90: 寻找匹配的“"”时遇到了未预期的文件结束符', \ '/tmp/nvimWL5sOL/2/a.sh:行111: 语法错误: 未预期的文件结尾', \ '/tmp/nvimWL5sOL/2/a.sh:行22: :11: :33: :44:', \ ]) Execute(The shell handler should parse Traditional Chinese lines correctly): AssertEqual \ [ \ { \ 'lnum': 0, \ 'text': '未預期的字組「(」附近有語法錯誤', \ }, \ { \ 'lnum': 90, \ 'text': '尋找匹配的「"」時遇到了未預期的檔案結束符', \ }, \ { \ 'lnum': 111, \ 'text': '語法錯誤: 未預期的檔案結尾', \ }, \ { \ 'lnum': 22, \ 'text': ':11: :33: :44:', \ }, \ ], \ ale_linters#sh#shell#Handle(347, [ \ '/tmp/nvimWL5sOL/2/a.sh: 列 0: 未預期的字組「(」附近有語法錯誤', \ '/tmp/nvimWL5sOL/2/a.sh: 列 90: 尋找匹配的「"」時遇到了未預期的檔案結束符', \ '/tmp/nvimWL5sOL/2/a.sh: 列 111: 語法錯誤: 未預期的檔案結尾', \ '/tmp/nvimWL5sOL/2/a.sh: 列 22: :11: :33: :44:', \ ]) Execute(The shell handler should parse Japanese lines correctly): AssertEqual \ [ \ { \ 'lnum': 0, \ 'text': "予期しないトークン `(' 周辺に構文エラーがあります", \ }, \ { \ 'lnum': 90, \ 'text': "予期しないトークン `done' 周辺に構文エラーがあります", \ }, \ { \ 'lnum': 111, \ 'text': "対応する `\"' を探索中に予期しないファイル終了 (EOF) です", \ }, \ { \ 'lnum': 22, \ 'text': ':11: :33: :44:', \ }, \ ], \ ale_linters#sh#shell#Handle(347, [ \ "/tmp/nvimWL5sOL/2/a.sh: 行 0: 予期しないトークン `(' 周辺に構文エラーがあります", \ "/tmp/nvimWL5sOL/2/a.sh: 行 90: 予期しないトークン `done' 周辺に構文エラーがあります", \ "/tmp/nvimWL5sOL/2/a.sh: 行 111: 対応する `\"' を探索中に予期しないファイル終了 (EOF) です", \ "/tmp/nvimWL5sOL/2/a.sh: 行 22: :11: :33: :44:", \ ]) Execute(The shell handler should parse Greek lines correctly): AssertEqual \ [ \ { \ 'lnum': 0, \ 'text': 'συντακτικό σφάλμα κοντά στο μη αναμενόμενο σύμβολο «done»', \ }, \ { \ 'lnum': 90, \ 'text': 'syntax error: μη αναμενόμενο τέλος αρχείου', \ }, \ { \ 'lnum': 111, \ 'text': 'μη αναμενόμενο EOF κατά την αναζήτηση «"»', \ }, \ { \ 'lnum': 22, \ 'text': ':11: :33: :44:', \ }, \ ], \ ale_linters#sh#shell#Handle(347, [ \ '/tmp/nvimWL5sOL/2/a.sh: γραμμή 0: συντακτικό σφάλμα κοντά στο μη αναμενόμενο σύμβολο «done»', \ '/tmp/nvimWL5sOL/2/a.sh: γραμμή 90: syntax error: μη αναμενόμενο τέλος αρχείου', \ '/tmp/nvimWL5sOL/2/a.sh: γραμμή 111: μη αναμενόμενο EOF κατά την αναζήτηση «"»', \ "/tmp/nvimWL5sOL/2/a.sh: γραμμή 22: :11: :33: :44:", \ ]) Execute(The shell handler should parse Russian lines correctly): AssertEqual \ [ \ { \ 'lnum': 0, \ 'text': 'синтаксическая ошибка рядом с неожиданным маркером «done»', \ }, \ { \ 'lnum': 90, \ 'text': 'синтаксическая ошибка: неожиданный конец файла', \ }, \ { \ 'lnum': 111, \ 'text': 'неожиданный конец файла во время поиска «"»', \ }, \ { \ 'lnum': 22, \ 'text': ':11: :33: :44:', \ }, \ ], \ ale_linters#sh#shell#Handle(347, [ \ '/tmp/nvimWL5sOL/2/a.sh: строка 0: синтаксическая ошибка рядом с неожиданным маркером «done»', \ '/tmp/nvimWL5sOL/2/a.sh: строка 90: синтаксическая ошибка: неожиданный конец файла', \ '/tmp/nvimWL5sOL/2/a.sh: строка 111: неожиданный конец файла во время поиска «"»', \ '/tmp/nvimWL5sOL/2/a.sh: строка 22: :11: :33: :44:', \ ])