A闪的 BLOG 技术与人文
最近由于工作需要建立一个文档中心的站点,考虑使用一套网站程序。处于对自定义灵活度要求比较高,同时有希望后台程序不要过于复杂。经过反复的选择与尝试,最终选定了“Jekyll”。
其实Jekyll不算严格的网站程序,因为他仅仅是将我们编写的Markdown转化为静态网页,选择Jekyll也有如下几个原因。
1、支持Markdown编写。其实,我们的内容全都都是用Markdown编写的。毕竟不用考虑样式,编写时只关心内容就可以了。
2、灵活的皮肤制作。说实话,Jekyll是我见过的对皮肤样式最没有要求的了。想做成什么样子就成什么样子。
3、生成静态网站,访问速度快。其实,对于我们的服务器来说,使用个PHP什么的不是太大问题,不过我是真心不想搞PHP那玩意。
4、方便。说道方便这一点,虽然没有什么好用的后台可视化界面,不想wordpress这样的程序,但编写配置文件也算挺方便的了。
其实最初选定的几个相似的程序都还令我满意,最终我已经断定需要使用Markdown来编写内容。但找到的其他几个程序不是模板不方便就是文档资料太少,实在是难以下手。最终还是选取的Jekyll,同时Jekyll也是github后台是所用的工具,大家在github中建立博客,生成的方法也是通过Jekyll来实现的,所以,还算我没走眼。
再好的东西也不会太令人愉快的,我是针对程序员用的东西来说的。当你对某一个东西一知半解的时候,任何事情都会成为你的绊脚石。在开始使用Jekyll的时候,有几个令我非常不愉快的地方。
首先是文章的命名,由于所有文件都要求放在_post文件夹下(我对这个规则没有任何意见),但文件命名都需要按照时间顺序来编写,这一点让我非常苦恼。因为文档中心站的分类非常多,我不得不按照每个年份的月份来规划我的内容分类。这也导致了我将2014年到2009年10月份的日期全部用上了!我的天啊!你能想象到底有多少个分类。
其次是模板的制作,这消耗了我大量的精力。因为网站中需要出现多个子分类,我以为使用Jekyll内置的模板引擎加载循环遍历可以搞定这一切,后来我发现我错了。因为Jekyll中默认的模板引擎使用Liquid模板语言,我实在搞不定这个语言中自定义变量的使用方法。这导致了我颇费了一般周折。最终还是将分类信息写到了_config.yml配置文件中。以至于我们的配置文件包含了大量的分类信息。不过最终我发现了一个非常方便的用途。当我想关闭某一个分类的时候,我只需要在配置文件中将分类信息注释掉就可以了。不需要讲所有相关的文件移动到_drafts目录中。
经过一番折腾,最终还是将文档中心站点制作完成。后期编写Markdown就爽多了!哈哈哈!