Podczas uruchamiania XTerm monit zaczyna się od pierwszej linii terminala. Podczas uruchamiania poleceń wiersz przesuwa się w dół, aż osiągnie dno, i od tego momentu pozostaje tam (nawet Shift- Page Downlub mysz może to zmienić). Zamiast tego, aby czas życia terminala był „specjalny”, monit powinien zawsze znajdować się na dole terminala. Pamiętaj, że mam monit wieloliniowy .
Oczywiście, w przeciwnym razie powinien działać jak poprzednio (zmiana rozmiaru, przewijanie, brak zbędnych znaków nowej linii i brak wyjścia w tajemniczy sposób znikający), więc PROMPT_COMMAND='echo;echo;...'
nie ma takiej opcji. Rozwiązanie idealnie nie powinno być specyficzne dla powłoki.
Edit: obecne rozwiązanie , pracując w prostych przypadkach, ma kilka problemów:
- Jest specyficzny dla Bash . Idealne rozwiązanie powinno być przenośne na inne powłoki.
- Nie powiedzie się, jeśli zmodyfikują się inne procesy
PS1
. Jednym z przykładów jest virtualenv, który dodaje(virtualenv)
na początku dniaPS1
, który następnie znika zawsze tuż powyżej krotnie. - Ctrl- lteraz usuwa ostatnią stronę historii.
Czy istnieje sposób na uniknięcie tych problemów, poza rozwidleniem XTerm?
clear
polecenie.