- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- ソース を表示
- Vim/検索/gnモーションで置換 へ行く。
- 1 (2018-09-18 (火) 02:56:18)
gnモーションで置換
1: var f = new Foo(); 2: if (1) { 3: var a = Foo.foo(); 4: } 5: Foo.bar();
1: var f = new Boo(); 2: if (1) { 3: var a = Boo.foo(); 4: } 5: Boo();
- gnモーションは最後に使われた検索モーションで検索し、ビジュアルモードで選択する。
- 検索ワードがファイル内にいくつもあり、それらのワードを連続して置換する場合などにgnモーションを使うと便利。
- 上のようなコードでFooをBooに変えたい場合、
- まずggで1行目に行き、/Fooで検索をしてnew Foo();の箇所に行く。
- ここでcgnとすると、Fooが消えて置換モードに入るので、Booと入力する。これでFoo()がBoo()になる。
- 次にnで3行目のa = Foo.foo()に行く。.ドットでFooをBooに変える。
- さらにnで3行目のBoo.foo()に行くかもだが、ここは無視して、さらにnを実行して、5行目のFoo.bar()に行く。.ドットでFooをBooに変える。
- これでFooをBooに変えることができた。
参考
vimcasts.org/episodes/operating-on-search-matches-using-gn/