summaryrefslogtreecommitdiff
path: root/doc/ale-proto.txt
blob: 198ae3b69c523aea54617ccdaeb9774cbd73fecb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
===============================================================================
ALE Proto Integration                                         *ale-proto-options*


===============================================================================
Integration Information

To enable `.proto` file linting, update |g:ale_linters| as appropriate:
>
  " Enable linter for .proto files
  let g:ale_linters = {'proto': ['buf-lint', 'protoc-gen-lint', 'protolint']}

To enable `.proto` file fixing, update |g:ale_fixers| as appropriate:
>
  " Enable linter for .proto files
  let b:ale_fixers = {'proto': ['buf-format', 'protolint']}
<
===============================================================================
buf-format                                                *ale-proto-buf-format*

  The formatter uses `buf`, a fully-featured Protobuf compiler that doesn't depend
  on `protoc`. Make sure the `buf` binary is available in the system path, or
  set ale_proto_buf_format_executable.

g:ale_proto_buf_format_executable           *g:ale_proto_buf_format_executable*

  Type: |String|
  Default: `'buf'`

  This variable can be changed to modify the executable used for buf.

===============================================================================
buf-lint                                                    *ale-proto-buf-lint*

  The linter uses `buf`, a fully-featured Protobuf compiler that doesn't depend
  on `protoc`. Make sure the `buf` binary is available in the system path, or
  set ale_proto_buf_lint_executable.

g:ale_proto_buf_lint_executable               *g:ale_proto_buf_lint_executable*

  Type: |String|
  Default: `'buf'`

  This variable can be changed to modify the executable used for buf.

g:ale_proto_buf_lint_config                       *g:ale_proto_buf_lint_config*

  Type: |String|
  Default: `''`

  A path to a buf configuration file.

  The path to the configuration file can be an absolute path or a relative
  path. ALE will search for the relative path in parent directories.

===============================================================================
protoc-gen-lint                                      *ale-proto-protoc-gen-lint*

  The linter is a plugin for the `protoc` binary. As long as the binary resides
  in the system path, `protoc` will find it.

g:ale_proto_protoc_gen_lint_options       *g:ale_proto_protoc_gen_lint_options*

  Type: |String|
  Default: `''`

  This variable can be changed to modify flags given to protoc. Note that the
  directory of the linted file is always passed as an include path with '-I'
  before any user-supplied options.

===============================================================================
protolint                                                   *ale-proto-protolint*

  The linter is a pluggable tool that doesn't depend on the `protoc` binary.
  This supports both linting and fixing.
  Make sure the binary is available in the system path, or set
  ale_proto_protolint_executable.
  Note that the binary with v0.22.0 or above is supported.

g:ale_proto_protolint_executable             *g:ale_proto_protolint_executable*

  Type: |String|
  Default: `'protolint'`

  This variable can be changed to modify the executable used for protolint.

g:ale_proto_protolint_config                     *g:ale_proto_protolint_config*

  Type: |String|
  Default: `''`

  A path to a protolint configuration file.

  The path to the configuration file can be an absolute path or a relative
  path. ALE will search for the relative path in parent directories.

===============================================================================
  vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl: