Udostępnij za pośrednictwem


Set-PSReadLineOption

Dostosowuje zachowanie edytowania wiersza polecenia w programie PSReadLine.

Składnia

Set-PSReadLineOption
   [-EditMode <EditMode>]
   [-ContinuationPrompt <string>]
   [-HistoryNoDuplicates]
   [-AddToHistoryHandler <Func[string,Object]>]
   [-CommandValidationHandler <Action[CommandAst]>]
   [-HistorySearchCursorMovesToEnd]
   [-MaximumHistoryCount <int>]
   [-MaximumKillRingCount <int>]
   [-ShowToolTips]
   [-ExtraPromptLineCount <int>]
   [-DingTone <int>]
   [-DingDuration <int>]
   [-BellStyle <BellStyle>]
   [-CompletionQueryItems <int>]
   [-WordDelimiters <string>]
   [-HistorySearchCaseSensitive]
   [-HistorySaveStyle <HistorySaveStyle>]
   [-HistorySavePath <string>]
   [-AnsiEscapeTimeout <int>]
   [-PromptText <string[]>]
   [-ViModeIndicator <ViModeStyle>]
   [-ViModeChangeHandler <scriptblock>]
   [-PredictionSource <PredictionSource>]
   [-PredictionViewStyle <PredictionViewStyle>]
   [-Colors <hashtable>]
   [-TerminateOrphanedConsoleApps]
   [<CommonParameters>]

Opis

Polecenie Set-PSReadLineOption cmdlet dostosowuje zachowanie modułu PSReadLine podczas edytowania wiersza polecenia. Aby wyświetlić ustawienia PSReadLine , użyj polecenia Get-PSReadLineOption.

Opcje ustawione przez to polecenie dotyczą tylko bieżącej sesji. Aby utrwały wszystkie opcje, dodaj je do skryptu profilu. Aby uzyskać więcej informacji, zobacz about_Profiles i Dostosowywanie środowiska powłoki.

Przykłady

Przykład 1. Ustawianie kolorów pierwszego planu i tła

W tym przykładzie ustawiono element PSReadLine , aby wyświetlić token komentarza z zielonym tekstem pierwszego planu na szarym tle. W sekwencji ucieczki użytej w przykładzie 32 reprezentuje kolor pierwszego planu, a 47 reprezentuje kolor tła.

Set-PSReadLineOption -Colors @{ "Comment"="`e[32;47m" }

Można ustawić tylko kolor tekstu pierwszego planu. Na przykład jasny zielony kolor tekstu pierwszego planu dla tokenu Komentarz : "Comment"="`e[92m".

Przykład 2. Ustawianie stylu dzwonka

W tym przykładzie funkcja PSReadLine będzie reagować na błędy lub warunki wymagające uwagi użytkownika. BellStyle jest ustawiony do emitowania sygnału dźwiękowego na 1221 Hz dla 60 ms.

Set-PSReadLineOption -BellStyle Audible -DingTone 1221 -DingDuration 60

Uwaga

Ta funkcja może nie działać we wszystkich hostach na platformach.

Przykład 3. Ustawianie wielu opcji

Set-PSReadLineOption może ustawić wiele opcji za pomocą tabeli skrótów.

$PSReadLineOptions = @{
    EditMode = "Emacs"
    HistoryNoDuplicates = $true
    HistorySearchCursorMovesToEnd = $true
    Colors = @{
        "Command" = "#8181f7"
    }
}
Set-PSReadLineOption @PSReadLineOptions

Tabela $PSReadLineOptions skrótów ustawia klucze i wartości. Set-PSReadLineOption używa kluczy i wartości za pomocą polecenia @PSReadLineOptions , aby zaktualizować opcje PSReadLine .

Klucze i wartości wchodzące w nazwę $PSReadLineOptions tabeli skrótów można wyświetlić w wierszu polecenia programu PowerShell.

Przykład 4. Ustawianie wielu opcji kolorów

