summaryrefslogtreecommitdiff
path: root/ale_linters/proto/protoc_gen_lint.vim
diff options
context:
space:
mode:
Diffstat (limited to 'ale_linters/proto/protoc_gen_lint.vim')
-rw-r--r--ale_linters/proto/protoc_gen_lint.vim19
1 files changed, 19 insertions, 0 deletions
diff --git a/ale_linters/proto/protoc_gen_lint.vim b/ale_linters/proto/protoc_gen_lint.vim
new file mode 100644
index 00000000..9d5ceacc
--- /dev/null
+++ b/ale_linters/proto/protoc_gen_lint.vim
@@ -0,0 +1,19 @@
+" Author: Jeff Willette <jrwillette88@gmail.com>
+" Description: run the protoc-gen-lint plugin for the protoc binary
+
+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'
+endfunction
+
+call ale#linter#Define('proto', {
+\ 'name': 'protoc-gen-lint',
+\ 'lint_file': 1,
+\ 'output_stream': 'stderr',
+\ 'executable': 'protoc',
+\ 'command_callback': 'ale_linters#proto#protoc_gen_lint#GetCommand',
+\ 'callback': 'ale#handlers#unix#HandleAsError',
+\})