查找
(1)命令模式下:光标移到那个单词下面使用 * 命令,Vim 会取得光标上的单词并把它作为被查找的字符串;而#则是反向查找。
(2)命令模式下:
/word 后回车,即可以查找word单词;n-向下查找下一个单词,N-向上查找下一个单词;
?word 是反向操作,n-向上查找下一个单词,N-向下查找下一个单词;
(3)使用 %可以从开始括号跳到对应的关闭括号。或者从 ``#if'' 跳到对应的 ``#endif''。事实上, % 可以完成许多对应项之间的跳转。可以用来检查if()和{}结构是否平衡。
(4)使用 [{可以在代码段(block)中跳回到段起始的 ``{``。
(5)使用 gd 可以从引用某个变量的地方跳转到它的局部声明。
(6)忽略大小写查找
第一种,查找的word后加\c; 例如:/word\c 或 ?word\c
第二种,命令模式下使用 set ignorecase
跳转
(1)当你用 "G" 命令跳到另一个地方,Vim 会记住你从什么地方跳过去的。这个位置成为一个标记,要回到原来的地方,使用如下命令:``
`` 命令可以在两个位置上跳来跳去。而 CTRL-O 命令则跳到一个 "较老" 的地方 (提示: O 表示 older)。CTRL-I 则跳到一个 "较新" 的地方
:jumps 命令能输出一个你可以跳往的位置的列表。最后一个你使用的标记会用 ">" 符号标记出来。
(2)Vim 允许你在文本中放置自定义的标记。命令 "ma" 用 a 标记当前的光标位置。你可以在文本中使用 26 个标记 (a 到 z)。这些标记是不可见的,只是一个由 Vim 记住的位置。
要跳到一个你定义的标记,可以使用命令 `{mark},这里 {mark} 是指定义标记的那个字母。所以,移到标记 a 的命令是: `a
(3)你可以用如下命令取得所有的标记的列表::marks
到有一些特殊的标记,包括:
' 跳转前的光标位置
" 最后编辑的光标位置
[ 最后修改的开始位置
] 最后修改的结束位置
注:mark仅在当前文件跳转有效,jumps可在多个文件之间来回跳转
替换
xp
左右字符互换。
ddp
上下两行的内容互换。