Использование буфера обмена через SSH в vim

24

У меня есть рабочий стол Ubuntu 11.04 и сервер VPS 11.04.

После замены vimна vim-gtk(мне не нужен GUI) я могу использовать системный буфер обмена vim. Я хотел бы использовать ту же функцию на сервере Ubuntu, но похоже, что она не работает ssh -X.

Есть ли способ, которым я могу включить эту функцию, или мне нужно использовать nanoдля этого?

язь
источник
связанные с хостом Windows: stackoverflow.com/questions/4313262/…
Сиро Сантилли 新疆 改造 中心 法轮功 六四 事件

Ответы:

29

«Буфер обмена» является функцией X11, поэтому вам нужно включить «Пересылку X11» для SSH-соединения в «доверенном» режиме:

$ ssh -Y myserver

(По умолчанию X11 пересылается в «ненадежном» режиме, что является слишком ограничительным.-Y Отключает ограничения.)

Также убедитесь, что на сервере установлена xauthверсия Vim с поддержкой X11 . Вы можете использовать xsel -oи, xsel -o -bчтобы убедиться, что буфер обмена доступен.


Чтобы сделать его постоянным, добавьте следующее в ваш адрес ~/.ssh/config:

Host myserver
    ForwardX11 yes
    ForwardX11Trusted yes
grawity
источник
1
Я использую vim-gtk на сервере, и я вижу, используя "vim --version", что X11 включен. Там нет ничего о Xauth до конца. Это то , что я получаю: $ xsel -o xsel: Невозможно открыть дисплей: (нуль): Успех
язь
1
"sudo apt-get install xauth" добился цели.
язь
Для кого это полезно: у меня это работало, но только с +регистром, а не с *регистром. Ваш пробег может варьироваться.
Уолт Вт
Означает ли это, что вы на самом деле используете Vim на основе X, а не Vim на основе текста из командной строки?
CMCDragonkai
@CMCDragonkai: Нет. Если вы запустите vim, вы все равно получите текстовый Vim, который имеет минимальную поддержку X11 для доступа к буферу обмена и тому подобное.
Гравитация