.操作 = 操作符 + 动作

aaa bbb
例如,d是删除命令,b是移动到距离光标最近的字符串开头
当我们执行db的时候,就会删除光标(不包括光标位置)到最近字串开头之间的字符
dj则会删除光标所在行以及下一行

.a i 文本对象

所谓的文本对象,说白了其实就是专门操作文本的
他们两个的区别就是
a -操作范围包括边界
i -操作范围不包括边界
例如 aaa bbb ccc
当我们光标处在第二个b的时候,我们执行 viw,你会发现bbb 高亮。如果你执行vaw
你会发现bbb后面的空格也会高亮,如果后面没有ccc,前面的空格会高亮
对于字符串 {aaa},如果你执行va{,那么{aaa}整个都会高亮;如果你执行vi{,那么只有aaa会高亮

.<C-a> <C-x> 数字的加减

<C-a>-可以实现下一个数字的增加
<C-x>-可以实现下一个数字的减少
他们还都支持,在命令前面增加数字n,实现 +n 或者-n的效果

例如
zhangshuli 28 19880123
光标处在开头,你执行
2<C-a>,那么28会变成30
然后你把光标移动到1988的1上,
执行23<c-x>,那么19880123会变成19880100

.~ g~ gu gU 大小写转换操作
~-可以实现光标所在位置字符的大小写转换
g~ + 动作-可以实现光标到动作结尾之间位置字符的大小写转换
gu + 动作-可以实现光标到动作结尾之间位置字符的小写转换
guu + 动作-可以实现整行小写转换
gU + 动作-可以实现光标到动作结尾之间位置字符的大写转换
gUU + 动作-可以实现整行大写转换
.ap 段落命令

它可以操作整个段落
例如

aaa bbb ccc
aaa bbb ccc

光标在第一行,然后我们执行dap
你就会发现,你删除了这两行,包括下面的空行
也就是,它会把这两行当做一个段落(应该是按空行区分的)

vim 基础学习之普通模式的更多相关文章

  1. vim 基础学习之查找

    普通模式下 /->正向查找 n-向下查找 N-向上查找 ?->反向查找 N-向下查找 n-向上查找 <C-r><C-w> <C-r>-引用,例如引用寄存 ...

  2. vim 基础学习之插入模式

    插入模式1.字符编码,插入特殊字符 <C-v>{3位} 如,你想输入A,你可以在输入模式下<C-v>065(必须是3位) <C-v>u{4位} 如,你想输入¿,你可 ...

  3. vim 基础学习之替换

    替换命令substitute可以用来查找跟替换操作. :[range]s[ubstitute]/{pattern}/{string}/[flags] [count] range-命令作用范围(缺省的情 ...

  4. vim 基础学习之global

    global命令可以在指定模式下,匹配行上进行Ex命令 使用格式: :[range]g[lobal]/{pattern}/[cmd] range-是执行范围(如果缺省,是%) global-命令关键字 ...

  5. vim基础学习之搜索功能

    当我们使用vim看源码的时候,我们可能会碰到一个方法或者变量,我们想要知道这个变量在其他地方的使用情况.这时候我们经常的做法就是退出当前的文件,或者是重新切换一个终端,然后使用grep或者find等s ...

  6. vim基础学习之自动补全功能

    本章我们学习自动补全功能1.自动补全优先从当前的编辑区获得补全列表例如:我们写下如下内容 aaaaa aabbb aaab 当我们再次输入aa,然后我们按下Tab的时候,会弹出一个包含 aaaaa a ...

  7. vim基础学习1---简单命令

    1:vim abc:如果有abc文件,则打开,否则创建之后打开 2:输入"i",才可以输入东西 3:按Esc,它是底行模式,再敲":wq 回车" 保存退出. 4 ...

  8. vim 基础学习之文件跳转

    1. ''-当前文件上次跳转之前的位置2. '.-当前文件上次修改的位置,只要是发生了可能导致变化的命令操作就会被标记,哪怕实际结果没有变化3. '^-当前文件上次插入的位置,只要是发生了插入操作命令 ...

  9. vim基础学习之EX命令

    :tabnew -创建新标签 :split(sp)-垂直分割窗口 如果没有打开新的文件,那么会打开原来窗口的文件 :vsplit(vsp)-水平分割窗口 如果没有打开新的文件,那么会打开原来窗口的文件 ...

随机推荐

  1. Mysql优化理论知识

    参考文章 http://blog.51cto.com/lizhenliang/2095526 ()硬件优化 如果有条件一定要SSD固态硬盘代替SAS机械硬盘,将RAID级别调整为RAID1+,相对于R ...

  2. 隐藏tomcat nginx版本信息

    Tomcat --首先备份tomcat .首先找到这个jar包,$TOMCAT_HOME/lib/catalina.jar .解压catalina.jar之后按照路径\org\apache\catal ...

  3. BZOJ 2251 Trie树

    思路: i~n加到Trie树里 经过的边权+1 DFS一遍 搞定~ //By SiriusRen #include <cstdio> #include <cstring> #i ...

  4. PostgreSQL+pgpooll+Keepalived双机HA方案

    PostgreSQL+pgpooll+Keepalived双机HA方案 (注:本文档中的所有操作在没有说明的情况下都应该使用postgres用户进行操作,postgres用户没有权限的操作方可采用ro ...

  5. Remmina:一个 Linux 下功能丰富的远程桌面共享工具(转载)

    Remmina:一个 Linux 下功能丰富的远程桌面共享工具 作者: Aaron Kili 译者: LCTT geekpi | 2017-05-10 09:05   评论: 2 收藏: 4 Remm ...

  6. last-child到底怎么用

    今天工作时候遇到的坑, 看来还是css基础不够扎实,特此记录一下, <div> <p>1</p> <p>2</p> <p>3&l ...

  7. BZOJ 3787 Gty的文艺妹子序列(分块+树状数组+前缀和)

    题意 给出n个数,要求支持单点修改和区间逆序对,强制在线. n,m<=50000 题解 和不带修改差不多,预处理出smaller[i][j]代表前i块小于j的数的数量,但不能用f[i][j]代表 ...

  8. CSU 1506 Double Shortest Paths

    1506: Double Shortest Paths Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 49  Solved: 5 Description ...

  9. 配置TL-WVR45G企业路由动态地址

    1.打开浏览器,在地址栏输入http://192.168.1.1. 2.输入默认用户名密码:admin,登录. 3.[基本设置]->[lan设置]->[lan设置]  ip地址改成:192 ...

  10. vs2010和qt4.8.4配置

    最近项目要求在vs中开发qt程序,安装过后发现代码每天提示功能.由于本人记忆力有限,特在网上收罗了些配置方法. vs安装目录采用默认,qt安装目录:C:\Qt\4.8.4vs 在系统环境变量新建QTD ...