共用方式為


Set-PSReadLineOption

自定義 PSReadLine 中命令行編輯的行為。

Syntax

Set-PSReadLineOption
   [-EditMode <EditMode>]
   [-ContinuationPrompt <String>]
   [-ContinuationPromptForegroundColor <ConsoleColor>]
   [-ContinuationPromptBackgroundColor <ConsoleColor>]
   [-EmphasisForegroundColor <ConsoleColor>]
   [-EmphasisBackgroundColor <ConsoleColor>]
   [-ErrorForegroundColor <ConsoleColor>]
   [-ErrorBackgroundColor <ConsoleColor>]
   [-HistoryNoDuplicates]
   [-AddToHistoryHandler <Func[string,bool]>]
   [-CommandValidationHandler <Action[CommandAst]>]
   [-HistorySearchCursorMovesToEnd]
   [-MaximumHistoryCount <Int32>]
   [-MaximumKillRingCount <Int32>]
   [-ResetTokenColors]
   [-ShowToolTips]
   [-ExtraPromptLineCount <Int32>]
   [-DingTone <Int32>]
   [-DingDuration <Int32>]
   [-BellStyle <BellStyle>]
   [-CompletionQueryItems <Int32>]
   [-WordDelimiters <String>]
   [-HistorySearchCaseSensitive]
   [-HistorySaveStyle <HistorySaveStyle>]
   [-HistorySavePath <String>]
   [<CommonParameters>]
Set-PSReadLineOption
   [-TokenKind] <TokenClassification>
   [[-ForegroundColor] <ConsoleColor>]
   [[-BackgroundColor] <ConsoleColor>]
   [<CommonParameters>]

Description

Cmdlet Set-PSReadLineOption 會在您編輯命令行時自定義 PSReadLine 模組的行為。 若要檢視 PSReadLine 設定,請使用 Get-PSReadLineOption

範例

範例 1:設定前景和背景色彩

本範例會將 PSReadLine 設定為在灰色背景上顯示具有綠色前景文字的 批註 標記。

Set-PSReadLineOption -TokenKind Comment -ForegroundColor Green -BackgroundColor Gray

範例 2:設定鈴鐺樣式

在此範例中, PSReadLine 會回應需要使用者注意的錯誤或狀況。 BellStyle 設定為在 60 毫秒 1221 Hz 發出可聽見的嗶聲。

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

參數

-AddToHistoryHandler

指定 ScriptBlock ,控制哪些命令會新增至 PSReadLine 歷程記錄。

ScriptBlock 會接收命令行做為輸入。 如果 ScriptBlock$True回 ,命令行就會新增至歷程記錄。

