Markdown 标题自动添加编号
如果常用 VSCode,只想找一个方便添加序号的方法,那么用 Markdown-index 之类的扩展要更方便。
说明
这是一个实现给本地 Markdown 文件添加标题编号的 python 脚本。可与 Markdown 文件自动生成目录 搭配使用。
假设你现在有一个 Markdown 文件,这个文件有很多级标题且标题没有编号,如图:
一个一个自己添加编号很麻烦,但有这个 python 脚本就可以不用愁了。
使用
-
首先,你需要安装好 python 解释器并配置好了环境变量。网上有很多教程,这里就不作介绍了;
-
然后,你需要将该 python 脚本与 Markdown 文件复制到同一个目录下(注意该目录要有写入权限,如果后面运行程序时报错显示没有写入权限);
-
接下来,你可以选择直接双击脚本开始运行(需要系统默认为用 python 解释器打开 .py 文件),或者通过 powershell、cmd、git 之类的命令行工具输入命令运行,下面以 powershell 为例演示。
在该文件夹下按住 shift
键并右击鼠标,在菜单中点击 在此处打开 powershell 窗口
:
因为我的 Markdown 文件文件名和 python 源文件名分别为 README.md
和 title_number.py
,所以在进入 powershell 后,输入 python title_number.py README.md
并回车:
这时候会发现 powershell 中显示 文件已生成
,这说明文件生成成功了。回到文件夹下会发现新生成了一个文件:
这就是已经给标题编号了的 Markdown 文件,如图:
补充
-
虽然程序具备处理特殊情况的能力,但为了尽可能避免特殊情况,建议使用时将 Markdown 文件中的标题分级、规范地写好。如果出现编号出错,请检查 Markdown 标题是否规范。如检查标题后确定没问题,可以到 GitHub 提 issue 或者直接在这里回复。
-
如果你的文件名包含空格,如
Getting start Java.md
,那么,你需要在输入命令时用引号将其括住,即输入python AddTitleNumber.py 'Getting start Java.md'
。如果遇到了其他正确输入文件名但提示未找到文件
的情况,可以尝试将文件重命名,如命名为 'readme.md',或者直接双击脚本运行。 -
现在一个已知的问题是程序可能会受到 python 行注释符号
#
的干扰而无法正常运行,后期可能会完善。