Vimでクリップボードにコピー&ペースト
Vimでファイルを編集している時のコピー方法としては、
v
またはV
で選択範囲して、y
でコピー。
ペーストはp
です。
しかし、GUIで他の場所からマウスで選択して、クリップボードにコピーし、
vimにペーストをした時にペースト出来ないことがあります。
確実にVimの内容をクリップボードにコピーし、 またクリップボードの内容を確実にVimにペーストする方法を書きます。
Vimのテキストをクリップボードにコピー
選択範囲をクリップボードにコピー
v
もしくはV
を使用し、コピーする範囲を選択します。- 選択した状態で、
:w !pbcopy
と入力しEnterを押して下さい。
これでクリップボードにコピーされました。
ファイル全体をクリップボードにコピー
:%w !pbcopy
と入力し、Enterを押して下さい。
これでファイル全体がクリップボードにコピーされました。
Vimにクリップボードの内容をペーストする
- カーソルを使い、他のエディタもしくはWebなどから普通にコピーします。
- Vimで対象のファイルを開きます。
- ペーストしたいところまでいき、
:r !pbpaste
と入力します。
もしくは
v
かV
を入力し、ビジュアルモードにします。:!pbpaste
を入力し、Enterを押して下さい。
他のサイトにも色々なやり方が書いてありますが、vimでヤンクして、他でクリップボードにコピーしてなどを繰り返しているとコピペが出来ないことがありました。
今回紹介した方法はいつでもコピペができるので、困ったときは試してみてください。
追記
もう一つのコピー&ペーストの方法があります。
- GUIで他の場所からマウスで選択して、クリップボードにコピー
- Vim上で
:a!
を入力し、enter - Vim上で、
command + c
(Macの場合) - ペースト内容が表示されるので、キーボードの
esc
を押し、テキストを反映
こちらのやり方のほうが、単純かつ簡単でよいかもしれません。 最近はこちらの方法でコピペを私はしています。