Vimからxtermクリップボードにテキストをコピーすると、vimを終了するとテキストがクリアされます。
これを防ぐにはどうすればよいですか?
私は最近、.vimrcのこの1行でこの問題を解決しました(ユーティリティxsel
が必要です):
autocmd VimLeave * call system("echo -n $'" . escape(getreg(), "'") . "' | xsel -ib")
現在のレジストリテキストをクリップボードバッファに保存します。
xclip
を使用してこれを行います:
autocmd VimLeave * call system("xclip -o | xclip -selection c")
かなり簡単です。
詳細とオプションについては、 このページ を参照してください。
代わりに、Shiftキーを押しながら選択してみてください。これは(通常)、マウスイベントをVimに送信する代わりに、テキストを直接コピーするようにターミナルエミュレータに指示します。この方法でVimを終了しても、コピーバッファーの内容が破壊されることはなく、別のアプリケーションを中クリックすると、選択したテキストが貼り付けられます。
これはgVimでは役に立ちません。ただし、+レジスタを使用していることに注意してください。つまり、 すべき クリップボードにアクセスしている。クリップボードは、最後に「書き込んだ」アプリケーションの終了時に破棄されません。このレジスタは ない マウスで中クリックして貼り付けました。 control-v(そのホットキーを使用したクリップボードからの貼り付けをサポートするアプリケーションの場合)を使用するか、右クリックして[貼り付け]を選択します。
良い答えがなく、Xを実行しているシステムにアクセスして実験することもできませんが、このトピックについては、Vimリファレンスマニュアルで説明しています。
:help x11-selection
テキストをクリップボードにコピーする方法については述べていませんが、*
レジスタを使用した場合は、代わりに+
レジスタを使用すると役立つ場合があります。