Вопрос или проблема
Простите меня, если я неправильно использую терминологию. Я пользовался PuTTy много лет для подключения по ssh к различным серверам, а затем использовал neovim для редактирования файлов. Обычно, когда я выхожу из neovim, все, что было видно на экране перед его входом, остается на месте. В Windows Terminal же мне показывается пустой экран.
Во многих отношениях Windows Terminal кажется гораздо лучше, чем PuTTy, но, как бы я ни искал, не могу найти настройку или решение этой проблемы. Много людей клянутся, что WT — отличная альтернатива PuTTy.
Windows Terminal поддерживает альтернативный экран (\e[?1049h
) начиная с версии v1.14.
Ответ или решение
Поддержка альтернативного экрана в Windows Terminal
Проблема, с которой вы столкнулись, действительно важна для пользователей, которые массово используют текстовые редакторы, такие как Neovim. Чтобы объяснить ситуацию подробнее, рассмотрим понятие альтернативного экрана и как поддержка этого функционала реализована в Windows Terminal.
Что такое альтернативный экран?
Альтернативный экран — это специальный режим терминала, который часто используется в текстовых редакторах и улучшенных интерфейсах командной строки. Когда вы переходите в этот режим, предыдущий вывод терминала не очищается, и вы можете вернуться к нему после выхода из редактора. Это поддерживает удобство работы и позволяет вам не терять контекст.
Поддержка альтернативного экрана в Windows Terminal
Как вы уже заметили, начиная с версии v1.14, Windows Terminal получил поддержку альтернативного экрана, что позволяет вам использовать функции текстовых редакторов, как это делалось в PuTTY. Программа использует последовательность управления \e[?1049h
для активации этого режима.
Если ваш терминал не отображает предыдущий вывод, это может быть связано с несколькими факторами:
-
Версия Windows Terminal: Убедитесь, что у вас установлена последняя версия Windows Terminal. Обновления могут содержать исправления и улучшения, которые влияют на работу альтернативного экрана.
-
Конфигурация профиля: Проверьте настройки вашего профиля в Windows Terminal. В разделе конфигурации могут быть опции, которые позволяют или ограничивают использование альтернативного экрана. Убедитесь, что они правильно настроены.
-
Совместимость с Neovim: Не забывайте о том, что некоторые версии Neovim могут вести себя по-разному в зависимости от платформы и терминала. Обновите Neovim до последней версии, чтобы исключить возможность конфликтов.
-
Параметры запуска: Убедитесь, что вы не используете специальные параметры запуска, которые могут принудительно сбрасывать вывод терминала при выходе из Neovim.
Проверка функционала
Чтобы проверить, работает ли альтернативный экран в Windows Terminal, выполните следующие действия:
- Откройте Windows Terminal и запустите команду
echo $TERM
. Вы должны увидетьxterm-256color
. - Запустите Neovim и продемонстрируйте некоторый вывод на экране, затем выйдите из Neovim (используя
:q
или:wq
) и посмотрите, возвращается ли предыдущий вывод.
Заключение
С учетом вышеизложенного, Windows Terminal действительно поддерживает альтернативный экран с версии v1.14, поэтому ваша проблема может быть связана с настройками или несовместимостями. Расчет на использование Windows Terminal вместо PuTTY вполне оправдан, и вам стоит проверить настройки и версии программного обеспечения, чтобы добиться желаемого функционала.
Если у вас возникнут дополнительные вопросы или потребуются уточнения, не стесняйтесь обращаться за помощью.