2012-10-19 07:02:45 +08:00
# Options
2013-01-11 05:08:29 +08:00
## separator
Type: `String`
Default: linefeed + linefeed
Concatenated files will be joined on this string.
2012-11-28 22:41:10 +08:00
## namespace
2012-10-19 07:02:45 +08:00
Type: `String`
Default: 'JST'
2012-10-03 21:46:16 +08:00
2012-10-19 07:02:45 +08:00
The namespace in which the precompiled templates will be asssigned. *Use dot notation (e.g. App.Templates) for nested namespaces.*
2012-10-03 21:46:16 +08:00
2012-11-28 22:41:10 +08:00
## processName
2013-01-11 05:08:29 +08:00
Type: `function`
2012-10-19 07:02:45 +08:00
Default: null
2012-10-03 21:46:16 +08:00
This option accepts a function which takes one argument (the template filepath) and returns a string which will be used as the key for the precompiled template object. The example below stores all templates on the default JST namespace in capital letters.
```js
options: {
processName: function(filename) {
return filename.toUpperCase();
}
}
```
2012-11-28 22:41:10 +08:00
## templateSettings
2013-01-11 05:08:29 +08:00
Type: `Object`
2012-10-19 07:02:45 +08:00
Default: null
2012-10-03 21:46:16 +08:00
The settings passed to underscore when compiling templates.
```js
jst: {
compile: {
options: {
templateSettings: {
interpolate : /\{\{(.+?)\}\}/g
}
},
files: {
"path/to/compiled/templates.js": ["path/to/source/**/*.html"]
}
}
}
2012-11-27 02:02:20 +08:00
```
2012-11-28 22:41:10 +08:00
## prettify
2013-01-11 05:08:29 +08:00
Type: `boolean`
2012-11-27 02:02:20 +08:00
Default: false
When doing a quick once-over of your compiled template file, it's nice to see
an easy-to-read format that has one line per template. This will accomplish
that.
2013-01-11 05:08:29 +08:00
```js
2012-11-27 02:02:20 +08:00
options: {
prettify: true
}
```
2012-11-28 22:41:10 +08:00
## amdWrapper
2013-01-11 05:08:29 +08:00
Type: `boolean`
2012-11-27 02:02:20 +08:00
Default: false
With Require.js and a pre-compiled template.js you want the templates to be
wrapped in a define. This will wrap the output in:
2013-01-11 05:08:29 +08:00
```js
2012-11-27 02:02:20 +08:00
define(function() {
//Templates
return this["NAMESPACE"];
});
```
Example:
2013-01-11 05:08:29 +08:00
```js
2012-11-27 02:02:20 +08:00
options: {
amdWrapper: true
}
```
2012-12-29 21:18:21 +08:00
## processContent
2013-01-11 05:08:29 +08:00
Type: `function`
2012-12-29 21:18:21 +08:00
This option accepts a function which takes one argument (the file content) and
returns a string which will be used as template string.
The example below strips whitespace characters from the beginning and the end of
each line.
2013-01-11 05:08:29 +08:00
```js
2012-12-29 21:18:21 +08:00
options: {
processContent: function(src) {
return src.replace(/(^\s+|\s+$)/gm, '');
}
}
```