From f54b4183a06702d80cc623489377f0e52006ac34 Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Fri, 28 Mar 2025 08:49:26 +0000 Subject: [PATCH] cmd/services: add named arguments. This improves the generated completions. Co-authored-by: Eric Knibbe --- Library/Homebrew/cmd/services.rb | 2 +- completions/bash/brew | 1 + completions/fish/brew.fish | 8 ++++++++ completions/zsh/_brew | 4 +++- 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/cmd/services.rb b/Library/Homebrew/cmd/services.rb index 2dddd589ff..4cae7cbf70 100644 --- a/Library/Homebrew/cmd/services.rb +++ b/Library/Homebrew/cmd/services.rb @@ -60,7 +60,7 @@ module Homebrew switch "--no-wait", description: "Don't wait for `stop` to finish stopping the service." switch "--keep", description: "When stopped, don't unregister the service from launching at login (or boot)." conflicts "--max-wait=", "--no-wait" - named_args + named_args %w[list info run start stop kill restart cleanup] end sig { override.void } diff --git a/completions/bash/brew b/completions/bash/brew index c607d1ddac..c57dd09cf4 100644 --- a/completions/bash/brew +++ b/completions/bash/brew @@ -2346,6 +2346,7 @@ _brew_services() { ;; *) ;; esac + __brewcomp "list info run start stop kill restart cleanup" } _brew_setup_ruby() { diff --git a/completions/fish/brew.fish b/completions/fish/brew.fish index b1b661635c..5e53345443 100644 --- a/completions/fish/brew.fish +++ b/completions/fish/brew.fish @@ -1538,6 +1538,14 @@ __fish_brew_complete_arg 'search' -l verbose -d 'Make some output more verbose' __fish_brew_complete_cmd 'services' 'Manage background services with macOS\' `launchctl`(1) daemon manager or Linux\'s `systemctl`(1) service manager' +__fish_brew_complete_sub_cmd 'services' 'list' +__fish_brew_complete_sub_cmd 'services' 'info' +__fish_brew_complete_sub_cmd 'services' 'run' +__fish_brew_complete_sub_cmd 'services' 'start' +__fish_brew_complete_sub_cmd 'services' 'stop' +__fish_brew_complete_sub_cmd 'services' 'kill' +__fish_brew_complete_sub_cmd 'services' 'restart' +__fish_brew_complete_sub_cmd 'services' 'cleanup' __fish_brew_complete_arg 'services' -l all -d 'Run subcommand on all services' __fish_brew_complete_arg 'services' -l debug -d 'Display any debugging information' __fish_brew_complete_arg 'services' -l file -d 'Use the service file from this location to `start` the service' diff --git a/completions/zsh/_brew b/completions/zsh/_brew index f103fd0f72..b250776f5d 100644 --- a/completions/zsh/_brew +++ b/completions/zsh/_brew @@ -1902,7 +1902,9 @@ _brew_services() { '(--max-wait)--no-wait[Don'\''t wait for `stop` to finish stopping the service]' \ '--quiet[Make some output more quiet]' \ '--sudo-service-user[When run as root on macOS, run the service(s) as this user]' \ - '--verbose[Make some output more verbose]' + '--verbose[Make some output more verbose]' \ + - subcommand \ + '*::subcommand:(list info run start stop kill restart cleanup)' } # brew setup-ruby