hexo 搭建博客
之前用jekyll在Github上面搭建了一个博客,但是发现语法高亮什么的,并不完全是markdown格式的,而且迁移起来也奇奇怪怪的,于是决定换成hexo来搭建。另外一个原因是想在博客里面写一些数学公式等等,但是却发现没有什么主题是支持的,然后就想自己改一个,结果发现自己改的实在太丑,不想用,当然,作为工程师型的人,丑不丑倒是无所谓,主要是配来配置去把耐心给消耗了,最后决定用别人写好的主题,选择了next漂亮而且支持数学公式等等(当然数学公式的支持就是添加一个js库MathJax就可以搞定了,也不是什么难事)。
hexo的部署可以参考官网和一些网上的资料,已经有很多了。这里主要记录一下hexo的一些主要使用方法。
写作
-
草稿
通过
hexo new [layout] <title>这样的命令就可以生成对应的文件,比如草稿hexo draft "draft"(如果题目有空格,要带双引号,layout 默认是 post,这些 layout 都存在_scaffolds下面)。可以通过 hexo 设置是否在网站上显示草稿,我设置的是显示(设置_config里面的render_drafts为true即可)。 -
发布
发布可以选择草稿发布,也可以选择直接发布新文章,对应的命令分别是
hexo publish [layout] <title>和hexo new [post] <title>,这个时候生成的静态文件里面就可以看到新的文章了。 -
前缀
tags 和 categories 里面的内容,按照
[content1, content2, ...]的格式就可以分开显示在标签栏里面。 -
特殊插入
tag-plugins 中可以找到一些特殊需要的插入,比如插入 gist、twitter 的引用或者 youtube 视频等等。
-
i18n
支持国际化,在
_config.yml下面设成1
2
3language:
- zh-CN
- en设置
_config.yml里面的i18n_dir可以根据路径前缀判断对应的语言。在发布的时候带上--lang选项设置语言,比如hexo new "Hello World" --lang tw就可以针对不同的语言产生对应目录。 -
数学公式
数学公式主要依赖于 MathJax,在编辑文本的时候
$$...$$用来表示行间数学公式,\\(...\\)用来表示行内数学公式,比如\\(a^2+b^2=c^2\\)的效果是 。而$$ a^2+b^2=c^2 $$就会另起一行:具体的使用可以在这里查看。注意 markdown 的一些符号需要在公式里面转义,省的被 markdown 语法误解。
补记:本站已于 2026 年从 MathJax 切换到 KaTeX,行内公式统一用
$...$,行间公式用$$...$$,\\(...\\)这种写法不再需要。