GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
MUSTACHE(1) Mustache Manual MUSTACHE(1)

mustache - Mustache processor

mustache <YAML> <FILE>
mustache --compile <FILE>
mustache --tokens <FILE>

Mustache is a logic-less templating system for HTML, config files, anything.

The mustache command processes a Mustache template preceded by YAML frontmatter from standard input and prints one or more documents to standard output.

YAML frontmatter begins with --- on a single line, followed by YAML, ending with another --- on a single line, e.g.

---
names: [ {name: chris}, {name: mark}, {name: scott} ]
---
    

If you are unfamiliar with YAML, it is a superset of JSON. Valid JSON should work fine.

After the frontmatter should come any valid Mustache template. See mustache(5) for an overview of Mustache templates.

For example:

{{#names}}
  Hi {{name}}!
{{/names}}
    

Now let´s combine them.

$ cat data.yml
---
names: [ {name: chris}, {name: mark}, {name: scott} ]
---
$ cat template.mustache
{{#names}}
  Hi {{name}}!
{{/names}}
$ mustache data.yml template.mustache
Hi chris!
Hi mark!
Hi scott!
    

If you provide multiple YAML documents (as delimited by ---), your template will be rendered multiple times. Like a mail merge.

For example:

$ cat data.yml
---
name: chris
---
name: mark
---
name: scott
---
$ cat template.mustache
Hi {{name}}!
$ mustache data.yml template.mustache
Hi chris!
Hi mark!
Hi scott!
    

By default mustache will try to render a Mustache template using the YAML frontmatter you provide. It can do a few other things, however.
-c, --compile
Print the compiled Ruby version of a given template. This is the code that is actually used when rendering a template into a string. Useful for debugging but only if you are familiar with Mustache´s internals.
-t, --tokens
Print the tokenized form of a given Mustache template. This can be used to understand how Mustache parses a template. The tokens are handed to a generator which compiles them into a Ruby string. Syntax errors and confused tags, therefore, can probably be identified by examining the tokens produced.

If you have RubyGems installed:
gem install mustache
    

$ mustache data.yml template.mustache
$ cat data.yml | mustache - template.mustache
$ mustache -c template.mustache
$ cat <<data | ruby mustache - template.mustache
---
name: Bob
age: 30
---
data

Mustache is Copyright (C) 2009 Chris Wanstrath

Original CTemplate by Google

mustache(5), gem(1), http://mustache.github.io/
November 2016 DEFUNKT

Search for    or go to Top of page |  Section 1 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.