From 80b93a36061629c65972d2522a84695edff34bf8 Mon Sep 17 00:00:00 2001 From: Rebecca Song Date: Wed, 12 Aug 2020 20:04:51 -0400 Subject: [PATCH 1/4] Update rubocop_auto_correct_all tag --- doc/ale-ruby.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/ale-ruby.txt b/doc/ale-ruby.txt index 142bb6b8..29a39c97 100644 --- a/doc/ale-ruby.txt +++ b/doc/ale-ruby.txt @@ -114,8 +114,8 @@ g:ale_ruby_rubocop_options *g:ale_ruby_rubocop_options* This variable can be changed to modify flags given to rubocop. -g:ale_ruby_rubocop_auto_correct_all *g:ale_ruby_rubocop_options* - *b:ale_ruby_rubocop_options* +g:ale_ruby_rubocop_auto_correct_all *g:ale_ruby_rubocop_auto_correct_all* + *b:ale_ruby_rubocop_auto_correct_all* Type: Number Default: `0` From 5f2aeba8cc7c5918bdcd054778a28837ada8def3 Mon Sep 17 00:00:00 2001 From: bratekarate Date: Sat, 26 Sep 2020 03:21:26 +0200 Subject: [PATCH 2/4] bibclean: update matchlist reges for bibclean > v2.11.4 --- ale_linters/bib/bibclean.vim | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ale_linters/bib/bibclean.vim b/ale_linters/bib/bibclean.vim index 9056a9c3..1d1c9ec2 100644 --- a/ale_linters/bib/bibclean.vim +++ b/ale_linters/bib/bibclean.vim @@ -18,7 +18,12 @@ function! ale_linters#bib#bibclean#get_type(str) abort endfunction function! ale_linters#bib#bibclean#match_msg(line) abort - return matchlist(a:line, '^\(.*\) "stdin", line \(.*\): \(.*\)$') + " Legacy message pattern works for bibclean <= v2.11.4. If empty, try + " the new message pattern for bibtex > v2.11.4 + let l:matches_legacy = matchlist(a:line, '^\(.*\) stdin:\(\w\+\):\(.*\)$') + return ! empty(l:matches_legacy) + \ ? l:matches_legacy + \ : matchlist(a:line, '^\(.*\) "stdin", line \(.*\): \(.*\)$') endfunction function! ale_linters#bib#bibclean#match_entry(line) abort From 56242cb87469e9a448de5c60a086a41b3641a7c3 Mon Sep 17 00:00:00 2001 From: bratekarate Date: Sat, 26 Sep 2020 17:09:54 +0200 Subject: [PATCH 3/4] fix lint, fix variable semantics and update tests --- ale_linters/bib/bibclean.vim | 8 ++-- test/handler/test_bibclean_handler.vader | 57 +++++++++++++++++++++++- 2 files changed, 59 insertions(+), 6 deletions(-) diff --git a/ale_linters/bib/bibclean.vim b/ale_linters/bib/bibclean.vim index 1d1c9ec2..f1610e00 100644 --- a/ale_linters/bib/bibclean.vim +++ b/ale_linters/bib/bibclean.vim @@ -20,10 +20,10 @@ endfunction function! ale_linters#bib#bibclean#match_msg(line) abort " Legacy message pattern works for bibclean <= v2.11.4. If empty, try " the new message pattern for bibtex > v2.11.4 - let l:matches_legacy = matchlist(a:line, '^\(.*\) stdin:\(\w\+\):\(.*\)$') - return ! empty(l:matches_legacy) - \ ? l:matches_legacy - \ : matchlist(a:line, '^\(.*\) "stdin", line \(.*\): \(.*\)$') + let l:matches_legacy = matchlist(a:line, '^\(.*\) "stdin", line \(\d\+\): \(.*\)$') + + return ! empty(l:matches_legacy) ? l:matches_legacy + \ : matchlist(a:line, '^\(.*\) stdin:\(\d\+\):\(.*\)$') endfunction function! ale_linters#bib#bibclean#match_entry(line) abort diff --git a/test/handler/test_bibclean_handler.vader b/test/handler/test_bibclean_handler.vader index 6179d7f5..9da52a92 100644 --- a/test/handler/test_bibclean_handler.vader +++ b/test/handler/test_bibclean_handler.vader @@ -4,7 +4,7 @@ Before: After: call ale#linter#Reset() -Execute(The bibclean handler should parse lines correctly): +Execute(The bibclean handler should parse lines from bibclean <= v2.11.4 correctly): AssertEqual \ [ @@ -19,6 +19,12 @@ Execute(The bibclean handler should parse lines correctly): \ 'type': 'E', \ 'text': 'Expected comma after last field ``keywords''''.', \ 'col': ' 1' + \ }, + \ { + \ 'lnum': '176', + \ 'type': 'W', + \ 'text': 'Unexpected DOI in URL value ``"https://doi.org/DOI"'''': move to separate DOI = "..." key/value in this entry.', + \ 'col': '14' \ } \ ], \ ale_linters#bib#bibclean#Handle(255, [ @@ -31,5 +37,52 @@ Execute(The bibclean handler should parse lines correctly): \ "?? File positions: input [main.bib] output [stdout]", \ "?? Entry input byte=2145 line=63 column= 1 output byte=2146 line=63 column= 0", \ "?? Value input byte=2528 line=71 column= 2 output byte=2527 line=70 column=49", - \ "?? Current input byte=2529 line=71 column= 3 output byte=2528 line=70 column=50" + \ "?? Current input byte=2529 line=71 column= 3 output byte=2528 line=70 column=50", + \ "%% \"stdin\", line 176: Unexpected DOI in URL value ``\"https://doi.org/DOI\"'': move to separate DOI = \"...\" key/value in this entry.", + \ "%% File positions: input [stdin] output [stdout]", + \ "%% Entry input byte=6813 line=174 column= 1 output byte=8543 line=227 column= 0", + \ "%% Value input byte=6890 line=176 column=14 output byte=8641 line=229 column=17", + \ "%% Current input byte=6938 line=176 column=62 output byte=8641 line=229 column=17" \ ]) + +Execute(The bibclean handler should parse lines of bibclean > v2.11.4 correctly): + + AssertEqual + \ [ + \ { + \ 'lnum': '60', + \ 'type': 'W', + \ 'text': 'Unexpected value in ``month = "09"''''.', + \ 'col': '17' + \ }, + \ { + \ 'lnum': '63', + \ 'type': 'E', + \ 'text': 'Expected comma after last field ``keywords''''.', + \ 'col': ' 1' + \ }, + \ { + \ 'lnum': '176', + \ 'type': 'W', + \ 'text': 'Unexpected DOI in URL value ``"https://doi.org/DOI"'''': move to separate DOI = "..." key/value in this entry.', + \ 'col': '14' + \ } + \ ], + \ ale_linters#bib#bibclean#Handle(255, [ + \ "%% stdin:60:Unexpected value in ``month = \"09\"''.", + \ "%% File positions: input [main.bib] output [stdout]", + \ "%% Entry input byte=1681 line=50 column= 1 output byte=1680 line=50 column= 0", + \ "%% Value input byte=2137 line=60 column=17 output byte=2137 line=60 column=17", + \ "%% Current input byte=2139 line=60 column=19 output byte=2137 line=60 column=17", + \ "?? stdin:71:Expected comma after last field ``keywords''.", + \ "?? File positions: input [main.bib] output [stdout]", + \ "?? Entry input byte=2145 line=63 column= 1 output byte=2146 line=63 column= 0", + \ "?? Value input byte=2528 line=71 column= 2 output byte=2527 line=70 column=49", + \ "?? Current input byte=2529 line=71 column= 3 output byte=2528 line=70 column=50", + \ "%% stdin:176:Unexpected DOI in URL value ``\"https://doi.org/DOI\"'': move to separate DOI = \"...\" key/value in this entry.", + \ "%% File positions: input [stdin] output [stdout]", + \ "%% Entry input byte=6813 line=174 column= 1 output byte=8543 line=227 column= 0", + \ "%% Value input byte=6890 line=176 column=14 output byte=8641 line=229 column=17", + \ "%% Current input byte=6938 line=176 column=62 output byte=8641 line=229 column=17" + \ ]) + From 7857098cb03f7b50fe0343178b954e70cb8b4df3 Mon Sep 17 00:00:00 2001 From: isaif Date: Thu, 1 Oct 2020 16:23:49 +0530 Subject: [PATCH 4/4] Fix grammatical error in doc --- doc/ale.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/ale.txt b/doc/ale.txt index 6ef137c1..b63c51a2 100644 --- a/doc/ale.txt +++ b/doc/ale.txt @@ -154,7 +154,7 @@ Any existing problems will be kept. 3.1 Linting On Other Machines *ale-lint-other-machines* ALE offers support for running linters or fixers on files you are editing -locally on other machines, so long as the other machine has access the file +locally on other machines, so long as the other machine has access to the file you are editing. This could be a linter or fixer run inside of a Docker image, running in a virtual machine, running on a remote server, etc.