Skip to content
速览
  • 最有用的一条:开头别铺垫,先把结果说出来。
  • 最能建立信任的一招:把自己判断错的地方写出来。
  • 最容易被忽略的一点:排版不是装饰,是让别人能扫。
  • 能上图表、代码框、折叠块的,就别堆成大段文字。

起因:我嫌自己写的东西有股机器味 ​

写前两篇的时候,每次都读着别扭。句子挑不出错,但就是不像人话,像谁替我写了份说明书。

这个问题自己猜是猜不明白的。我干脆去看那些写了十几年博客的人是怎么写的,看他们的方法、也看他们的排版。

看了谁,各拿走什么 ​

看谁他强在哪我拿走什么
Julia Evans用手画的图讲系统,一张图顶一段话配图要讲清机制,不做装饰
Simon Willison每天记一条"今天学会的",十分钟写完就发短笔记也是正经文章,不用等大题目
Dan Luu长短句交替,专门写自己错在哪承认判断失误最值钱
Netflix、Stripe、Cloudflare 的工程博客标题里带结果,正文里带翻车把结论前置,主动写失败
中文技术博客的排版规范每段不超过五行、标题分级、代码块标语言先把骨架立起来,再谈内容

看下来最大的意外是:这几个人风格差得很远,长度也差得很远,但都在同一件事上不偷懒——把"我为什么这么判断"写清楚。

结构上最大的变化:从"讲课"改成"讲一遍经过" ​

教程式的写法是背景、原理、示例、总结,四平八稳。问题是读完你记住的是方法,记不住是谁写的。

叙事式从一个具体现场切进去,读者跟着你走一遍。

同一件事,两种排法叙事式:从现场切进去,读者跟着你走一遍具体情境一个困惑怎么查的机制是什么卡住的地方一句结论教程式:四平八稳,读完记不住是谁写的背景原理示例总结两种都能写完,差别在于读者读完记住的是方法,还是你

拿我自己的第三篇举例。事实是一样的,换两种排法:

❌ 本文介绍博客搭建过程中遇到的问题及解决方案。

✅ 搭这个博客花了三个晚上,其中一半时间在排查跟博客本身无关的事。

第一句得等我讲完才知道有没有货。第二句你一眼就知道要不要往下读。

改了第一件事:把自己判断错的地方写出来 ​

这是我原来最不敢写的地方。写完发现,它反而是全篇最有用的部分。

❌ 推送失败通常由网络问题导致。

✅ 我一开始认定是网络问题,重试了三次都一样。最后发现是环境里配的代理是死的。

第一句谁都能写。第二句只有真被卡过的人写得出来。

判断错了不是减分项

读者信的从来不是"你一直很对",而是"你踩过这个坑,你知道坑在哪"。把错误的判断和后来怎么发现的都写下来,比只给结论有用得多。

改了第二件事:能用图表、代码框、折叠块的,就别用大段文字 ​

排版不是把东西弄好看,是让人能扫。我给自己定了几条对应关系:

要写的内容用什么形式
几个方案的取舍表格,一行一个方案
一段代码、一条命令代码块,标上语言和文件名
一条流程、一条链路配图
会打断主线、但有人想看的细节折叠块,想看的自己展开
一句希望读者记住的话提示块

光这一段说完没什么感觉,得能上手用。所以我把站点也改了:

  1. 文章开头加快览卡片,赶时间的人看完这一块就够了。
  2. 文章列表标上阅读时长,点之前知道要花几分钟。
  3. 正文支持提示块和折叠块,主线和细节分开。
  4. 代码块支持行高亮和删改标注,讲"从这块改成那块"的时候,不用再拿文字描述。
  5. 正文能插配图,讲链路和结构的时候比画表格清楚。
这些是怎么实现的

没有装任何新插件,全是 Markdown 自带的写法:

  • 提示块:::: tip 标题 开头,::: 结尾
  • 折叠块:::: details 标题,外面默认收起
  • 代码行高亮:在行尾加 // [!code ++](新增)或 // [!code --](删掉)
  • 代码块标文件名:在语言后面接 :文件名
  • 配图:图片放到 docs/public/ 下面,正文里按路径引用

不引新依赖是刻意的。加一个插件就多一处会崩的地方,这些写法已经够用。

也顺手改了排版参数 ​

查了一圈中文排版的说法,几个数反复出现:正文 16 到 18 像素,行高是字号的 1.6 到 1.8 倍,每行大概三十个汉字,段落之间的空隙要大于行与行之间的空隙。还有两条反直觉的:别用纯黑字,也别用纯白底,屏幕上会显得生硬。

我按这些调了正文的行高、段落间距和标题间距。改完最直观的变化是,一屏里的字少了,但读起来不累。

三条我自己定的规矩 ​

看再多别人的方法,落到最后就是几条能执行的检查:

  1. 删掉署名还成立的文章,就是通用教程。 得往里补自己的东西:具体环境、具体失败、具体判断。
  2. 每段问一遍:这段换个 AI 也能写吗? 能,就删掉。
  3. 结尾不总结。 落到具体的一步,或者一句短的判断,别写"总而言之"。

下一步 ​

把这几条规矩写进那个"对话转博客"的流程里,以后每篇写完都按它过一遍。

规矩是要改的。等写到十几篇,再回来看哪几条其实没必要,哪几条当时该更狠一点。

用 VitePress 搭的,托管在 GitHub Pages