diff --git a/converter/index.html b/converter/index.html index 68a1951..ac52d54 100644 --- a/converter/index.html +++ b/converter/index.html @@ -127,6 +127,7 @@

MalDuino + diff --git a/converter/js/converter.js b/converter/js/converter.js index eb796f7..2459d5a 100644 --- a/converter/js/converter.js +++ b/converter/js/converter.js @@ -228,6 +228,7 @@ class malduinoScriptConverter{ langFile = result; if(lang == "es_ES") keyboardCPP = "#define ADD_ALTGR\r\n"; if(lang == "de_DE") keyboardCPP = "#define ADD_ALTGR\r\n"; + if(lang == "de_CH") keyboardCPP = "#define ADD_ALTGR\r\n"; if(lang == "it_IT") keyboardCPP = "#define ADD_ALTGR\r\n"; if(lang == "sv_SE") keyboardCPP = "#define ADD_ALTGR\r\n"; if(lang == "fi_FI") keyboardCPP = "#define ADD_ALTGR\r\n"; diff --git a/converter/src/locales/de_CH.lang b/converter/src/locales/de_CH.lang new file mode 100644 index 0000000..6d94345 --- /dev/null +++ b/converter/src/locales/de_CH.lang @@ -0,0 +1,158 @@ +/* +* The following character can't be typed, as they are not ascii: +* ßüöä°§ÜÖIJ³€µ +* based on https://gist.github.com/Chr1s28/4b9cecd902107bdfbe07004dce3edef3 +*/ + +#define SHIFT 0x80 +const uint8_t _asciimap[128] = +{ + 0x00, // NUL 0 + 0x00, // SOH + 0x00, // STX + 0x00, // ETX + 0x00, // EOT + 0x00, // ENQ + 0x00, // ACK + 0x00, // BEL + 0x2a, // BS Backspace + 0x2b, // TAB Tab + 0x28, // LF Enter 10 + 0x00, // VT + 0x00, // FF + 0x00, // CR + 0x00, // SO + 0x00, // SI + 0x00, // DEL + 0x00, // DC1 + 0x00, // DC2 + 0x00, // DC3 + 0x00, // DC4 20 + 0x00, // NAK + 0x00, // SYN + 0x00, // ETB + 0x00, // CAN + 0x00, // EM + 0x00, // SUB + 0x00, // ESC + 0x00, // FS + 0x00, // GS + 0x00, // RS 30 + 0x00, // US + + 0x2c, // ' + 0x30|SHIFT, // ! + 0x1f|SHIFT, // " + 0x20, // # 35 + 0x31, // $ 36 + 0x22|SHIFT, // % + 0x23|SHIFT, // & + 0x2d, // ' + 0x25|SHIFT, // ( 40 + 0x26|SHIFT, // ) + 0x20|SHIFT, // * + 0x1e|SHIFT, // + + 0x36, // , + 0x38, // - + 0x37, // . + 0x24|SHIFT, // / + 0x27, // 0 + 0x1e, // 1 + 0x1f, // 2 50 + 0x20, // 3 + 0x21, // 4 + 0x22, // 5 + 0x23, // 6 + 0x24, // 7 + 0x25, // 8 + 0x26, // 9 + 0x37|SHIFT, // : + 0x36|SHIFT, // ; + 0x64, // < 60 + 0x27|SHIFT, // = + 0x64|SHIFT, // > + 0x2d|SHIFT, // ? + 0x1f, // @ 64 + 0x04|SHIFT, // A + 0x05|SHIFT, // B + 0x06|SHIFT, // C + 0x07|SHIFT, // D + 0x08|SHIFT, // E + 0x09|SHIFT, // F 70 + 0x0a|SHIFT, // G + 0x0b|SHIFT, // H + 0x0c|SHIFT, // I + 0x0d|SHIFT, // J + 0x0e|SHIFT, // K + 0x0f|SHIFT, // L + 0x10|SHIFT, // M + 0x11|SHIFT, // N + 0x12|SHIFT, // O + 0x13|SHIFT, // P 80 + 0x14|SHIFT, // Q + 0x15|SHIFT, // R + 0x16|SHIFT, // S + 0x17|SHIFT, // T + 0x18|SHIFT, // U + 0x19|SHIFT, // V + 0x1a|SHIFT, // W + 0x1b|SHIFT, // X + 0x1d|SHIFT, // Y + 0x1c|SHIFT, // Z 90 + 0x2f, // [ + 0x64, // bslash + 0x30, // ] 93 + 0x2e, // ^ + 0x38|SHIFT, // _ + 0x2e|SHIFT, // ` + 0x04, // a + 0x05, // b + 0x06, // c + 0x07, // d 100 + 0x08, // e + 0x09, // f + 0x0a, // g + 0x0b, // h + 0x0c, // i + 0x0d, // j + 0x0e, // k + 0x0f, // l + 0x10, // m + 0x11, // n 110 + 0x12, // o + 0x13, // p + 0x14, // q + 0x15, // r + 0x16, // s + 0x17, // t + 0x18, // u + 0x19, // v + 0x1a, // w + 0x1b, // x 120 + 0x1d, // y + 0x1c, // z + 0x34, // { + 0x24, // | + 0x31, // } 125 + 0x2e, // ~ + 0 // DEL 127 +}; + +// Init var +bool _altGrMap[128]; +bool _altFine = false; + +// Individually define all needed char +void initAltGr() { + _altFine = true; + + _altGrMap[126] = true; // ~ + _altGrMap[123] = true; // { + _altGrMap[91] = true; // [ + _altGrMap[93] = true; // ] + _altGrMap[125] = true; // } + _altGrMap[92] = true; // bslash + _altGrMap[124] = true; // | + _altGrMap[35] = true; // # + _altGrMap[64] = true; // @ + } \ No newline at end of file diff --git a/converter/src/locales/localeList b/converter/src/locales/localeList index 2b7d613..1ffe100 100644 --- a/converter/src/locales/localeList +++ b/converter/src/locales/localeList @@ -1,12 +1,18 @@ -en_US -de_DE -fr_FR be_BE -es_ES -fi_FI cz_CZ da_DK +de_DE +de_DE +en_US +en_UK +es_ES +fi_FI +fr_FR +it_IT pt_PT tr_TR -it_IT -sample +cs_CZ_QWERTY +cs_CZ_QWERTZ +pt_BR +pt_PT +sv_SE \ No newline at end of file