利用Hexo+Github搭建个人博客

前言

很多写字的人都想搭建一个属于自己的博客,本文提供一种最便捷的(而且免费)方法,那就是利用 Hexo+Github 搭建个人博客。首先感谢 @洪卫 博主的教程,本博客就是按照他的教程搭建的,只不过是更简单一点的。有需要的可以直接点击链接,本文主要是写一下我在搭建过程中遇到的问题。

如何实现支持数学公式

如果你选择的主题支持数学公式就不需要看这一步了。

可以采用的是 Hexo 的插件:

不过,使用这个插件之前,需要安装Pandoc(版本要大于2.0.0),国内下载很慢,所以我委托了国外的朋友帮我下载了,这里是windows上的Pandoc2.9.1.1百度云 提取码:8ws4 .

安装好之后,就安装上面两个插件就可以了。

写文章和发布文章

首先在博客根目录下右键打开git bash,安装一个扩展npm i hexo-deployer-git

然后输入hexo new post "article title",新建一篇文章。

然后打开D:\Study\MyBlog\source\_posts的目录,可以发现下面多了一个文件夹和一个.md文件,一个用来存放你的图片等数据,另一个就是你的文章文件啦。
你可以会直接在vscode里面编写markdown文件,可以实时预览,也可以用用其他编辑md文件的软件的工具编写。
编写完markdown文件后,根目录下输入hexo g生成静态网页,然后输入hexo s可以本地预览效果,最后输入hexo d上传到github上。这时打开你的github.io主页就能看到发布的文章啦。

公式示例

公式代码1:
\hbar\frac{\partial}{\partial t}\psi=-\frac{\hbar^2}{2m}\nabla^2\psi+V\psi

$$
i\hbar\frac{\partial}{\partial t}\psi=-\frac{\hbar^2}{2m}\nabla^2\psi+V\psi
$$

公式代码2:

\begin{eqnarray\*}
\nabla\cdot\vec{E}&=&\frac{\rho}{\epsilon_0}\\\\
\nabla\cdot\vec{B}&=&0\\\\
\nabla\times\vec{E}&=&-\frac{\partial B}{\partial t}\\\\
\nabla\times\vec{B}&=&\mu_0\left(\vec{J}+\epsilon_0\frac{\partial E}{\partial t}\right)\\\\
\end{eqnarray\*}

\begin{eqnarray*}
\nabla\cdot\vec{E}&=&\frac{\rho}{\epsilon_0}\\
\nabla\cdot\vec{B}&=&0\\
\nabla\times\vec{E}&=&-\frac{\partial B}{\partial t}\\
\nabla\times\vec{B}&=&\mu_0\left(\vec{J}+\epsilon_0\frac{\partial E}{\partial t}\right)\\
\end{eqnarray*}

评论系统

可以参考https://segmentfault.com/a/1190000019295776 ,这篇博客总结了很多常见的问题。

如何在评论系统支持数学公式

可参考http://blog.sciencenet.cn/home.php?mod=space&uid=2398747&do=blog&id=881516

评论区没有正文的符号支持功能,直接把正文中的数学公式拷贝到评论区一般也是行不通的,但是大家可以考虑使用Unicode的数学符号。Wikipedia上的英文版的数学符号就是一个大全。高手更是可以不需拷贝直接输入Unicode。需要注意的是,不同的浏览器的默认字体对于Unicode的支持程度是不一样的。比如说我用Firefox的默认设置能基本显示所有的数学符号,但是Chrome的默认设置就只支持比较常见的那些。如果要方便读者不用变更默认字体就能看的话,还是要避免不常见的符号。

当然正文的数学公式都是读者的浏览器使用Javascript(MathJax库程序)直接生成的(在慢一点的平板电脑或手机上这个会很明显),同样的功能扩展到评论区只是举手之劳。站主能否做就看大家的需求与呼声大小了。

注:

本博客采用的是Fluid主题。

有帮助的链接:
Hexo搭建的GitHub博客之优化大全
Hexo NexT 博客增加知乎豆瓣图标支持

#

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×