包含标签 octopress 的文章

Jekyll 下 Pygments 支持的语言及其缩写名

使用 Octopress 后,一直搞不清 Jekyll 下 Pygments 支持的高亮语言及其缩写名,写了一个脚本获取,方便查询。

require 'pygments'
print '|Format', ' '*24, '|Short names for highlight tag', ' '*36, "|\n"
print '|', '-'*30, '|', '-'*65, "|\n"
Pygments.lexers.sort.each do |k,v|
  names = v[:aliases].join(',')
  print '|', k, ' '*(30-k.size), '|', names, ' '*(65-names.size), "|\n"
end
……

阅读全文

为 Octopress 添加草稿功能

Octopress 默认没有草稿功能,在 _post 目录中保存草稿非常不便,只要有一篇文章处于未完成状态,那么就没办法发布,因为没有人会愿意将一篇未完成的文章展示给读者。有了草稿功能这个问题就解决了,除此之外,还可以很方便的将头脑风暴的产物添加到草稿中,等到以后去逐步成熟完善。下面就为 Octopress 添加草稿功能:

……

阅读全文

Octopress 加速 - 对静态资源预 Gzip 压缩

Nginx 等 HTTP 服务器加载了 Gzip 模块都可以开启对静态资源的压缩,减少与客户端间的传输消耗,那为什么还要实行预 Gzip 压缩呢?这么做的好处是:节省了服务器压缩静态资源的开销,同时预压缩可以提供最大压缩比。

……

阅读全文

基于 javascript 的 html 压缩工具 - html-minifier

压缩 html 的工具很多,前面也在 Octopress 加速 - 压缩 Html 中介绍过 html_compressorhtml_compressor 需要 java 环境支持,很多时候会让对 java 心存愤懑的童鞋望而却步。不过今天在 github 偶然发现了一个基于 javascript 的压缩方案 html-minifier,star 和 fork 都不少。

html-minifier 的可设置选项非常多,除了常规用法外,还支持命令行。但当我压缩 Octopress 输出的 html 文件时,代码中只要含有 {% ... %} 字段就会报错,探究一番,发现选项 --custom-attr-surround 可以设置不被处理的字符串,支持正则。

……

阅读全文

在 Octopress 中对分类的 url 和名称进行分离设置

Octopress 的默认“分类”处理机制是:

  1. 分类名是英文,url 使用 stringex Gem 转成小写加连字符形式,名称转换成小写。
  2. 分类名是中文,url 使用 stringex Gem 转成汉语拼音加连字符的形式,名称保持中文不变。
  3. 中英混合参照 1、2。

分类名是英文时,名称强制转换成小写实在不科学,有很多单词,比如 SEO,约定俗成了要大写。分类名是中文时,url 转成汉语拼音的形式也让我无法接受,总感觉有点傻,还有个潜在的风险,两个完全不同的中文单词,读音相同的话,生成的 url 就会完全一致,比如技术基数

下面是我对 Octopress plugins 目录下 category_generator.rb 所做的修改:

……

阅读全文