diff --git a/README.md b/README.md index 1ddf2cf..c103b5e 100644 --- a/README.md +++ b/README.md @@ -3,8 +3,39 @@ Generic protocol buffer generator backed by Golang's [text/template](https://golang.org/pkg/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`](https://golang.org/pkg/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. + +--- + +```console +$> 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`: + +```console +$> protoc --gotemplate_out=debug=true,template_dir=/path/to/template/directory:. input.proto +``` + +--- + See [examples](./examples). ## Install