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 cmdlet Set-PSReadLineOption dostosowuje zachowanie modułu PSReadLine podczas edytowania wiersza polecenia. Aby wyświetlić ustawienia PSReadLine, użyj 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 PSReadLine w celu wyświetlenia tokenu 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 PSReadLine odpowie na błędy lub warunki wymagające uwagi użytkownika. BellStyle jest ustawiona tak, aby emitować sygnał dźwiękowy przy 1221 Hz dla 60 ms.

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

Nuta

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 skrótów $PSReadLineOptions ustawia klucze i wartości. Set-PSReadLineOption używa kluczy i wartości z @PSReadLineOptions, aby zaktualizować opcje PSReadLine.

Klucze i wartości wchodzące w nazwę tabeli skrótów można wyświetlić $PSReadLineOptions 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 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. ViModeChangeHandler używa dostawcy Function: do odwołowania się 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ć 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

Skryptblock zwraca $false, jeśli polecenie uruchomione z git. Ma to taki sam efekt, jak zwracanie SkipAddingwyliczenia AddToHistory. Jeśli polecenie nie rozpoczyna się od git, program obsługi zwraca $true i program 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 w celu uruchomienia polecenia weryfikacji przed 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 PSReadLine zmienia część monitu na czerwono. Parametr PromptText informuje PSReadLine części 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.

ScriptBlock odbiera wiersz polecenia jako dane wejściowe.

ScripBlock powinien zwrócić element członkowski AddToHistoryOption wyliczenie, 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 — taka sama jak w przypadku SkipAddingwartości .
  • $true — taka sama jak w przypadku MemoryAndFilewartości .
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. 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 PSReadLine reaguje na różne błędy i niejednoznaczne warunki.

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

  • Audible: krótki sygnał dźwiękowy.
  • Visual: 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 ConsoleColor, na przykład [ConsoleColor]::Redlub prawidłową sekwencją ucieczki ANSI. Prawidłowe sekwencje ucieczki zależą od terminalu. W programie PowerShell 5.0 przykładowa sekwencja ucieczki dla czerwonego tekstu jest $([char]0x1b)[91m. W programie PowerShell 6 i nowszych ta sama sekwencja ucieczki jest `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 w programie PSReadLine 2.2.0:

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

  • ListPredictionSelectedColor — ustawia kolor wskazujący, że zaznaczono element listy. Domyślnie używa DarkBlack jako koloru 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 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.
  • zaznaczenie: kolor wyróżnienia zaznaczenia menu lub zaznaczonego tekstu.
  • domyślny: 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.
  • zmiennej: kolor tokenu zmiennej.
  • command: kolor tokenu polecenia.
  • Parametr: kolor tokenu parametru.
  • Typ: kolor tokenu typu.
  • numer: kolor tokenu liczbowego.
  • elementu członkowskiego: 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 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.

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ść, polecenie PSReadLine monituje 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 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 sygnału, gdy BellStyle jest ustawiona 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, aby wyświetlić powiązania kluczy dla aktualnie skonfigurowanego 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 psReadLine wyświetla monit po wyświetleniu niektórych danych wyjściowych. Na przykład PSReadLine zwraca listę uzupełniania.

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

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 globalnej PSConsoleReadLineOption s jest ustawiona na True. Aby zmienić wartość właściwości, należy określić wartość SwitchParameter w następujący sposób: -HistoryNoDuplicates:$False. Możesz wrócić do True, używając tylko 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

innych niż 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 PSReadLine.

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

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

Nuta

Jeśli ustawisz HistorySaveStyle na SaveNothing, a następnie ustawisz ją na SaveIncrementally później w tej samej sesji, program 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 globalnej PSConsoleReadLineOption s jest ustawiona na False. Za pomocą tej SwitchParameter ustawia wartość właściwości na True. Aby zmienić wartość właściwości z powrotem, należy określić wartość 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 $False, 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 globalnej PSConsoleReadLineOption s jest ustawiona na False. Za pomocą tej SwitchParameter ustaw wartość właściwości na True. Aby zmienić wartość właściwości z powrotem, należy określić wartość 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 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:

  • None — 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.
  • Plugin — 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 historii 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. (ustawienie domyślne)
  • ListView — sugestie są renderowane na liście rozwijanej, a użytkownicy mogą wybrać 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. Wartość domyślna to "> ".

psReadLine analizuje funkcję monitu, aby określić, jak zmienić tylko kolor części monitu. Ta analiza nie jest niezawodna w 100%. Użyj tej opcji, jeśli 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 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 PSConsoleReadLineOption s jest ustawiona na True. Za pomocą tej SwitchParameter ustawia wartość właściwości na True. Aby zmienić wartość właściwości, należy określić wartość 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, aby $true.

W systemie Windows po naciśnięciu Ctrl+c, aby zakończyć proces, każdy proces dołączony do konsoli odbiera sygnał zakończenia, w przeciwieństwie do tylko 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 w celu $trueprogram 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 ViModeIndicator jest ustawiona na Script, 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 wizualny dla bieżącego trybu Vi. Tryb wstawiania lub trybu polecenia.

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

  • Brak: nie ma żadnego wskaźnika.
  • Monituj: monit zmienia kolor.
  • Kursor: kursor zmienia rozmiar.
  • skryptu: 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.