Vimではfコマンドとtコマンドは何をしますか?


126

誰かが私にvimでandコマンドが何をするのか、fそしてtそれらがどのように機能するのか正確に説明できますか?私はこの情報を見つけることができないようですが、人々はそれらが非常に有用であると私に言い続けます。可能であれば、例を挙げて回答をいただければ幸いです。

回答:


204

これらのような質問の最初のストップは、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、カーソルの右側の3番目のbに移動します。私の例文ではbが1つしかないので、カーソルはまったく移動しません。


4
ありがとうございました。完璧でした。:hコマンドをすっかり忘れていました。これはVimを使用する最初の週です。これは大きな助けになりました。ありがとう!
Dan

1
「fb」をしている間、私はb(rown)に連れて行かれます。どうすれば直接 b(r)ownできますか?hjklなしで方法はありますか?
dangdis 2014

15
大文字で書くと後ろにジャンプします。たとえば、FbまたはTb
be-ndee 2016

2
@ancm-be-ndeeによると、FxまたはTx。ここで、xは検索する文字です。
ミッキー2017年

1
:help難解ではない群衆に常に最良の説明を提供するとは限らないため、に依存しないので、初心者には簡単に行く価値があります。どういうto [count]'th意味ですか?
Tycholiz

121

ちょうどに追加するマイケル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.
                 ^

1
; tipはかなり便利ですが、「t」でどのように機能するかはわかりません。私が試したところ、tコマンドを何回繰り返しても同じ位置に行き詰まりました。
PeterPerháč16年

@PeterPerháčセミコロンを数回押します。私のために働く。
LondonRob

@PeterPerháč、xコマンドを前方検索するとセミコロンが;を押すたびに同じxを見つけるため、tコマンドの方が扱いが難しいため、移動しません。lを1回押してからセミコロンを入力すると、機能するはずです。
ミッキー2017年

@PeterPerháč行の最後の出現箇所(1文字前)に到達していないことを確認します。次の出現箇所が見つかるはずです。
Adam Evans

51

私は見つけるftとの組み合わせで非常に有用であるdc。たとえば ct:、カーソルから次のコロンまですべてを置き換えることができますが、コロンは削除できません。「コロンへの変化」と覚えていただければと思います。


5
+1!関数呼び出しの1つまたは最後の引数を好むct,ct)、すぐに置き換えるイディオムは、使用するとすばらしいと感じます。
nperson325681 2012

15
私はvt:cあなたが常に特定の文字のそれぞれの発生を100%正確に見つけるのではないので、私は好む。ではv、あなたは、素敵な視覚的な手がかりを視覚的な選択を見ることができます。
Bentley4 2013年

1
私は、「コロンになるまで変える」というニーモニックを好む
パトリックマイケルセン

34

fx行の xの行にジャンプします。

tx行の次の 文字の直前の文字にジャンプしxます。

を使用するFxTx以前の状態 に到達できますx

行の2fx2番目xにジャンプするために使用できます。

だから、fFtTあなたは括弧の次のセット(に迅速に行きたい時に便利ですf()、またはカーソルからの削除のすべてが、除く、前の=dT=)のように...

を参照してください:h motion.txt。それはあなたの心を吹き飛ばします。


2
その2fxことについて言及してくれてありがとう。私はいつもそれと混同しますf2x
Yar
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.