Visual Studio Code 1.73发布!

欢迎使用 2022 年 10 月版的 Visual Studio Code。 我们希望您会喜欢此版本中的许多更新,其中一些主要亮点包括:

  • 搜索包含/排除文件夹 - 快速设置文件夹以在树视图中包含/排除
  • 命令中心模式快捷方式 - 在最近文件列表之前显示常用模式
  • 合并编辑器改进 - 自动合并冲突的访问组合选项
  • Markdown 自动链接更新 - 在重命名/移动时更新文件和图像链接
  • 更多音频提示 - 任务完成或失败,终端快速修复可用
  • vscode.dev 受保护分支工作流程 - 提交到受保护分支时创建新分支
  • 新的 Python 扩展 - isort、Pylint 和 Flake8 的新独立扩展
  • 开发容器模板 - 基于现有模板创建新的开发容器

搜索包含/排除文件夹

在搜索视图的结果树视图中右键单击文件夹时,上下文菜单中现在有两个新选项。

  • 选择将搜索限制到文件夹(Restrict Search to Folder)可将所选文件夹路径添加到要包含文 本框的文件中。向此文本框添加路径会将搜索结果限制为符合所列路径或模式的搜索结果。

  • 选择从搜索中排除文件夹(Exclude Folder from Search)会将所选文件夹路径添加到文件以排除文本框。在此处添加路径将排除任何符合所列路径或模式的搜索结果。

命令中心模式快捷方式

命令中心添加了一个新的顶部部分,以便于发现如何导航到文件、运行命令等。这个简短的模式列表还提供了键绑定提示,以便您可以直接跳转到最常用的模式(例如转到文件),而无需通过命令中心。

点我查看视频~

命令中心 UI 默认情况下不显示在标题栏中,但您可以通过窗口:命令中心(window.commandCenter)设置或右键单击标题栏并检查命令中心来启用它。

自动合并冲突的访问组合选项

在此版本中,始终可以选择 Accept Incoming 和 Accept Current。当这两个选项都被采用时,合并编辑器会附加相应的更改行。在下面的动图中,RelativePattern 被导入两次,因为两条线都被接受:

当冲突可以在字符级别无冲突地解决时,将显示 Accept Combination 选项,并可用于自动解决冲突。在下面的动图中,两个符号都被导入到同一个导入语句中:

Markdown 自动链接更新

您是否已经厌倦了在移动或重命名文件时意外破坏 Markdown 中的链接或图像?快来尝试新的 markdown.updateLinksOnFileMove.enabled 设置!启用新设置后,当文件在 VS Code Explorer 中移动或重命名时,VS Code 将自动更新 Markdown 中的链接和图像。

您可以使用 markdown.updateLinksOnFileMove.include 控制受影响的文件类型。默认情况下,它对所有 Markdown 文件和常见的图像文件格式启用。

新的音频提示可以帮助任务和终端

  • 任务完成 - 任务完成的声音(由 audioCues.taskCompleted 设置控制)。
  • 任务失败 - 任务失败时发出声音 (audioCues.taskFailed)。
  • 终端快速修复 - 如果当前行上有可用的快速修复 (audioCues.terminalQuickFix)。

vscode.dev 受保护分支工作流程

当您在 VS Code for Web 上的 GitHub 或 Azure Repos 存储库中时,提交到受保护的分支现在会通知您当前分支受到保护,并提示您创建新分支。此流程还将遵循以下设置:

  • git.branchPrefix 允许您使用配置的前缀预填充分支名称快速输入。
  • git.branchProtectionPrompt“: “alwaysCommitToNewBranch“允许您在尝试提交到受保护分支时跳过提示并直接进入快速输入以创建新分支。

另外,新建分支时,可以通过配置”remoteHub.switchToCreatedBranch“: “always“绕过是否切换到新创建的分支的提示。

在桌面版 VS Code 上使用 GitHub 存储库或 Azure Repos 扩展时,上述所有内容也适用。

新的 Python 扩展

在 2022 年 5 月的版本中,我们宣布了一个新的 isort 扩展,它与 Python 扩展一起工作以对导入进行排序。例如,当您打开文件并且导入不遵循 isort 标准时,它将显示错误诊断并提供代码操作来修复导入顺序。在此版本中,我们正在迁移以使用独立的 isort 扩展,而不是通过自动将其与 Python 扩展一起安装来使用 Python 扩展内置的 isort 支持。

在我们之前的版本中,我们宣布了新的 Pylint 和 Flake8 扩展,它们通过语言服务器协议 (LSP) 与 Python 扩展协同工作以提供 linting。在此版本中,如果您仍在使用 Python 扩展中内置的 Pylint 和 Flake8 功能,我们会显示一条通知,提示您安装这些新扩展。

基于现有模板创建新的开发容器

远程开发扩展允许您使用容器、远程机器或 Linux 的 Windows 子系统 (WSL) 作为功能齐全的开发环境。此版本的亮点包括:

  • 开发容器模板 - 基于现有模板快速创建开发容器。
  • Dev Container Features - 通过包含预打包的功能向 Dev Container 添加功能。
  • 创建没有起始文件夹的新开发容器。