Выделение мышью копии из "vim" и "less" показывают разные результаты

Case1: открыть файл1 в vi. Выделите несколько строк (выбранное копирование включено). Вставить в другое место. Случай 2: запустить команду less file1, В консоли выберите несколько строк. Вставить в другое место.

В случае 2 я вижу, что появились новые строки, в которых отображение строки переходит на новую строку. Итак, если ширина терминала составляет 80 символов, а моя строка - 100 символов, то в новой строке будет отображаться 20 символов. Если я копирую из vim, все 100 символов копируются без переноса строки. Однако, если я скопирую из команды "less", после 80-го символа вводится разрыв строки.

Это портит такие вещи, как путь.

"Меньше" вводит разрыв строки динамически для строк длиннее ширины экрана?

1 ответ

Решение

less не предназначен для обработки событий мыши. Поэтому, когда вы выделяете текст во время его выполнения, выделение будет обрабатываться терминалом, который не имеет никакого смысла для строк, абзацев и т. Д.; текстовый буфер копируется так, как он отображается, вот и все.

Наоборот, если вы используете vim с правильной конфигурацией, события мыши будут обнаружены и обработаны vim сам: терминал изящно пустит vim обращаться с ними, для удобства. Тогда разметка строк будет восстановлена ​​корректно при копировании строк текста.

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