在使用杰基尔我想窝在降价HTML文件。 有没有办法实现类似于下面的东西?
# index.html
---
layout: default
---
<p>[Stack Overflow](http://www.stackoverflow.com)</p>
注:我知道,我能做到这一点,而不是。
# index.html
---
layout: default
---
<p><a href="http://www.stackoverflow.com">Stack Overflow</a></p>
这里是你如何定义一个降价块具有杰基尔插件 :
module Jekyll
class MarkdownBlock < Liquid::Block
def initialize(tag_name, text, tokens)
super
end
require "kramdown"
def render(context)
content = super
"#{Kramdown::Document.new(content).to_html}"
end
end
end
Liquid::Template.register_tag('markdown', Jekyll::MarkdownBlock)
(要安装这个片段作为一个插件,把它放在一个*.rb
文件下_plugins
源站点根目录)
然后,使用这样的:
{% markdown %}
[Stack Overflow](http://www.stackoverflow.com)
{% endmarkdown %}
编辑 :见@克里斯蒂安的答案更好的解决方案! 如果您使用Kramdown(这是很可能的情况下,因为使用的是化身),你可以使用它的功能,使内降价div
的有markdown="1"
属性。
如果您是基于使用Kramdown, 他们的文档 ,你可以这样做:
<div markdown="1">
My text with **markdown** syntax
</div>
而这样一来,内文div
呈现为降价。
确保使用.md
或.markdown
扩展名的文件,如.html
文件不会被发送到Kramdown进行处理!
@晴天-juneja,检查出的液体扩展筛选称为markdownify
:
https://github.com/mojombo/jekyll/wiki/liquid-extensions#markdownify
使用这样的:
<p>{{ '[Stack Overflow](http://www.stackoverflow.com)' | markdownify }}</p>
把单或双引号的字符串输出标签内。
对我的作品的哲基尔1.0.0beta3
看看保罗爱尔兰的主旨的JS代码可以解释你的网页的部分从降价到HTML。
由于当前杰奇3.6.2生活可以更简单了很多有以下两种选择:
<div>
{{ "## Yes, this renders as markdown" | markdownify }}
</div>
注意降价属性:
<div markdown="1">
## some markdown
inside some html. `snippet` _italic_ **bold**
</div>