reset
有它的位置,但清除屏幕。如果您正在运行xterm
或兼容,则使用的最短,最少干扰的方法是
printf '\033[?9l'
XTerm Control Sequences的“ Mouse Tracking”部分中未明确说明,但允许您通过关闭任何可能打开的模式来重置(禁用)鼠标模式。这些被记录为命名常量:xterm
#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
并且9
是最短的。
许多应用程序都打开了鼠标模式。如果退出而不关闭它,则会生成您看到的奇数字符。ncurses应用程序在中关闭鼠标模式endwin
,所有行为良好的curses应用程序调用。其他应用程序可能不使用(n)诅咒,或者可能忘记调用endwin
。
ncurses应用程序通过测试kmous
功能(这是screen
终端说明的一部分)来检查xterm-mouse模式是否可用。自1999年以来,这就是测试该功能的标准方法,因此,应用程序不太可能会意外打开鼠标模式。相反,它表示忘记执行其工作的应用程序。
顺便说一下,screen.xterm
在Debian的ncurses-term
软件包中没有条目(保持它比删除它更有帮助)。这是该软件包中所有与屏幕相关的条目的列表。大多数用于修复screen
各种终端的行为差异:
/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
tmux
也经常看到这一点。在某些时候,终端多路复用器似乎无法正常工作,无法正确解码输入(xterm
这里可能也有话要说)。reset
通常为我解决此问题。