mirror of
https://github.com/opnsense/src.git
synced 2026-02-18 18:20:26 -05:00
keymaps: add map for some Lenovo laptops found in Brazillian market
Some laptops sold in Brazil have the key "/, ?" in same position where it should be the right control key. Reported by: Andrei Drusian <drusian@gmail.com> Tested by: Andrei Drusian <drusian@gmail.com> MFC After: 1 week (cherry picked from commit 9357c694e8dca627c25b15529e8435b2ab3dd48b)
This commit is contained in:
parent
13d407b635
commit
c4959c18fe
2 changed files with 163 additions and 0 deletions
|
|
@ -83,6 +83,9 @@ br.noacc.kbd:fr:Brésilien (sans accents)
|
|||
br.noacc.kbd:pt:Brasileiro (without accent keys)
|
||||
br.noacc.kbd:es:Brasileño (without accent keys)
|
||||
|
||||
br.lenovo.kbd:en:Brazilian Lenovo Laptop (accent keys, with slash in place of right Ctrl)
|
||||
br.lenovo.kbd:pt:Brasileiro Lenovo Laptop (com acentos, com barra no lugar do Ctrl da direita)
|
||||
|
||||
by.kbd:en:Belarusian
|
||||
by.kbd:da:Hviderussisk
|
||||
by.kbd:de:Weißrussisch
|
||||
|
|
|
|||
160
share/vt/keymaps/br.lenovo.kbd
Normal file
160
share/vt/keymaps/br.lenovo.kbd
Normal file
|
|
@ -0,0 +1,160 @@
|
|||
#
|
||||
# Keymap for Lenovo laptops (Thinkpad, Ideapad, Yoga, Legion)
|
||||
#
|
||||
# Some laptops sold in Brazil have written "/, ?" in same position
|
||||
# where it should be the right control key. The keyboard sends
|
||||
# the incorrect scancode.
|
||||
#
|
||||
# This map should be the same as br.keymap, but with 090 (rctrl)
|
||||
# replaced by 115 scancode content (?, /, 0xb0).
|
||||
#
|
||||
# alt
|
||||
# scan cntrl alt alt cntrl lock
|
||||
# code base shift cntrl shift alt shift cntrl shift state
|
||||
# ------------------------------------------------------------------
|
||||
000 nop nop nop nop nop nop nop nop O
|
||||
001 esc esc esc esc esc esc debug esc O
|
||||
002 '1' '!' nop nop 0xb9 '!' nop nop O
|
||||
003 '2' '@' nul nul 0xb2 '@' nul nul O
|
||||
004 '3' '#' nop nop 0xb3 '#' nop nop O
|
||||
005 '4' '$' nop nop 0xa3 '$' nop nop O
|
||||
006 '5' '%' nop nop 0xa2 '%' nop nop O
|
||||
007 '6' duml rs rs 0xac duml rs rs O
|
||||
008 '7' '&' nop nop '7' '&' nop nop O
|
||||
009 '8' '*' nop nop '8' '*' nop nop O
|
||||
010 '9' '(' nop nop '9' '(' nop nop O
|
||||
011 '0' ')' nop nop '0' ')' nop nop O
|
||||
012 '-' '_' us us '-' '_' us us O
|
||||
013 '=' '+' nop nop 0xa7 '+' nop nop O
|
||||
014 bs bs del del bs bs del del O
|
||||
015 ht btab nop nop ht btab nop nop O
|
||||
016 'q' 'Q' dc1 dc1 '/' 'Q' dc1 dc1 C
|
||||
017 'w' 'W' etb etb '?' 'W' etb etb C
|
||||
018 'e' 'E' enq enq 0x00b0 'E' enq enq C
|
||||
019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C
|
||||
020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C
|
||||
021 'y' 'Y' em em 'y' 'Y' em em C
|
||||
022 'u' 'U' nak nak 'u' 'U' nak nak C
|
||||
023 'i' 'I' ht ht 'i' 'I' ht ht C
|
||||
024 'o' 'O' si si 'o' 'O' si si C
|
||||
025 'p' 'P' dle dle 'p' 'P' dle dle C
|
||||
026 dacu dgra nop nop dacu dgra nop nop O
|
||||
027 '[' '{' esc esc 0xaa '{' esc esc O
|
||||
028 cr cr nl nl cr cr nl nl O
|
||||
029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O
|
||||
030 'a' 'A' soh soh 'a' 'A' soh soh C
|
||||
031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C
|
||||
032 'd' 'D' eot eot 'd' 'D' eot eot C
|
||||
033 'f' 'F' ack ack 'f' 'F' ack ack C
|
||||
034 'g' 'G' bel bel 'g' 'G' bel bel C
|
||||
035 'h' 'H' bs bs 'h' 'H' bs bs C
|
||||
036 'j' 'J' nl nl 'j' 'J' nl nl C
|
||||
037 'k' 'K' vt vt 'k' 'K' vt vt C
|
||||
038 'l' 'L' ff ff 'l' 'L' ff ff C
|
||||
039 0xe7 0xc7 nop nop 0xe7 0xc7 nop nop C
|
||||
040 dtil dcir nop nop dtil dcir nop nop O
|
||||
041 ''' '"' nop nop ''' '"' nop nop O
|
||||
042 lshift lshift lshift lshift lshift lshift lshift lshift O
|
||||
043 ']' '}' gs gs 0xba '}' gs gs O
|
||||
044 'z' 'Z' sub sub 'z' 'Z' sub sub C
|
||||
045 'x' 'X' can can 'x' 'X' can can C
|
||||
046 'c' 'C' etx etx 0x20a2 'C' etx etx C
|
||||
047 'v' 'V' syn syn 'v' 'V' syn syn C
|
||||
048 'b' 'B' stx stx 'b' 'B' stx stx C
|
||||
049 'n' 'N' so so 'n' 'N' so so C
|
||||
050 'm' 'M' cr cr 'm' 'M' cr cr C
|
||||
051 ',' '<' nop nop ',' '<' nop nop O
|
||||
052 '.' '>' nop nop '.' '>' nop nop O
|
||||
053 ';' ':' nop nop ';' ':' nop nop O
|
||||
054 rshift rshift rshift rshift rshift rshift rshift rshift O
|
||||
055 '*' '*' '*' '*' '*' '*' '*' '*' O
|
||||
056 lalt lalt lalt lalt lalt lalt lalt lalt O
|
||||
057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O
|
||||
058 clock clock clock clock clock clock clock clock O
|
||||
059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O
|
||||
060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O
|
||||
061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O
|
||||
062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O
|
||||
063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O
|
||||
064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O
|
||||
065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O
|
||||
066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O
|
||||
067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O
|
||||
068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O
|
||||
069 nlock nlock nlock nlock nlock nlock nlock nlock O
|
||||
070 slock slock slock slock slock slock slock slock O
|
||||
071 fkey49 '7' '7' '7' '7' '7' '7' '7' N
|
||||
072 fkey50 '8' '8' '8' '8' '8' '8' '8' N
|
||||
073 fkey51 '9' '9' '9' '9' '9' '9' '9' N
|
||||
074 fkey52 '-' '-' '-' '-' '-' '-' '-' N
|
||||
075 fkey53 '4' '4' '4' '4' '4' '4' '4' N
|
||||
076 fkey54 '5' '5' '5' '5' '5' '5' '5' N
|
||||
077 fkey55 '6' '6' '6' '6' '6' '6' '6' N
|
||||
078 fkey56 '+' '+' '+' '+' '+' '+' '+' N
|
||||
079 fkey57 '1' '1' '1' '1' '1' '1' '1' N
|
||||
080 fkey58 '2' '2' '2' '2' '2' '2' '2' N
|
||||
081 fkey59 '3' '3' '3' '3' '3' '3' '3' N
|
||||
082 fkey60 '0' '0' '0' '0' '0' '0' '0' N
|
||||
083 del ',' ',' ',' ',' ',' boot boot N
|
||||
084 nop nop nop nop nop nop nop nop O
|
||||
085 nop nop nop nop nop nop nop nop O
|
||||
086 '\' '|' fs fs '\' '|' fs fs O
|
||||
087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O
|
||||
088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O
|
||||
089 cr cr nl nl cr cr nl nl O
|
||||
090 '/' '?' nop nop 0xb0 '?' nop nop O
|
||||
091 '/' '/' '/' '/' '/' '/' '/' '/' N
|
||||
092 nscr pscr debug debug nop nop nop nop O
|
||||
093 ralt ralt ralt ralt ralt ralt ralt ralt O
|
||||
094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O
|
||||
095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O
|
||||
096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O
|
||||
097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O
|
||||
098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O
|
||||
099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O
|
||||
100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O
|
||||
101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O
|
||||
102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O
|
||||
103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O
|
||||
104 slock saver slock saver susp nop susp nop O
|
||||
105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O
|
||||
106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O
|
||||
107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O
|
||||
108 nop nop nop nop nop nop nop nop O
|
||||
109 nop nop nop nop nop nop nop nop O
|
||||
110 nop nop nop nop nop nop nop nop O
|
||||
111 nop nop nop nop nop nop nop nop O
|
||||
112 nop nop nop nop nop nop nop nop O
|
||||
113 nop nop nop nop nop nop nop nop O
|
||||
114 nop nop nop nop nop nop nop nop O
|
||||
115 nop nop nop nop nop nop nop nop O
|
||||
116 nop nop nop nop nop nop nop nop O
|
||||
117 nop nop nop nop nop nop nop nop O
|
||||
118 nop nop nop nop nop nop nop nop O
|
||||
119 nop nop nop nop nop nop nop nop O
|
||||
120 nop nop nop nop nop nop nop nop O
|
||||
121 nop nop nop nop nop nop nop nop O
|
||||
122 nop nop nop nop nop nop nop nop O
|
||||
123 nop nop nop nop nop nop nop nop O
|
||||
124 nop nop nop nop nop nop nop nop O
|
||||
125 nop nop nop nop nop nop nop nop O
|
||||
126 '.' '.' '.' '.' '.' '.' '.' '.' N
|
||||
|
||||
dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 )
|
||||
( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 )
|
||||
( 'u' 0xf9 ) ( 'U' 0xd9 )
|
||||
|
||||
dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 )
|
||||
( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 )
|
||||
( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd )
|
||||
|
||||
dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca )
|
||||
( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 )
|
||||
( 'u' 0xfb ) ( 'U' 0xdb )
|
||||
|
||||
dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 )
|
||||
( 'o' 0xf5 ) ( 'O' 0xd5 )
|
||||
|
||||
duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb )
|
||||
( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 )
|
||||
( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff )
|
||||
Loading…
Reference in a new issue