summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/hci/keymap/keymap_al.c1
-rw-r--r--src/hci/keymap/keymap_cz.c2
-rw-r--r--src/hci/keymap/keymap_de.c1
-rw-r--r--src/hci/keymap/keymap_dk.c1
-rw-r--r--src/hci/keymap/keymap_es.c1
-rw-r--r--src/hci/keymap/keymap_et.c2
-rw-r--r--src/hci/keymap/keymap_fi.c1
-rw-r--r--src/hci/keymap/keymap_fr.c1
-rw-r--r--src/hci/keymap/keymap_it.c1
-rw-r--r--src/hci/keymap/keymap_lt.c1
-rw-r--r--src/hci/keymap/keymap_mt.c1
-rw-r--r--src/hci/keymap/keymap_nl.c2
-rw-r--r--src/hci/keymap/keymap_sg.c1
-rw-r--r--src/hci/keymap/keymap_sr.c1
-rw-r--r--src/hci/keymap/keymap_th.c1
-rw-r--r--src/hci/keymap/keymap_ua.c1
-rw-r--r--src/hci/keymap/keymap_uk.c1
-rw-r--r--src/hci/keymap/keymap_wo.c1
-rwxr-xr-xsrc/util/genkeymap.pl19
19 files changed, 29 insertions, 11 deletions
diff --git a/src/hci/keymap/keymap_al.c b/src/hci/keymap/keymap_al.c
index bb4885935..caf295e8e 100644
--- a/src/hci/keymap/keymap_al.c
+++ b/src/hci/keymap/keymap_al.c
@@ -16,6 +16,7 @@ struct key_mapping al_mapping[] __keymap = {
{ 0x1a, 0x19 }, /* Ctrl-Z => Ctrl-Y */
{ 0x22, 0x7b }, /* '"' => '{' */
{ 0x27, 0x5b }, /* '\'' => '[' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x40, 0x22 }, /* '@' => '"' */
{ 0x59, 0x5a }, /* 'Y' => 'Z' */
diff --git a/src/hci/keymap/keymap_cz.c b/src/hci/keymap/keymap_cz.c
index c20197808..9280f84fd 100644
--- a/src/hci/keymap/keymap_cz.c
+++ b/src/hci/keymap/keymap_cz.c
@@ -16,7 +16,7 @@ struct key_mapping cz_mapping[] __keymap = {
{ 0x2d, 0x3d }, /* '-' => '=' */
{ 0x2f, 0x2d }, /* '/' => '-' */
{ 0x31, 0x2b }, /* '1' => '+' */
- { 0x3c, 0x5c }, /* '<' => '\\' */
+ { 0x3c, 0x2c }, /* '<' => ',' */
{ 0x3e, 0x2e }, /* '>' => '.' */
{ 0x3f, 0x2d }, /* '?' => '-' */
{ 0x5d, 0x29 }, /* ']' => ')' */
diff --git a/src/hci/keymap/keymap_de.c b/src/hci/keymap/keymap_de.c
index 766adf84d..ffcf912f1 100644
--- a/src/hci/keymap/keymap_de.c
+++ b/src/hci/keymap/keymap_de.c
@@ -25,6 +25,7 @@ struct key_mapping de_mapping[] __keymap = {
{ 0x2f, 0x2d }, /* '/' => '-' */
{ 0x3a, 0x7b }, /* ':' => '{' */
{ 0x3b, 0x5b }, /* ';' => '[' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
{ 0x3d, 0x27 }, /* '=' => '\'' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x3f, 0x5f }, /* '?' => '_' */
diff --git a/src/hci/keymap/keymap_dk.c b/src/hci/keymap/keymap_dk.c
index 4f7911560..e409018c8 100644
--- a/src/hci/keymap/keymap_dk.c
+++ b/src/hci/keymap/keymap_dk.c
@@ -19,6 +19,7 @@ struct key_mapping dk_mapping[] __keymap = {
{ 0x2b, 0x60 }, /* '+' => '`' */
{ 0x2d, 0x2b }, /* '-' => '+' */
{ 0x2f, 0x2d }, /* '/' => '-' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x3f, 0x5f }, /* '?' => '_' */
{ 0x40, 0x22 }, /* '@' => '"' */
diff --git a/src/hci/keymap/keymap_es.c b/src/hci/keymap/keymap_es.c
index 0873312f3..c1fe013a9 100644
--- a/src/hci/keymap/keymap_es.c
+++ b/src/hci/keymap/keymap_es.c
@@ -18,6 +18,7 @@ struct key_mapping es_mapping[] __keymap = {
{ 0x2a, 0x28 }, /* '*' => '(' */
{ 0x2d, 0x27 }, /* '-' => '\'' */
{ 0x2f, 0x2d }, /* '/' => '-' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x3f, 0x5f }, /* '?' => '_' */
{ 0x40, 0x22 }, /* '@' => '"' */
diff --git a/src/hci/keymap/keymap_et.c b/src/hci/keymap/keymap_et.c
index 29558cfa0..ad88cecc1 100644
--- a/src/hci/keymap/keymap_et.c
+++ b/src/hci/keymap/keymap_et.c
@@ -18,6 +18,7 @@ struct key_mapping et_mapping[] __keymap = {
{ 0x2a, 0x28 }, /* '*' => '(' */
{ 0x2d, 0x2b }, /* '-' => '+' */
{ 0x2f, 0x2d }, /* '/' => '-' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x3f, 0x5f }, /* '?' => '_' */
{ 0x40, 0x22 }, /* '@' => '"' */
@@ -25,4 +26,5 @@ struct key_mapping et_mapping[] __keymap = {
{ 0x5e, 0x26 }, /* '^' => '&' */
{ 0x5f, 0x3f }, /* '_' => '?' */
{ 0x7c, 0x2a }, /* '|' => '*' */
+ { 0x7f, 0x1b }, /* 0x7f => 0x1b */
};
diff --git a/src/hci/keymap/keymap_fi.c b/src/hci/keymap/keymap_fi.c
index 479437f54..c8f6c3a06 100644
--- a/src/hci/keymap/keymap_fi.c
+++ b/src/hci/keymap/keymap_fi.c
@@ -23,6 +23,7 @@ struct key_mapping fi_mapping[] __keymap = {
{ 0x2f, 0x2d }, /* '/' => '-' */
{ 0x3a, 0x5c }, /* ':' => '\\' */
{ 0x3b, 0x7c }, /* ';' => '|' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
{ 0x3d, 0x27 }, /* '=' => '\'' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x3f, 0x5f }, /* '?' => '_' */
diff --git a/src/hci/keymap/keymap_fr.c b/src/hci/keymap/keymap_fr.c
index 7f007b69d..fd615a456 100644
--- a/src/hci/keymap/keymap_fr.c
+++ b/src/hci/keymap/keymap_fr.c
@@ -42,6 +42,7 @@ struct key_mapping fr_mapping[] __keymap = {
{ 0x39, 0x2f }, /* '9' => '/' */
{ 0x3a, 0x4d }, /* ':' => 'M' */
{ 0x3b, 0x6d }, /* ';' => 'm' */
+ { 0x3c, 0x2e }, /* '<' => '.' */
{ 0x3e, 0x2f }, /* '>' => '/' */
{ 0x3f, 0x5c }, /* '?' => '\\' */
{ 0x40, 0x32 }, /* '@' => '2' */
diff --git a/src/hci/keymap/keymap_it.c b/src/hci/keymap/keymap_it.c
index 3f6b9f87d..5bb05471c 100644
--- a/src/hci/keymap/keymap_it.c
+++ b/src/hci/keymap/keymap_it.c
@@ -19,6 +19,7 @@ struct key_mapping it_mapping[] __keymap = {
{ 0x2b, 0x5e }, /* '+' => '^' */
{ 0x2d, 0x27 }, /* '-' => '\'' */
{ 0x2f, 0x2d }, /* '/' => '-' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x3f, 0x5f }, /* '?' => '_' */
{ 0x40, 0x22 }, /* '@' => '"' */
diff --git a/src/hci/keymap/keymap_lt.c b/src/hci/keymap/keymap_lt.c
index 1a76c371c..3e99d8c6c 100644
--- a/src/hci/keymap/keymap_lt.c
+++ b/src/hci/keymap/keymap_lt.c
@@ -12,5 +12,4 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "lt" keyboard mapping */
struct key_mapping lt_mapping[] __keymap = {
- { 0x7f, 0x08 }, /* 0x7f => Ctrl-H */
};
diff --git a/src/hci/keymap/keymap_mt.c b/src/hci/keymap/keymap_mt.c
index e50e2b8cb..094a6fc60 100644
--- a/src/hci/keymap/keymap_mt.c
+++ b/src/hci/keymap/keymap_mt.c
@@ -17,5 +17,4 @@ struct key_mapping mt_mapping[] __keymap = {
{ 0x40, 0x22 }, /* '@' => '"' */
{ 0x5c, 0x23 }, /* '\\' => '#' */
{ 0x7c, 0x7e }, /* '|' => '~' */
- { 0x7f, 0x08 }, /* 0x7f => Ctrl-H */
};
diff --git a/src/hci/keymap/keymap_nl.c b/src/hci/keymap/keymap_nl.c
index b2b7ed2a9..ba051705e 100644
--- a/src/hci/keymap/keymap_nl.c
+++ b/src/hci/keymap/keymap_nl.c
@@ -20,7 +20,7 @@ struct key_mapping nl_mapping[] __keymap = {
{ 0x2d, 0x2f }, /* '-' => '/' */
{ 0x2f, 0x2d }, /* '/' => '-' */
{ 0x3b, 0x2b }, /* ';' => '+' */
- { 0x3c, 0x5d }, /* '<' => ']' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x3f, 0x3d }, /* '?' => '=' */
{ 0x40, 0x22 }, /* '@' => '"' */
diff --git a/src/hci/keymap/keymap_sg.c b/src/hci/keymap/keymap_sg.c
index c7131813f..0b0820929 100644
--- a/src/hci/keymap/keymap_sg.c
+++ b/src/hci/keymap/keymap_sg.c
@@ -24,6 +24,7 @@ struct key_mapping sg_mapping[] __keymap = {
{ 0x2b, 0x60 }, /* '+' => '`' */
{ 0x2d, 0x27 }, /* '-' => '\'' */
{ 0x2f, 0x2d }, /* '/' => '-' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
{ 0x3d, 0x5e }, /* '=' => '^' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x3f, 0x5f }, /* '?' => '_' */
diff --git a/src/hci/keymap/keymap_sr.c b/src/hci/keymap/keymap_sr.c
index 84e752921..0552f4d90 100644
--- a/src/hci/keymap/keymap_sr.c
+++ b/src/hci/keymap/keymap_sr.c
@@ -21,6 +21,7 @@ struct key_mapping sr_mapping[] __keymap = {
{ 0x2b, 0x2a }, /* '+' => '*' */
{ 0x2d, 0x27 }, /* '-' => '\'' */
{ 0x2f, 0x2d }, /* '/' => '-' */
+ { 0x3c, 0x3b }, /* '<' => ';' */
{ 0x3d, 0x2b }, /* '=' => '+' */
{ 0x3e, 0x3a }, /* '>' => ':' */
{ 0x3f, 0x5f }, /* '?' => '_' */
diff --git a/src/hci/keymap/keymap_th.c b/src/hci/keymap/keymap_th.c
index 78e1e2bfa..e8b44d1ed 100644
--- a/src/hci/keymap/keymap_th.c
+++ b/src/hci/keymap/keymap_th.c
@@ -12,5 +12,4 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "th" keyboard mapping */
struct key_mapping th_mapping[] __keymap = {
- { 0x7f, 0x08 }, /* 0x7f => Ctrl-H */
};
diff --git a/src/hci/keymap/keymap_ua.c b/src/hci/keymap/keymap_ua.c
index 6234780be..1106a8b28 100644
--- a/src/hci/keymap/keymap_ua.c
+++ b/src/hci/keymap/keymap_ua.c
@@ -12,5 +12,4 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "ua" keyboard mapping */
struct key_mapping ua_mapping[] __keymap = {
- { 0x7f, 0x08 }, /* 0x7f => Ctrl-H */
};
diff --git a/src/hci/keymap/keymap_uk.c b/src/hci/keymap/keymap_uk.c
index 9fbf30aed..6550d8ee5 100644
--- a/src/hci/keymap/keymap_uk.c
+++ b/src/hci/keymap/keymap_uk.c
@@ -13,7 +13,6 @@ FILE_LICENCE ( PUBLIC_DOMAIN );
/** "uk" keyboard mapping */
struct key_mapping uk_mapping[] __keymap = {
{ 0x22, 0x40 }, /* '"' => '@' */
- { 0x3c, 0x5c }, /* '<' => '\\' */
{ 0x40, 0x22 }, /* '@' => '"' */
{ 0x5c, 0x23 }, /* '\\' => '#' */
{ 0x7c, 0x7e }, /* '|' => '~' */
diff --git a/src/hci/keymap/keymap_wo.c b/src/hci/keymap/keymap_wo.c
index 865904494..b45357612 100644
--- a/src/hci/keymap/keymap_wo.c
+++ b/src/hci/keymap/keymap_wo.c
@@ -36,6 +36,7 @@ struct key_mapping wo_mapping[] __keymap = {
{ 0x38, 0x5f }, /* '8' => '_' */
{ 0x3a, 0x4d }, /* ':' => 'M' */
{ 0x3b, 0x6d }, /* ';' => 'm' */
+ { 0x3c, 0x2e }, /* '<' => '.' */
{ 0x3e, 0x2f }, /* '>' => '/' */
{ 0x40, 0x32 }, /* '@' => '2' */
{ 0x41, 0x51 }, /* 'A' => 'Q' */
diff --git a/src/util/genkeymap.pl b/src/util/genkeymap.pl
index 89f14695d..d556df275 100755
--- a/src/util/genkeymap.pl
+++ b/src/util/genkeymap.pl
@@ -172,15 +172,26 @@ sub translate_keymaps {
or next;
my $to_ascii = keysym_to_ascii ( $to->[$keymap]->[$keycode] )
or next;
- if ( ( $from_ascii != $to_ascii ) && $verbosity > 1 ) {
+ my $new_map = ( ! exists $map->{$from_ascii} );
+ my $update_map =
+ ( $new_map || ( $keycode < $map->{$from_ascii}->{keycode} ) );
+ if ( ( $verbosity > 1 ) &&
+ ( ( $from_ascii != $to_ascii ) ||
+ ( $update_map && ! $new_map ) ) ) {
printf STDERR "In keymap %d: %s => %s%s\n", $keymap,
ascii_to_name ( $from_ascii ), ascii_to_name ( $to_ascii ),
- ( $map->{$from_ascii} ? " (ignored)" : "" );
+ ( $update_map ? ( $new_map ? "" : " (override)" )
+ : " (ignored)" );
+ }
+ if ( $update_map ) {
+ $map->{$from_ascii} = {
+ to_ascii => $to_ascii,
+ keycode => $keycode,
+ };
}
- $map->{$from_ascii} ||= $to_ascii;
}
}
- return $map;
+ return { map { $_ => $map->{$_}->{to_ascii} } keys %$map };
}
# Parse command-line options