vimでyankしたテキストをクリップボードに渡す
vimでテキストをコピー(=ヤンク)するときに、デフォルトではシステムの方のクリップボードと連携されない。
なので、vimでヤンクしたものをCtrl+Vで貼り付けようとしても貼り付けられない。
環境
# Ubuntu 18.04 LTS # vim-gtk $ uname -a Linux hoge 4.15.0-43-generic #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux $ cat /etc/os-release | grep VERSION VERSION="18.04.1 LTS (Bionic Beaver)" $ vim --version | grep -e Huge -e Small -e Normal Huge 版 with GTK2 GUI. 機能の一覧 有効(+)/無効(-)
参考にしたサイト
How to make vim paste from (and copy to) system's clipboard?
Linux vimでヤンクした結果をC-vで貼り付けたい(クリップボードの共有)
vimの状態が-clipboard
となっていたらクリップボードに対応していないということなので、+clipboard
にしてやる必要がある
:vim --version | grep clip 続けるにはENTERを押すかコマンドを入力してください [最後の変更が保存されていません] # 非対応 -clipboard +jumplist +persistent_undo +virtualedit -ebcdic -mouseshape +statusline -xterm_clipboard
# clipboardに対応したvimをインストールする $ sudo apt-get install vim-gtk -y
:vim --version | grep clip 続けるにはENTERを押すかコマンドを入力してください [最後の変更が保存されていません] # 対応するようになった +clipboard +jumplist +persistent_undo +virtualedit -ebcdic +mouseshape +statusline +xterm_clipboard
.vimrc
ファイルに以下のように追記をする
set clipboard=unnamedplus
これでvimのヤンクを実行したらクリップボードに貼り付けられるようになる。
めでたし。