《Practical Vim》第八章:利用动作命令在文档中移动
Posted fbsharl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《Practical Vim》第八章:利用动作命令在文档中移动相关的知识,希望对你有一定的参考价值。
面向单词的移动
定义:
Vim 提供了面向单词的动作命令,用于将光标正向/反向移动一个单词;
功能 命令 正向移动到下一单词开头 w 反向移动到上一单词的开头 b 正向移动到下一单词(当前单词)的结尾 e 反向移动到上一单词的结尾 ge 如果你需要记的话,可以把它们想做 "forward"及 "backword" .
查找命令的移动
f{char} 命令
f{char} 为查找单个字符的命令,常用的核心命令如下:
功能 命令 正向移动到 {char} f 反向移动到 {char} F 正向移动到 {char} 之前一个字符 t 反向移动到 {char} 之前一个字符 T 重复正向查找 ; 重复反向查找 , arget
<CR>
命令f{char} 命令的缺陷:
- 只能一次查找一个字符
- 只能在当前行查找
arget
<CR
> 查找命令可以实现查找字符串和其他行的任务.查找命令与其他模式的配合
查找模式不仅仅能用在普通模式中,还能用在可视模式和操作符待决模式中,
常用的技巧如下:
- 删除到句尾文本,除了“.” 号: dt.
- 选择到 ‘gets‘ 的字符串 : v /ge
- 删除到‘gets‘的字符串: d/ge
针对 text-object 的移动
「文本对象」的定义:
文本对象分为两类:
- 第一类叫做「分隔符文本对象」,它是以特定的符号集合为单元的, 比如 i), i",it等等
- 第二类叫做「范围文本兑现」,即单词、句子和段落.
语法
文本对象由两个字符构成,第一个字符为 i 或者 a, 第二个字符为原始文本,其中:
- i 是不包含分隔符的字符串
- a 是包含分隔符的字符串
为了便于记忆,可以把 i 想象成 "inside", 而把 a 想象成 "around" 或 “all".
常用的文本对象如下
选择区域 命令 一对圆括号总体的内容 a)/ab 一对引号总体的内容 a" 一对 ML 标签总体的内容 at ML 标签内部 it 单词、句子、段落为 w、s、p
文本对象与其他模式的配合
与操作符待决模式的配合,以下为一些技巧.
- 修改一个单词:ciw
- 删除一个单词: daw
m 命令
设置标记格式:
- m{a-z} 设置为局部可见
- {A-Z}设置为全局可见
恢复光标格式:
- `{mark} :恢复目标准确行列
- ‘{mark}: 只恢复目标行
以上是关于《Practical Vim》第八章:利用动作命令在文档中移动的主要内容,如果未能解决你的问题,请参考以下文章