В основном, less
и другие полноэкранные терминальные приложения используют альтернативный режим экрана;иначе известный как режим DEC 1049. terminfo
сохраняет строки, необходимые для входа / выхода из этого режима, в
enter_ca_mode=\E[?1049h
exit_ca_mode=\E[?1049l
. Когда вы входите в режим альтернативного экрана, вы получаете полный контроль над экраном с помощью обычных escape-последовательностей,рисование в совершенно отдельный «буфер» на большинстве терминалов, который не затрагивает обычный буфер (например, может содержать прокрутку bash).Когда вы снова выходите из режима альтернативного экрана, он восстанавливает предыдущее содержимое и состояние курсора.