tabexpansion
函数仅在我覆盖它时才部分起作用:
function tabexpansion {
param($line, $lastWord)
if ($line -eq "hey ") {
"you", "Joe"
}
}
自定义完成按预期工作,但现在我只获得cmdlet名称的默认自动完成行为,而不是参数。所以 New - TAB 工作正常,但 New-Alias - TAB 却没有。在覆盖tabexpansion
之后如何获得常规完成?
答案 0 :(得分:1)
如果函数不对这些函数执行任何操作,则在shell本身中处理文件名和cmdlet扩展。其他所有内容,包括静态成员,cmdlet参数,& c。由函数处理。如果你看一下Function:TabExpansion
,那么你可能想要保留其他标签完成功能仍然有效。