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
指定 在 ReverseSearchHistory 或 HistorySearchBackward 等函式中,歷程記錄搜尋會區分大小寫。
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
當您使用 ForegroundColor 和 BackgroundColor 參數設定令牌色彩選項時,指定令牌。
此參數可接受的值如下所示:
- 無
- 註解
- 關鍵字
- 字串
- 運算子
- 變數
- 命令
- 參數
- 類型
- 數字
- 成員
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
指定用來分隔 ForwardWord 或 KillWord 等函式字組的字元。
Type: | String |
Position: | Named |
Default value: | ;:,.[]{}()/\|^&*-=+-—― |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
輸入
None
您無法將物件向下傳送至 Set-PSReadLineOption
。
輸出
None
Set-PSReadLineOption
不會產生輸出。