W tym przykładzie pokazano, jak ustawić więcej niż jedną wartość koloru w jednym poleceniu.

Set-PSReadLineOption -Colors @{
  Command            = 'Magenta'
  Number             = 'DarkGray'
  Member             = 'DarkGray'
  Operator           = 'DarkGray'
  Type               = 'DarkGray'
  Variable           = 'DarkGreen'
  Parameter          = 'DarkGreen'
  ContinuationPrompt = 'DarkGray'
  Default            = 'DarkGray'
}

Przykład 5. Ustawianie wartości kolorów dla wielu typów

W tym przykładzie przedstawiono trzy różne metody ustawiania koloru tokenów wyświetlanych w programie PSReadLine.

Set-PSReadLineOption -Colors @{
 # Use a ConsoleColor enum
 "Error" = [ConsoleColor]::DarkRed

 # 24 bit color escape sequence
 "String" = "$([char]0x1b)[38;5;100m"

 # RGB value
 "Command" = "#8181f7"
}

Przykład 6. Używanie programu ViModeChangeHandler do wyświetlania zmian trybu Vi

W tym przykładzie emituje ucieczkę VT zmiany kursora w odpowiedzi na zmianę trybu Vi .

function OnViModeChange {
    if ($args[0] -eq 'Command') {
        # Set the cursor to a blinking block.
        Write-Host -NoNewLine "`e[1 q"
    } else {
        # Set the cursor to a blinking line.
        Write-Host -NoNewLine "`e[5 q"
    }
}
Set-PSReadLineOption -ViModeIndicator Script -ViModeChangeHandler $Function:OnViModeChange

Funkcja OnViModeChange ustawia opcje kursora dla trybów Vi : insert i command. Program ViModeChangeHandler używa dostawcy Function: do odwołowania się do elementu OnViModeChange jako obiektu bloku skryptu.

Aby uzyskać więcej informacji, zobacz about_Providers.

Przykład 7. Używanie programu HistoryHandler do filtrowania poleceń dodanych do historii

W poniższym przykładzie pokazano, jak używać polecenia , AddToHistoryHandler aby zapobiec zapisywaniu wszystkich poleceń git w historii.

$ScriptBlock = {
    Param([string]$line)

    if ($line -match "^git") {
        return $false
    } else {
        return $true
    }
}

Set-PSReadLineOption -AddToHistoryHandler $ScriptBlock

Funkcja scriptblock zwraca wartość $false , jeśli polecenie zaczęło się od git. Ma to taki sam efekt jak zwracanie wyliczenia SkipAdding AddToHistory . Jeśli polecenie nie rozpoczyna się od git, program obsługi zwraca polecenie $true i program obsługi PSReadLine zapisuje polecenie w historii.

Przykład 8. Użyj polecenia CommandValidationHandler, aby zweryfikować polecenie przed wykonaniem polecenia

W tym przykładzie pokazano, jak użyć parametru CommandValidationHandler do uruchomienia polecenia weryfikacji przed jego wykonaniem. W tym przykładzie jest sprawdzane polecenie git za pomocą polecenia podrzędnego cmt i zastępuje je pełną nazwą commit. W ten sposób można tworzyć aliasy skrócone dla podpolecenia.

# Load the namespace so you can use the [CommandAst] object type
using namespace System.Management.Automation.Language

Set-PSReadLineOption -CommandValidationHandler {
    param([CommandAst]$CommandAst)

    switch ($CommandAst.GetCommandName()) {
        'git' {
            $gitCmd = $CommandAst.CommandElements[1].Extent
            switch ($gitCmd.Text) {
                'cmt' {
                    [Microsoft.PowerShell.PSConsoleReadLine]::Replace(
                        $gitCmd.StartOffset, $gitCmd.EndOffset - $gitCmd.StartOffset, 'commit')
                }
            }
        }
    }
}
# This checks the validation script when you hit enter
Set-PSReadLineKeyHandler -Chord Enter -Function ValidateAndAcceptLine

