149

コマンドはvimで何をしf、コマンドは正確にどのように機能しますか?t

4

5 に答える 5

255

このような質問で最初に立ち寄るのは、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.
         ^

fこれらのコマンドは、 indおよびtillとして覚えておくことができます。また、コマンドの前に数字を付けて、その文字のn番目の出現箇所に移動することもできます。たとえば3fb、カーソルの右側の3番目のbに移動します。私の例文にはbが1つしかないため、カーソルはまったく移動しません。

于 2012-09-19T13:17:35.487 に答える
137

Michael Kristofikの答えに追加するだけで、説明がないfか、t言及せずに完全;です。

このVimチートシートから:

;「最新のf、t、F、またはT[カウント]回を繰り返します。」

したがって、@ 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.
                 ^
于 2014-04-22T15:26:10.403 に答える
63

とと組み合わせるfと非常に便利です。たとえば、 カーソルから次のコロンまですべてを置き換えることができますが、コロンを削除することはできません。「コロンへの変更」として覚えておくことができます。tdcct:

于 2012-09-19T13:26:52.060 に答える
35

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

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

を使用Fxして、Txに到達することができます。 x

を使用して、行2fxの2番目にジャンプできますx

したがって、fFtTの括弧のセット()にすばやく移動しf(たり、カーソルから前の=dT=)などを除いてすべてを削除したりする場合に便利です... </ p>

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

于 2012-09-19T13:23:29.280 に答える
7

LondonRobが言及したので、コンマコマンド;の説明が正しいと思います。,これらのコマンドと組み合わせて非常に使用されます(検索がオーバーシュートする場合)。

f、、、またはで検索を実行した後、をF使用して反対方向に検索を繰り返すことができます。tT,

この文の冒頭にいて、elotelitに変更したいとします。

Lorem ipsum dolor sit amet consectetur adipiscing elot sed do eiusmod tempor.
^

oを交換する必要があることはわかっているので、foすぐに(find o)を実行します。行の早い段階でカーソルが動かなくなっています。を押し;て、同じ方向に検索を繰り返します。タイプタイプタイプ...5回実行する必要がありましたが、;代わりにオーバーシュートして6回入力したとします。私はここに行き着きます:

Lorem ipsum dolor sit amet consectetur adipiscing elot sed do eiusmod tempor.
 ^ 
Lorem ipsum dolor sit amet consectetur adipiscing elot sed do eiusmod tempor.
             ^ 
Lorem ipsum dolor sit amet consectetur adipiscing elot sed do eiusmod tempor.
               ^ 
Lorem ipsum dolor sit amet consectetur adipiscing elot sed do eiusmod tempor.
                            ^ 
Lorem ipsum dolor sit amet consectetur adipiscing elot sed do eiusmod tempor.
                                                    ^ 
Lorem ipsum dolor sit amet consectetur adipiscing elot sed do eiusmod tempor.
                                                            ^ 
Lorem ipsum dolor sit amet consectetur adipiscing elot sed do eiusmod tempor.
                                                                   ^

これで、2回実行するだけで、,この検索を反対方向に繰り返すことができます。カーソルはelotのoに到達します。

Lorem ipsum dolor sit amet, consectetur adipiscing elot, sed do eiusmod tempor.
                                                              ^        
Lorem ipsum dolor sit amet, consectetur adipiscing elot, sed do eiusmod tempor.
                                                     ^

ri交換を終了します。

ほとんどの移動コマンドと同様に、,次の点も考慮してください[count],

マニュアルから:

最新のf、t、F、またはTを反対方向[count]回繰り返します。

于 2020-10-22T05:42:42.083 に答える