- PVSM.RU - https://www.pvsm.ru -
Владельцы windows 10 могут наслаждаться подсветкой синтаксиса в консоли PowerShell в предыдущих версиях подсветка сама не появится даже если установить WMF5. Подсветка реализуется модулем PSReadLine. Этот модуль позволяет делать разные подсветки Emac подобную или Vim, добавлять команды и т.п., добавляет поиск в истории, собственные шоткаты и т.п. Далее описывается как установить подсветку в консоль PowerShell предыдущих версий windows.
1. установка на Win 8.1 и 2012R2 если установлен у Вас уже установлен WMF5
нужно скачать модуль подсветки из хранилища OneGet командлетом Find-Package если до этого он не использовался то попросит скачать и установить менеджер пакетов NuGet
Далее делаем на все вопросы отвечаем утвердительно
Find-Package PSReadLine
Install-Module PSReadLine
Import-Module PSReadLine
наличие OneGet сильно облегчает жизнь некоторых случаях
2. установка на Win 8.1 c PowerShell 4
нужно скачать PSReadLine.zip [1] с GitHub.
после проверьте снята ли блокировка со скачанного файла (иначе вы можете получить ошибку при попытке запуска сценария), для этого откройте свойства файла и если есть кнопка «разблокировать» нажмите ее
это просто модуль, далее действуем как при установке любого модуля, копируем его в вашу папку modules. Если вы не создали еще такую папку то ее нужно создать
cp $env:USERPROFILEDownloadsPSREadline* $env:USERPROFILEDocumentsWindowsPowerShellModulesPSReadLine
установка PSReadLine
для установки запустите консоль под администратором
установите разрешения исполнения скриптов
выполните импорт модуля
Import-Module PSReadLine
если вы не видите сообщения об ошибках значит все сделано правильно и модуль запустился
последним можно добавить автоматический импорт модуля при каждом запуске консоли
для этого нужно добавить команду импорта в ваш профиль. Т.к. модуль для PS4 не очень хорошо работает в PowerShell ISE рекомендуется оставить импорт только для консоли. для PowerShell 5 такой проблемы нет, модуль работает и в ISE тоже
if ($host.Name -eq 'ConsoleHost')
{
Import-Module PSReadLine
}
Теперь можно ввести Get-PSReadlineKeyHandler и посмотреть какие шоткаты определены по умолчанию
Автор: pak-nikolai
Источник [2]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/powershell/142420
Ссылки в тексте:
[1] PSReadLine.zip: https://github.com/lzybkr/PSReadLine/releases
[2] Источник: https://habrahabr.ru/post/303986/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best
Нажмите здесь для печати.