Как скопировать текст из emacs в одном сеансе экрана в emacs в другом сеансе экрана в терминале

Я использую emacs в пределах экрана в SSH для большей части своей работы и хотел бы иметь возможность копировать текст из одного сеанса в другой. В настоящее время я использую мышь для выбора, но это проблематично по трем причинам:

  1. Интервалы часто путаются, особенно вкладки
  2. Мне нужно временно выйти из вертикального разделения экрана, чтобы скопировать (чтобы другая половина тоже не была скопирована)
  3. Я не могу скопировать текст размером более одного вертикального экрана

И, конечно же, это замедляет меня, требуя убрать руки с клавиатуры. Есть ли способ использовать какую-либо команду, похожую на буферы emacs kill-ring, для вставки между сеансами экрана с помощью клавиатуры?


person Max Ghenis    schedule 05.04.2014    source источник


Ответы (1)


Я не использовал экран в течение многих лет, поэтому я не могу дать вам ответ на основе экрана, но есть и другие вещи, которые вы можете попробовать:

  1. Если emacs находится на той же машине, используйте emacs в режиме демона и emacsclient. У вас может быть один и тот же сеанс emacs на нескольких сеансах экрана. Поскольку это один и тот же сеанс emacs, кольцо уничтожения такое же, а вырезание и вставка тривиальны (ваши 3 проблемы решены). Если файлы находятся на разных хостах, просто откройте их из одного и того же сеанса emacs на одном хосте через ssh (emacs может открывать удаленные файлы, используя tramp).

  2. Используйте tmux как замену screen. Это более скриптовый и настраиваемый. Вы можете использовать режим копирования в tmux для копирования и вставки буферов tmux, которые вы можете выбирать с помощью комбинаций клавиш, подобных emacs. Хотя эти буферы могут охватывать более одной «страницы tmux», режим копирования не может прокручивать буфер emacs (он прокручивает буфер tmux). Так что это не решает вашу проблему № 3.

  3. Создайте привязку ключа emacs, чтобы «вставить» область файла во временный файл (write-region), а другую — для чтения из того же файла.

person juanleon    schedule 05.04.2014