GGB数学云 基于Hexo对网站改版

基于Hexo对网站改版

2017年7月5日 人阅读 Markdown»LaTeX

摘要: 基于Hexo和定制的Hexo主题搭建静态内容网站,允许在Markdown格式文章中嵌入LaTeX数学公式。

之前我基于AngularJS开发了 GGB数学云 单页面应用(SPA)网站,基于jekyll搭建了支持GGB在线展示的静态博客网站。遇到的主要问题是SPA网页加载较慢、功能蔓延引起代码结构过于复杂、不适合SEO搜索优化。

本次按多页面应用进行网站改版,基于Hexo和我定制的vexo主题开发博客和其他页面,希望能带来全新的体验改善。其中,定制的vexo主题包含了站内搜索和优化的自适应布局。

代码样例

这是Markdown正文的行内代码块block的例子。
下面是多行代码的例子:

1
2
3
4
(function() {
var s = 'hello world ';
console.log(s + 'Hexo');
})();

支持LaTeX的数学公式

_config.yml 中指定 math.engine,使用 Mathjax 或速度更快的 KaTeX 渲染引擎。

1
2
math:
engine: 'katex' # mathjax | katex

然后在Markdown正文中使用$$$math标记嵌入LaTeX表达式排入数学公式。

单行行内公式

两个$之间的LaTeX单行表达式 $c = \pm\sqrt{a^2 + b^2}$:$c = \pm\sqrt{a^2 + b^2}$
mathendmath之间:cos2θ=cos2θsin2θ=2cos2θ1\cos 2\theta = \cos^2 \theta - \sin^2 \theta = 2 \cos^2 \theta - 1

单行块公式

两个$$之间的LaTeX表达式:$$\int_{-\infty}^\infty g(x) dx$$: $$\int_{-\infty}^\infty g(x) dx$$

1
2
$$\frac{1}{\Bigl(\sqrt{\phi \sqrt{5}}-\phi\Bigr) e^{\frac25 \pi}} =
1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {1+\frac{e^{-6\pi}} {1+\frac{e^{-8\pi}} {1+\cdots} } } }$$

$$\frac{1}{\Bigl(\sqrt{\phi \sqrt{5}}-\phi\Bigr) e^{\frac25 \pi}} =1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {1+\frac{e^{-6\pi}} {1+\frac{e^{-8\pi}} {1+\cdots} } } }$$
注意:KaTeX引擎暂不支持多行的$$,两个$$必须在同一行内。

多行块公式

或者 mathendmath之间:

1
2
3
4
5
6
7
{% math %}
\begin{aligned}
\dot{x} & = \sigma(y-x) \\
\dot{y} & = \rho x - y - xz \\
\dot{z} & = -\beta z + xy
\end{aligned}
{% endmath %}

x˙=σ(yx)y˙=ρxyxzz˙=βz+xy\begin{aligned} \dot{x} & = \sigma(y-x) \\ \dot{y} & = \rho x - y - xz \\ \dot{z} & = -\beta z + xy \end{aligned}
分享到: 更多