vim的visual模式
在可视化模式下,可以对一个文本块的整体进行操作。例如,首先高亮选中一部分文本,然后用d命令删除这个文本块。可视化模式的好处在于,你可以在做改动之前,就看到操作将影响的文本。可视化模式可以分为以下三种:
- 用
v
命令进入的字符可视化模式(Characterwise visual mode)。文本选择是以字符为单位的。 - 用
V
命令进入的行可视化模式(Linewise visual mode)。文本选择是以行为单位的。 - 用
ctrl-V
进入的块可视化模式(Blockwise visual mode)。可以选择一个矩形内的文本。(注意:在Windows中,ctrl-V
可能已经被影射为粘贴操作,可以使用ctrl-Q
进入块可视化模式。)
切换可视化模式
通过输入相应的可视化命令,就可以切换到不同的可视化模式。例如现在字符可视化模式下,如果想要切换到块可视化模式,那么只需要输入ctrl-V即可。当然,我们也可以先用ESC关闭当前的可视化模式,然后再进入其它可视化模式。
在可视化模式下选择
使用命令v
进入字符可视化模式。在此模式下,用命令移动光标,光标起始位置和当前位置之间的文本将会以高亮显示。这时就可以对这些高亮显示的文本进行整体的操作。例如:在字符可视化模式中,首先用6l
命令选中光标右侧的6个字符,然后输入d
命令删除高亮显示的文本。
使用命令V
进入行可视化模式。在此模式下,我们使用2j
命令,就可以选中当前行及其随后2行。
使用命令ctrl-Q
进入块可视化模式。在此模式下,我们使用2l
命令向右移动,然后使用3j
命令向下移动,就可以选中4行2列的文本块。
命令gv
可以重复前一次可视化模式时选中的文本。如果已经在可视化模式下,执行该命令会选中前一次选择的文本。如果重复行执gv命令,就会在当前选中的文本和前一次选中的文本之间进行切换。
在可视化模式下移动
如果你已经在可视化模式下选择了若干文本,并且希望移动到已选择文本的另一结尾处,那么可以使用o
命令。
如果你使用的是块可视化模式,那么已选择的区域将有四个角落。o
命令只能移动到对面的一个角落,这时你可以使用O
命令移动到同一行的另一个角落。
在可视化模式下编辑
在可视化模式下,我们可以进行各种编辑操作。如d
命令可以删除高亮显示的文本,而D
命令则会删除一行,即使这一行中只有部分文本是高亮显示的。类似的,y
命令将复制高亮显示的文本,而Y
命令会复制整行。c
命令可以将高亮显示的文本删除并进入编辑模式,而C
命令会删除一行文本并进入编辑状态。
针对高亮显示的文本块,我们可以用命令~
进行大小写转换。用命令>
增加缩进,或用命令<
减少缩进。
我们还可以利用可视化模式,来合并多行文本。J
命令可以将高亮显示的文本内容合并为一行,同时以空格来分隔各行。如果不希望在行间插入空格,那么可以使用gJ
命令。
使用g?
命令,可以使用rot 13算法来加密高亮显示的文本。针对同一个文本再次执行加密命令,就可以进行文本解密。
在可视化模式下,按下:键就可以对选定范围进行操作。例如:我们先在可视化模式下选中文本,然后执行:write block.txt
命令,就可以将文本块写入另一文件中。选择多行,然后执行:sort
命令,则可以对选中的文本进行排序。
如果想要查看可视化相关的帮助信息,可以在所希望帮助的名称前加v_前缀。例如使用:help v_d
命令,可以得到关于在可视模式下进行删除操作的帮助信息。
退出可视化模式
当我们想要退出可视化模式时,可以按ESC键或ctrl+c键。
v |
进入字符可视化模式 |
V |
进入行可视化模式 |
ctrl-V |
进入块可视化模式 |
ctrl-Q |
|
gv |
选中前一次可视化模式时选择的文本 |
o |
光标移动到选中文本的另一结尾 |
O |
光标移动到选中文本的另一角落 |
vim的visual模式的更多相关文章
- vim insert VISUAL模式无法右键复制问题(转)
转自:https://blog.csdn.net/coder_oyang/article/details/89096219 vim中使用鼠标右键粘贴,失败.vim的模式: 网上解法: 1. 普通模式下 ...
- vim 可视化模式(visual模式)
转文章 为了便于选取文本,VIM 引入了可视(Visual)模式. 要选取一段文本,首先将光标移到段首,在普通模式下按 v 进入可视模式,然后把光标移到段末. 需要注意,光标所在字符是包含在选区中的 ...
- vim的visual可视模式(转载)
转自:http://www.cnblogs.com/chenyadong/archive/2011/08/30/2159809.html 为了便于选取文本,VIM 引入了可视(Visual)模式.要选 ...
- docker vim右键进入visual模式无法粘贴
右键不能粘贴,反而进入了visual模式, vim版本:version 8.0.707 修改方法: vim /usr/share/vim/vim80/defaults.vim 第70行 在mouse= ...
- vim visual模式 复制
按ESC再按“V”,进入visual模式 用键盘向左向右箭头选中要复制的文字,按两下"Y"键 再到要粘贴的地方,按“P”键即可. 转自: http://jingyan.baidu. ...
- 菜鸟vimer成长记——第2.2章、visual模式
vi是没有可视模式的.然而大多数编辑软件都都是有可视模式.所以我猜测vim是几乎迫于无奈才有了visual模式. 个人建议,能不用就不用.这样能直接在头脑里处理好文本,锻炼文本处理能力,同时能转变过来 ...
- 【vim】插入模式与常用编辑操作
vim不像很多编辑器那样一启动便可以直接编辑文本,需要在普通模式按下i, a等键才会进入插入模式进行文本编辑. 如何进入插入模式 以下的命令都会让vim从普通模式切换到插入模式,但命令执行后的字符插入 ...
- VS下使用VIM, Visual Studio 安装 VSvim插件 配置 及使用
简介 VIM是一款很高效的编辑工具,所幸的是VS2012以后支持VIM的插件:VsVim.下面介绍插件的安装.配置及简单使用. 1. 下载安装 去官网下载,双击直接安装后,重新打开VS. https: ...
- vi中使用鼠标右键插入时进入(insert)visual模式
使用vim插入外面复制的内容时,用右键点击后,并未将内容粘贴进去,而是进入了(insert)visual模式,解决方法:先shift+enter进入普通模式输入 set mouse-=a然后再i进入i ...
随机推荐
- docker编排工具,docker-compose下载与安装
安装很简单,但是难免会遇到问题:1.安装curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compos ...
- spring、springmvc和mybatis整合(java config方式)
之前项目中使用ssm框架大多是基于xml的方式,spring3.0以后就提供java config的模式来构建项目,并且也推荐使用这种方式,自从接触过springboot后,深深感受到这种纯java配 ...
- Respone笔记
1 设置定时刷新的头 //设置定时刷新的头 response.setHeader("refresh", "5;url=http://www.baidu.com" ...
- 关于append,appendTo,prepend,prependTo的区别
之前做项目对于这几个的方法总是有点模糊,尤其是prepend和prependTo; 1.append <style> span{ background:yellow; } .test{ b ...
- [Unity3D]Shader编程之动态屏幕遮罩
转载 https://blog.csdn.net/u012741077/article/details/78425834 屏幕可视范围跟随目标物体移动,可修改可视范围大小,边缘渐变大小.以及遮罩颜色, ...
- github 相关操作知识
新设备上使用github 1.要在本地创建一个ssh key ssh-keygen -t rsa -C "email address" 2.界面提示进入.ssh文件夹下,找到id_ ...
- 持续集成:TeamCity 的安装和使用
TeamCity 本文初衷 让大家了解持续集成(CI),以及入门了解 JetBrains 家的 TeamCity 的一些简单实用. TeamCity 的一些复杂使用我暂时也不会,一样也是要看文档的,所 ...
- linux-pm2用法
devo.ps团队对JavaScript的迷恋已经不是什么秘密了;node.js作为服务器端,AngularJS作为客户端,某种程度上说,我们的堆栈是用它建成的.我们构建静态客户端和RESTful J ...
- 【AAA】AAA协议介绍
AAA AAA简介 AAA是认证(Authentication).授权(Authorization)和计费(Accounting)的简称,是网络安全中进行访问控制的一种安全管理机制,提供认证.授权和计 ...
- XAMl使用其他命名空间中的类型及加载和编译
以前我们讲过XAMl命名空间.为了使便宜钱知道XAMl文档中元素对应的.NET类型,需要知道XAMl明档中指定特定的两个命名空间.XAML是一种实例化.NET对象的通用方法 ,除了可以实例化一些标准的 ...