vimから外部プログラムにテキストをコピーする方法は?

vimから外部プログラムにテキストをコピーする方法は?

vimからいくつかのテキストをコピーして貼り付けようとしています。私は仕事をします。Vビジュアルモードに入った後ワイ一度私のブロックを選択します。

pがテキストを貼り付けるので、テキストをvimのクリップボードにコピーするようです。ただし、他のプログラム(Chromeなど)では、右クリック - >貼り付けを実行しても正しいテキストは貼り付けられません。正しいクリップボードにテキストをコピーするにはどうすればよいですか?

答え1

vim --version以下は、あなたに能力があることを示す場合にのみ有効です+xterm_clipboard。それ以外の場合は、追加のパッケージをインストールするか、vimを再コンパイルして機能を追加する必要があります。


実際には2つのオプションがあります。

"+y

「一般」クリップボードバッファにコピーします(Ctrl + Vを使用して貼り付けて右クリックして「貼り付け」などを選択できます)。

"*y

X11選択項目にコピー - マウスの中央ボタンをクリックしてこのバッファから貼り付けることができます。

これだけを知っておくと双方向で動作します"*"+したがって、他のアプリケーションでいくつかのテキストを選択した場合は、vimを使用してvimに貼り付けることができ、一部のテキストをコピーした"*p場合(Ctrl-Cなど)、vimを使用してvimに貼り付けることができます"+p

答え2

Shiftキーを押します。キーを押してマウスカーソルでテキストを選択します。
テキストがクリップボードにコピーされます。

これは貼り付けにも当てはまります。~からクリップボードをvimにインポートします。

明確に言えば、これはvim端末で実行されているときに機能します(たとえばxterm

答え3

vim> = 7.3.74を使用している場合は、実際にvimrcに次のものを入れることができます。

set clipboard=unnamedplus

+デフォルトでは、バッファ(システムクリップボード)が自動的に使用されます。その後、コピー(コピー)するには、通常のyコマンドなどを使用します。

しかし、この動作はやや迷惑だと思います。基本バッファに作業するテキストを挿入するなどのコマンドは、インターネット上で1行をdすばやく貼り付けることができないことを意味するためです。dd

答え4

私のvimがクリップボードをサポートしていないことを確認したら:

vim --version | grep clip
-clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      -mouseshape      +startuptime     -xterm_clipboard

vim-gnomeをインストールして再確認しました。

vim --version | grep clipboard
+clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      +mouseshape      +startuptime     +xterm_clipboard

これで、それぞれ「+y」と「+p」を使ってコピーして貼り付けることができます。

関連情報