2行あります。ウィム下記のエディタ
3 àáâ
4 aaa
これら2行に基づいて、次のような結果を得たいと思います。
'à' => 'a',
'á' => 'a',
'â' => 'a',
どんなアイデアがありますか?
答え1
繰り返し操作を実行する必要がある場合は、マクロを記録できます。
たとえば、ここでは
qajxkphi'
Escla' => '
Escla',
Enter Escq
説明する:
qa
: マクロ記録開始a
jxkp
:1行下に移動、文字を消去してコピー、上に移動、印刷hi'
Esc:左に1つを挿入し'
て通常モードに戻ります。la' => ',
Esc:右に移動して現在の文字に追加し、通常' => '
モードに戻ります。la'
EnterEsc :右に追加し',
て改行してから通常モードに戻ります。q
: 録音を停止
マクロを使用して機能していることを確認するには、最初の文字の上に自分自身を置き、を押します@a
。結果:
'à' => 'a',
áâ
aa
あなたは2行目にあります。2@a
マクロを実行して次を取得するには、ダブルクリックします。
'à' => 'a',
'á' => 'a',
'â' => 'a',
答え2
次の3つのmap
pingをファイルに入れて、編集したい~/.exrc
場所vi|vim|gvim
にファイルをロードします。変換したい行の任意の場所にカーソルを移動して残りのQ
操作を実行するには、モードの下のキーを押すだけです。注:文字通りの意味ではありませんが、次のキーの組み合わせを押すとファイルに挿入されます。ESC
vi
recursive
macro
^M
<Ctrl><V> <Ctrl><M>
:map q :s/./&\r/^M
:map v :s/\(.\) \(.\)/'\1' => '\2',/^M
:map Q :/^^M-q+q-dd-P-Jv+Q