diff --git a/tools/generate_keymaps.pl b/tools/generate_keymaps.pl index 81ff38cc..9907f596 100644 --- a/tools/generate_keymaps.pl +++ b/tools/generate_keymaps.pl @@ -15,7 +15,7 @@ for my $line (@data) { } my @keys = split(/\s+/, $line); - push @map, join(', ', map{ 'Key_'.lookup($_).'' } @keys); + push @map, join(', ', map{ ''.lookup($_).'' } @keys); } print "#define KEYMAP_$name { /* Generated keymap for $name */ "; @@ -27,23 +27,24 @@ print "},\n"; sub lookup { my %table = ( -'{' => 'LCurlyBracket', -'}' => 'RCurlyBracket', -'['=> 'LSquareBracket', -']'=> 'RSquareBracket', -'|'=> 'Pipe', -'\\' => 'Backslash', - - ';' => 'Semicolon', - ',' => 'Comma', - '.' => 'Period', - '/' => 'Slash', - "'" => 'Quote', - '`' => 'Backtick', - '-' => 'Minus', - '=' => 'Equals'); - - my $x = shift; - return $x unless defined $table{$x}; +'{' => 'Key_LCurlyBracket', +'}' => 'Key_RCurlyBracket', +'['=> 'Key_LSquareBracket', +']'=> 'Key_RSquareBracket', +'|'=> 'Key_Pipe', +'\\' => 'Key_Backslash', + + ';' => 'Key_Semicolon', + ',' => 'Key_Comma', + '.' => 'Key_Period', + '/' => 'Key_Slash', + "'" => 'Key_Quote', + '`' => 'Key_Backtick', + '-' => 'Key_Minus', + '=' => 'Key_Equals'); + + my $x = shift; + return $x if $x =~ /\(.*\)/; + return 'Key_'.$x unless defined $table{$x}; return $table{$x}; }