2

В любом случае я могу получить текст от Vim в буфер обмена Windows?

мои сессии обычно через PuTTY, и почти всегда на экране GNU

при использовании:set mouse = vi можно выделить несколько строк, и они появятся в буфере обмена Windows.

но для более длинных текстов выделение всего этого и нажатие на "+ ничего не делает.

2 ответа2

2

Янкирование - это особенность самого Vim, которая по умолчанию работает только для этого процесса. Если вы хотите, чтобы янки использовали буфер обмена, вы должны использовать «* y (текущий выбор) или» +y (настоящий буфер обмена), как описано в разделах 04.7 и 09.3 справки Vim. Для поиска используйте следующие команды в Vim:

:help 04.7
:help 09.3

Однако PuTTY не имеет доступа ни к одному из буфера обмена компьютера, к которому вы подключаетесь.

Быстрый обходной путь - использовать команду cat в файле, а не в сеансе экрана, а затем выбрать текст в PuTTY, который автоматически скопирует его. Делая это вне сеанса экрана, вы можете прокрутить вверх и получить весь текст.

1

Нашел этот патч, который перенаправит вывод на печать (любой текст внутри escape \e''[5i и \e''[4i) в буфер обмена Windows (например, для печати "test" в bash echo -ne '\e''[5itest\e''[4i')

http://ericmason.net/putty/putty-0.60-clip.patch

если я могу найти драйвер принтера для Windows, который отправляет текст в буфер обмена вместо печати, тогда замазку можно использовать без изменений, просто отредактируйте Терминал> Удаленная печать> выберите свой драйвер поддельной печати

тогда мне просто нужен макрос, чтобы повторить escape-коды и содержимое буфера.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .