#vi
#vi
Вопрос:
Я попытался найти ответ, но, возможно, я неправильно формулирую вопрос, я не смог его найти.
Итак, в моей собственной среде Linux, когда я выхожу из «vi», содержимое окна редактирования остается в окне командной строки. Я не могу просто прокрутить вверх, чтобы увидеть предыдущие команды, которые я ввел перед вводом «vi». Я был в некоторой среде (как другой пользователь), где после выхода из «vi» команда vi просто отображается как одна обычная командная строка, следующая за всеми предыдущими командами, которые я ввел. Я попытался найти настройку для этого поведения, которая мне понравилась, но не смог. Кто-нибудь, пожалуйста, может мне помочь?
Комментарии:
1. Это странно. У меня никогда не было этой проблемы… Вы можете очистить экран, если хотите, с помощью
CTRL-L
. Это временное исправление.2. Есть настройки
t_ti
иt_te
, но я, к сожалению, вижу только результаты о том, как сделать обратное тому, что вы хотите.
Ответ №1:
Это не vi
параметр как таковой; он находится в записи terminfo, которую вы используете ( $TERM
). Проверьте, что установил для вас другой пользователь $TERM
, и сравните это с тем, что установили вы. Затем либо измените значение вашего термина, либо измените запись терминала, которую вы используете. infocmp
декомпилирует записи терминала; tic
компилирует их. Вы можете создать свой собственный каталог для хранения записи, если вы не можете изменить системный (или пока вы тестируете свои изменения):
mkdir $HOME/terminfo
export TERMINFO=$HOME/terminfo
tic -o $TERMINFO new.terminfo.src
И т.д.
Комментарии:
1. Спасибо! Я только что узнал, что это не env другого пользователя; это был мой собственный. Когда я нахожусь в терминале gnome через VNC, $ TERM автоматически устанавливается равным xterm. Я получаю там желаемое поведение. Когда я нахожусь в сеансе Putty, $ TERM =screen. Означает ли это, что я никак не могу добиться такого же поведения при использовании Putty? Я не думаю, что имеет смысл устанавливать значение $ TERM в качестве экрана в Putty.
2. @May: взгляните на настройки, которые позволяет Putty. Это вполне может включать «какой терминал эмулировать». Если это так, подумайте о том, чтобы настроить его на эмуляцию ‘xterm’; тогда будет установлено значение TERM = xterm, и все будет единообразно. В противном случае вам нужно будет найти и декомпилировать запись terminfo для «screen», а затем изменить ее, включив опцию «очистить экран при выходе» — я забыл, какой код для этого есть.
3. Какова была настройка?