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

  • Soru

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

    В 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?

    17 Ocak 2019 Perşembe 10:48

Yanıtlar

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

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


    Сазонов Илья

    https://isazonov.wordpress.com/




    18 Ocak 2019 Cuma 18:14
    Moderatör
  • Проверил, действительно выгрузка модуля 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 



    21 Ocak 2019 Pazartesi 11:10
  • Мне помог откат на старую версию модуля (1.2)

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

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

    Только после

     uninstall-module psreadline

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

    8 Ağustos 2019 Perşembe 09:05

Tüm Yanıtlar

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

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

    У меня не воспроизводится, все прописные буквы при нажатом Shift вводятся нормально.
    17 Ocak 2019 Perşembe 11:30
    Moderatör

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

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

    17 Ocak 2019 Perşembe 11:42
    Moderatör
  • Здравствуйте,

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

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

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

    месяц январь


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

    17 Ocak 2019 Perşembe 11:52
  • Интересно, у меня оказывается аналогичная проблема. Windows 10 1809 EN, русский LP установлен, но основной английский. Все обновления установлены.

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


    17 Ocak 2019 Perşembe 11:57
  • Игорь, а какой у вас билд?

    17763.253. Windows 10 домашняя для одного языка.
    17 Ocak 2019 Perşembe 11:59
    Moderatör
  • Заглавные буквы через Shift:


    Alexandr_Smirnoff

    17 Ocak 2019 Perşembe 13:14
  • Походу проблема в английской версии винды. Автор, проясните какая версия у вас?

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

    17 Ocak 2019 Perşembe 13: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

    17 Ocak 2019 Perşembe 14:33
  • Переключение на русский язык интерфейса так же не помогает.
    17 Ocak 2019 Perşembe 14:46
  • Походу проблема в английской версии винды.

    На английской 1709 с интерфейсом, переключенным на русский язык, проблема не воспроизводится. На днях поставлю аглицкую 19Н1, попробую.
    17 Ocak 2019 Perşembe 21:10
    Moderatör
  • Появились результаты дополнительных изысканий.

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

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

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

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

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

    18 Ocak 2019 Cuma 06:29
  • Может у кого есть еще что посоветовать?
    18 Ocak 2019 Cuma 11:20
  • Думаю пока можем зафиксировать это как факт, а уж если Игорь подтвердит, то тогда можно и как баг в MS репортовать )))
    18 Ocak 2019 Cuma 12:09
  • Кто-то еще у себя проверить может?
    18 Ocak 2019 Cuma 12:34
    Moderatör
  • Кто-то еще у себя проверить может?

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


    Alexandr_Smirnoff

    18 Ocak 2019 Cuma 14:52
  • Попробуйте выгрузить PSReadline и проверить без него.

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


    Сазонов Илья

    https://isazonov.wordpress.com/




    18 Ocak 2019 Cuma 18:14
    Moderatör
  • Проверил, действительно выгрузка модуля 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 



    21 Ocak 2019 Pazartesi 11:10
  • Этот модуль - Open Source Project - открывайте смело кейс в нём (ссылка выше). Тем более что этот модуль последнее время активно дорабатывался под Windows 10 и PowerShell Core 6.0. Там ещё могут быть нюансы в связи с тем, что консоль Windows 10 также активно развивается.

    Сазонов Илья

    https://isazonov.wordpress.com/

    21 Ocak 2019 Pazartesi 11:18
    Moderatör
  • Этот модуль - Open Source Project - открывайте смело кейс в нём (ссылка выше). 

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

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

    21 Ocak 2019 Pazartesi 13:39
  • Спасибо. Подождем, что ответит Джейсон. Тогда будет ясно, что делать дальше. 

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

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


    Сазонов Илья

    https://isazonov.wordpress.com/

    21 Ocak 2019 Pazartesi 14:14
    Moderatör
  • Илья, добрый день

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

    23 Mayıs 2019 Perşembe 13: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/

    14 Haziran 2019 Cuma 10:54
    Moderatör
  • Аналогичная проблема уже даже на 1903 (18362.2339) - не вводятся через Shift как русские заглавные, так и английские заглавные.

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

    Remove-Module -Name PSReadline

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

    27 Temmuz 2019 Cumartesi 13:32
  • Мне помог откат на старую версию модуля (1.2)

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

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

    Только после

     uninstall-module psreadline

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

    8 Ağustos 2019 Perşembe 09:05