19a3db3d0875275c33b4d7b70cf7e6e5f0bc9ae3
protoc-gen-gotemplate
📂 protocol generator + golang text/template (protobuf)
Generic protocol buffer generator backed by Golang's text/template.
This is a generator plugin for the Google Protocol Buffers compiler (protoc).
The plugin can generate files based on a template directory using the Golang's text/template engine.
Usage
protoc-gen-gotemplate requires a template_dir directory (by default ./templates).
Every files ending with .tmpl will be processed and written in the destination folder, following the file hierarchy of the template_dir, and removing the .tmpl extension.
$> ls -R
input.proto templates/doc.txt.tmpl templates/config.json.tmpl
$> protoc --gotemplate_out=. input.proto
$> ls -R
input.proto templates/doc.txt.tmpl templates/config.json.tmpl
doc.txt config.json
You can specify a custom template_dir or enable debug:
$> protoc --gotemplate_out=debug=true,template_dir=/path/to/template/directory:. input.proto
See examples.
Install
- Install the Go compiler and tools from https://golang.org/doc/install
- Install protobuf:
go get -u github.com/golang/protobuf/{proto,protoc-gen-go} - Install protoc-gen-gotemplate:
go get -u github.com/moul/protoc-gen-gotemplate
License
MIT
Description
Languages
Go
77.9%
HTML
19.3%
Ruby
1.1%
Dockerfile
0.9%
Makefile
0.8%