@@ -82,14 +82,14 @@ nav_keys_1 =
8282 ]
8383
8484-- | VT 100 (?) encoding for ins, del, pageup, pagedown, home, end
85−nav_keys_2 :: ClassifyTable
85+nav_keys_2 :: ClassifyTableV1
8686nav_keys_2 =
8787 let k n s = ("\ESC["++show n++"~",(s,[]))
8888 in zipWith k [2::Int,3,5,6,1,4]
8989 [KIns,KDel,KPageUp,KPageDown,KHome,KEnd]
9090
9191-- | VT 100 (?) encoding for ctrl + ins, del, pageup, pagedown, home, end
92−nav_keys_3 :: ClassifyTable
92+nav_keys_3 :: ClassifyTableV1
9393nav_keys_3 =
9494 let k n s = ("\ESC["++show n++";5~",(s,[MCtrl]))
9595 in zipWith k [2::Int,3,5,6,1,4]
@@ -102,7 +102,7 @@ nav_keys_3 =
102102--
103103-- TODO: resolve
104104-- 1. start at ' '. The earlier characters are all ctrl_char_keys
105−simple_chars :: ClassifyTable
105+simple_chars :: ClassifyTableV1
106106simple_chars = [(x:[],(KASCII x,[])) | x <- [' ' .. toEnum 0xC1]]
107107
108108-- | VT 100 (?) encoding for shift plus function keys
@@ -114,7 +114,7 @@ simple_chars = [(x:[],(KASCII x,[])) | x <- [' ' .. toEnum 0xC1]]
114114-- ``meta mode'' on and off, they can be given as smm and rmm."
115115--
116116-- That is more complex than below. I cannot fault the original author for just hard coding a table.
117−function_keys_1 :: ClassifyTable
117+function_keys_1 :: ClassifyTableV1
118118function_keys_1 =
119119 let f ff nrs m = [ ("\ESC["++show n++"~",(KFun (n-(nrs!!0)+ff), m)) | n <- nrs ] in
120120 concat [f 1 [25,26] [MShift], f 3 [28,29] [MShift], f 5 [31..34] [MShift] ]
@@ -128,12 +128,12 @@ function_keys_1 =
128128-- the same as ESC should examine km and current encoding.
129129-- 3. stopped enumeration at '~' instead of '\DEL'. The latter is mapped to KBS by
130130-- special_support_keys.
131−function_keys_2 :: ClassifyTable
131+function_keys_2 :: ClassifyTableV1
132132function_keys_2 = [ ('\ESC':[x],(KASCII x,[MMeta])) | x <- '\t':[' ' .. '~'],
133133 x /= '[']
134134
135135-- | Ctrl+Char
136−ctrl_char_keys :: ClassifyTable
136+ctrl_char_keys :: ClassifyTableV1
137137ctrl_char_keys =
138138 [ ([toEnum x],(KASCII y,[MCtrl]))
139139 | (x,y) <- zip ([0..31]) ('@':['a'..'z']++['['..'_']),
@@ -143,14 +143,14 @@ ctrl_char_keys =
143143-- | Ctrl+Meta+Char
144144--
145145-- TODO: CTRL-i is the same as tab thing
146−ctrl_meta_keys :: ClassifyTable
146+ctrl_meta_keys :: ClassifyTableV1
147147ctrl_meta_keys =
148148 [ ('\ESC':[toEnum x],(KASCII y,[MMeta,MCtrl])) | (x,y) <- zip [0..31] ('@':['a'..'z']++['['..'_']),
149149 y /= 'i'
150150 ]
151151
152152-- | Special support
153−special_support_keys :: ClassifyTable
153+special_support_keys :: ClassifyTableV1
154154special_support_keys =
155155 [ -- special support for ESC
156156 ("\ESC",(KEsc,[])) , ("\ESC\ESC",(KEsc,[MMeta]))
@@ -161,7 +161,7 @@ special_support_keys =
161161 ]
162162
163163-- | classify table for ANSI terminals
164−ansi_classify_table :: [ClassifyTable]
164+ansi_classify_table :: [ClassifyTableV1]
165165ansi_classify_table =
166166 [ nav_keys_0
167167 , nav_keys_1