@@ -205,6 +205,8 @@ Register-ArgumentCompleter -Native -CommandName moshcode -ScriptBlock {
205205 { $_ -in @('template', 'templates') } {
206206 if ($argumentIndex -eq 2) {
207207 $choices = $script:MoshcodeCompletionTemplate
208+ } elseif ($nested -eq 'list' -and $wordToComplete.StartsWith('-')) {
209+ $choices = $script:MoshcodeCompletionJson
208210 } elseif ($nested -eq 'install' -and $wordToComplete.StartsWith('-')) {
209211 $choices = $script:MoshcodeCompletionTemplateInstall
210212 }
@@ -306,6 +308,8 @@ _moshcode_completion() {
306308 template|templates)
307309 if (( COMP_CWORD == 2 )); then
308310 choices="list install"
311+ elif [[ "$nested" == "list" && "$cur" == -* ]]; then
312+ choices="--json"
309313 elif [[ "$nested" == "install" && "$cur" == -* ]]; then
310314 choices="--into --force --dry-run"
311315 fi
@@ -432,6 +436,8 @@ _moshcode() {
432436 template|templates)
433437 if (( CURRENT == 3 )); then
434438 _values "template command" list install
439+ elif [[ "\${words[3]}" == "list" && "$PREFIX" == -* ]]; then
440+ _values "template list option" --json
435441 elif [[ "\${words[3]}" == "install" && "$PREFIX" == -* ]]; then
436442 _values "template install option" --into --force --dry-run
437443 else
@@ -504,6 +510,7 @@ complete -c moshcode -n '__moshcode_nested_is dns resolve' -l json -d 'print JSO
504510complete -c moshcode -n '__moshcode_nested_is dns resolve' -l open -d 'open a parked name in the Pit'
505511complete -c moshcode -n '__moshcode_nested_is dns resolve' -l registry -r -d 'registry base URL'
506512complete -c moshcode -n '${ atSecondToken ( "template templates" ) } ' -a 'list install' -d 'template command'
513+ complete -c moshcode -n '__moshcode_nested_is template list; or __moshcode_nested_is templates list' -l json -d 'print JSON'
507514complete -c moshcode -n '__moshcode_nested_is template install; or __moshcode_nested_is templates install' -l into -r -d 'target directory'
508515complete -c moshcode -n '__moshcode_nested_is template install; or __moshcode_nested_is templates install' -l force -d 'overwrite existing files'
509516complete -c moshcode -n '__moshcode_nested_is template install; or __moshcode_nested_is templates install' -l dry-run -d 'preview without writing'
0 commit comments