vscode侧边栏大纲不显示标题需检查三项设置:explorer.experimental.showoutline设为true、outline.automaticcollapse设为false、文件语言模式为markdown;若仍空白,检查开发者工具console是否报错failed to resolve outline provider。

VSCode侧边栏大纲(Outline)不显示标题?检查这三项设置
VSCode默认不会在侧边栏显示Markdown文档的大纲,不是插件没装对,而是几个关键配置被关掉了。最常漏掉的是explorer.experimental.showOutline——它控制“大纲”面板是否出现在资源管理器里。
必须同时满足以下条件,侧边栏才能出现可点击的标题导航:
-
explorer.experimental.showOutline设为true(新版VSCode中该选项已移至设置界面“Explorer > Show Outline”) -
outline.automaticCollapse设为false,否则大纲会自动收起成单行 - 当前文件语言模式必须是
markdown(右下角状态栏确认,不是plaintext或其他)
如果已启用但仍是空白,用快捷键 Ctrl+Shift+P 输入 Developer: Toggle Developer Tools,看 Console 是否报错 Failed to resolve outline provider for 'markdown'——说明语言服务器未加载,重启 VSCode 或重装内置 Markdown 扩展即可。
用 Markdown All in One 插件生成文档内 TOC 时,中文标题链接失效?
生成的目录项如 - [使用说明](#使用说明) 在 GitHub 或 Docsify 中能跳转,但在 VSCode 内置预览里点不动,大概率是锚点 ID 生成规则不一致。VSCode 默认把中文标题转成 URL 编码(如 %E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E),而插件生成的链接用的是原始文本。
解决方法只有改插件行为,不要动 VSCode 内置逻辑:
- 打开插件设置,搜索
markdown.extension.toc.slugifyMode - 把它从默认的
github改成vscode - 再执行
Markdown: Create Table of Contents,新生成的链接就会匹配 VSCode 预览的锚点格式
注意:改完后旧目录不会自动更新,得手动删掉重生成。别指望“自动刷新”,这个插件不监听标题变更事件。
docsify 的左侧 TOC 总是空?三个路径和语法硬约束
用 docsify 搭本地服务想看左侧导航栏,但只显示 “SUMMARY” 文字或完全空白,基本逃不开这三个问题:
-
_sidebar.md必须和index.html在同一级目录,且文件名带前导下划线;放错位置 docsify 就当它不存在 -
_sidebar.md里不能只写# 章节一,必须用列表语法,例如:- [章节一](./README.md#章节一),纯标题行不解析 - 目标文档(如
README.md)里至少要有两个##级别或更深的标题,#一级标题默认不进 TOC
验证方式很简单:打开浏览器开发者工具,切到 Network 标签页,刷新页面,看有没有 _sidebar.md 请求返回 404 或内容为空。有就修路径,没请求说明 docsify 根本没读那个文件。
为什么不用插件也能看到大纲,但点标题不滚动到对应位置?
VSCode 的大纲视图(Outline)和编辑器之间的跳转联动,依赖两个独立机制:一个是语言服务器提供符号位置,另一个是编辑器启用同步滚动。前者正常,后者关了,就会出现“能看见标题、点不了”的情况。
检查并确保开启:
-
markdown.preview.syncScrolling设为true(控制预览窗口跟随编辑器滚动) -
editor.linkedEditing设为true(影响部分跳转行为,尤其在含链接的标题中) - 不要在设置里搜 “scroll” 就停,
syncScrolling是完整单词,漏字母就找不到
这个联动只在 Markdown 预览窗口生效,不是所有插件预览都支持。比如 Markdown Preview Enhanced 的独立窗口就不走这套逻辑,它有自己的跳转实现——所以换插件前先确认你到底要哪个环境里的导航。











