LoginSignup
2

More than 3 years have passed since last update.

vim内のヤンクをクリップボードと連携させるには

Last updated at Posted at 2020-10-08

目的

vimとクリップボードを連携させる。
具体的にはvim内のコマンドのヤンク(y, dなど)によってコピーされる文字列をvimのレジスタではなくOS側のクリップボードに保存するよう設定する。

設定変更かあるいは環境構築か

そもそも今の環境で設定変更だけでリンクが可能かどうか調べる必要がある。不可能なら新しいプログラムなどのインストールが必要になる。terminalを開き、

$ vim --version | grep clipboard

で左上が+clipboardなら設定変更で可能、-clipboardなら不可能

不可能であった場合

もとから可能であったならこの項は飛ばして構わない。
bash
$ sudo brew install vim

で最新のHugeバージョンのvim 1 をインストール
最初と同様にして確認、それでもまだ不可能ならソースコードからビルドすることになる。まずtarファイルをwgetでダウンロードする。ここではバージョンとしてはvim-8.1を扱っているが適宜置き換えるように。

$ wget ftp://ftp.vim.org/pub/vim/unix/vim-8.1.tar.bz2
$ tar xvf vim-8.1.tar.bz2

tarファイルの取得および解凍はどのディレクトリでも可
解凍したらvim81という名前のディレクトリが作られるのでそこに移動

./configure --enable-gui=yes --enable-multibyte --with-features=huge --disable-selinux --prefix=/usr/local --enable-rubyinterp --enable-xim --enable-fontset|grep gui

を実行する。少し長いが1行にまとめるように。最後に

$ make
$ sudo make install

をして完了
一旦ターミナルを閉じて再度確認し、+clipboardになっていたらOK 可能であった場合に進む。

可能であった場合


set clipboard&
set clipboard^=unnamedplus

をvimrcに追加することで実際に使える。vimrcは大抵ホームディレクトリに.vimrcとして存在するが、なければ新規作成すればよい。

まとめ

備忘録として書いたはいいものの、おそらく二度と使わない気がする。
ddを多用する人間なので非常に高頻度でクリップボードが汚染される。
不便で仕方なくて連携させたのに別の不便が増えて嫌な気持ちに...
なんで? なんでだろうね

参考

https://gist.github.com/nkurosawa/e74117241f43e7b4b6f1
https://pocke.hatenablog.com/entry/2014/10/26/145646


  1. Hugeバージョン未満のものだと機能が制限されている。バージョンごとの大きさがそのまま形容詞の意味につながる 

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2