🦍

Vimmerに好きなコマンドを聞いてみた

2022/02/24に公開
2

始めに

みなさん、最近はいかがお過ごしでしょう?
ぼくは最近ゴリラ.vimでヘルプを読み漁っています。
もしVimヘルプを探検してみたい方はぜひヘルプ読書会にご参加ください。

さて本題ですが、
普段Vimのプラグインの人気ランキングや紹介などをよく目にすると思います。
しかし、Vimのコマンドについてのランキングや紹介はあまり見かけません。
ということで、Twitterで好きなコマンド(ノーマル、Exなど)について募集してみた結果がおもしろかったので紹介していきます。

結果

アンケート結果をカテゴライズしてみました。

:::detailsアンケート結果

No カテゴリ コマンド 理由
1 editing :q! -
2 editing :q! -
6 editing :quit! 残ったままのメモブァッファが結構な頻度であるのでcnoreabbrev qq quit!にして愛用してます
4 editing :wq これぞVimといったところ
3 editing :update 更新した時しか書き込まないので安心して連発できる
5 editing :w !cmd いろいろなCLIツールと連携できる
7 editing ZZ あんまり使っていないが、たまに使うと驚きがあって好き。
8 various :normal 直近に学んだ直後から大活躍しています。DTOなどの冗長な書き換えがすごいスムーズになりました。
9 various :normal (行指向でまとめて操作を行うのに便利)
10 various :verbose -
12 change dd はじめてvim触った時の衝撃②
11 change CTRL_a (数値増減の汎用性が非常に高い)
13 change CTRL_a -
17 change CTRL_a -
14 change v_g_CTRL-A -
16 change v_g_CTRL-A 連番が作れる
15 change R 2016→2019などの固定長のデータ変更
18 change :%y カーソルを動かさずにバッファ全体をヤンクできるから
19 change :%s///g 置換コマンド、業務で良く使用するので!
20 change :%s/<pattern>/<word>/g 一括置換が気持ちよいので
21 change & motion ciw Vimの便利さを端的に表していると思う
22 change & motion ciw よく使う
23 change & motion cf{char} よく使う(なんなら削除もヤンクもこれていける)
24 change & motion ci(, di(, ca[などの括弧操作 -
25 change & motion ci" 文字列変更
26 change & motion ct_ アンダースコア区切りの変数名変更
27 change & motion gUw 大文字に変更、環境変数、SQLのキーワードなど
28 change & motion ciw -
29 visual & motion viw -
30 visual & change V%< 関数など段落区切りの定義をインデント
31 visual & change CTRL_vyp csv,ymlなどのデータ貼り付け追記
32 motion {} 雑に移動するときに便利
33 motion % 移動の高速化に一番役立っている気がするから
34 motion f 移動の高速化に役立っているから
35 motion f (思いとおりの場所にスパーンと飛べるのが気持ちよすぎる)
36 motion m大文字 グローバルにマークできてどこにでも行けるので
37 repeat . 男は黙って.
38 repeat . いろいろなコマンドと組み合わせられて、よい単位で繰り返してくれる
39 repeat . 楽チン
41 repeat . 何にでも使えるから
42 repeat . (Dot Repeat Yourself)
40 repeat qq 楽チン
43 repeat q マクロcsvのような行区切りデータ繰り返し修正
44 cmdline CTRL_[ vimを始めて間もないころescが押しづらく、とても使いづらいエディタだなぁと感じていた時にこのコマンドを知りvimを続けようと思ったため
46 cmdline Esc 作業単位の細かい分割ができるから
45 cmdline q: 過去のコマンドをいつものやり方で自由に編集して使いまわせるのは強い
47 insert i_CTRL-V 制御文字をそのまま入れられるほか、ありとあらゆる物をコードポイントさえ知っていれば挿入できる
48 insert o はじめてvim触った時の衝撃①
49 map :map 操作性をその場で書き換えられるのは強力
50 map :cabbrev (abbrevを設定しておけば長いコマンドを打つハードルが下がる)
51 help :help ありとあらゆる事柄に関してVimのインタフェースそのままでhelpを引けるのは強い
52 help :help -
53 other :smile こういう遊び心好き。
54 options set mouse=aset ttymouse=xterm2 なんちゃってvimmerのため。

:::

感想

結果を見ると、編集、移動系の機能は結構人気があるようです。
特にVimの看板機能であるオペレーター、モーション、リピートはみんな好きなようです。
ぼくも、これらの機能を知ってVimにハマったので、気持ち分かるなぁって思いました。

そのほか、個人的に意外だったのが次の回答ですね。

  • :smileは理由にあったとおり、Vimの遊び心が好きな方もいるようです。
  • :qはまさか、という気持ちで、好きな人がいるんだなって驚きました。
  • Escは作業単位を意識したことがなかったので、なるほどなぁと思いました。

最後に

意外と多くの方に回答してくれました。ありがとうございます。
この記事を読んでVimmerってこういうコマンドが好きなんだなとか、このコマンド知らなかったなとか、何かしら役に立ったことがあったならうれしいなと思います。

Discussion

kenshi kamatakenshi kamata

自分はここにないものだと q: でコマンド履歴から実行(しかも実行前に編集もできる!)とか :1,3t. でバッファを通さずにコピーペーストとか好きです。