Я заметил, что у zsh есть много вещей, которые я вижу в emacs. Я могу сделать выбор с помощью Ctrl + пробел и выбора региона. Я могу делать копии, как в Emacs, пока я остаюсь внутри Zsh. В emacs я могу использовать мой системный буфер обмена (ранее с некоторой дополнительной конфигурацией, необходимой, но теперь это работает прямо из коробки в emacs). В zsh я не могу вставить из буфера обмена с помощью Cy, и копирование из zsh в системную панель управления вызывает такую же проблему. Это можно обойти?
10
kill-region
наvi-delete
иyank
сvi-put-after
и т. Д. Аналогичным образом обернитеvi-yank
и другие. (Я не нашел способ сделать это более централизованно)Я хотел интегрировать вырезанный буфер Zsh с буфером обмена X. Я попробовал вышеупомянутый http://stchaz.free.fr/mouse.zsh, но обнаружил, что мне не нравится, когда все мои операции Zsh заполняют буфер обмена. Например, иногда я копировал что-то в браузер, а затем переходил в оболочку, редактировал командную строку и вставлял. Но часто редактирование командной строки - например, удаление слова - изменяет буфер вырезания Zsh. К лучшему или к худшему, у X есть только буфер обмена, а не список уничтожений, поэтому, когда операция редактирования Zsh перезаписывает буфер обмена, то, что я хотел вставить, теряется - я не могу выдернуть (Cy My), как мог делай в Zsh или Emacs.
Вместо этого я создал новые специальные сочетания клавиш для взаимодействия с буфером обмена X через zsh. Оказывается, «^ Xw» и «^ Xy» не используются ни в Emacs, ни в Zsh, поэтому я могу получить согласованный интерфейс, связав их в обоих приложениях. Таким образом, обычные операции редактирования, обрезки буфера и списка уничтожений остаются одни. Если я хочу скопировать что-то в буфер обмена, я устанавливаю регион и выполняю «^ Xw» (или, если я уже убил это, а регион неактивен, я могу просто сделать «^ Xw», чтобы скопировать буфер вырезания). Вставка из буфера обмена выполняется с помощью «^ Xy».
источник
Возможно, вы захотите взглянуть на http://stchaz.free.fr/mouse.zsh, который помимо добавления поддержки мыши также пытается взаимодействовать с буфером обмена X.
источник