From 853efb1546bfebc8f529f4513543c2b269b2ef95 Mon Sep 17 00:00:00 2001 From: xq114 <1140735506@qq.com> Date: Thu, 29 Dec 2022 17:38:28 +0800 Subject: add xrepo completion for windows --- scripts/register-completions.ps1 | 13 +++++++++++++ scripts/register-completions.sh | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) (limited to 'scripts') diff --git a/scripts/register-completions.ps1 b/scripts/register-completions.ps1 index a9ecd7877..e54e38c16 100755 --- a/scripts/register-completions.ps1 +++ b/scripts/register-completions.ps1 @@ -13,3 +13,16 @@ Register-ArgumentCompleter -Native -CommandName xmake -ScriptBlock { } $env:XMAKE_SKIP_HISTORY = $oldenv } +Register-ArgumentCompleter -Native -CommandName xrepo -ScriptBlock { + param($commandName, $wordToComplete, $cursorPosition) + $complete = "$wordToComplete" + if (-not $commandName) { + $complete = $complete + " " + } + $oldenv = $env:XMAKE_SKIP_HISTORY + $env:XMAKE_SKIP_HISTORY = 1 + xmake lua --root private.xrepo.complete "0" "nospace" "$complete" | ForEach-Object { + [System.Management.Automation.CompletionResult]::new($_, $_, 'ParameterValue', $_) + } + $env:XMAKE_SKIP_HISTORY = $oldenv +} diff --git a/scripts/register-completions.sh b/scripts/register-completions.sh index 40a8edac3..f3da05f10 100755 --- a/scripts/register-completions.sh +++ b/scripts/register-completions.sh @@ -16,7 +16,7 @@ if [[ "$SHELL" = */zsh ]]; then local completions=("$(XMAKE_SKIP_HISTORY=1 XMAKE_ROOT=y xmake lua private.xrepo.complete 0 nospace "$words")") reply=( "${(ps:\n:)completions}" ) } - compctl -f -S "" -K _xrepo_zsh_complete xmake + compctl -f -S "" -K _xrepo_zsh_complete xrepo elif [[ "$SHELL" = */bash ]]; then # bash parameter completion for xmake -- cgit v1.3.1