hexo升级新版本问题

Problem1

最近因为重装了系统,今个重新安装 hexo 的时候,hexo generate 出来,还是 ejs 源码,markdown 也没有生成 html,而是直接拷贝到 public 目录…

我查看了 hexo 的新版本@2.8.0 (DateTime.Now = 2014-7-15 18:13)
看到有 dependency : hexo-render-underscore
可能是因为 hexo 的新版本换了生成器吧…

那就换回老版本呗…

  1. 查看第一篇 hello-world 的时候,看以前安装之后运行hexo init的时间
  2. 运行npm view hexo time,查看 hexo 的更新时间
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
'2.4.2': '2013-12-29T14:47:40.249Z',
'2.4.3': '2014-01-11T05:01:29.303Z',
'2.4.4': '2014-01-12T02:01:25.501Z',
'2.4.5': '2014-01-14T07:39:44.212Z',
'2.5.0': '2014-03-14T13:30:30.810Z',
'2.5.1': '2014-03-14T15:33:10.939Z',
'2.5.2': '2014-03-16T02:38:57.053Z',
'2.5.3': '2014-04-15T13:58:53.617Z',
'2.5.4': '2014-04-26T15:25:58.344Z',
'2.5.5': '2014-04-27T05:45:49.776Z',
'2.5.6': '2014-04-27T16:46:42.767Z',
'2.5.7': '2014-05-10T14:29:49.648Z',
'2.6.0': '2014-05-18T10:01:19.865Z',
'2.6.1': '2014-05-31T05:46:16.801Z',
'2.6.2': '2014-06-06T16:38:42.040Z',
'2.6.3': '2014-06-09T06:38:22.914Z',
'2.7.0': '2014-06-14T00:57:57.015Z',
'2.7.1': '2014-06-14T17:07:50.300Z',
'2.8.0': '2014-07-13T14:30:44.564Z' }
  1. 找到版本`@2.5.7,运行npm i hexo@2.5.7 -g`解决

中间多尝试几次就行,我就按 init 时间找的@2.6.0 版本,问题依旧,往前找 2.5.7 OK…
说明 hexo 在我硬盘里还是积了一周左右的灰…npm i hexo -ghexo init之间还有一段距离


Update 2014-10-26 16:04:02

上面原因是 hexo 把一些生成器作为你的依赖,而不是 hexo 的依赖…例如 ejs stylus 等,它是让你hexo init .一下,就会生成 private 为 true 的 package.json 文件,里面包含依赖什么的。

解决办法就是自己添加依赖项。然后 npm i

1
2
3
4
5
"dependencies": {
"hexo-renderer-ejs": "*",
"hexo-renderer-stylus": "*",
"hexo-renderer-marked": "*"
}

Problem 2

新版本,代码高亮出现了空白行,hexo 的 repo 里面一堆 issue…讨论结果是由主题解决…

解决办法(Pacman 主题)
hexo\themes\pacman\source\css\_base\code.styl

添加的内容是.line height 20px,层级如下,大概添加到 69 - 70 行

1
2
3
4
.article-content
.highlight
.line
height: 20px