Type:Func[String, Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BackgroundColor

指定 TokenKind 參數所指定之令牌的背景色彩。

此參數可接受的值如下所示:

  • 黑色
  • 1:深藍色
  • 2:深綠色
  • 3:深青綠色
  • 4:深紅色
  • 5:深洋紅色
  • 6:深黃色
  • 灰色
  • 8:深灰色
  • 藍色
  • 綠色
  • 11:青色
  • 紅色
  • 桃紅色
  • 黃色
  • 白色
Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BellStyle

指定 PSReadLine 如何回應各種錯誤和模棱兩可的狀況。

有效值如下:

  • Audible:簡短的嗶聲。
  • 視覺效果:文字會短暫閃爍。
  • :沒有意見反應。
Type:BellStyle
Accepted values:None, Visual, Audible
Position:Named
Default value:Audible
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CommandValidationHandler

指定從 ValidateAndAcceptLine 呼叫的 ScriptBlock。 如果擲回例外狀況,驗證會失敗,並報告錯誤。

在擲回例外狀況之前,驗證處理程式可以將游標放在錯誤點,以便更輕鬆地修正。 驗證處理程式也可以變更命令行,例如更正常見的印刷樣式錯誤。

ValidateAndAcceptLine 可用來避免使用無法運作的命令雜亂您的歷程記錄。

Type:Action[CommandAst]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CompletionQueryItems

指定未提示的情況下顯示的最大完成項目數目。

如果要顯示的項目數目大於此值, PSReadLine 會在顯示完成專案之前提示 是/否

Type:Int32
Position:Named
Default value:100
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ContinuationPrompt

指定輸入多行輸入時,在後續行開頭顯示的字串。 預設值為雙引號 (>>) 。 空字串有效。

Type:String
Position:Named
Default value:>>
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ContinuationPromptBackgroundColor

指定接續提示的背景色彩。

可接受的值與 BackgroundColor 參數相同。

Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ContinuationPromptForegroundColor

指定接續提示的前景色彩。

可接受的值與 BackgroundColor 參數相同。

Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DingDuration

指定 當 BellStyle 設定為 Audible 時,嗶聲的持續時間。

Type:Int32
Position:Named
Default value:50ms
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DingTone

BellStyle 設定為 Audible 時,會指定擷 (Hz) 的音調。

Type:Int32
Position:Named
Default value:1221
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EditMode

指定命令行編輯模式。 使用此參數會重設 所 Set-PSReadLineKeyHandler設定的任何按鍵系結。

有效值如下:

  • Windows:按鍵系結會模擬 PowerShell、cmd 和 Visual Studio。
  • Emacs:金鑰系結會模擬 Bash 或 Emacs。
  • Vi:按鍵系結模擬 Vi。
Type:EditMode
Accepted values:Windows, Emacs, Vi
Position:Named
Default value:Windows
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EmphasisBackgroundColor

指定用於強調的背景色彩,例如醒目提示搜尋文字。

可接受的值與 BackgroundColor 參數相同。

Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EmphasisForegroundColor

指定用於強調的前景色彩,例如醒目提示搜尋文字。

可接受的值與 BackgroundColor 參數相同。

Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ErrorBackgroundColor

指定用於錯誤的背景色彩。

可接受的值與 BackgroundColor 參數相同。

Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ErrorForegroundColor

指定用於錯誤的前景色彩。

可接受的值與 BackgroundColor 參數相同。

Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ExtraPromptLineCount

指定額外的行數。

如果您的提示跨越一行以上,請指定此參數的值。 當 PSReadLine 顯示某些輸出之後的提示時,如果您希望有額外的行可供使用時,請使用此選項。 例如, PSReadLine 會傳回完成清單。

此選項比舊版 PSReadLine 還少,但在使用函式時 InvokePrompt 很有用。

Type:Int32
Position:Named
Default value:0
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ForegroundColor

指定 TokenKind 參數所指定之令牌的前景色彩。

可接受的值與 BackgroundColor 參數相同。

Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HistoryNoDuplicates

此選項可控制召回行為。 重複的命令仍會新增至歷程記錄檔。 設定此選項時,重新叫用命令時只會顯示最新的調用。

重複的命令會新增至歷程記錄,以在重新叫用期間保留順序。 不過,您通常不想在重新叫用或搜尋歷程記錄時多次看到命令。

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HistorySavePath

指定儲存歷程記錄之檔案的路徑。 檔案名會儲存在變數 $($host.Name)_history.txt中,例如 ConsoleHost_history.txt

如果您未使用此參數,預設路徑如下所示:

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

Type:String
Position:Named
Default value:$env:APPDATA\Microsoft\Windows\PowerShell\PSReadLine\$($host.Name)_history.txt
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HistorySaveStyle

指定 PSReadLine 儲存歷程記錄的方式。

下列是有效值:

  • SaveIncrementally:執行每個命令之後儲存歷程記錄,並在多個 PowerShell 實例之間共用。
  • SaveAtExit:P owerShell 結束時附加歷程記錄檔。
  • SaveNothing:請勿使用歷程記錄檔。
Type:HistorySaveStyle
Accepted values:SaveIncrementally, SaveAtExit, SaveNothing
Position:Named
Default value:SaveIncrementally
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HistorySearchCaseSensitive

指定 在 ReverseSearchHistoryHistorySearchBackward 等函式中,歷程記錄搜尋會區分大小寫。

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HistorySearchCursorMovesToEnd

表示游標會移至您使用搜尋從歷程記錄載入的命令結尾。 當此參數設定為 $False時,游標會保留在按下向上或向下箭號時的位置。

若要關閉此選項,您可以執行下列其中一個命令:

Set-PSReadLineOption -HistorySearchCursorMovesToEnd:$False

(Get-PSReadLineOption).HistorySearchCursorMovesToEnd = $False

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaximumHistoryCount

指定要儲存在 PSReadLine 歷程記錄中的命令數目上限。

PSReadLine 歷程記錄與 PowerShell 歷程記錄不同。

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaximumKillRingCount

指定終止通道中儲存的項目數目上限。

Type:Int32
Position:Named
Default value:10
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResetTokenColors

指出此 Cmdlet 會將令牌色彩還原至預設設定。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ShowToolTips

顯示可能的完成時,工具提示會顯示在完成清單中。

這個選項預設為啟用。 此選項預設不會在舊版 PSReadLine 中啟用。 若要停用,請將此選項設定為 $False

Type:SwitchParameter
Position:Named
Default value:True
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TokenKind

當您使用 ForegroundColorBackgroundColor 參數設定令牌色彩選項時,指定令牌。

此參數可接受的值如下所示:

  • 註解
  • 關鍵字
  • 字串
  • 運算子
  • 變數
  • 命令
  • 參數
  • 類型
  • 數字
  • 成員
Type:TokenClassification
Accepted values:None, Comment, Keyword, String, Operator, Variable, Command, Parameter, Type, Number, Member
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WordDelimiters

指定用來分隔 ForwardWordKillWord 等函式字組的字元。

Type:String
Position:Named
Default value:;:,.[]{}()/\|^&*-=+-—―
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

None

您無法將物件向下傳送至 Set-PSReadLineOption

輸出

None

Set-PSReadLineOption 不會產生輸出。