From f5c6f50e30af1ef94a14cb2b206c05d03e41e9f1 Mon Sep 17 00:00:00 2001 From: Dave Rayment Date: Wed, 8 Jul 2026 06:56:28 +0100 Subject: [PATCH] [Quick Accent] Add Belarusian Latin and Belarusian Cyrillic character sets (#48344) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary of the Pull Request This PR adds support for Łacinka (Belarusian Latin) and Belarusian Cyrillic character sets to Quick Accent. ## PR Checklist - [x] Closes: #36571 - [ ] **Communication:** I've discussed this with core contributors already. If the work hasn't been agreed, this work might be rejected - [ ] **Tests:** Added/updated and all pass - [x] **Localization:** All end-user-facing strings can be localized - [ ] **Dev docs:** Added/updated - [ ] **New binaries:** Added on the required places - [ ] [JSON for signing](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ESRPSigning_core.json) for new binaries - [ ] [WXS for installer](https://github.com/microsoft/PowerToys/blob/main/installer/PowerToysSetup/Product.wxs) for new binaries and localization folder - [ ] [YML for CI pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ci/templates/build-powertoys-steps.yml) for new test projects - [ ] [YML for signed pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/release.yml) - [ ] **Documentation updated:** If checked, please file a pull request on [our docs repo](https://github.com/MicrosoftDocs/windows-uwp/tree/docs/hub/powertoys) and link it here: #xxx ## Detailed Description of the Pull Request / Additional comments This is a standard character set addition, with new entries in the Language enum, the sets themselves added to CharacterMappings.All and new resource strings for the user-facing names in the Settings page. ## Validation Steps Performed (Manual tests.) - Confirmed that the new character set entries were present in the Quick Accent settings page list. - Tested that each of the characters in both the sets could be selected and typed. --- .github/actions/spell-check/expect.txt | 1 + .../PowerAccent.Common/CharacterMappings.cs | 23 +++++++++++++++++++ .../PowerAccent.Common/Language.cs | 2 ++ .../Settings.UI/Strings/en-us/Resources.resw | 6 +++++ 4 files changed, 32 insertions(+) diff --git a/.github/actions/spell-check/expect.txt b/.github/actions/spell-check/expect.txt index 2a00eeaa2d..038cc94539 100644 --- a/.github/actions/spell-check/expect.txt +++ b/.github/actions/spell-check/expect.txt @@ -119,6 +119,7 @@ Badmode Badparam bbwe BCIE +Belarusian BESTEFFORT bezelled bhid diff --git a/src/modules/poweraccent/PowerAccent.Common/CharacterMappings.cs b/src/modules/poweraccent/PowerAccent.Common/CharacterMappings.cs index b398941166..c3c1affaf2 100644 --- a/src/modules/poweraccent/PowerAccent.Common/CharacterMappings.cs +++ b/src/modules/poweraccent/PowerAccent.Common/CharacterMappings.cs @@ -83,6 +83,27 @@ public static class CharacterMappings [LetterKey.VK_BACKSLASH] = ["`", "~"], }), + // Belarusian Latin + new(Language.BE, "Belarusian", LanguageGroup.Language, new Dictionary + { + [LetterKey.VK_C] = ["ć", "č"], + [LetterKey.VK_L] = ["ł"], + [LetterKey.VK_N] = ["ń"], + [LetterKey.VK_S] = ["ś", "š"], + [LetterKey.VK_U] = ["ŭ"], + [LetterKey.VK_Z] = ["ź", "ž"], + [LetterKey.VK_COMMA] = ["„", "“", "«", "»"], + }), + + new(Language.BE_CYRL, "Belarusian_Cyrillic", LanguageGroup.Language, new Dictionary + { + [LetterKey.VK_E] = ["ё"], + [LetterKey.VK_G] = ["ґ"], + [LetterKey.VK_I] = ["і"], + [LetterKey.VK_U] = ["ў"], + [LetterKey.VK_COMMA] = ["’", "„", "“", "«", "»"], + }), + new(Language.BG, "Bulgarian", LanguageGroup.Language, new Dictionary { [LetterKey.VK_I] = ["й"], @@ -717,6 +738,8 @@ public static class CharacterMappings [ // Spoken languages. + Language.BE, + Language.BE_CYRL, Language.BG, Language.CA, Language.CRH, diff --git a/src/modules/poweraccent/PowerAccent.Common/Language.cs b/src/modules/poweraccent/PowerAccent.Common/Language.cs index 96176ccf37..3fa45f4861 100644 --- a/src/modules/poweraccent/PowerAccent.Common/Language.cs +++ b/src/modules/poweraccent/PowerAccent.Common/Language.cs @@ -7,6 +7,8 @@ namespace PowerAccent.Common; public enum Language { SPECIAL, + BE, + BE_CYRL, BG, CA, CRH, 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 7bfda5cdf2..fe8c7d514a 100644 --- a/src/settings-ui/Settings.UI/Strings/en-us/Resources.resw +++ b/src/settings-ui/Settings.UI/Strings/en-us/Resources.resw @@ -3591,6 +3591,12 @@ Activate by holding the key for the character you want to add an accent to, then Special Characters + + Belarusian Latin + + + Belarusian Cyrillic + Bulgarian