Częścią problemu są ustawienia kompilacji, z którymi vim został skompilowany. vim --versionpokazuje te.
W OSX domyślny vim ma -clipboard Ale potrzebujesz+clipboard
Na OSX możesz i najwyraźniej ogólnie powinieneś używać Macvima. Można to zrobić brew cask install macvim , że trzeba +clipboard.
Będziesz miał dwa vima.
~$ ls -l /usr/bin/vim <--- default vim
-rwxr-xr-x 1 root wheel 1745984 15 Jul 2017 /usr/bin/vim
~$ ls -l /usr/local/bin/vim <-- macvim, installed recently via that mentioned brew line.
lrwxr-xr-x 1 apple admin 42 16 May 23:32 /usr/local/bin/vim -> /Applications/MacVim.app/Contents/bin/mvim
~$
Uruchamianie vima uruchomi macvima, ponieważ /usr/local/binpowinno być wcześniej /usr/binna ścieżce, choć możesz to sprawdzić za pomocą which vim.
Uruchamianie vima (aby uruchomić Macvima), jest w porządku, ale możesz chcieć odwzorować vi na macvim, ponieważ w przeciwnym razie uruchomienie vi pozostaje na domyślnym vimie! Możesz przepisać lub usunąć (za pomocą rm) i ponownie utworzyć łącze vi sym za pomocą ln. Aby to zrobić bez błędu „operacja niedozwolona”, musisz (tymczasowo) wyłączyć SIL. Https://apple.stackexchange.com/questions/208478/how-do-i-disable-system-integrity-protection- sip-aka-rootless-on-macos-os-x .
macvim ma, +clipboardjak pokazano przezvim --version
Oto praca ~/.vim/vimrcz tylko wymaganymi liniami.
:set mouse=a
:map <leader>c "+y
:map <leader>v "+p
Domyślny klucz wiodący to ukośnik odwrotny.
Przeczytałem sugestię, że należy użyć klawisza wiodącego .. (z pewnością kontrola ma już wiele używanych kluczy, więc sugerowano, aby nie używać kontroli. Nie wiem, czy dotyczy to również klawisza polecenia, ale w każdym razie).
Dzięki wspomnianemu mapowaniu \czrobi to, "+yco skopiuje z rejestru znanego jako +, do schowka. I\v wklei z rejestru znanego jako +.
To jest kopia / wklej, która działa między oknami.
Może wymagać innego systemu operacyjnego "*niż"+
+clipboardamouse=a, będzie można skopiować / wklej z / do vim bez użycia terminala menu podręczne. Możesz sprawdzić, czyclipboardmożna używaćvim --version.