docsify 侧边栏自动生成脚本
打包成exe文件,程序大小约为5M,还是比较轻量的,主要文件有:
- buildSidebar.exe -> 执行程序后在config.ini设置的根目录下文件夹生成READMD.md和_sidebar.md(名称可自定义)
- config.ini -> 配置生成文件的一些输出文件\忽略情况等选项,具体可以看config.ini文件中注释
图片效果部分在最下面的案例中有
1. 脚本介绍
docsify好像没法自动读取文件夹目录结构并且展示在页面上,需要对每个文件夹配置_sidebar.md文件
我用python做了一个脚本,基本就用到了os库中的一些函数,打包程序只有5M左右
该程序运行的配置参数在config.ini,无特殊需求默认即可(默认忽略“_”和"."开头的文件)
1.1 程序链接
2. 操作步骤
将config.ini文件和buildSidebar.py(或者exe程序)放在同一目录,如果对忽略文件没有特别要求,只需要修改config.ini文件中的base_dir
为docsify根目录路径即可,双击运行程序
2.1 config.ini格式
[config]
# docsify根目录
base_dir=D:\MyData\Data\Docsify\docs
# 忽略以“_”,"."开头的文件,如果要添加新文件,用“|”分隔
ignore_start_with=_|.
# 只读取".md"格式问价,如果添加新格式,用“|”分隔
show_file=.md
# 要忽略的文件名,要添加新文件,用“|”分隔
ignore_file_name=README
[outFile]
# 想要在几级目录生成文件,默认"-1"表示所有文件夹生成,"0"表示在根目录生成,可以配合侧边栏折叠插件使用
create_depth=0
# 每个文件夹下主页文件名称和侧边栏文件名,默认README.md和_sidebar.md文件,想生成其他名称可修改文字,或者添加用“|”分隔
eachFile=README.md|_sidebar.md
3. 例子1
在每一个子文件夹下生成文件
原先文件夹的结构是
docs
│ .nojekyll
│ ceede.md
│ index.html
│ _coverpage.md
│
├─PLC
│ │ 电梯群控算法.md
│ │
│ └─最新测试
│ hi回答.md
│
├─_media
│ Pasted image 20230403194327.png
│
└─启发式算法
│ 差分进化算法.md
│
└─测试
测试.md
我在config.ini设置忽略(默认参数,可以不用动):
- 以"_“,”."开头的文件
- 忽略文件名为README的文件
- 结构中只包括".md"开头的文件
运行程序得到的结构是
docs
│ .nojekyll
│ ceede.md
│ index.html
│ README.md
│ _coverpage.md
│ _sidebar.md
│
├─PLC
│ │ README.md
│ │ _sidebar.md
│ │ 电梯群控算法.md
│ │
│ └─最新测试
│ hi回答.md
│ README.md
│ _sidebar.md
│
├─_media
│ Pasted image 20230403194327.png
│
└─启发式算法
│ README.md
│ _sidebar.md
│ 差分进化算法.md
│
└─测试
README.md
_sidebar.md
测试.md
可以看到_media没有被操作,也符合要求
3.1 图片效果
点击子目录后页面变成如下
4. 例子2
上面的格式中,点击相应文件夹实际上会跳转,如果不想跳转,可以设置config.ini文件的create_depth参数
当参数为-1时候,则每个文件夹生成文件
当参数为0时,仅在根目录生成
该功能配合侧边栏折叠效果更好
原先结构
docs
│ .nojekyll
│ ceede.md
│ index.html
│ _coverpage.md
│
├─PLC
│ │ 电梯群控算法.md
│ │
│ └─最新测试
│ hi回答.md
│
├─_media
│ Pasted image 20230403194327.png
│
└─启发式算法
│ 差分进化算法.md
│
└─测试
测试.md
config.ini中create_depth
设为0
生成的新结构
docs
│ .nojekyll
│ ceede.md
│ index.html
│ README.md
│ _coverpage.md
│ _sidebar.md
│
├─PLC
│ │ 电梯群控算法.md
│ │
│ └─最新测试
│ hi回答.md
│
├─_media
│ Pasted image 20230403194327.png
│
└─启发式算法
│ 差分进化算法.md
│
└─测试
测试.md
可以看到仅在根目录生成了文件
4.1 图片效果
配合侧边栏折叠插件效果极佳