Fun in Octopress
Octopress是个很不错的东西,在下面的这篇blog中,则是用流水帐的方式介绍如何在本地构筑发布环境,以及如何发布blog。
Work to First
1)当然是取得Octopress的源码了,建议直接用git从github上clone回来一个。
2)ruby的版本是1.9.2,不然这套系统是不会工作的。(1.9.3没试过)
3)gem是必须的,初次构筑环境的话还需要先安装bundler,
gem install bundler
之后运行bundle来安装所依赖的gem
bundle install
使用rvm的注意:
在项目的根目录下会有一个叫的.rvmrc
的文件,如果你想让它在指定的gemset下安装依赖的gem的话,需要把该gemset的名字给写上即可,like it
rvm use 1.9.2@octopress
How to Use
rake install #生成默认的主题
rake new_post["title"] #生成一篇文章
这时候会在source/_posts
下生成一个markdown的文件,上半部分采用的yaml格式标注了该blog的一些属性,比如发布时间等,在下面的则是blog的正文。
当写完blog后可以通过
rake generate #生成静态文件到public目录下
rake preview #在服务器启动服务,端口号为4000
这两命令让自己在本地看看效果。Done。
修改了内容的话,修改完毕后即可直接在本地服务上看到效果,不用运行rake generate
。
创建页面(page)的话
rake new_page["about"] #生成一个页面,地址为octopress.com/about.html
rake new_page["about/index"] #生成一个页面,地址为octopress.com/about/
要把该页面的链接添加到导航栏上的话,则是在source/_includes/custom
文件夹下的navigation.html
文件中添加即可。
Configuration
该blog的所有配置都是在_config.yml
文件中定义,主要修改的就是Main Config
这一节下的东西了,比如blog的标题、作者等等,而其他配置在该文件里面有很详细的解释,想修改的话照着提示做就可以了。
Publish
gem install heroku
heroku create yourweb
git commit -m 'publish'
git push heroku master
记得在往heroku发布前,把.gitignore
文件里面的public
给去掉。
Tips
安装POW
POW对于本地调试来说是个很不错的东西
curl get.pow.cx | sh
cd ~/.pow
ln -s /path/to/octopress
这样不用每次都通过rake preview
来启动服务,而且可以直接在本地通过访问urloctopress.dev
来查看效果。
压缩js以及css代码
octopress使用自带的模板的话,生成的js代码是没经过压缩的,不过可以使用YUI Compressor来帮助我们完成这项工作。
首先先去这下载YUI Compressor并在本地解压出来,接着从build
文件夹中复制yuicompressor的jar文件(最新的为yuicompressor-2.4.7.jar
)到项目的tools
文件夹中。
接下来在Rakefile
文件中添加如下代码即可。
1 | desc "zip javascript and/or css file(s)." |
使用方法
rake zip #压缩javascript跟css文件
rake zip[js] #只压缩javascript文件
rake zip[css] #只css文件
Other Documentation
##Update
1)在Windows下出现以下类似的问题的时候,
D:/Ruby192/lib/ruby/gems/1.9.1/gems/jekyll-0.11.2/lib/jekyll/convertible.rb:29:in `read_yaml': invalid byte sequence in UTF-8 (ArgumentError)
请把生成的.markdown
文件编码给改成”UTF-8无BOM格式”。