none
Windows 10 - 1809 - Проблемы с русскими заглавными буквами в Powershell RRS feed

  • السؤال

  • Описание ошибки

    В Windows 10 версии 1809 в Powershell не вводятся русские заглавные символы

    Как воспроизвести

    1. Потребуется Windows 10 1809, в частности Windows 10 x64 Version 1809 (OS Build 17763.253)
    2. Открыть командную строку Powershell, в Powershell ISE проблема не воспроизводится.
    3. Пробовать вписать русские заглавные буквы используя Shift.
    4. Итог не все символы пропечатываются (только некоторые проходят - ЦУШЩХЪФЫСТ).
    5. А если использовать вместо Shift клавишу Caps Lock то все нормально.
    6. Ну это ладно бы, можно привыкнуть и Caps Lock использовать. Так еще и Copy/Paste русских букв также иногда отрезает заглавные буквы.

    Что пробовали

    • Пробовали менять шрифт в консоли и перезапускать консоль.
    • Менять кодировку в консоли командой:
      [Console]::OutputEncoding = [System.Text.Encoding]::GetEncoding("utf-8")
    • Менять порядок языков ввода [EN-US] <-> [RU-RU]
    • Изменять настройки консоли Powershell, такие как "Use legacy console", "Filter clipboard contents on paste", "Discard Old Duplicates" и прочие.

    Вопрос

    Как решить данныую проблему, чтобы без проблем можно было в консоли Powershell набирать заглавные русские буквы с использованием Shift?

    11/جمادى الأولى/1440 10:48 ص

الإجابات

  • Попробуйте выгрузить PSReadline и проверить без него.

    Update: именно так и есть. Репортить сюда https://github.com/lzybkr/PSReadLine/ 


    Сазонов Илья

    https://isazonov.wordpress.com/




    • تم الاقتراح كإجابة بواسطة Igor LeykoModerator 12/جمادى الأولى/1440 06:20 م
    • تم التحرير بواسطة ILYA [ sie ] SazonovModerator 13/جمادى الأولى/1440 03:18 م
    • تم وضع علامة كإجابة بواسطة Mahoune Blade 15/جمادى الأولى/1440 11:10 ص
    12/جمادى الأولى/1440 06:14 م
    المشرف
  • Проверил, действительно выгрузка модуля PSReadline дает результат.

    Оказывается даже заведено обращение в Github разработчика модуля:
    https://github.com/lzybkr/PSReadLine/issues/798


    Можно пдвести итого.

    В общем пока не починили, но понятно как бороться. 
     
    Ошибка связана с модулем PSReadline. Он служит для подсветки синтаксиса: 
    https://docs.microsoft.com/en-us/powershell/module/psreadline/?view=powershell-6 
     
    Достаточно этот модуль выгрузить и проблема исчезает 

    Код:
    Remove-Module -Name PSReadline

     
    Можно добавить выгрузку этого модуля в профиль, например в файл: 
    C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1 
     
    Даже правильней будет вот так, отдельно для x64 и x86 версии: 
    $PSHOME\profile.ps1 
     
    И модуль будет выгружаться автоматически при каждом запуске. 
     
    Добавить можно вот такой командой, для всех пользователей: 

    Код:
    Add-Content -Value "`r`nRemove-Module -Name PSReadline" -Path $($PSHOME + "\profile.ps1")

     
    Запускать надо и в х64 и в x86 консоли Powershell. 
     
    Если только для текущего пользователя, то изменять надо файл: 
    C:\Users\[User]\Documents\WindowsPowerShell\profile.ps1 



    • تم وضع علامة كإجابة بواسطة Mahoune Blade 15/جمادى الأولى/1440 11:11 ص
    • تم التحرير بواسطة Mahoune Blade 15/جمادى الأولى/1440 11:19 ص
    15/جمادى الأولى/1440 11:10 ص
  • Мне помог откат на старую версию модуля (1.2)

    Вычитал от сюда:

    http://forum.oszone.net/post-2882847-7.html

    Только после

     uninstall-module psreadline

    мне пришлось удалять папку c:\Program Files\WindowsPowerShell\Modules\PSReadline\2.0.0\ руками.

    07/ذو الحجة/1440 09:05 ص

