跳转至

配置博客

距离上一篇文章已经过去了三天,我竟然刚刚配置好博客系统。这大概是所有做技术的人都容易陷入的怪圈,折腾工具的时间远远超出预期甚至延迟了开始干正事的时间。

我理想的博客有这么几个要求:

  1. 费用足够低
    • 欠费会导致数据丢失
    • Databricks还没上市,我现在穷的叮当响
  2. 保存得足够持久
    • 一般运营商不考虑,因为有可能因为经营不善关闭业务(哪怕是Google)
  3. 支持富文本格式
    • 技术文章经常有插图和代码需要写
  4. 纯文本格式:易于导出和保存
    • Wordpress之类的选项就直接被排除了
  5. 支持多语言

但是这几个这么一看下来,其实没几个选项了。刚好之前看到计算机自学网站csdiy.wiki的使用系统mkdocs-material很美观而且比较符合要求,就评估了一下:

  1. 免费!开源项目,且可以依赖 Github Pages 服务免费发布
  2. 它的生命周期跟Github是一致的!只要Github不倒,可以一直保存下去
  3. 支持Markdown的各种增强插件,公示和插图都不是问题
  4. Markdown本身就是文本格式,插图可以用Excalidraw和VSCode的插件,完美!
  5. 有多语言支持,启用后顶部的language-selector可以切换

看上去似乎很完美。但是后来我之所以花费那么多时间主要是因为多语言支持的插件mkdocs-static-i18n和mkdocs-material的blog插件有兼容性问题,只可以二选一。

在那个讨论贴中他们提了好几种方案,然而我一看,所有改动都加到一个付费的insider版本,而订阅这个版本的费用是每个月15美元——我当然还没有阔到这个地步。于是我就试图去读他们的源代码想着自己改一个。最后发现其实理论上是可行的,我改出来页大体能用,但是导航栏的生成还是有些问题——这是不可忽略的,而要改好他们需要花费大量的时间,我就放弃了,还是等官方免费版本吧。

于是我的折衷策略是:

  • 个人主页不用blog插件而启用mkdocs-static-i18n的插件,这样可以双语无缝切换
  • 博客系统启用blog插件,只写中文,同时翻译一些我觉得质量高的文章放到个人主页

不过缺点是我需要维护两个Github Repository。希望他们早日把多语言的博客插件做好,这样我能够进行合并。

评论