@@ -82,14 +82,14 @@ nav_keys_1 =
84-- | VT 100 (?) encoding for ins, del, pageup, pagedown, home, end
84-- | VT 100 (?) encoding for ins, del, pageup, pagedown, home, end
85−nav_keys_2 :: ClassifyTable
85+nav_keys_2 :: ClassifyTableV1
86nav_keys_2 =
86nav_keys_2 =
87 let k n s = ("\ESC["++show n++"~",(s,[]))
87 let k n s = ("\ESC["++show n++"~",(s,[]))
88 in zipWith k [2::Int,3,5,6,1,4]
88 in zipWith k [2::Int,3,5,6,1,4]
89 [KIns,KDel,KPageUp,KPageDown,KHome,KEnd]
89 [KIns,KDel,KPageUp,KPageDown,KHome,KEnd]
91-- | VT 100 (?) encoding for ctrl + ins, del, pageup, pagedown, home, end
91-- | VT 100 (?) encoding for ctrl + ins, del, pageup, pagedown, home, end
92−nav_keys_3 :: ClassifyTable
92+nav_keys_3 :: ClassifyTableV1
93nav_keys_3 =
93nav_keys_3 =
94 let k n s = ("\ESC["++show n++";5~",(s,[MCtrl]))
94 let k n s = ("\ESC["++show n++";5~",(s,[MCtrl]))
95 in zipWith k [2::Int,3,5,6,1,4]
95 in zipWith k [2::Int,3,5,6,1,4]
@@ -102,7 +102,7 @@ nav_keys_3 =
103-- TODO: resolve
103-- TODO: resolve
104-- 1. start at ' '. The earlier characters are all ctrl_char_keys
104-- 1. start at ' '. The earlier characters are all ctrl_char_keys
105−simple_chars :: ClassifyTable
105+simple_chars :: ClassifyTableV1
106simple_chars = [(x:[],(KASCII x,[])) | x <- [' ' .. toEnum 0xC1]]
106simple_chars = [(x:[],(KASCII x,[])) | x <- [' ' .. toEnum 0xC1]]
108-- | VT 100 (?) encoding for shift plus function keys
108-- | VT 100 (?) encoding for shift plus function keys
@@ -114,7 +114,7 @@ simple_chars = [(x:[],(KASCII x,[])) | x <- [' ' .. toEnum 0xC1]]
114-- ``meta mode'' on and off, they can be given as smm and rmm."
114-- ``meta mode'' on and off, they can be given as smm and rmm."
116-- That is more complex than below. I cannot fault the original author for just hard coding a table.
116-- 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
118function_keys_1 =
118function_keys_1 =
119 let f ff nrs m = [ ("\ESC["++show n++"~",(KFun (n-(nrs!!0)+ff), m)) | n <- nrs ] in
119 let f ff nrs m = [ ("\ESC["++show n++"~",(KFun (n-(nrs!!0)+ff), m)) | n <- nrs ] in
120 concat [f 1 [25,26] [MShift], f 3 [28,29] [MShift], f 5 [31..34] [MShift] ]
120 concat [f 1 [25,26] [MShift], f 3 [28,29] [MShift], f 5 [31..34] [MShift] ]
@@ -128,12 +128,12 @@ function_keys_1 =
128-- the same as ESC should examine km and current encoding.
128-- the same as ESC should examine km and current encoding.
129-- 3. stopped enumeration at '~' instead of '\DEL'. The latter is mapped to KBS by
129-- 3. stopped enumeration at '~' instead of '\DEL'. The latter is mapped to KBS by
130-- special_support_keys.
130-- special_support_keys.
131−function_keys_2 :: ClassifyTable
131+function_keys_2 :: ClassifyTableV1
132function_keys_2 = [ ('\ESC':[x],(KASCII x,[MMeta])) | x <- '\t':[' ' .. '~'],
132function_keys_2 = [ ('\ESC':[x],(KASCII x,[MMeta])) | x <- '\t':[' ' .. '~'],
133 x /= '[']
133 x /= '[']
135-- | Ctrl+Char
135-- | Ctrl+Char
136−ctrl_char_keys :: ClassifyTable
136+ctrl_char_keys :: ClassifyTableV1
137ctrl_char_keys =
137ctrl_char_keys =
138 [ ([toEnum x],(KASCII y,[MCtrl]))
138 [ ([toEnum x],(KASCII y,[MCtrl]))
139 | (x,y) <- zip ([0..31]) ('@':['a'..'z']++['['..'_']),
139 | (x,y) <- zip ([0..31]) ('@':['a'..'z']++['['..'_']),
@@ -143,14 +143,14 @@ ctrl_char_keys =
143-- | Ctrl+Meta+Char
143-- | Ctrl+Meta+Char
145-- TODO: CTRL-i is the same as tab thing
145-- TODO: CTRL-i is the same as tab thing
146−ctrl_meta_keys :: ClassifyTable
146+ctrl_meta_keys :: ClassifyTableV1
147ctrl_meta_keys =
147ctrl_meta_keys =
148 [ ('\ESC':[toEnum x],(KASCII y,[MMeta,MCtrl])) | (x,y) <- zip [0..31] ('@':['a'..'z']++['['..'_']),
148 [ ('\ESC':[toEnum x],(KASCII y,[MMeta,MCtrl])) | (x,y) <- zip [0..31] ('@':['a'..'z']++['['..'_']),
152-- | Special support
152-- | Special support
153−special_support_keys :: ClassifyTable
153+special_support_keys :: ClassifyTableV1
154special_support_keys =
154special_support_keys =
155 [ -- special support for ESC
155 [ -- special support for ESC
156 ("\ESC",(KEsc,[])) , ("\ESC\ESC",(KEsc,[MMeta]))
156 ("\ESC",(KEsc,[])) , ("\ESC\ESC",(KEsc,[MMeta]))
@@ -161,7 +161,7 @@ special_support_keys =
163-- | classify table for ANSI terminals
163-- | classify table for ANSI terminals
164−ansi_classify_table :: [ClassifyTable]
164+ansi_classify_table :: [ClassifyTableV1]
165ansi_classify_table =
165ansi_classify_table =
166 [ nav_keys_0
166 [ nav_keys_0
167 , nav_keys_1
167 , nav_keys_1