Added gb keymap
This commit is contained in:
+105
-1
@@ -72,6 +72,111 @@ pub mod us {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub mod gb {
|
||||
static GB: [[char; 2]; 58] = [
|
||||
['\0', '\0'],
|
||||
['\x1B', '\x1B'],
|
||||
['1', '!'],
|
||||
['2', '"'],
|
||||
['3', '£'],
|
||||
['4', '$'],
|
||||
['5', '%'],
|
||||
['6', '^'],
|
||||
['7', '&'],
|
||||
['8', '*'],
|
||||
['9', '('],
|
||||
['0', ')'],
|
||||
['-', '_'],
|
||||
['=', '+'],
|
||||
['\x7F', '\x7F'],
|
||||
['\t', '\t'],
|
||||
['q', 'Q'],
|
||||
['w', 'W'],
|
||||
['e', 'E'],
|
||||
['r', 'R'],
|
||||
['t', 'T'],
|
||||
['y', 'Y'],
|
||||
['u', 'U'],
|
||||
['i', 'I'],
|
||||
['o', 'O'],
|
||||
['p', 'P'],
|
||||
['[', '{'],
|
||||
[']', '}'],
|
||||
['\n', '\n'],
|
||||
['\0', '\0'],
|
||||
['a', 'A'],
|
||||
['s', 'S'],
|
||||
['d', 'D'],
|
||||
['f', 'F'],
|
||||
['g', 'G'],
|
||||
['h', 'H'],
|
||||
['j', 'J'],
|
||||
['k', 'K'],
|
||||
['l', 'L'],
|
||||
[';', ':'],
|
||||
['\'', '@'],
|
||||
['`', '¬'],
|
||||
['\0', '\0'],
|
||||
['#', '~'],
|
||||
['z', 'Z'],
|
||||
['x', 'X'],
|
||||
['c', 'C'],
|
||||
['v', 'V'],
|
||||
['b', 'B'],
|
||||
['n', 'N'],
|
||||
['m', 'M'],
|
||||
[',', '<'],
|
||||
['.', '>'],
|
||||
['/', '?'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
[' ', ' ']
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\0', '\0'],
|
||||
['\\', '|'],
|
||||
];
|
||||
|
||||
pub fn get_char(scancode: u8, shift: bool) -> char {
|
||||
if let Some(c) = GB.get(scancode as usize) {
|
||||
if shift {
|
||||
c[1]
|
||||
} else {
|
||||
c[0]
|
||||
}
|
||||
} else {
|
||||
'\0'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub mod dvorak {
|
||||
static DVORAK: [[char; 2]; 58] = [
|
||||
['\0', '\0'],
|
||||
@@ -296,4 +401,3 @@ pub mod bepo {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -198,6 +198,7 @@ fn daemon(input: File) {
|
||||
Some(k) => match k.to_lowercase().as_ref() {
|
||||
"dvorak" => (keymap::dvorak::get_char),
|
||||
"us" => (keymap::us::get_char),
|
||||
"gb" => (keymap::gb::get_char),
|
||||
"azerty" => (keymap::azerty::get_char),
|
||||
"bepo" => (keymap::bepo::get_char),
|
||||
&_ => (keymap::us::get_char)
|
||||
|
||||
Reference in New Issue
Block a user