@@ -144,42 +144,42 @@ impl KeyboardLayout for Dvorak104Key {
144144 ) -> DecodedKey {
145145 match keycode {
146146 // ========= Row 2 (the numbers) =========
147- KeyCode :: OemMinus => modifiers. handle_shift ( '[' , '{' ) ,
148- KeyCode :: OemPlus => modifiers. handle_shift ( ']' , '}' ) ,
147+ KeyCode :: OemMinus => modifiers. handle_symbol2 ( '[' , '{' ) ,
148+ KeyCode :: OemPlus => modifiers. handle_symbol2 ( ']' , '}' ) ,
149149 // ========= Row 3 (QWERTY) =========
150- KeyCode :: Q => modifiers. handle_shift ( QUO , '"' ) ,
151- KeyCode :: W => modifiers. handle_shift ( ',' , '<' ) ,
152- KeyCode :: E => modifiers. handle_shift ( '.' , '>' ) ,
153- KeyCode :: R => modifiers. handle_alpha ( 'P' , handle_ctrl) ,
154- KeyCode :: T => modifiers. handle_alpha ( 'Y' , handle_ctrl) ,
155- KeyCode :: Y => modifiers. handle_alpha ( 'F' , handle_ctrl) ,
156- KeyCode :: U => modifiers. handle_alpha ( 'G' , handle_ctrl) ,
157- KeyCode :: I => modifiers. handle_alpha ( 'C' , handle_ctrl) ,
158- KeyCode :: O => modifiers. handle_alpha ( 'R' , handle_ctrl) ,
159- KeyCode :: P => modifiers. handle_alpha ( 'L' , handle_ctrl) ,
160- KeyCode :: Oem4 => modifiers. handle_shift ( '/' , '?' ) ,
161- KeyCode :: Oem6 => modifiers. handle_shift ( '=' , '+' ) ,
150+ KeyCode :: Q => modifiers. handle_symbol2 ( QUO , '"' ) ,
151+ KeyCode :: W => modifiers. handle_symbol2 ( ',' , '<' ) ,
152+ KeyCode :: E => modifiers. handle_symbol2 ( '.' , '>' ) ,
153+ KeyCode :: R => modifiers. handle_ascii_2 ( 'P' , handle_ctrl) ,
154+ KeyCode :: T => modifiers. handle_ascii_2 ( 'Y' , handle_ctrl) ,
155+ KeyCode :: Y => modifiers. handle_ascii_2 ( 'F' , handle_ctrl) ,
156+ KeyCode :: U => modifiers. handle_ascii_2 ( 'G' , handle_ctrl) ,
157+ KeyCode :: I => modifiers. handle_ascii_2 ( 'C' , handle_ctrl) ,
158+ KeyCode :: O => modifiers. handle_ascii_2 ( 'R' , handle_ctrl) ,
159+ KeyCode :: P => modifiers. handle_ascii_2 ( 'L' , handle_ctrl) ,
160+ KeyCode :: Oem4 => modifiers. handle_symbol2 ( '/' , '?' ) ,
161+ KeyCode :: Oem6 => modifiers. handle_symbol2 ( '=' , '+' ) ,
162162 // ========= Row 4 (ASDFG) =========
163- KeyCode :: S => modifiers. handle_alpha ( 'O' , handle_ctrl) ,
164- KeyCode :: D => modifiers. handle_alpha ( 'E' , handle_ctrl) ,
165- KeyCode :: F => modifiers. handle_alpha ( 'U' , handle_ctrl) ,
166- KeyCode :: G => modifiers. handle_alpha ( 'I' , handle_ctrl) ,
167- KeyCode :: H => modifiers. handle_alpha ( 'D' , handle_ctrl) ,
168- KeyCode :: J => modifiers. handle_alpha ( 'H' , handle_ctrl) ,
169- KeyCode :: K => modifiers. handle_alpha ( 'T' , handle_ctrl) ,
170- KeyCode :: L => modifiers. handle_alpha ( 'N' , handle_ctrl) ,
171- KeyCode :: Oem1 => modifiers. handle_alpha ( 'S' , handle_ctrl) ,
172- KeyCode :: Oem3 => modifiers. handle_shift ( '-' , '_' ) ,
163+ KeyCode :: S => modifiers. handle_ascii_2 ( 'O' , handle_ctrl) ,
164+ KeyCode :: D => modifiers. handle_ascii_2 ( 'E' , handle_ctrl) ,
165+ KeyCode :: F => modifiers. handle_ascii_2 ( 'U' , handle_ctrl) ,
166+ KeyCode :: G => modifiers. handle_ascii_2 ( 'I' , handle_ctrl) ,
167+ KeyCode :: H => modifiers. handle_ascii_2 ( 'D' , handle_ctrl) ,
168+ KeyCode :: J => modifiers. handle_ascii_2 ( 'H' , handle_ctrl) ,
169+ KeyCode :: K => modifiers. handle_ascii_2 ( 'T' , handle_ctrl) ,
170+ KeyCode :: L => modifiers. handle_ascii_2 ( 'N' , handle_ctrl) ,
171+ KeyCode :: Oem1 => modifiers. handle_ascii_2 ( 'S' , handle_ctrl) ,
172+ KeyCode :: Oem3 => modifiers. handle_symbol2 ( '-' , '_' ) ,
173173 // ========= Row 5 (ZXCVB) =========
174- KeyCode :: Z => modifiers. handle_shift ( ';' , ':' ) ,
175- KeyCode :: X => modifiers. handle_alpha ( 'Q' , handle_ctrl) ,
176- KeyCode :: C => modifiers. handle_alpha ( 'J' , handle_ctrl) ,
177- KeyCode :: V => modifiers. handle_alpha ( 'K' , handle_ctrl) ,
178- KeyCode :: B => modifiers. handle_alpha ( 'X' , handle_ctrl) ,
179- KeyCode :: N => modifiers. handle_alpha ( 'B' , handle_ctrl) ,
180- KeyCode :: OemComma => modifiers. handle_alpha ( 'W' , handle_ctrl) ,
181- KeyCode :: OemPeriod => modifiers. handle_alpha ( 'V' , handle_ctrl) ,
182- KeyCode :: Oem2 => modifiers. handle_alpha ( 'Z' , handle_ctrl) ,
174+ KeyCode :: Z => modifiers. handle_symbol2 ( ';' , ':' ) ,
175+ KeyCode :: X => modifiers. handle_ascii_2 ( 'Q' , handle_ctrl) ,
176+ KeyCode :: C => modifiers. handle_ascii_2 ( 'J' , handle_ctrl) ,
177+ KeyCode :: V => modifiers. handle_ascii_2 ( 'K' , handle_ctrl) ,
178+ KeyCode :: B => modifiers. handle_ascii_2 ( 'X' , handle_ctrl) ,
179+ KeyCode :: N => modifiers. handle_ascii_2 ( 'B' , handle_ctrl) ,
180+ KeyCode :: OemComma => modifiers. handle_ascii_2 ( 'W' , handle_ctrl) ,
181+ KeyCode :: OemPeriod => modifiers. handle_ascii_2 ( 'V' , handle_ctrl) ,
182+ KeyCode :: Oem2 => modifiers. handle_ascii_2 ( 'Z' , handle_ctrl) ,
183183 // ========= Fallback =========
184184 e => super :: Us104Key . map_keycode ( e, modifiers, handle_ctrl) ,
185185 }
0 commit comments