[Jekyll]从模板开始创建博客:常见问题

create: 2018-12-08 | update:2018-12-08

摘要

写Jekyll框架的博客采了很多坑?快点进来看一看有没有和我一样遇到这些坑,希望这些帮助能节省你百度的时间。

相关系列文章

入门篇 提高篇 常见问题


Jekyll框架介绍

Jekyll框架用于生成静态网页,可以部署到Github Page上,其所有页面(包括.html和.md)都会使用Liquil语法来解析文本。这可以写出丰富多彩的页面,但是自动转义也会出现很多隐藏的坑。

若要了解更多Jekyll框架的内容和Liquid的语法,请自行百度,在这里我只会将基础的Liquid语法。

常见问题

1.当你发现网页生成出现错误了,或者网页显示与你预想的不符,那么很可能是Liquid自动转义坑了你。

例如,当你在未关闭Liquid自动转义而编写下列内容时,会出现不一样的内容。

{% for index in (1..5) %}
index={{ index }}
{% endfor %}

实际显示的内容:



index=1

index=2

index=3

index=4

index=5


那么,如果你要显示原来的文本,而不是转义后的文本,那么你需要用将不需要转义的文字(可以是多行)用{% +raw+ %}{% +endraw+ %}(把+号删掉)包裹起来。较好的实践是,当你需要在文档中显示liquid脚本时,用这对标记把所有的文本包裹起来。

2.显示不出图片,或者不知道怎么在文章中添加图片

一般来说,插入图片需要用到网页的绝对路径,应使用liquid脚本来包装。要理解这个内容,需要理解md中关于插入图片的语法:

![图片名](图片链接)

例如,当你需要显示路径为media\pic1.jpg的图片时,你需要写以下内容。

注意,此段有liquid脚本,所以这一部分文字必须打开转义,但是,一般文档不需要额外注意这一点。

![图片名]({{ "/media/pic1.jpg" | absolute_url }})
3.编写文章的代码块时,发现换行符被吃了

一般来说,这种问题只能通过多添加空格来处理了。

目前已知的会被吃的换行:

  1. cpp#//开始的文本。