問題点
- Mac標準で利用できる
/usr/bin/vim
(vi
実行時も、本コマンドが実行される)では、他アプリとクリップボードを連携できない - OS X 10.11 El Capitanから新しくセキュリティ機能が追加され、sudoをつけても
/usr/bin
配下の既存のvi
、vim
コマンドを上書きできない
対処手順
標準vimがクリップボード連携できないことを確認
% /usr/bin/vim --version | grep clipboard-clipboard +iconv +path_extra -toolbar+eval -mouse_dec +startuptime -xterm_clipboard
Homebrewを使ってVimを入れる
brew update brew install vim
インストールしたvimがクリップボード連携できるか確認する
$ /usr/local/Cellar/vim/8.0.0134/bin/vim --version | grep clipboard+clipboard +job +path_extra +user_commands+eval +mouse_dec +statusline -xterm_clipboard
既存のvimを置き換えるための操作
- Macを再起動し、
Command+R
を押してリカバリーモードで起動 - メニューから
ユーティリティ
->ターミナル
を選択し、ターミナルを起動 現在のSystem Integrity Protectionの状態を確認
# csrutil statusSystem Integrity Protection status: enabled.
System Integrity Protectionを無効化
# csrutil disableSuccessufully disabled System Integrity Protection. Please restart the machine for the changes to take effect. # reboot
System Integrity Protectionの状態を確認(reboot後)
% csrutil statusSystem Integrity Protection status: disabled.
- Macを再起動し、
既存のvimを置き換え
sudo mv /usr/bin/vim /usr/bin/old_vim sudo ln /usr/local/Cellar/vim/8.0.0134/bin/vim /usr/bin/
~/.vimrc
に以下の設定を追加setclipboard+=unnamed