diff --git a/usr.sbin/watch/watch.8 b/usr.sbin/watch/watch.8 index 9632c5a19be5..57d144985180 100644 --- a/usr.sbin/watch/watch.8 +++ b/usr.sbin/watch/watch.8 @@ -55,7 +55,7 @@ Names may be preceded by "/dev/". While running in interactive mode, all user input is discarded except for: .Pp .Bl -tag -width "XXXX" -compact -.It Sy "" +.It Sy "" Exit .Nm watch . .It Sy "" diff --git a/usr.sbin/watch/watch.c b/usr.sbin/watch/watch.c index 620d796189ce..20c93cf8325a 100644 --- a/usr.sbin/watch/watch.c +++ b/usr.sbin/watch/watch.c @@ -88,13 +88,19 @@ void set_tty() { struct sgttyb sgn; + struct tchars tc; + ioctl(std_in, TIOCGETP, &sgo); + ioctl(std_in, TIOCGETC, &tc); /* bcopy(&sgn, &sgo, sizeof(struct sgttyb)); */ sgn = sgo; sgn.sg_flags |= CBREAK; sgn.sg_flags &= ~ECHO; ospeed = sgo.sg_ospeed; + tc.t_intrc = 17; /* ^Q */ + tc.t_quitc = 17; /* ^Q */ ioctl(std_in, TIOCSETP, &sgn); + ioctl(std_in, TIOCSETC, &tc); } void