לא ניתן להסיר את פריסת לוח המקשים של השפה ב- Windows 10


כמה פעמים ב- Windows 10 שמתי לב באג מוזר כאשר שפות נוספות מופיעות ברשימת פריסות המקלדת של סרגל השפה. לדוגמה, היו לי 2 שפות מותקנות במחשב הנייד שלי: גרמנית ואנגלית. אבל לאחר התקנת עדכון Windows 10, שתי שפות נוספות הופיעו ברשימת השפות - אנגלית (בריטניה) ואנגלית (קנדה), אם כי אני בטוח שלא הוספתי אותם. ו- Windows אינו מאפשר לך למחוק שפות קלט נוספות (לחצן הסר מופיע באפור). עכשיו אני צריך לעבור בין 4 פריסות מקלדת במקום 2, וזה מאוד לא נוח!

בואו stakealookathowtoremoveunwantedkeyboardlayoutsinWindows10andWindows11.

ב- Windows 10, בדרך כלל ניתן להסיר כל שפת פריסת לוח מקשים שאינה משמשת כשפת ברירת המחדל. עם זאת, ייתכן שתיתקל בבאג שבו לא ניתן להסיר שפות מסוימות.

הבאג עם פריסת המקלדת שאינה ניתנת להסרה הופיע לראשונה לאחר שדרוג ל- Windows 10 1803 (היו באגים רבים אחרים בבנייה זו, כגון מחיצת שחזור OEM נוספת שהופיעה לאחר השדרוג). הבאג מתרחש אם אתה מוסיף שפה נוספת המשתמשת באותה שפת בסיס כמו שפת התצוגה הנוכחית של Windows. לא ניתן להסיר שפה נוספת כזו.

לדוגמה, אם אנגלית (ארצות הברית) היא שפת הממשק הנוכחית של Windows, לאחר הוספת אנגלית (בריטניה) לא תוכל להסיר את שתי השפות מרשימת השפות המועדפות. וכמובן, זה מאוד לא נוח כי שפת מקלדת מיותרת הופיעה בחלונית השפה במגש המערכת.

אין באפשרותך להסיר את השפות הנוספות ב- Windows באמצעות הפקודה lpksetup, מאחר שערכות שפה אלה אינן מותקנות:

lpksetup /u en-gb
lpksetup /u en-ca

הסרת שפה נוספת ב- Windows 10 באמצעות PowerShell

באפשרותך להסיר את שפת הקלט הנוספת המיותרת ב- Windows 10 ו- 11 באמצעות PowerShell:

  1. הפעל את Windows PowerShell כמנהל מערכת;

  2. הצג את רשימת השפות המותקנות ב- Windows 10 עם הפקודה:

    Get-WinUserLanguageList

  3. זכור את הערך של LanguageTag עבור השפה המועדפת עליך. לדוגמה, השפה המועדפת עליך היא אנגלית (ארצות הברית):

    LanguageTag = en-US
  4. שמור את ערך השפה המועדפת במשתנה:

    $1=New-WinUserLanguageList en-US
  5. כעת באפשרותך להגדיר שפת קלט זו כשפה המועדפת ולהסיר את כל השפות הנוספות האחרות:

    Set-WinUserLanguageList $1
  6. לחץ על הלחצן

    Y 

    מפתח כדי לאשר את המחיקה של שפות נוספות;

  7. ודא שכל שפות לוח המקשים הנוספות נעלמו.

אם עליך להשאיר מספר פריסות לוח מקשים ב- Windows, באפשרותך להסיר רק את השפות הנוספות שאינך זקוק להן. לדוגמה, ברצונך להסיר שפות עם ערכי LanguageTag הבאים:

en-Gb

ו

zh-Hans-CN
$LanguageList = Get-WinUserLanguageList
$DeleteLang = $LanguageList | where LanguageTag -eq "en-Gb"
$LanguageList.Remove($DeleteLang)
Set-WinUserLanguageList $LanguageList -Force

כדי למחוק את שפת לוח המקשים הסינית, החלף את השורה השניה ב:

$DeleteLang = $LanguageList | where LanguageTag -eq "zh-Hans-CN"

לחלופין, באפשרותך לציין את רשימת השפות שיש לשמור ב- Windows:

$1=New-WinUserLanguageList en-US
$1.Add("en-US")
$1.Add("de-DE")
Set-WinUserLanguageList $1

סגור את מסוף PowerShell וודא שכל שפות הקלט הנוספות מוסרות כראוי.

כיצד להסיר פריסת מקלדת שפה נוספת ברישום של Windows?

אם שפות נוספות הוסרו מהרשימה שפות קלט, אך עדיין מופיעות בפריסות לוח המקשים, עליך להסיר אותן באופן ידני מהרישום.

  1. הפעל את

    regedit.exe

    כמנהל;

  2. עבור אל מפתח הרישום:

    HKEY_USERS\.DEFAULT\Keyboard Layout\Preload

    . כאן תוכל לראות רשימה של שפות זמינות במסך ההתחברות;

  3. פריסות לוח המקשים הפעילות של המשתמש הנוכחי מוגדרות תחת

    HKEY_CURRENT_USER\Keyboard Layout\Preload

    מפתח רישום. לדוגמה, 0000409 - פריסה אנגלית, 00000407 - פריסה גרמנית, 00000410 - איטלקית וכו '; (בדוק את רשימת פרופילי הקלט/אזורי הקלט המוגדרים כברירת מחדל ב- Windows: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-input-locales-for-windows-language-packs?view=windows-11 );

  4. הסר את כל פריסות השפה שאינן בשימוש מהרישום במידת הצורך, ושנה את המספור של פרמטרי הרישום (שמות הפרמטרים צריכים להיות רצופים ולהתחיל מ- 1).

לאחר מכן, פריסת לוח המקשים הנוספת תיעלם מרשימת שפות הקלט.

אם פריסות לוח מקשים נוספות מופיעות בשולחן העבודה של המשתמש בהפעלת RDP/RDS מרוחקת, באפשרותך למנוע ניתוב מחדש של פריסות לוח מקשים מקומיות להפעלת שולחן עבודה מרוחק של משתמש באמצעות פרמטר הרישום:

reg add "HKLM\SYSTEM\CurrentControlSet\Control\Keyboard Layout" /v IgnoreRemoteKeyboardLayout /t REG_DWORD /d 1

אם אתה בטוח שאינך זקוק לפריסת לוח מקשים מסוימת, באפשרותך להפוך אותה ללא זמינה לחלוטין. הרשימה המלאה של פריסות לוח המקשים מאוחסנת במפתח הרישום HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts.

לדוגמה, ברצונך להפוך את פריסת לוח המקשים הבאה ללא זמינה:

00000404 (Chinese (Traditional) - US Keyboard)
  1. ראשית, הסר שפות נוספות באמצעות PowerShell (המתואר לעיל);

  2. מצא מפתח משנה 00000404 במפתח הרישום שצוין ושנה את שמו ל- 00000404-no;

  3. אתחל מחדש את Windows;

  4. ודא שפריסת לוח המקשים שצוינה אינה מוצגת עוד בסרגל השפה.