Использование буфера обмена X11 в экземпляре Emacs внутри gnome-терминала

Я использую Emacs 24.5.1 из терминала Gnome в Arch Linux. Когда я копирую текст из окна терминала Gnome (из любого другого окна X, например, Firefox), он не доступен в kill-ring Emacs. я пытался (setq x-select-enable-clipboard t) но безрезультатно.

Я также попробовал это решение, которое не сработало.

Примечание: эта функциональность работает, когда Emacs запускается графически; У меня проблема только когда я запускаю Emacs внутри окна терминала.

1 ответ

Разрабатываемая версия Emacs поддерживает так называемые escape-последовательности OSC-52, которые поддерживаются некоторыми терминалами, чтобы позволить приложениям, работающим внутри терминала, получать доступ к буферу обмена.

К сожалению, эта функция OSC-52 может быть (как в настоящее время разработано в xterms) несколько опасной в некоторых ситуациях (например, если вы отображаете, через catв вашем терминале файл, написанный кем-то другим), поэтому в большинстве дистрибутивов эта функция по умолчанию отключена.

Но, по крайней мере, для меня, при тестировании Debian, запуск Emacs-25 внутри xterm -xrm '*.allowWindowOps: true' позвольте мне установить буфер обмена X через C-k как будто Emacs работал в режиме графического интерфейса.

Emacs также поддерживает направление, которое вы хотите (то есть делает C-y в Emacs получить текст из буфера обмена X), вам придется дополнительно добавить getSelection на ваш xterm-extra-capabilities в вашем ~/.emacs,

Другие вопросы по тегам