补全列表条目数由 editor.suggestmaxvisiblesuggestions 控制,设为0不限但受屏幕高度60%限制,宽屏可调至16–18;字体大小需同时配置 editor.suggestfontsize 和 editor.suggestlineheight 才生效;插件接管或主题/工作区设置覆盖会导致配置无效,禁用css改宽以防定位异常。

补全弹窗不能调宽度,但能精准控制高度、密度和可见条目数——改对三个配置项,比调CSS安全且稳定。
怎么让补全列表显示更多/更少条目?
关键看 editor.suggestMaxVisibleSuggestions,它不改变像素高度,只限制最多渲染几条候选。设为 0 表示不限,但实际受屏幕高度 60% 限制;设为 12(默认)适合 1920px 宽屏;超宽屏(3440px+)可试 16 或 18。
- 设太小(如
5):面板短,但翻页频繁,反而打断节奏 - 设太大(如
20):面板拉长,滚动变多,定位成本上升 - TypeScript/JS 项目中,
typescript.preferences.includePackageJsonAutoImports等开关会影响真实返回条目数,可能提前撑满上限
为什么调了字体大小没变化?
editor.suggestFontSize 和 editor.suggestLineHeight 必须一起写入 settings.json 才稳定生效。UI 设置界面里改容易被插件或工作区设置覆盖。
- 设
editor.suggestFontSize为14可提升可读性,但单页条目会减少 - 设
editor.suggestLineHeight为24或26能拉开行间距,缓解密集压迫感 - 过大会导致单页只剩 5–6 条;过小则函数签名里的
callback: (err: Error, data: T) => void看不清 - TabNine、Pylance 等插件接管渲染时,这两个配置完全无效
改完设置没反应?先查这三处
不是配置写错,而是被更高优先级的设置覆盖或主题干扰:
- 检查项目根目录下是否有
.vscode/settings.json,它会覆盖全局设置 - 高对比度主题或第三方主题可能硬编码了
.suggest-widget的最小高度,导致editor.suggestLineHeight失效 - macOS 启用了系统级“缩放”(非分辨率切换)会导致面板渲染失真——此时应优先调
window.zoomLevel,而非死磕补全配置
真正容易被忽略的是:补全弹窗的宽度由光标所在位置的上下文动态计算,强行用 CSS 改宽会破坏浮动定位逻辑,轻则错位,重则触发渲染异常。别碰 CSS。











