微软再出手,VS Code杀疯了!
The following article is from CodeSheep Author CodeSheep
如若转载请联系原公众号
聊到编程软件界的卷王,不出意外,微软的VS Code应该说能占据一席。
VS Code近年来可以说是开启了腹泻式更新
前段时间,在GitHub Atom软件落幕那篇文章里就曾聊过,Atom的没落有时候不是因为自己太弱,而实在是对手VS Code太强了。
自己平时也会把VS Code作为一个辅助开发工具,但并非每个版本都会第一时间去更新。
目前VS Code最新版是1.70,其实也更新有一段时间了。
这不前两天一时兴起,把电脑上的VS Code从老版本1.68更到了最新。
所以今天这篇文章就来聊一聊更新后印象比较深的几个功能点吧,有些是1.69版中新增的,有些是1.70版中新增的。
话不多说,上菜!
3-way merge editor
三路合并编辑器是在1.69版本里上线的,这个功能允许用户在VS Code内快速解决 Git 合并冲突。
该功能启用后,可以通过点击「源代码控制视图」中的冲突文件来打开合并编辑器。
从图中可以看出,各项可视化操作非常方便,文件对比和内容处理也更加清晰。
该功能目前可通过如下配置来进行开启:
// settings.json
{
"git.mergeEditor": true
}
官方也表示,未来会将其作为默认选项打开。
菜单栏/标题栏改进
新版本的菜单折叠逻辑在听取广大用户的反馈之后做了一些修改,现在的逻辑是等大部分菜单都折叠之后,然后才切换到汉堡菜单。
另外对于macOS版本,标题栏现在可以随UI一起缩放,以提高可用性。
Git Commit按钮
针对源码管理这一块,VS Code提供了新的Commit提交按钮,并且在按钮右侧的下拉菜单中提供了一组辅助扩展操作。
除此之外,也可以使用git.postCommitCommand
来设置控制辅助操作,比如允许用户在提交信息后进行推送或者同步。
分支保护
在之前的1.68版本中,VS Code就添加了git.branchProtection
以用于配置受保护的特定分支。
// settings.json
{
"git.branchProtection": [
"main"
]
}
而更新后,编辑器的状态栏和分支选择里都添加了分支锁定的图标指示,一眼就能看出来哪个分支是受保护的。
Command Center
Command Center 功能启用后,其位于编辑器顶部的长条空间,让用户可以快速搜索项目中的文件。
除此之外,左侧的前进和后退按钮可用浏览编辑器历史记录,右侧的下拉箭头菜单里可以显示一些快速访问的选项,非常方便。
该功能目前可通过如下配置来进行开启:
// settings.json
{
"window.commandCenter": true
}
自定义折叠
新版本支持编辑器内容的自定义折叠。
用户现在可以自定义选中对应的编辑器内容并创建折叠区域,这对于某些不能自动识别的格式而言还是挺有用的,使用自由度也会更高。
支持搜索结果多选
搜索视图里的条目支持多选了,以支持某些特定需求下的方便操作。
树视图支持搜索和过滤
现在树视图(比如文件管理器)中也支持搜索/过滤,可以cmd+f(ctrl+f)呼出搜索框,并且支持搜索结果高亮,以及结果的过滤显示。
sticky scroll
这也是新版中引入的一个功能。
当用户在编辑器中滚动鼠标查看代码时,每个子模块(比如:类/接口/命名空间/函数/方法等等)代码的第一行会置顶固定住,以方便查看。
这对于一些长代码模块(比如一个很长的函数)的阅读体验提升还是非常有帮助的。
配置方式:
// settings.json
{
"editor.experimental.stickyScroll.enabled": true
}
新的勿扰模式
新的勿扰模式开启后,其会隐藏所有non-error通知弹窗,而被隐藏的通知仍然可以在通知中心里进行查看。
除此之外,进度通知将自动显示在状态栏中。
深浅色主题切换
用户可以通过Preferences: Toggle between Light/Dark Themes在自己喜欢的首选深色和浅色主题之间快速切换。
如果当前是浅色主题,命令会自动切换到深色主题,反之亦然。
其中几个首选默认主题由如下几个定义来设置:
workbench.preferredDarkColorTheme
workbench.preferredLightColorTheme
workbench.preferredHighContrastColorTheme
workbench.preferredHighContrastLightColorTheme
终端集成
终端集成其实也是VS Code已经计划和迭代很久的功能,开启了该功能之后,将从终端Terminal里显示更多的信息,并且可以启用更多的功能,从而提升Terminal终端的工作效率。
// settings.json
{
"terminal.integrated.shellIntegration.enabled": true
}
比如从终端里可以看出命令的执行情况,成功还是失败,并且会给出不同的颜色和图标标示,清晰明了。
而且针对具体的命令还支持上下文操作,比如重新运行,或者复制输出等等。
当然这一块的功能远不止这些,有兴趣的同学也可以参看其更新日志来获取更多的操作和功能。
VS Code Server
新版本提供的VS Code Server进一步增强了远程开发功能。
其实很早之前,微软就曾发布了VS Code远程开发扩展,用户可以通过本地 VS Code 在 WSL、Docker 容器、SSH 管理等远程物理机或虚拟机上来进行远程开发。
后来又发布了GitHub Codespaces,并且支持在浏览器中通过 VS Code 进行远程开发。
而如今新提供的 VS Code Server 更进一步,用户可以将服务器安装在任何位置(比如本地开发机器、云中的容器或VM 虚拟机等),并通过 VS Code for Web(vscode.dev)使用浏览器来安全访问,而无需设置 SSH 或 https。
不过目前该功能仍处于 private preview 版,所以如果想要体验则需要填表申请(https://aka.ms/vscode-server-signup)。
总体来说,最近几个版本的功能更新还是带来了不少新的东西,除此之外,更多详细的特性和更新也可以参看VS Code对应的版本Changelog(code.visualstudio.com/updates)。
不得不说,VS Code这迭代更新速度是真的快。
这都快八月底了,按照这个卷王的作息,估计下一个版本马上又要放出来了
<END>
程序员专属T恤