From f7693aee1f89055fbfd762c33c51aee279660a59 Mon Sep 17 00:00:00 2001 From: florian Date: Mon, 2 Feb 2009 17:56:42 +0000 Subject: =?UTF-8?q?=C3=84nderungen:=20Modifier-=C3=84nderung,=20Mod4Lock?= =?UTF-8?q?=20nun=20selektiv,=20kbdneo2.ahk=20schaltet=20nun=20auch=20den?= =?UTF-8?q?=20Treiber-Mod4Lock=201.)=20Modifier=20=E2=80=9Eneuverdrahtet?= =?UTF-8?q?=E2=80=9C.=20Erm=C3=B6glicht=20selektiven=20Mod4Lock=20und=20gl?= =?UTF-8?q?eichzeitig=20st=C3=B6rt=20damit=20die=3F\127=3F\127=3F\127=3F\1?= =?UTF-8?q?27=20aktuelle=20Logitech=20SetPoint-Version=20nicht=20mehr=20(U?= =?UTF-8?q?pdate=20f=C3=BCr=20Logitech-Tastatur-Besitzer,=20die=20Setpoint?= =?UTF-8?q?=20nutzen=20dringend=20empfohlen!)=202.)=20aktueller=20Mod4Lock?= =?UTF-8?q?=20spart=20Funtktionstasten,=20tote=20Tasten=20und=20Numblock?= =?UTF-8?q?=20aus=203.)=20kbdneo2.ahk=20schaltet=20jetzt=20den=20Treiber-M?= =?UTF-8?q?od4Lock?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Das Vöglein, das die Luft durchschifft, ist froh, dass es kein Schiffchen trifft. Denn träfe es ein Schiffchen, wüsst' es: Ich bin ein Fischchen. git-svn-id: https://svn.neo-layout.org@1628 b9310e46-f624-0410-8ea1-cfbb3a30dc96 --- windows/kbdneo2/Quelldateien/1st_README.txt | 16 +- windows/kbdneo2/Quelldateien/kbdneo2.c | 1051 +++++++++++--------- windows/kbdneo2/Quelldateien/kbdneo2.h | 74 +- windows/kbdneo2/Treiber/32bit_Windows/kbdneo2.dll | Bin 20480 -> 20992 bytes windows/kbdneo2/Treiber/64bit_Windows/kbdneo2.dll | Bin 21504 -> 22016 bytes .../Treiber/AHK_f\303\274r_kbdneo2/kbdneo2.ahk" | 17 +- 6 files changed, 610 insertions(+), 548 deletions(-) diff --git a/windows/kbdneo2/Quelldateien/1st_README.txt b/windows/kbdneo2/Quelldateien/1st_README.txt index d664ab2..a74f554 100644 --- a/windows/kbdneo2/Quelldateien/1st_README.txt +++ b/windows/kbdneo2/Quelldateien/1st_README.txt @@ -5,15 +5,19 @@ 3. Alle Quelldateien in diesen Ordner kopieren. 4. Die Datei 'dirs' im Ordner \src\input\layout\all_kbds\ des WinnDDKs um die Zeile 'kbdneo2' erweitern. Die Datei könnte nun so aussehen: -> DIRS= \ -> kbdfr \ -> kbdgr \ -> kbdneo2 + +***Anfang der Datei*** + DIRS= \ + kbdfr \ + kbdgr \ + kbdneo2 +***Ende der Datei*** Bei der neusten Version des WDKs ist dies anscheinend nicht mehr nötig 5. Mit einem normalem Texteditor können nun die Quelldateien bearbeitet werden. Kommentare befinden sich in den jeweiligen Dateien. 6. Zum kompilieren des Treibers die 'Checked Build Environment' starten und zum Ordner mit den Quelldateien wechseln und den Befehl »Build« ausführen. -> cd src\input\layout\all_kbds\kbdneo2 -> build + +cd src\input\layout\all_kbds\kbdneo2 +build diff --git a/windows/kbdneo2/Quelldateien/kbdneo2.c b/windows/kbdneo2/Quelldateien/kbdneo2.c index 8bb1e75..e16ee79 100644 --- a/windows/kbdneo2/Quelldateien/kbdneo2.c +++ b/windows/kbdneo2/Quelldateien/kbdneo2.c @@ -135,8 +135,8 @@ static ALLOC_SECTION_LDATA VK_TO_BIT aVkToBits[] = { { VK_SHIFT , KBDSHIFT }, { VK_CONTROL , KBDCTRL }, { VK_MENU , KBDALT }, - { VK_KANA , KBDKANA }, //Mod 3 - { VK_OEM_102 , 16 }, //Mod 4 + { VK_OEM_8 , KBDKANA }, //Mod 4 + { VK_OEM_102 , 16 }, //Mod 3 { 0 , 0 } }; @@ -154,13 +154,13 @@ static ALLOC_SECTION_LDATA MODIFIERS CharModifiers = { // Modifier NEO // Ebene 0 - nix // Ebene 1 - Shift - // Ebene 2 - Kana = Mod 3 - // Ebene 3 - Neu = Mod 4 - // Ebene 4 - Kana+Shift - // Ebene 5 - Neu+Kana + // Ebene 2 - Neu = Mod 3 + // Ebene 3 - Kana = Mod 4 + // Ebene 4 - Neu+Shift + // Ebene 5 - Kasa+Neu // // Modification# // Keys Pressed - // ============= //=========== + // =============== //======================================= // Neu Kana Alt Strg Shift 0, // 0 0 0 0 0 1, // 0 0 0 0 1 @@ -170,16 +170,16 @@ static ALLOC_SECTION_LDATA MODIFIERS CharModifiers = { SHFT_INVALID, // 0 0 1 0 1 SHFT_INVALID, // 0 0 1 1 0 SHFT_INVALID, // 0 0 1 1 1 - 2, // 0 1 0 0 0 - 4, // 0 1 0 0 1 + 3, // 0 1 0 0 0 + 8, // 0 1 0 0 1 SHFT_INVALID, // 0 1 0 1 0 SHFT_INVALID, // 0 1 0 1 1 SHFT_INVALID, // 0 1 1 0 0 SHFT_INVALID, // 0 1 1 0 1 SHFT_INVALID, // 0 1 1 1 0 SHFT_INVALID, // 0 1 1 1 1 - 3, // 1 0 0 0 0 - 8, // 1 0 0 0 1 + 2, // 1 0 0 0 0 + 4, // 1 0 0 0 1 SHFT_INVALID, // 1 0 0 1 0 SHFT_INVALID, // 1 0 0 1 1 SHFT_INVALID, // 1 0 1 0 0 @@ -222,101 +222,89 @@ static ALLOC_SECTION_LDATA MODIFIERS CharModifiers = { static ALLOC_SECTION_LDATA VK_TO_WCHARS6 aVkToWch6[] = { // Reihenfolge der Ebene wie oben ( ALLOC_SECTION_LDATA MODIFIERS CharModifiers = { &aVkToBits[0],)… festgelegt -// | CapsLock | | SHIFT | KANA | NEU | KANA+Shift| NEU+Kana | -// |===========|===========|===========|===========|===========|===========|===========| -{VK_OEM_1 ,0 ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD }, //Tote Taste 1 -{0xff ,0 ,'^' ,'~' ,0x02da ,0x02c7 ,0x02d8 ,0x00af }, -{'1' ,0 ,'1' ,0x00b0 ,0x00B9 ,0x2022 ,0x2081 ,0x00ac }, -{'3' ,0 ,'3' ,0x2113 ,0x00b3 ,0x2116 ,0x2083 ,0x2227 }, -{'4' ,0 ,'4' ,0x00bb ,0x203A ,WCH_NONE ,0x2020 ,0x22a5 }, //WCH_NONE sollte »Bild auf« sein (AHK?) -{'5' ,0 ,'5' ,0x00ab ,0x2039 ,0x00b7 ,0x2640 ,0x2221 }, -{'7' ,0 ,'7' ,0x0024 ,0x00a5 ,0x00a4 ,0x03ba ,0x2192 }, -{'8' ,0 ,'8' ,0x201E ,0x201A ,WCH_NONE ,0x27E8 ,0x221e }, -{'9' ,0 ,'9' ,0x201C ,0x2018 ,'/' ,0x27E9 ,0x220b }, -{'0' ,0 ,'0' ,0x201D ,0x2019 ,'*' ,0x2080 ,0x2205 }, -{VK_OEM_MINUS ,0 ,'-' ,0x2014 ,WCH_DEAD ,'-' ,0x0011 ,0x00ad }, -{VK_OEM_2 ,0 ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD }, //Tote Taste 2 -{0xff ,0 ,0x0060 ,WCH_NONE ,0x00a8 ,0x030f ,0x1ffe ,WCH_NONE }, -{VK_TAB ,0 ,'\t' ,'\t' ,WCH_DEAD ,'\t' ,'\t' ,'\t' }, -{0xff ,0 ,WCH_NONE ,WCH_NONE ,0x266b ,WCH_NONE ,WCH_NONE ,WCH_NONE }, -{'X' ,CAPLOK ,'x' ,'X' ,WCH_NONE ,WCH_NONE ,0x03BE ,0x039E }, -{'V' ,CAPLOK ,'v' ,'V' ,'_' ,'\b' ,WCH_NONE ,0x2259 }, -{'L' ,CAPLOK ,'l' ,'L' ,'[' ,WCH_NONE ,0x03BB ,0x039b }, //WCH_NONE sollte »Pfeil hoch« sein (AHK?) -{'C' ,CAPLOK ,'c' ,'C' ,']' ,0x007f ,0x03C7 ,0x2102 }, //0x007f sollte »Entfernen« sein (AHK?) -{'W' ,CAPLOK ,'w' ,'W' ,0x005E ,WCH_NONE ,0x03c9 ,0x03a9 }, //WCH_NONE sollte »Einfügen« sein (AHK?) -{'K' ,CAPLOK ,'k' ,'K' ,'!' ,0x00A1 ,0x03f0 ,0x221a }, -{'H' ,CAPLOK ,'h' ,'H' ,'<' ,'7' ,0x03C8 ,0x03A8 }, -{'G' ,CAPLOK ,'g' ,'G' ,'>' ,'8' ,0x03B3 ,0x0393 }, -{'F' ,CAPLOK ,'f' ,'F' ,'=' ,'9' ,0x03C6 ,0x03A6 }, -{'Q' ,CAPLOK ,'q' ,'Q' ,'&' ,'+' ,0x03d5 ,0x211a }, -{'U' ,CAPLOK ,'u' ,'U' ,'\\' ,WCH_NONE ,WCH_NONE ,0x222e }, //WCH_NONE sollte »Pos 1« sein (AHK?) -{'I' ,CAPLOK ,'i' ,'I' ,'/' ,WCH_NONE ,0x03B9 ,0x222b }, //WCH_NONE sollte »Pfeil links« sein (AHK?) -{'A' ,CAPLOK ,'a' ,'A' ,'{' ,WCH_NONE ,0x03B1 ,0x2200 }, //WCH_NONE sollte »Pfeil runter« sein (AHK?) -{'E' ,CAPLOK ,'e' ,'E' ,'}' ,WCH_NONE ,0x03B5 ,0x2203 }, //WCH_NONE sollte »Pfeil rechts« sein (AHK?) -{'O' ,CAPLOK ,'o' ,'O' ,'*' ,WCH_NONE ,0x03bf ,0x2208 }, //WCH_NONE sollte »Ende« sein (AHK?) -{'S' ,CAPLOK ,'s' ,'S' ,'?' ,0x00BF ,0x03C3 ,0x03A3 }, -{'N' ,CAPLOK ,'n' ,'N' ,'(' ,'4' ,0x03BD ,0x2115 }, -{'R' ,CAPLOK ,'r' ,'R' ,')' ,'5' ,0x03f1 ,0x211d }, -{'T' ,CAPLOK ,'t' ,'T' ,'-' ,'6' ,0x03C4 ,0x2202 }, -{'D' ,CAPLOK ,'d' ,'D' ,':' ,',' ,0x03B4 ,0x0394 }, -{VK_OEM_5 ,CAPLOK ,0x00FC ,0x00DC ,'#' ,0x001b ,WCH_NONE ,0x211c }, -{VK_OEM_7 ,CAPLOK ,0x00E4 ,0x00C4 ,'|' ,WCH_NONE ,0x03B7 ,0x2135 }, //WCH_NONE sollte »Bild runter« sein (AHK?) -{'P' ,CAPLOK ,'p' ,'P' ,'~' ,'\r' ,0x03C0 ,0x03A0 }, -{'Z' ,CAPLOK ,'z' ,'Z' ,'`' ,WCH_NONE ,0x03B6 ,0x2124 }, -{'B' ,CAPLOK ,'b' ,'B' ,'+' ,':' ,0x03B2 ,0x21d0 }, -{'M' ,CAPLOK ,'m' ,'M' ,'%' ,'1' ,0x00b5 ,0x21d4 }, -{VK_OEM_COMMA ,0 ,',' ,0x2013 ,'\"' ,'2' ,0x03c1 ,0x21d2 }, -{VK_OEM_PERIOD ,0 ,'.' ,0x2026 ,'\'' ,'3' ,0x03d1 ,0x0398 }, -{0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 } +// | CapsLock | | SHIFT | NEU | KANA | NEU+Shift | KANA+NEU | +// |===================|===========|===========|===========|===========|===========|===========| +{VK_OEM_1 ,0 ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD }, //Tote Taste 1 +{0xff ,0 ,'^' ,'~' ,0x02da ,0x02c7 ,0x02d8 ,0x00af }, +{'1' ,KANALOK ,'1' ,0x00b0 ,0x00B9 ,0x2022 ,0x2081 ,0x00ac }, +{'3' ,KANALOK ,'3' ,0x2113 ,0x00b3 ,0x2116 ,0x2083 ,0x2227 }, +{'4' ,KANALOK ,'4' ,0x00bb ,0x203A ,WCH_NONE ,0x2020 ,0x22a5 }, //WCH_NONE sollte »Bild auf« sein (AHK?) +{'5' ,KANALOK ,'5' ,0x00ab ,0x2039 ,0x00b7 ,0x2640 ,0x2221 }, +{'7' ,KANALOK ,'7' ,0x0024 ,0x00a5 ,0x00a4 ,0x03ba ,0x2192 }, +{'8' ,KANALOK ,'8' ,0x201E ,0x201A ,WCH_NONE ,0x27E8 ,0x221e }, +{'9' ,KANALOK ,'9' ,0x201C ,0x2018 ,'/' ,0x27E9 ,0x220b }, +{'0' ,KANALOK ,'0' ,0x201D ,0x2019 ,'*' ,0x2080 ,0x2205 }, +{VK_OEM_MINUS ,KANALOK ,'-' ,0x2014 ,WCH_DEAD ,'-' ,0x0011 ,0x00ad }, +{VK_OEM_2 ,0 ,WCH_DEAD ,WCH_NONE ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_NONE }, //Tote Taste 2 +{0xff ,0 ,0x0060 ,WCH_NONE ,0x00a8 ,0x030f ,0x1ffe ,WCH_NONE }, +{VK_TAB ,0 ,'\t' ,'\t' ,WCH_DEAD ,'\t' ,'\t' ,'\t' }, +{0xff ,0 ,WCH_NONE ,WCH_NONE ,0x266b ,WCH_NONE ,WCH_NONE ,WCH_NONE }, +{'X' ,CAPLOK | KANALOK ,'x' ,'X' ,WCH_NONE ,WCH_NONE ,0x03BE ,0x039E }, +{'V' ,CAPLOK | KANALOK ,'v' ,'V' ,'_' ,'\b' ,WCH_NONE ,0x2259 }, +{'L' ,CAPLOK | KANALOK ,'l' ,'L' ,'[' ,WCH_NONE ,0x03BB ,0x039b }, //WCH_NONE sollte »Pfeil hoch« sein (AHK?) +{'C' ,CAPLOK | KANALOK ,'c' ,'C' ,']' ,0x007f ,0x03C7 ,0x2102 }, //0x007f sollte »Entfernen« sein (AHK?) +{'W' ,CAPLOK | KANALOK ,'w' ,'W' ,0x005E ,WCH_NONE ,0x03c9 ,0x03a9 }, //WCH_NONE sollte »Einfügen« sein (AHK?) +{'K' ,CAPLOK | KANALOK ,'k' ,'K' ,'!' ,0x00A1 ,0x03f0 ,0x221a }, +{'H' ,CAPLOK | KANALOK ,'h' ,'H' ,'<' ,'7' ,0x03C8 ,0x03A8 }, +{'G' ,CAPLOK | KANALOK ,'g' ,'G' ,'>' ,'8' ,0x03B3 ,0x0393 }, +{'F' ,CAPLOK | KANALOK ,'f' ,'F' ,'=' ,'9' ,0x03C6 ,0x03A6 }, +{'Q' ,CAPLOK | KANALOK ,'q' ,'Q' ,'&' ,'+' ,0x03d5 ,0x211a }, +{'U' ,CAPLOK | KANALOK ,'u' ,'U' ,'\\' ,WCH_NONE ,WCH_NONE ,0x222e }, //WCH_NONE sollte »Pos 1« sein (AHK?) +{'I' ,CAPLOK | KANALOK ,'i' ,'I' ,'/' ,WCH_NONE ,0x03B9 ,0x222b }, //WCH_NONE sollte »Pfeil links« sein (AHK?) +{'A' ,CAPLOK | KANALOK ,'a' ,'A' ,'{' ,WCH_NONE ,0x03B1 ,0x2200 }, //WCH_NONE sollte »Pfeil runter« sein (AHK?) +{'E' ,CAPLOK | KANALOK ,'e' ,'E' ,'}' ,WCH_NONE ,0x03B5 ,0x2203 }, //WCH_NONE sollte »Pfeil rechts« sein (AHK?) +{'O' ,CAPLOK | KANALOK ,'o' ,'O' ,'*' ,WCH_NONE ,0x03bf ,0x2208 }, //WCH_NONE sollte »Ende« sein (AHK?) +{'S' ,CAPLOK | KANALOK ,'s' ,'S' ,'?' ,0x00BF ,0x03C3 ,0x03A3 }, +{'N' ,CAPLOK | KANALOK ,'n' ,'N' ,'(' ,'4' ,0x03BD ,0x2115 }, +{'R' ,CAPLOK | KANALOK ,'r' ,'R' ,')' ,'5' ,0x03f1 ,0x211d }, +{'T' ,CAPLOK | KANALOK ,'t' ,'T' ,'-' ,'6' ,0x03C4 ,0x2202 }, +{'D' ,CAPLOK | KANALOK ,'d' ,'D' ,':' ,',' ,0x03B4 ,0x0394 }, +{VK_OEM_5 ,CAPLOK | KANALOK ,0x00FC ,0x00DC ,'#' ,0x001b ,WCH_NONE ,0x211c }, +{VK_OEM_7 ,CAPLOK | KANALOK ,0x00E4 ,0x00C4 ,'|' ,WCH_NONE ,0x03B7 ,0x2135 }, //WCH_NONE sollte »Bild runter« sein (AHK?) +{'P' ,CAPLOK | KANALOK ,'p' ,'P' ,'~' ,'\r' ,0x03C0 ,0x03A0 }, +{'Z' ,CAPLOK | KANALOK ,'z' ,'Z' ,'`' ,WCH_NONE ,0x03B6 ,0x2124 }, +{'B' ,CAPLOK | KANALOK ,'b' ,'B' ,'+' ,':' ,0x03B2 ,0x21d0 }, +{'M' ,CAPLOK | KANALOK ,'m' ,'M' ,'%' ,'1' ,0x00b5 ,0x21d4 }, +{VK_OEM_COMMA ,KANALOK ,',' ,0x2013 ,'\"' ,'2' ,0x03c1 ,0x21d2 }, +{VK_OEM_PERIOD ,KANALOK ,'.' ,0x2026 ,'\'' ,'3' ,0x03d1 ,0x0398 }, +{0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 } }; static ALLOC_SECTION_LDATA VK_TO_WCHARS7 aVkToWch7[] = { -// | CapsLock | | SHIFT | KANA | NEU | KANA+Shift| NEU+Kana | Control | -// |===========|===========|===========|===========|===========|===========|===========|===========| -{VK_OEM_3 ,CAPLOK ,0x00df ,0x1E9E ,0x017F ,WCH_NONE ,0x03C2 ,0x2218 ,0x2218 }, -{VK_OEM_4 ,0 ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,0x001d }, //Tote Taste 3 -{0xff ,0 ,0x00b4 ,0x00b8 ,'-' ,0x02dd ,0x1fbf ,0x02d9 ,WCH_NONE }, -{'Y' ,CAPLOK ,'y' ,'Y' ,'@' ,'.' ,0x03C5 ,0x2207 ,0x001c }, -{VK_OEM_6 ,CAPLOK ,0x00F6 ,0x00D6 ,'$' ,'\t' ,WCH_NONE ,0x2111 ,WCH_NONE }, -{VK_SPACE ,0 ,' ' ,' ' ,' ' ,'0' ,0x00a0 ,0x202f ,' ' }, -{VK_BACK ,0 ,'\b' ,'\b' ,'\b' ,'\b' ,'\b' ,'\b' ,0x007f }, -{VK_ESCAPE ,0 ,0x001b ,0x001b ,0x001b ,0x001b ,0x001b ,0x001b ,0x001b }, -{VK_RETURN ,0 ,'\r' ,'\r' ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,'\n' }, -{VK_CANCEL ,0 ,0x0003 ,0x0003 ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x0003 }, -{0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 } -}; +// | CapsLock | | SHIFT | NEU | KANA | NEU+Shift | KANA+NEU | Control | +// |===================|===========|===========|===========|===========|===========|===========|===========| +{VK_OEM_3 ,CAPLOK | KANALOK ,0x00df ,0x1E9E ,0x017F ,WCH_NONE ,0x03C2 ,0x2218 ,0x2218 }, +{VK_OEM_4 ,0 ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,0x001d }, //Tote Taste 3 +{0xff ,0 ,0x00b4 ,0x00b8 ,'-' ,0x02dd ,0x1fbf ,0x02d9 ,WCH_NONE }, +{'Y' ,CAPLOK | KANALOK ,'y' ,'Y' ,'@' ,'.' ,0x03C5 ,0x2207 ,0x001c }, +{VK_OEM_6 ,CAPLOK | KANALOK ,0x00F6 ,0x00D6 ,'$' ,'\t' ,WCH_NONE ,0x2111 ,WCH_NONE }, +{VK_SPACE ,KANALOK ,' ' ,' ' ,' ' ,'0' ,0x00a0 ,0x202f ,' ' }, +{VK_BACK ,0 ,'\b' ,'\b' ,'\b' ,'\b' ,'\b' ,'\b' ,0x007f }, +{VK_ESCAPE ,0 ,0x001b ,0x001b ,0x001b ,0x001b ,0x001b ,0x001b ,0x001b }, +{VK_RETURN ,0 ,'\r' ,'\r' ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,'\n' }, +{VK_CANCEL ,0 ,0x0003 ,0x0003 ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x0003 }, +{0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 } +}; static ALLOC_SECTION_LDATA VK_TO_WCHARS8 aVkToWch8[] = { -// | CapsLock | | SHIFT | KANA | NEU | KANA+Shift| NEU+Kana | Control | Control+Shift| -// |===========|===========|===========|===========|===========|===========|===========|===========|==============| -{'2' ,0 ,'2' ,0x00a7 ,0x00b2 ,0x2023 ,0x2082 ,0x2228 ,WCH_NONE ,0x0000 }, -{'6' ,0 ,'6' ,0x20ac ,0x00A2 ,0x00a3 ,0x2642 ,0x2225 ,WCH_NONE ,0x001e }, -{'J' ,CAPLOK ,'j' ,'J' ,';' ,';' ,0x03b8 ,0x221d ,WCH_NONE ,0x001f }, -{0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 } +// | CapsLock | | SHIFT | NEU | KANA | NEU+Shift | KANA+NEU | Control | Control+Shift| +// |===================|===========|===========|===========|===========|===========|===========|===========|==============| +{'2' ,KANALOK ,'2' ,0x00a7 ,0x00b2 ,0x2023 ,0x2082 ,0x2228 ,WCH_NONE ,0x0000 }, +{'6' ,KANALOK ,'6' ,0x20ac ,0x00A2 ,0x00a3 ,0x2642 ,0x2225 ,WCH_NONE ,0x001e }, +{'J' ,CAPLOK | KANALOK ,'j' ,'J' ,';' ,';' ,0x03b8 ,0x221d ,WCH_NONE ,0x001f }, +{0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 } }; // Put this last so that VkKeyScan interprets number characters // as coming from the main section of the kbd before considering // the numpad. -/* -Entgegen der neo20.txt vorgesehene Belegung 1,2,3,5 ist hier 1,2,3,4 umgesetzt: - -== Vier Ebenen – Ziffernblock == - +-----+ -¦ 1 4 ¦ -¦ 2 3 ¦ - +-----+ -1. Ebene (kein Mod) (Ziffern) -2. Ebene (Umschalt) (Steuertasten) -3. Ebene (Mod3) (Pfeile u.ä.) -4. Ebene (Mod4) (anderes Zeug) -*/ +// Entgegen der neo20.txt vorgesehene Belegung 1,2,3,4,5,6 ist hier 1,4,3,2 umgesetzt: static ALLOC_SECTION_LDATA VK_TO_WCHARS4 aVkToWch4[] = { -// | | SHIFT | KANA | NEU | -// | |===============|================|===============| +// | CapsLock | | SHIFT | KANA | NEU | +// |===========|===========|===========|===========|===========| {VK_ADD ,0 ,'+' ,'+' ,0x00b1 ,0x2213 }, {VK_DIVIDE ,0 ,'/' ,'/' ,0x00f7 ,0x2215 }, {VK_MULTIPLY ,0 ,'*' ,'*' ,0x00d7 ,0x2219 }, @@ -391,7 +379,7 @@ static ALLOC_SECTION_LDATA VSC_LPWSTR aKeyNames[] = { 0x51, L"3 (ZEHNERTASTATUR)", 0x52, L"0 (ZEHNERTASTATUR)", 0x53, L"KOMMA (ZEHNERTASTATUR)", - 0x56, L"MOD 4 LINKS", + 0x56, L"MOD 4 LINKS", 0x57, L"F11", 0x58, L"F12", 0 , NULL @@ -1697,416 +1685,485 @@ DEADTRANS( 0x06C1 , 0x0027 , 0 ,0x0000 ), //Deadkeys -// Anfang der Taste links neben der 1 - DEADTRANS( L' ' , L'^' , L'^' , 0x0000), //Zirkumflex - DEADTRANS( L'^' , L'^' , 0x0302 , 0x0000), //2x für Combining - DEADTRANS( L'1' , L'^' , 0x00b9 , 0x0000), - DEADTRANS( L'2' , L'^' , 0x00b2 , 0x0000), - DEADTRANS( L'3' , L'^' , 0x00b3 , 0x0000), - DEADTRANS( L'4' , L'^' , 0x2074 , 0x0000), - DEADTRANS( L'5' , L'^' , 0x2075 , 0x0000), - DEADTRANS( L'6' , L'^' , 0x2076 , 0x0000), - DEADTRANS( L'7' , L'^' , 0x2077 , 0x0000), - DEADTRANS( L'8' , L'^' , 0x2078 , 0x0000), - DEADTRANS( L'9' , L'^' , 0x2079 , 0x0000), - DEADTRANS( L'0' , L'^' , 0x2070 , 0x0000), - DEADTRANS( L'+' , L'^' , 0x207a , 0x0000), - DEADTRANS( L'-' , L'^' , 0x207b , 0x0000), - DEADTRANS( L'=' , L'^' , 0x207c , 0x0000), - DEADTRANS( L'(' , L'^' , 0x207d , 0x0000), - DEADTRANS( L')' , L'^' , 0x207e , 0x0000), - DEADTRANS( L'n' , L'^' , 0x207f , 0x0000), - DEADTRANS( L'A' , L'^' , 0x00c2 , 0x0000), - DEADTRANS( L'a' , L'^' , 0x00e2 , 0x0000), - DEADTRANS( L'C' , L'^' , 0x0108 , 0x0000), - DEADTRANS( L'c' , L'^' , 0x0109 , 0x0000), - DEADTRANS( L'E' , L'^' , 0x00ca , 0x0000), - DEADTRANS( L'e' , L'^' , 0x00ea , 0x0000), - DEADTRANS( L'G' , L'^' , 0x011c , 0x0000), - DEADTRANS( L'g' , L'^' , 0x011d , 0x0000), - DEADTRANS( L'H' , L'^' , 0x0124 , 0x0000), - DEADTRANS( L'h' , L'^' , 0x0125 , 0x0000), - DEADTRANS( L'I' , L'^' , 0x00ce , 0x0000), - DEADTRANS( L'i' , L'^' , 0x00ee , 0x0000), - DEADTRANS( L'J' , L'^' , 0x0134 , 0x0000), - DEADTRANS( L'j' , L'^' , 0x0135 , 0x0000), - DEADTRANS( L'O' , L'^' , 0x00d4 , 0x0000), - DEADTRANS( L'o' , L'^' , 0x00f4 , 0x0000), - DEADTRANS( L'S' , L'^' , 0x015c , 0x0000), - DEADTRANS( L's' , L'^' , 0x015d , 0x0000), - DEADTRANS( L'U' , L'^' , 0x00db , 0x0000), - DEADTRANS( L'u' , L'^' , 0x00fb , 0x0000), - DEADTRANS( L'W' , L'^' , 0x0174 , 0x0000), - DEADTRANS( L'w' , L'^' , 0x0175 , 0x0000), - DEADTRANS( L'Y' , L'^' , 0x0176 , 0x0000), - DEADTRANS( L'y' , L'^' , 0x0177 , 0x0000), - DEADTRANS( L'Z' , L'^' , 0x1e90 , 0x0000), - DEADTRANS( L'z' , L'^' , 0x1e91 , 0x0000), - - DEADTRANS( L' ' , 0x02c7 , 0x02c7 , 0x0000), //Caron - DEADTRANS( 0x02c7 , 0x02c7 , 0x030C , 0x0000), //2x für Combining - DEADTRANS( L'C' , 0x02c7 , 0x010c , 0x0000), - DEADTRANS( L'c' , 0x02c7 , 0x010d , 0x0000), - DEADTRANS( L'D' , 0x02c7 , 0x010e , 0x0000), - DEADTRANS( L'd' , 0x02c7 , 0x010f , 0x0000), - DEADTRANS( L'E' , 0x02c7 , 0x011a , 0x0000), - DEADTRANS( L'e' , 0x02c7 , 0x011b , 0x0000), - DEADTRANS( L'L' , 0x02c7 , 0x013d , 0x0000), - DEADTRANS( L'l' , 0x02c7 , 0x013e , 0x0000), - DEADTRANS( L'N' , 0x02c7 , 0x0147 , 0x0000), - DEADTRANS( L'n' , 0x02c7 , 0x0148 , 0x0000), - DEADTRANS( L'R' , 0x02c7 , 0x0158 , 0x0000), - DEADTRANS( L'r' , 0x02c7 , 0x0159 , 0x0000), - DEADTRANS( L'S' , 0x02c7 , 0x0160 , 0x0000), - DEADTRANS( L's' , 0x02c7 , 0x0161 , 0x0000), - DEADTRANS( L'T' , 0x02c7 , 0x0164 , 0x0000), - DEADTRANS( L't' , 0x02c7 , 0x0165 , 0x0000), - DEADTRANS( L'Z' , 0x02c7 , 0x017d , 0x0000), - DEADTRANS( L'z' , 0x02c7 , 0x017e , 0x0000), - DEADTRANS( L'A' , 0x02c7 , 0x01cd , 0x0000), - DEADTRANS( L'a' , 0x02c7 , 0x01ce , 0x0000), - DEADTRANS( L'I' , 0x02c7 , 0x01cf , 0x0000), - DEADTRANS( L'i' , 0x02c7 , 0x01d0 , 0x0000), - DEADTRANS( L'O' , 0x02c7 , 0x01d1 , 0x0000), - DEADTRANS( L'o' , 0x02c7 , 0x01d2 , 0x0000), - DEADTRANS( L'U' , 0x02c7 , 0x01d3 , 0x0000), - DEADTRANS( L'u' , 0x02c7 , 0x01d4 , 0x0000), - DEADTRANS( L'G' , 0x02c7 , 0x01e6 , 0x0000), - DEADTRANS( L'g' , 0x02c7 , 0x01e7 , 0x0000), - DEADTRANS( L'K' , 0x02c7 , 0x01e8 , 0x0000), - DEADTRANS( L'k' , 0x02c7 , 0x01e9 , 0x0000), - DEADTRANS( L'j' , 0x02c7 , 0x01f0 , 0x0000), - DEADTRANS( L'H' , 0x02c7 , 0x021e , 0x0000), - DEADTRANS( L'h' , 0x02c7 , 0x021f , 0x0000), - DEADTRANS( 0x00fc , 0x02c7 , 0x01da , 0x0000), - DEADTRANS( 0x00dc , 0x02c7 , 0x01d9 , 0x0000), - - DEADTRANS( L' ' , 0x02D8 , 0x02D8 , 0x0000), //Brevis - DEADTRANS( 0x02D8 , 0x02D8 , 0x0306 , 0x0000), //2x für Combining - DEADTRANS( L'A' , 0x02D8 , 0x0102 , 0x0000), - DEADTRANS( L'a' , 0x02D8 , 0x0103 , 0x0000), - DEADTRANS( L'E' , 0x02D8 , 0x0114 , 0x0000), - DEADTRANS( L'e' , 0x02D8 , 0x0115 , 0x0000), - DEADTRANS( L'G' , 0x02D8 , 0x011e , 0x0000), - DEADTRANS( L'g' , 0x02D8 , 0x011f , 0x0000), - DEADTRANS( L'I' , 0x02D8 , 0x012c , 0x0000), - DEADTRANS( L'i' , 0x02D8 , 0x012d , 0x0000), - DEADTRANS( L'O' , 0x02D8 , 0x014e , 0x0000), - DEADTRANS( L'o' , 0x02D8 , 0x014f , 0x0000), - DEADTRANS( L'U' , 0x02D8 , 0x016c , 0x0000), - DEADTRANS( L'u' , 0x02D8 , 0x016d , 0x0000), - - DEADTRANS( L' ' , 0x00b7 , 0x00b7 , 0x0000), //Dot Middle - DEADTRANS( 0x00b7 , 0x00b7 , 0x00b7 , 0x0000), //kein Combining vorhanden - DEADTRANS( L'L' , 0x00b7 , 0x013F , 0x0000), - DEADTRANS( L'l' , 0x00b7 , 0x0140 , 0x0000), - - DEADTRANS( L' ' , '-' , '-' , 0x0000), //Querstrich - DEADTRANS( L'-' , '-' , 0x0335 , 0x0000), //2x für Combining - DEADTRANS( L'1' , '-' , 0x2081 , 0x0000), - DEADTRANS( L'2' , '-' , 0x2082 , 0x0000), - DEADTRANS( L'3' , '-' , 0x2083 , 0x0000), - DEADTRANS( L'4' , '-' , 0x2084 , 0x0000), - DEADTRANS( L'5' , '-' , 0x2085 , 0x0000), - DEADTRANS( L'6' , '-' , 0x2086 , 0x0000), - DEADTRANS( L'7' , '-' , 0x2087 , 0x0000), - DEADTRANS( L'8' , '-' , 0x2088 , 0x0000), - DEADTRANS( L'9' , '-' , 0x2089 , 0x0000), - DEADTRANS( L'0' , '-' , 0x2080 , 0x0000), - DEADTRANS( L'+' , '-' , 0x208a , 0x0000), - DEADTRANS( L'-' , '-' , 0x208b , 0x0000), - DEADTRANS( L'=' , '-' , 0x208c , 0x0000), - DEADTRANS( L'(' , '-' , 0x208d , 0x0000), - DEADTRANS( L')' , '-' , 0x208e , 0x0000), - DEADTRANS( L'x' , '-' , 0x2093 , 0x0000), - - DEADTRANS( L' ' , '.' , '.' , 0x0000), //Dot Below - DEADTRANS( L'.' , '.' , 0x0323 , 0x0000), //2x für Combining - DEADTRANS( L'B' , '.' , 0x1e04 , 0x0000), - DEADTRANS( L'b' , '.' , 0x1e05 , 0x0000), - DEADTRANS( L'D' , '.' , 0x1e0c , 0x0000), - DEADTRANS( L'd' , '.' , 0x1e0d , 0x0000), - DEADTRANS( L'H' , '.' , 0x1e24 , 0x0000), - DEADTRANS( L'h' , '.' , 0x1e25 , 0x0000), - DEADTRANS( L'K' , '.' , 0x1e32 , 0x0000), - DEADTRANS( L'k' , '.' , 0x1e33 , 0x0000), - DEADTRANS( L'L' , '.' , 0x1e36 , 0x0000), - DEADTRANS( L'l' , '.' , 0x1e37 , 0x0000), - DEADTRANS( L'M' , '.' , 0x1e42 , 0x0000), - DEADTRANS( L'm' , '.' , 0x1e43 , 0x0000), - DEADTRANS( L'N' , '.' , 0x1e46 , 0x0000), - DEADTRANS( L'n' , '.' , 0x1e47 , 0x0000), - DEADTRANS( L'R' , '.' , 0x1e5a , 0x0000), - DEADTRANS( L'r' , '.' , 0x1e5b , 0x0000), - DEADTRANS( L'S' , '.' , 0x1e62 , 0x0000), - DEADTRANS( L's' , '.' , 0x1e63 , 0x0000), - DEADTRANS( L'T' , '.' , 0x1e6c , 0x0000), - DEADTRANS( L't' , '.' , 0x1e6d , 0x0000), - DEADTRANS( L'V' , '.' , 0x1e7e , 0x0000), - DEADTRANS( L'v' , '.' , 0x1e7f , 0x0000), - DEADTRANS( L'W' , '.' , 0x1e88 , 0x0000), - DEADTRANS( L'w' , '.' , 0x1e89 , 0x0000), - DEADTRANS( L'Z' , '.' , 0x1e92 , 0x0000), - DEADTRANS( L'z' , '.' , 0x1e93 , 0x0000), - DEADTRANS( L'A' , '.' , 0x1ea0 , 0x0000), - DEADTRANS( L'a' , '.' , 0x1ea1 , 0x0000), - DEADTRANS( L'E' , '.' , 0x1eb8 , 0x0000), - DEADTRANS( L'e' , '.' , 0x1eb9 , 0x0000), - DEADTRANS( L'I' , '.' , 0x1eca , 0x0000), - DEADTRANS( L'i' , '.' , 0x1ecb , 0x0000), - DEADTRANS( L'O' , '.' , 0x1ecc , 0x0000), - DEADTRANS( L'o' , '.' , 0x1ecd , 0x0000), - DEADTRANS( L'Y' , '.' , 0x1ef4 , 0x0000), - DEADTRANS( L'y' , '.' , 0x1ef5 , 0x0000), -// Ende der Taste links neben der 1 -// Anfang der Tasten zwei rechts neben der 0 - DEADTRANS( L' ' , 0x00B4 , 0x00B4 , 0x0000), //Akut - DEADTRANS( 0x00B4 , 0x00B4 , 0x0301 , 0x0000), //2x für Combining - DEADTRANS( L'a' , 0x00B4 , 0x00e1 , 0x0000), - DEADTRANS( L'e' , 0x00B4 , 0x00e9 , 0x0000), - DEADTRANS( L'i' , 0x00B4 , 0x00ed , 0x0000), - DEADTRANS( L'o' , 0x00B4 , 0x00f3 , 0x0000), - DEADTRANS( L'u' , 0x00B4 , 0x00fa , 0x0000), - DEADTRANS( L'y' , 0x00B4 , 0x00fd , 0x0000), - DEADTRANS( L'A' , 0x00B4 , 0x00c1 , 0x0000), - DEADTRANS( L'E' , 0x00B4 , 0x00c9 , 0x0000), - DEADTRANS( L'I' , 0x00B4 , 0x00cd , 0x0000), - DEADTRANS( L'O' , 0x00B4 , 0x00d3 , 0x0000), - DEADTRANS( L'U' , 0x00B4 , 0x00da , 0x0000), - DEADTRANS( L'Y' , 0x00B4 , 0x00dd , 0x0000), - DEADTRANS( L'C' , 0x00B4 , 0x0106 , 0x0000), - DEADTRANS( L'c' , 0x00B4 , 0x0106 , 0x0000), - DEADTRANS( L'L' , 0x00B4 , 0x0139 , 0x0000), - DEADTRANS( L'l' , 0x00B4 , 0x013a , 0x0000), - DEADTRANS( L'N' , 0x00B4 , 0x0143 , 0x0000), - DEADTRANS( L'n' , 0x00B4 , 0x0144 , 0x0000), - DEADTRANS( L'R' , 0x00B4 , 0x0154 , 0x0000), - DEADTRANS( L'r' , 0x00B4 , 0x0155 , 0x0000), - DEADTRANS( L'S' , 0x00B4 , 0x015a , 0x0000), - DEADTRANS( L's' , 0x00B4 , 0x015b , 0x0000), - DEADTRANS( L'Z' , 0x00B4 , 0x0179 , 0x0000), - DEADTRANS( L'z' , 0x00B4 , 0x017a , 0x0000), - DEADTRANS( 0x00fc , 0x00B4 , 0x01d8 , 0x0000), - DEADTRANS( 0x00dc , 0x00B4 , 0x01d7 , 0x0000), - DEADTRANS( L'G' , 0x00B4 , 0x01f4 , 0x0000), - DEADTRANS( L'g' , 0x00B4 , 0x01f5 , 0x0000), - DEADTRANS( L'K' , 0x00B4 , 0x1e30 , 0x0000), - DEADTRANS( L'k' , 0x00B4 , 0x1e31 , 0x0000), - DEADTRANS( L'M' , 0x00B4 , 0x1e3e , 0x0000), - DEADTRANS( L'm' , 0x00B4 , 0x1e3f , 0x0000), - DEADTRANS( L'P' , 0x00B4 , 0x1e54 , 0x0000), - DEADTRANS( L'p' , 0x00B4 , 0x1e55 , 0x0000), - DEADTRANS( L'W' , 0x00B4 , 0x1e82 , 0x0000), - DEADTRANS( L'w' , 0x00B4 , 0x1e83 , 0x0000), - - DEADTRANS( L' ' , 0x0060 , 0x0060 , 0x0000), //Gravis - DEADTRANS( 0x0060 , 0x0060 , 0x0300 , 0x0000), - DEADTRANS( L'a' , 0x0060 , 0x00e0 , 0x0000), - DEADTRANS( L'e' , 0x0060 , 0x00e8 , 0x0000), - DEADTRANS( L'i' , 0x0060 , 0x00ec , 0x0000), - DEADTRANS( L'o' , 0x0060 , 0x00f2 , 0x0000), - DEADTRANS( L'u' , 0x0060 , 0x00f9 , 0x0000), - DEADTRANS( L'A' , 0x0060 , 0x00c0 , 0x0000), - DEADTRANS( L'E' , 0x0060 , 0x00c8 , 0x0000), - DEADTRANS( L'I' , 0x0060 , 0x00cc , 0x0000), - DEADTRANS( L'O' , 0x0060 , 0x00d2 , 0x0000), - DEADTRANS( L'U' , 0x0060 , 0x00d9 , 0x0000), - DEADTRANS( 0x00dc , 0x0060 , 0x01db , 0x0000), - DEADTRANS( 0x00fc , 0x0060 , 0x01dc , 0x0000), - DEADTRANS( L'N' , 0x0060 , 0x01f8 , 0x0000), - DEADTRANS( L'n' , 0x0060 , 0x01f9 , 0x0000), - DEADTRANS( L'W' , 0x0060 , 0x1e80 , 0x0000), - DEADTRANS( L'w' , 0x0060 , 0x1e81 , 0x0000), - DEADTRANS( L'Y' , 0x0060 , 0x1ef2 , 0x0000), - DEADTRANS( L'y' , 0x0060 , 0x1ef3 , 0x0000), +// T1: Taste links neben der 1 +// Zirkumflex, Tilde, Ring Above, Caron, Brevis, Macron + DEADTRANS( L' ' , L'^' , L'^' , 0x0000), //Zirkumflex + DEADTRANS( L'^' , L'^' , 0x0302 , 0x0000), //2x für Combining + DEADTRANS( L'1' , L'^' , 0x00b9 , 0x0000), + DEADTRANS( L'2' , L'^' , 0x00b2 , 0x0000), + DEADTRANS( L'3' , L'^' , 0x00b3 , 0x0000), + DEADTRANS( L'4' , L'^' , 0x2074 , 0x0000), + DEADTRANS( L'5' , L'^' , 0x2075 , 0x0000), + DEADTRANS( L'6' , L'^' , 0x2076 , 0x0000), + DEADTRANS( L'7' , L'^' , 0x2077 , 0x0000), + DEADTRANS( L'8' , L'^' , 0x2078 , 0x0000), + DEADTRANS( L'9' , L'^' , 0x2079 , 0x0000), + DEADTRANS( L'0' , L'^' , 0x2070 , 0x0000), + DEADTRANS( L'+' , L'^' , 0x207a , 0x0000), + DEADTRANS( L'-' , L'^' , 0x207b , 0x0000), + DEADTRANS( L'=' , L'^' , 0x207c , 0x0000), + DEADTRANS( L'(' , L'^' , 0x207d , 0x0000), + DEADTRANS( L')' , L'^' , 0x207e , 0x0000), + DEADTRANS( L'n' , L'^' , 0x207f , 0x0000), + DEADTRANS( L'A' , L'^' , 0x00c2 , 0x0000), + DEADTRANS( L'a' , L'^' , 0x00e2 , 0x0000), + DEADTRANS( L'C' , L'^' , 0x0108 , 0x0000), + DEADTRANS( L'c' , L'^' , 0x0109 , 0x0000), + DEADTRANS( L'E' , L'^' , 0x00ca , 0x0000), + DEADTRANS( L'e' , L'^' , 0x00ea , 0x0000), + DEADTRANS( L'G' , L'^' , 0x011c , 0x0000), + DEADTRANS( L'g' , L'^' , 0x011d , 0x0000), + DEADTRANS( L'H' , L'^' , 0x0124 , 0x0000), + DEADTRANS( L'h' , L'^' , 0x0125 , 0x0000), + DEADTRANS( L'I' , L'^' , 0x00ce , 0x0000), + DEADTRANS( L'i' , L'^' , 0x00ee , 0x0000), + DEADTRANS( L'J' , L'^' , 0x0134 , 0x0000), + DEADTRANS( L'j' , L'^' , 0x0135 , 0x0000), + DEADTRANS( L'O' , L'^' , 0x00d4 , 0x0000), + DEADTRANS( L'o' , L'^' , 0x00f4 , 0x0000), + DEADTRANS( L'S' , L'^' , 0x015c , 0x0000), + DEADTRANS( L's' , L'^' , 0x015d , 0x0000), + DEADTRANS( L'U' , L'^' , 0x00db , 0x0000), + DEADTRANS( L'u' , L'^' , 0x00fb , 0x0000), + DEADTRANS( L'W' , L'^' , 0x0174 , 0x0000), + DEADTRANS( L'w' , L'^' , 0x0175 , 0x0000), + DEADTRANS( L'Y' , L'^' , 0x0176 , 0x0000), + DEADTRANS( L'y' , L'^' , 0x0177 , 0x0000), + DEADTRANS( L'Z' , L'^' , 0x1e90 , 0x0000), + DEADTRANS( L'z' , L'^' , 0x1e91 , 0x0000), + + DEADTRANS( L' ' , L'~' , L'~' , 0x0000), //Tilde + DEADTRANS( L'~' , L'~' , 0x0303 , 0x0000), //2x für Combining + DEADTRANS( L'A' , L'~' , 0x00c3 , 0x0000), + DEADTRANS( L'N' , L'~' , 0x00d1 , 0x0000), + DEADTRANS( L'O' , L'~' , 0x00d5 , 0x0000), + DEADTRANS( L'a' , L'~' , 0x00e3 , 0x0000), + DEADTRANS( L'n' , L'~' , 0x00f1 , 0x0000), + DEADTRANS( L'o' , L'~' , 0x00f5 , 0x0000), + DEADTRANS( L'I' , L'~' , 0x0128 , 0x0000), + DEADTRANS( L'i' , L'~' , 0x0129 , 0x0000), + DEADTRANS( L'U' , L'~' , 0x0168 , 0x0000), + DEADTRANS( L'u' , L'~' , 0x0169 , 0x0000), + DEADTRANS( L'V' , L'~' , 0x1e7c , 0x0000), + DEADTRANS( L'v' , L'~' , 0x1e7d , 0x0000), + DEADTRANS( L'E' , L'~' , 0x1ebc , 0x0000), + DEADTRANS( L'e' , L'~' , 0x1ebd , 0x0000), + DEADTRANS( L'Y' , L'~' , 0x1ef8 , 0x0000), + DEADTRANS( L'y' , L'~' , 0x1ef9 , 0x0000), + + DEADTRANS( L' ' , 0x02DA , 0x02DA , 0x0000), //Ring + DEADTRANS( 0x02DA , 0x02DA , 0x030A , 0x0000), //2x für Combining + DEADTRANS( L'E' , 0x02DA , 0x0116 , 0x0000), + DEADTRANS( L'e' , 0x02DA , 0x0117 , 0x0000), + DEADTRANS( L'G' , 0x02DA , 0x0120 , 0x0000), + DEADTRANS( L'g' , 0x02DA , 0x0121 , 0x0000), + DEADTRANS( L'I' , 0x02DA , 0x0130 , 0x0000), + DEADTRANS( L'i' , 0x02DA , 0x0131 , 0x0000), + DEADTRANS( L'Z' , 0x02DA , 0x017B , 0x0000), + DEADTRANS( L'z' , 0x02DA , 0x017C , 0x0000), + DEADTRANS( L'A' , 0x02DA , 0x0226 , 0x0000), + DEADTRANS( L'a' , 0x02DA , 0x0227 , 0x0000), + DEADTRANS( L'O' , 0x02DA , 0x022e , 0x0000), + DEADTRANS( L'o' , 0x02DA , 0x022f , 0x0000), + DEADTRANS( L'B' , 0x02DA , 0x1e02 , 0x0000), + DEADTRANS( L'b' , 0x02DA , 0x1e03 , 0x0000), + DEADTRANS( L'D' , 0x02DA , 0x1e0a , 0x0000), + DEADTRANS( L'd' , 0x02DA , 0x1e0b , 0x0000), + DEADTRANS( L'F' , 0x02DA , 0x1e1e , 0x0000), + DEADTRANS( L'f' , 0x02DA , 0x1e1f , 0x0000), + DEADTRANS( L'H' , 0x02DA , 0x1e22 , 0x0000), + DEADTRANS( L'h' , 0x02DA , 0x1e23 , 0x0000), + DEADTRANS( L'M' , 0x02DA , 0x1e40 , 0x0000), + DEADTRANS( L'm' , 0x02DA , 0x1e41 , 0x0000), + DEADTRANS( L'N' , 0x02DA , 0x1e44 , 0x0000), + DEADTRANS( L'n' , 0x02DA , 0x1e45 , 0x0000), + DEADTRANS( L'P' , 0x02DA , 0x1e56 , 0x0000), + DEADTRANS( L'p' , 0x02DA , 0x1e57 , 0x0000), + DEADTRANS( L'R' , 0x02DA , 0x1e58 , 0x0000), + DEADTRANS( L'r' , 0x02DA , 0x1e59 , 0x0000), + DEADTRANS( L'S' , 0x02DA , 0x1e60 , 0x0000), + DEADTRANS( L's' , 0x02DA , 0x1e61 , 0x0000), + DEADTRANS( L'T' , 0x02DA , 0x1e6a , 0x0000), + DEADTRANS( L't' , 0x02DA , 0x1e6b , 0x0000), + DEADTRANS( L'W' , 0x02DA , 0x1e86 , 0x0000), + DEADTRANS( L'w' , 0x02DA , 0x1e87 , 0x0000), + DEADTRANS( L'X' , 0x02DA , 0x1e8a , 0x0000), + DEADTRANS( L'x' , 0x02DA , 0x1e8b , 0x0000), + DEADTRANS( L'Y' , 0x02DA , 0x1e8e , 0x0000), + DEADTRANS( L'y' , 0x02DA , 0x1e8f , 0x0000), + + DEADTRANS( L' ' , 0x02c7 , 0x02c7 , 0x0000), //Caron + DEADTRANS( 0x02c7 , 0x02c7 , 0x030C , 0x0000), //2x für Combining + DEADTRANS( L'C' , 0x02c7 , 0x010c , 0x0000), + DEADTRANS( L'c' , 0x02c7 , 0x010d , 0x0000), + DEADTRANS( L'D' , 0x02c7 , 0x010e , 0x0000), + DEADTRANS( L'd' , 0x02c7 , 0x010f , 0x0000), + DEADTRANS( L'E' , 0x02c7 , 0x011a , 0x0000), + DEADTRANS( L'e' , 0x02c7 , 0x011b , 0x0000), + DEADTRANS( L'L' , 0x02c7 , 0x013d , 0x0000), + DEADTRANS( L'l' , 0x02c7 , 0x013e , 0x0000), + DEADTRANS( L'N' , 0x02c7 , 0x0147 , 0x0000), + DEADTRANS( L'n' , 0x02c7 , 0x0148 , 0x0000), + DEADTRANS( L'R' , 0x02c7 , 0x0158 , 0x0000), + DEADTRANS( L'r' , 0x02c7 , 0x0159 , 0x0000), + DEADTRANS( L'S' , 0x02c7 , 0x0160 , 0x0000), + DEADTRANS( L's' , 0x02c7 , 0x0161 , 0x0000), + DEADTRANS( L'T' , 0x02c7 , 0x0164 , 0x0000), + DEADTRANS( L't' , 0x02c7 , 0x0165 , 0x0000), + DEADTRANS( L'Z' , 0x02c7 , 0x017d , 0x0000), + DEADTRANS( L'z' , 0x02c7 , 0x017e , 0x0000), + DEADTRANS( L'A' , 0x02c7 , 0x01cd , 0x0000), + DEADTRANS( L'a' , 0x02c7 , 0x01ce , 0x0000), + DEADTRANS( L'I' , 0x02c7 , 0x01cf , 0x0000), + DEADTRANS( L'i' , 0x02c7 , 0x01d0 , 0x0000), + DEADTRANS( L'O' , 0x02c7 , 0x01d1 , 0x0000), + DEADTRANS( L'o' , 0x02c7 , 0x01d2 , 0x0000), + DEADTRANS( L'U' , 0x02c7 , 0x01d3 , 0x0000), + DEADTRANS( L'u' , 0x02c7 , 0x01d4 , 0x0000), + DEADTRANS( L'G' , 0x02c7 , 0x01e6 , 0x0000), + DEADTRANS( L'g' , 0x02c7 , 0x01e7 , 0x0000), + DEADTRANS( L'K' , 0x02c7 , 0x01e8 , 0x0000), + DEADTRANS( L'k' , 0x02c7 , 0x01e9 , 0x0000), + DEADTRANS( L'j' , 0x02c7 , 0x01f0 , 0x0000), + DEADTRANS( L'H' , 0x02c7 , 0x021e , 0x0000), + DEADTRANS( L'h' , 0x02c7 , 0x021f , 0x0000), + DEADTRANS( 0x00fc , 0x02c7 , 0x01da , 0x0000), + DEADTRANS( 0x00dc , 0x02c7 , 0x01d9 , 0x0000), + + DEADTRANS( L' ' , 0x02D8 , 0x02D8 , 0x0000), //Brevis + DEADTRANS( 0x02D8 , 0x02D8 , 0x0306 , 0x0000), //2x für Combining + DEADTRANS( L'A' , 0x02D8 , 0x0102 , 0x0000), + DEADTRANS( L'a' , 0x02D8 , 0x0103 , 0x0000), + DEADTRANS( L'E' , 0x02D8 , 0x0114 , 0x0000), + DEADTRANS( L'e' , 0x02D8 , 0x0115 , 0x0000), + DEADTRANS( L'G' , 0x02D8 , 0x011e , 0x0000), + DEADTRANS( L'g' , 0x02D8 , 0x011f , 0x0000), + DEADTRANS( L'I' , 0x02D8 , 0x012c , 0x0000), + DEADTRANS( L'i' , 0x02D8 , 0x012d , 0x0000), + DEADTRANS( L'O' , 0x02D8 , 0x014e , 0x0000), + DEADTRANS( L'o' , 0x02D8 , 0x014f , 0x0000), + DEADTRANS( L'U' , 0x02D8 , 0x016c , 0x0000), + DEADTRANS( L'u' , 0x02D8 , 0x016d , 0x0000), + + DEADTRANS( L' ' , 0x00AF , 0x00AF , 0x0000), //Makron + DEADTRANS( 0x00AF , 0x00AF , 0x0304 , 0x0000), //2x für Combining + DEADTRANS( L'A' , 0x00AF , 0x0100 , 0x0000), + DEADTRANS( L'a' , 0x00AF , 0x0101 , 0x0000), + DEADTRANS( L'E' , 0x00AF , 0x0112 , 0x0000), + DEADTRANS( L'e' , 0x00AF , 0x0113 , 0x0000), + DEADTRANS( L'I' , 0x00AF , 0x012a , 0x0000), + DEADTRANS( L'i' , 0x00AF , 0x012b , 0x0000), + DEADTRANS( L'O' , 0x00AF , 0x014c , 0x0000), + DEADTRANS( L'o' , 0x00AF , 0x014d , 0x0000), + DEADTRANS( L'U' , 0x00AF , 0x016a , 0x0000), + DEADTRANS( L'u' , 0x00AF , 0x016b , 0x0000), + DEADTRANS( L'Y' , 0x00AF , 0x0232 , 0x0000), + DEADTRANS( L'y' , 0x00AF , 0x0233 , 0x0000), + DEADTRANS( L'G' , 0x00AF , 0x1e20 , 0x0000), + DEADTRANS( L'g' , 0x00AF , 0x1e21 , 0x0000), +// Ende von T1 (links neben der 1) + +// T2: zwei rechts neben der 0 +// Gravis, , Trema, Doppelgravis, Spiritus asper, + DEADTRANS( L' ' , 0x0060 , 0x0060 , 0x0000), //Gravis + DEADTRANS( 0x0060 , 0x0060 , 0x0300 , 0x0000), //2x für Combining + DEADTRANS( L'a' , 0x0060 , 0x00e0 , 0x0000), + DEADTRANS( L'e' , 0x0060 , 0x00e8 , 0x0000), + DEADTRANS( L'i' , 0x0060 , 0x00ec , 0x0000), + DEADTRANS( L'o' , 0x0060 , 0x00f2 , 0x0000), + DEADTRANS( L'u' , 0x0060 , 0x00f9 , 0x0000), + DEADTRANS( L'A' , 0x0060 , 0x00c0 , 0x0000), + DEADTRANS( L'E' , 0x0060 , 0x00c8 , 0x0000), + DEADTRANS( L'I' , 0x0060 , 0x00cc , 0x0000), + DEADTRANS( L'O' , 0x0060 , 0x00d2 , 0x0000), + DEADTRANS( L'U' , 0x0060 , 0x00d9 , 0x0000), + DEADTRANS( 0x00dc , 0x0060 , 0x01db , 0x0000), + DEADTRANS( 0x00fc , 0x0060 , 0x01dc , 0x0000), + DEADTRANS( L'N' , 0x0060 , 0x01f8 , 0x0000), + DEADTRANS( L'n' , 0x0060 , 0x01f9 , 0x0000), + DEADTRANS( L'W' , 0x0060 , 0x1e80 , 0x0000), + DEADTRANS( L'w' , 0x0060 , 0x1e81 , 0x0000), + DEADTRANS( L'Y' , 0x0060 , 0x1ef2 , 0x0000), + DEADTRANS( L'y' , 0x0060 , 0x1ef3 , 0x0000), + +//nicht belegt +//2x für Combining + + DEADTRANS( L' ' , 0x00A8 , 0x00A8 , 0x0000), //Trema + DEADTRANS( 0x00A8 , 0x00A8 , 0x0308 , 0x0000), //2x für Combining + DEADTRANS( L'A' , 0x00A8 , 0x00c4 , 0x0000), + DEADTRANS( L'E' , 0x00A8 , 0x00cb , 0x0000), + DEADTRANS( L'I' , 0x00A8 , 0x00cf , 0x0000), + DEADTRANS( L'O' , 0x00A8 , 0x00d6 , 0x0000), + DEADTRANS( L'U' , 0x00A8 , 0x00dc , 0x0000), + DEADTRANS( L'a' , 0x00A8 , 0x00e4 , 0x0000), + DEADTRANS( L'e' , 0x00A8 , 0x00eb , 0x0000), + DEADTRANS( L'i' , 0x00A8 , 0x00ef , 0x0000), + DEADTRANS( L'o' , 0x00A8 , 0x00f6 , 0x0000), + DEADTRANS( L'u' , 0x00A8 , 0x00fc , 0x0000), + DEADTRANS( L'y' , 0x00A8 , 0x0177 , 0x0000), + DEADTRANS( L'Y' , 0x00A8 , 0x0178 , 0x0000), + DEADTRANS( L'H' , 0x00A8 , 0x1e26 , 0x0000), + DEADTRANS( L'h' , 0x00A8 , 0x1e27 , 0x0000), + DEADTRANS( L'W' , 0x00A8 , 0x1e84 , 0x0000), + DEADTRANS( L'w' , 0x00A8 , 0x1e85 , 0x0000), + DEADTRANS( L'X' , 0x00A8 , 0x1e8c , 0x0000), + DEADTRANS( L'x' , 0x00A8 , 0x1e8d , 0x0000), + DEADTRANS( L't' , 0x00A8 , 0x1e97 , 0x0000), + + DEADTRANS( L' ' , 0x030f , 0x02F5 , 0x0000), //Doppelgravis + DEADTRANS( 0x030f , 0x030f , 0x030f , 0x0000), //2x für Combining + DEADTRANS( L'A' , 0x030f , 0x0200 , 0x0000), + DEADTRANS( L'E' , 0x030f , 0x0204 , 0x0000), + DEADTRANS( L'I' , 0x030f , 0x0208 , 0x0000), + DEADTRANS( L'O' , 0x030f , 0x020c , 0x0000), + DEADTRANS( L'R' , 0x030f , 0x0210 , 0x0000), + DEADTRANS( L'U' , 0x030f , 0x0214 , 0x0000), + DEADTRANS( L'a' , 0x030f , 0x0201 , 0x0000), + DEADTRANS( L'e' , 0x030f , 0x0205 , 0x0000), + DEADTRANS( L'i' , 0x030f , 0x0209 , 0x0000), + DEADTRANS( L'o' , 0x030f , 0x020d , 0x0000), + DEADTRANS( L'r' , 0x030f , 0x0211 , 0x0000), + DEADTRANS( L'u' , 0x030f , 0x0215 , 0x0000), + + DEADTRANS( L' ' , 0x1ffe , 0x1ffe , 0x0000), //Spiritus asper + DEADTRANS( 0x1ffe , 0x1ffe , 0x0314 , 0x0000), //2x für Combining + DEADTRANS( 0x03b1 , 0x1ffe , 0x1f01 , 0x0000), + DEADTRANS( 0x03b5 , 0x1ffe , 0x1f11 , 0x0000), + DEADTRANS( 0x03b7 , 0x1ffe , 0x1f21 , 0x0000), + DEADTRANS( 0x03b9 , 0x1ffe , 0x1f31 , 0x0000), + DEADTRANS( 0x03bf , 0x1ffe , 0x1f41 , 0x0000), + DEADTRANS( 0x03c5 , 0x1ffe , 0x1f51 , 0x0000), + DEADTRANS( 0x03c9 , 0x1ffe , 0x1f61 , 0x0000), + DEADTRANS( 0x03c1 , 0x1ffe , 0x1fe5 , 0x0000), + DEADTRANS( 0x0391 , 0x1ffe , 0x1f09 , 0x0000), + DEADTRANS( 0x0395 , 0x1ffe , 0x1f19 , 0x0000), + DEADTRANS( 0x0397 , 0x1ffe , 0x1f29 , 0x0000), + DEADTRANS( 0x0399 , 0x1ffe , 0x1f39 , 0x0000), + DEADTRANS( 0x039f , 0x1ffe , 0x1f49 , 0x0000), + DEADTRANS( 0x03a5 , 0x1ffe , 0x1f59 , 0x0000), + DEADTRANS( 0x03a9 , 0x1ffe , 0x1f69 , 0x0000), + DEADTRANS( 0x03a1 , 0x1ffe , 0x1fec , 0x0000), + +//nicht belegt +//2x für Combining +// Ende von T2 + +// T3: rechts nebem ›ß‹ +// Akut, Cedille, Quer-/Schrägstrich, Doppelakut, Spiritus lenis, Punkt darüber + DEADTRANS( L' ' , 0x00B4 , 0x00B4 , 0x0000), //Akut + DEADTRANS( 0x00B4 , 0x00B4 , 0x0301 , 0x0000), //2x für Combining + DEADTRANS( L'a' , 0x00B4 , 0x00e1 , 0x0000), + DEADTRANS( L'e' , 0x00B4 , 0x00e9 , 0x0000), + DEADTRANS( L'i' , 0x00B4 , 0x00ed , 0x0000), + DEADTRANS( L'o' , 0x00B4 , 0x00f3 , 0x0000), + DEADTRANS( L'u' , 0x00B4 , 0x00fa , 0x0000), + DEADTRANS( L'y' , 0x00B4 , 0x00fd , 0x0000), + DEADTRANS( L'A' , 0x00B4 , 0x00c1 , 0x0000), + DEADTRANS( L'E' , 0x00B4 , 0x00c9 , 0x0000), + DEADTRANS( L'I' , 0x00B4 , 0x00cd , 0x0000), + DEADTRANS( L'O' , 0x00B4 , 0x00d3 , 0x0000), + DEADTRANS( L'U' , 0x00B4 , 0x00da , 0x0000), + DEADTRANS( L'Y' , 0x00B4 , 0x00dd , 0x0000), + DEADTRANS( L'C' , 0x00B4 , 0x0106 , 0x0000), + DEADTRANS( L'c' , 0x00B4 , 0x0106 , 0x0000), + DEADTRANS( L'L' , 0x00B4 , 0x0139 , 0x0000), + DEADTRANS( L'l' , 0x00B4 , 0x013a , 0x0000), + DEADTRANS( L'N' , 0x00B4 , 0x0143 , 0x0000), + DEADTRANS( L'n' , 0x00B4 , 0x0144 , 0x0000), + DEADTRANS( L'R' , 0x00B4 , 0x0154 , 0x0000), + DEADTRANS( L'r' , 0x00B4 , 0x0155 , 0x0000), + DEADTRANS( L'S' , 0x00B4 , 0x015a , 0x0000), + DEADTRANS( L's' , 0x00B4 , 0x015b , 0x0000), + DEADTRANS( L'Z' , 0x00B4 , 0x0179 , 0x0000), + DEADTRANS( L'z' , 0x00B4 , 0x017a , 0x0000), + DEADTRANS( 0x00fc , 0x00B4 , 0x01d8 , 0x0000), + DEADTRANS( 0x00dc , 0x00B4 , 0x01d7 , 0x0000), + DEADTRANS( L'G' , 0x00B4 , 0x01f4 , 0x0000), + DEADTRANS( L'g' , 0x00B4 , 0x01f5 , 0x0000), + DEADTRANS( L'K' , 0x00B4 , 0x1e30 , 0x0000), + DEADTRANS( L'k' , 0x00B4 , 0x1e31 , 0x0000), + DEADTRANS( L'M' , 0x00B4 , 0x1e3e , 0x0000), + DEADTRANS( L'm' , 0x00B4 , 0x1e3f , 0x0000), + DEADTRANS( L'P' , 0x00B4 , 0x1e54 , 0x0000), + DEADTRANS( L'p' , 0x00B4 , 0x1e55 , 0x0000), + DEADTRANS( L'W' , 0x00B4 , 0x1e82 , 0x0000), + DEADTRANS( L'w' , 0x00B4 , 0x1e83 , 0x0000), + + DEADTRANS( L' ' , 0x00b8 , 0x00b8 , 0x0000), //Cedilla + DEADTRANS( 0x00b8 , 0x00b8 , 0x0327 , 0x0000), //2x für Combining + DEADTRANS( L'C' , 0x00b8 , 0x00c7 , 0x0000), + DEADTRANS( L'c' , 0x00b8 , 0x00e7 , 0x0000), + DEADTRANS( L'G' , 0x00b8 , 0x0122 , 0x0000), + DEADTRANS( L'g' , 0x00b8 , 0x0123 , 0x0000), + DEADTRANS( L'K' , 0x00b8 , 0x0136 , 0x0000), + DEADTRANS( L'k' , 0x00b8 , 0x0137 , 0x0000), + DEADTRANS( L'L' , 0x00b8 , 0x013b , 0x0000), + DEADTRANS( L'l' , 0x00b8 , 0x013c , 0x0000), + DEADTRANS( L'N' , 0x00b8 , 0x0145 , 0x0000), + DEADTRANS( L'n' , 0x00b8 , 0x0146 , 0x0000), + DEADTRANS( L'R' , 0x00b8 , 0x0156 , 0x0000), + DEADTRANS( L'r' , 0x00b8 , 0x0157 , 0x0000), + DEADTRANS( L'S' , 0x00b8 , 0x015e , 0x0000), + DEADTRANS( L's' , 0x00b8 , 0x015f , 0x0000), + DEADTRANS( L'T' , 0x00b8 , 0x0162 , 0x0000), + DEADTRANS( L't' , 0x00b8 , 0x0163 , 0x0000), + DEADTRANS( L'D' , 0x00b8 , 0x1e10 , 0x0000), + DEADTRANS( L'd' , 0x00b8 , 0x1e11 , 0x0000), + DEADTRANS( L'H' , 0x00b8 , 0x1e28 , 0x0000), + DEADTRANS( L'h' , 0x00b8 , 0x1e29 , 0x0000), + DEADTRANS( L'A' , 0x00b8 , 0x0104 , 0x0000), //Ogonek + DEADTRANS( L'a' , 0x00b8 , 0x0105 , 0x0000), + DEADTRANS( L'E' , 0x00b8 , 0x0118 , 0x0000), + DEADTRANS( L'e' , 0x00b8 , 0x0119 , 0x0000), + DEADTRANS( L'I' , 0x00b8 , 0x012e , 0x0000), + DEADTRANS( L'i' , 0x00b8 , 0x012f , 0x0000), + DEADTRANS( L'U' , 0x00b8 , 0x0172 , 0x0000), + DEADTRANS( L'u' , 0x00b8 , 0x0173 , 0x0000), + DEADTRANS( L'O' , 0x00b8 , 0x01ea , 0x0000), + DEADTRANS( L'o' , 0x00b8 , 0x01eb , 0x0000), + + DEADTRANS( L' ' , L'-' , 0x2212 , 0x0000), //Quer-/Schrägstrich; mit Space wird echter Hyphen erzeugt + DEADTRANS( L'-' , L'-' , 0x0335 , 0x0000), //2x für Combining (Combining Short Stroke) + DEADTRANS( L'1' , L'-' , 0x2081 , 0x0000), + DEADTRANS( L'2' , L'-' , 0x2082 , 0x0000), + DEADTRANS( L'3' , L'-' , 0x2083 , 0x0000), + DEADTRANS( L'4' , L'-' , 0x2084 , 0x0000), + DEADTRANS( L'5' , L'-' , 0x2085 , 0x0000), + DEADTRANS( L'6' , L'-' , 0x2086 , 0x0000), + DEADTRANS( L'7' , L'-' , 0x2087 , 0x0000), + DEADTRANS( L'8' , L'-' , 0x2088 , 0x0000), + DEADTRANS( L'9' , L'-' , 0x2089 , 0x0000), + DEADTRANS( L'0' , L'-' , 0x2080 , 0x0000), + DEADTRANS( L'+' , L'-' , 0x208a , 0x0000), + DEADTRANS( L'-' , L'-' , 0x208b , 0x0000), + DEADTRANS( L'=' , L'-' , 0x208c , 0x0000), + DEADTRANS( L'(' , L'-' , 0x208d , 0x0000), + DEADTRANS( L')' , L'-' , 0x208e , 0x0000), + DEADTRANS( L'a' , L'-' , 0x2090 , 0x0000), + DEADTRANS( L'e' , L'-' , 0x2091 , 0x0000), + DEADTRANS( L'x' , L'-' , 0x2093 , 0x0000), + DEADTRANS( L'O' , L'-' , 0x00d8 , 0x0000), //Schrägstrich + DEADTRANS( L'o' , L'-' , 0x00f8 , 0x0000), + DEADTRANS( L'L' , L'-' , 0x0141 , 0x0000), + DEADTRANS( L'l' , L'-' , 0x0142 , 0x0000), + + DEADTRANS( L' ' , 0x02DD , 0x02DD , 0x0000), //Doppelakut + DEADTRANS( 0x02DD , 0x02DD , 0x030B , 0x0000), //2x für Combining + DEADTRANS( L'O' , 0x02DD , 0x0150 , 0x0000), + DEADTRANS( L'o' , 0x02DD , 0x0151 , 0x0000), + DEADTRANS( L'U' , 0x02DD , 0x0170 , 0x0000), + DEADTRANS( L'u' , 0x02DD , 0x0171 , 0x0000), + + + + + + DEADTRANS( L' ' , 0x02d9 , 0x02d9 , 0x0000), //Dot Above + DEADTRANS( 0x02d9 , 0x02d9 , 0x0307 , 0x0000), //2x für Combining + DEADTRANS( L'C' , 0x02d9 , 0x010a , 0x0000), + DEADTRANS( L'c' , 0x02d9 , 0x010b , 0x0000), + DEADTRANS( L'E' , 0x02d9 , 0x0116 , 0x0000), + DEADTRANS( L'e' , 0x02d9 , 0x0117 , 0x0000), + DEADTRANS( L'G' , 0x02d9 , 0x0120 , 0x0000), + DEADTRANS( L'g' , 0x02d9 , 0x0121 , 0x0000), + DEADTRANS( L'I' , 0x02d9 , 0x0130 , 0x0000), + DEADTRANS( L'i' , 0x02d9 , 0x0131 , 0x0000), + DEADTRANS( L'Z' , 0x02d9 , 0x017b , 0x0000), + DEADTRANS( L'z' , 0x02d9 , 0x017c , 0x0000), + DEADTRANS( L'A' , 0x02d9 , 0x0226 , 0x0000), + DEADTRANS( L'a' , 0x02d9 , 0x0227 , 0x0000), + DEADTRANS( L'O' , 0x02d9 , 0x022e , 0x0000), + DEADTRANS( L'o' , 0x02d9 , 0x022f , 0x0000), + DEADTRANS( L'B' , 0x02d9 , 0x1e02 , 0x0000), + DEADTRANS( L'b' , 0x02d9 , 0x1e03 , 0x0000), + DEADTRANS( L'D' , 0x02d9 , 0x1e0a , 0x0000), + DEADTRANS( L'd' , 0x02d9 , 0x1e0b , 0x0000), + DEADTRANS( L'F' , 0x02d9 , 0x1e1e , 0x0000), + DEADTRANS( L'f' , 0x02d9 , 0x1e1f , 0x0000), + DEADTRANS( L'H' , 0x02d9 , 0x1e22 , 0x0000), + DEADTRANS( L'h' , 0x02d9 , 0x1e23 , 0x0000), + DEADTRANS( L'M' , 0x02d9 , 0x1e40 , 0x0000), + DEADTRANS( L'm' , 0x02d9 , 0x1e41 , 0x0000), + DEADTRANS( L'N' , 0x02d9 , 0x1e44 , 0x0000), + DEADTRANS( L'n' , 0x02d9 , 0x1e45 , 0x0000), + DEADTRANS( L'P' , 0x02d9 , 0x1e56 , 0x0000), + DEADTRANS( L'p' , 0x02d9 , 0x1e57 , 0x0000), + DEADTRANS( L'R' , 0x02d9 , 0x1e58 , 0x0000), + DEADTRANS( L'r' , 0x02d9 , 0x1e59 , 0x0000), + DEADTRANS( L'S' , 0x02d9 , 0x1e60 , 0x0000), + DEADTRANS( L's' , 0x02d9 , 0x1e61 , 0x0000), + DEADTRANS( L'T' , 0x02d9 , 0x1e6a , 0x0000), + DEADTRANS( L't' , 0x02d9 , 0x1e6b , 0x0000), + DEADTRANS( L'W' , 0x02d9 , 0x1e86 , 0x0000), + DEADTRANS( L'w' , 0x02d9 , 0x1e87 , 0x0000), + DEADTRANS( L'X' , 0x02d9 , 0x1e8a , 0x0000), + DEADTRANS( L'x' , 0x02d9 , 0x1e8b , 0x0000), + DEADTRANS( L'Y' , 0x02d9 , 0x1e8e , 0x0000), + DEADTRANS( L'y' , 0x02d9 , 0x1e8f , 0x0000), + + + + DEADTRANS( L' ' , 0x00b7 , 0x00b7 , 0x0000), //Dot Middle + DEADTRANS( 0x00b7 , 0x00b7 , 0x00b7 , 0x0000), //kein Combining vorhanden + DEADTRANS( L'L' , 0x00b7 , 0x013F , 0x0000), + DEADTRANS( L'l' , 0x00b7 , 0x0140 , 0x0000), - DEADTRANS( L' ' , 0x00b8 , 0x00b8 , 0x0000), //Cedilla - DEADTRANS( 0x00b8 , 0x00b8 , 0x0327 , 0x0000), //2x für Combining - DEADTRANS( L'C' , 0x00b8 , 0x00c7 , 0x0000), - DEADTRANS( L'c' , 0x00b8 , 0x00e7 , 0x0000), - DEADTRANS( L'G' , 0x00b8 , 0x0122 , 0x0000), - DEADTRANS( L'g' , 0x00b8 , 0x0123 , 0x0000), - DEADTRANS( L'K' , 0x00b8 , 0x0136 , 0x0000), - DEADTRANS( L'k' , 0x00b8 , 0x0137 , 0x0000), - DEADTRANS( L'L' , 0x00b8 , 0x013b , 0x0000), - DEADTRANS( L'l' , 0x00b8 , 0x013c , 0x0000), - DEADTRANS( L'N' , 0x00b8 , 0x0145 , 0x0000), - DEADTRANS( L'n' , 0x00b8 , 0x0146 , 0x0000), - DEADTRANS( L'R' , 0x00b8 , 0x0156 , 0x0000), - DEADTRANS( L'r' , 0x00b8 , 0x0157 , 0x0000), - DEADTRANS( L'S' , 0x00b8 , 0x015e , 0x0000), - DEADTRANS( L's' , 0x00b8 , 0x015f , 0x0000), - DEADTRANS( L'T' , 0x00b8 , 0x0162 , 0x0000), - DEADTRANS( L't' , 0x00b8 , 0x0163 , 0x0000), - DEADTRANS( L'E' , 0x00b8 , 0x0228 , 0x0000), - DEADTRANS( L'e' , 0x00b8 , 0x0229 , 0x0000), - DEADTRANS( L'D' , 0x00b8 , 0x1e10 , 0x0000), - DEADTRANS( L'd' , 0x00b8 , 0x1e11 , 0x0000), - DEADTRANS( L'H' , 0x00b8 , 0x1e28 , 0x0000), - DEADTRANS( L'h' , 0x00b8 , 0x1e29 , 0x0000), + - DEADTRANS( L' ' , 0x02d9 , 0x02d9 , 0x0000), //Dot Above - DEADTRANS( 0x02d9 , 0x02d9 , 0x0307 , 0x0000), //2x für Combining - DEADTRANS( L'C' , 0x02d9 , 0x010a , 0x0000), - DEADTRANS( L'c' , 0x02d9 , 0x010b , 0x0000), - DEADTRANS( L'E' , 0x02d9 , 0x0116 , 0x0000), - DEADTRANS( L'e' , 0x02d9 , 0x0117 , 0x0000), - DEADTRANS( L'G' , 0x02d9 , 0x0120 , 0x0000), - DEADTRANS( L'g' , 0x02d9 , 0x0121 , 0x0000), - DEADTRANS( L'I' , 0x02d9 , 0x0130 , 0x0000), - DEADTRANS( L'i' , 0x02d9 , 0x0131 , 0x0000), - DEADTRANS( L'Z' , 0x02d9 , 0x017b , 0x0000), - DEADTRANS( L'z' , 0x02d9 , 0x017c , 0x0000), - DEADTRANS( L'A' , 0x02d9 , 0x0226 , 0x0000), - DEADTRANS( L'a' , 0x02d9 , 0x0227 , 0x0000), - DEADTRANS( L'O' , 0x02d9 , 0x022e , 0x0000), - DEADTRANS( L'o' , 0x02d9 , 0x022f , 0x0000), - DEADTRANS( L'B' , 0x02d9 , 0x1e02 , 0x0000), - DEADTRANS( L'b' , 0x02d9 , 0x1e03 , 0x0000), - DEADTRANS( L'D' , 0x02d9 , 0x1e0a , 0x0000), - DEADTRANS( L'd' , 0x02d9 , 0x1e0b , 0x0000), - DEADTRANS( L'F' , 0x02d9 , 0x1e1e , 0x0000), - DEADTRANS( L'f' , 0x02d9 , 0x1e1f , 0x0000), - DEADTRANS( L'H' , 0x02d9 , 0x1e22 , 0x0000), - DEADTRANS( L'h' , 0x02d9 , 0x1e23 , 0x0000), - DEADTRANS( L'M' , 0x02d9 , 0x1e40 , 0x0000), - DEADTRANS( L'm' , 0x02d9 , 0x1e41 , 0x0000), - DEADTRANS( L'N' , 0x02d9 , 0x1e44 , 0x0000), - DEADTRANS( L'n' , 0x02d9 , 0x1e45 , 0x0000), - DEADTRANS( L'P' , 0x02d9 , 0x1e56 , 0x0000), - DEADTRANS( L'p' , 0x02d9 , 0x1e57 , 0x0000), - DEADTRANS( L'R' , 0x02d9 , 0x1e58 , 0x0000), - DEADTRANS( L'r' , 0x02d9 , 0x1e59 , 0x0000), - DEADTRANS( L'S' , 0x02d9 , 0x1e60 , 0x0000), - DEADTRANS( L's' , 0x02d9 , 0x1e61 , 0x0000), - DEADTRANS( L'T' , 0x02d9 , 0x1e6a , 0x0000), - DEADTRANS( L't' , 0x02d9 , 0x1e6b , 0x0000), - DEADTRANS( L'W' , 0x02d9 , 0x1e86 , 0x0000), - DEADTRANS( L'w' , 0x02d9 , 0x1e87 , 0x0000), - DEADTRANS( L'X' , 0x02d9 , 0x1e8a , 0x0000), - DEADTRANS( L'x' , 0x02d9 , 0x1e8b , 0x0000), - DEADTRANS( L'Y' , 0x02d9 , 0x1e8e , 0x0000), - DEADTRANS( L'y' , 0x02d9 , 0x1e8f , 0x0000), + DEADTRANS( L' ' , L'.' , L'.' , 0x0000), //Dot Below + DEADTRANS( L'.' , L'.' , 0x0323 , 0x0000), //2x für Combining + DEADTRANS( L'B' , L'.' , 0x1e04 , 0x0000), + DEADTRANS( L'b' , L'.' , 0x1e05 , 0x0000), + DEADTRANS( L'D' , L'.' , 0x1e0c , 0x0000), + DEADTRANS( L'd' , L'.' , 0x1e0d , 0x0000), + DEADTRANS( L'H' , L'.' , 0x1e24 , 0x0000), + DEADTRANS( L'h' , L'.' , 0x1e25 , 0x0000), + DEADTRANS( L'K' , L'.' , 0x1e32 , 0x0000), + DEADTRANS( L'k' , L'.' , 0x1e33 , 0x0000), + DEADTRANS( L'L' , L'.' , 0x1e36 , 0x0000), + DEADTRANS( L'l' , L'.' , 0x1e37 , 0x0000), + DEADTRANS( L'M' , L'.' , 0x1e42 , 0x0000), + DEADTRANS( L'm' , L'.' , 0x1e43 , 0x0000), + DEADTRANS( L'N' , L'.' , 0x1e46 , 0x0000), + DEADTRANS( L'n' , L'.' , 0x1e47 , 0x0000), + DEADTRANS( L'R' , L'.' , 0x1e5a , 0x0000), + DEADTRANS( L'r' , L'.' , 0x1e5b , 0x0000), + DEADTRANS( L'S' , L'.' , 0x1e62 , 0x0000), + DEADTRANS( L's' , L'.' , 0x1e63 , 0x0000), + DEADTRANS( L'T' , L'.' , 0x1e6c , 0x0000), + DEADTRANS( L't' , L'.' , 0x1e6d , 0x0000), + DEADTRANS( L'V' , L'.' , 0x1e7e , 0x0000), + DEADTRANS( L'v' , L'.' , 0x1e7f , 0x0000), + DEADTRANS( L'W' , L'.' , 0x1e88 , 0x0000), + DEADTRANS( L'w' , L'.' , 0x1e89 , 0x0000), + DEADTRANS( L'Z' , L'.' , 0x1e92 , 0x0000), + DEADTRANS( L'z' , L'.' , 0x1e93 , 0x0000), + DEADTRANS( L'A' , L'.' , 0x1ea0 , 0x0000), + DEADTRANS( L'a' , L'.' , 0x1ea1 , 0x0000), + DEADTRANS( L'E' , L'.' , 0x1eb8 , 0x0000), + DEADTRANS( L'e' , L'.' , 0x1eb9 , 0x0000), + DEADTRANS( L'I' , L'.' , 0x1eca , 0x0000), + DEADTRANS( L'i' , L'.' , 0x1ecb , 0x0000), + DEADTRANS( L'O' , L'.' , 0x1ecc , 0x0000), + DEADTRANS( L'o' , L'.' , 0x1ecd , 0x0000), + DEADTRANS( L'Y' , L'.' , 0x1ef4 , 0x0000), + DEADTRANS( L'y' , L'.' , 0x1ef5 , 0x0000), + + + + - DEADTRANS( L' ' , 0x02DB , 0x02DB , 0x0000), //Ogonek - DEADTRANS( 0x02DB , 0x02DB , 0x0328 , 0x0000), //2x für Combining - DEADTRANS( L'A' , 0x02DB , 0x0104 , 0x0000), - DEADTRANS( L'a' , 0x02DB , 0x0105 , 0x0000), - DEADTRANS( L'E' , 0x02DB , 0x0118 , 0x0000), - DEADTRANS( L'e' , 0x02DB , 0x0119 , 0x0000), - DEADTRANS( L'I' , 0x02DB , 0x012e , 0x0000), - DEADTRANS( L'i' , 0x02DB , 0x012f , 0x0000), - DEADTRANS( L'U' , 0x02DB , 0x0172 , 0x0000), - DEADTRANS( L'u' , 0x02DB , 0x0173 , 0x0000), - DEADTRANS( L'O' , 0x02DB , 0x01ea , 0x0000), - DEADTRANS( L'o' , 0x02DB , 0x01eb , 0x0000), - - DEADTRANS( L' ' , 0x02DA , 0x02DA , 0x0000), //Ring - DEADTRANS( 0x02DA , 0x02DA , 0x030A , 0x0000), //2x für Combining - DEADTRANS( L'E' , 0x02DA , 0x0116 , 0x0000), - DEADTRANS( L'e' , 0x02DA , 0x0117 , 0x0000), - DEADTRANS( L'G' , 0x02DA , 0x0120 , 0x0000), - DEADTRANS( L'g' , 0x02DA , 0x0121 , 0x0000), - DEADTRANS( L'I' , 0x02DA , 0x0130 , 0x0000), - DEADTRANS( L'i' , 0x02DA , 0x0131 , 0x0000), - DEADTRANS( L'Z' , 0x02DA , 0x017B , 0x0000), - DEADTRANS( L'z' , 0x02DA , 0x017C , 0x0000), - DEADTRANS( L'A' , 0x02DA , 0x0226 , 0x0000), - DEADTRANS( L'a' , 0x02DA , 0x0227 , 0x0000), - DEADTRANS( L'O' , 0x02DA , 0x022e , 0x0000), - DEADTRANS( L'o' , 0x02DA , 0x022f , 0x0000), - DEADTRANS( L'B' , 0x02DA , 0x1e02 , 0x0000), - DEADTRANS( L'b' , 0x02DA , 0x1e03 , 0x0000), - DEADTRANS( L'D' , 0x02DA , 0x1e0a , 0x0000), - DEADTRANS( L'd' , 0x02DA , 0x1e0b , 0x0000), - DEADTRANS( L'F' , 0x02DA , 0x1e1e , 0x0000), - DEADTRANS( L'f' , 0x02DA , 0x1e1f , 0x0000), - DEADTRANS( L'H' , 0x02DA , 0x1e22 , 0x0000), - DEADTRANS( L'h' , 0x02DA , 0x1e23 , 0x0000), - DEADTRANS( L'M' , 0x02DA , 0x1e40 , 0x0000), - DEADTRANS( L'm' , 0x02DA , 0x1e41 , 0x0000), - DEADTRANS( L'N' , 0x02DA , 0x1e44 , 0x0000), - DEADTRANS( L'n' , 0x02DA , 0x1e45 , 0x0000), - DEADTRANS( L'P' , 0x02DA , 0x1e56 , 0x0000), - DEADTRANS( L'p' , 0x02DA , 0x1e57 , 0x0000), - DEADTRANS( L'R' , 0x02DA , 0x1e58 , 0x0000), - DEADTRANS( L'r' , 0x02DA , 0x1e59 , 0x0000), - DEADTRANS( L'S' , 0x02DA , 0x1e60 , 0x0000), - DEADTRANS( L's' , 0x02DA , 0x1e61 , 0x0000), - DEADTRANS( L'T' , 0x02DA , 0x1e6a , 0x0000), - DEADTRANS( L't' , 0x02DA , 0x1e6b , 0x0000), - DEADTRANS( L'W' , 0x02DA , 0x1e86 , 0x0000), - DEADTRANS( L'w' , 0x02DA , 0x1e87 , 0x0000), - DEADTRANS( L'X' , 0x02DA , 0x1e8a , 0x0000), - DEADTRANS( L'x' , 0x02DA , 0x1e8b , 0x0000), - DEADTRANS( L'Y' , 0x02DA , 0x1e8e , 0x0000), - DEADTRANS( L'y' , 0x02DA , 0x1e8f , 0x0000), + + + // Ende der Taste zwei rechts neben der 0 // Anfang der Taste rechts neben dem »ß« - DEADTRANS( L' ' , 0x007E , 0x007E , 0x0000), //Tilde - DEADTRANS( 0x007E , 0x007E , 0x0303 , 0x0000), //2x für Combining - DEADTRANS( L'A' , 0x007E , 0x00c3 , 0x0000), - DEADTRANS( L'N' , 0x007E , 0x00d1 , 0x0000), - DEADTRANS( L'O' , 0x007E , 0x00d5 , 0x0000), - DEADTRANS( L'a' , 0x007E , 0x00e3 , 0x0000), - DEADTRANS( L'n' , 0x007E , 0x00f1 , 0x0000), - DEADTRANS( L'o' , 0x007E , 0x00f5 , 0x0000), - DEADTRANS( L'I' , 0x007E , 0x0128 , 0x0000), - DEADTRANS( L'i' , 0x007E , 0x0129 , 0x0000), - DEADTRANS( L'U' , 0x007E , 0x0168 , 0x0000), - DEADTRANS( L'u' , 0x007E , 0x0169 , 0x0000), - DEADTRANS( L'V' , 0x007E , 0x1e7c , 0x0000), - DEADTRANS( L'v' , 0x007E , 0x1e7d , 0x0000), - DEADTRANS( L'E' , 0x007E , 0x1ebc , 0x0000), - DEADTRANS( L'e' , 0x007E , 0x1ebd , 0x0000), - DEADTRANS( L'Y' , 0x007E , 0x1ef8 , 0x0000), - DEADTRANS( L'y' , 0x007E , 0x1ef9 , 0x0000), - - DEADTRANS( L' ' , 0x00AF , 0x00AF , 0x0000), //Makron - DEADTRANS( 0x00AF , 0x00AF , 0x0304 , 0x0000), //2x für Combining - DEADTRANS( L'A' , 0x00AF , 0x0100 , 0x0000), - DEADTRANS( L'a' , 0x00AF , 0x0101 , 0x0000), - DEADTRANS( L'E' , 0x00AF , 0x0112 , 0x0000), - DEADTRANS( L'e' , 0x00AF , 0x0113 , 0x0000), - DEADTRANS( L'I' , 0x00AF , 0x012a , 0x0000), - DEADTRANS( L'i' , 0x00AF , 0x012b , 0x0000), - DEADTRANS( L'O' , 0x00AF , 0x014c , 0x0000), - DEADTRANS( L'o' , 0x00AF , 0x014d , 0x0000), - DEADTRANS( L'U' , 0x00AF , 0x016a , 0x0000), - DEADTRANS( L'u' , 0x00AF , 0x016b , 0x0000), - DEADTRANS( L'Y' , 0x00AF , 0x0232 , 0x0000), - DEADTRANS( L'y' , 0x00AF , 0x0233 , 0x0000), - DEADTRANS( L'G' , 0x00AF , 0x1e20 , 0x0000), - DEADTRANS( L'g' , 0x00AF , 0x1e21 , 0x0000), + + - DEADTRANS( L' ' , 0x00A8 , 0x00A8 , 0x0000), //Diaräse - DEADTRANS( 0x00A8 , 0x00A8 , 0x0308 , 0x0000), //2x für Combining - DEADTRANS( L'A' , 0x00A8 , 0x00c4 , 0x0000), - DEADTRANS( L'E' , 0x00A8 , 0x00cb , 0x0000), - DEADTRANS( L'I' , 0x00A8 , 0x00cf , 0x0000), - DEADTRANS( L'O' , 0x00A8 , 0x00d6 , 0x0000), - DEADTRANS( L'U' , 0x00A8 , 0x00dc , 0x0000), - DEADTRANS( L'a' , 0x00A8 , 0x00e4 , 0x0000), - DEADTRANS( L'e' , 0x00A8 , 0x00eb , 0x0000), - DEADTRANS( L'i' , 0x00A8 , 0x00ef , 0x0000), - DEADTRANS( L'o' , 0x00A8 , 0x00f6 , 0x0000), - DEADTRANS( L'u' , 0x00A8 , 0x00fc , 0x0000), - DEADTRANS( L'y' , 0x00A8 , 0x0177 , 0x0000), - DEADTRANS( L'Y' , 0x00A8 , 0x0178 , 0x0000), - DEADTRANS( L'H' , 0x00A8 , 0x1e26 , 0x0000), - DEADTRANS( L'h' , 0x00A8 , 0x1e27 , 0x0000), - DEADTRANS( L'W' , 0x00A8 , 0x1e84 , 0x0000), - DEADTRANS( L'w' , 0x00A8 , 0x1e85 , 0x0000), - DEADTRANS( L'X' , 0x00A8 , 0x1e8c , 0x0000), - DEADTRANS( L'x' , 0x00A8 , 0x1e8d , 0x0000), - DEADTRANS( L't' , 0x00A8 , 0x1e97 , 0x0000), - - DEADTRANS( L' ' , 0x002F , 0x002F , 0x0000), //Schrägstrich - DEADTRANS( 0x002F , 0x002F , 0x0337 , 0x0000), //2x für Combining - DEADTRANS( L'O' , 0x002F , 0x00d8 , 0x0000), - DEADTRANS( L'o' , 0x002F , 0x00f8 , 0x0000), - DEADTRANS( L'L' , 0x002F , 0x0141 , 0x0000), - DEADTRANS( L'l' , 0x002F , 0x0142 , 0x0000), + + DEADTRANS( L' ' , 0x02DD , 0x02DD , 0x0000), //Doppel Akut DEADTRANS( 0x02DD , 0x02DD , 0x030B , 0x0000), //2x für Combining diff --git a/windows/kbdneo2/Quelldateien/kbdneo2.h b/windows/kbdneo2/Quelldateien/kbdneo2.h index 55df595..abf0517 100644 --- a/windows/kbdneo2/Quelldateien/kbdneo2.h +++ b/windows/kbdneo2/Quelldateien/kbdneo2.h @@ -30,76 +30,74 @@ \****+-------+_+----------+----------+----------+----------+----------+----------+*/ // Tastenumbelegung für Neo 2.0 ; sonstige Tastenzuordnung siehe kbd.h #undef T0D -#define T0D _EQ( OEM_2 ) +#define T0D _EQ( OEM_2 ) #undef T10 -#define T10 _EQ( 'X' ) +#define T10 _EQ( 'X' ) #undef T11 -#define T11 _EQ( 'V' ) +#define T11 _EQ( 'V' ) #undef T12 -#define T12 _EQ( 'L' ) +#define T12 _EQ( 'L' ) #undef T13 -#define T13 _EQ( 'C' ) +#define T13 _EQ( 'C' ) #undef T14 -#define T14 _EQ( 'W' ) +#define T14 _EQ( 'W' ) #undef T15 -#define T15 _EQ( 'K' ) +#define T15 _EQ( 'K' ) #undef T16 -#define T16 _EQ( 'H' ) +#define T16 _EQ( 'H' ) #undef T17 -#define T17 _EQ( 'G' ) +#define T17 _EQ( 'G' ) #undef T18 -#define T18 _EQ( 'F' ) +#define T18 _EQ( 'F' ) #undef T19 -#define T19 _EQ( 'Q' ) +#define T19 _EQ( 'Q' ) #undef T1A -#define T1A _EQ( OEM_3 ) +#define T1A _EQ( OEM_3 ) #undef T1B -#define T1B _EQ( OEM_4 ) +#define T1B _EQ( OEM_4 ) #undef T1E -#define T1E _EQ( 'U' ) +#define T1E _EQ( 'U' ) #undef T1F -#define T1F _EQ( 'I' ) +#define T1F _EQ( 'I' ) #undef T20 -#define T20 _EQ( 'A' ) +#define T20 _EQ( 'A' ) #undef T21 -#define T21 _EQ( 'E' ) +#define T21 _EQ( 'E' ) #undef T22 -#define T22 _EQ( 'O' ) +#define T22 _EQ( 'O' ) #undef T23 -#define T23 _EQ( 'S' ) +#define T23 _EQ( 'S' ) #undef T24 -#define T24 _EQ( 'N' ) +#define T24 _EQ( 'N' ) #undef T25 -#define T25 _EQ( 'R' ) +#define T25 _EQ( 'R' ) #undef T26 -#define T26 _EQ( 'T' ) +#define T26 _EQ( 'T' ) #undef T27 -#define T27 _EQ( 'D' ) +#define T27 _EQ( 'D' ) #undef T28 -#define T28 _EQ( 'Y' ) +#define T28 _EQ( 'Y' ) #undef T29 -#define T29 _EQ( OEM_1 ) +#define T29 _EQ( OEM_1 ) #undef T2B -#define T2B _EQ( KANA ) // Mod 3 +#define T2B _EQ( OEM_102 ) // Mod 3 #undef T2C -#define T2C _EQ( OEM_5 ) +#define T2C _EQ( OEM_5 ) #undef T2D -#define T2D _EQ( OEM_6 ) +#define T2D _EQ( OEM_6 ) #undef T2E -#define T2E _EQ( OEM_7 ) +#define T2E _EQ( OEM_7 ) #undef T2F -#define T2F _EQ( 'P' ) +#define T2F _EQ( 'P' ) #undef T30 -#define T30 _EQ( 'Z' ) +#define T30 _EQ( 'Z' ) #undef T31 -#define T31 _EQ( 'B' ) +#define T31 _EQ( 'B' ) #undef T35 -#define T35 _EQ( 'J' ) +#define T35 _EQ( 'J' ) #undef T3A -#define T3A _EQ( KANA )// Mod 3 +#define T3A _EQ( OEM_102 ) // Mod 3 #undef X38 -//#define X38 _EQ( RMENU )// Mod 4 -#define X38 _EQ( OEM_102 ) +#define X38 _EQ( OEM_8 ) // Mod 4 #undef T56 -//#define T56 _EQ( RMENU )// Mod 4 -#define T56 _EQ( OEM_102 ) \ No newline at end of file +#define T56 _EQ( OEM_8 ) // Mod 4 \ No newline at end of file diff --git a/windows/kbdneo2/Treiber/32bit_Windows/kbdneo2.dll b/windows/kbdneo2/Treiber/32bit_Windows/kbdneo2.dll index 2c055af..6934d19 100644 Binary files a/windows/kbdneo2/Treiber/32bit_Windows/kbdneo2.dll and b/windows/kbdneo2/Treiber/32bit_Windows/kbdneo2.dll differ diff --git a/windows/kbdneo2/Treiber/64bit_Windows/kbdneo2.dll b/windows/kbdneo2/Treiber/64bit_Windows/kbdneo2.dll index 6cd162b..497d480 100644 Binary files a/windows/kbdneo2/Treiber/64bit_Windows/kbdneo2.dll and b/windows/kbdneo2/Treiber/64bit_Windows/kbdneo2.dll differ diff --git "a/windows/kbdneo2/Treiber/AHK_f\303\274r_kbdneo2/kbdneo2.ahk" "b/windows/kbdneo2/Treiber/AHK_f\303\274r_kbdneo2/kbdneo2.ahk" index ac0ef42..dca73c0 100644 --- "a/windows/kbdneo2/Treiber/AHK_f\303\274r_kbdneo2/kbdneo2.ahk" +++ "b/windows/kbdneo2/Treiber/AHK_f\303\274r_kbdneo2/kbdneo2.ahk" @@ -149,9 +149,15 @@ ToggleMod2Lock() { ToggleMod4Lock() { global if (isMod4Locked) - isMod4Locked := 0 + { + isMod4Locked := 0 + send {vk15} + } else + { isMod4Locked := 1 + send {vk15} + } } doMod4() { @@ -180,8 +186,7 @@ return ~*v:: if (isMod4Active and !isMod3Pressed) -Ifwinactive ahk_class Notepad++ -Sendinput {Blind}{BACKSPACE}{BACKSPACE} +Sendinput {Blind}{BACKSPACE} return ~*l:: @@ -226,8 +231,7 @@ return ~*ö:: if (isMod4Active and !isMod3Pressed) -Ifwinactive ahk_class Notepad++ -Sendinput {Blind}{BACKSPACE}{TAB} +Sendinput {Blind}{TAB} return ~*ä:: @@ -237,8 +241,7 @@ return ~*p:: if (isMod4Active and !isMod3Pressed) -Ifwinactive ahk_class Notepad++ -Sendinput {Blind}{BACKSPACE}{ENTER} +Send {Blind}{ENTER} return -- cgit v1.2.3