Итак, у меня есть эта минимальная программа в NIM, которая просто входит в режим альтернативного экрана, печатает несколько цифр и выходит из режима альтернативного экрана.
import os
echo "\e[?1049h"
echo "\nAlternate screen works but scrolling up is allowed, no keys sent."
for i in 0..4:
echo $i
sleep(1000)
echo "\e[?1049l"
Моя проблема в том, что прокрутка в режиме альтернативного экрана все еще включена в отличие от vim
например. Я проверил свои настройки и попытался снять отметку, чтобы убедиться, что он затем корректно ведет себя с vim
, как и с моей программой:
Так что, похоже, vim
отправляет некоторое сообщение escape-последовательности, которых нет в моей программе, т.е. нужно ли мне что-то отправить, чтобы сообщить терминалу, что я хочу, чтобы он посылал клавиши со стрелками вместо прокрутки экрана? Поскольку отправленные мной escape-последовательности должны (в соответствии с другими ответами на stackoverflow) перевести меня в режим альтернативного экрана (и это в основном так), опция в Ma c OS Terminal, как видно на рисунке, должна вступить в силу, но по какой-то причине она не ' t пока он работает с vim
, что оставляет меня совершенно без понятия о том, какого рода черные маги c здесь происходят.
Любая помощь очень ценится:)
Для справки :
> echo $TERM
xterm-256color