一直想弄清楚博客是怎么从一堆 Markdown 变成网页的。于是我用不到两百行 Python 写了一个最小可用的生成器。
核心思路
本质上只有三步:读取源文件、渲染模板、写出 HTML。
for md in glob("posts/*.md"):
html = render(md)
write("public/" + slug(md) + ".html", html)
模板用了最简单的字符串替换,足够应付个人站点。
工具的价值不在于复杂,而在于你真正理解它每一步在做什么。
收获了什么
- 对”构建”这件事有了体感
- 更珍惜那些好用的开源工具
- 顺手把本博客的早期原型也理清了
