2

Поведение по умолчанию для «less» - очистка экрана после выхода. Это поведение остановилось, когда я начал использовать:

export TERM=xterm

Теперь «меньше» покидает последнюю страницу, которую я просмотрел на экране, и я хочу снова включить стандартное поведение очистки экрана.

Погуглив эту проблему, я обнаружил, что люди используют следующую команду в своем ~/.screenrc:

altscreen on

Я не уверен, что это проблема Mac, но у меня нет этой команды.

Я использую оболочку bash на терминале Mac, и у меня не определена переменная среды $LESS .

3 ответа3

1

Посмотрите на переменную окружения $ LESS и убедитесь, что она не указывает -X. Я специально добавляю это к $ LESS, потому что я не хочу, чтобы экран очищался. Вот фрагмент из справочной страницы:

-X или --no-init Отключает отправку строк инициализации и деинициализации termcap на терминал. Иногда это желательно, если строка деинициализации делает что-то ненужное, например, очистку экрана.

0

Необходимы некоторые пояснения: чем less будет очищаться только экран как часть отображения новой страницы. В этом вопросе описан альтернативный экран, функция xterm, которую поддерживает Terminal.app .

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

less получает информацию о том, как переключиться на / с альтернативного экрана из описания терминала, используя $TERM для поиска этой информации. Сейчас я не вижу этого в OSX (вопрос датируется 2011 годом), но некоторые разработчики не любят эту функцию и удаляют ее из описания терминала (например, FreeBSD).

Вопрос не сказал, что такое $TERM прежде чем изменить его на xterm . При этом использовалось другое описание терминала, где функция не была удалена.

0

Этот ответ является продолжением ответа @KeithB.

проверьте параметры LESS с помощью echo $LESS . Если у него есть опция -X , удалите его.

LESS="options"; export LESS

В опции включены опции, отличные от -X . Больше информации, проверьте man-страницу .

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