さまざまな単語を同時に編集します。複数の選択肢があるSublime Textのように、同じ行を1つ編集します


14

同じ行にある複数の単語を同時に編集することはできますか?

たとえば、私がこれを持っているとしましょう:

Spam and Eggs is all you need for a healthy breakfast

行を次のように変更したいと思います。

organic_Spam and organic_Eggs is all you need for a healthy breakfast

「スパム」と「卵」を強調表示し、「有機」を「スパム」と「卵」に同時に追加します。ビジュアルブロックを使用して異なる行に同時に書き込むのに少し似ていますが、ここでは同じ行にデータを書き込みます。私は同僚がSublime Textでこれをやっているのを見て、グーグルで試しましたが、うまくいきませんでした。



vimでは、複数の選択/カーソルの機能は見た目だけだといつも思っています...-
ケント

回答:


18

ここでアレキサンダーに同意します。日々の編集では、おそらく.コマンドも使用しますが、コマンドを1つだけ実行する場合は、代替コマンドを使用します。

:s/S\|E/organic_&/g

一方、&はからの一致パターンです/S\|E/


21

Vimには、Sublime Textのようなマルチカーソルはありません(ただし、覚えているプラ​​グインがいくつかあります)。しかし、これを実現する別の方法があるため、vimにとってそれほど重要ではないようです。たとえば、次の行があります

Spam and Eggs is all you need for a healthy breakfast

私はこのようなことをします:カーソルの最初の文字に通常モードでカーソルを置き、Spamを入力iorganic_Escしてから2回wジャンプし、(ドット)をEggs押して.最後のアクションを繰り返します。したがって、私にとっては、これはSumlime Textよりもはるかに生産的ですが、多分それほど空想的でも直感的でもありません。

とにかく、両方のエディターにこのアクションの前処理のようなものがあります。SublimeTextでは、いくつかのホットキーを使用して新しいマルチカーソル位置の場所を選択します。Vimでは、この種の「前処理」は実際に行の編集時に発生しww.ます。つまり、このすべてのことを意味します。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.