https://code.visualstudio.com/updates/v1_71

本次更新看点速览

  • FFmpeg 编解码器支持,Webview 支持了视频播放了。

    image

  • 资源管理器重命名改进。进入重命名编辑操作时,可以按 F2 在选中名字、扩展名、全部名之间切换选中。

    image

  • 树视图展开模式,通过 workbench.tree.expandMode 配置项,可以控制展开树节点是单击展开还是双击展开。

  • 粘性滚动,已去除实验性,可通过 editor.stickyScroll.enabled 配置项开启。

  • 新的 Code Action 控件,取代之前简单的菜单,以实现更丰富的信息展示。

    image

工作台 (Workbench)

  • 合并编辑器提升

    • 在有冲突的文件中快速打开合并编辑器。

      image

    • 在打开文件时,不会修改文件内容。

    • 通过编辑器右上角图标,可以快速打开旧版编辑器。

      image

    • 新旧编辑器的操作可以相互感知。

      image

    • 复选框改进,是其更加明确。

    • 带来实验性的 diff 算法,可以通过 "mergeEditor.diffAlgorithm": "experimental", 开启。

  • FFmpeg 编解码器支持,Webview 终于支持了视频播放了。

    image

  • 资源管理器重命名改进。进入重命名编辑操作时,可以按 F2 在选中名字、扩展名、全部名之间切换选中。

    image

  • 按钮图标风格改为圆角。

    image

  • 支持 Windows 上的窗口控件。

    image

  • 树视图展开模式,通过 workbench.tree.expandMode 配置项,可以控制展开树节点是单击展开还是双击展开。

编辑器 (Editor)

  • 粘性滚动,已去除实验性,可通过 editor.stickyScroll.enabled 配置项开启。

    • editor.stickyScroll.maxLineCount 通过
    • 可以通过 Ctrl/Cmd + Click 跳转到定义。

    image

  • 新的 Code Action 控件,取代之前简单的菜单,以实现更丰富的信息展示。

    image

  • 添加建议匹配配置 editor.suggest.matchOnWordStartOnly,默认为 true,表示只展示以该单词开头的建议项,关闭会导致匹配到的项目更多。

    image

源码版本控制 (Source Control)

  • 提交按钮行为提升
    • git.postCommitCommand 配置成功提交后运行 git 命令。
    • git.rememberPostCommitCommand 记住每个存储库最后执行的辅助操作。

终端 (Terminal)

  • Shell 集成改进
    • 支持 Fish,配置参见:文档
    • Windows 平台的 Git bash,配置参见:文档
    • Support for common alternative current working directory sequences: OSC 6 ; scheme://<cwd> ST, OSC 1337 ; CurrentDir=<cwd> ST, OSC 9 ; 9 ; <cwd> ST
    • 更好地处理各种 Shell 集成的边缘 Case
  • 终端通过 "terminal.integrated.smoothScrolling": true 配置项,开启平滑滚动。
  • 支持 kitty 终端首创的下划线样式和颜色的转移字符。

    image

  • 改进渲染质量。

    • 修复放大缩小导致终端模糊的问题

      image

    • 当启用最小对比度并且需要翻转文本亮度以确保满足比率时,现在将保留文本的色调。

      image

    • 新的主题色配置 terminal.inactiveSelectionBackground 可以以实现焦点所在窗口的突出显示。

      image

    • 自定义电力线字形渲染改进了边缘裁剪。这在半圆形字符上最为明显,现在应该是一条平滑的曲线。

      image

任务 (Tasks)

  • 监视任务现在会在窗口重新加载时重新连接,从而在 VS Code 更新或扩展的状态更改时实现不间断的工作。默认情况下启用任务重新连接,但可以使用 task.reconnection 设置禁用。

调试 (Debugging)

  • launch.json 添加 suppressMultipleSessionWarning 选项,来禁用多次启动同一个配置的警告。

评论 (Comments)

  • 过滤,评论视图有一个新的过滤器,可以在其中按评论文本和已解决/未解决状态进行过滤。

    image

  • 编辑器装饰,评论编辑器装订线装饰现在使用 codicons 并具有新样式。

    image

语言 (Languages)

  • 支持 TypeScript 4.8

贡献到扩展 (Contributions to extensions)

预览特性 (Preview features)

  • 文件移动和重命名的 Markdown 链接对应更新,可通过 markdown.experimental.updateLinksOnFileMove.enabled 配置项体验。

    image

  • Settings Profiles,更多参见:原文

  • 在 vscode.dev 等远程开发的内容可以将未提交的内容保存在一个 Edit Session 中,在其他的设备或者环境中,可以通过 Continue Working On 按钮快速恢复,通过 "workbench.experimental.editSessions.enabled":true,启用设置同步,然后在 Web 或桌面的 VS Code 中运行 Edit Sessions: Sign In 命令,更多参见:原文

扩展制作 (Extension Authoring)

  • 通过 TerminalExitStatus.reason API 可以获取终端退出原因。
  • 枚举配置项支持 enumItemLabels 字段,以支持在设置编辑器中展示更好的描述。
  • 新的快捷键绑定条件变量 activeWebviewPanelId 用来判断所在 Webview,如 "when": "activeWebviewPanelId == 'markdown.preview'"
  • TypeScript server plugins on web,参见:原文
  • Disabled tree items,参见:原文
  • Markdown 支持重构为 Language Server,参见:原文
  • Upcoming change to context of ‘view/title’ menu,参见:原文

调试适配器协议 (Debug Adapter Protocol)

  • Proposal for a ‘startDebugging’ request,更多参见:原文

工程 (Engineering)

  • 更新到 Electron 19。
  • 不再支持 Windows 7。