Answers:
遇到此类问题的第一站应该是vim的内部帮助,:h f并且:h t。但是,在这种情况下,没有示例,这些条目是有点神秘的。假设我们有这条线(^=光标位置):
The quick brown fox jumps over the lazy dog.
^
这些命令在一行上查找字符。因此fb将光标放在这里:
The quick brown fox jumps over the lazy dog.
^
t就像f但是将光标放在前一个字符上。所以tb会给你:
The quick brown fox jumps over the lazy dog.
^
您可以将这些命令记为find和till。另外,您可以在命令前添加一个数字,以移至该字符的第n个出现位置。例如,3fb将移动到光标右侧的第三个b处。我的例句虽然只有一个b,所以光标根本不会移动。
Fb或Tb。
:help,因为它并不总是为非深奥人群提供最佳解释。to [count]'th甚至是什么意思?
仅添加到Michael Kristofik的答案中,没有提及也没有描述f或t不完整;。
从此Vim速查表:
; “重复最近的f,t,F或T [count]次。”
因此,继续@MichaelKristofik的主题:
The quick brown fox jumps over the lazy dog.
^
输入fo第一个“ o”:
The quick brown fox jumps over the lazy dog.
^
然后;转到下一个:
The quick brown fox jumps over the lazy dog.
^
我发现f和t结合是非常有用的d和c。例如, ct:将使您替换从光标到下一个冒号的所有内容,但不删除冒号。您可以将其记住为“更改为冒号”。
ct,或喜欢ct)快速替换函数调用中一个或最后一个参数的惯用法让人感觉很棒。
vt:c因为您不会总是发现每次出现的给定字母都是100%正确的。随着v您可以看到视觉选择,一个不错的视觉提示。
fx跳到下一 x行。
tx跳转到该行中下一个 字符之前的字符x。
您可以使用Fx和Tx到达上一个 x。
您可以使用2fx跳到第二x行。
所以,fF和tT当你要赶快去(下一组括号是有用的f(),或删除一切从游标,但不包括以前的=(dT=)等...
请参阅:h motion.txt。它会让你大吃一惊。
2fx件事。我总是把它与f2x