I spent a lot of time looking for a solution for using my Brasilian ABNT-2
keyboard. I've already sent a new patch to wine-patches in order to correct
keytables and vkey tables. But it remained a small problem: It was NOT generating
the correct dead-key codes. So, I developed a workaround. This patch
has to be applyied to dlls/x11drv/keyboard.c (It was tested with CVS 20021125).
I advice that it wil work only for ABNT-2 keyboards.
----------------------------------------------------------------------------------------------------------------------------------------
--- keyboard.c 2002-11-28 22:33:07.000000000 -0200
+++ keyboard.c 2002-12-16 15:10:07.000000000 -0200
@@ -1759,6 +1794,10 @@
else TRACE("Found keycode %d (0x%2X)\n",e.keycode,e.keycode);
ret = XLookupString(&e, (LPVOID)lpChar, 2, &keysym, NULL);
+
+/* Gambiarra para funcionarem os acentos em teclado ABNT-2 */
+if ((e.keycode==48)||(e.keycode==34)||((e.keycode==15)&&(e.state
& ShiftMask))) ret=0;
+
wine_tsx11_unlock();
if (ret == 0)