《Vim 实用技巧必知必会》学习笔记Day20

Vim的内置终端命令允许用户在编辑器内部运行shell或指定命令,方便远程工作和窗口管理。通过:terminal,可以实现窗口的横向或纵向分割,甚至在新的标签页中打开。这种功能不仅简化了目录切换和认证过程,还支持文本交互和控制,如搜索、复制,甚至进行终端输出的比较。利用Vim的这一特性,可以提升开发和调试的效率。

使用 :terminal(缩写 :term)命令,我们可以在 Vim 的窗口中运行终端模拟器。基本的用法就是下面两种:

  • 使用 :terminal,后面不跟其他命令,分割一个新窗口,并使用默认的 shell 程序进行终端模拟;shell 退出后窗口自动关闭(可用使用命令参数 ++noclose 改变这一行为)。
  • 使用 :terminal 命令 的方式,分割一个新窗口,在其中运行指定的命令并进行终端模拟;命令执行完成退出后窗口不自动关闭,保留执行中显示的信息(可用使用命令参数 ++close 改变这一行为)。

跟其他的多窗口命令一样,:terminal 默认会进行横向分割,但你也可以在 terminal 前面加上 vert 来进行纵向分割,或加上 tab 来把终端窗口打开到一个新的标签页里。

跟 quickfix 窗口里只能看到程序的输出不同,在终端模拟器里我们既可以看到程序的输出,也可以向程序提供输入。同时,这个终端模拟器像一个真正的终端一样,能够支持色彩和其他的文本控制。你甚至可以在里面运行 Vim,就像 Matrix 电影里层层嵌套的世界一样。

为什么要在 Vim 里运行终端呢?

  1. 方便。特别在远程连接的时候,有可能新开一个连接在某些环境里需要特别的认证,比较麻烦。即使连接没有任何障碍,你总还需要重新 cd 到工作目录里吧?而如果在一个现有的 Vim 会话里开一个新的终端,可以一个命令搞定,然后用你已经很熟悉的 Vim 命令在不同的窗口或标签页里切换。
  2. 文本。我们可以从终端作业模式切换到终端普通模式,然后用我们熟悉的 Vim 命令来对缓冲区中的文本进行搜索、复制等处理工作。
  3. 控制。你可以发送命令给终端,也可以读取终端屏幕上的信息。这样,事实上就打开了一片新天地,可以在 Vim 里做很多之前做不到的事情,比如,用 Vim 来比较两个屏幕输出的区别(:help terminal-diff)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值