MDUtil

Markdown 格式化

粘贴写法杂乱的 Markdown,用大多数编辑器都在使用的 Prettier 整理成统一的风格,内容不会上传。

Markdown

158 个字符21 行

格式化结果

正在格式化……0 行

能处理什么

Prettier 的规则
结果和 Prettier 的输出一致,编辑器再次格式化时不会再变化。
统一写法
下划线式标题变成 # 标题,列表符号统一为 -,斜体写成 _文字_,加粗写成 **文字**,编号列表重新编号。
表格对齐
表格各列补齐宽度,竖线排成一列,中日文也一样。
整理空行
去掉多余的空行,标题、列表和代码块前后各保留一个空行。
自动换行
可以保持原样,可以在 80 或 100 个字符处换行,也可以让每段只占一行。
代码保持不变
代码块和行内代码的内容不会有任何改动。

在项目里格式化 Markdown

用 Prettier 格式化文件夹里的所有 Markdown 文件:

npx prettier --write "**/*.md"

在 .prettierrc 文件里设置和这个页面相同的选项,例如在 80 个字符处换行:

{
  "proseWrap": "always",
  "printWidth": 80
}

在 VS Code 里安装 Prettier 插件并打开「保存时格式化」,每次保存文件都会自动格式化。

常见问题

怎么格式化 Markdown 文件?

把 Markdown 粘贴到上面或者打开文件,然后复制或下载格式化后的结果。要在项目里自动格式化,可以按上文的方法运行 Prettier。

格式化会改变显示效果吗?

不会。只改变源码的写法,例如把 * 列表符号改成 -,渲染出来的页面不变。

「统一写法」有什么作用?

在 Prettier 运行之前,先把有多种写法的元素改成同一种,例如下划线式标题和 ~~~ 代码围栏。关闭时,Prettier 会保留下划线式标题的原样。

长行要不要自动换行?

在 80 个字符处换行,Git 里的差异更容易阅读。如果 Markdown 要放到会显示换行的编辑器或网站里,例如部分 Wiki,请保持原样。

内容会上传吗?

不会。Prettier 在你的浏览器里运行,Markdown 不会离开你的设备。