我正在寻找一个简单的模板引擎,它将YAML剪切为上下文,并且非常适合阅读Markdown以及一些标记来生成Markdown。我尝试过Jekyll的液体,它起作用,除了在Markdown中非常重要的空白。
例如使用此输入...
---
samples:
- name: one
samplecode: |
function sample() {
return 1;
}
- name: two
samplecode: |
function sample() {
return 2;
}
---
{% for s in page.samples %}
- {{s.name}}
{{s.samplecode}}
{% endfor %}
输出是:
- one
function sample() {
return 1;
}
- two
function sample() {
return 2;
}
而不是实际使用Pandoc的以下内容:
- one
function sample() {
return 1;
}
- two
function sample() {
return 2;
}
这实际上是discussed before for Jekyll。
所以我的问题是:有没有适合我需要的简单模板引擎?
答案 0 :(得分:7)
我认为你可以使用pandoc中内置的模板引擎来做你想做的事。
t.tpl
:
$for(samples)$
- $samples.name$
$samples.samplecode$
$endfor$
t.md
:
---
samples:
- name: one
samplecode: |
```
function sample() {
return 1;
}
```
- name: two
samplecode: |
```
function sample() {
return 2;
}
```
---
注意:我们将代码示例放在代码栏中,因为pandoc将元数据值解释为markdown。
然后:
% pandoc --template t.tpl -f markdown -t markdown t.md
- one
function sample() {
return 1;
}
- two
function sample() {
return 2;
}