diff --git a/completion/ps/task.ps1 b/completion/ps/task.ps1 new file mode 100644 index 00000000..948d333e --- /dev/null +++ b/completion/ps/task.ps1 @@ -0,0 +1,10 @@ +$scriptBlock = { + param($commandName, $wordToComplete, $cursorPosition) + $curReg = "task{.exe}? (.*?)$" + $startsWith = $wordToComplete | Select-String $curReg -AllMatches | ForEach-Object { $_.Matches.Groups[1].Value } + $reg = "\* ($startsWith.+?):" + $listOutput = $(task -l) + $listOutput | Select-String $reg -AllMatches | ForEach-Object { $_.Matches.Groups[1].Value + " " } +} + +Register-ArgumentCompleter -Native -CommandName task -ScriptBlock $scriptBlock