diff options
author | Benjamin Bannier <bbannier@gmail.com> | 2018-01-06 20:56:28 +0100 |
---|---|---|
committer | Benjamin Bannier <bbannier@gmail.com> | 2018-01-07 17:56:56 +0100 |
commit | b5a5cdf920a9875650b021c8116ac02b739a9e9e (patch) | |
tree | 34742878de3544cf25b27c57f3a6fd16ef7c590b /ale_linters | |
parent | eecbacb742f0e884e2f47f0aee57caf9cb2dd683 (diff) | |
download | ale-b5a5cdf920a9875650b021c8116ac02b739a9e9e.zip |
Make it possible to inject flags of protoc invocation.
Typically proto files depend on and make use of proto definitions in
other files. When invoking protoc user can supply paths to inspect for
dependencies.
This patch makes it possible to configure flags passed to protoc. This
makes it e.g., possible to change include paths of the linter's protoc
invocation.
Diffstat (limited to 'ale_linters')
-rw-r--r-- | ale_linters/proto/protoc_gen_lint.vim | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/ale_linters/proto/protoc_gen_lint.vim b/ale_linters/proto/protoc_gen_lint.vim index 9d5ceacc..c8b5c331 100644 --- a/ale_linters/proto/protoc_gen_lint.vim +++ b/ale_linters/proto/protoc_gen_lint.vim @@ -1,12 +1,20 @@ " Author: Jeff Willette <jrwillette88@gmail.com> " Description: run the protoc-gen-lint plugin for the protoc binary +call ale#Set('proto_protoc_gen_lint_options', '') + function! ale_linters#proto#protoc_gen_lint#GetCommand(buffer) abort let l:dirname = expand('#' . a:buffer . ':p:h') - return 'protoc' - \ . ' -I ' . ale#Escape(l:dirname) - \ . ' --lint_out=. ' . '%s' + let l:options = ['-I ' . ale#Escape(l:dirname)] + + if !empty(ale#Var(a:buffer, 'proto_protoc_gen_lint_options')) + let l:options += [ale#Var(a:buffer, 'proto_protoc_gen_lint_options')] + endif + + let l:options += ['--lint_out=. ' . '%s'] + + return 'protoc' . ' ' . join(l:options) endfunction call ale#linter#Define('proto', { |