Я решить эту проблему с autocutsel
, который работает с emacs
и остальной моей системы Ubuntu тоже.
autocutsel - keep the X clipboard and the cutbuffer in sync
Я использую следующие команды (выполняются один раз, как правило, вызывается механизмом моего окна менеджера "Автозагрузка", или ~/.xsession
):
autocutsel -fork
autocutsel -fork -selection PRIMARY
Первый экземпляр autocutsel
выполняет следующий :
autocutsel отслеживает изменения в cutbuffer сервера [X11] и в буфере обмена выбор. Когда буфер обмена изменен, он обновляет бубнер. Когда cutbuffer изменен, ему принадлежит выбор буфера обмена. Выбор нужного буфера и буфера обмена всегда синхронизирован.
Однако обычно есть третий буфер, называемый PRIMARY
, что второй экземпляр autocutsel
используется для синхронизации с двумя другими.
Преимущества этого в том, что три основных буфера обмена унифицированы, так что вставка текущего выделения с помощью скопирования/вставки в стиле CUA с помощью CTRL-C и CTRL-V работает вместе.
Главным недостатком этого подхода является то, что любое автоматическое выделение текста (например, двойное нажатие, чтобы выделить слово в emacs или щелчок по значку BlockQuote в поле редактирования StackOverflow) мгновенно уничтожит ваш буфер копирования.Чтобы обойти это, я использую регистратор истории буфера обмена, такой как glipper
, который также удобно записывает все содержимое буфера обмена и позволяет мне извлекать потерянное содержимое буфера обмена в таких обстоятельствах. Это может немного потренироваться и хорошо работать для меня. В качестве альтернативы вы можете поэкспериментировать с опцией -pause
, которая ждет некоторого периода времени, прежде чем принимать выделение, которое может быть достаточно длинным, чтобы отменить выбор или удалить любой выделенный текст. Тем не менее, я не смог получить результаты, которые были достаточно хороши для меня.
Обратите внимание, что это решение не требует специальной конфигурации emacs
, которую я использую с включенным режимом cua-mode.
Он действительно использует буфер обмена с системой, но только выбор мыши (то есть то, что вы можете вставить с помощью среднего щелчка в другом месте). – doublep
Разве это не должно быть на superuser.com? –
Вопросы Vim и Emacs обычно считаются одобренными для SO, поскольку они являются инструментами программиста. См. Различные обсуждения, которые уже произошли об этом по мета. – jamessan