引言

在无纸化信息处理的流程中,信息输入、信息整理阶段的工具选择已经很多了,雨后春笋般不断浮现的笔记工具让人眼花缭乱。但到了信息输出和展示的环节——例如发表自己的读书心得、思考或是学习笔记,或是为自己的软件项目撰写文档——现有解决方案则总有明显的遗憾之处。

一方面,如果选择语雀、Notion 这样的第三方云端文档平台来存放,定制空间就很有限,且数据始终是寄人篱下。另一方面,如果选择 WordPress 这类 CMS 或近年流行的 JekyllHugo 或是 Hexo 等「静态网站生成器」,随之而来的技术门槛和复杂操作又容易打消人的创作和分享热情。

以我个人为例,我想通过搭建简单的静态网站来很好地展示我在学习编程过程中的所作的笔记、对问题的看法等,将它们作为一个 Cookbook 或系统化的参考文档来使用,同时也兼具美观和可读性。对此,上述主流框架都有些「杀鸡用牛刀」的感觉,那么,有没有更好的方式呢?

我遇见的答案是 MkDocs

什么是 MkDocs?

MkDocsMarkdown Documents)是一个快速、简单的静态网站生成器,用于将 Markdown 文档组织起来构建成有层次、美观的文档站点。

MkDocs 基于 Python 编写,也贯彻了 Python 里「简洁胜于复杂」的理念,与其他常见的静态网站生成器相比,无需繁琐的环境配置(如 Jekyll 涉及的 Bundler、Gems 等),所有配置都用只有简单的一个配置文件管理,并且当中配置项的内容也仅有一页文档。

MkDocs 见名知意就是为 Markdown 而生,根据 Markdown 格式将内容渲染成美观的文档,并通过目录层级关系对应文档的树状结构,使得当中所有的文档组织分明且层次递进。