linuxでテキスト編集を行うとき一番素直なのはVimを使うことです。でもVimの操作性は素直とは言えません。文章を打ち込むモードと移動とか検索とかを行うモードがあるからです。(あとヴィジュアルモードとか)
今回は曲者エディタVimを最低限使えるようになろうという記事です。
私は初めて使った時、文章を上書き保存することも終了することさえできませんでした。今は効率的とまでは言えないもののそれなりに使うことはできます。
私が調べなくても使えるのは以下のコマンドくらいです。
挿入モード移行 i,a
挿入モード離脱 [Esc]
上書き :w
終了 :q
アンドゥ u
リドゥ [Ctrl] + r
文字単位の移動 w,W,b,B
行頭へ 0
行末へ $
行番号指定移動 100G(100行目へ移動)
1行目 gg
最終行 G
カット d[モーション]
コピー y[モーション]
dd,yyで行ごと
dw,ywなら単語ごと
ペースト p
文字の上書き r
文字の入れ替え xp
現在の行のカット、コピー dd,yy
下の行と入れ替え ddp
大文字・小文字の変換 ~
検索 /string, ?string, n, N
置換 :%s/old/new/g [enter]
確認しながら置換 :%s/old/new/gc [enter]
マクロの記録 レジスタを指定する
q[レジスタ]
[操作]
q
マクロの再生
@[レジスタ]
10@aと打てばaレジスタの内容を10回繰り返す。
[code]
#例 5文字削除するマクロ
qa5xq
#マクロの実行
@a
[/code]
マクロの編集
以下のコマンドを打つ
[code gutter=”true”]
:let @[レジスタ]=’
[/code]
Ctrl + r を押した後[レジスタ]を押すと現在登録されている内容が貼り付けられる。編集をしたら最後をシングルクォートで括る
このくらいが使えればたぶん必要なことはできるでしょう。便利なのはマクロですよね。コマンドを組み合わせるとテキストファイルの整形とか割と簡単にできます。awkとかスクリプト言語を使えばもっと柔軟でしょうけどvimのマクロでもある程度できますし、なにより手っ取り早いです。
というか私はマクロが必要なときしかVimを使いません。普段はLeafpadとかnanoとかデフォルトでインストールされている普通のテキストエディターかNotepadqqを使います。Vimは日本語入力をしようとすると操作が増えてしまって切り替えでイライラしますから。アルファベットだけで完結するならいいんでしょうけど。
ともあれ通常のテキストエディターでは手間がかかることもVimならパパッとできることもあるので慣れておくのもいいかもしれません。