> Linux新闻 >

Visual Studio Code 1.65 已发布,支持多种 UI 布局

Visual Studio Code 1.65 现已发布,该版本更新内容很多,下面摘录部分新特性作介绍:

工作台

新的编辑器历史导航

编辑组感知导航

现在在编辑器历史中导航时会考虑编辑器组。在编辑器历史记录中来回导航将激活编辑器,并将其集中在那些编辑器组中。删除编辑器组时,所有关联的历史条目都将被丢弃。

在下面的动图中,第一个 Go Back 将光标放在新的编辑器组中,然后第二个 Go Back 导航返回到原始编辑器组。

关于历史导航的新设置

有一项新设置workbench.editor.navigationScope,可以将编辑器历史导航范围限定为活动编辑器组甚至编辑器。支持的值是:

  • default:编辑器导航适用于所有打开的编辑器组和编辑器。
  • editorGroup:编辑器导航仅限于活动编辑器组的已打开编辑器。
  • editor:编辑器导航仅限于活动编辑器。

如果将范围配置为editorGroupeditor,则每个编辑器组或编辑器都将拥有自己的导航堆栈,可以单独导航。

Notebook 支持

可以在任何 Notebook 中选择的单元格之间导航,导航可以跨编辑器工作。

新的布局控制选项

在标题栏中引入了实验性布局控件(启用:通过设置workbench.experimental.layoutControl.enabledtrue),通过 layoutControl.type 设置,可选择对应的 UI 布局 ,此设置具有以下三个选项:

  • menu: 旧版布局,可以打开菜单的单个按钮(默认)。
  • toggles:新选项,显示三个按钮来切换主面板、侧边栏和侧面板。
  • both:新选项,显示三个切换按钮的同时,也有菜单按钮。

比如设置成 both,就是如下图所示,三个切换按钮加一个下拉菜单按钮:

浅色高对比度主题

添加了新的 Light High Contrast 主题(感觉对比度太高看起来有点累)

音频提示

添加了新的音频提示,包括警告、内联建议和调试器断点点击的音频提示。此前的audioCues.enabled设置已被弃用,取而代之的是audioCues.*设置:

新的音频提示命令 Help: List Audio Cues 可查看所有可用的音频效果。

拖放问题和搜索结果

可以将问题、搜索或参考结果拖放到编辑器中,打开文件并显示结果位置。

设置编辑器拆分视图

使用可调整的拆分视图将目录与设置列表分开。

改进的自动语言检测

启用新设置workbench.editor.historyBasedLanguageDetection后,无标题编辑器将使用改进过的自动语言检测算法,该算法会考虑编辑器历史记录和当前工作区的内容,新算法只需少量文本输入即可提供检测结果。

下面是在 JavaScript、TypeScript、Markdown、Python、PHP 和 C++(支持更多语言)中使用新算法的示例:

改进的语言扩展建议

语言扩展推荐现在会在推荐时考虑扩展市场中其他突出的语言扩展。例如,如果安装了Apache NetBeans Java 扩展,VS Code 就不会推荐使用 Java 扩展包。

扩展树悬停的键盘快捷键

可以使用键盘快捷键 Ctrl/Cmd+K, Ctrl/Cmd+I触发悬停,以显示在由扩展提供的自定义树视图中

编辑器

片段环绕

有一个新命令可以用代码片段包围当前选择:先选择一些文本,从命令面板 ( Ctrl+Shift+P )调用Surround With Snippet命令,然后从下拉列表中选择一个片段。在下面的动图中,一个选定的方法被一个 try/catch 片段包围。

上下文 Unicode 突出显示

在受信任的工作空间中,仅突出显示不可见或可能与 ASCII 字符混淆的字符

之前在 const 字符串中会看到多个误报:

现在只会展示容易混淆的字符

源代码管理

差异编辑器管理

命令面板中有一个新命令 Git: Close All Diff Editors ,可用于关闭所有打开的差异编辑器。还有一个新设置git.closeDiffOnOperation可以在隐藏、提交、丢弃、暂存或取消暂存更改时自动关闭差异编辑器。

Git 命令输出日志记录

执行 Git 命令时,其内容stderr会记录在Git 输出窗口中。有一个新设置 git.commandsToLog用于指定 Git 命令的列表,这些命令的内容将stdout记录在Git 输出窗口中

调试

惰性变量

VS Code 的通用调试器现在可以显示一个按钮,供用户按需获取变量值。这可用于支持新的“惰性”变量特性的调试扩展。

 

此外,该版本还包含大量其他更新,比如对单门语言的更新,支持最新的 Typescript 4.6 等,详细内容可在发布公告中查看。

(责任编辑:IT)