私は最新バージョンのArch Linux 5.5.6-arch1-1から最新バージョンのvim 8.2.148を使用しています。
カーソルから文の文字までコピーするには、これを行うことができます。たとえば、この文でカーソルが文の先頭にあり、コピーのcまでコピーするには、次のようにします。yuc
「If I Want」をコピーするコマンドを実行します。
同様にうまく機能するもう1つの例は、文字列の先頭からその文字列の「スクリーンショット」の2番目のインスタンスの先頭にインポートすることです。
/home/user/linux_config/script_yad/screenshots/change_screenshots_directory.sh
しかし、カーソルがこの文の冒頭にあり、この文の2番目のインスタンスにドラッグしたい場合はどうすればよいですか?
yt2"sentence"
私の考えでは、そのようなコマンドが機能しなくても、構造的にはこのように見えるかもしれません。
明らかに、文字sを使って引くことは満足できません。
ビジュアルモードを使わずにこれを達成したいと思います。
プラグインが必要ですか?それでは、どのプラグインが必要ですか?
プラグインがなくてもできますか?達成する方法?
答え1
あなたはそれを使用することができます:
y2/screenshot<CR>
またはより簡単には、次のようになります。
y2/screen<CR>
2番目の単語「スクリーンショット」が同じ行に表示されるまで、カーソル位置からドラッグします。
(<CR>
これは検索を完了するために「Return」キーを押すことを意味します。)
増分検索の強調表示()を有効にすると、set incsearch
Vimは2番目の一致を強調表示することを確認できます。
これを次のように混同しているようです。特徴モーションを1つの文で構成します。アクションt
( "until"の場合、it'st
とnot u
)には1文字だけが必要です。同じ位置に引っ張るもう1つの方法はありますが、「スクリーンショット」の2番目のインスタンスの先頭にある行が6番目であることを確認するには、文でy6ts
計算する必要があります。 (これを助けるプラグインがあります。)s
s
/
t
検索(、またはタスクとは逆)を使用するf
ときは、いくつかの注意があります。検索で他の行に一致するものを見つけることができるからです。これが発生すると、コピー操作T
で改行文字を含むコンテンツが取得されます。貼り付けると驚くことがあります。後で予想外に。F
/
最後に、ビジュアルモードを使用することは、ビジュアルフィードバックを取得し、使用したいタスクが明確ではない場合、またはより柔軟性が必要な場合にタスクの選択を調整するのに最適な方法です。
たとえば、2番目の「スクリーンショット」(5回)に達するまでタスクを開始してから、を押してvts
タスクを繰り返すことができます。強調表示なしで6番目のスクリーンショットを数えるよりも簡単です!;
そこに到達したら押してy
取り出すだけです。
またはv/screen<CR>
、これが次の文字であることを知って、を押すと最初の文字が選択されているn
ことs
を確認し、を押してh
右に1回移動してからy
引き出します。
(あなたの意見への答え:私の意見では、上記のビジュアルモードソリューションはマウスを使用するよりも優れています。9つvts;;;;;y
のキー入力が必要ですが、そのうちの5つは同じキーにあります。手はキーボードから離れませんでした)。そして、番号を付ける必要はありません。
これらの動きに役立つプラグインを見たい場合は、vim-easymotion考慮してみるべき良い質問だ。