LoginSignup
5
5

More than 5 years have passed since last update.

[一日一Vim](その5)選択した文字列をペーストで置き換えると、次にペーストされる文字は置き換え前の文字になるのをどうにかしたい。

Posted at

どうにかしたいこと

以下のようなテキストがあったとして

var1 = "こんにちは Qiita!!";
var2 = "Hello Qiita!!";

文字列の中身を"hogehoge" で置き換えたい!って時に
すでに"hogehoge"がヤンクされているとして
一個目の文字列をvi"で選択してpで置き換え
ニ個目の文字列に移動してvi"で選択してpで置き換え
ってすると、ニ個目は"こんにちは Qiita!!"がペーストされます。

置換でやればいいんですが、今回は別の方法ということで...

vim-operator-replace

その2@X___MOON___X さんが教えてくださったサイト
vim-operator-replace というプラグインが紹介されていました。
その説明に「レジスタを汚さないでテキストオブジェクトをヤンクしたテキストに置き換える」
とあります。ほうほう。早速入れてみました。
インストール時に参考にしたのはこちらのサイト

使ってみた

さっきの例でいうと。まず"hogehoge"をヤンクしておきます。
そして一つ目の文字列を選択してRi"
二つ目を選択してRi"

期待通りの結果になりました。便利!

ただ。。。

これを使うと、どこからどこまでが置換範囲なのかよくわからないということが難点です。
"0pをどこかのキーにバインドして(例えばP)、vi" -> P とする方が私の要望に
あっているのかもしれません。

5
5
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5