今天终于在 Github 上成功搭建起 Jekyll ,虽然很丑,但是因为是自己定制的丑,还是很开心。

以后会慢慢美化这个博客,将更多的知识输出出来。

安装

# in ubuntu you need install ruby before you get gem
sudo apt install ruby

gem install jekyll bundler

# or in Ubuntu
sudo apt install jekyll

bundler

bundler provides a consistent environment for Ruby projects by tracking and installing the exact gems and versions that are needed.

主题

可以使用 bundle show <theme> 查看主题所在的文件夹。比如:bundle show minima

minima 主题自带 jekyll-seo-tag 插件,可以在页面中使用如下 YAML front matter 字段,以提升搜索效果:

  • title
  • description
  • image
  • author
  • locale

如果要升级 minima 版本,可以在 Gemfile 中修改,然后执行 bundle 安装新版本。

数学公式

在网页显示数学公式,有两种方案:

  • MathJax,排版质量高,功能丰富,符号全面
  • KaTeX,渲染速度快,功能不如 MathJax 全面

GitHub Pages 仅支持 MathJax。如果想在 GitHub Pages 中使用 MathJax,首先在根目录下创建 _includes/mathjax.html 文件,内容如下:

<script>
MathJax = {
    tex: {
        inlineMath: [['\\(', '\\)']],
        displayMath: [
            ['$$', '$$'],
            ['\\[', '\\]']
        ]
    }
}
</script>
<script id="MathJax-script" async src="https://unpkg.com/mathjax@3/es5/tex-mml-chtml.js"></script>

然后将 mathjax.html 按需引入到布局文件中。比如,当 use_mathtrue 时,才包含这个文件。

在需要数学公式的文章顶部,设置 use_math: true front matter。

行内函数使用 \\(\\) 包裹,比如:\(2^3=8\)。

块级公式使用 \\[\\] 包裹,也可以使用 $$ 包裹,比如:

\[\int_m^n{(a + b)}dt = c\]

网站地图

jekyll-sitemap 可以自动创建网站地址。用法如下:

  1. 在 Gemfile 增加 gem 'jekyll-sitemap',然后运行 bundle
  2. 在网站 _config.yml 中增加如下内容:
...
plugins:
    - jekyll-sitemap

目录

如果 Jekyll 使用了 kramdown 引擎,那么会很容易。根据 Sean Buscay博客,只需要在待插入目录的地方加入以下代码即可:

* TOC
{:toc}

REF