通过我的模板</div>将一些降价数据从一个降价文件移动到html中的不同<div>部分

时间:2013-10-10 03:20:53

标签: ruby markdown jekyll middleman redcarpet

如何使用我的html模板解析markdown来切断或将一些代码块从* .md移动到html?

我有这样的降价文件: carrot_soup.md

Very nice carrot soup
============

I'd like soup like this:

### Ingredients ###

      * carrots
      * celery
      * lentils

### Coocking ###

Boil some water. And eat it with all Ingredients

我需要解析它:

<div class="head"">
<h1>Very nice carrot soup</h1>
<p>I'd like soup like this:</p>
</div>
<!-- Something else -->

<div class="Ingredients">
<ul>
<li>carrots</li>
<li>celery</li>
<li>lentils</li>
</ul>
</div>

<div class="Coocking">
<p>Boil some water. And eat it with all Ingredients</p>
</div>

我需要将一个降价数据从一个降价文件移动到我的html模板中的不同部分

我有:

1)html模板 2)静态构建引擎 3)带有降价代码的文件

在我的html模板中,我有一些<div>个部分 我需要将markdown数据与html模板结合使用。我需要剪切一些降价代码并将此代码放到不同的html <div>部分。怎么做?

1 个答案:

答案 0 :(得分:0)

回答问题

现在你的降价读取很难,因为降价中没有任何内容可以提取部分内容。如果你不想改变你的降价格式(或者使用更适合这种格式的东西)那么你可以用一些javascript(或者css)来做客户端。将“其他”部分放在生成的代码的末尾,并使用您使用javascript找到的ID。把它移到你想要的地方。如果您总是有一个名为Ingredients的标题,那么您应该能够查询该元素并在其之前插入其他内容。如果您可以使用div来标记部件,那么它可能会更加安全。

更好的选择

我不知道jekyll,但我正在使用的nanoc有一个标题,你放在你的源文件中,你可以从你的布局中提取信息。我会把标题和描述放在那里,然后在我的布局中将它们拉出来。 nanoc markdown文件如下所示:

---
title: Very nice carrot soup
kind: recipe
created_at: 2013-10-03 1:59:00
author: fredrik
description: This is some really good carrot soup.....
---
### Ingredients ###

  * carrots
  * celery
  * lentils

### Cooking ###

Boil some water. And eat it with all Ingredients

并且布局将提取标题和作者。片段:

<div class="head">
    <h1><%= @item[:title] %></h1>
    <p><%= @item[:description] %></p>
</div>
<%= add_some_more_stuff %>
<%= yield %>

你可以用jekyll做类似的事情。