Не печатаются заглавные буквы в PowerShell

Обнаружилась интересная проблема в Windows PowerShell, не получается ввести заглавные буквы. Т.е. например я хочу написать:

wsl --set-default Ubuntu

Но заглавная U не печатается и получается:

Не печатаются заглавные буквы в PowerShell

Заметил что такой глюк возникает только когда во время запуска PowerShell была выбрана русская раскладка клавиатуры, если стояла английская такого глюка нет. Вот первый вариант решения проблемы, просто перед запуском устанавливать английскую раскладку клавиатуры.

После недолгого гугления нашелся виновник такого поведения, это модуль PSReadLine. В документации сказано что он «предоставляет улучшенный интерфейс редактирования командной строки в консоли PowerShell». Такая ошибка тоже известна довольно давно https://github.com/PowerShell/PSReadLine/issues/798 и уже исправлена.

Все решение этой проблемы сводится к переустановки и обновлению модуля PSReadLine.

Сначала удаляем его командой:

Remove-Module PSReadLine

Закрываем терминал и удаляем папку: C:\Program Files\WindowsPowerShell\Modules\PSReadLine

Далее открываем PowerShell от имени Администратора и  устанавливаем модуль заново:

Install-Module PSReadLine

При установки могут появится вопросы, выбирайте Y:

Установка модуля PSReadLine для PowerShell

Теперь все должно работать.

Можно переключится на русскую раскладку клавиатуры и запустить PowerShell, заглавные буквы должны вводится.

Хостинг для ваших проектов