やりたいこと
- 1回コピーした単語を何回もコピー&ペースト
- 特に単語を別の単語に置き換える時
課題
通常の設定だとve
で単語を選択=>p
でコピーしておいた単語をペースト、という行動を良く行うのだが、もう一度同じ行動を行うと前回p
で上書きされた単語(いらない)がレジスタに残っていて、それがペーストされてしまう。
vimrcの設定
cp
コマンドでカーソル下の単語を、コピーしておいた別単語で上書きする設定。- 使わない8番レジスタに上書きされる前の単語を格納し、直前にコピーしておいた単語をペーストする。
nnoremapcpve"8d"0p
覚書
- nnoremap
- ノーマルモードでのキーマップ割当て(再割当なし)
- nmapだと再割当ありになるが、これは基本使わない(ユーザーの割当を用いて解釈するので間違いのもと)
- レジスタの使い方
"0
から"9
のレジスタがあって、明示的に指定しない場合はコピーされた順番に押し出し格納されていく。- カットの場合は
"0
レジスタは使用されないという情報もあるが、xvim(xcode用のvimプラグイン)ではそうでもなかった。 :reg
でレジスタ一覧を表示できる。- 例えば5番レジスタを指定しての1行コピーは
"5yy
のように行う。