From b2be833744db7e4a293bae5341891a012a276ffc Mon Sep 17 00:00:00 2001 From: Sander van Harmelen Date: Wed, 12 Jul 2017 09:51:44 +0200 Subject: [PATCH] Fixup #756 The real fix was not using absolute paths anymore (so not expanding with the `:p` option). The regex was correct and should at least include the `^` character to make sure the string starts with the given path/filename and not references the path/filename in some error description. --- ale_linters/go/gometalinter.vim | 2 +- .../test_gometalinter_command_callback.vader | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ale_linters/go/gometalinter.vim b/ale_linters/go/gometalinter.vim index 26bef32..6d10871 100644 --- a/ale_linters/go/gometalinter.vim +++ b/ale_linters/go/gometalinter.vim @@ -14,7 +14,7 @@ function! ale_linters#go#gometalinter#GetCommand(buffer) abort let l:options = ale#Var(a:buffer, 'go_gometalinter_options') return ale#Escape(l:executable) - \ . ' --include=' . ale#Escape(ale#util#EscapePCRE(l:filename)) + \ . ' --include=' . ale#Escape('^' . ale#util#EscapePCRE(l:filename)) \ . (!empty(l:options) ? ' ' . l:options : '') \ . ' ' . ale#Escape(fnamemodify(l:filename, ':h')) endfunction diff --git a/test/command_callback/test_gometalinter_command_callback.vader b/test/command_callback/test_gometalinter_command_callback.vader index a0f4da4..912396c 100644 --- a/test/command_callback/test_gometalinter_command_callback.vader +++ b/test/command_callback/test_gometalinter_command_callback.vader @@ -22,7 +22,7 @@ Execute(The gometalinter callback should return the right defaults): \ ale_linters#go#gometalinter#GetExecutable(bufnr('')) AssertEqual \ ale#Escape('gometalinter') - \ . ' --include=' . ale#Escape(ale#util#EscapePCRE(expand('%'))) + \ . ' --include=' . ale#Escape('^' . ale#util#EscapePCRE(expand('%'))) \ . ' ' . ale#Escape(getcwd()), \ ale_linters#go#gometalinter#GetCommand(bufnr('')) @@ -34,7 +34,7 @@ Execute(The gometalinter callback should use a configured executable): \ ale_linters#go#gometalinter#GetExecutable(bufnr('')) AssertEqual \ ale#Escape('something else') - \ . ' --include=' . ale#Escape(ale#util#EscapePCRE(expand('%'))) + \ . ' --include=' . ale#Escape('^' . ale#util#EscapePCRE(expand('%'))) \ . ' ' . ale#Escape(getcwd()), \ ale_linters#go#gometalinter#GetCommand(bufnr('')) @@ -43,7 +43,7 @@ Execute(The gometalinter callback should use configured options): AssertEqual \ ale#Escape('gometalinter') - \ . ' --include=' . ale#Escape(ale#util#EscapePCRE(expand('%'))) + \ . ' --include=' . ale#Escape('^' . ale#util#EscapePCRE(expand('%'))) \ . ' --foobar' \ . ' ' . ale#Escape(getcwd()), \ ale_linters#go#gometalinter#GetCommand(bufnr(''))