Appearance
返璞归真:终端的基本操作
众所周知,最初的程序员都是在命令行用 vim 写代码的。而即使到了今时今日,命令行也仍然在我们的开发中占据重要地位,譬如我们的每一次 润射
run serve
;为了让我们在润的时候更舒爽,也为了更贴近一个真正的程序员,终端命令行的基本操作还是要掌握的。
常用操作
command
+j
/ctrl
+`
:这两个命令都可以打开终端;区别是前者打开的是终端所在的底部面板,但因为该面板还有不同的 tab 如输出窗、调试窗等,如果在此之前你切换到了其他 tab,通过command
+j
打开面板时还是会停留在之前的 tab;而ctrl
+`
则是打开底部面板并切换到终端 tab;所以后者更好用;但由于`
比较难按,我们可以给配置为ctrl
+,
;对应命令workbench.action.terminal.toggleTerminal
command
+k
:当终端内容过多时可以该命令清屏command
+\
:对当前终端分屏,适合同时要运行不同的命令的情况option
+command
+↑
/←
:分屏后多屏状态下切换到上一屏,对应命令workbench.action.terminal.focusPreviousPane
option
+command
+↓
/→
分屏后多屏状态下切换到下一屏,对应命令workbench.action.terminal.focusNextPane
可以发现,vscode 切换分屏的组合键是比较复杂的,再因为我们方向键是映射过的,这样一来我们要同时按四个按键;所以,改键势在必行,我们可以把 command
+ [
/ ]
组合键添加为上面的切换屏的功能,这样一来就方便了。
shift
+option
+q
:关闭终端,这个命令需要自己配置;对应命令workbench.action.terminal.kill
ctrl
+shift
+`
:新建终端,但同样按地难受;我们可以添加个组合键shift
+option
+n
来达到这个功能;对应命令workbench.action.terminal.new
shift
+command
+[
/]
:对于新建了多个终端(非拆分的)时切换不同终端
拆分终端和新建终端
感觉区别不大,都是可以让我们对一个项目同时进行多个命令,比如一个用来跑服务,一个用来做其他命令; 唯一感觉有实质区别的就是新建可以建不同的终端,如一个是 bash
终端,一个是 zsh
终端; 也许在多工作区的情况下有不同(not sure); 如果有朋友了解的请告知我,十分感谢!
如何打开外部终端
当然,肯定有和我一样感想的人:
这破电脑的显示屏已经够小了,还要把 vscode 的命令行面板调出来占用宝贵的位置;况且 vscode 的终端确实食之无味;社区上的命令行工具比他不知道高到哪里去了。正如我已经彻底放弃了 vscode 的命令行,转投到 Warp 的怀抱中。既然如此,如果可以在 vscode 中打开系统默认的终端就好了。
在 vscode 中,可以设置默认打开的外部命令行工具, 在 vscode 中,通过 command
+ k
+ command
+ s
,打开键盘快捷方式面板,搜索 open terminal
可以找到打开新的外部终端的快捷键为 shift
+ command
+ c
;如果你是使用 MacOS 自带终端工具的则到这里就 ok 了。但如果你是和我一样使用 Warp 或 iTerm2 之类的命令行工具的,则需要继续阅读。
通过查看 vscode 命令行相关的设置(设置面板,不是在 setting.json
找),在 用户 - 功能 - 终端
中可以找到三个设置:
- 自定义要在 Linux 上运行的终端
- 自定义要在 MacOS 上运行的终端
- 自定义要在 Window 上运行的终端
我们可以根据自己的系统直接在对应的输入框输入命令行工具名称,比如 Warp 则输入 Warp.app
,如果是 iTerm 则为 iTerm.app
;当然我们也可以点击输入框前面的小齿轮,选择 [复制设置id],其值为 terminal.external.osxExec
,然后在 setting.json
中设置该值为前面说的如 Warp.app
即可。
当你通过该快捷键激活外部命令行时,你还会惊奇发现:vscode 会在当前工作区路径打开的外部命令行!
这多是一件美事啊!
还不快点摆脱 vscode 的命令行?