Есть ли способ сопоставить CTRL+[для выхода в Powershell?

Я обнаружил, что в PowerShell есть режим vi, но похоже, что CTRL+[не отображается для выхода, как в vi и bash. Я добавил такую ​​настройку в свой профиль:

New-Item $profile -Type File -Force
echo "Set-PSReadLineOption -EditMode vi" >> $profile

Я прочитал здесь документы и не нашел ничего, имеющего отношение к моей проблеме. Текущее решение, которое я рассматриваю, - это сценарий AutoHotKey, который переназначает ключи при наличии окна Powershell. Пожалуйста, дайте мне знать, если кто-нибудь знает более естественный способ сделать это. Я также думаю, что общесистемное изменение через regedit или что-то подобное не сработает, поскольку мне нужно CTRL+[для нормальной работы вне окна PowerShell.

1 ответ

Я нашел команду, которая помогает

Set-PSReadlineKeyHandler -Chord Ctrl+[ -Function ViCommandMode

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

 Get-PSReadLineKeyHandler -Bound -Unbound

предоставит вам список всех доступных сопоставлений, как описано здесь. Я нашел escape, который был привязан к функции ViCommandMode, которую я использовал для создания решения, вставленного выше.

Другие вопросы по тегам