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

本次更新看点速览

  • 编辑器工具栏图标支持隐藏操作

  • 搜索结果支持以树状结构展示。

  • 添加 git.pullBeforeCheckout 配置项,以实现在 checkout 前,先 pull。

  • 添加 Git: Abort Merge 命令取消 merge。

  • 开启终端集成后,终端支持类似 Quick Fix 的能力,并可以通过 audioCues.terminalQuickFix 启用音频提示,例子如下:

    • git 类似命令提示。

      image

    • git 设置上游。

      image

    • git 创建 PR。

      image

    • 端口冲突。

      image

  • Markdown

    • 通过 "markdown.validate.enabled": true 开启 Markdown 链接校验。
    • CodeAction 添加:
      • 提取普通链接到引用链接格式。
      • 组织引用链接:移动底部,并按首字母排序,删除未使用的链接。
  • 新增一个 Chrome 浏览器扩展,可以在地址栏快速通过 code 命令快速打开 github 仓库。

  • 本地、vscode.dev 等编辑的内容,可以通过 Continue Working On 命令在具有完整开发环境的 Codespace 中继续开发,未提交的代码将保存在 Editor Session 中,进入 Codespace 后将自动恢复这些未提交的代码

  • 体验提升

    • 树控件查找组件 cmd+f 调出查找组件后,可以上下拖动其位置
    • 树控件查找组件,重新打开时,树视图 Find 控件将记住最后一个搜索词。
    • 编辑器选中后向上或者向下移动鼠标的滚动速度,离编辑器越远,滚动越快。
    • 编辑器 hover 提升,让鼠标更容易进入 hover 弹窗。

工作台 (Workbench)

  • 编辑器工具栏图标支持隐藏操作

  • Merge 编辑器变更

    • 默认不再启用(git.mergeEditor 默认值为 false),可以通过普通的编辑器的右下角按钮打开。

      image

    • Merge 冲突选择时,从复选框更改为 Codelen。

      image

    • 修改 Merge 编辑器行为:参见原文 RESULT FILE RECOMPUTED FROM SCRATCH 部分。

    • 合并编辑器称为标准的视图。

  • 树控件查找组件提升:

    • cmd+f 调出查找组件后,可以上下拖动其位置。

      image

    • 重新打开时,树视图 Find 控件将记住最后一个搜索词。

      image

    • 内置预览支持部分格式的播放音视频文件。

  • 可以通过 explorer.incrementalNaming 配置复制一个文件后存在冲突时修改文件名的规则。

    • sample:在文件名后添加 copy (默认值)。
    • smart:末尾添加一个数字。
    • disable:禁用,提示是否覆盖。
  • 当 VSCode 打开程序自身的文件时将展示提示警告。

    image

编辑器 (Editor)

  • 选中后向上或者向下移动鼠标的滚动速度,离编辑器越远,滚动越快。

  • hover 提升,让鼠标更容易进入 hover 弹窗。

    • 之前
    • 之后
  • Code Action

    • 新的分组:对应重构的类型 refactor.inlinerefactor.move
    • 新的颜色配置:使用 editorWidget.* 而不是 menu.*

扩展 (Extensions)

  • 扩展窗口的 @updates 添加展示最近更新的扩展视图。

    image

  • 默认列表将在前面优先展示关注的扩展(需要更新或者 reload )。

    image

  • 扩展市场图标的数字徽章,表示需要关注的扩展的数目。

    image

  • 支持忽略扩展更新。

    image

  • 支持取消忽略已忽略的扩展更新。

    image

  • 可以按安装计数、评级、名称、发布日期和更新日期对已安装扩展的列表进行排序。

    image

  • 搜索结果支持以树状结构展示。

    image

  • 添加配置项,search.decorations.badgessearch.decorations.colors,控制搜索文件项是否展示装饰和颜色,默认均开启。

    image

