2022-09-29 16:28:14 +02:00
|
|
|
|
// Copyright (c) Microsoft Corporation
|
|
|
|
|
|
// The Microsoft Corporation licenses this file to you under the MIT license.
|
|
|
|
|
|
// See the LICENSE file in the project root for more information.
|
|
|
|
|
|
|
|
|
|
|
|
namespace PowerAccent.Core
|
|
|
|
|
|
{
|
|
|
|
|
|
using System;
|
|
|
|
|
|
using PowerToys.PowerAccentKeyboardService;
|
|
|
|
|
|
|
|
|
|
|
|
public enum Language
|
|
|
|
|
|
{
|
|
|
|
|
|
ALL,
|
2022-11-25 13:43:24 +01:00
|
|
|
|
CA,
|
2022-09-29 16:28:14 +02:00
|
|
|
|
CUR,
|
2022-11-16 16:38:28 +01:00
|
|
|
|
CY,
|
2022-09-29 16:28:14 +02:00
|
|
|
|
CZ,
|
|
|
|
|
|
DE,
|
|
|
|
|
|
FR,
|
2022-11-16 16:38:28 +01:00
|
|
|
|
HR,
|
2022-09-29 16:28:14 +02:00
|
|
|
|
HU,
|
|
|
|
|
|
IS,
|
|
|
|
|
|
IT,
|
2022-11-25 19:38:29 +02:00
|
|
|
|
KU,
|
2022-09-29 16:28:14 +02:00
|
|
|
|
MI,
|
2022-11-16 16:38:28 +01:00
|
|
|
|
NL,
|
2022-09-29 16:28:14 +02:00
|
|
|
|
PI,
|
|
|
|
|
|
PL,
|
2022-10-16 18:36:16 +01:00
|
|
|
|
PT,
|
2022-09-29 16:28:14 +02:00
|
|
|
|
RO,
|
|
|
|
|
|
SK,
|
|
|
|
|
|
SP,
|
2022-11-26 19:46:07 +01:00
|
|
|
|
SR,
|
2022-11-16 16:38:28 +01:00
|
|
|
|
SV,
|
2022-09-29 16:28:14 +02:00
|
|
|
|
TK,
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
internal class Languages
|
|
|
|
|
|
{
|
2022-11-18 00:15:53 +08:00
|
|
|
|
public static string[] GetDefaultLetterKey(LetterKey letter, Language lang)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (lang)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Language.ALL: return GetDefaultLetterKeyALL(letter); // ALL
|
2022-11-25 13:43:24 +01:00
|
|
|
|
case Language.CA: return GetDefaultLetterKeyCA(letter); // Catalan
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case Language.CUR: return GetDefaultLetterKeyCUR(letter); // Currency
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case Language.CY: return GetDefaultLetterKeyCY(letter); // Welsh
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case Language.CZ: return GetDefaultLetterKeyCZ(letter); // Czech
|
|
|
|
|
|
case Language.DE: return GetDefaultLetterKeyDE(letter); // German
|
|
|
|
|
|
case Language.FR: return GetDefaultLetterKeyFR(letter); // French
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case Language.HR: return GetDefaultLetterKeyHR(letter); // Croatian
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case Language.HU: return GetDefaultLetterKeyHU(letter); // Hungarian
|
|
|
|
|
|
case Language.IS: return GetDefaultLetterKeyIS(letter); // Iceland
|
|
|
|
|
|
case Language.IT: return GetDefaultLetterKeyIT(letter); // Italian
|
2022-11-25 19:38:29 +02:00
|
|
|
|
case Language.KU: return GetDefaultLetterKeyKU(letter); // Kurdish
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case Language.MI: return GetDefaultLetterKeyMI(letter); // Maori
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case Language.NL: return GetDefaultLetterKeyNL(letter); // Dutch
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case Language.PI: return GetDefaultLetterKeyPI(letter); // Pinyin
|
|
|
|
|
|
case Language.PL: return GetDefaultLetterKeyPL(letter); // Polish
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case Language.PT: return GetDefaultLetterKeyPT(letter); // Portuguese
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case Language.RO: return GetDefaultLetterKeyRO(letter); // Romanian
|
|
|
|
|
|
case Language.SK: return GetDefaultLetterKeySK(letter); // Slovak
|
|
|
|
|
|
case Language.SP: return GetDefaultLetterKeySP(letter); // Spain
|
2022-11-26 19:46:07 +01:00
|
|
|
|
case Language.SR: return GetDefaultLetterKeySR(letter); // Serbian
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case Language.SV: return GetDefaultLetterKeySV(letter); // Swedish
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case Language.TK: return GetDefaultLetterKeyTK(letter); // Turkish
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
throw new ArgumentException("The language {0} is not know in this context", lang.ToString());
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// All
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyALL(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_0:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₀", "⁰" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_1:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₁", "¹" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_2:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₂", "²" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_3:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₃", "³" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_4:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₄", "⁴" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_5:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₅", "⁵" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_6:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₆", "⁶" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_7:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₇", "⁷" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_8:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₈", "⁸" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_9:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₉", "⁹" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "á", "à", "ä", "â", "ă", "å", "α", "ā", "ą", "ȧ", "ã", "æ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_B:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ḃ", "β" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_C:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ç", "ć", "ĉ", "č", "ċ", "¢", "χ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_D:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ď", "ḋ", "đ", "δ", "ð" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "é", "è", "ê", "ë", "ě", "ē", "ę", "ė", "ε", "η", "€" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_F:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ƒ", "ḟ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_G:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ğ", "ģ", "ǧ", "ġ", "ĝ", "ǥ", "γ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_H:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ḣ", "ĥ", "ħ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ï", "î", "í", "ì", "ī", "į", "i", "ı", "İ", "ι" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_J:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ĵ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_K:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ķ", "ǩ", "κ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_L:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ĺ", "ľ", "ļ", "ł", "₺", "λ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_M:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ṁ", "μ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_N:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ñ", "ń", "ŋ", "ň", "ņ", "ṅ", "ⁿ", "ν" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ô", "ó", "ö", "ő", "ò", "ō", "ȯ", "ø", "õ", "œ", "ω", "ο" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_P:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ṗ", "₽", "π", "φ", "ψ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_R:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ŕ", "ř", "ṙ", "₹", "ρ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_S:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ś", "ş", "š", "ș", "ṡ", "ŝ", "ß", "σ", "$" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_T:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ţ", "ť", "ț", "ṫ", "ŧ", "θ", "τ", "þ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "û", "ú", "ü", "ŭ", "ű", "ù", "ů", "ū", "ų", "υ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_W:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ẇ", "ŵ", "₩" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_X:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ẋ", "ξ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_Y:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ÿ", "ŷ", "ý", "ẏ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_Z:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ź", "ž", "ż", "ʒ", "ǯ", "ζ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_COMMA:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "¿", "¡", "∙", "₋", "⁻", "–", "≤", "≥", "≠", "≈", "≙", "±", "₊", "⁺" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Currencies (source: https://www.eurochange.co.uk/travel-money/world-currency-abbreviations-symbols-and-codes-travel-money)
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyCUR(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_B:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "฿", "в" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_C:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "¢", "₡", "č" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_D:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₫" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "€" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_F:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ƒ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_H:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₴" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_K:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₭" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_L:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ł" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_N:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "л" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_M:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₼" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_P:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "£", "₽" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_R:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₹", "៛", "﷼" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_S:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "$", "₪" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_T:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₮", "₺" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_W:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₩" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_Y:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "¥" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_Z:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "z" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-16 16:38:28 +01:00
|
|
|
|
// Croatian
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyHR(LetterKey letter)
|
2022-11-16 16:38:28 +01:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_C:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ć", "č" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_D:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "đ" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_S:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "š" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_Z:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ž" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-11-16 16:38:28 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-09-29 16:28:14 +02:00
|
|
|
|
// French
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyFR(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "à", "â", "á", "ä", "ã", "æ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_C:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ç" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "é", "è", "ê", "ë", "€" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "î", "ï", "í", "ì" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ô", "ö", "ó", "ò", "õ", "œ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "û", "ù", "ü", "ú" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_Y:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ÿ", "ý" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Iceland
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyIS(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "á", "æ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_D:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ð" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "é" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ó", "ö" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ú" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_Y:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ý" };
|
2022-11-15 11:10:28 +02:00
|
|
|
|
case LetterKey.VK_T:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "þ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Spain
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeySP(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "á" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "é", "€" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "í" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_N:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ñ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ó" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ú", "ü" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_COMMA:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "¿", "?" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-25 13:43:24 +01:00
|
|
|
|
// Catalan
|
|
|
|
|
|
private static string[] GetDefaultLetterKeyCA(LetterKey letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
|
|
|
|
|
return new string[] { "à", "á" };
|
|
|
|
|
|
case LetterKey.VK_C:
|
|
|
|
|
|
return new string[] { "ç" };
|
|
|
|
|
|
case LetterKey.VK_E:
|
|
|
|
|
|
return new string[] { "è", "é", "€" };
|
|
|
|
|
|
case LetterKey.VK_I:
|
|
|
|
|
|
return new string[] { "ì", "í", "ï" };
|
|
|
|
|
|
case LetterKey.VK_N:
|
|
|
|
|
|
return new string[] { "ñ" };
|
|
|
|
|
|
case LetterKey.VK_O:
|
|
|
|
|
|
return new string[] { "ò", "ó" };
|
|
|
|
|
|
case LetterKey.VK_U:
|
|
|
|
|
|
return new string[] { "ù", "ú", "ü" };
|
|
|
|
|
|
case LetterKey.VK_L:
|
|
|
|
|
|
return new string[] { "·" };
|
|
|
|
|
|
case LetterKey.VK_COMMA:
|
|
|
|
|
|
return new string[] { "¿", "?" };
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return Array.Empty<string>();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2022-09-29 16:28:14 +02:00
|
|
|
|
// Maori
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyMI(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ā" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ē" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ī" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ō" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_S:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "$" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ū" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-16 16:38:28 +01:00
|
|
|
|
// Dutch
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyNL(LetterKey letter)
|
2022-11-16 16:38:28 +01:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "á", "à", "ä" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_C:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ç" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "é", "è", "ë", "ê", "€" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "í", "ï", "î" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_N:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ñ" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ó", "ö", "ô" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ú", "ü", "û" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-11-16 16:38:28 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-09-29 16:28:14 +02:00
|
|
|
|
// Pinyin
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyPI(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ā", "á", "ǎ", "à", "a", "ɑ̄", "ɑ́", "ɑ̌", "ɑ̀" };
|
|
|
|
|
|
case LetterKey.VK_C:
|
|
|
|
|
|
return new string[] { "ĉ", "c" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ē", "é", "ě", "è", "e" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ī", "í", "ǐ", "ì", "i" };
|
|
|
|
|
|
case LetterKey.VK_M:
|
|
|
|
|
|
return new string[] { "m̄", "ḿ", "m̌", "m̀", "m" };
|
|
|
|
|
|
case LetterKey.VK_N:
|
|
|
|
|
|
return new string[] { "n̄", "ń", "ň", "ǹ", "n", "ŋ", "ŋ̄", "ŋ́", "ŋ̌", "ŋ̀" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ō", "ó", "ǒ", "ò", "o" };
|
|
|
|
|
|
case LetterKey.VK_S:
|
|
|
|
|
|
return new string[] { "ŝ", "s" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ū", "ú", "ǔ", "ù", "u" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_V:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ǖ", "ǘ", "ǚ", "ǜ", "ü" };
|
|
|
|
|
|
case LetterKey.VK_Y:
|
|
|
|
|
|
return new string[] { "¥", "y" };
|
|
|
|
|
|
case LetterKey.VK_Z:
|
|
|
|
|
|
return new string[] { "ẑ", "z" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Turkish
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyTK(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "â" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_C:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ç" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ë", "€" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_G:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ğ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ı", "İ", "î", };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ö", "ô" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_S:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ş" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_T:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₺" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ü", "û" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Polish
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyPL(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ą" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_C:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ć" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ę", "€" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_L:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ł" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_N:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ń" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ó" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_S:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ś" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_Z:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ż", "ź" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-10-16 18:36:16 +01:00
|
|
|
|
// Portuguese
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyPT(LetterKey letter)
|
2022-10-16 18:36:16 +01:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_0:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₀", "⁰" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_1:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₁", "¹" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_2:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₂", "²" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_3:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₃", "³" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_4:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₄", "⁴" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_5:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₅", "⁵" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_6:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₆", "⁶" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_7:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₇", "⁷" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_8:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₈", "⁸" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_9:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "₉", "⁹" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "á", "à", "â", "ã" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_C:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ç" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "é", "ê", "€" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "í" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ô", "ó", "õ" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_P:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "π" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_S:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "$" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ú" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
case LetterKey.VK_COMMA:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "≤", "≥", "≠", "≈", "≙", "±", "₊", "⁺" };
|
2022-10-16 18:36:16 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-10-16 18:36:16 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-09-29 16:28:14 +02:00
|
|
|
|
// Slovak
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeySK(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "á", "ä" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_C:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "č" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_D:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ď" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "é", "€" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "í" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_L:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ľ", "ĺ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_N:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ň" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ó", "ô" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_R:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ŕ" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_S:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "š" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_T:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ť" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ú" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_Y:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ý" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_Z:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ž" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Czech
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyCZ(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "á" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_C:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "č" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_D:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ď" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ě", "é" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "í" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_N:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ň" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ó" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_R:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ř" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_S:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "š" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_T:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ť" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ů", "ú" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_Y:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ý" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_Z:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ž" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// German
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyDE(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ä" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "€" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ö" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_S:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ß" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ü" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Hungarian
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyHU(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "á" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "é" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "í" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ó", "ő", "ö" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ú", "ű", "ü" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Romanian
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyRO(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ă", "â" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "î" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_S:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ș" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_T:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ț" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Italian
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyIT(LetterKey letter)
|
2022-09-29 16:28:14 +02:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "à" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "è", "é", "€" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ì", "í" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ò", "ó" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ù", "ú" };
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
2022-11-16 16:38:28 +01:00
|
|
|
|
|
2022-11-25 19:38:29 +02:00
|
|
|
|
// Kurdish
|
|
|
|
|
|
private static string[] GetDefaultLetterKeyKU(LetterKey letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_C:
|
|
|
|
|
|
return new string[] { "ç" };
|
|
|
|
|
|
case LetterKey.VK_E:
|
|
|
|
|
|
return new string[] { "ê", "€" };
|
|
|
|
|
|
case LetterKey.VK_I:
|
|
|
|
|
|
return new string[] { "î" };
|
|
|
|
|
|
case LetterKey.VK_O:
|
|
|
|
|
|
return new string[] { "ö", "ô" };
|
|
|
|
|
|
case LetterKey.VK_L:
|
|
|
|
|
|
return new string[] { "ł" };
|
|
|
|
|
|
case LetterKey.VK_N:
|
|
|
|
|
|
return new string[] { "ň" };
|
|
|
|
|
|
case LetterKey.VK_R:
|
|
|
|
|
|
return new string[] { "ř" };
|
|
|
|
|
|
case LetterKey.VK_S:
|
|
|
|
|
|
return new string[] { "ş" };
|
|
|
|
|
|
case LetterKey.VK_U:
|
|
|
|
|
|
return new string[] { "û", "ü" };
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return Array.Empty<string>();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-16 16:38:28 +01:00
|
|
|
|
// Welsh
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeyCY(LetterKey letter)
|
2022-11-16 16:38:28 +01:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "â" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_E:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ê" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_I:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "î" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ô" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_U:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "û" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_Y:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ŷ" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-11-16 16:38:28 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Swedish
|
2022-11-18 00:15:53 +08:00
|
|
|
|
private static string[] GetDefaultLetterKeySV(LetterKey letter)
|
2022-11-16 16:38:28 +01:00
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_A:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "å", "ä" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
case LetterKey.VK_O:
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return new string[] { "ö" };
|
2022-11-16 16:38:28 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-18 00:15:53 +08:00
|
|
|
|
return Array.Empty<string>();
|
2022-11-16 16:38:28 +01:00
|
|
|
|
}
|
2022-11-26 19:46:07 +01:00
|
|
|
|
|
|
|
|
|
|
// Serbian
|
|
|
|
|
|
private static string[] GetDefaultLetterKeySR(LetterKey letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
switch (letter)
|
|
|
|
|
|
{
|
|
|
|
|
|
case LetterKey.VK_C:
|
|
|
|
|
|
return new string[] { "ć", "č" };
|
|
|
|
|
|
case LetterKey.VK_D:
|
|
|
|
|
|
return new string[] { "đ" };
|
|
|
|
|
|
case LetterKey.VK_S:
|
|
|
|
|
|
return new string[] { "š" };
|
|
|
|
|
|
case LetterKey.VK_Z:
|
|
|
|
|
|
return new string[] { "ž" };
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return Array.Empty<string>();
|
|
|
|
|
|
}
|
2022-09-29 16:28:14 +02:00
|
|
|
|
}
|
|
|
|
|
|
}
|