# FR-FR keyboard updated by Eric Lassauge # include modifiers map 0x40c # # Top row # twosuperior 0x29 notsign 0x29 altgr ampersand 0x02 1 0x02 shift onesuperior 0x02 altgr exclamdown 0x02 shift altgr eacute 0x03 2 0x03 shift asciitilde 0x03 altgr oneeighth 0x03 shift altgr quotedbl 0x04 3 0x04 shift numbersign 0x04 altgr apostrophe 0x05 4 0x05 shift braceleft 0x05 altgr parenleft 0x06 5 0x06 shift bracketleft 0x06 altgr threeeighths 0x06 shift altgr minus 0x07 6 0x07 shift bar 0x07 altgr fiveeighths 0x07 shift altgr egrave 0x08 7 0x08 shift grave 0x08 altgr seveneighths 0x08 shift altgr underscore 0x09 8 0x09 shift backslash 0x09 altgr trademark 0x09 shift altgr ccedilla 0x0a 9 0x0a shift asciicircum 0x0a altgr plusminus 0x0a shift altgr agrave 0x0b 0 0x0b shift at 0x0b altgr parenright 0x0c degree 0x0c shift bracketright 0x0c altgr questiondown 0x0c shift altgr equal 0x0d plus 0x0d shift braceright 0x0d altgr dead_ogonek 0x0d shift altgr BackSpace 0xe # # AZERTY first row # Tab 0xf localstate ISO_Left_Tab 0xf shift a 0x10 addupper ae 0x10 altgr AE 0x10 shift altgr z 0x11 addupper guillemotleft 0x11 altgr e 0x12 addupper EuroSign 0x12 altgr r 0x13 addupper paragraph 0x13 altgr registered 0x13 shift altgr t 0x14 addupper tslash 0x14 altgr Tslash 0x14 shift altgr y 0x15 addupper leftarrow 0x15 altgr yen 0x15 shift altgr u 0x16 addupper downarrow 0x16 altgr uparrow 0x16 shift altgr i 0x17 addupper rightarrow 0x17 altgr idotless 0x17 shift altgr o 0x18 addupper oslash 0x18 altgr Ooblique 0x18 shift altgr p 0x19 addupper thorn 0x19 altgr THORN 0x19 shift altgr dead_circumflex 0x1a dead_diaeresis 0x1a shift dead_abovering 0x1a shift altgr dollar 0x1b sterling 0x1b shift currency 0x1b altgr dead_macron 0x1b shift altgr # # AZERTY second row # q 0x1e addupper Greek_OMEGA 0x1e shift altgr s 0x1f addupper ssharp 0x1f altgr d 0x20 addupper eth 0x20 altgr ETH 0x20 shift altgr f 0x21 addupper dstroke 0x21 altgr ordfeminine 0x21 shift altgr g 0x22 addupper eng 0x22 altgr ENG 0x22 shift altgr h 0x23 addupper hstroke 0x23 altgr Hstroke 0x23 shift altgr j 0x24 addupper k 0x25 addupper kra 0x25 altgr l 0x26 addupper lstroke 0x26 altgr Lstroke 0x26 shift altgr m 0x27 addupper masculine 0x27 shift altgr ugrave 0x28 percent 0x28 shift dead_caron 0x28 shift altgr asterisk 0x2b mu 0x2b shift dead_grave 0x2b altgr dead_breve 0x2b shift altgr Return 0x1c localstate # # AZERTY third row # less 0x56 greater 0x56 shift w 0x2c addupper x 0x2d addupper guillemotright 0x2d altgr c 0x2e addupper cent 0x2e altgr copyright 0x2e shift altgr v 0x2f addupper leftdoublequotemark 0x2f altgr b 0x30 addupper rightdoublequotemark 0x30 altgr n 0x31 addupper comma 0x32 question 0x32 shift dead_acute 0x32 altgr dead_doubleacute 0x32 shift altgr semicolon 0x33 period 0x33 shift horizconnector 0x33 altgr multiply 0x33 shift altgr colon 0x34 slash 0x34 shift periodcentered 0x34 altgr division 0x34 shift altgr exclam 0x35 section 0x35 shift dead_belowdot 0x35 altgr dead_abovedot 0x35 shift altgr space 0x39 localstate # # Esc and Function keys # Escape 0x1 localstate F1 0x3b localstate F2 0x3c localstate F3 0x3d localstate F4 0x3e localstate F5 0x3f localstate F6 0x40 localstate F7 0x41 localstate F8 0x42 localstate F9 0x43 localstate F10 0x44 localstate F11 0x57 localstate F12 0x58 localstate # Printscreen, Scrollock and Pause # Printscreen really requires four scancodes (0xe0, 0x2a, 0xe0, 0x37), # but (0xe0, 0x37) seems to work. Print 0xb7 localstate Sys_Req 0xb7 localstate Execute 0xb7 localstate Scroll_Lock 0x46 # # Insert - PgDown # Insert 0xd2 localstate Delete 0xd3 localstate Home 0xc7 localstate End 0xcf localstate Page_Up 0xc9 localstate Page_Down 0xd1 localstate # # Arrow keys # Left 0xcb localstate Up 0xc8 localstate Down 0xd0 localstate Right 0xcd localstate # # Numpad # Num_Lock 0x45 KP_Divide 0xb5 KP_Multiply 0x37 KP_Subtract 0x4a KP_Add 0x4e KP_Enter 0x9c KP_Decimal 0x53 numlock KP_Separator 0x53 numlock KP_Delete 0x53 KP_0 0x52 numlock KP_Insert 0x52 KP_1 0x4f numlock KP_End 0x4f KP_2 0x50 numlock KP_Down 0x50 KP_3 0x51 numlock KP_Next 0x51 KP_4 0x4b numlock KP_Left 0x4b KP_5 0x4c numlock KP_Begin 0x4c KP_6 0x4d numlock KP_Right 0x4d KP_7 0x47 numlock KP_Home 0x47 KP_8 0x48 numlock KP_Up 0x48 KP_9 0x49 numlock KP_Prior 0x49 Caps_Lock 0x3a # # Inhibited keys # Multi_key 0x0 inhibit