Из-за отсутствия безопасности со стандартным сервером vino я переключился на использование x11vnc на моем компьютере с Linux (с Xubuntu 14.04) и SSVNC на стороне Windows.
С vino, вырезать и вставить из windows в Linux и windows, в двух направлениях, было плохо (1), но когда это работало, это работало для каждой программы; Я мог бы использовать vim
реестр "+
без проблем. Я бегу (2)
autocutsel -fork
обычно так, чтобы «средний щелчок» и ctrl-c / v были одинаковыми.
Теперь, когда я использую x11vnc (вызывается с:) x11vnc -forever -repeat -safer -usepw -ssl -autoport 6000
для безопасного, зашифрованного соединения, возникла проблема:
Я могу без проблем копировать в Windows и вставлять в удаленные терминалы Linux, libreoffice и т. Д., В обоих направлениях.
В
vim
, илиgvim
любая попытка вставить с"+p
или"*p
говоритE353: Nothing in register *
Снова в
vim
илиgvim
, наоборот, работает: если я,"+yy
то я могу вставить вещь на стороне Windows.
Как кто-нибудь имеет ключ к решению этой проблемы? Странно то, что паста работает везде, где я проверил, но в vim
...
Package Installed Previous Now State
=======================-===============-===============-===============-=====
vim 2:7.4.052-1ubuntu3 2:7.4.052-1ubuntu3 2:7.4.052-1ubuntu3 install
vim-gnome 2:7.4.052-1ubuntu3 2:7.4.052-1ubuntu3 2:7.4.052-1ubuntu3 install
Примечания:
(1) не могу найти ошибку сейчас --- сообщается. Он перестает работать через некоторое время.
(2) Я пытался с и без. Без изменений.
set clipboard=unnamedplus
в каждом linux, который я использую (2)alias vim='gvim -v'
в моем.bashrc
s (чтобы обойти определенные дистрибутивы, компилирующие vim без поддержки X буфера обмена) (3)set clipboard=unnamed
в окнах. Надеюсь, это поможет.Ответы:
Поскольку я не знаю, какой x11vnc вы используете (у меня есть три разные версии, есть и другие), это руководство для устранения этой конкретной проблемы.
Во-первых, понять буферы обмена. В большинстве случаев их четыре. (Больше возможно, если вы используете инструменты управления буфером обмена.) X11 определяет три буфера обмена: основной, дополнительный и буфер обмена. Secondary редко используется (и почти наверняка это не ваша проблема), поэтому мы его проигнорируем. Приложения, которые используют средний щелчок для вставки (xterm и др.), Обычно используют основной буфер обмена. Приложения, которые выполняют вставку в стиле Windows (нажмите «Редактировать», «Вставить» или «Управление V»), иногда используют только буфер обмена. Некоторые приложения делают оба (Google Chrome вставляет из основного с помощью среднего щелчка и из буфера обмена с элементом управления V). Следующим является буфер обмена VNC (только один) и буфер обмена Windows. (Если вы используете vnc viewer, работающий на X11, все усложняется, но это будет иметь смысл, если подумать об этом. ) буфер обмена VNC отличается тем, что отслеживает различные обновления других буферов обмена, чтобы поддерживать их актуальность. Если вы игнорируете основной буфер обмена, это довольно просто: последний обновленный буфер обмена копируется во все остальные. Проблема в том, что желаемое поведение основного буфера обмена не является четко определенным. Я видел следующие варианты поведения различных реализаций vnc:
Далее идет инструменты. Есть два инструмента, которые я считаю необходимыми для устранения проблем с буфером обмена: текстовый редактор (для этого отлично работает блокнот) и xclip. Просмотрщик буфера обмена Windows хорош, но не обязателен.
Теперь процедура: Из каждого приложения в группе, которую вы устраняете, выберите и скопируйте текст, проверяя состояние всех трех доступных буферов обмена. (Буфер обмена vnc очень трудно просматривать напрямую, и он не очень полезен, поскольку обычно он не хранит данные, а только метаданные.) Ответьте на следующие вопросы: какой буфер обмена использует каждое приложение? в каком порядке они используются?
Надеюсь, этого достаточно, чтобы вы начали.
источник