接受部分自动补全
Accept part of the autocompletion
我最近给自己买了一台新的 Windows 11 笔记本电脑,并开始探索 powershell。以前从未在 Windows 上使用过它,但我是 Mac 中 zsh
的常客,所以不是全新的。
我将 Powershell 升级到 7.2.1
,但发现我习惯使用 Oh My Zsh 的自动建议类型功能丢失了。经过一番搜索后,我安装了 PSReadLine
,并使用以下设置我的配置文件:
Import-Module PSReadLine
Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -HistorySearchCursorMovesToEnd
Set-PSReadLineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadLineKeyHandler -Key DownArrow -Function HistorySearchForward
Set-PSReadLineKeyHandler -Key Tab -Function Complete
这比以前好多了,但我注意到我不能部分接受自动完成。
例如,这是我历史的一部分:
New-item –type file –force $profile
如果我现在尝试创建一个文件 test-file
,然后开始输入 New-Item
,我会得到建议。我想接受到 -force
结束,或者可能到 file
。这没有发生,无论我尝试什么组合键(尝试 Ctrl+→, Shift+→, Alt+→, Fn+→ 白费了).
当然,我可以接受完整的建议,删除我不需要的。虽然对于这个例子来说这真的无关紧要,但对于只在初始部分出现匹配的长命令来说会很烦人。所以,我的问题是什么是部分接受建议的组合,或者如果需要单独启用,我该怎么做?
来自 about_PSReadLine 文档
AcceptNextWordSuggestion
Accepts the next word of the inline suggestion from Predictive IntelliSense. This function can be bound
with Ctrl+F by running the following command.
Set-PSReadLineKeyHandler -Chord "Ctrl+f" -Function ForwardWord
我最近给自己买了一台新的 Windows 11 笔记本电脑,并开始探索 powershell。以前从未在 Windows 上使用过它,但我是 Mac 中 zsh
的常客,所以不是全新的。
我将 Powershell 升级到 7.2.1
,但发现我习惯使用 Oh My Zsh 的自动建议类型功能丢失了。经过一番搜索后,我安装了 PSReadLine
,并使用以下设置我的配置文件:
Import-Module PSReadLine
Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -HistorySearchCursorMovesToEnd
Set-PSReadLineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadLineKeyHandler -Key DownArrow -Function HistorySearchForward
Set-PSReadLineKeyHandler -Key Tab -Function Complete
这比以前好多了,但我注意到我不能部分接受自动完成。
例如,这是我历史的一部分:
New-item –type file –force $profile
如果我现在尝试创建一个文件 test-file
,然后开始输入 New-Item
,我会得到建议。我想接受到 -force
结束,或者可能到 file
。这没有发生,无论我尝试什么组合键(尝试 Ctrl+→, Shift+→, Alt+→, Fn+→ 白费了).
当然,我可以接受完整的建议,删除我不需要的。虽然对于这个例子来说这真的无关紧要,但对于只在初始部分出现匹配的长命令来说会很烦人。所以,我的问题是什么是部分接受建议的组合,或者如果需要单独启用,我该怎么做?
来自 about_PSReadLine 文档
AcceptNextWordSuggestion
Accepts the next word of the inline suggestion from Predictive IntelliSense. This function can be bound with Ctrl+F by running the following command.
Set-PSReadLineKeyHandler -Chord "Ctrl+f" -Function ForwardWord