侧边栏可移至右侧,需设置"workbench.sidebar.location": "right";activity bar随之右移但可能被忽略,可拖动调整宽度或设"workbench.activitybar.visible": true。

侧边栏默认在左边,怎么移到右边?
VSCode 的侧边栏(Activity Bar + Explorer 等)默认固定在左侧,但确实能移到右侧——不是靠拖拽,而是改设置。关键配置项是 workbench.sideBar.location,值设为 "right" 即可生效。
- 在 VSCode 中按
Ctrl+,(Windows/Linux)或 Cmd+,(macOS)打开设置
- 搜索
sideBar location,找到 Workbench > Side Bar: Location 这一项
- 点击下拉菜单,选
right;或者直接编辑 settings.json,加一行:"workbench.sideBar.location": "right"
- 保存后立即生效,无需重启
Ctrl+,(Windows/Linux)或 Cmd+,(macOS)打开设置sideBar location,找到 Workbench > Side Bar: Location 这一项right;或者直接编辑 settings.json,加一行:"workbench.sideBar.location": "right"
注意:这个设置是全局的,影响所有工作区。如果只希望某个项目用右侧侧边栏,得配合 settings.json 的工作区级配置(即放在 .vscode/settings.json 里),否则会覆盖用户级设置。
改完后 Activity Bar(图标栏)不见了?
把侧边栏移到右侧后,Activity Bar(最左边那一竖排图标)默认会跟着一起移到右边——但它本身宽度窄、图标小,在右侧容易被忽略,甚至被误以为“消失了”。
- 它没丢,只是现在贴着编辑器右边缘显示
- 如果你同时开了
Terminal 或 Debug Console 面板,它们也会堆在右侧,可能把 Activity Bar 挤到最右边、几乎看不见
- 解决办法:鼠标悬停在最右边缘,等光标变成双向箭头时,往左拖动一点宽度;或者手动在
settings.json 中加"workbench.activityBar.visible": true
确保它强制显示
Terminal 或 Debug Console 面板,它们也会堆在右侧,可能把 Activity Bar 挤到最右边、几乎看不见settings.json 中加"workbench.activityBar.visible": true确保它强制显示
别指望靠 UI 拖拽来调位置——VSCode 不支持自由拖动 Activity Bar 到顶部或底部,它的位置完全由 workbench.sideBar.location 和界面布局逻辑决定。
和 Vim 插件或 Zen Mode 冲突吗?
基本不冲突,但有边界情况要注意:
-
Vim 插件(如 vscodevim)只接管键盘行为,不影响侧边栏位置逻辑
- 进入
Zen Mode(Ctrl+K Z)时,侧边栏默认会被隐藏——无论它在左还是右;退出 Zen Mode 后,它会回到你设的 right 位置
- 少数主题(比如某些高对比度或自定义 CSS 主题)可能没适配右侧侧边栏的 padding 或 margin,导致图标错位或文字截断;这时要检查主题是否声明了
workbench.sideBar.location 相关样式覆盖
Vim 插件(如 vscodevim)只接管键盘行为,不影响侧边栏位置逻辑Zen Mode(Ctrl+K Z)时,侧边栏默认会被隐藏——无论它在左还是右;退出 Zen Mode 后,它会回到你设的 right 位置workbench.sideBar.location 相关样式覆盖真正容易出问题的是多显示器 + 高 DPI 缩放场景:有时窗口从一个屏拖到另一个屏后,侧边栏宽度异常,需手动调一次宽度再保存设置。
为什么改了设置没反应?常见卡点
不是所有“侧边栏”都能被这个配置控制:
-
Explorer、Search、Git 等视图属于侧边栏内容,受 workbench.sideBar.location 控制
- 但
Panel(底部面板,比如 Terminal、Problems)完全独立,它的位置由 workbench.panel.defaultLocation 控制,设成 "right" 会让 Terminal 跑到右侧——这和侧边栏不是一回事,别混
- 如果你在
settings.json 里写了 "workbench.sideBar.location": "right" 却没生效,先检查有没有拼写错误(比如写成 "sidebar" 少了点)、有没有被更高优先级的设置覆盖(比如工作区设置覆盖了用户设置)
- 还有个隐蔽坑:
Remote - SSH 或 Dev Containers 环境下,设置必须写在远程环境的 settings.json 里,本地改无效
Explorer、Search、Git 等视图属于侧边栏内容,受 workbench.sideBar.location 控制Panel(底部面板,比如 Terminal、Problems)完全独立,它的位置由 workbench.panel.defaultLocation 控制,设成 "right" 会让 Terminal 跑到右侧——这和侧边栏不是一回事,别混settings.json 里写了 "workbench.sideBar.location": "right" 却没生效,先检查有没有拼写错误(比如写成 "sidebar" 少了点)、有没有被更高优先级的设置覆盖(比如工作区设置覆盖了用户设置)Remote - SSH 或 Dev Containers 环境下,设置必须写在远程环境的 settings.json 里,本地改无效侧边栏位置这事本身很简单,难的是判断当前看到的“栏”到底属于哪个系统模块——有时候你以为在调侧边栏,其实是在动 Panel 或 Status Bar。











