学习选中文本的命令,在编辑一段文本时, 复制粘贴是一个非常常规的动作.
要想复制一段代码,应该先学会怎么样选中要复制的代码.
在vi中,要想选择文本,可以使用这个Visual 命令,把命令模式切换到另外一个工作模式, 叫做可视模式.
vi为了方便程序员选择文本, 提供有三种可视模式.
如果输入一个小写字母v, 就可以进入到可视模式.
如果输入一个大写字母V, 就可以进入到可视行模式.
如果按下CTRL这个功能键, 再加一个字母v, 就可以进入可视块模式.
做一下演练,现在光标在第15行,
现在把光标向右移动一点点,现在按一下小写字母v,
按下小写字母v之后, 在vi的下方有一个可视, 这个可视就提示已经进入到可视模式.
现在按一下字母j , 向下移动光标, 随着光标向下移动,从刚才光标开始所在位置到现在光标所在位置,所有的文本全部被选中, 这个就叫做可视模式.
一句话讲, 在可视模式下,可以直观的看到选中了哪些文本.
现在按字母k, 向上移动,向上移动也从光盘从光标开始位置, 到光标现在的位置, 所有的内容全部被选中.
从光标开始位置到光标,现在为止所有的内容全部被选中对吧?这个是第1种可视模式.
那现在按一下esc ,就可以返回到命令模式了.
现在来尝试一下大写字母V,按一下大写字母V之后,当前光标所在的一整行代码全部被选中,
现在向下移动光标,随着光标的移动, 光标经过的所有行全部被选中.
这个呢,就叫做可视行模式.
所谓可视行模式, 只要是光标经过的行,通通会被选中.
现在按下esc , 重新返回到命令模式.
第3种可视模式, CTRL+ v,下方会提示进入到可视块模式,
现在向下移动光标, 可视块模式会以垂直方向来选中一段文本.
可视块模式在开发中是有专门的应用场景的.
在可视模式下, 可以使用移动命令来快速选择文本.
做一下演练,现在把光标移动到第8行,按一个大写字母V, 进入到可视行的状态.
想要把第8行到第11行全部选中, 可以使用右侧的花括号直接选择到段落结尾.
想选择第8行到第1行,就可以按下左侧的花括号,从第8行到第1行, 光标经过的位置文本全部被选中.
这个就是在可视模式下, 可以跟移动光标命令一起连用.
现在把光标向下挪动,
然后按一个gg, 把光标移动到代码的第1行,
然后按一个大写的V, 进入可视行模式.
然后再输入一个大写的G,大写的G会跳到文件末尾.
按下大写的G之后, 就会把当前代码中所有的内容全部选中.
在这里按一下字母d,所有的内容全部被干掉.
再按一个字母u, undo 一下, undo之后, 所有的内容又恢复回来了.