← Vim道場

コピーして貼り付ける

Vimではコピーを「ヤンク」と呼び、y のキーで行います。範囲の決め方は d や c とまったく同じです。貼り付けは p で、行単位でコピーしたか文字単位でコピーしたかによって貼り付く場所が変わります。

レッスン 12 / 17

行単位か文字単位かで貼り付き方が変わる

yydd のように行を単位にコピーしたものは、p で「カーソル行の下に新しい行として」入ります。ywx のように文字を単位にコピーしたものは、「カーソルの1つ後ろに文字として」入ります。

同じ p なのに結果が違うので最初は戸惑いますが、コピーした側が単位を覚えていると考えると筋が通ります。行として取ったものは行として、文字として取ったものは文字として戻ります。

削除もコピーになっている

ddx で消した内容も同じ置き場(レジスタ)に入るので、p で貼り付けられます。つまりVimには「切り取り専用のキー」がなく、削除がそのまま切り取りを兼ねています。

この仕様の困るところは、何かをコピーしたあとに別の場所を dd で消すと、コピーしていた内容が上書きされてしまう点です。これを避けるには番号付きレジスタや名前付きレジスタを使います。

このレッスンで扱うキー

キー動き
yy1行コピー
yw単語1つ分をコピー
pカーソルの後ろに貼り付け
Pカーソルの前に貼り付け

関連記事

レッスン一覧へ戻る