💡 更多技术分享,欢迎访问我的博客:叁木の小屋
系列索引 :总览 | (一)| (二) | (三) | (四) | (五)
本篇概要
除了 AI 功能,VS Code 1.109 也带来了大量终端、编辑器和工作台的改进:
- Kitty 键盘协议支持
- 括号匹配前景色定制
- 集成浏览器(预览)
- 工作台生产力增强
一、终端增强
1.1 选择性忽略粘性滚动
设置 :terminal.integrated.stickyScroll.ignoredCommands
可自定义哪些命令不显示在粘性滚动中。
默认忽略 :copilot、claude、codex、gemini 等 AI CLI
json
{
"terminal.integrated.stickyScroll.ignoredCommands": [
"clear",
"copilot",
"claude",
"codex",
"gemini"
]
}
1.2 移除 winpty 支持
不再支持 Windows 10 版本 1809 之前的版本。
建议升级到 Windows 10 最新版本或 Windows 11。
1.3 允许在受限工作区打开终端
设置 :terminal.integrated.allowInUntrustedWorkspace
json
{
"terminal.integrated.allowInUntrustedWorkspace": true
}
⚠️ 仅在了解风险且已配置安全 shell 时启用
1.4 Kitty 键盘协议(实验性)
设置 :terminal.integrated.enableKittyKeyboardProtocol
修复传统击键编码的许多限制:
| 功能 | 说明 |
|---|---|
| 更多修饰键 | 不仅限于 alt 和 ctrl |
| 按下/释放事件 | 支持检测按键释放 |
| 消除歧义 | 如 Escape 不再与转义序列混淆 |
立即可见的好处:Shift+Enter 在某些 AI CLI 中无需额外设置即可工作。
1.5 Win32 输入模式(实验性)
设置 :terminal.integrated.enableWin32InputMode
针对 Windows 和 ConPTY 调整的类似功能,本版本中保持关闭。
二、编码与编辑器
2.1 括号匹配前景色
可自定义匹配括号的文本颜色(不仅仅是背景和边框)。
json
{
"workbench.colorCustomizations": {
"editorBracketMatch.foreground": "#ff0000"
}
}
2.2 双击选择括号或字符串内容
arduino
[ 选择这个内容 ] "选择这个内容"
↑ ↑
开括号后/闭括号前 开引号后/闭引号前
2.3 TypeScript 重命名建议
输入覆盖现有声明时也能触发重命名建议:
ini
let index = 0;
↓ 输入 chunkIndex
let chunkIndex = 0;
↓ Shift+Tab 应用重命名
// 其他地方的 index 也变为 chunkIndex
⚠️ 目前仅支持 TypeScript
2.4 改进的幽灵文本可见性
少于三个连续非空白字符的短建议显示虚线下划线:
c
console.log▼
└─ 虚线下划线表示幽灵文本
2.5 代码段文件模式
使用 include 和 exclude 控制代码段出现范围:
json
{
"Travis CI node_js": {
"include": ".travis.yml",
"prefix": "node",
"body": ["language: node_js", "node_js:", " - $1"],
"description": "Node.js configuration for Travis CI"
},
"Exclude from tests": {
"exclude": "*.test.*",
"prefix": "debug",
"body": ["console.log($1);"],
"description": "Debug logging (excluded from tests)"
}
}
2.6 改进的 shebang 语言检测
改进对 /usr/bin/env 和附加标志的支持:
bash
#!/usr/bin/env -S deno -A
# 现在能正确识别为 TypeScript
三、工作台与生产力
3.1 集成浏览器(预览)
设置:
workbench.browser.openLocalhostLinkssimpleBrowser.useIntegratedBrowserlivePreview.useIntegratedBrowser
VS Code 桌面版新增完整浏览器体验:
| 功能 | 说明 |
|---|---|
| 持久化存储 | 可配置全局/工作区/临时存储 |
| 添加元素到聊天 | 选择元素发送给智能体 |
| 完整 DevTools | 所有开发者工具 |
| 键盘快捷键 | 完整键盘导航 |
| 页面查找 | 内置搜索功能 |
| 网站登录 | 支持 Cookie 和认证 |
启动命令 :Browser: Open Integrated Browser
3.2 工作区打开时恢复编辑器
设置 :workbench.editor.restoreEditors
json
{
"workbench.editor.restoreEditors": false // 启动时不清空编辑器
}
未保存的编辑器始终会恢复,防止数据丢失
3.3 高级设置
设置 :workbench.settings.showAdvancedSettings
json
{
"workbench.settings.showAdvancedSettings": true // 始终显示高级设置
}
3.4 拖放导入配置文件
可直接拖放 .code-profile 文件到 VS Code 窗口导入配置。
3.5 输出面板过滤改进
支持否定模式和多个过滤器:
lua
typescript 只显示包含 "typescript" 的行
!debug 隐藏包含 "debug" 的行
typescript, !debug 组合过滤
3.6 按来源过滤问题
问题面板支持按诊断来源过滤:
bash
source:ts 仅显示 TypeScript 诊断
!source:cSpell 隐藏拼写检查器警告
source:eslint 仅显示 ESLint 诊断
3.7 Git 增强
| 功能 | 说明 |
|---|---|
| 折叠所有 | SCM 视图中一键折叠所有目录 |
| Delete 命令 | Git: Delete 直接 git rm 文件 |
| blame 悬停 | 可禁用 blame 装饰的悬停弹出 |
| worktree 文件 | 指定额外文件复制到 worktree |
3.8 自动任务默认禁用
设置 :task.allowAutomaticTasks
现在默认为 off,提高安全性:
json
{
"task.allowAutomaticTasks": "on" // 恢复旧行为
}
3.9 无障碍改进
| 改进 | 说明 |
|---|---|
| 动态流式聊天 | 屏幕阅读器实时跟随 AI 响应 |
| 稳定光标位置 | 防止焦点变化干扰导航 |
| ARIA 警报 | 新聊天会话通知 |
| 改进工具调用信息 | 更容易理解 AI 操作 |
| 公告光标位置 | Ctrl/Cmd+Alt+Shift+G |
3.10 企业改进
改进的 GitHub 组织策略执行:
- 根据首选 Copilot 账户正确应用策略
- 启动时网络不可用也能一致执行策略
快速配置参考
终端配置
json
{
"terminal.integrated.enableKittyKeyboardProtocol": true,
"terminal.integrated.stickyScroll.ignoredCommands": ["clear", "npm"]
}
括号匹配颜色
json
{
"workbench.colorCustomizations": {
"editorBracketMatch.foreground": "#00ff00"
}
}
集成浏览器
json
{
"workbench.browser.openLocalhostLinks": "integrated",
"simpleBrowser.useIntegratedBrowser": true
}
工作区恢复
json
{
"workbench.editor.restoreEditors": false
}
下一篇预告
(五)API与工程改进 将深入探讨:
- Quick Input 按钮位置 API
- Chat Model Provider 配置
- macOS DMG 镜像
- Windows 安装重设计