Set-PSReadLineKeyHandler
Привязывает ключи к определяемым пользователем или функциям обработчика ключей PSReadLine.
Синтаксис
ScriptBlock
Set-PSReadLineKeyHandler
[-ScriptBlock] <ScriptBlock>
[-Chord] <String[]>
[-BriefDescription <String>]
[-Description <String>]
[-ViMode <ViMode>]
[<CommonParameters>]
Function
Set-PSReadLineKeyHandler
[-Chord] <String[]>
[-Function] <String>
[-ViMode <ViMode>]
[<CommonParameters>]
Описание
Командлет Set-PSReadLineKeyHandler настраивает результат при нажатии клавиши или последовательности клавиш. С помощью определяемых пользователем привязок ключей вы можете сделать практически все, что возможно из скрипта PowerShell.
Примеры
Пример 1. Привязка клавиши со стрелкой к функции
Эта команда привязывает клавишу стрелка вверх к функции HistorySearchBackward. Эта функция выполняет поиск в журнале команд для командных строк, которые начинаются с текущего содержимого командной строки.
Set-PSReadLineKeyHandler -Chord UpArrow -Function HistorySearchBackward
Пример 2. Привязка ключа к блоку скрипта
В этом примере показано, как можно использовать один ключ для выполнения команды. Команда привязывает ключ Ctrl+b к блоку скрипта, который очищает строку, вставляет слово "сборка", а затем принимает строку.
Set-PSReadLineKeyHandler -Chord Ctrl+b -ScriptBlock {
[Microsoft.PowerShell.PSConsoleReadLine]::RevertLine()
[Microsoft.PowerShell.PSConsoleReadLine]::Insert('build')
[Microsoft.PowerShell.PSConsoleReadLine]::AcceptLine()
}
Параметры
-BriefDescription
Краткое описание привязки ключа. Это описание отображается командлетом Get-PSReadLineKeyHandler.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
ScriptBlock
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Chord
Ключ или последовательность ключей, привязанных к функции или скрипту. Используйте одну строку для указания одной привязки. Если привязка представляет собой последовательность ключей, разделите ключи запятой. Например: Ctrl+x,Ctrl+l
Ссылки на ключи символов определяются с помощью прописных букв. Если вы хотите определить аккорд, использующий прописную букву, аккорд должен включать ключ Shift. Например, Ctrl+Shift+x и Ctrl+x создают различные привязки.
Этот параметр принимает массив строк. Каждая строка представляет собой отдельную привязку, а не последовательность ключей для одной привязки.
Свойства параметров
| Тип: | String[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | Ключ |
Наборы параметров
(All)
| Position: | 0 |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Description
Указывает более подробное описание привязки клавиши, видимой в выходных данных командлета Get-PSReadLineKeyHandler.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | LongDescription |
Наборы параметров
ScriptBlock
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Function
Задает имя существующего обработчика ключей, предоставленного PSReadLine. Этот параметр позволяет переназначать существующие привязки клавиш или связывать обработчик, который в настоящее время не привязан.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
Function
| Position: | 1 |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-ScriptBlock
Указывает значение скрипта для запуска при вводе аккорда. PSReadLine передает один или два параметра в этот блок скрипта. Первый параметр — это объект ConsoleKeyInfo, представляющий нажатие клавиши. Второй аргумент может быть любым объектом в зависимости от контекста.
Свойства параметров
| Тип: | ScriptBlock |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
ScriptBlock
| Position: | 1 |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-ViMode
Укажите, к какому vi-режиму применяется привязка.
Допустимые значения:
InsertCommand
Свойства параметров
| Тип: | ViMode |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
None
Невозможно передать объекты в этот командлет.
Выходные данные
None
Этот командлет не возвращает выходные данные.