源代码版本控制 (Source Control)

  • 发现嵌套 git 仓库最大层数 git.repositoryScanMaxDepth 默认为 1 层。
  • 对包含密码的 ssh key 的支持。
  • 添加 git.pullBeforeCheckout 配置项,以实现在 checkout 前,先 pull。
  • 改进仓库 fetch:对于包含多个 remotes 的仓库,fetch 将显示选择器,让用户选择 fetch 哪个 remote。
  • 添加 Git: Abort Merge 命令取消 merge。

终端 (Terminal)

  • 开启终端集成后,终端支持类似 Quick Fix 的能力,并可以通过 audioCues.terminalQuickFix 启用音频提示,例子如下:

    • git 类似命令提示。

      image

    • git 设置上游。

      image

    • git 创建 PR。

      image

    • 端口冲突。

      image

  • 终端集成提升,参见:原文

  • 终端支持展示超链接。

    • 执行 printf '\e]8;;https://code.visualstudio.com\e\\VS Code\e]8;;\e\\' 效果如下:

      image

    • 转义序列语法为: \x1b]8;; <URL> \x1b\ <Label> \x1b]8;;\x1b\'

  • 新的 VT 转义序列支持,参见:原文

  • 终端支持响铃,可以通过 terminal.integrated.enableBell 配置项开启。

  • 终端相关文档作为文章站点的顶级目录存在,包含多篇文档,参见:终端文档

任务 (Tasks)

  • >Tasks: Run Task 添加 Pin 功能。

    image

  • 添加任务完成声音,可以通过 audioCues.taskEnded 配置。

语言 (Languages)

  • Markdown

    • Markdown 链接校验,通过 "markdown.validate.enabled": true 配置项开启。有如下细粒度配置项:

      • markdown.validate.fileLinks.enabled 文件链接校验,如 [link](/path/to/file.md)
      • markdown.validate.fragmentLinks.enabled 锚点验证,如 markdown.validate.fragmentLinks.enabled
      • markdown.validate.fileLinks.markdownFragmentLinks 链接锚点,如 [link](other-file.md#some-header)
      • markdown.validate.referenceLinks.enabled 参考链接,如 [link][ref]
      • markdown.validate.ignoredLinks 跳过检验的连接列表。
    • 提取链接到引用链接。如:

      [Markdown](https://daringfireball.net/projects/markdown/) and you: Adventures in [Markdown linking](https://daringfireball.net/projects/markdown/)!

      通过 cmd + . 提取,转为为如下引用链接的形式。

      [Markdown][md] and you: Adventures in [Markdown linking][md]!
      
      [md]: https://daringfireball.net/projects/markdown/
    • 对引用链接进行优化:移动底部,并按首字母排序,删除未使用的链接。

      Some [link][example] and an image:
      
      ![An image of a cat][cat-gif]
      
      [example]: http://example.com
      [cat-gif]: /keyboard-cat.gif
      [some unused link]: http://example.com/file2

      重构后为:

      Some [link][example] and an image:
      
      ![An image of a cat][cat-gif]
      
      [cat-gif]: /keyboard-cat.gif
      [example]: http://example.com
  • CSS 语言支持现在理解 @property@layer at-rules。

笔记本 (Notebooks)

参见:原文

VS Code for the Web

Issue Reporting

略,参见:原文

贡献到扩展 (Contributions to extensions)

预览特性 (Preview features)

  • Settings Profiles,参见:原文
  • WebAssembly and Python execution in the Web,参见:原文

扩展制作 (Extension authoring)

  • 支持在干净的环境调试扩展,参见:原文
  • 改进的工作区编辑 API,参见:原文
  • 在 webview 上贡献上下文菜单,参见:原文
  • webviews 中活动主题的新主题变量,参见:原文
  • 异步 Notebook 渲染器,参见:原文
  • 重构添加 Refactor.move 类型,参见:原文
  • Selected tree items passed to view/title actions,参见:原文
  • Tree view initialSize contribution finalized,参见:原文
  • Tree viewBadge finalized,参见:原文
  • Unbound breakpoint warning icon,参见:原文
  • 建立了一个 VSCode 社区论坛

提案的 API (Proposed APIs)

参见,原文

工程 (Engineering)

参见,原文