[skip ci] Explain .tmplkeep

Signed-off-by: jolheiser <john.olheiser@gmail.com>
pull/17/head
jolheiser 2021-01-02 21:26:46 -06:00
parent c497431a52
commit 6da38f5721
No known key found for this signature in database
GPG Key ID: 83E486E71AFEB820
3 changed files with 17 additions and 2 deletions

View File

@ -0,0 +1,6 @@
<!--
1. Did you add documentation?
2. Did you add tests?
3. Do you need to re-run formatting?
4. Do you need to re-run docs.go?
-->

View File

@ -120,3 +120,12 @@ I realize that many users will be using GitHub, and most will likely still be us
* Once in the new location, you will need to use `tmpl restore`.
2. Alternatively, you can copy/paste the entire registry (default: `~/.tmpl`) and skip the restore step.
## `.tmplkeep`
Perhaps you are familiar with `.gitkeep` and its unofficial status in git. Git does not like empty directories, so usually
a `.gitkeep` (or just `.keep`) file is added to retain the directory while keeping it effectively empty.
tmpl instead uses `.tmplkeep` files for this purpose. The difference is, tmpl will **not** create the `.tmplkeep` file
when the template is executed. This allows you to set up directory structures (for staging, examples, etc.) that
will *actually* be empty after execution.

View File

@ -28,7 +28,7 @@ func main() {
md = md[strings.Index(md, "#"):]
// CLI is using real default instead of DefaultText
md = regexp.MustCompile(`[\/\w]+\.tmpl`).ReplaceAllString(md, "~/.tmpl")
md = regexp.MustCompile(`[\/\\:\w]+\.tmpl`).ReplaceAllString(md, "~/.tmpl")
if _, err := fi.WriteString(md); err != nil {
panic(err)