This plugin has been adopted by JetBrains and now lives primarly at https://github.com/JetBrains/intellij-plugins/tree/master/protobuf. Future releases will be bundled with certain versions of JetBrains' tools. As such, this repository likely won't see new updates. Issue tracking and other stuff is still in a bit of a transition phase.
IntelliJ plugin for editing Google Protocol Buffers. Features include:
proto2 and proto3
This is a fork of google/intellij-protocol-buffer-editor which was released unsupported.
Install from the JetBrains plugin repository, or:
This project uses Bazel.
To build protobuf-editor.jar:
bazel build //plugin
To run tests:
bazel test //...
By default, the collection of project source roots is used as the protobuf search path, and the protobuf descriptor and well-known type files are provided by the plugin JAR. These paths can be customized in the editor's language settings:

To customize:
Configure automaticallyPrefix column can be used to specify an import prefix for the path. So, for example, if the path is
src/protos and the prefix is foo/bar, the file at src/protos/mine.proto would be imported as
foo/bar/mine.proto.Protobuf Text Format is most commonly used to specify long-form option values in .proto files. For example, as seen
in the GRPC ecosystem:

This plugin also supports standalone text format files with a .textproto or .pb. extension. Text formant by default
does not provide a way to associate a file with its schema (a message in a .proto file). But the plugin supports
the following comments in a text proto file:
# proto-file: path/to/file.proto
# proto-message: SomeMessage
# proto-import: path/to/file_with_extensions.proto
# proto-import: path/to/another_file_with_extensions.proto
foo: bar
Filenames are relative to configured roots (see Settings). The proto-message name is scoped
relatively to the package declared in the proto-file file. proto-message follows the same resolution rules as type
names in .proto files.
62 commits
1 commits
Hacker News (1)
Java
91.4%
Starlark
5.7%
Python
1.5%
This plugin has been adopted by JetBrains and now lives primarly at https://github.com/JetBrains/intellij-plugins/tree/master/protobuf. Future releases will be bundled with certain versions of JetBrains' tools. As such, this repository likely won't see new updates. Issue tracking and other stuff is still in a bit of a transition phase.
IntelliJ plugin for editing Google Protocol Buffers. Features include:
proto2 and proto3
This is a fork of google/intellij-protocol-buffer-editor which was released unsupported.
Install from the JetBrains plugin repository, or:
This project uses Bazel.
To build protobuf-editor.jar:
bazel build //plugin
To run tests:
bazel test //...
By default, the collection of project source roots is used as the protobuf search path, and the protobuf descriptor and well-known type files are provided by the plugin JAR. These paths can be customized in the editor's language settings:

To customize:
Configure automaticallyPrefix column can be used to specify an import prefix for the path. So, for example, if the path is
src/protos and the prefix is foo/bar, the file at src/protos/mine.proto would be imported as
foo/bar/mine.proto.Protobuf Text Format is most commonly used to specify long-form option values in .proto files. For example, as seen
in the GRPC ecosystem:

This plugin also supports standalone text format files with a .textproto or .pb. extension. Text formant by default
does not provide a way to associate a file with its schema (a message in a .proto file). But the plugin supports
the following comments in a text proto file:
# proto-file: path/to/file.proto
# proto-message: SomeMessage
# proto-import: path/to/file_with_extensions.proto
# proto-import: path/to/another_file_with_extensions.proto
foo: bar
Filenames are relative to configured roots (see Settings). The proto-message name is scoped
relatively to the package declared in the proto-file file. proto-message follows the same resolution rules as type
names in .proto files.
Hacker News (1)
62 commits
1 commits
Java
91.4%
Starlark
5.7%
Python
1.5%