diff --git a/.github/actions/spell-check/expect.txt b/.github/actions/spell-check/expect.txt index e80981840c32..e50bf8aa1fea 100644 --- a/.github/actions/spell-check/expect.txt +++ b/.github/actions/spell-check/expect.txt @@ -644,6 +644,7 @@ imageresizerinput imageresizersettings imagingdevices ime +Indo inetcpl Infobar INFOEXAMPLE diff --git a/src/modules/poweraccent/PowerAccent.Core/Languages.cs b/src/modules/poweraccent/PowerAccent.Core/Languages.cs index 2838fe958890..6647221b603c 100644 --- a/src/modules/poweraccent/PowerAccent.Core/Languages.cs +++ b/src/modules/poweraccent/PowerAccent.Core/Languages.cs @@ -39,6 +39,7 @@ public enum Language NL, NO, PI, + PIE, PL, PT, RO, @@ -100,6 +101,7 @@ public static string[] GetDefaultLetterKey(LetterKey letter, Language[] langs) Language.NL => GetDefaultLetterKeyNL(letter), // Dutch Language.NO => GetDefaultLetterKeyNO(letter), // Norwegian Language.PI => GetDefaultLetterKeyPI(letter), // Pinyin + Language.PIE => GetDefaultLetterKeyPIE(letter), // Proto-Indo-European Language.PL => GetDefaultLetterKeyPL(letter), // Polish Language.PT => GetDefaultLetterKeyPT(letter), // Portuguese Language.RO => GetDefaultLetterKeyRO(letter), // Romanian @@ -155,6 +157,7 @@ private static string[] GetDefaultLetterKeyALL(LetterKey letter) .Union(GetDefaultLetterKeyNL(letter)) .Union(GetDefaultLetterKeyNO(letter)) .Union(GetDefaultLetterKeyPI(letter)) + .Union(GetDefaultLetterKeyPIE(letter)) .Union(GetDefaultLetterKeyPL(letter)) .Union(GetDefaultLetterKeyPT(letter)) .Union(GetDefaultLetterKeyRO(letter)) @@ -463,6 +466,24 @@ private static string[] GetDefaultLetterKeyPI(LetterKey letter) }; } + // Proto-Indo-European + private static string[] GetDefaultLetterKeyPIE(LetterKey letter) + { + return letter switch + { + LetterKey.VK_A => new[] { "ā" }, + LetterKey.VK_E => new[] { "ē" }, + LetterKey.VK_O => new[] { "ō" }, + LetterKey.VK_K => new[] { "ḱ" }, + LetterKey.VK_G => new[] { "ǵ" }, + LetterKey.VK_R => new[] { "r̥" }, + LetterKey.VK_L => new[] { "l̥" }, + LetterKey.VK_M => new[] { "m̥" }, + LetterKey.VK_N => new[] { "n̥" }, + _ => Array.Empty(), + }; + } + // Turkish private static string[] GetDefaultLetterKeyTK(LetterKey letter) { diff --git a/src/settings-ui/Settings.UI/Strings/en-us/Resources.resw b/src/settings-ui/Settings.UI/Strings/en-us/Resources.resw index 7f3b5fdabab7..789a94f004f3 100644 --- a/src/settings-ui/Settings.UI/Strings/en-us/Resources.resw +++ b/src/settings-ui/Settings.UI/Strings/en-us/Resources.resw @@ -3672,6 +3672,9 @@ Activate by holding the key for the character you want to add an accent to, then Pinyin + + Proto Indo European + Polish diff --git a/src/settings-ui/Settings.UI/ViewModels/PowerAccentViewModel.cs b/src/settings-ui/Settings.UI/ViewModels/PowerAccentViewModel.cs index 0c4f9db65092..7da5c4ecfbbf 100644 --- a/src/settings-ui/Settings.UI/ViewModels/PowerAccentViewModel.cs +++ b/src/settings-ui/Settings.UI/ViewModels/PowerAccentViewModel.cs @@ -55,6 +55,7 @@ public class PowerAccentViewModel : Observable new PowerAccentLanguageModel("MI", "QuickAccent_SelectedLanguage_Maori", LanguageGroup), new PowerAccentLanguageModel("NO", "QuickAccent_SelectedLanguage_Norwegian", LanguageGroup), new PowerAccentLanguageModel("PI", "QuickAccent_SelectedLanguage_Pinyin", LanguageGroup), + new PowerAccentLanguageModel("PIE", "QuickAccent_SelectedLanguage_Proto_Indo_European", LanguageGroup), new PowerAccentLanguageModel("PL", "QuickAccent_SelectedLanguage_Polish", LanguageGroup), new PowerAccentLanguageModel("PT", "QuickAccent_SelectedLanguage_Portuguese", LanguageGroup), new PowerAccentLanguageModel("RO", "QuickAccent_SelectedLanguage_Romanian", LanguageGroup),