My workstation: win98, SuSE 8.2, wine-20030618
My (german) keyboard is accept with win98 : as 101/102 key or Microsoft layout, with SuSE : as PC105 nodeadkeys, with wine : look here
- - -snip -
fixme:keyboard:X11DRV_KEYBOARD_DetectLayout Your keyboard layout was not found! Using closest match instead (German keyboard layout without dead keys) for scancode mapping. Please define your layout in dlls/x11drv/keyboard.c and submit them to us for inclusion into future Wine releases. See the Wine User Guide, chapter "Keyboard" for more information.
- - snip -
All three layouts works, no problems. OK
In this case, I opened ./dlls/x11drv/keyboard.c looking for german keyboards like my keyboard. But I didn't found any. So I wrote a new entry like the following for myself:
- - snip - /*** German PC nodeadkeys keyboard layout (contributed by jl) */ static const WORD main_key_scan_DE_PC_nodeadkeys_qwerty[MAIN_LEN][4] = /* ^ 1 2 3 4 5 6 7 8 9 0 ß ? */ { 0x5e,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x30,0xdf,0xb4, /* q w e r t z u i o p ü + */ 0x71,0x77,0x65,0x72,0x74,0x7a,0x75,0x69,0x6f,0x70,0xfc,0x2b, /* a s d f g h j k l ö ä # */ 0x61,0x73,0x64,0x66,0x67,0x68,0x6a,0x6b,0x6c,0xf6,0xe4,0x23, /* y x c v b n m , . - */ 0x79,0x78,0x63,0x76,0x62,0x6e,0x6d,0x2c,0x2e,0x2d, /* < */ 0x3c /* the 102nd key (actually to the right of l-shift) */ };
/*** German PC nodeadkeys keyboard layout (contributed by jl) */ static const char main_key_DE_PC_nodeadkeys[MAIN_LEN][4] = {
"^°","1!","2\"²","3§³","4$","5%","6&","7/{","8([","9)]","0=}","ß?\\","'`", "qQ@","wW","eE€","rR","tT","zZ","uU","iI","oO","pP","üÜ","+*~", "aA","sS","dD","fF","gG","hH","jJ","kK","lL","öÖ","äÄ","#'", "yY","xX","cC","vV","bB","nN","mMµ",",;",".:","-_", "<>|" /* the 102nd key (actually to the right of l-shift) */ };
/*** German PC nodeadkeys keyboard layout (contributed by jl) */ static const char main_key_DE_PC_nodeadkeys_vnc[MAIN_LEN] [4] = {
"^°","1!","2\"²","3§³","4$","5%","6&","7/{","8([","9)]","0=}","ß?\\","?`","+*~","#'",",;",".:","-_",
"aA","bB","cC","dD","eE€","fF","gG","hH","iI","jJ","kK","lL","mMµ","nN","oO","pP","qQ","rR","sS","tT","uU","vV","wW","xX","yY","zZ","äÄ","öÖ","üÜ", "<>|" /* the 102nd key (actually to the right of l-shift) */ };
/*** German PC nodeadkeys keyboard layout (contributed by jl) */ static const WORD main_key_scan_DE_PC_nodeadkeys_vnc[MAIN_LEN][4] = { 0xb4,0xdf,0xe4,0xfc,0xf6,0x2b,0x2c,0x2d,0x2e,0x5e,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x7a,0x23,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79, 0x3c /* the 102nd key (actually to the right of l-shift) */ };
/*** Layout table. Add your keyboard mappings to this list */ [ . . .] {"German PC nodeadkeys keyboard layout", 28605, &main_key_DE, \\ &main_key_scan_qwerty, &main_key_vkey_qwerty}, - - snip -
All entrys are inspected with my Xmodmap and the utility "xev" and I recompiled it. But wine didn't take it over.
I saw also, the german layout is a "qwertz". But wine only used "qwerty" There are no layouts with qwertz. Is it a Bug ?
If wine only works with keyboard-statements from Windows and no statements from Linux, if they distinguish, that shoud be told.
On the other hand windows only has a keyboard - hid - layout and no driver for other keyboards, user must have it themself.
What I am doing wrong Thank you for helping.
greetings Jens
_______________________________________________ wine-users mailing list wine-users@winehq.com http://www.winehq.com/mailman/listinfo/wine-users