9
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Vimはマルチカーソルで幸せになれるか?

Posted at

こちらの記事が話題になっていました。

マルチカーソルで、VSCodeのスニペットをもっと便利に。

また、VScode ユーザーでは重宝すると次のような記事が散見されました。

マルチカーソルを使わないVSCodeはただのVSCodeだ!

それぞれの記事内容を確認したところ、下記の機能性が主なメリットのようです。

  • 複数の位置で同時に入力・編集ができる
  • 複数箇所にある文字列を一括で変更・削除できる

正直なところ、Vim や neovim を普段使いする Vimmer としては、検索やビジュアルモードでやれてしまうので、便利さや必要性を感じないなとは思いました。

しかし、マルチカーソル自体が Vim / neovim で使えるのかは興味がありました。

そこで今回試すに至りました。

Vimでマルチカーソルを使うには

こちらで詳しく書きましたので省略。

Vim でマルチカーソルを使う

例えば、Pythonの関数の引数となる変数名を変更してみます。

vimでマルチカーソルを使って、関数の引数名を置換してみた
  1. Alt-n で該当する単語全てを選択
  2. cキーで置換するインサートモードへ移行
  3. 新しい引数名を入力
  4. ESCキーで元に戻す

ビジュアルモードと違って、行が異なっても入力や置換ができるのは便利ですね。

標準でのキー操作やカスタマイズについては、こちら で詳しく書きましたので省略。

Vim に マルチカーソルは必要か

他のエディタでのマルチカーソルの価値を批判する気は一切ありません。

しかし、正直なところ、マルチカーソルの必要性を感じない というのが所感です。

もちろん便利さはあるとは思いますが、先にも書いたとおり、Vim/neovimではビジュアルモードや置換機能が便利なので、そちらを使うのと大差ないのが明白です。

1キー1キーの入力動作を見ながら作業ができるマルチカーソルはとても直感的ですが、慣れてしまえば先の機能で必要性を感じられないのです。

作業速度も、たぶん慣れてしまえばどちらにも差は無いでしょう。

また、こちらの記事にあった「いい感じに全部のケース変換をする」「全行にデバッグログを突っ込む」は、マルチカーソルならではだとは思うのですが、登場機会があまりにも少なすぎるなと感じます。

むしろ、マルチカーソルの使い方と使う場面を覚える学習コストがイマイチです。

恐らく大半の Vimmer 面倒くさがる、もしくはせっかくの活躍の機会に使い方を忘れてしまうのではないかと懸念します。

そのため、普段使いとして必須かと言われれば、Vimmerには不要と考えます。

誰か もう少し Vimmer でもマルチカーソルが必要不可欠だと言えるようなユースケースが出てきて欲しいものですね。

おわりに

Vim入門者のための記事を書いて情報発信しています。

Vim入門

Vimがもっと世に広まって、Vimmerが1人でも増えるように少しでも貢献できれば幸いです。

9
6
0

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
9
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?