При использовании vim или менее на экране gnu выход из vim или менее оставляет затяжной отпечаток

В моей новой системе Ubuntu я запускаю сеанс экрана и редактирую файл в vim или просматриваю его в меньшем количестве. После того, как я ухожу, экран не перерисовывается, а просто прокручивается вверх, чтобы показать командную строку под всем, что я только что просматривал в vim или меньше.

Как я могу изменить это, чтобы выход из vim вернул меня к экрану, который был до того, как я вызвал vim?


person dan    schedule 02.02.2010    source источник
comment
Мне нравится иметь такой выход. Так много раз я открывал что-то в vim, чтобы быстро проверить, закрывал, а потом удивлялся, что я только что видел. С GNU Screen я просто вхожу в режим копирования C-a [, j/k, чтобы перемещаться и находить его.   -  person Jeffrey Jose    schedule 18.09.2010


Ответы (2)


функция экрана altscreen (альтернативный экран) по умолчанию отключена.

Добавьте это в свой .screenrc:

altscreen on

См.: http://www.gnu.org/software/screen/manual/screen.html#Redisplay

person ZoogieZork    schedule 02.02.2010
comment
Я добавил это в .screenrc, но безрезультатно. Есть ли демон, который нужно перезапустить в первую очередь? - person Jon Weinraub; 11.03.2015

Это вызвано тем, что ваш termcap для экрана неполный. (Кажется, это очень распространенная проблема.) Vim не знает последовательности восстановления экрана, поэтому просто оставляет все как есть.

Вы можете обойти эту проблему, установив параметр термина vim (или переменную среды TERM перед запуском vim) на терминал, который «совместим с экраном», например xterm. например:

TERM=xterm vim

или (в vim):

:set term=xterm

Вы можете установить параметры t_ti и t_te в vim на правильные коды. См. :help xterm-screens в vim для более подробной информации.

person Laurence Gonsalves    schedule 02.02.2010