جميع الردود

  • Как воспроизвести

    1. Потребуется Windows 10 1809, в частности Windows 10 x64 Version 1809 (OS Build 17763.253)
    2. Открыть командную строку Powershell, в Powershell ISE проблема не воспроизводится.
    3. Пробовать вписать русские заглавные буквы используя Shift.
    4. Итог не все символы пропечатываются (только некоторые проходят - ЦУШЩХЪФЫСТ)

    У меня не воспроизводится, все прописные буквы при нажатом Shift вводятся нормально.
    11/جمادى الأولى/1440 11:30 ص
    المشرف

  • У меня не воспроизводится, все прописные буквы при нажатом Shift вводятся нормально.
    Игорь, а какой у вас билд? Возможно проблема в каком то конкретном патче

    The opinion expressed by me is not an official position of Microsoft

    11/جمادى الأولى/1440 11:42 ص
    المشرف
  • Здравствуйте,

    Смотрю у вас не распознается кирилица?

    Могу посоветовать только одно дождаться исправления или же обратится с просьбой ускорить процес на платные каналы мнения клиента :(

    блог обновления

    месяц январь


    Если Вам помог чей-либо ответ, пожалуйста, не забывайте жать на кнопку "Предложить как ответ" или "Проголосовать за полезное сообщение" Мнения, высказанные здесь, являются отражение моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий.

    11/جمادى الأولى/1440 11:52 ص
  • Интересно, у меня оказывается аналогичная проблема. Windows 10 1809 EN, русский LP установлен, но основной английский. Все обновления установлены.

    OS Name:                   Microsoft Windows 10 Pro
    OS Version:                10.0.17763 N/A Build 17763


    11/جمادى الأولى/1440 11:57 ص
  • Игорь, а какой у вас билд?

    17763.253. Windows 10 домашняя для одного языка.
    11/جمادى الأولى/1440 11:59 ص
    المشرف
  • Заглавные буквы через Shift:


    Alexandr_Smirnoff

    11/جمادى الأولى/1440 01:14 م
  • Походу проблема в английской версии винды. Автор, проясните какая версия у вас?

    PS: судя по тому как написан номер версии, то именно английская...

    • تم التحرير بواسطة Mikhail Efimov 11/جمادى الأولى/1440 01:28 م
    11/جمادى الأولى/1440 01:25 م
  • Совершенно верно, английская.
    OS Name: Microsoft Windows 10 Enterprise
    Version: 10.0.17763 Build 17763
    System Type: x64-based PC
    BIOS Mode: UEFI
    Locale: Russia
    non-Unicode: Russian

    11/جمادى الأولى/1440 02:33 م
  • Переключение на русский язык интерфейса так же не помогает.
    11/جمادى الأولى/1440 02:46 م
  • Походу проблема в английской версии винды.

    На английской 1709 с интерфейсом, переключенным на русский язык, проблема не воспроизводится. На днях поставлю аглицкую 19Н1, попробую.
    11/جمادى الأولى/1440 09:10 م
    المشرف
  • Появились результаты дополнительных изысканий.

    Проблема наблюдается пока только начиная с Windows 10 - 1809

    Проблема существует именно когда при запуске командной строки Powershell была активна английская раскладка клавиатуры.

    Если при запуске Powershell активна русская раскладка клавиатуры, то проблемы нет.

    Интересно, что если при запуске Powershell влючена русская раскладка, то отключается подсветка синтаксиса.

    Скорее всего подсветка синтаксиса и влияет на возможность вводить заглавные русские символы.
    Но могу и ошибаться.

    12/جمادى الأولى/1440 06:29 ص
  • Может у кого есть еще что посоветовать?
    12/جمادى الأولى/1440 11:20 ص
  • Думаю пока можем зафиксировать это как факт, а уж если Игорь подтвердит, то тогда можно и как баг в MS репортовать )))
    12/جمادى الأولى/1440 12:09 م
  • Кто-то еще у себя проверить может?
    12/جمادى الأولى/1440 12:34 م
    المشرف
  • Кто-то еще у себя проверить может?

    Проверил. Подтверждаю - есть баг, если запустить Powershell при английской раскладке клавиатуры.


    Alexandr_Smirnoff

    12/جمادى الأولى/1440 02:52 م
  • Попробуйте выгрузить PSReadline и проверить без него.

    Update: именно так и есть. Репортить сюда https://github.com/lzybkr/PSReadLine/ 


    Сазонов Илья

    https://isazonov.wordpress.com/




    • تم الاقتراح كإجابة بواسطة Igor LeykoModerator 12/جمادى الأولى/1440 06:20 م
    • تم التحرير بواسطة ILYA [ sie ] SazonovModerator 13/جمادى الأولى/1440 03:18 م
    • تم وضع علامة كإجابة بواسطة Mahoune Blade 15/جمادى الأولى/1440 11:10 ص
    12/جمادى الأولى/1440 06:14 م
    المشرف
  • Проверил, действительно выгрузка модуля PSReadline дает результат.

    Оказывается даже заведено обращение в Github разработчика модуля:
    https://github.com/lzybkr/PSReadLine/issues/798


    Можно пдвести итого.

    В общем пока не починили, но понятно как бороться. 
     
    Ошибка связана с модулем PSReadline. Он служит для подсветки синтаксиса: 
    https://docs.microsoft.com/en-us/powershell/module/psreadline/?view=powershell-6 
     
    Достаточно этот модуль выгрузить и проблема исчезает 

    Код:
    Remove-Module -Name PSReadline

     
    Можно добавить выгрузку этого модуля в профиль, например в файл: 
    C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1 
     
    Даже правильней будет вот так, отдельно для x64 и x86 версии: 
    $PSHOME\profile.ps1 
     
    И модуль будет выгружаться автоматически при каждом запуске. 
     
    Добавить можно вот такой командой, для всех пользователей: 

    Код:
    Add-Content -Value "`r`nRemove-Module -Name PSReadline" -Path $($PSHOME + "\profile.ps1")

     
    Запускать надо и в х64 и в x86 консоли Powershell. 
     
    Если только для текущего пользователя, то изменять надо файл: 
    C:\Users\[User]\Documents\WindowsPowerShell\profile.ps1 



    • تم وضع علامة كإجابة بواسطة Mahoune Blade 15/جمادى الأولى/1440 11:11 ص
    • تم التحرير بواسطة Mahoune Blade 15/جمادى الأولى/1440 11:19 ص
    15/جمادى الأولى/1440 11:10 ص
  • Этот модуль - Open Source Project - открывайте смело кейс в нём (ссылка выше). Тем более что этот модуль последнее время активно дорабатывался под Windows 10 и PowerShell Core 6.0. Там ещё могут быть нюансы в связи с тем, что консоль Windows 10 также активно развивается.

    Сазонов Илья

    https://isazonov.wordpress.com/

    15/جمادى الأولى/1440 11:18 ص
    المشرف
  • Этот модуль - Open Source Project - открывайте смело кейс в нём (ссылка выше). 

    Там на эту тему уже открыт кейс:
    https://github.com/lzybkr/PSReadLine/issues/798

    Я в него и отписался,

    15/جمادى الأولى/1440 01:39 م
  • Спасибо. Подождем, что ответит Джейсон. Тогда будет ясно, что делать дальше. 

    В марте намечен релиз PowerShell Cor 6.2, и хорошо бы к этому времени получить обновленный релиз PSReadline. Ну и фикс для самой Windows 10.

    Напимните мне, если дней 10 не будет новостей.


    Сазонов Илья

    https://isazonov.wordpress.com/

    15/جمادى الأولى/1440 02:14 م
    المشرف
  • Илья, добрый день

    Так и нет решения?

    18/رمضان/1440 01:06 م
  • На моем компьютере (Windows 10 1903) по умолчанию стоит PSReadline 2.0.0 Beta2 со всеми этими проблемами.

    Последняя версия на PSGallery это PSReadline 2.0.0 Beta4 где эти проблемы должны быть исправлены.

    Так что требуйте включить эту версию в последующие обновления системы. Ссылка https://github.com/PowerShell/PSReadLine/issues/798

    Также используйте Feedback утилиту в самой системе.


    Сазонов Илья

    https://isazonov.wordpress.com/

    11/شوال/1440 10:54 ص
    المشرف
  • Аналогичная проблема уже даже на 1903 (18362.2339) - не вводятся через Shift как русские заглавные, так и английские заглавные.

    Решение либо пока выгружать саму подсветку

    Remove-Module -Name PSReadline

    Либо для ввода заглавных букв использовать не Shift, а Caps Lock - тогда и заглавные буквы можно ввести и подсветка сохраняется.

    24/ذو القعدة/1440 01:32 م
  • Мне помог откат на старую версию модуля (1.2)

    Вычитал от сюда:

    http://forum.oszone.net/post-2882847-7.html

    Только после

     uninstall-module psreadline

    мне пришлось удалять папку c:\Program Files\WindowsPowerShell\Modules\PSReadline\2.0.0\ руками.

    07/ذو الحجة/1440 09:05 ص