fおよびtモーションを次の行に展開します


16

方法があるt{char}f{char}場合に、次の行に取り組んでいきます{char}与えられたラインに存在しませんの?

/{char}<CR>特に、これを動詞と組み合わせて(たとえばdfact.)必要とする場合、1つのキーストロークを保存し、検索の強調表示を使用しないようにしたいと思います。


2
あなたは行うことができd/a、次に削除するac/.、次に削除します.hlsearchこの操作を実行するときに使用したくない場合は、d/操作を実行してから強調表示を無効にするマッピングを作成できます(末尾が:nohlsearch)。
jjaderberg

2
あなたが使用することができます(または研究)のようなプラグインをgithub.com/rhysd/clever-f.vim(とg:clever_f_across_no_line0に設定されており、他のオプションが有効/意志で無効)。
VanLaser


1
私はまだこれに最適なプラグインはeasymotionである
Vitor

1
プラグインも作成しました。改良されました
クリスチャンブラバンド

回答:


6

また、しばらくdahu / vim-fanfingtasticを使用していましたが、非常に役立ちました。.ライブラリtpope / repeat.vimのおかげでセマンティックリピートをサポートします。これもインストールする必要があります。

代替手段は、ほぼ同じことを行うchrisbra / improvedftです。

rhysd / clever-f.vimには、複数行のシークを有効にするオプションがありますが、その主な機能は、すでに行っているように現在のシークfを繰り返すことができること;です。

これらはすべて、期待どおりにハンドル;,キーがあります。

欠点複数行を持つfとは、tあなたが間違ったキーをヒットした場合、あなたは現在オフライン取られるということであるどこかの予期しないファイルに。 Ctrl-Oそれらの瞬間に役立ちます。(これはc、数行を飲み込んだだけであることに気付いていない場合、変更によって危険になる可能性がありますが、それは私にとっては歯が生えるトラブルでした。)

他の関連するプラグインもありますが、2つの文字を入力するプロンプトを表示するjustinmk / vim-sneakgoldfeld / vim-seekなど、少し異なるアプローチを使用して、ターゲットの場所に簡単にアクセスできます(ただし保証はありません)。

そして、easymotion / vim-easymotionがあります。これは、多くの強力なモーションキーを提供します。そのいくつかは、多くの候補がある場合にターゲットキャラクターを確認するために1つまたは2つの余分なキーを押す必要があります。


しかし、現在、私は自家製のソリューションを使用しています。私はと働い作るためにEasyMotionの著者ft カウントマーカーをフラッシュあなたの前に一致するすべての文字を超えます。

ここに画像の説明を入力してください

これは、バニラvimモーションの自然なカウントアシスタントとして機能します。どこかに移動しようとしても、考えているよりもfx多くxのs があることを発見した場合、目的のキャラクターに点滅した数字を読んで、[count];そこにジャンプすることができます。

こちらブランチがあります。キーマッピングを設定するために役立つヒント追加するセクション必ずお読みください。

ただし、c変更操作の場合、最初に正しく設定することをお勧めします。そのような場合、vビジュアルモードで余分なキーストロークを使うか、EasyMotionの保証されたジャンプの1つを使用することをお勧めします。


2

VanLaserが述べているように、あなたが望んでいるように見えることをするプラグインがあります。

https://github.com/dahu/vim-fanfingtastic

適切に動作するにはリピートプラグインが必要になったため、それも必要になります。

https://github.com/tpope/vim-repeat


他の選択肢も言及する必要があります
クリスチャンブラバンド

私ではなかった:) github.com/rhysd/clever-f.vim
VanLaser
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.