一覧を整える
一覧の形を整える作業は、同じ操作の繰り返しになりがちです。繰り返しをVimに任せられると、行数が増えても手数がほとんど変わりません。
繰り返しに向いた形に直す
. が効くのは、直前の変更をそのまま繰り返せるときです。行ごとに操作が違うと使えないので、同じ操作で済む形に揃えてから繰り返すのがコツになります。たとえば桁を揃えてから矩形選択を使う、番号だけを先に振る、といった順序です。
並べ替えは外部コマンドで
一覧を並べ替えたいときは :sort、重複を消したいときは :sort u が使えます。選択範囲だけを対象にすることもできるので、リストの整形はVimの中で完結します。
並べ替えの細かい指定
:sort は既定では文字列として比較するので、10 が 9 より前に来ます。数値として並べたいときは :sort n と書きます。逆順にしたいときは :sort!、重複を消すなら :sort u で、これらは組み合わせられます。
範囲を書けば一部だけを並べ替えられます。ビジュアルモードで選んでから : を押して sort と打つのが手軽で、リストの一部だけを整えるときによく使います。
番号を振り直す
並べ替えたあとで番号が飛んでしまったときは、番号の桁をビジュアルモードで選んで g Ctrl-a を押すと、上から順に1ずつ増える連番に振り直せます。全部を同じ数字にしてから実行するのが手順です。
この方法なら、途中に行を差し込んだあとの振り直しも一度で済みます。1行ずつ Ctrl-a を押していく必要はありません。
整える順番
一覧を整えるときは、不要な行を消す・表記を揃える・並べ替える・番号を振る、の順で進めると戻りが出ません。並べ替えを先にしてしまうと、そのあとで行を消したときに番号が飛び、もう一度振り直すことになります。
この順番は、Vimの機能を組み合わせる練習としても分かりやすい題材です。:g で消し、. や矩形選択で揃え、:sort で並べ、g Ctrl-a で番号を振る、という流れが第3章から第6章までで覚えたものの総まとめになります。
このレッスンで扱うキー
| キー | 動き |
|---|---|
| A | 行末から入力 |
| . | 直前の変更を繰り返す |
| Ctrl-a | 数値を1増やす |
| dd | 1行削除 |
| :g | 条件に合う行だけ処理 |