<commit_before># fis-parser-handlebars

A parser plugin for fis to precompile handlebars v3.x template.

### 1. 安装插件：

> npm install -g fis-parser-handlebars

### 2. 配置

```js
// fis-conf.js
fis.config.set('modules.parser.handlebars', 'handlebars-3.x');
fis.config.set('project.fileType.text', 'handlebars');
fis.config.set('roadmap.ext.handlebars', 'js');
```

### 3. 使用
创建foo.handlebars的模板文件，其中的内容是：
```hanblebars
<div class="entry">
  <h1>{{title}}</h1>
  <div class="body">
    {{body}}
  </div>
</div>
```

创建foo.js的js文件，内容是：

```js
var tpl = __inline('foo.handlebars');
var context = {title: "My New Post", body: "This is my first post!"};
var html = console.log(tpl(context));
console.log(html);
```

在页面上引入handlebars的 [runtime版本](http://builds.handlebarsjs.com.s3.amazonaws.com/handlebars.runtime-v3.0.3.js) 作为运行时模板引擎框架。<commit_msg>fis-parser-handlebars => fis-parser-handlebars-3.x<commit_after># fis-parser-handlebars

A parser plugin for fis to precompile handlebars v3.x template.

### 1. 安装插件：

> npm install -g fis-parser-handlebars-3.x

### 2. 配置

```js
// fis-conf.js
fis.config.set('modules.parser.handlebars', 'handlebars-3.x');
fis.config.set('project.fileType.text', 'handlebars');
fis.config.set('roadmap.ext.handlebars', 'js');
```

### 3. 使用
创建foo.handlebars的模板文件，其中的内容是：
```hanblebars
<div class="entry">
  <h1>{{title}}</h1>
  <div class="body">
    {{body}}
  </div>
</div>
```

创建foo.js的js文件，内容是：

```js
var tpl = __inline('foo.handlebars');
var context = {title: "My New Post", body: "This is my first post!"};
var html = console.log(tpl(context));
console.log(html);
```

在页面上引入handlebars的 [runtime版本](http://builds.handlebarsjs.com.s3.amazonaws.com/handlebars.runtime-v3.0.3.js) 作为运行时模板引擎框架。

### Demo
[fis3 use-handlebars-3.x](https://github.com/fex-team/fis3-demo/tree/master/use-handlebars-3.x)
{'fraction_non_alphanumeric': 0.20361247947454844, 'fraction_numerical': 0.01532567049808429, 'mean_word_length': 4.784810126582278, 'pattern_counts': {'":': 0, '<': 15, '<?xml version=': 0, '>': 18, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7069100', 'n_tokens_mistral': 801, 'n_tokens_neox': 794, 'n_words': 131}