patch 8.2.0774: t_TI and t_TE are output when using 'visualbell'

Problem:    t_TI and t_TE are output when using 'visualbell'. (Dominique
            Pelle)
Solution:   Do not change the terminal mode for a short sleep.  Do not output
            t_TI and t_TE when switching to/from TMODE_SLEEP. Make tmode an
            enum.
diff --git a/src/term.h b/src/term.h
index b9535ee..dca48d1 100644
--- a/src/term.h
+++ b/src/term.h
@@ -209,7 +209,9 @@
 #define T_SSI	(TERM_STR(KS_SSI))	// save icon text
 #define T_SRI	(TERM_STR(KS_SRI))	// restore icon text
 
-#define TMODE_COOK	0   // terminal mode for external cmds and Ex mode
-#define TMODE_SLEEP	1   // terminal mode for sleeping (cooked but no echo)
-#define TMODE_RAW	2   // terminal mode for Normal and Insert mode
-#define TMODE_UNKNOWN   9   // after executing a shell
+typedef enum {
+    TMODE_COOK,	    // terminal mode for external cmds and Ex mode
+    TMODE_SLEEP,    // terminal mode for sleeping (cooked but no echo)
+    TMODE_RAW,	    // terminal mode for Normal and Insert mode
+    TMODE_UNKNOWN   // after executing a shell
+} tmode_T;