为 GitHub 和 GitLab 的 Markdown 页面生成一个右侧悬浮目录,方便阅读较长的 README、Wiki 和项目文档。
- 同时支持 GitHub 与 GitLab 的 Markdown 页面
- 根据
h1到h4标题自动生成层级目录 - 自动高亮当前阅读章节,点击目录项可平滑跳转并更新链接锚点
- 支持拖拽、收起与展开,并记住目录位置和收起状态
- 自动适配 GitHub、GitLab 的浅色与深色主题
- 精准识别主文档区域,避免混入评论区中的标题
- 监听单页应用(SPA)页面变化,仅在标题变化时更新目录
- 支持键盘焦点、减少动画偏好和窄屏布局
- 安装 Tampermonkey 或其他兼容的用户脚本管理器。
- 从 Greasy Fork 脚本页面 安装。
- 打开 GitHub 或 GitLab 中包含 Markdown 文档的页面。
也可以直接打开仓库中的 git-md-tree.user.js,复制内容后在用户脚本管理器中创建脚本。
在 git-md-tree.user.js 的元数据区添加自己的域名匹配规则:
// @match *://gitlab.example.com/*为避免脚本在无关网站运行,请将示例域名替换为准确的私有 GitLab 域名,不建议使用过宽的通配规则。
项目不依赖构建工具,入口文件就是可安装的用户脚本:
git-md-tree.user.js
修改后可以使用 Node.js 做基础语法检查:
node --check git-md-tree.user.js提交新版本前,请同步更新脚本头部的 @version。
问题和改进建议请通过 GitHub Issues 提交,并尽量附上浏览器、用户脚本管理器版本和复现步骤。