VSCode侧边栏位置仅支持left或right,通过workbench.sideBar.location配置;活动栏图标顺序由workbench.activityBar.visibleEntries数组定义;侧边栏内视图可拖拽重排;工作区settings.json会静默覆盖用户设置。

侧边栏整体位置只能设为 left 或 right
VSCode 不支持自由拖拽侧边栏到任意屏幕位置,workbench.sideBar.location 是唯一生效的配置项,值只能是 "left" 或 "right"。设为 "bottom" 会触发错误,VSCode 直接忽略;设为其他字符串(如 "center")也无效。该配置必须写在用户级或工作区级 settings.json 的顶层对象中,嵌套在其他字段里(比如放在 "editor" 下)不会生效。
常见误配是把 workbench.activityBar.location 和它混淆——后者只控制活动栏图标是否显示在右侧,**不移动侧边栏主体**,反而可能导致图标悬空、Explorer 还在左边的错位现象。
Activity Bar 图标顺序可手动定义
VSCode 1.85+ 支持用 workbench.activityBar.visibleEntries 精确控制左侧活动栏图标的显隐与顺序。它不是靠拖拽,而是靠 JSON 数组声明视图 ID 的排列优先级。
- 先运行命令
Developer: Generate Default Activity Bar Entries获取当前有效 ID 列表 - 然后在
settings.json中写入类似:"workbench.activityBar.visibleEntries": [ "workbench.view.explorer", "workbench.view.search", "workbench.view.scm" ]
- 数组中缺失的 ID(如
"workbench.view.debug")会被隐藏;顺序即 UI 中从上到下的排列 - ID 名称大小写敏感,且不能拼错(例如
"workbench.view.explorere"会失效)
侧边栏内各视图(Explorer、Search 等)可拖拽重排
你可以在侧边栏内部直接拖动面板标题栏(如“搜索”、“源代码管理”),调整它们上下顺序。这个操作实时生效,并持久化保存——不需要重启或重载窗口。
但注意:这个拖拽仅限于侧边栏区域内,不能把某个视图拖进编辑器区或底部面板区;也不能拖到 Activity Bar 上(那属于图标排序,不是视图排序)。
右键点击面板标题栏选择 Hide View 只是临时隐藏,重启后恢复;要永久禁用,得配合 workbench.views.visible 或禁用对应扩展。
工作区 settings.json 会静默覆盖用户设置
哪怕你在用户级 settings.json 里写了 "workbench.sideBar.location": "right",只要项目根目录下有 .vscode/settings.json,且其中包含 "workbench.sideBar.location": "left",它就会生效——VSCode 不提示、不警告、也不在设置 UI 里标冲突。
排查方法很简单:
打开命令面板 → 输入 Preferences: Open Workspace Settings (JSON) → 搜索 sideBar.location。
如果存在,删掉或改成 "right";否则检查是否有其他配置项(如 "workbench.layoutControl.enabled")被禁用,这会拦截所有布局逻辑。
真正容易被忽略的是:某些团队模板或脚手架自动生成的 .vscode/settings.json 里默认锁死为 "left",你调了一下午布局,结果每次 clone 新项目又回到原点。


















