Blog
Blog

Blog

viでコピー&ペースト

2015年10月01日

nomura

TOP II

平日のランニングと休日のサイクリングに汗を流しています。
こんにちは、エンジニアの野村です。

前回に引き続き、プログラムや設定ファイルを編集する際に便利なテキストエディター「vi」のコマンドを忘備録を兼ねて残しておこうと思います。

今回は編集の役に立つコピー&ペーストを覚えてしまいましょう。

行のコピー

まずは一行単位でのコピーです。コピーしたい行にカーソルを移動しyyでコピーとなります。なんで y なの?と不思議に思うかもしれませんが、yyank の頭文字で、ひっぱってくるの意味があります。vi では yank & put が コピー&ペーストなんですね。

単語のコピー

次に単語のコピーです。コピーしたい単語の上にカーソルを移動させてからywでコピーできます。

複数行のコピー

関数などの複製に役立つ複数行のコピーはShift+vVISUAL LINE モードにした後で下j、上kで範囲範囲を調整し、yでコピーします。

選択範囲のコピー

文章の一部をコピーする場合はvVISUAL モードにした後で左h、右lで選択範囲を調整し、yでコピーします。

応用でダブルクォーテーションなどで囲まれた文字列を選択したい場合は、vVISUAL モードにした後iで選択し、yでコピーします。

インデントしている文章など矩形をコピーする場合はCtrl+vVISUAL BLOCK モードにした後で左h、下j、上k、右lで選択範囲を調整し、yでコピーします。

 
前回に覚えたカーソル移動も使用しますので、難易度は少し高めですね。
ちなみに VISUAL モードからコマンドモードに戻るにはEscでキャンセルします。

ペースト(貼り付け)

次にペーストですが、小文字と大文字で少しだけ動作が異なります。
小文字のpはカーソルの後ろにコピーした内容をペーストします。大文字のShift+pはカーソルの前にコピーした内容をペーストします。

 
前回よりもキーの組み合わせが多いので難易度が上がってしまいましたが、頻繁に使用する操作ですので、頑張って覚えましょう。