48624cf94a
The "us" keyboard layout contains a mapping for keycode 86 (which seems not to correspond to any physical key on many US keyboards) to the ASCII character '<'. This mapping causes conflicts with the mapping for keycode 51, which also maps (with shift) to '<'. Change the keyboard mapping generator to choose the lowest keycode for each ASCII character as indicating the relevant mapping to use, on the basis that a lower keycode roughly indicates a "more normal" key. On a German keyboard, which has keys for both keycode 51 and keycode 86 present, this causes '<' to be remapped to ';', which is a closer match to typical user expectations. Reported-by: Sven Dreyer <sven@dreyer-net.de> Signed-off-by: Michael Brown <mcb30@ipxe.org>
33 lines
832 B
C
33 lines
832 B
C
/** @file
|
|
*
|
|
* "al" keyboard mapping
|
|
*
|
|
* This file is automatically generated; do not edit
|
|
*
|
|
*/
|
|
|
|
FILE_LICENCE ( PUBLIC_DOMAIN );
|
|
|
|
#include <ipxe/keymap.h>
|
|
|
|
/** "al" keyboard mapping */
|
|
struct key_mapping al_mapping[] __keymap = {
|
|
{ 0x19, 0x1a }, /* Ctrl-Y => Ctrl-Z */
|
|
{ 0x1a, 0x19 }, /* Ctrl-Z => Ctrl-Y */
|
|
{ 0x22, 0x7b }, /* '"' => '{' */
|
|
{ 0x27, 0x5b }, /* '\'' => '[' */
|
|
{ 0x3c, 0x3b }, /* '<' => ';' */
|
|
{ 0x3e, 0x3a }, /* '>' => ':' */
|
|
{ 0x40, 0x22 }, /* '@' => '"' */
|
|
{ 0x59, 0x5a }, /* 'Y' => 'Z' */
|
|
{ 0x5a, 0x59 }, /* 'Z' => 'Y' */
|
|
{ 0x5c, 0x5d }, /* '\\' => ']' */
|
|
{ 0x5d, 0x40 }, /* ']' => '@' */
|
|
{ 0x60, 0x5c }, /* '`' => '\\' */
|
|
{ 0x79, 0x7a }, /* 'y' => 'z' */
|
|
{ 0x7a, 0x79 }, /* 'z' => 'y' */
|
|
{ 0x7c, 0x7d }, /* '|' => '}' */
|
|
{ 0x7d, 0x27 }, /* '}' => '\'' */
|
|
{ 0x7e, 0x7c }, /* '~' => '|' */
|
|
};
|