[Quick Accent] Add Maltese language (#39473)

# **PR inspired by: #32862**

<!-- Enter a brief description/summary of your PR here. What does it
fix/what does it change/how was it tested (even manually, if necessary)?
-->
## Summary of the Pull Request
Adds [Maltese latin alphabet
symbols](https://en.wikipedia.org/wiki/Maltese_language#Alphabet) (ċ, ġ,
ħ, ż), [grave accented
vowels](https://en.wikipedia.org/wiki/Grave_accent#Stress) (à, è, ì, ò,
ù) and the Euro (€) sign [Malta's currency] as a supported language into
Quick Accent.

![2025-05-15 22_04_53-PowerToys Settings-Quick
Accent-Maltese](https://github.com/user-attachments/assets/fb010b5e-abe3-4cf2-8191-f7ecf551d429)


![Quick-Accent-Maltese-Preview](https://github.com/user-attachments/assets/688588a2-34d5-4f3b-bd76-752d952ee7d8)

<!-- Please review the items on the PR checklist before submitting-->
## PR Checklist

- [x] **Closes:** #39472
- [x] **Communication:** I've
[proposed](https://github.com/microsoft/PowerToys/issues/28769#issuecomment-2884852675)
to add this feature in the thread
- [x] **Tests:** No need
- [x] **Localization:** All end user facing strings can be localized
- [x] **Dev docs:** No need
- [x] **New binaries:** None
- [x] **Documentation updated:** No need

<!-- Describe how you validated the behavior. Add automated tests
wherever possible, but list manual validation steps taken as well -->
## Validation Steps Performed
Observing
This commit is contained in:
rovercoder
2025-08-22 03:31:42 +02:00
committed by GitHub
parent 76f5fabaa3
commit 12537de422
4 changed files with 26 additions and 0 deletions

View File

@@ -1008,6 +1008,7 @@ Mso
msrc msrc
msstore msstore
msvcp msvcp
MT
MTND MTND
MULTIPLEUSE MULTIPLEUSE
multizone multizone

View File

@@ -35,6 +35,7 @@ namespace PowerAccent.Core
KU, KU,
LT, LT,
MK, MK,
MT,
MI, MI,
NL, NL,
NO, NO,
@@ -98,6 +99,7 @@ namespace PowerAccent.Core
Language.KU => GetDefaultLetterKeyKU(letter), // Kurdish Language.KU => GetDefaultLetterKeyKU(letter), // Kurdish
Language.LT => GetDefaultLetterKeyLT(letter), // Lithuanian Language.LT => GetDefaultLetterKeyLT(letter), // Lithuanian
Language.MK => GetDefaultLetterKeyMK(letter), // Macedonian Language.MK => GetDefaultLetterKeyMK(letter), // Macedonian
Language.MT => GetDefaultLetterKeyMT(letter), // Maltese
Language.MI => GetDefaultLetterKeyMI(letter), // Maori Language.MI => GetDefaultLetterKeyMI(letter), // Maori
Language.NL => GetDefaultLetterKeyNL(letter), // Dutch Language.NL => GetDefaultLetterKeyNL(letter), // Dutch
Language.NO => GetDefaultLetterKeyNO(letter), // Norwegian Language.NO => GetDefaultLetterKeyNO(letter), // Norwegian
@@ -155,6 +157,7 @@ namespace PowerAccent.Core
.Union(GetDefaultLetterKeyLT(letter)) .Union(GetDefaultLetterKeyLT(letter))
.Union(GetDefaultLetterKeyROM(letter)) .Union(GetDefaultLetterKeyROM(letter))
.Union(GetDefaultLetterKeyMK(letter)) .Union(GetDefaultLetterKeyMK(letter))
.Union(GetDefaultLetterKeyMT(letter))
.Union(GetDefaultLetterKeyMI(letter)) .Union(GetDefaultLetterKeyMI(letter))
.Union(GetDefaultLetterKeyNL(letter)) .Union(GetDefaultLetterKeyNL(letter))
.Union(GetDefaultLetterKeyNO(letter)) .Union(GetDefaultLetterKeyNO(letter))
@@ -839,6 +842,24 @@ namespace PowerAccent.Core
}; };
} }
// Maltese
private static string[] GetDefaultLetterKeyMT(LetterKey letter)
{
return letter switch
{
LetterKey.VK_A => new[] { "à" },
LetterKey.VK_C => new[] { "ċ" },
LetterKey.VK_E => new[] { "è", "€" },
LetterKey.VK_G => new[] { "ġ" },
LetterKey.VK_H => new[] { "ħ" },
LetterKey.VK_I => new[] { "ì" },
LetterKey.VK_O => new[] { "ò" },
LetterKey.VK_U => new[] { "ù" },
LetterKey.VK_Z => new[] { "ż" },
_ => Array.Empty<string>(),
};
}
// Norwegian // Norwegian
private static string[] GetDefaultLetterKeyNO(LetterKey letter) private static string[] GetDefaultLetterKeyNO(LetterKey letter)
{ {

View File

@@ -3564,6 +3564,9 @@ Activate by holding the key for the character you want to add an accent to, then
<data name="QuickAccent_SelectedLanguage_Macedonian" xml:space="preserve"> <data name="QuickAccent_SelectedLanguage_Macedonian" xml:space="preserve">
<value>Macedonian</value> <value>Macedonian</value>
</data> </data>
<data name="QuickAccent_SelectedLanguage_Maltese" xml:space="preserve">
<value>Maltese</value>
</data>
<data name="QuickAccent_SelectedLanguage_Maori" xml:space="preserve"> <data name="QuickAccent_SelectedLanguage_Maori" xml:space="preserve">
<value>Maori</value> <value>Maori</value>
</data> </data>

View File

@@ -52,6 +52,7 @@ namespace Microsoft.PowerToys.Settings.UI.ViewModels
new PowerAccentLanguageModel("KU", "QuickAccent_SelectedLanguage_Kurdish", LanguageGroup), new PowerAccentLanguageModel("KU", "QuickAccent_SelectedLanguage_Kurdish", LanguageGroup),
new PowerAccentLanguageModel("LT", "QuickAccent_SelectedLanguage_Lithuanian", LanguageGroup), new PowerAccentLanguageModel("LT", "QuickAccent_SelectedLanguage_Lithuanian", LanguageGroup),
new PowerAccentLanguageModel("MK", "QuickAccent_SelectedLanguage_Macedonian", LanguageGroup), new PowerAccentLanguageModel("MK", "QuickAccent_SelectedLanguage_Macedonian", LanguageGroup),
new PowerAccentLanguageModel("MT", "QuickAccent_SelectedLanguage_Maltese", LanguageGroup),
new PowerAccentLanguageModel("MI", "QuickAccent_SelectedLanguage_Maori", LanguageGroup), new PowerAccentLanguageModel("MI", "QuickAccent_SelectedLanguage_Maori", LanguageGroup),
new PowerAccentLanguageModel("NO", "QuickAccent_SelectedLanguage_Norwegian", LanguageGroup), new PowerAccentLanguageModel("NO", "QuickAccent_SelectedLanguage_Norwegian", LanguageGroup),
new PowerAccentLanguageModel("PI", "QuickAccent_SelectedLanguage_Pinyin", LanguageGroup), new PowerAccentLanguageModel("PI", "QuickAccent_SelectedLanguage_Pinyin", LanguageGroup),