Przykład 9. Używanie parametru PromptText

W przypadku wystąpienia błędu analizy element PSReadLine zmienia część monitu na czerwono. Parametr PromptText informuje PSReadLine część ciągu monitu o kolor czerwony.

Na przykład poniższy przykład tworzy monit zawierający bieżącą ścieżkę, po której następuje znak większy niż (>) i spacja.

function prompt { "PS $pwd> " }`
Set-PSReadLineOption -PromptText '> ' # change the '>' character red
Set-PSReadLineOption -PromptText '> ', 'X ' # replace the '>' character with a red 'X'

Pierwszy ciąg to część ciągu monitu, która ma być czerwona, gdy wystąpi błąd analizy. Drugi ciąg jest alternatywnym ciągiem używanym w przypadku wystąpienia błędu analizy.

Parametry

-AddToHistoryHandler

Określa scriptBlock , który kontroluje sposób dodawania poleceń do historii PSReadLine .

Element ScriptBlock odbiera wiersz polecenia jako dane wejściowe.

ScripBlock powinien zwrócić element członkowski wyliczenia AddToHistoryOption, nazwę ciągu jednego z tych elementów członkowskich lub wartość logiczną. Poniższa lista zawiera opis możliwych wartości i ich efektów.

  • MemoryAndFile - Dodaj polecenie do pliku historii i bieżącej sesji.
  • MemoryOnly — Dodaj polecenie do historii tylko dla bieżącej sesji.
  • SkipAdding — Nie dodawaj polecenia do pliku historii dla bieżącej sesji.
  • $false — tak samo, jak w przypadku, gdy wartość to SkipAdding.
  • $true — tak samo, jak w przypadku, gdy wartość to MemoryAndFile.
Typ:Func<T,TResult>[System.String,System.Object]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-AnsiEscapeTimeout

Ta opcja jest specyficzna dla systemu Windows, gdy dane wejściowe są przekierowywane, na przykład podczas uruchamiania w obszarze tmux lub screen.

W przypadku przekierowanych danych wejściowych w systemie Windows wiele kluczy jest wysyłanych jako sekwencja znaków rozpoczynających się od znaku ucieczki. Nie można odróżnić pojedynczego znaku ucieczki, po którym następuje więcej znaków i prawidłowej sekwencji ucieczki.

Zakłada się, że terminal może wysyłać znaki szybciej niż typy użytkowników. Program PSReadLine czeka na ten limit czasu przed stwierdzeniem, że otrzymał pełną sekwencję ucieczki.

Jeśli podczas wpisywania są wyświetlane losowe lub nieoczekiwane znaki, możesz dostosować ten limit czasu.

Typ:Int32
Position:Named
Domyślna wartość:100
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-BellStyle

Określa, jak funkcja PSReadLine reaguje na różne błędy i niejednoznaczne warunki.

Prawidłowe wartości są następujące:

  • Słyszalny: Krótki sygnał dźwiękowy.
  • Wizualizacja: tekst krótko.
  • Brak: brak opinii.
Typ:BellStyle
Position:Named
Domyślna wartość:Audible
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Colors

Parametr Kolory określa różne kolory używane przez psReadLine.

Argument jest tabelą skrótów, w której klucze określają elementy, a wartości określają kolor. Aby uzyskać więcej informacji, zobacz about_Hash_Tables.

Kolory mogą być wartością z elementu ConsoleColor, na przykład [ConsoleColor]::Red, lub prawidłową sekwencją ucieczki ANSI. Prawidłowe sekwencje ucieczki zależą od terminalu. W programie PowerShell 5.0 przykładowa sekwencja ucieczki dla czerwonego tekstu to $([char]0x1b)[91m. W programie PowerShell 6 lub nowszym ta sama sekwencja ucieczki to `e[91m. Można określić inne sekwencje ucieczki, w tym następujące typy:

Dodano dwa ustawienia kolorów do obsługi dostosowywania ListView elementu w programie PSReadLine 2.2.0:

  • ListPredictionColor — ustaw kolor wiodącego > znaku i końcową nazwę źródła, taką jak [History]. Domyślnie jest DarkYellow używany jako kolor pierwszego planu.

  • ListPredictionSelectedColor — ustaw kolor wskazujący, że zaznaczono element listy. Domyślnie jest używany DarkBlack jako kolor tła.

  • Kolor 256

  • Kolor 24-bitowy

  • Pierwszy plan, tło lub oba

  • Odwrotność, pogrubienie

Aby uzyskać więcej informacji na temat kodów kolorów ANSI, zobacz artykuł w wikipedii ANSI escape code (Kod ucieczki ANSI).

Prawidłowe klucze obejmują:

  • ContinuationPrompt: kolor monitu kontynuacji.
  • Wyróżnienie: Kolor wyróżnienia. Na przykład pasujący tekst podczas wyszukiwania historii.
  • Błąd: kolor błędu. Na przykład w wierszu polecenia.
  • Wybór: kolor wyróżniania zaznaczenia menu lub zaznaczonego tekstu.
  • Ustawienie domyślne: domyślny kolor tokenu.
  • Komentarz: kolor tokenu komentarza.
  • Słowo kluczowe: kolor tokenu słowa kluczowego.
  • Ciąg: kolor tokenu ciągu.
  • Operator: kolor tokenu operatora.
  • Zmienna: kolor tokenu zmiennej.
  • Polecenie: kolor tokenu polecenia.
  • Parametr: kolor tokenu parametru.
  • Typ: kolor tokenu typu.
  • Numer: kolor tokenu liczbowego.
  • Element członkowski: kolor tokenu nazwy elementu członkowskiego.
  • InlinePrediction: kolor wbudowanego widoku sugestii predykcyjnej.
  • ListPrediction: kolor wiodącego > znaku i nazwy źródła przewidywania.
  • ListPredictionSelected: kolor wybranego przewidywania w widoku listy.
Typ:Hashtable
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-CommandValidationHandler

Określa scriptBlock , który jest wywoływany z ValidateAndAcceptLine. Jeśli zgłaszany jest wyjątek, walidacja zakończy się niepowodzeniem i zostanie zgłoszony błąd.

Przed zgłoszeniem wyjątku program obsługi walidacji może umieścić kursor w punkcie błędu, aby ułatwić jego naprawienie. Procedura obsługi poprawności może również zmienić wiersz polecenia, aby poprawić typowe błędy typograficzne.

Funkcja ValidateAndAcceptLine służy do unikania bałaganu historii za pomocą poleceń, które nie mogą działać.

Typ:Action<T>[CommandAst]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-CompletionQueryItems

Określa maksymalną liczbę elementów uzupełniania, które są wyświetlane bez monitowania.

Jeśli liczba elementów do wyświetlenia jest większa niż ta wartość, funkcja PSReadLine wyświetli monit o wartość tak/nie przed wyświetleniem elementów ukończenia.

Typ:Int32
Position:Named
Domyślna wartość:100
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ContinuationPrompt

Określa ciąg wyświetlany na początku kolejnych wierszy po wprowadzeniu danych wejściowych z wieloma wierszami. Wartość domyślna to dwukrotnie większe niż znaki (>>). Pusty ciąg jest prawidłowy.

Typ:String
Position:Named
Domyślna wartość:>>
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DingDuration

Określa czas trwania sygnału dźwiękowego, gdy właściwość BellStyle jest ustawiona na Audible.

Typ:Int32
Position:Named
Domyślna wartość:50ms
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DingTone

Określa ton w hertz (Hz) sygnału dźwiękowego, gdy BellStyle jest ustawiony na Audible.

Typ:Int32
Position:Named
Domyślna wartość:1221
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-EditMode

Określa tryb edycji wiersza polecenia. Za pomocą tego parametru resetuje wszystkie powiązania kluczy ustawione przez Set-PSReadLineKeyHandler.

Prawidłowe wartości są następujące:

  • Windows: powiązania kluczy emulują program PowerShell, cmd i program Visual Studio.
  • Emacs: Powiązania emulują powłokę Bash lub Emacs.
  • Vi: Powiązania kluczy emulują vi.

Użyj Get-PSReadLineKeyHandler polecenia , aby wyświetlić powiązania kluczy dla aktualnie skonfigurowanego modułu EditMode.

Typ:EditMode
Position:Named
Domyślna wartość:Windows
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ExtraPromptLineCount

Określa liczbę dodatkowych wierszy.

Jeśli monit obejmuje więcej niż jeden wiersz, określ wartość tego parametru. Użyj tej opcji, jeśli chcesz, aby dodatkowe wiersze były dostępne, gdy funkcja PSReadLine wyświetla monit po wyświetleniu niektórych danych wyjściowych. Na przykład funkcja PSReadLine zwraca listę uzupełniania.

Ta opcja jest potrzebna mniej niż w poprzednich wersjach elementu PSReadLine, ale jest przydatna InvokePrompt , gdy funkcja jest używana.

Typ:Int32
Position:Named
Domyślna wartość:0
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-HistoryNoDuplicates

Ta opcja steruje zachowaniem odwołania. Zduplikowane polecenia są nadal dodawane do pliku historii. Po ustawieniu tej opcji podczas przywoływania poleceń pojawia się tylko najnowsze wywołanie. Powtarzające się polecenia są dodawane do historii w celu zachowania kolejności podczas odwoływania. Jednak zazwyczaj nie chcesz wyświetlać polecenia wiele razy podczas odwoływania lub przeszukiwania historii.

Domyślnie właściwość HistoryNoDuplicates globalnego obiektu PSConsoleReadLineOptions jest ustawiona na Truewartość . Aby zmienić wartość właściwości, należy określić wartość parametru SwitchParameter w następujący sposób: -HistoryNoDuplicates:$False. Możesz wrócić do True parametru , używając tylko parametru SwitchParameter. -HistoryNoDuplicates

Za pomocą następującego polecenia można ustawić wartość właściwości bezpośrednio:

(Get-PSReadLineOption).HistoryNoDuplicates = $False

Typ:SwitchParameter
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-HistorySavePath

Określa ścieżkę do pliku, w którym jest zapisywana historia. Komputery z systemem Windows lub platformami innych niż Windows przechowują plik w różnych lokalizacjach. Nazwa pliku jest przechowywana w zmiennej $($Host.Name)_history.txt, na przykład ConsoleHost_history.txt.

Jeśli nie używasz tego parametru, domyślna ścieżka jest następująca:

Windows

  • $env:APPDATA\Microsoft\Windows\PowerShell\PSReadLine\$($Host.Name)_history.txt

spoza systemu Windows

  • $env:XDG_DATA_HOME/powershell/PSReadLine/$($Host.Name)_history.txt
  • $HOME/.local/share/powershell/PSReadLine/$($Host.Name)_history.txt
Typ:String
Position:Named
Domyślna wartość:A file named $($Host.Name)_history.txt in $env:APPDATA\Microsoft\Windows\PowerShell\PSReadLine on Windows and $env:XDG_DATA_HOME/powershell/PSReadLine or $HOME/.local/share/powershell/PSReadLine on non-Windows platforms
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-HistorySaveStyle

Określa sposób zapisywania historii przez element PSReadLine .

Prawidłowe wartości są następujące:

  • SaveIncrementally: Zapisz historię po wykonaniu każdego polecenia i udostępnieniu w wielu wystąpieniach programu PowerShell.
  • SaveAtExit: Dołączanie pliku historii podczas zamykania programu PowerShell.
  • SaveNothing: Nie używaj pliku historii.

Uwaga

Jeśli ustawisz wartość HistorySaveStyleSaveNothing, a następnie ustawisz ją na SaveIncrementally później w tej samej sesji, funkcja PSReadLine zapisze wszystkie polecenia uruchomione wcześniej w sesji.

Typ:HistorySaveStyle
Position:Named
Domyślna wartość:SaveIncrementally
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-HistorySearchCaseSensitive

Określa, że wyszukiwanie historii jest uwzględniane wielkość liter w funkcjach, takich jak ReverseSearchHistory lub HistorySearchBackward.

Domyślnie właściwość HistorySearchCaseSensitive globalnego obiektu PSConsoleReadLineOptions jest ustawiona na Falsewartość . Za pomocą tego parametru SwitchParameter ustawia wartość właściwości na True. Aby zmienić wartość właściwości z powrotem, należy określić wartość parametru SwitchParameter w następujący sposób: -HistorySearchCaseSensitive:$False.

Za pomocą następującego polecenia można ustawić wartość właściwości bezpośrednio:

(Get-PSReadLineOption).HistorySearchCaseSensitive = $False

Typ:SwitchParameter
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-HistorySearchCursorMovesToEnd

Wskazuje, że kursor przechodzi na koniec poleceń ładowanych z historii przy użyciu wyszukiwania. Gdy ten parametr jest ustawiony na $Falsewartość , kursor pozostaje w położeniu, w którym był po naciśnięciu strzałek w górę lub w dół.

Domyślnie właściwość HistorySearchCursorMovesToEnd globalnego obiektu PSConsoleReadLineOptions ma wartość False. Za pomocą tego parametru SwitchParameter ustaw wartość właściwości na True. Aby zmienić wartość właściwości z powrotem, należy określić wartość parametru SwitchParameter w następujący sposób: -HistorySearchCursorMovesToEnd:$False.

Za pomocą następującego polecenia można ustawić wartość właściwości bezpośrednio:

(Get-PSReadLineOption).HistorySearchCursorMovesToEnd = $False

Typ:SwitchParameter
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-MaximumHistoryCount

Określa maksymalną liczbę poleceń do zapisania w historii PSReadLine .

Historia programu PSReadLine jest oddzielona od historii programu PowerShell.

Typ:Int32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-MaximumKillRingCount

Określa maksymalną liczbę elementów przechowywanych w pierścieniu kill.

Typ:Int32
Position:Named
Domyślna wartość:10
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-PredictionSource

Określa źródło elementu PSReadLine, aby uzyskać sugestie predykcyjne.

Prawidłowe wartości to:

  • Brak — wyłącz funkcję predykcyjnej funkcji IntelliSense (ustawienie domyślne).
  • Historia — włącz funkcję predykcyjnej funkcji IntelliSense i użyj historii PSReadLine jako jedynego źródła.
  • Wtyczka — włącz funkcję predykcyjnej funkcji IntelliSense i użyj wtyczek (CommandPrediction) jako jedynego źródła. Ta wartość została dodana w programie PSReadLine 2.2.0
  • HistoryAndPlugin — włącz funkcję predykcyjnej funkcji IntelliSense i użyj zarówno historii, jak i wtyczki jako źródeł. Ta wartość została dodana w programie PSReadLine 2.2.0
Typ:Microsoft.PowerShell.PredictionSource
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-PredictionViewStyle

Ustawia styl wyświetlania tekstu predykcyjnego. Wartość domyślna to InlineView.

  • InlineView — styl jak istniejący dzisiaj, podobnie jak w skorupie rybnej i zsh. (domyślne)
  • ListView — sugestie są renderowane na liście rozwijanej, a użytkownicy mogą wybrać opcję UpArrow i DownArrow.

Ten parametr został dodany w programie PSReadLine 2.2.0

Typ:Microsoft.PowerShell.PredictionViewStyle
Position:Named
Domyślna wartość:InlineView
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-PromptText

Ten parametr ustawia wartość właściwości PromptText . Domyślna wartość to "> ".

Funkcja PSReadLine analizuje funkcję monitu, aby określić, jak zmienić tylko kolor części monitu. Ta analiza nie jest w 100% niezawodna. Użyj tej opcji, jeśli funkcja PSReadLine zmienia monit w nieoczekiwany sposób. Uwzględnij wszelkie białe znaki końcowe.

Wartość tego parametru może być pojedynczym ciągiem lub tablicą dwóch ciągów. Pierwszy ciąg to część ciągu monitu, którą chcesz zmienić na czerwono, gdy wystąpi błąd analizy. Drugi ciąg jest alternatywnym ciągiem używanym w przypadku wystąpienia błędu analizy.

Typ:String[]
Position:Named
Domyślna wartość:>
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ShowToolTips

Podczas wyświetlania możliwych uzupełniania etykietki narzędzi są wyświetlane na liście uzupełniania.

Ta opcja jest domyślnie włączona. Ta opcja nie została domyślnie włączona w poprzednich wersjach programu PSReadLine. Aby wyłączyć, ustaw tę opcję na $False.

Ten parametr i opcja zostały dodane w psReadLine 2.3.4.

Domyślnie właściwość ShowToolTips globalnego obiektu PSConsoleReadLineOptions jest ustawiona na Truewartość . Za pomocą tego parametru SwitchParameter ustawia wartość właściwości na True. Aby zmienić wartość właściwości, należy określić wartość parametru SwitchParameter w następujący sposób: -ShowToolTips:$False.

Za pomocą następującego polecenia można ustawić wartość właściwości bezpośrednio:

(Get-PSReadLineOption).ShowToolTips = $False

Typ:SwitchParameter
Position:Named
Domyślna wartość:True
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-TerminateOrphanedConsoleApps

Ten parametr ustawia opcję TerminateOrphanedConsoleApps na $truewartość .

W systemie Windows po naciśnięciu Ctrl+c w celu zakończenia procesu każdy proces dołączony do konsoli odbiera sygnał zakończenia, w przeciwieństwie do aktywnej powłoki. Czasami, gdy powłoka uruchomiła duże drzewo procesów podrzędnych (załóżmy na przykład, że system kompilacji) niektóre procesy mogą zakończyć działanie, pozostawiając wiele procesów jednocześnie próbujących korzystać z danych wejściowych konsoli.

Podczas ustawiania opcji TerminateOrphanedConsoleApps na $truewartość program PSReadLine rejestruje listę procesów, które są obecnie dołączone do konsoli programu . Następnie po uruchomieniu programu PSReadLine zostanie wyświetlona nowa lista procesów dołączonych do konsoli programu i przerwanie tych, które nie znajdują się na oryginalnej liście.

Ten parametr i opcja zostały dodane w psReadLine 2.3.4.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ViModeChangeHandler

Gdy właściwość ViModeIndicator jest ustawiona na Scriptwartość , udostępniony blok skryptu będzie wywoływany za każdym razem, gdy tryb ulegnie zmianie. Blok skryptu jest dostarczany jeden argument typu ViMode.

Ten parametr został wprowadzony w programie PowerShell 7.

Typ:ScriptBlock
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ViModeIndicator

Ta opcja ustawia wskaźnik wizualizacji dla bieżącego trybu Vi . Tryb wstawiania lub trybu polecenia.

Prawidłowe wartości są następujące:

  • Brak: nie ma żadnego wskaźnika.
  • Monit: monit zmienia kolor.
  • Kursor: kursor zmienia rozmiar.
  • Skrypt: tekst określony przez użytkownika jest drukowany.
Typ:ViModeStyle
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-WordDelimiters

Określa znaki rozdzielające wyrazy dla funkcji, takich jak ForwardWord lub KillWord.

Typ:String
Position:Named
Domyślna wartość:;:,.[]{}()/\|^&*-=+'"---
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

None

Nie można potokować obiektów do tego polecenia cmdlet.

Dane wyjściowe

None

To polecenie cmdlet nie zwraca żadnych danych wyjściowych.