Hello World
新博客完成,这个Hexo博客是搭建在Github上的静态页面博客。我在博客这条路上的路线也是蛮弯的,WordPress、Octopress、Jekyll、Hexo。这个博客主题由主题yilia修改而来,样式参照了Octopress主题greyshade,在此表示感谢。
从Octopress到Jekyll
我是先入的Octopress的坑,在这个过程中,闯过了HTML5,CSS3,JavaScript的初学者关卡,还有额外关卡Liquid,Ruby,Sass,Compass,Stylus,也是一边查攻略一边过了。Sass和函数库Compass让我第一次知道CSS还有这么好用的preprocessor,各种mixins,各种强大。
Octopress比Jekyll扩展程度高,有些过滤器比如category_links是Jekyll没有的,所以需要另外根据需要将rb文件添加到_plugin里面,所有的rb文件会自动编译。Octopress支持compass,但是Jekyll还不支持compass,需要装一个插件jekyll-compass。这个插件的介绍和安装方法在上面的Github链接里面有详细的介绍。装好之后Jekyll就支持compass了,可以把scss文件放到博客文件夹下的_compass中。这个文件夹里所有下划线开头的文件都不会被编译(但是可以在其他的scss文件里面import),只有sass/scss文件会被编译。
Compass的编译命令是compass compile
,也可以直接用jekyll build
或者jekyll serve
来编译并生成网站,这个状态下compass是开启watch模式的,也就是会监视你更新的项目文件并自动编译,这时Jekyll如果监视选项也是打开的,那么也就会自动更新静态网页了。
两个Tips
我在编译插件category_generator时出现了错误
1 Build Warning: Layout 'none' requested in ... does not exist.
这时只要把category_feed.xml中的nil改为null即可。
本地Jekyll的中文博客md文件名不能含有中文,且需要为UTF-8(无BOM)格式编码,必须是无BOM,要不然会编译错误。
从Jekyll到Hexo
在修改样式的过程中,发现原主题greyshade的样式代码比较混乱,但是我作为菜鸟一只,也不知道静态博客中好的架构到底是什么样的,不得已也就先用着了,心想着总有一天我要重构一下。后来我发现yilia主题和greyshade主题很相似,而且作者的代码也写得很规范,我正好在学JavaScript,所以就入了Hexo的坑。不得不说Hexo的确生成静态页面很快。
继续做改进
博客还有继续改进的空间,包括
- 样式修改,添加加载进度条
- 增加demo作品集
- 移动端布局的优化
- 性能优化,延迟加载
有空再说吧。。