resetma swoje miejsce, ale czyści ekran. Jeśli prowadzisz xtermlub coś kompatybilnego , najkrótszą, najmniej inwazyjną rzeczą będzie
printf '\033[?9l'
Nie jest to wyraźnie określone w sekcji Śledzenie myszy w Sekwencjach kontrolnych XTerm , ale xtermumożliwia zresetowanie (wyłączenie) trybu myszy poprzez wyłączenie dowolnego z możliwych trybów, które mogą być włączone. Są one udokumentowane jako nazwane stałe:
#define SET_X10_MOUSE 9
#define SET_VT200_MOUSE 1000
#define SET_VT200_HIGHLIGHT_MOUSE 1001
#define SET_BTN_EVENT_MOUSE 1002
#define SET_ANY_EVENT_MOUSE 1003
i 9jest najkrótszy.
Tryb myszy jest włączony przez wiele aplikacji. Jeśli ktoś wyjdzie bez jego wyłączenia, powstanie nieparzysta postać, którą zobaczyłeś. Aplikacje ncurses wyłączają tryb myszy, w endwinktórym wszystkie dobrze zachowane klątwy wywołują aplikację. Inne aplikacje mogą nie używać (n) przekleństw lub mogą zapomnieć o połączeniu endwin.
Aplikacje ncurses sprawdzają, czy tryb myszy xterm jest dostępny, testując jego kmouszdolność (która jest częścią screenopisu terminala). Jest to standardowy sposób testowania tej funkcji od 1999 r. , Więc jest mało prawdopodobne, aby aplikacja przypadkowo włączyła tryb myszy. Wskazuje raczej na aplikację, która zapomniała wykonać swoją pracę.
Nawiasem mówiąc, screen.xtermw ncurses-termpakiecie Debiana nie ma wpisu (utrzymanie go jest bardziej pomocne niż usunięcie go). Oto lista wszystkich wpisów związanych z ekranem w tym pakiecie. Większość służy do usuwania rozbieżności w screenzachowaniu różnych terminali:
/usr/share/terminfo/s/screen.konsole
/usr/share/terminfo/s/screen-16color-bce
/usr/share/terminfo/s/screen-16color
/usr/share/terminfo/s/screen3
/usr/share/terminfo/s/screen.mrxvt
/usr/share/terminfo/s/screen-bce.Eterm
/usr/share/terminfo/s/screen-bce.gnome
/usr/share/terminfo/s/screen.xterm-xfree86
/usr/share/terminfo/s/screen-bce.konsole
/usr/share/terminfo/s/screen-bce.mlterm
/usr/share/terminfo/s/screen-256color-s
/usr/share/terminfo/s/screen-bce.mrxvt
/usr/share/terminfo/s/screen-bce.rxvt
/usr/share/terminfo/s/screen.linux
/usr/share/terminfo/s/screen.vte
/usr/share/terminfo/s/screen-bce.xterm-new
/usr/share/terminfo/s/screen.teraterm
/usr/share/terminfo/s/screen-16color-bce-s
/usr/share/terminfo/s/screen.xterm-r6
/usr/share/terminfo/s/screen+fkeys
/usr/share/terminfo/s/screen-256color-bce-s
/usr/share/terminfo/s/screen.mlterm
/usr/share/terminfo/s/screen-16color-s
/usr/share/terminfo/s/screen-bce.linux
/usr/share/terminfo/s/screen.gnome
/usr/share/terminfo/s/screen.rxvt
/usr/share/terminfo/s/screen2
/usr/share/terminfo/s/screen.Eterm
/usr/share/terminfo/s/screen.xterm-new
tmuxOd czasu do czasu też to widzę . W pewnym momencie multipleksery terminali wydają się być bananami i niepoprawnie dekodują dane wejściowe (xtermmoże mieć coś do powiedzenia tutaj).resetzwykle naprawia to dla mnie.