# Fish shell completions for Homebrew
# This file is automatically generated by running `brew generate-man-completions`.
# See Library/Homebrew/completions/fish.erb for editing instructions.

# A note about aliases:
#
# * When defining completions for the (sub)commands themselves, only the full names are used, as they
#   are more descriptive and worth completing. Aliases are usually shorter than the full names, and
#   exist exactly to save time for users who already know what they want and are going to type the
#   command anyway (i.e. without completion).
# * Nevertheless, it's important to support aliases in the completions for their arguments/options.

##########################
## COMMAND LINE PARSING ##
##########################

function __fish_brew_args -d "Returns a list of all arguments given to brew"

    set -l tokens (commandline -opc)
    set -e tokens[1] # remove 'brew'
    for t in $tokens
        echo $t
    end
end

function __fish_brew_expand_alias -a cmd -d "Expands a Homebrew command alias"
    switch $cmd
        case 'ls'
            echo 'list'
        case 'homepage'
            echo 'home'
        case '-S'
            echo 'search'
        case 'up'
            echo 'update'
        case 'ln'
            echo 'link'
        case 'instal'
            echo 'install'
        case 'uninstal'
            echo 'uninstall'
        case 'post_install'
            echo 'postinstall'
        case 'rm'
            echo 'uninstall'
        case 'remove'
            echo 'uninstall'
        case 'abv'
            echo 'info'
        case 'dr'
            echo 'doctor'
        case '--repo'
            echo '--repository'
        case 'environment'
            echo '--env'
        case '--config'
            echo 'config'
        case '-v'
            echo '--version'
        case 'lc'
            echo 'livecheck'
        case 'tc'
            echo 'typecheck'
        case 'x'
            echo 'exec'
        case '*'
            echo $cmd
    end
end

function __fish_brew_opts -d "Only arguments starting with a dash (options)"
    string match --all -- '-*' (__fish_brew_args)
end

# This can be used either to get the first argument or to match it against a given list of commands
#
# Usage examples (for `completion -n '...'`):
# * `__fish_brew_command` returns the command (first arg of brew) or exits with 1
# * `not __fish_brew_command` returns true when brew doesn't have a command yet
# * `__fish_brew_command list ls` returns true when brew command is _either_ `list` _or_ `ls`
#
function __fish_brew_command -d "Helps matching the first argument of brew"
    set args (__fish_brew_args)
    set -q args[1]; or return 1
    set -l cmd (__fish_brew_expand_alias $args[1])

    if count $argv
        contains -- $cmd $argv
    else
        echo $cmd
    end
end

function __fish_brew_subcommand -a cmd -d "Helps matching the second argument of brew"
    set args (__fish_brew_args)

    __fish_brew_command $cmd
    and set -q args[2]
    and set -l sub $args[2]
    or return 1

    set -e argv[1]
    if count $argv
        contains -- $sub $argv
    else
        echo $sub
    end
end

# This can be used to match any given option against the given list of arguments:
# * to add condition on interdependent options
# * to add condition on mutually exclusive options
#
# Usage examples (for `completion -n '...'`):
# * `__fish_brew_opt -s --long` returns true if _either_ `-s` _or_ `--long` is present
# * `not __fish_brew_opt --foo --bar` will work only if _neither_ `--foo` _nor_ `--bar` are present
#
function __fish_brew_opt -d "Helps matching brew options against the given list"

    not count $argv
    or contains -- $argv[1] (__fish_brew_opts)
    or begin
        set -q argv[2]
        and __fish_brew_opt $argv[2..-1]
    end
end


######################
## SUGGESTION LISTS ##
######################
# These functions return lists of suggestions for arguments completion

function __fish_brew_suggest_formulae_all -d 'Lists all available formulae with their descriptions'
    HOMEBREW_COMPLETION=1 brew formulae
end

function __fish_brew_suggest_formulae_installed
    command ls -1 (brew --cellar)
end


function __fish_brew_suggest_formulae_outdated -d "List of outdated formulae with the information about potential upgrade"
    HOMEBREW_NO_AUTO_UPDATE=1 brew outdated --formula --verbose 2>/dev/null \
        # replace first space with tab to make the following a description in the completions list:
        | string replace -r '\s' '\t'
end

function __fish_brew_suggest_formula_options -a formula -d "List installation options for a given formula"
    function list_pairs
        set -q argv[2]; or return 0
        echo $argv[1]\t$argv[2]
        set -e argv[1..2]
        list_pairs $argv
    end

    # brew options lists options name and its description on different lines
    list_pairs (brew options $formula | string trim)
end

function __fish_brew_suggest_casks_all -d "Lists locally available casks"
    HOMEBREW_COMPLETION=1 brew casks
end

function __fish_brew_suggest_casks_installed -d "Lists installed casks"
    command ls -1 (brew --caskroom) 2>/dev/null
end

function __fish_brew_suggest_casks_outdated -d "Lists outdated casks with the information about potential upgrade"
    HOMEBREW_NO_AUTO_UPDATE=1 brew outdated --cask --verbose 2>/dev/null \
        # replace first space with tab to make the following a description in the completions list:
        | string replace -r '\s' '\t'
end

function __fish_brew_suggest_taps_installed -d "List all available taps"
    command find (brew --repo)/Library/Taps -mindepth 2 -maxdepth 2 -type d \
    | string replace homebrew- "" \
    | string replace (brew --repo)/Library/Taps/ ""
end

function __fish_brew_suggest_aliases -d "Lists user-defined aliases"
    set -l aliases_dir "$HOME/.config/brew-aliases"
    test -d $aliases_dir; or set aliases_dir "$HOME/.brew-aliases"
    test -d $aliases_dir; or return

    for file in $aliases_dir/*
        test -f $file; and not string match -q '*~' -- $file; or continue
        set -l alias_name (string replace -r '^.*/' '' -- $file)
        begin
            read -l line
            if read -l line
                set -l match (string match -rg 'alias: brew ([^[:space:]]+)' -- $line)
                test -n "$match"; and set alias_name $match[1]
            end
        end < $file
        echo $alias_name
    end
end

function __fish_brew_suggest_commands -d "Lists all command names"
    set -l commands
    if test -f (brew --cache)/all_commands_list.txt
        set commands (cat (brew --cache)/all_commands_list.txt)
    else
        set commands (cat (brew --repo)/completions/internal_commands_list.txt)
    end
    for command in $commands
        set -l expanded_command (__fish_brew_expand_alias $command)
        test "$expanded_command" = "$command"; and echo $command
    end
    __fish_brew_suggest_aliases
end

function __fish_brew_suggest_diagnostic_checks -d "List available diagnostic checks"
    brew doctor --list-checks
end

function __fish_brew_suggest_services -d "Lists available services"
    command find (brew --cellar) -mindepth 3 -maxdepth 3 -name '*.service' \
      | awk -F'homebrew.|.service' '{print $3}' \
      | sort -d
end


##########################
## COMPLETION SHORTCUTS ##
##########################

function __fish_brew_complete_cmd -a cmd -d "A shortcut for defining brew commands completions"
    set -e argv[1]
    complete -f -c brew -n 'not __fish_brew_command' -a $cmd -d $argv
end

function __fish_brew_complete_arg -a cond -d "A shortcut for defining arguments completion for brew commands"
    set -e argv[1]
    # NOTE: $cond can be just a name of a command (or several) or additionally any other condition
    complete -f -c brew -n "__fish_brew_command $cond" $argv
end

function __fish_brew_complete_sub_cmd -a cmd sub -d "A shortcut for defining brew subcommands completions"
    set -e argv[1..2]
    if count $argv > /dev/null
        __fish_brew_complete_arg "$cmd; and [ (count (__fish_brew_args)) = 1 ]" -a $sub -d $argv
    else
        __fish_brew_complete_arg "$cmd; and [ (count (__fish_brew_args)) = 1 ]" -a $sub
    end
end

function __fish_brew_complete_sub_arg -a cmd sub -d "A shortcut for defining brew subcommand arguments completions"
    set -e argv[1..2]
    # NOTE: $sub can be just a name of a subcommand (or several) or additionally any other condition
    complete -f -c brew -n "__fish_brew_subcommand $cmd $sub" $argv
end


##############
## COMMANDS ##
##############


__fish_brew_complete_cmd '--cache' 'Display Homebrew\'s download cache'
__fish_brew_complete_arg '--cache' -l HEAD -d 'Show the cache file used when building from HEAD'
__fish_brew_complete_arg '--cache' -l arch -d 'Show cache file for the given CPU architecture. (Pass `all` to show cache files for all architectures.)'
__fish_brew_complete_arg '--cache' -l bottle-tag -d 'Show the cache file used when pouring a bottle for the given tag'
__fish_brew_complete_arg '--cache' -l build-from-source -d 'Show the cache file used when building from source'
__fish_brew_complete_arg '--cache' -l cask -d 'Only show cache files for casks'
__fish_brew_complete_arg '--cache' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg '--cache' -l force-bottle -d 'Show the cache file used when pouring a bottle'
__fish_brew_complete_arg '--cache' -l formula -d 'Only show cache files for formulae'
__fish_brew_complete_arg '--cache' -l help -d 'Show this message'
__fish_brew_complete_arg '--cache' -l os -d 'Show cache file for the given operating system. (Pass `all` to show cache files for all operating systems.)'
__fish_brew_complete_arg '--cache' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg '--cache' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg '--cache; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg '--cache; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd '--caskroom' 'Display Homebrew\'s Caskroom path'
__fish_brew_complete_arg '--caskroom' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg '--caskroom' -l help -d 'Show this message'
__fish_brew_complete_arg '--caskroom' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg '--caskroom' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg '--caskroom' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd '--cellar' 'Display Homebrew\'s Cellar path'
__fish_brew_complete_arg '--cellar' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg '--cellar' -l help -d 'Show this message'
__fish_brew_complete_arg '--cellar' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg '--cellar' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg '--cellar' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd '--env' 'Summarise Homebrew\'s build environment as a plain list'
__fish_brew_complete_arg '--env' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg '--env' -l help -d 'Show this message'
__fish_brew_complete_arg '--env' -l plain -d 'Generate plain output even when piped'
__fish_brew_complete_arg '--env' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg '--env' -l shell -d 'Generate a list of environment variables for the specified shell, or `--shell=auto` to detect the current shell'
__fish_brew_complete_arg '--env' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg '--env' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd '--prefix' 'Display Homebrew\'s install path'
__fish_brew_complete_arg '--prefix' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg '--prefix' -l help -d 'Show this message'
__fish_brew_complete_arg '--prefix' -l installed -d 'Outputs nothing and returns a failing status code if formula is not installed'
__fish_brew_complete_arg '--prefix' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg '--prefix' -l unbrewed -d 'List files in Homebrew\'s prefix not installed by Homebrew'
__fish_brew_complete_arg '--prefix' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg '--prefix' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd '--repository' 'Display where Homebrew\'s Git repository is located'
__fish_brew_complete_arg '--repository' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg '--repository' -l help -d 'Show this message'
__fish_brew_complete_arg '--repository' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg '--repository' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg '--repository' -a '(__fish_brew_suggest_taps_installed)'


__fish_brew_complete_cmd '--taps' 'Display the path to Homebrew’s Taps directory'
__fish_brew_complete_arg '--taps' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg '--taps' -l help -d 'Show this message'
__fish_brew_complete_arg '--taps' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg '--taps' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd '--version' 'Print the version numbers of Homebrew, Homebrew/homebrew-core and Homebrew/homebrew-cask (if tapped) to standard output'
__fish_brew_complete_arg '--version' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg '--version' -l help -d 'Show this message'
__fish_brew_complete_arg '--version' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg '--version' -l verbose -d 'Make some output more verbose'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'advisory-match' -d 'Match formula against OSV.dev (GIT, language-registry and distro ecosystems) and CPANSA to produce candidate `BREW-*` advisory records for https://github.com/Homebrew/advisory-database'
__fish_brew_complete_arg 'advisory-match' -l all -d 'Match every formula in `homebrew/core`'
__fish_brew_complete_arg 'advisory-match' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'advisory-match' -l help -d 'Show this message'
__fish_brew_complete_arg 'advisory-match' -l index -d 'Emit the formula-identity index as JSON and exit'
__fish_brew_complete_arg 'advisory-match' -l json -d 'Output candidate records as a JSON array'
__fish_brew_complete_arg 'advisory-match' -l no-history -d 'Skip the `FormulaVersions` walk for the `fixed` boundary; use the current `pkg_version` instead'
__fish_brew_complete_arg 'advisory-match' -l output -d 'Write each record to directory as `BREW-formula-id.json`, preserving existing `published`/`ranges` fields'
__fish_brew_complete_arg 'advisory-match' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'advisory-match' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'advisory-match' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'alias' 'Show an alias\'s command'
__fish_brew_complete_arg 'alias' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'alias' -l edit -d 'Edit aliases in a text editor. Either one or all aliases may be opened at once. If the given alias doesn\'t exist it\'ll be pre-populated with a template'
__fish_brew_complete_arg 'alias' -l help -d 'Show this message'
__fish_brew_complete_arg 'alias' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'alias' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'analytics' 'Control Homebrew\'s anonymous aggregate user behaviour analytics'
__fish_brew_complete_sub_cmd 'analytics' 'state' 'Display the current state of Homebrew\'s analytics'
__fish_brew_complete_sub_cmd 'analytics' 'regenerate-uuid' 'Delete Homebrew\'s legacy analytics UUID'
__fish_brew_complete_sub_cmd 'analytics' 'on' 'Turn Homebrew\'s analytics on'
__fish_brew_complete_sub_cmd 'analytics' 'off' 'Turn Homebrew\'s analytics off'
__fish_brew_complete_arg 'analytics; and [ (count (__fish_brew_args)) = 1 ]' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'analytics; and [ (count (__fish_brew_args)) = 1 ]' -l help -d 'Show this message'
__fish_brew_complete_arg 'analytics; and [ (count (__fish_brew_args)) = 1 ]' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'analytics; and [ (count (__fish_brew_args)) = 1 ]' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'analytics' 'state' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'analytics' 'state' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'analytics' 'state' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'analytics' 'state' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'analytics' 'regenerate-uuid' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'analytics' 'regenerate-uuid' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'analytics' 'regenerate-uuid' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'analytics' 'regenerate-uuid' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'analytics' 'on' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'analytics' 'on' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'analytics' 'on' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'analytics' 'on' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'analytics' 'off' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'analytics' 'off' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'analytics' 'off' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'analytics' 'off' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'as-console-user' 'Run a Homebrew command as the active macOS console user'
__fish_brew_complete_arg 'as-console-user' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'as-console-user' -l help -d 'Show this message'
__fish_brew_complete_arg 'as-console-user' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'as-console-user' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'audit' 'Check formula or cask for Homebrew coding style violations'
__fish_brew_complete_arg 'audit' -l arch -d 'Audit the given CPU architecture. (Pass `all` to audit all architectures.)'
__fish_brew_complete_arg 'audit' -l audit-debug -d 'Enable debugging and profiling of audit methods'
__fish_brew_complete_arg 'audit' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'audit' -l changed -d 'Check files that were changed from the `main` branch'
__fish_brew_complete_arg 'audit' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'audit' -l display-filename -d 'Prefix every line of output with the file or formula name being audited, to make output easy to grep'
__fish_brew_complete_arg 'audit' -l except -d 'Specify a comma-separated method list to skip running the methods named `audit_`method'
__fish_brew_complete_arg 'audit' -l except-cops -d 'Specify a comma-separated cops list to skip checking for violations of the listed RuboCop cops'
__fish_brew_complete_arg 'audit' -l fix -d 'Fix style violations automatically using RuboCop\'s auto-correct feature'
__fish_brew_complete_arg 'audit' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'audit' -l git -d 'Run additional, slower style checks that navigate the Git repository'
__fish_brew_complete_arg 'audit' -l help -d 'Show this message'
__fish_brew_complete_arg 'audit' -l installed -d 'Only check formulae and casks that are currently installed'
__fish_brew_complete_arg 'audit' -l new -d 'Run various additional style checks to determine if a new formula or cask is eligible for Homebrew. This should be used when creating new formulae or casks and implies `--strict` and `--online`'
__fish_brew_complete_arg 'audit' -l online -d 'Run additional, slower style checks that require a network connection'
__fish_brew_complete_arg 'audit' -l only -d 'Specify a comma-separated method list to only run the methods named `audit_`method'
__fish_brew_complete_arg 'audit' -l only-cops -d 'Specify a comma-separated cops list to check for violations of only the listed RuboCop cops'
__fish_brew_complete_arg 'audit' -l os -d 'Audit the given operating system. (Pass `all` to audit all operating systems.)'
__fish_brew_complete_arg 'audit' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'audit' -l skip-style -d 'Skip running non-RuboCop style checks. Useful if you plan on running `brew style` separately. Enabled by default unless a formula is specified by name'
__fish_brew_complete_arg 'audit' -l strict -d 'Run additional, stricter style checks'
__fish_brew_complete_arg 'audit' -l tap -d 'Check formulae and casks within the given tap, specified as user`/`repo'
__fish_brew_complete_arg 'audit' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'audit; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'audit; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'autoremove' 'Uninstall formulae that were only installed as a dependency of another formula and are now no longer needed'
__fish_brew_complete_arg 'autoremove' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'autoremove' -l dry-run -d 'List what would be uninstalled, but do not actually uninstall anything'
__fish_brew_complete_arg 'autoremove' -l help -d 'Show this message'
__fish_brew_complete_arg 'autoremove' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'autoremove' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'bottle' 'Generate a bottle (binary package) from a formula that was installed with `--build-bottle`'
__fish_brew_complete_arg 'bottle' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'bottle' -l force-core-tap -d 'Build a bottle even if formula is not in `homebrew/core` or any installed taps'
__fish_brew_complete_arg 'bottle' -l help -d 'Show this message'
__fish_brew_complete_arg 'bottle' -l json -d 'Write bottle information to a JSON file, which can be used as the value for `--merge`'
__fish_brew_complete_arg 'bottle' -l keep-old -d 'If the formula specifies a rebuild version, attempt to preserve its value in the generated DSL'
__fish_brew_complete_arg 'bottle' -l merge -d 'Generate an updated bottle block for a formula and optionally merge it into the formula file. Instead of a formula name, requires the path to a JSON file generated with `brew bottle --json` formula'
__fish_brew_complete_arg 'bottle' -l no-all-checks -d 'Don\'t try to create an `all` bottle or stop a no-change upload'
__fish_brew_complete_arg 'bottle' -l no-commit -d 'When passed with `--write`, a new commit will not generated after writing changes to the formula file'
__fish_brew_complete_arg 'bottle' -l no-rebuild -d 'If the formula specifies a rebuild version, remove it from the generated DSL'
__fish_brew_complete_arg 'bottle' -l only-json-tab -d 'When passed with `--json`, the tab will be written to the JSON file but not the bottle'
__fish_brew_complete_arg 'bottle' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'bottle' -l root-url -d 'Use the specified URL as the root of the bottle\'s URL instead of Homebrew\'s default'
__fish_brew_complete_arg 'bottle' -l root-url-using -d 'Use the specified download strategy class for downloading the bottle\'s URL instead of Homebrew\'s default'
__fish_brew_complete_arg 'bottle' -l skip-relocation -d 'Do not check if the bottle can be marked as relocatable'
__fish_brew_complete_arg 'bottle' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'bottle' -l write -d 'Write changes to the formula file. A new commit will be generated unless `--no-commit` is passed'
__fish_brew_complete_arg 'bottle' -a '(__fish_brew_suggest_formulae_installed)'


__fish_brew_complete_cmd 'bump' 'Displays out-of-date packages and the latest version available'
__fish_brew_complete_arg 'bump' -l bump-synced -d 'Bump additional formulae marked as synced with the given formulae'
__fish_brew_complete_arg 'bump' -l cask -d 'Check only casks'
__fish_brew_complete_arg 'bump' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'bump' -l formula -d 'Check only formulae'
__fish_brew_complete_arg 'bump' -l full-name -d 'Print formulae/casks with fully-qualified names'
__fish_brew_complete_arg 'bump' -l help -d 'Show this message'
__fish_brew_complete_arg 'bump' -l installed -d 'Check formulae and casks that are currently installed'
__fish_brew_complete_arg 'bump' -l no-autobump -d 'Ignore formulae/casks in autobump list (official repositories only)'
__fish_brew_complete_arg 'bump' -l no-fork -d 'Don\'t try to fork the repository'
__fish_brew_complete_arg 'bump' -l no-pull-requests -d 'Do not retrieve pull requests from GitHub'
__fish_brew_complete_arg 'bump' -l open-pr -d 'Open a pull request for the new version if none have been opened yet'
__fish_brew_complete_arg 'bump' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'bump' -l repology -d 'Use Repology to check for outdated packages'
__fish_brew_complete_arg 'bump' -l start-with -d 'Letter or word that the list of package results should alphabetically follow'
__fish_brew_complete_arg 'bump' -l tap -d 'Check formulae and casks within the given tap, specified as user`/`repo'
__fish_brew_complete_arg 'bump' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'bump; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'bump; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'bump-cask-pr' 'Create a pull request to update cask with a new version'
__fish_brew_complete_arg 'bump-cask-pr' -l commit -d 'When passed with `--write-only`, generate a new commit after writing changes to the cask file'
__fish_brew_complete_arg 'bump-cask-pr' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'bump-cask-pr' -l dry-run -d 'Print what would be done rather than doing it'
__fish_brew_complete_arg 'bump-cask-pr' -l fork-org -d 'Use the specified GitHub organization for forking'
__fish_brew_complete_arg 'bump-cask-pr' -l help -d 'Show this message'
__fish_brew_complete_arg 'bump-cask-pr' -l message -d 'Prepend message to the default pull request message'
__fish_brew_complete_arg 'bump-cask-pr' -l no-audit -d 'Don\'t run `brew audit` before opening the PR'
__fish_brew_complete_arg 'bump-cask-pr' -l no-browse -d 'Print the pull request URL instead of opening in a browser'
__fish_brew_complete_arg 'bump-cask-pr' -l no-fork -d 'Don\'t try to fork the repository'
__fish_brew_complete_arg 'bump-cask-pr' -l no-style -d 'Don\'t run `brew style --fix` before opening the PR'
__fish_brew_complete_arg 'bump-cask-pr' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'bump-cask-pr' -l sha256 -d 'Specify the SHA-256 checksum of the new download'
__fish_brew_complete_arg 'bump-cask-pr' -l url -d 'Specify the URL for the new download'
__fish_brew_complete_arg 'bump-cask-pr' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'bump-cask-pr' -l version -d 'Specify the new version for the cask'
__fish_brew_complete_arg 'bump-cask-pr' -l version-arm -d 'Specify the new cask version for the ARM architecture'
__fish_brew_complete_arg 'bump-cask-pr' -l version-intel -d 'Specify the new cask version for the Intel architecture'
__fish_brew_complete_arg 'bump-cask-pr' -l write-only -d 'Make the expected file modifications without taking any Git actions'
__fish_brew_complete_arg 'bump-cask-pr' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'bump-compatibility-version' 'Create a commit to increment the compatibility_version of formula'
__fish_brew_complete_arg 'bump-compatibility-version' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'bump-compatibility-version' -l dry-run -d 'Print what would be done rather than doing it'
__fish_brew_complete_arg 'bump-compatibility-version' -l help -d 'Show this message'
__fish_brew_complete_arg 'bump-compatibility-version' -l message -d 'Append message to the default commit message'
__fish_brew_complete_arg 'bump-compatibility-version' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'bump-compatibility-version' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'bump-compatibility-version' -l write-only -d 'Make the expected file modifications without taking any Git actions'
__fish_brew_complete_arg 'bump-compatibility-version' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'bump-formula-pr' 'Create a pull request to update formula with a new URL or a new tag'
__fish_brew_complete_arg 'bump-formula-pr' -l commit -d 'When passed with `--write-only`, generate a new commit after writing changes to the formula file'
__fish_brew_complete_arg 'bump-formula-pr' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'bump-formula-pr' -l dry-run -d 'Print what would be done rather than doing it'
__fish_brew_complete_arg 'bump-formula-pr' -l force -d 'Remove all mirrors if `--mirror` was not specified'
__fish_brew_complete_arg 'bump-formula-pr' -l fork-org -d 'Use the specified GitHub organization for forking'
__fish_brew_complete_arg 'bump-formula-pr' -l help -d 'Show this message'
__fish_brew_complete_arg 'bump-formula-pr' -l install-dependencies -d 'Install missing dependencies required to update resources'
__fish_brew_complete_arg 'bump-formula-pr' -l message -d 'Prepend message to the default pull request message'
__fish_brew_complete_arg 'bump-formula-pr' -l mirror -d 'Use the specified URL as a mirror URL. If URL is a comma-separated list of URLs, multiple mirrors will be added'
__fish_brew_complete_arg 'bump-formula-pr' -l no-audit -d 'Don\'t run `brew audit` before opening the PR'
__fish_brew_complete_arg 'bump-formula-pr' -l no-browse -d 'Print the pull request URL instead of opening in a browser'
__fish_brew_complete_arg 'bump-formula-pr' -l no-fork -d 'Don\'t try to fork the repository'
__fish_brew_complete_arg 'bump-formula-pr' -l online -d 'Run `brew audit --online` before opening the PR'
__fish_brew_complete_arg 'bump-formula-pr' -l python-exclude-packages -d 'Exclude these Python packages when finding resources'
__fish_brew_complete_arg 'bump-formula-pr' -l python-extra-packages -d 'Include these additional Python packages when finding resources'
__fish_brew_complete_arg 'bump-formula-pr' -l python-package-name -d 'Use the specified package-name when finding Python resources for formula. If no package name is specified, it will be inferred from the formula\'s stable URL'
__fish_brew_complete_arg 'bump-formula-pr' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'bump-formula-pr' -l revision -d 'Specify the new commit revision corresponding to the specified git tag or specified version'
__fish_brew_complete_arg 'bump-formula-pr' -l sha256 -d 'Specify the SHA-256 checksum of the new download'
__fish_brew_complete_arg 'bump-formula-pr' -l strict -d 'Run `brew audit --strict` before opening the PR'
__fish_brew_complete_arg 'bump-formula-pr' -l tag -d 'Specify the new git commit tag for the formula'
__fish_brew_complete_arg 'bump-formula-pr' -l url -d 'Specify the URL for the new download. If a URL is specified, the SHA-256 checksum of the new download should also be specified'
__fish_brew_complete_arg 'bump-formula-pr' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'bump-formula-pr' -l version -d 'Use the specified version to override the value parsed from the URL or tag. Note that `--version=0` can be used to delete an existing version override from a formula if it has become redundant'
__fish_brew_complete_arg 'bump-formula-pr' -l write-only -d 'Make the expected file modifications without taking any Git actions'
__fish_brew_complete_arg 'bump-formula-pr' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'bump-revision' 'Create a commit to increment the revision of formula'
__fish_brew_complete_arg 'bump-revision' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'bump-revision' -l dry-run -d 'Print what would be done rather than doing it'
__fish_brew_complete_arg 'bump-revision' -l help -d 'Show this message'
__fish_brew_complete_arg 'bump-revision' -l message -d 'Append message to the default commit message'
__fish_brew_complete_arg 'bump-revision' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'bump-revision' -l remove-bottle-block -d 'Remove the bottle block in addition to bumping the revision'
__fish_brew_complete_arg 'bump-revision' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'bump-revision' -l write-only -d 'Make the expected file modifications without taking any Git actions'
__fish_brew_complete_arg 'bump-revision' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'bump-unversioned-casks' 'Check all casks with unversioned URLs in a given tap for updates'
__fish_brew_complete_arg 'bump-unversioned-casks' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'bump-unversioned-casks' -l dry-run -d 'Do everything except caching state and opening pull requests'
__fish_brew_complete_arg 'bump-unversioned-casks' -l help -d 'Show this message'
__fish_brew_complete_arg 'bump-unversioned-casks' -l limit -d 'Maximum runtime in minutes'
__fish_brew_complete_arg 'bump-unversioned-casks' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'bump-unversioned-casks' -l state-file -d 'File for caching state'
__fish_brew_complete_arg 'bump-unversioned-casks' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'bump-unversioned-casks' -a '(__fish_brew_suggest_casks_all)'
__fish_brew_complete_arg 'bump-unversioned-casks' -a '(__fish_brew_suggest_taps_installed)'


__fish_brew_complete_cmd 'bundle' 'Bundler for non-Ruby dependencies from Homebrew formulae, Homebrew casks, Mac App Store dependencies, VSCode (and forks/variants) extensions, Go packages, Cargo packages, uv tools, Flatpak packages, WinGet packages, Krew plugins and npm packages'
__fish_brew_complete_sub_cmd 'bundle' 'sh' 'Run your shell in a `brew bundle exec` environment'
__fish_brew_complete_sub_cmd 'bundle' 'remove' 'Remove entries that match `name` from your `Brewfile`. Use `--formula`, `--cask`, `--tap`, `--mas`, `--vscode`, `--go`, `--cargo`, `--uv`, `--flatpak`, `--winget`, `--krew` and `--npm` to remove only entries of the corresponding type. Passing `--formula` also removes matches against formula aliases and old formula names'
__fish_brew_complete_sub_cmd 'bundle' 'list' 'By default, only Homebrew formula dependencies are listed'
__fish_brew_complete_sub_cmd 'bundle' 'install' 'Use this to restore a recorded installed state from a `Brewfile`'
__fish_brew_complete_sub_cmd 'bundle' 'upgrade' 'Use this to restore a recorded installed state from a `Brewfile`'
__fish_brew_complete_sub_cmd 'bundle' 'exec' 'This sanitised build environment ignores unrequested dependencies, which makes sure that things you didn\'t specify in your `Brewfile` won\'t get picked up by commands like `bundle install`, `npm install`, etc. It will also add compiler flags which will help with finding keg-only dependencies like `openssl`, `icu4c`, etc'
__fish_brew_complete_sub_cmd 'bundle' 'env' 'Print the environment variables that would be set in a `brew bundle exec` environment'
__fish_brew_complete_sub_cmd 'bundle' 'edit' 'Edit the `Brewfile` in your editor'
__fish_brew_complete_sub_cmd 'bundle' 'dump' 'Write all installed casks/formulae/images/taps into a `Brewfile` in the current directory or to a custom file specified with the `--file` option. This is useful as an installed-state snapshot and can be kept in version control and diffed'
__fish_brew_complete_sub_cmd 'bundle' 'cleanup' 'This workflow is useful for maintainers or testers who regularly install lots of formulae'
__fish_brew_complete_sub_cmd 'bundle' 'check' 'This provides a successful exit code if everything is up-to-date, making it useful for scripting. Use `--verbose` to list unmet dependencies'
__fish_brew_complete_sub_cmd 'bundle' 'add' 'Add entries to your `Brewfile`. Adds formulae by default. Use `--cask`, `--tap`, `--vscode`, `--go`, `--cargo`, `--uv`, `--flatpak`, `--krew` and `--npm` to add the corresponding entry instead'
__fish_brew_complete_arg 'bundle; and [ (count (__fish_brew_args)) = 1 ]' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'bundle; and [ (count (__fish_brew_args)) = 1 ]' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_arg 'bundle; and [ (count (__fish_brew_args)) = 1 ]' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_arg 'bundle; and [ (count (__fish_brew_args)) = 1 ]' -l help -d 'Show this message'
__fish_brew_complete_arg 'bundle; and [ (count (__fish_brew_args)) = 1 ]' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'bundle; and [ (count (__fish_brew_args)) = 1 ]' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'bundle' 'sh' -l check -d 'Check that all dependencies in the Brewfile are installed before starting the shell. Enabled by default if `$HOMEBREW_BUNDLE_CHECK` is set'
__fish_brew_complete_sub_arg 'bundle' 'sh' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'bundle' 'sh' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_sub_arg 'bundle' 'sh' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_sub_arg 'bundle' 'sh' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'bundle' 'sh' -l install -d 'Run `install` before starting the shell'
__fish_brew_complete_sub_arg 'bundle' 'sh' -l no-secrets -d 'Attempt to remove secrets from the environment before starting the shell'
__fish_brew_complete_sub_arg 'bundle' 'sh' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'bundle' 'sh' -l services -d 'Temporarily start services while running the shell. Enabled by default if `$HOMEBREW_BUNDLE_SERVICES` is set'
__fish_brew_complete_sub_arg 'bundle' 'sh' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l cargo -d 'Remove entries for Cargo packages'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l cask -d 'Remove Homebrew cask entries'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l flatpak -d 'Remove entries for Flatpak packages. Note: Linux only'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l formula -d 'Remove Homebrew formula entries, including matches against formula aliases and old names'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l go -d 'Remove entries for Go packages'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l install -d 'Run `install` before removing entries'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l krew -d 'Remove entries for Krew plugins'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l mas -d 'Remove entries for Mac App Store dependencies'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l npm -d 'Remove entries for npm packages'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l tap -d 'Remove Homebrew tap entries'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l uv -d 'Remove entries for uv tools'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l vscode -d 'Remove entries for VSCode (and forks/variants) extensions'
__fish_brew_complete_sub_arg 'bundle' 'remove' -l winget -d 'Remove entries for WinGet packages. Note: WSL only'
__fish_brew_complete_sub_arg 'bundle' 'list' -l all -d 'List all dependencies'
__fish_brew_complete_sub_arg 'bundle' 'list' -l cargo -d 'List Cargo packages'
__fish_brew_complete_sub_arg 'bundle' 'list' -l cask -d 'List Homebrew cask dependencies'
__fish_brew_complete_sub_arg 'bundle' 'list' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'bundle' 'list' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_sub_arg 'bundle' 'list' -l flatpak -d 'List Flatpak packages. Note: Linux only'
__fish_brew_complete_sub_arg 'bundle' 'list' -l formula -d 'List Homebrew formula dependencies'
__fish_brew_complete_sub_arg 'bundle' 'list' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_sub_arg 'bundle' 'list' -l go -d 'List Go packages'
__fish_brew_complete_sub_arg 'bundle' 'list' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'bundle' 'list' -l install -d 'Run `install` before listing dependencies'
__fish_brew_complete_sub_arg 'bundle' 'list' -l krew -d 'List Krew plugins'
__fish_brew_complete_sub_arg 'bundle' 'list' -l mas -d 'List Mac App Store dependencies'
__fish_brew_complete_sub_arg 'bundle' 'list' -l npm -d 'List npm packages'
__fish_brew_complete_sub_arg 'bundle' 'list' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'bundle' 'list' -l tap -d 'List Homebrew tap dependencies'
__fish_brew_complete_sub_arg 'bundle' 'list' -l uv -d 'List uv tools'
__fish_brew_complete_sub_arg 'bundle' 'list' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'bundle' 'list' -l vscode -d 'List VSCode (and forks/variants) extensions'
__fish_brew_complete_sub_arg 'bundle' 'list' -l winget -d 'List WinGet packages. Note: WSL only'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l force -d 'Run with `--force`/`--overwrite`'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l force-cleanup -d 'Perform cleanup after installing dependencies without asking. Enabled by default if `$HOMEBREW_BUNDLE_FORCE_INSTALL_CLEANUP` is set and `--global` is passed'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l jobs -d 'Run up to this many formula installations in parallel. Defaults to 1 (sequential). Use `auto` for the number of CPU cores (max 4)'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l no-upgrade -d 'Do not run `brew upgrade` on outdated dependencies. Note they may still be upgraded by `brew install` if needed. Enabled by default if `$HOMEBREW_BUNDLE_NO_UPGRADE` is set'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l upgrade -d 'Run `brew upgrade` on outdated dependencies, even if `$HOMEBREW_BUNDLE_NO_UPGRADE` is set'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l upgrade-formulae -d 'Run `brew upgrade` on any of these comma-separated formulae, even if `$HOMEBREW_BUNDLE_NO_UPGRADE` is set'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l verbose -d 'Print output from commands as they are run'
__fish_brew_complete_sub_arg 'bundle' 'install upgrade' -l zap -d 'Use `zap` instead of `uninstall` when cleaning up casks after installing dependencies'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l check -d 'Check that all dependencies in the Brewfile are installed before executing the command. Enabled by default if `$HOMEBREW_BUNDLE_CHECK` is set'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l deny-network -d 'Deny network access from inside the sandbox'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l install -d 'Run `install` before executing the command'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l no-secrets -d 'Attempt to remove secrets from the environment before executing the command'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l sandbox -d 'Run command in Homebrew\'s sandbox, allowing writes to path and Homebrew\'s temporary and cache directories'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l services -d 'Temporarily start services while executing the command. Enabled by default if `$HOMEBREW_BUNDLE_SERVICES` is set'
__fish_brew_complete_sub_arg 'bundle' 'exec' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'bundle' 'exec' -a '(__fish_brew_suggest_commands)'
__fish_brew_complete_sub_arg 'bundle' 'env' -l check -d 'Check that all dependencies in the Brewfile are installed before printing the environment. Enabled by default if `$HOMEBREW_BUNDLE_CHECK` is set'
__fish_brew_complete_sub_arg 'bundle' 'env' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'bundle' 'env' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_sub_arg 'bundle' 'env' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_sub_arg 'bundle' 'env' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'bundle' 'env' -l install -d 'Run `install` before printing the environment'
__fish_brew_complete_sub_arg 'bundle' 'env' -l no-secrets -d 'Attempt to remove secrets from the environment before printing it'
__fish_brew_complete_sub_arg 'bundle' 'env' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'bundle' 'env' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'bundle' 'edit' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'bundle' 'edit' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_sub_arg 'bundle' 'edit' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_sub_arg 'bundle' 'edit' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'bundle' 'edit' -l install -d 'Run `install` before editing the `Brewfile`'
__fish_brew_complete_sub_arg 'bundle' 'edit' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'bundle' 'edit' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l cargo -d 'Dump Cargo packages'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l cask -d 'Dump Homebrew cask dependencies'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l flatpak -d 'Dump Flatpak packages. Note: Linux only'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l force -d 'Overwrite an existing `Brewfile`'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l formula -d 'Dump Homebrew formula dependencies'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l go -d 'Dump Go packages'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l install -d 'Run `install` before dumping dependencies'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l krew -d 'Dump Krew plugins'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l mas -d 'Dump Mac App Store dependencies'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-cargo -d '`dump` without Cargo packages. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_CARGO` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-cask -d 'Dump without Homebrew cask dependencies. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_CASK` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-describe -d 'Do not add description comments above each line. Description comments are the default. Enabled by default if `$HOMEBREW_BUNDLE_NO_DESCRIBE` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-brew -d 'Dump without Homebrew formula dependencies. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_BREW` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-cargo -d '`dump` without Cargo packages. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_CARGO` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-cask -d 'Dump without Homebrew cask dependencies. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_CASK` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-flatpak -d '`dump` without Flatpak packages. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_FLATPAK` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-go -d '`dump` without Go packages. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_GO` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-krew -d '`dump` without Krew plugins. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_KREW` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-mas -d '`dump` without Mac App Store dependencies. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_MAS` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-npm -d '`dump` without npm packages. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_NPM` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-tap -d 'Dump without Homebrew tap dependencies. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_TAP` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-uv -d '`dump` without uv tools. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_UV` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-vscode -d '`dump` without VSCode (and forks/variants) extensions. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_VSCODE` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-dump-winget -d '`dump` without WinGet packages. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_WINGET` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-flatpak -d '`dump` without Flatpak packages. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_FLATPAK` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-formula -d 'Dump without Homebrew formula dependencies. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_BREW` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-go -d '`dump` without Go packages. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_GO` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-krew -d '`dump` without Krew plugins. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_KREW` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-mas -d '`dump` without Mac App Store dependencies. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_MAS` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-npm -d '`dump` without npm packages. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_NPM` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-restart -d 'Do not add `restart_service` to formula lines'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-tap -d 'Dump without Homebrew tap dependencies. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_TAP` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-uv -d '`dump` without uv tools. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_UV` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-vscode -d '`dump` without VSCode (and forks/variants) extensions. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_VSCODE` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l no-winget -d '`dump` without WinGet packages. Enabled by default if `$HOMEBREW_BUNDLE_DUMP_NO_WINGET` is set'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l npm -d 'Dump npm packages'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l tap -d 'Dump Homebrew tap dependencies'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l uv -d 'Dump uv tools'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l vscode -d 'Dump VSCode (and forks/variants) extensions'
__fish_brew_complete_sub_arg 'bundle' 'dump' -l winget -d 'Dump WinGet packages. Note: WSL only'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l all -d 'Clean up all supported dependencies'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l cargo -d 'Clean up Cargo packages'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l cask -d 'Clean up Homebrew cask dependencies'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l flatpak -d 'Clean up Flatpak packages. Note: Linux only'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l force -d 'Actually perform cleanup operations and reset Homebrew\'s global trust store to the `Brewfile` values'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l formula -d 'Clean up Homebrew formula dependencies'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l go -d 'Clean up Go packages'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l install -d 'Run `install` before cleaning up dependencies'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l krew -d 'Clean up Krew plugins'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l mas -d 'Clean up Mac App Store dependencies'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cargo -d '`cleanup` without Cargo packages. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_CARGO` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cask -d 'Clean up without Homebrew cask dependencies. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_CASK` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-brew -d 'Clean up without Homebrew formula dependencies. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_BREW` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-cargo -d '`cleanup` without Cargo packages. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_CARGO` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-cask -d 'Clean up without Homebrew cask dependencies. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_CASK` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-flatpak -d '`cleanup` without Flatpak packages. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_FLATPAK` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-go -d '`cleanup` without Go packages. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_GO` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-krew -d '`cleanup` without Krew plugins. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_KREW` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-mas -d '`cleanup` without Mac App Store dependencies. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_MAS` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-npm -d '`cleanup` without npm packages. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_NPM` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-tap -d 'Clean up without Homebrew tap dependencies. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_TAP` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-uv -d '`cleanup` without uv tools. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_UV` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-vscode -d '`cleanup` without VSCode (and forks/variants) extensions. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_VSCODE` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-cleanup-winget -d '`cleanup` without WinGet packages. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_WINGET` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-flatpak -d '`cleanup` without Flatpak packages. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_FLATPAK` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-formula -d 'Clean up without Homebrew formula dependencies. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_BREW` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-go -d '`cleanup` without Go packages. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_GO` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-krew -d '`cleanup` without Krew plugins. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_KREW` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-mas -d '`cleanup` without Mac App Store dependencies. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_MAS` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-npm -d '`cleanup` without npm packages. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_NPM` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-tap -d 'Clean up without Homebrew tap dependencies. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_TAP` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-uv -d '`cleanup` without uv tools. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_UV` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-vscode -d '`cleanup` without VSCode (and forks/variants) extensions. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_VSCODE` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l no-winget -d '`cleanup` without WinGet packages. Enabled by default if `$HOMEBREW_BUNDLE_CLEANUP_NO_WINGET` is set'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l npm -d 'Clean up npm packages'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l tap -d 'Clean up Homebrew tap dependencies'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l uv -d 'Clean up uv tools'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l vscode -d 'Clean up VSCode (and forks/variants) extensions'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l winget -d 'Clean up WinGet packages. Note: WSL only'
__fish_brew_complete_sub_arg 'bundle' 'cleanup' -l zap -d 'Clean up casks using the `zap` command instead of `uninstall`'
__fish_brew_complete_sub_arg 'bundle' 'check' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'bundle' 'check' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_sub_arg 'bundle' 'check' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_sub_arg 'bundle' 'check' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'bundle' 'check' -l install -d 'Run `install` before checking dependencies'
__fish_brew_complete_sub_arg 'bundle' 'check' -l no-upgrade -d 'Do not check for outdated dependencies. Note they may still be upgraded by `brew install` if needed. Enabled by default if `$HOMEBREW_BUNDLE_NO_UPGRADE` is set'
__fish_brew_complete_sub_arg 'bundle' 'check' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'bundle' 'check' -l verbose -d 'List all missing dependencies'
__fish_brew_complete_sub_arg 'bundle' 'add' -l cargo -d 'Add entries for Cargo packages'
__fish_brew_complete_sub_arg 'bundle' 'add' -l cask -d 'Add Homebrew cask entries'
__fish_brew_complete_sub_arg 'bundle' 'add' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'bundle' 'add' -l file -d 'Read from or write to the `Brewfile` from this location. Use `--file=-` to pipe to stdin/stdout'
__fish_brew_complete_sub_arg 'bundle' 'add' -l flatpak -d 'Add entries for Flatpak packages. Note: Linux only'
__fish_brew_complete_sub_arg 'bundle' 'add' -l formula -d 'Add Homebrew formula entries'
__fish_brew_complete_sub_arg 'bundle' 'add' -l global -d 'Read from or write to the `Brewfile` from `$HOMEBREW_BUNDLE_FILE_GLOBAL` (if set), `${XDG_CONFIG_HOME}/homebrew/Brewfile` (if `$XDG_CONFIG_HOME` is set), `~/.homebrew/Brewfile` or `~/.Brewfile` otherwise'
__fish_brew_complete_sub_arg 'bundle' 'add' -l go -d 'Add entries for Go packages'
__fish_brew_complete_sub_arg 'bundle' 'add' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'bundle' 'add' -l install -d 'Run `install` before adding entries'
__fish_brew_complete_sub_arg 'bundle' 'add' -l krew -d 'Add entries for Krew plugins'
__fish_brew_complete_sub_arg 'bundle' 'add' -l no-describe -d 'Do not add description comments above each line. Description comments are the default. Enabled by default if `$HOMEBREW_BUNDLE_NO_DESCRIBE` is set'
__fish_brew_complete_sub_arg 'bundle' 'add' -l npm -d 'Add entries for npm packages'
__fish_brew_complete_sub_arg 'bundle' 'add' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'bundle' 'add' -l tap -d 'Add Homebrew tap entries'
__fish_brew_complete_sub_arg 'bundle' 'add' -l uv -d 'Add entries for uv tools'
__fish_brew_complete_sub_arg 'bundle' 'add' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'bundle' 'add' -l vscode -d 'Add entries for VSCode (and forks/variants) extensions'


__fish_brew_complete_cmd 'casks' 'List all locally installable casks including short names'
__fish_brew_complete_arg 'casks' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'casks' -l help -d 'Show this message'
__fish_brew_complete_arg 'casks' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'casks' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'cat' 'Display the source of a formula or cask'
__fish_brew_complete_arg 'cat' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'cat' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'cat' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'cat' -l help -d 'Show this message'
__fish_brew_complete_arg 'cat' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'cat' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'cat; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'cat; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'cleanup' 'Remove stale lock files and outdated downloads for all formulae and casks, and remove old versions of installed formulae'
__fish_brew_complete_arg 'cleanup' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'cleanup' -l dry-run -d 'Show what would be removed, but do not actually remove anything'
__fish_brew_complete_arg 'cleanup' -l help -d 'Show this message'
__fish_brew_complete_arg 'cleanup' -l prune -d 'Remove all cache files older than specified days. If you want to remove everything, use `--prune=all`'
__fish_brew_complete_arg 'cleanup' -l prune-prefix -d 'Only prune the symlinks and directories from the prefix and remove no other files'
__fish_brew_complete_arg 'cleanup' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'cleanup' -l scrub -d 'Scrub the cache, including downloads for even the latest versions. Note that downloads for any installed formulae or casks will still not be deleted. If you want to delete those too: `rm -rf "$(brew --cache)"`'
__fish_brew_complete_arg 'cleanup' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'cleanup' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'cleanup' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'command' 'Display the path to the file being used when invoking `brew` cmd'
__fish_brew_complete_arg 'command' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'command' -l help -d 'Show this message'
__fish_brew_complete_arg 'command' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'command' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'command' -a '(__fish_brew_suggest_commands)'


__fish_brew_complete_cmd 'command-not-found-init' 'Print instructions for setting up the command-not-found hook for your shell'
__fish_brew_complete_arg 'command-not-found-init' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'command-not-found-init' -l help -d 'Show this message'
__fish_brew_complete_arg 'command-not-found-init' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'command-not-found-init' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'commands' 'Show lists of built-in and external commands'
__fish_brew_complete_arg 'commands' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'commands' -l help -d 'Show this message'
__fish_brew_complete_arg 'commands' -l include-aliases -d 'Include aliases of internal commands'
__fish_brew_complete_arg 'commands' -l quiet -d 'List only the names of commands without category headers'
__fish_brew_complete_arg 'commands' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'completions' 'Control whether Homebrew automatically links external tap shell completion files'
__fish_brew_complete_sub_cmd 'completions' 'unlink' 'Unlink Homebrew\'s completions'
__fish_brew_complete_sub_cmd 'completions' 'state' 'Display the current state of Homebrew\'s completions'
__fish_brew_complete_sub_cmd 'completions' 'link' 'Link Homebrew\'s completions'
__fish_brew_complete_arg 'completions; and [ (count (__fish_brew_args)) = 1 ]' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'completions; and [ (count (__fish_brew_args)) = 1 ]' -l help -d 'Show this message'
__fish_brew_complete_arg 'completions; and [ (count (__fish_brew_args)) = 1 ]' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'completions; and [ (count (__fish_brew_args)) = 1 ]' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'completions' 'unlink' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'completions' 'unlink' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'completions' 'unlink' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'completions' 'unlink' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'completions' 'state' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'completions' 'state' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'completions' 'state' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'completions' 'state' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'completions' 'link' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'completions' 'link' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'completions' 'link' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'completions' 'link' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'config' 'Show Homebrew and system configuration info useful for debugging'
__fish_brew_complete_arg 'config' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'config' -l help -d 'Show this message'
__fish_brew_complete_arg 'config' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'config' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'contributions' 'Summarise contributions to Homebrew repositories'
__fish_brew_complete_arg 'contributions' -l csv -d 'Print a CSV of contributions across repositories over the time period'
__fish_brew_complete_arg 'contributions' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'contributions' -l from -d 'Date (ISO 8601 format) to start searching contributions. Omitting this flag searches the past year'
__fish_brew_complete_arg 'contributions' -l help -d 'Show this message'
__fish_brew_complete_arg 'contributions' -l maintainer-report-csv -d 'Print a CSV of Maintainer and Lead Maintainer activity criteria using fetched Git histories and GitHub\'s existing approved-review search for the Homebrew governance quarter, for example `--maintainer-report-csv=2026-2`. Also write it in the current directory as `brew-contributions-FROM-to-TO.csv`, or `brew-contributions-FROM-to-TO-USER.csv` when filtered with `--user`. Only Maintainers listed at the end of that quarter are included. The `new role` value must show a downgrade for two consecutive quarters before a downgrade is applied. Review searches return at most 100 results and other counts are capped at 500 per repository and contribution type. Repository-scoped follow-up searches ensure role activity checks remain accurate when a count is capped. Completed-period GitHub searches are cached in Homebrew\'s cache and removed by normal cache pruning. `YEAR-1` is December of the previous year through February, `YEAR-2` is March through May, `YEAR-3` is June through August and `YEAR-4` is September through November'
__fish_brew_complete_arg 'contributions' -l organisation -d 'Specify the organisation to populate sources repositories from. Omitting this flag searches the Homebrew primary repositories'
__fish_brew_complete_arg 'contributions' -l quarter -d 'Homebrew contributions quarter to search (1-4). Omitting this flag searches the past year. If `--from` or `--to` are set, they take precedence'
__fish_brew_complete_arg 'contributions' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'contributions' -l repositories -d 'Specify a comma-separated list of repositories to search. All repositories must be under the same user or organisation. Omitting this flag, or specifying `--repositories=primary`, searches only the main repositories: `Homebrew/brew`, `Homebrew/homebrew-core`, `Homebrew/homebrew-cask`'
__fish_brew_complete_arg 'contributions' -l team -d 'Specify the team to populate users from. The first part of the team name will be used as the organisation'
__fish_brew_complete_arg 'contributions' -l to -d 'Date (ISO 8601 format) to stop searching contributions'
__fish_brew_complete_arg 'contributions' -l user -d 'Specify a comma-separated list of GitHub usernames or email addresses to find contributions from. Omitting this flag searches Homebrew maintainers and requires access to the `Homebrew/maintainers` team. With `--maintainer-report-csv`, only matching quarter-end Maintainers are included'
__fish_brew_complete_arg 'contributions' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'create' 'Generate a formula or, with `--cask`, a cask for the downloadable file at URL and open it in the editor'
__fish_brew_complete_arg 'create' -l HEAD -d 'Indicate that URL points to the package\'s repository rather than a file'
__fish_brew_complete_arg 'create' -l autotools -d 'Create a basic template for an Autotools-style build'
__fish_brew_complete_arg 'create' -l cabal -d 'Create a basic template for a Cabal build'
__fish_brew_complete_arg 'create' -l cask -d 'Create a basic template for a cask'
__fish_brew_complete_arg 'create' -l cmake -d 'Create a basic template for a CMake-style build'
__fish_brew_complete_arg 'create' -l crystal -d 'Create a basic template for a Crystal build'
__fish_brew_complete_arg 'create' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'create' -l force -d 'Ignore errors for disallowed formula names and names that shadow aliases'
__fish_brew_complete_arg 'create' -l go -d 'Create a basic template for a Go build'
__fish_brew_complete_arg 'create' -l help -d 'Show this message'
__fish_brew_complete_arg 'create' -l meson -d 'Create a basic template for a Meson-style build'
__fish_brew_complete_arg 'create' -l no-fetch -d 'Homebrew will not download URL to the cache and will thus not add its SHA-256 to the formula for you, nor will it check the GitHub API for GitHub projects (to fill out its description and homepage)'
__fish_brew_complete_arg 'create' -l node -d 'Create a basic template for a Node build'
__fish_brew_complete_arg 'create' -l perl -d 'Create a basic template for a Perl build'
__fish_brew_complete_arg 'create' -l python -d 'Create a basic template for a Python build'
__fish_brew_complete_arg 'create' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'create' -l ruby -d 'Create a basic template for a Ruby build'
__fish_brew_complete_arg 'create' -l rust -d 'Create a basic template for a Rust build'
__fish_brew_complete_arg 'create' -l set-license -d 'Explicitly set the license of the new formula'
__fish_brew_complete_arg 'create' -l set-name -d 'Explicitly set the name of the new formula or cask'
__fish_brew_complete_arg 'create' -l set-version -d 'Explicitly set the version of the new formula or cask'
__fish_brew_complete_arg 'create' -l tap -d 'Generate the new formula within the given tap, specified as user`/`repo'
__fish_brew_complete_arg 'create' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'create' -l zig -d 'Create a basic template for a Zig build'


__fish_brew_complete_cmd 'debugger' 'Run the specified Homebrew command in debug mode'
__fish_brew_complete_arg 'debugger' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'debugger' -l help -d 'Show this message'
__fish_brew_complete_arg 'debugger' -l open -d 'Start remote debugging over a Unix socket'
__fish_brew_complete_arg 'debugger' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'debugger' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'debugger' -a '(__fish_brew_suggest_commands)'


__fish_brew_complete_cmd 'deps' 'Show dependencies for formula'
__fish_brew_complete_arg 'deps' -l HEAD -d 'Show dependencies for HEAD version instead of stable version'
__fish_brew_complete_arg 'deps' -l annotate -d 'Mark any build, test, implicit, optional, or recommended dependencies as such in the output'
__fish_brew_complete_arg 'deps' -l arch -d 'Show dependencies for the given CPU architecture'
__fish_brew_complete_arg 'deps' -l brewfile -d 'Use formulae and casks listed in a Brewfile as inputs. Defaults to `./Brewfile`; use `--brewfile=`path to specify another'
__fish_brew_complete_arg 'deps' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'deps' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'deps' -l direct -d 'Show only the direct dependencies declared in the formula'
__fish_brew_complete_arg 'deps' -l dot -d 'Show text-based graph description in DOT format'
__fish_brew_complete_arg 'deps' -l for-each -d 'Switch into the mode used when evaluating all formulae and casks, but only list dependencies for each provided formula, one formula per line'
__fish_brew_complete_arg 'deps' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'deps' -l full-name -d 'List dependencies by their full name'
__fish_brew_complete_arg 'deps' -l graph -d 'Show dependencies as a directed graph'
__fish_brew_complete_arg 'deps' -l help -d 'Show this message'
__fish_brew_complete_arg 'deps' -l include-build -d 'Include `:build` dependencies for formula'
__fish_brew_complete_arg 'deps' -l include-implicit -d 'Include implicit dependencies used to download and unpack source files'
__fish_brew_complete_arg 'deps' -l include-optional -d 'Include `:optional` dependencies for formula'
__fish_brew_complete_arg 'deps' -l include-requirements -d 'Include requirements in addition to dependencies for formula'
__fish_brew_complete_arg 'deps' -l include-test -d 'Include `:test` dependencies for formula (non-recursive unless `--graph` or `--tree`)'
__fish_brew_complete_arg 'deps' -l installed -d 'List dependencies for formulae that are currently installed. If formula is specified, list only its dependencies that are currently installed'
__fish_brew_complete_arg 'deps' -l missing -d 'Show only missing dependencies'
__fish_brew_complete_arg 'deps' -l os -d 'Show dependencies for the given operating system'
__fish_brew_complete_arg 'deps' -l prune -d 'Prune parts of tree already seen'
__fish_brew_complete_arg 'deps' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'deps' -l skip-recommended -d 'Skip `:recommended` dependencies for formula'
__fish_brew_complete_arg 'deps' -l topological -d 'Sort dependencies in topological order'
__fish_brew_complete_arg 'deps' -l tree -d 'Show dependencies as a tree. When given multiple formula arguments, show individual trees for each formula'
__fish_brew_complete_arg 'deps' -l union -d 'Show the union of dependencies for multiple formula, instead of the intersection'
__fish_brew_complete_arg 'deps' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'deps; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'deps; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'desc' 'Display formula\'s name and one-line description'
__fish_brew_complete_arg 'desc' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'desc' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'desc' -l description -d 'Search just descriptions for text. If text is flanked by slashes, it is interpreted as a regular expression'
__fish_brew_complete_arg 'desc' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'desc' -l help -d 'Show this message'
__fish_brew_complete_arg 'desc' -l name -d 'Search just names for text. If text is flanked by slashes, it is interpreted as a regular expression'
__fish_brew_complete_arg 'desc' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'desc' -l search -d 'Search both names and descriptions for text. If text is flanked by slashes, it is interpreted as a regular expression'
__fish_brew_complete_arg 'desc' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'desc; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'desc; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'determine-test-runners' -d 'Determines the runners used to test formulae or their dependents'
__fish_brew_complete_arg 'determine-test-runners' -l all-supported -d 'Instead of selecting runners based on the chosen formula, return all supported runners'
__fish_brew_complete_arg 'determine-test-runners' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'determine-test-runners' -l dependents -d 'Determine runners for testing dependents'
__fish_brew_complete_arg 'determine-test-runners' -l help -d 'Show this message'
__fish_brew_complete_arg 'determine-test-runners' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'determine-test-runners' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'developer' 'Control Homebrew\'s developer mode'
__fish_brew_complete_sub_cmd 'developer' 'state' 'Display the current state of Homebrew\'s developer mode'
__fish_brew_complete_sub_cmd 'developer' 'on' 'Turn Homebrew\'s developer mode on'
__fish_brew_complete_sub_cmd 'developer' 'off' 'Turn Homebrew\'s developer mode off'
__fish_brew_complete_arg 'developer; and [ (count (__fish_brew_args)) = 1 ]' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'developer; and [ (count (__fish_brew_args)) = 1 ]' -l help -d 'Show this message'
__fish_brew_complete_arg 'developer; and [ (count (__fish_brew_args)) = 1 ]' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'developer; and [ (count (__fish_brew_args)) = 1 ]' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'developer' 'state' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'developer' 'state' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'developer' 'state' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'developer' 'state' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'developer' 'on' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'developer' 'on' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'developer' 'on' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'developer' 'on' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'developer' 'off' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'developer' 'off' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'developer' 'off' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'developer' 'off' -l verbose -d 'Make some output more verbose'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'dispatch-build-bottle' -d 'Build bottles for these formulae with GitHub Actions'
__fish_brew_complete_arg 'dispatch-build-bottle' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'dispatch-build-bottle' -l help -d 'Show this message'
__fish_brew_complete_arg 'dispatch-build-bottle' -l issue -d 'If specified, post a comment to this issue number if the job fails'
__fish_brew_complete_arg 'dispatch-build-bottle' -l linux -d 'Dispatch bottle for Linux x86_64 (using GitHub runners)'
__fish_brew_complete_arg 'dispatch-build-bottle' -l linux-arm64 -d 'Dispatch bottle for Linux arm64 (using GitHub runners)'
__fish_brew_complete_arg 'dispatch-build-bottle' -l linux-self-hosted -d 'Dispatch bottle for Linux x86_64 (using self-hosted runner)'
__fish_brew_complete_arg 'dispatch-build-bottle' -l macos -d 'macOS version (or comma-separated list of versions) the bottle should be built for'
__fish_brew_complete_arg 'dispatch-build-bottle' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'dispatch-build-bottle' -l tap -d 'Target tap repository (default: `homebrew/core`)'
__fish_brew_complete_arg 'dispatch-build-bottle' -l timeout -d 'Build timeout (in minutes, default: 60)'
__fish_brew_complete_arg 'dispatch-build-bottle' -l upload -d 'Upload built bottles'
__fish_brew_complete_arg 'dispatch-build-bottle' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'dispatch-build-bottle' -l workflow -d 'Dispatch specified workflow (default: `dispatch-build-bottle.yml`)'
__fish_brew_complete_arg 'dispatch-build-bottle' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'docs' 'Open Homebrew\'s online documentation at https://docs.brew.sh in a browser'
__fish_brew_complete_arg 'docs' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'docs' -l help -d 'Show this message'
__fish_brew_complete_arg 'docs' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'docs' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'doctor' 'Check your system for potential problems'
__fish_brew_complete_arg 'doctor' -l audit-debug -d 'Enable debugging and profiling of audit methods'
__fish_brew_complete_arg 'doctor' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'doctor' -l help -d 'Show this message'
__fish_brew_complete_arg 'doctor' -l list-checks -d 'List all audit methods, which can be run individually if provided as arguments'
__fish_brew_complete_arg 'doctor' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'doctor' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'doctor' -a '(__fish_brew_suggest_diagnostic_checks)'


__fish_brew_complete_cmd 'edit' 'Open a formula, cask or tap in the editor set by `$EDITOR` or `$HOMEBREW_EDITOR`, or open the Homebrew repository for editing if no argument is provided'
__fish_brew_complete_arg 'edit' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'edit' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'edit' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'edit' -l help -d 'Show this message'
__fish_brew_complete_arg 'edit' -l print-path -d 'Print the file path to be edited, without opening an editor'
__fish_brew_complete_arg 'edit' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'edit' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'edit; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'edit; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'
__fish_brew_complete_arg 'edit' -a '(__fish_brew_suggest_taps_installed)'


__fish_brew_complete_cmd 'exec' 'Run command in an environment populated by Homebrew formulae'
__fish_brew_complete_arg 'exec' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'exec' -l deny-network -d 'Deny network access from inside the sandbox'
__fish_brew_complete_arg 'exec' -l formulae -d 'Comma-separated formulae to install and add to `PATH` before running command'
__fish_brew_complete_arg 'exec' -l help -d 'Show this message'
__fish_brew_complete_arg 'exec' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'exec' -l sandbox -d 'Run command in Homebrew\'s sandbox, allowing writes to path and Homebrew\'s temporary and cache directories'
__fish_brew_complete_arg 'exec' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'extract' 'Look through repository history to find the most recent version of formula and create a copy in tap'
__fish_brew_complete_arg 'extract' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'extract' -l force -d 'Overwrite the destination formula if it already exists'
__fish_brew_complete_arg 'extract' -l git-revision -d 'Search for the specified version of formula starting at revision instead of HEAD'
__fish_brew_complete_arg 'extract' -l help -d 'Show this message'
__fish_brew_complete_arg 'extract' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'extract' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'extract' -l version -d 'Extract the specified version of formula instead of the most recent'
__fish_brew_complete_arg 'extract' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'extract' -a '(__fish_brew_suggest_taps_installed)'


__fish_brew_complete_cmd 'fetch' 'Download a bottle (if available) or source packages for formulae and binaries for casks'
__fish_brew_complete_arg 'fetch' -l HEAD -d 'Fetch HEAD version instead of stable version'
__fish_brew_complete_arg 'fetch' -l all-platforms -d 'Download for every supported operating system and architecture, plus each language for casks, fetching each distinct URL once'
__fish_brew_complete_arg 'fetch' -l arch -d 'Download for the given CPU architecture. (Pass `all` to download for all architectures.)'
__fish_brew_complete_arg 'fetch' -l bottle-tag -d 'Download a bottle for given tag'
__fish_brew_complete_arg 'fetch' -l build-bottle -d 'Download source packages (for eventual bottling) rather than a bottle'
__fish_brew_complete_arg 'fetch' -l build-from-source -d 'Download source packages rather than a bottle'
__fish_brew_complete_arg 'fetch' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'fetch' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'fetch' -l deps -d 'Also download dependencies for any listed formula'
__fish_brew_complete_arg 'fetch' -l force -d 'Remove a previously cached version and re-fetch'
__fish_brew_complete_arg 'fetch' -l force-bottle -d 'Download a bottle if it exists for the current or newest version of macOS, even if it would not be used during installation'
__fish_brew_complete_arg 'fetch' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'fetch' -l help -d 'Show this message'
__fish_brew_complete_arg 'fetch' -l os -d 'Download for the given operating system. (Pass `all` to download for all operating systems.)'
__fish_brew_complete_arg 'fetch' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'fetch' -l retry -d 'Retry if downloading fails or re-download if the checksum of a previously cached version no longer matches. Tries at most 5 times with exponential backoff'
__fish_brew_complete_arg 'fetch' -l verbose -d 'Do a verbose VCS checkout, if the URL represents a VCS. This is useful for seeing if an existing VCS cache has been updated'
__fish_brew_complete_arg 'fetch; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'fetch; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'formula' 'Display the path where formula is located'
__fish_brew_complete_arg 'formula' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'formula' -l help -d 'Show this message'
__fish_brew_complete_arg 'formula' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'formula' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'formula' -a '(__fish_brew_suggest_formulae_all)'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'formula-analytics' -d 'Query Homebrew\'s analytics'
__fish_brew_complete_arg 'formula-analytics' -l all-core-formulae-json -d 'Output a different JSON format containing the JSON data for all Homebrew/homebrew-core formulae'
__fish_brew_complete_arg 'formula-analytics' -l brew-command-run -d 'Output `brew` commands run'
__fish_brew_complete_arg 'formula-analytics' -l brew-command-run-options -d 'Output `brew` commands run with options'
__fish_brew_complete_arg 'formula-analytics' -l brew-test-bot-test -d 'Output `brew test-bot` steps run'
__fish_brew_complete_arg 'formula-analytics' -l build-error -d 'Output the number of build errors for formulae'
__fish_brew_complete_arg 'formula-analytics' -l cask-install -d 'Output the number of installations of casks'
__fish_brew_complete_arg 'formula-analytics' -l days-ago -d 'Query from the specified days ago until the present. The default is 30 days'
__fish_brew_complete_arg 'formula-analytics' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'formula-analytics' -l help -d 'Show this message'
__fish_brew_complete_arg 'formula-analytics' -l homebrew-devcmdrun-developer -d 'Output the number of devcmdrun/HOMEBREW_DEVELOPER events'
__fish_brew_complete_arg 'formula-analytics' -l homebrew-env-config -d 'Output rates of non-default Homebrew environment configuration variables'
__fish_brew_complete_arg 'formula-analytics' -l homebrew-os-arch-ci -d 'Output the number of OS/Architecture/CI events'
__fish_brew_complete_arg 'formula-analytics' -l homebrew-prefixes -d 'Output Homebrew prefixes'
__fish_brew_complete_arg 'formula-analytics' -l homebrew-versions -d 'Output Homebrew versions'
__fish_brew_complete_arg 'formula-analytics' -l install -d 'Output the number of specifically requested installations or installation as dependencies of formulae. This is the default'
__fish_brew_complete_arg 'formula-analytics' -l install-on-request -d 'Output the number of specifically requested installations of formulae'
__fish_brew_complete_arg 'formula-analytics' -l json -d 'Output JSON. This is required: plain text support has been removed'
__fish_brew_complete_arg 'formula-analytics' -l os-version -d 'Output the number of events by OS name and version'
__fish_brew_complete_arg 'formula-analytics' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'formula-analytics' -l setup -d 'Install the necessary Python dependencies and exit without running a query'
__fish_brew_complete_arg 'formula-analytics' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'formulae' 'List all locally installable formulae including short names'
__fish_brew_complete_arg 'formulae' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'formulae' -l help -d 'Show this message'
__fish_brew_complete_arg 'formulae' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'formulae' -l verbose -d 'Make some output more verbose'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'generate-analytics-api' -d 'Generates analytics API data files for https://formulae.brew.sh'
__fish_brew_complete_arg 'generate-analytics-api' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'generate-analytics-api' -l help -d 'Show this message'
__fish_brew_complete_arg 'generate-analytics-api' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'generate-analytics-api' -l verbose -d 'Make some output more verbose'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'generate-cask-api' -d 'Generate `homebrew/cask` API data files for https://formulae.brew.sh'
__fish_brew_complete_arg 'generate-cask-api' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'generate-cask-api' -l dry-run -d 'Generate API data without writing it to files'
__fish_brew_complete_arg 'generate-cask-api' -l help -d 'Show this message'
__fish_brew_complete_arg 'generate-cask-api' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'generate-cask-api' -l verbose -d 'Make some output more verbose'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'generate-cask-ci-matrix' -d 'Generate a GitHub Actions matrix for a given pull request URL or list of cask names'
__fish_brew_complete_arg 'generate-cask-ci-matrix' -l cask -d 'Treat all named arguments as cask tokens'
__fish_brew_complete_arg 'generate-cask-ci-matrix' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'generate-cask-ci-matrix' -l help -d 'Show this message'
__fish_brew_complete_arg 'generate-cask-ci-matrix' -l new -d 'Run new cask checks'
__fish_brew_complete_arg 'generate-cask-ci-matrix' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'generate-cask-ci-matrix' -l skip-install -d 'Skip installing casks'
__fish_brew_complete_arg 'generate-cask-ci-matrix' -l syntax-only -d 'Only run syntax checks'
__fish_brew_complete_arg 'generate-cask-ci-matrix' -l url -d 'Treat named argument as a pull request URL'
__fish_brew_complete_arg 'generate-cask-ci-matrix' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'generate-cask-ci-matrix' -a '(__fish_brew_suggest_casks_all)'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'generate-formula-api' -d 'Generate `homebrew/core` API data files for https://formulae.brew.sh'
__fish_brew_complete_arg 'generate-formula-api' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'generate-formula-api' -l dry-run -d 'Generate API data without writing it to files'
__fish_brew_complete_arg 'generate-formula-api' -l help -d 'Show this message'
__fish_brew_complete_arg 'generate-formula-api' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'generate-formula-api' -l verbose -d 'Make some output more verbose'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'generate-internal-api' -d 'Generate internal API data files for https://formulae.brew.sh'
__fish_brew_complete_arg 'generate-internal-api' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'generate-internal-api' -l dry-run -d 'Generate internal API data without writing it to files'
__fish_brew_complete_arg 'generate-internal-api' -l help -d 'Show this message'
__fish_brew_complete_arg 'generate-internal-api' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'generate-internal-api' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'generate-man-completions' 'Generate Homebrew\'s manpages and shell completions'
__fish_brew_complete_arg 'generate-man-completions' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'generate-man-completions' -l help -d 'Show this message'
__fish_brew_complete_arg 'generate-man-completions' -l no-exit-code -d 'Exit with code 0 even if no changes were made'
__fish_brew_complete_arg 'generate-man-completions' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'generate-man-completions' -l verbose -d 'Make some output more verbose'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'generate-vulns-advisories' -d 'Generate OSV-schema advisory records for the `Homebrew` ecosystem from `homebrew/core` formula patch `resolves` annotations, for https://github.com/Homebrew/advisory-database'
__fish_brew_complete_arg 'generate-vulns-advisories' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'generate-vulns-advisories' -l dry-run -d 'List the records that would be generated without writing files or querying OSV.dev'
__fish_brew_complete_arg 'generate-vulns-advisories' -l help -d 'Show this message'
__fish_brew_complete_arg 'generate-vulns-advisories' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'generate-vulns-advisories' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'generate-zap' 'Generate a `zap` stanza for a cask by scanning the system for associated files and directories'
__fish_brew_complete_arg 'generate-zap' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'generate-zap' -l help -d 'Show this message'
__fish_brew_complete_arg 'generate-zap' -l name -d 'Treat the argument as a raw application name instead of a cask token'
__fish_brew_complete_arg 'generate-zap' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'generate-zap' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'gist-logs' 'Upload logs for a failed build of formula to a new Gist'
__fish_brew_complete_arg 'gist-logs' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'gist-logs' -l help -d 'Show this message'
__fish_brew_complete_arg 'gist-logs' -l new-issue -d 'Automatically create a new issue in the appropriate GitHub repository after creating the Gist'
__fish_brew_complete_arg 'gist-logs' -l private -d 'The Gist will be marked private and will not appear in listings but will be accessible with its link'
__fish_brew_complete_arg 'gist-logs' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'gist-logs' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'gist-logs' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'home' 'Open a formula or cask\'s homepage in a browser, or open Homebrew\'s own homepage if no argument is provided'
__fish_brew_complete_arg 'home' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'home' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'home' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'home' -l help -d 'Show this message'
__fish_brew_complete_arg 'home' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'home' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'home; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'home; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'info' 'Display brief statistics for your Homebrew installation'
__fish_brew_complete_arg 'info' -l analytics -d 'List global Homebrew analytics data or, if specified, installation and build error data for formula (provided neither `$HOMEBREW_NO_ANALYTICS` nor `$HOMEBREW_NO_GITHUB_API` are set)'
__fish_brew_complete_arg 'info' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'info' -l category -d 'Which type of analytics data to retrieve. The value for category must be `install`, `install-on-request` or `build-error`; `cask-install` or `os-version` may be specified if formula is not. The default is `install`'
__fish_brew_complete_arg 'info' -l days -d 'How many days of analytics data to retrieve. The value for days must be `30`, `90` or `365`. The default is `30`'
__fish_brew_complete_arg 'info' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'info' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'info' -l github -d 'Open the GitHub source page for formula and cask in a browser. To view the history locally: `brew log -p` formula or cask'
__fish_brew_complete_arg 'info' -l help -d 'Show this message'
__fish_brew_complete_arg 'info' -l installed -d 'Output a human-readable inventory of installed formulae and casks. If `--json` is passed, print JSON for installed formulae and, with `--json=v2`, installed casks'
__fish_brew_complete_arg 'info' -l json -d 'Print a JSON representation. Currently the default value for version is `v1`.`v1` is valid for formula only. `v2` is valid for both formula and cask.See the docs for examples of using the JSON output: https://docs.brew.sh/Querying-Brew'
__fish_brew_complete_arg 'info' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'info' -l sizes -d 'Show the size of installed formulae and casks'
__fish_brew_complete_arg 'info' -l variations -d 'Include the variations hash in each formula\'s JSON output'
__fish_brew_complete_arg 'info' -l verbose -d 'Show more verbose data for formula, or full information with `--installed`'
__fish_brew_complete_arg 'info; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'info; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'install' 'Install a formula or cask'
__fish_brew_complete_arg 'install' -l HEAD -d 'If formula defines it, install the HEAD version, aka. main, trunk, unstable, master'
__fish_brew_complete_arg 'install' -l adopt -d 'Adopt existing artifacts in the destination that are identical to those being installed. Cannot be combined with `--force`'
__fish_brew_complete_arg 'install' -l appdir -d 'Target location for Applications (default: `/Applications`)'
__fish_brew_complete_arg 'install' -l appimagedir -d 'Target location for AppImages (default: `~/Applications`)'
__fish_brew_complete_arg 'install' -l as-dependency -d 'Install but mark as installed as a dependency and not installed on request'
__fish_brew_complete_arg 'install' -l audio-unit-plugindir -d 'Target location for Audio Unit Plugins (default: `~/Library/Audio/Plug-Ins/Components`)'
__fish_brew_complete_arg 'install' -l binaries -d 'Disable/enable linking of helper executables (default: enabled)'
__fish_brew_complete_arg 'install' -l bottle-arch -d 'Optimise bottles for the specified architecture rather than the oldest architecture supported by the version of macOS the bottles are built on'
__fish_brew_complete_arg 'install' -l build-bottle -d 'Prepare the formula for eventual bottling during installation, skipping any post-install steps'
__fish_brew_complete_arg 'install' -l build-from-source -d 'Compile formula from source even if a bottle is provided. Dependencies will still be installed from bottles if they are available'
__fish_brew_complete_arg 'install' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'install' -l cc -d 'Attempt to compile using the specified compiler, which should be the name of the compiler\'s executable, e.g. `gcc-9` for GCC 9. In order to use LLVM\'s clang, specify `llvm_clang`. To use the Apple-provided clang, specify `clang`. This option will only accept compilers that are provided by Homebrew or bundled with macOS. Please do not file issues if you encounter errors while using this option'
__fish_brew_complete_arg 'install' -l colorpickerdir -d 'Target location for Color Pickers (default: `~/Library/ColorPickers`)'
__fish_brew_complete_arg 'install' -l debug -d 'If brewing fails, open an interactive debugging session with access to IRB or a shell inside the temporary build directory'
__fish_brew_complete_arg 'install' -l debug-symbols -d 'Generate debug symbols on build. Source will be retained in a cache directory'
__fish_brew_complete_arg 'install' -l dictionarydir -d 'Target location for Dictionaries (default: `~/Library/Dictionaries`)'
__fish_brew_complete_arg 'install' -l display-times -d 'Print install times for each package at the end of the run. Enabled by default if `$HOMEBREW_DISPLAY_INSTALL_TIMES` is set'
__fish_brew_complete_arg 'install' -l dry-run -d 'Show what would be installed, but do not actually install anything'
__fish_brew_complete_arg 'install' -l fetch-HEAD -d 'Fetch the upstream repository to detect if the HEAD installation of the formula is outdated. Otherwise, the repository\'s HEAD will only be checked for updates when a new stable or development version has been released'
__fish_brew_complete_arg 'install' -l fontdir -d 'Target location for Fonts (default: `~/Library/Fonts`)'
__fish_brew_complete_arg 'install' -l force -d 'Install formulae without checking for previously installed keg-only or non-migrated versions. When installing casks, overwrite existing files (binaries and symlinks are excluded, unless originally from the same cask)'
__fish_brew_complete_arg 'install' -l force-bottle -d 'Install from a bottle if it exists for the current or newest version of macOS, even if it would not normally be used for installation'
__fish_brew_complete_arg 'install' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'install' -l git -d 'Create a Git repository, useful for creating patches to the software'
__fish_brew_complete_arg 'install' -l help -d 'Show this message'
__fish_brew_complete_arg 'install' -l ignore-dependencies -d 'An unsupported Homebrew development option to skip installing any dependencies of any kind. If the dependencies are not already present, the formula will have issues. If you\'re not developing Homebrew, consider adjusting your PATH rather than using this option'
__fish_brew_complete_arg 'install' -l include-test -d 'Install testing dependencies required to run `brew test` formula'
__fish_brew_complete_arg 'install' -l input-methoddir -d 'Target location for Input Methods (default: `~/Library/Input Methods`)'
__fish_brew_complete_arg 'install' -l interactive -d 'Download and patch formula, then open a shell. This allows the user to run `./configure --help` and otherwise determine how to turn the software package into a Homebrew package'
__fish_brew_complete_arg 'install' -l internet-plugindir -d 'Target location for Internet Plugins (default: `~/Library/Internet Plug-Ins`)'
__fish_brew_complete_arg 'install' -l keep-tmp -d 'Retain the temporary files created during installation'
__fish_brew_complete_arg 'install' -l keyboard-layoutdir -d 'Target location for Keyboard Layouts (default: `/Library/Keyboard Layouts`)'
__fish_brew_complete_arg 'install' -l language -d 'Comma-separated list of language codes to prefer for cask installation. The first matching language is used, otherwise it reverts to the cask\'s default language. The default value is the language of your system'
__fish_brew_complete_arg 'install' -l mdimporterdir -d 'Target location for Spotlight Plugins (default: `~/Library/Spotlight`)'
__fish_brew_complete_arg 'install' -l no-ask -d 'Do not ask for confirmation before downloading and installing. Ask mode is the default. Enabled by default if `$HOMEBREW_NO_ASK` is set'
__fish_brew_complete_arg 'install' -l no-binaries -d 'Disable/enable linking of helper executables (default: enabled)'
__fish_brew_complete_arg 'install' -l only-dependencies -d 'Install the dependencies with specified options but do not install the formula itself'
__fish_brew_complete_arg 'install' -l overwrite -d 'Delete files that already exist in the prefix while linking'
__fish_brew_complete_arg 'install' -l prefpanedir -d 'Target location for Preference Panes (default: `~/Library/PreferencePanes`)'
__fish_brew_complete_arg 'install' -l qlplugindir -d 'Target location for Quick Look Plugins (default: `~/Library/QuickLook`)'
__fish_brew_complete_arg 'install' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'install' -l require-sha -d 'Require all casks to have a checksum'
__fish_brew_complete_arg 'install' -l screen-saverdir -d 'Target location for Screen Savers (default: `~/Library/Screen Savers`)'
__fish_brew_complete_arg 'install' -l servicedir -d 'Target location for Services (default: `~/Library/Services`)'
__fish_brew_complete_arg 'install' -l skip-cask-deps -d 'Skip installing cask dependencies'
__fish_brew_complete_arg 'install' -l skip-link -d 'Install but skip linking the keg into the prefix'
__fish_brew_complete_arg 'install' -l skip-post-install -d 'Install but skip any post-install steps'
__fish_brew_complete_arg 'install' -l verbose -d 'Print the verification and post-install steps'
__fish_brew_complete_arg 'install' -l vst-plugindir -d 'Target location for VST Plugins (default: `~/Library/Audio/Plug-Ins/VST`)'
__fish_brew_complete_arg 'install' -l vst3-plugindir -d 'Target location for VST3 Plugins (default: `~/Library/Audio/Plug-Ins/VST3`)'
__fish_brew_complete_arg 'install' -l zap -d 'For use with `brew reinstall --cask`. Remove all files associated with a cask. *May remove files which are shared between applications.*'
__fish_brew_complete_arg 'install; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'install; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'install-bundler-gems' 'Install Homebrew\'s Bundler gems'
__fish_brew_complete_arg 'install-bundler-gems' -l add-groups -d 'Installs the specified comma-separated list of gem groups, in addition to those already installed'
__fish_brew_complete_arg 'install-bundler-gems' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'install-bundler-gems' -l groups -d 'Installs the specified comma-separated list of gem groups (default: last used). Replaces any previously installed groups'
__fish_brew_complete_arg 'install-bundler-gems' -l help -d 'Show this message'
__fish_brew_complete_arg 'install-bundler-gems' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'install-bundler-gems' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'irb' 'Enter the interactive Homebrew Ruby shell'
__fish_brew_complete_arg 'irb' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'irb' -l examples -d 'Show several examples'
__fish_brew_complete_arg 'irb' -l help -d 'Show this message'
__fish_brew_complete_arg 'irb' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'irb' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'leaves' 'List installed formulae that are not dependencies of another installed formula or cask'
__fish_brew_complete_arg 'leaves' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'leaves' -l help -d 'Show this message'
__fish_brew_complete_arg 'leaves' -l installed-as-dependency -d 'Only list leaves that were installed as dependencies'
__fish_brew_complete_arg 'leaves' -l installed-on-request -d 'Only list leaves that were manually installed'
__fish_brew_complete_arg 'leaves' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'leaves' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'lgtm' 'Run `brew typecheck`, `brew style --changed` and the relevant `brew tests`, `brew audit` and `brew test` checks in one go'
__fish_brew_complete_arg 'lgtm' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'lgtm' -l help -d 'Show this message'
__fish_brew_complete_arg 'lgtm' -l online -d 'Run additional, slower checks that require a network connection'
__fish_brew_complete_arg 'lgtm' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'lgtm' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'link' 'Symlink all of formula\'s installed files into Homebrew\'s prefix'
__fish_brew_complete_arg 'link' -l HEAD -d 'Link the HEAD version of the formula if it is installed'
__fish_brew_complete_arg 'link' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'link' -l dry-run -d 'List files which would be linked or deleted by `brew link --overwrite` without actually linking or deleting any files'
__fish_brew_complete_arg 'link' -l force -d 'Allow keg-only formulae to be linked'
__fish_brew_complete_arg 'link' -l help -d 'Show this message'
__fish_brew_complete_arg 'link' -l overwrite -d 'Delete files that already exist in the prefix while linking'
__fish_brew_complete_arg 'link' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'link' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'link' -a '(__fish_brew_suggest_formulae_installed)'


__fish_brew_complete_cmd 'linkage' 'Check the library links from the given formula kegs'
__fish_brew_complete_arg 'linkage' -l cached -d 'Print the cached linkage values stored in `$HOMEBREW_CACHE`, set by a previous `brew linkage` run'
__fish_brew_complete_arg 'linkage' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'linkage' -l help -d 'Show this message'
__fish_brew_complete_arg 'linkage' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'linkage' -l reverse -d 'For every library that a keg references, print its dylib path followed by the binaries that link to it'
__fish_brew_complete_arg 'linkage' -l strict -d 'Exit with a non-zero status if any undeclared dependencies with linkage are found'
__fish_brew_complete_arg 'linkage' -l test -d 'Show only missing libraries and exit with a non-zero status if any missing libraries are found'
__fish_brew_complete_arg 'linkage' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'linkage' -a '(__fish_brew_suggest_formulae_installed)'


__fish_brew_complete_cmd 'list' 'List all installed formulae and casks'
__fish_brew_complete_arg 'list' -l built-from-source -d 'List the formulae compiled from source'
__fish_brew_complete_arg 'list' -l cask -d 'List only casks, or treat all named arguments as casks'
__fish_brew_complete_arg 'list' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'list' -l formula -d 'List only formulae, or treat all named arguments as formulae'
__fish_brew_complete_arg 'list' -l full-name -d 'Print formulae with fully-qualified names. Unless `--full-name`, `--versions` or `--pinned` are passed, other options (i.e. `-1`, `-l`, `-r` and `-t`) are passed to `ls`(1) which produces the actual output'
__fish_brew_complete_arg 'list' -l help -d 'Show this message'
__fish_brew_complete_arg 'list' -l installed-on-request -d 'List the formulae installed on request'
__fish_brew_complete_arg 'list' -l json -d 'Output installed formulae and casks with versions, linked and opt-linked formula versions and pinned versions as JSON using the fast Bash command path. Requires `--versions`, no named arguments and `jq`'
__fish_brew_complete_arg 'list' -l multiple -d 'Only show formulae with multiple versions installed. Implies `--versions`'
__fish_brew_complete_arg 'list' -l no-installed-on-request -d 'List the formulae not installed on request (i.e. installed as dependencies)'
__fish_brew_complete_arg 'list' -l pinned -d 'List only pinned packages, or only the specified (pinned) packages if formula or cask are provided. See also `pin`, `unpin`'
__fish_brew_complete_arg 'list' -l poured-from-bottle -d 'List the formulae installed from a bottle'
__fish_brew_complete_arg 'list' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'list' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'list' -l versions -d 'Show the version number for installed formulae, or only the specified formulae if formula are provided'
__fish_brew_complete_arg 'list' -l 1 -d 'Force output to be one entry per line. This is the default when output is not to a terminal'
__fish_brew_complete_arg 'list' -l l -d 'List formulae and/or casks in long format. Has no effect when a formula or cask name is passed as an argument'
__fish_brew_complete_arg 'list' -l r -d 'Reverse the order of formula and/or cask sorting to list the oldest entries first. Has no effect when a formula or cask name is passed as an argument'
__fish_brew_complete_arg 'list' -l t -d 'Sort formulae and/or casks by time modified, listing most recently modified first. Has no effect when a formula or cask name is passed as an argument'
__fish_brew_complete_arg 'list; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_installed)'
__fish_brew_complete_arg 'list; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_installed)'


__fish_brew_complete_cmd 'livecheck' 'Check for newer versions of formulae and/or casks from upstream'
__fish_brew_complete_arg 'livecheck' -l autobump -d 'Include packages that are autobumped by BrewTestBot. By default these are skipped'
__fish_brew_complete_arg 'livecheck' -l cask -d 'Only check casks'
__fish_brew_complete_arg 'livecheck' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'livecheck' -l extract-plist -d 'Enable checking multiple casks with ExtractPlist strategy'
__fish_brew_complete_arg 'livecheck' -l formula -d 'Only check formulae'
__fish_brew_complete_arg 'livecheck' -l full-name -d 'Print formulae and casks with fully-qualified names'
__fish_brew_complete_arg 'livecheck' -l help -d 'Show this message'
__fish_brew_complete_arg 'livecheck' -l installed -d 'Check formulae and casks that are currently installed'
__fish_brew_complete_arg 'livecheck' -l json -d 'Output information in JSON format'
__fish_brew_complete_arg 'livecheck' -l newer-only -d 'Show the latest version only if it\'s newer than the current formula or cask version'
__fish_brew_complete_arg 'livecheck' -l quiet -d 'Suppress warnings, don\'t print a progress bar for JSON output'
__fish_brew_complete_arg 'livecheck' -l resources -d 'Also check resources for formulae'
__fish_brew_complete_arg 'livecheck' -l tap -d 'Check formulae and casks within the given tap, specified as user`/`repo'
__fish_brew_complete_arg 'livecheck' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'livecheck; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'livecheck; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'log' 'Show the `git log` for formula or cask, or show the log for the Homebrew repository if no formula or cask is provided'
__fish_brew_complete_arg 'log' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'log' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'log' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'log' -l help -d 'Show this message'
__fish_brew_complete_arg 'log' -l max-count -d 'Print only a specified number of commits'
__fish_brew_complete_arg 'log' -l oneline -d 'Print only one line per commit'
__fish_brew_complete_arg 'log' -l patch -d 'Also print patch from commit'
__fish_brew_complete_arg 'log' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'log' -l stat -d 'Also print diffstat from commit'
__fish_brew_complete_arg 'log' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'log' -l 1 -d 'Print only one commit'
__fish_brew_complete_arg 'log; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'log; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'mcp-server' 'Starts the Homebrew MCP (Model Context Protocol) server'
__fish_brew_complete_arg 'mcp-server' -l debug -d 'Enable debug logging to stderr'
__fish_brew_complete_arg 'mcp-server' -l help -d 'Show this message'
__fish_brew_complete_arg 'mcp-server' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'mcp-server' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'migrate' 'Migrate renamed packages to new names, where formula are old names of packages'
__fish_brew_complete_arg 'migrate' -l cask -d 'Only migrate casks'
__fish_brew_complete_arg 'migrate' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'migrate' -l dry-run -d 'Show what would be migrated, but do not actually migrate anything'
__fish_brew_complete_arg 'migrate' -l force -d 'Treat installed formula and provided formula as if they are from the same taps and migrate them anyway'
__fish_brew_complete_arg 'migrate' -l formula -d 'Only migrate formulae'
__fish_brew_complete_arg 'migrate' -l help -d 'Show this message'
__fish_brew_complete_arg 'migrate' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'migrate' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'migrate; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_installed)'
__fish_brew_complete_arg 'migrate; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_installed)'


__fish_brew_complete_cmd 'missing' 'Check the given formula kegs and cask installations for missing dependencies'
__fish_brew_complete_arg 'missing' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'missing' -l help -d 'Show this message'
__fish_brew_complete_arg 'missing' -l hide -d 'Act as if none of the specified hidden are installed. hidden should be a comma-separated list of formulae or casks'
__fish_brew_complete_arg 'missing' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'missing' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'missing' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'missing' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'nodenv-sync' 'Create symlinks for Homebrew\'s installed NodeJS versions in `~/.nodenv/versions`'
__fish_brew_complete_arg 'nodenv-sync' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'nodenv-sync' -l help -d 'Show this message'
__fish_brew_complete_arg 'nodenv-sync' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'nodenv-sync' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'options' 'Show install options specific to formula'
__fish_brew_complete_arg 'options' -l compact -d 'Show all options on a single line separated by spaces'
__fish_brew_complete_arg 'options' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'options' -l help -d 'Show this message'
__fish_brew_complete_arg 'options' -l installed -d 'Show options for formulae that are currently installed'
__fish_brew_complete_arg 'options' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'options' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'options' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'outdated' 'List installed casks and formulae that have an updated version available'
__fish_brew_complete_arg 'outdated' -l cask -d 'List only outdated casks'
__fish_brew_complete_arg 'outdated' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'outdated' -l fetch-HEAD -d 'Fetch the upstream repository to detect if the HEAD installation of the formula is outdated. Otherwise, the repository\'s HEAD will only be checked for updates when a new stable or development version has been released'
__fish_brew_complete_arg 'outdated' -l formula -d 'List only outdated formulae'
__fish_brew_complete_arg 'outdated' -l greedy -d 'Also include outdated casks with `version :latest` and `auto_updates true` casks that would otherwise be skipped. Enabled by default if `$HOMEBREW_UPGRADE_GREEDY` is set'
__fish_brew_complete_arg 'outdated' -l greedy-auto-updates -d 'Also include outdated `auto_updates true` casks that would otherwise be skipped'
__fish_brew_complete_arg 'outdated' -l greedy-latest -d 'Also include outdated casks including those with `version :latest`'
__fish_brew_complete_arg 'outdated' -l help -d 'Show this message'
__fish_brew_complete_arg 'outdated' -l json -d 'Print output in JSON format. There are two versions: `v1` and `v2`. `v1` is deprecated and is currently the default if no version is specified. `v2` prints outdated formulae and casks'
__fish_brew_complete_arg 'outdated' -l minimum-version -d 'Only list a named formula or cask with an installed version below the given minimum version'
__fish_brew_complete_arg 'outdated' -l quiet -d 'List only the names of outdated kegs (takes precedence over `--verbose`)'
__fish_brew_complete_arg 'outdated' -l verbose -d 'Include detailed version information'
__fish_brew_complete_arg 'outdated; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'outdated; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'pin' 'Pin the specified package, preventing it from being upgraded when issuing the `brew upgrade` formula or cask command'
__fish_brew_complete_arg 'pin' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'pin' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'pin' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'pin' -l help -d 'Show this message'
__fish_brew_complete_arg 'pin' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'pin' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'pin; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_installed)'
__fish_brew_complete_arg 'pin; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_installed)'


__fish_brew_complete_cmd 'postinstall' 'Rerun the post-install steps for formula'
__fish_brew_complete_arg 'postinstall' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'postinstall' -l help -d 'Show this message'
__fish_brew_complete_arg 'postinstall' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'postinstall' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'postinstall' -a '(__fish_brew_suggest_formulae_installed)'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'pr-automerge' -d 'Find pull requests that can be automatically merged using `brew pr-publish`'
__fish_brew_complete_arg 'pr-automerge' -l autosquash -d 'Instruct `brew pr-publish` to automatically reformat and reword commits in the pull request to the preferred format'
__fish_brew_complete_arg 'pr-automerge' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'pr-automerge' -l help -d 'Show this message'
__fish_brew_complete_arg 'pr-automerge' -l ignore-failures -d 'Include pull requests that have failing status checks'
__fish_brew_complete_arg 'pr-automerge' -l publish -d 'Run `brew pr-publish` on matching pull requests'
__fish_brew_complete_arg 'pr-automerge' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'pr-automerge' -l tap -d 'Target tap repository (default: `homebrew/core`)'
__fish_brew_complete_arg 'pr-automerge' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'pr-automerge' -l with-label -d 'Pull requests must have this label'
__fish_brew_complete_arg 'pr-automerge' -l without-approval -d 'Pull requests do not require approval to be merged'
__fish_brew_complete_arg 'pr-automerge' -l without-labels -d 'Pull requests must not have these labels (default: `do not merge`, `new formula`, `automerge-skip`, `pre-release`, `CI-published-bottle-commits`)'
__fish_brew_complete_arg 'pr-automerge' -l workflow -d 'Workflow file to use with `brew pr-publish`'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'pr-publish' -d 'Publish bottles for a pull request with GitHub Actions'
__fish_brew_complete_arg 'pr-publish' -l autosquash -d 'If supported on the target tap, automatically reformat and reword commits to our preferred format'
__fish_brew_complete_arg 'pr-publish' -l branch -d 'Branch to use the workflow from (default: `main`)'
__fish_brew_complete_arg 'pr-publish' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'pr-publish' -l help -d 'Show this message'
__fish_brew_complete_arg 'pr-publish' -l large-runner -d 'Run the upload job on a large runner'
__fish_brew_complete_arg 'pr-publish' -l message -d 'Message to include when autosquashing revision bumps, deletions and rebuilds'
__fish_brew_complete_arg 'pr-publish' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'pr-publish' -l tap -d 'Target tap repository (default: `homebrew/core`)'
__fish_brew_complete_arg 'pr-publish' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'pr-publish' -l workflow -d 'Target workflow filename (default: `publish-commit-bottles.yml`)'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'pr-pull' -d 'Download and publish bottles and apply the bottle commit from a pull request with artifacts generated by GitHub Actions'
__fish_brew_complete_arg 'pr-pull' -l artifact-pattern -d 'Download artifacts with the specified pattern (default: `bottles{,_*}`)'
__fish_brew_complete_arg 'pr-pull' -l autosquash -d 'Automatically reformat and reword commits in the pull request to our preferred format'
__fish_brew_complete_arg 'pr-pull' -l branch-okay -d 'Do not warn if pulling to a branch besides the repository default (useful for testing)'
__fish_brew_complete_arg 'pr-pull' -l clean -d 'Do not amend the commits from pull requests'
__fish_brew_complete_arg 'pr-pull' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'pr-pull' -l dry-run -d 'Print what would be done rather than doing it'
__fish_brew_complete_arg 'pr-pull' -l head-sha -d 'Expected pull request head commit SHA'
__fish_brew_complete_arg 'pr-pull' -l help -d 'Show this message'
__fish_brew_complete_arg 'pr-pull' -l ignore-missing-artifacts -d 'Comma-separated list of workflows which can be ignored if they have not been run'
__fish_brew_complete_arg 'pr-pull' -l keep-old -d 'If the formula specifies a rebuild version, attempt to preserve its value in the generated DSL'
__fish_brew_complete_arg 'pr-pull' -l message -d 'Message to include when autosquashing revision bumps, deletions and rebuilds'
__fish_brew_complete_arg 'pr-pull' -l no-cherry-pick -d 'Do not cherry-pick commits from the pull request branch'
__fish_brew_complete_arg 'pr-pull' -l no-commit -d 'Do not generate a new commit before uploading'
__fish_brew_complete_arg 'pr-pull' -l no-upload -d 'Download the bottles but don\'t upload them'
__fish_brew_complete_arg 'pr-pull' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'pr-pull' -l resolve -d 'When a patch fails to apply, leave in progress and allow user to resolve, instead of aborting'
__fish_brew_complete_arg 'pr-pull' -l retain-bottle-dir -d 'Does not clean up the tmp directory for the bottle so it can be used later'
__fish_brew_complete_arg 'pr-pull' -l root-url -d 'Use the specified URL as the root of the bottle\'s URL instead of Homebrew\'s default'
__fish_brew_complete_arg 'pr-pull' -l root-url-using -d 'Use the specified download strategy class for downloading the bottle\'s URL instead of Homebrew\'s default'
__fish_brew_complete_arg 'pr-pull' -l tap -d 'Target tap repository (default: `homebrew/core`)'
__fish_brew_complete_arg 'pr-pull' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'pr-pull' -l warn-on-upload-failure -d 'Warn instead of raising an error if the bottle upload fails. Useful for repairing bottle uploads that previously failed'
__fish_brew_complete_arg 'pr-pull' -l workflows -d 'Retrieve artifacts from the specified workflow (default: `tests.yml`). Can be a comma-separated list to include multiple workflows'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'pr-upload' -d 'Apply the bottle commit and publish bottles to a host'
__fish_brew_complete_arg 'pr-upload' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'pr-upload' -l dry-run -d 'Print what would be done rather than doing it'
__fish_brew_complete_arg 'pr-upload' -l help -d 'Show this message'
__fish_brew_complete_arg 'pr-upload' -l keep-old -d 'If the formula specifies a rebuild version, attempt to preserve its value in the generated DSL. When using GitHub Packages, this also appends the manifest to the existing list'
__fish_brew_complete_arg 'pr-upload' -l no-commit -d 'Do not generate a new commit before uploading'
__fish_brew_complete_arg 'pr-upload' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'pr-upload' -l root-url -d 'Use the specified URL as the root of the bottle\'s URL instead of Homebrew\'s default'
__fish_brew_complete_arg 'pr-upload' -l root-url-using -d 'Use the specified download strategy class for downloading the bottle\'s URL instead of Homebrew\'s default'
__fish_brew_complete_arg 'pr-upload' -l upload-only -d 'Skip running `brew bottle` before uploading'
__fish_brew_complete_arg 'pr-upload' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'pr-upload' -l warn-on-upload-failure -d 'Warn instead of raising an error if the bottle upload fails. Useful for repairing bottle uploads that previously failed'


__fish_brew_complete_cmd 'prof' 'Run Homebrew with a Ruby profiler'
__fish_brew_complete_arg 'prof' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'prof' -l help -d 'Show this message'
__fish_brew_complete_arg 'prof' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'prof' -l stackprof -d 'Use `stackprof` instead of `ruby-prof` (the default)'
__fish_brew_complete_arg 'prof' -l timings -d 'Record machine-readable timings for Homebrew command phases'
__fish_brew_complete_arg 'prof' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'prof' -l vernier -d 'Use `vernier` instead of `ruby-prof` (the default)'
__fish_brew_complete_arg 'prof' -a '(__fish_brew_suggest_commands)'


__fish_brew_complete_cmd 'pyenv-sync' 'Create symlinks for Homebrew\'s installed Python versions in `~/.pyenv/versions`'
__fish_brew_complete_arg 'pyenv-sync' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'pyenv-sync' -l help -d 'Show this message'
__fish_brew_complete_arg 'pyenv-sync' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'pyenv-sync' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'rbenv-sync' 'Create symlinks for Homebrew\'s installed Ruby versions in `~/.rbenv/versions`'
__fish_brew_complete_arg 'rbenv-sync' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'rbenv-sync' -l help -d 'Show this message'
__fish_brew_complete_arg 'rbenv-sync' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'rbenv-sync' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'readall' 'Import all items from the specified tap, or from all installed taps if none is provided'
__fish_brew_complete_arg 'readall' -l aliases -d 'Verify any alias symlinks in each tap'
__fish_brew_complete_arg 'readall' -l arch -d 'Read using the given CPU architecture. (Pass `all` to simulate all architectures.)'
__fish_brew_complete_arg 'readall' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'readall' -l help -d 'Show this message'
__fish_brew_complete_arg 'readall' -l no-simulate -d 'Don\'t simulate other system configurations when checking formulae and casks'
__fish_brew_complete_arg 'readall' -l os -d 'Read using the given operating system. (Pass `all` to simulate all operating systems.)'
__fish_brew_complete_arg 'readall' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'readall' -l syntax -d 'Syntax-check all of Homebrew\'s Ruby files (if no tap is passed)'
__fish_brew_complete_arg 'readall' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'readall' -a '(__fish_brew_suggest_taps_installed)'


__fish_brew_complete_cmd 'reinstall' 'Uninstall and then reinstall a formula or cask using the same options it was originally installed with, plus any appended options specific to a formula'
__fish_brew_complete_arg 'reinstall' -l adopt -d 'Adopt existing artifacts in the destination that are identical to those being installed. Cannot be combined with `--force`'
__fish_brew_complete_arg 'reinstall' -l appdir -d 'Target location for Applications (default: `/Applications`)'
__fish_brew_complete_arg 'reinstall' -l appimagedir -d 'Target location for AppImages (default: `~/Applications`)'
__fish_brew_complete_arg 'reinstall' -l audio-unit-plugindir -d 'Target location for Audio Unit Plugins (default: `~/Library/Audio/Plug-Ins/Components`)'
__fish_brew_complete_arg 'reinstall' -l binaries -d 'Disable/enable linking of helper executables (default: enabled)'
__fish_brew_complete_arg 'reinstall' -l build-from-source -d 'Compile formula from source even if a bottle is available'
__fish_brew_complete_arg 'reinstall' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'reinstall' -l colorpickerdir -d 'Target location for Color Pickers (default: `~/Library/ColorPickers`)'
__fish_brew_complete_arg 'reinstall' -l debug -d 'If brewing fails, open an interactive debugging session with access to IRB or a shell inside the temporary build directory'
__fish_brew_complete_arg 'reinstall' -l debug-symbols -d 'Generate debug symbols on build. Source will be retained in a cache directory'
__fish_brew_complete_arg 'reinstall' -l dictionarydir -d 'Target location for Dictionaries (default: `~/Library/Dictionaries`)'
__fish_brew_complete_arg 'reinstall' -l display-times -d 'Print install times for each package at the end of the run. Enabled by default if `$HOMEBREW_DISPLAY_INSTALL_TIMES` is set'
__fish_brew_complete_arg 'reinstall' -l fontdir -d 'Target location for Fonts (default: `~/Library/Fonts`)'
__fish_brew_complete_arg 'reinstall' -l force -d 'Install without checking for previously installed keg-only or non-migrated versions'
__fish_brew_complete_arg 'reinstall' -l force-bottle -d 'Install from a bottle if it exists for the current or newest version of macOS, even if it would not normally be used for installation'
__fish_brew_complete_arg 'reinstall' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'reinstall' -l git -d 'Create a Git repository, useful for creating patches to the software'
__fish_brew_complete_arg 'reinstall' -l help -d 'Show this message'
__fish_brew_complete_arg 'reinstall' -l input-methoddir -d 'Target location for Input Methods (default: `~/Library/Input Methods`)'
__fish_brew_complete_arg 'reinstall' -l interactive -d 'Download and patch formula, then open a shell. This allows the user to run `./configure --help` and otherwise determine how to turn the software package into a Homebrew package'
__fish_brew_complete_arg 'reinstall' -l internet-plugindir -d 'Target location for Internet Plugins (default: `~/Library/Internet Plug-Ins`)'
__fish_brew_complete_arg 'reinstall' -l keep-tmp -d 'Retain the temporary files created during installation'
__fish_brew_complete_arg 'reinstall' -l keyboard-layoutdir -d 'Target location for Keyboard Layouts (default: `/Library/Keyboard Layouts`)'
__fish_brew_complete_arg 'reinstall' -l language -d 'Comma-separated list of language codes to prefer for cask installation. The first matching language is used, otherwise it reverts to the cask\'s default language. The default value is the language of your system'
__fish_brew_complete_arg 'reinstall' -l mdimporterdir -d 'Target location for Spotlight Plugins (default: `~/Library/Spotlight`)'
__fish_brew_complete_arg 'reinstall' -l no-ask -d 'Do not ask for confirmation before downloading and reinstalling. Ask mode is the default. Enabled by default if `$HOMEBREW_NO_ASK` is set'
__fish_brew_complete_arg 'reinstall' -l no-binaries -d 'Disable/enable linking of helper executables (default: enabled)'
__fish_brew_complete_arg 'reinstall' -l prefpanedir -d 'Target location for Preference Panes (default: `~/Library/PreferencePanes`)'
__fish_brew_complete_arg 'reinstall' -l qlplugindir -d 'Target location for Quick Look Plugins (default: `~/Library/QuickLook`)'
__fish_brew_complete_arg 'reinstall' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'reinstall' -l require-sha -d 'Require all casks to have a checksum'
__fish_brew_complete_arg 'reinstall' -l screen-saverdir -d 'Target location for Screen Savers (default: `~/Library/Screen Savers`)'
__fish_brew_complete_arg 'reinstall' -l servicedir -d 'Target location for Services (default: `~/Library/Services`)'
__fish_brew_complete_arg 'reinstall' -l skip-cask-deps -d 'Skip installing cask dependencies'
__fish_brew_complete_arg 'reinstall' -l verbose -d 'Print the verification and post-install steps'
__fish_brew_complete_arg 'reinstall' -l vst-plugindir -d 'Target location for VST Plugins (default: `~/Library/Audio/Plug-Ins/VST`)'
__fish_brew_complete_arg 'reinstall' -l vst3-plugindir -d 'Target location for VST3 Plugins (default: `~/Library/Audio/Plug-Ins/VST3`)'
__fish_brew_complete_arg 'reinstall' -l zap -d 'For use with `brew reinstall --cask`. Remove all files associated with a cask. *May remove files which are shared between applications.*'
__fish_brew_complete_arg 'reinstall; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'reinstall; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'release' -d 'Create a new draft Homebrew/brew release with the appropriate version number and release notes'
__fish_brew_complete_arg 'release' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'release' -l force -d 'Actually create the release and trigger the workflow. Without this, just show what would be done'
__fish_brew_complete_arg 'release' -l help -d 'Show this message'
__fish_brew_complete_arg 'release' -l major -d 'Create a major release'
__fish_brew_complete_arg 'release' -l minor -d 'Create a minor release'
__fish_brew_complete_arg 'release' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'release' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'rubocop' 'Installs, configures and runs Homebrew\'s `rubocop`'
__fish_brew_complete_arg 'rubocop' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'rubocop' -l help -d 'Show this message'
__fish_brew_complete_arg 'rubocop' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'rubocop' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'ruby' 'Run a Ruby instance with Homebrew\'s libraries loaded'
__fish_brew_complete_arg 'ruby' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'ruby' -l help -d 'Show this message'
__fish_brew_complete_arg 'ruby' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'ruby' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'ruby' -l e -d 'Execute the given text string as a script'
__fish_brew_complete_arg 'ruby' -l r -d 'Load a library using `require`'


__fish_brew_complete_cmd 'rubydoc' 'Generate Homebrew\'s RubyDoc documentation'
__fish_brew_complete_arg 'rubydoc' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'rubydoc' -l help -d 'Show this message'
__fish_brew_complete_arg 'rubydoc' -l only-public -d 'Only generate public API documentation'
__fish_brew_complete_arg 'rubydoc' -l open -d 'Open generated documentation in a browser'
__fish_brew_complete_arg 'rubydoc' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'rubydoc' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'sandbox-exec' 'Run command in Homebrew\'s sandbox, allowing writes to writable-path and Homebrew\'s temporary and cache directories'
__fish_brew_complete_arg 'sandbox-exec' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'sandbox-exec' -l deny-network -d 'Deny network access from inside the sandbox'
__fish_brew_complete_arg 'sandbox-exec' -l help -d 'Show this message'
__fish_brew_complete_arg 'sandbox-exec' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'sandbox-exec' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'search' 'Perform a substring search of cask tokens and formula names for text'
__fish_brew_complete_arg 'search' -l alpine -d 'Search for text in the given database'
__fish_brew_complete_arg 'search' -l archlinux -d 'Search for text in the given database'
__fish_brew_complete_arg 'search' -l cask -d 'Search for casks'
__fish_brew_complete_arg 'search' -l closed -d 'Search for only closed GitHub pull requests'
__fish_brew_complete_arg 'search' -l debian -d 'Search for text in the given database'
__fish_brew_complete_arg 'search' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'search' -l desc -d 'Search for formulae with a description matching text and casks with a name or description matching text'
__fish_brew_complete_arg 'search' -l fedora -d 'Search for text in the given database'
__fish_brew_complete_arg 'search' -l fink -d 'Search for text in the given database'
__fish_brew_complete_arg 'search' -l formula -d 'Search for formulae'
__fish_brew_complete_arg 'search' -l help -d 'Show this message'
__fish_brew_complete_arg 'search' -l macports -d 'Search for text in the given database'
__fish_brew_complete_arg 'search' -l open -d 'Search for only open GitHub pull requests'
__fish_brew_complete_arg 'search' -l opensuse -d 'Search for text in the given database'
__fish_brew_complete_arg 'search' -l pull-request -d 'Search for GitHub pull requests containing text'
__fish_brew_complete_arg 'search' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'search' -l repology -d 'Search for text in the given database'
__fish_brew_complete_arg 'search' -l ubuntu -d 'Search for text in the given database'
__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' 'stop' 'Stop the service formula immediately and unregister it from launching at login (or boot),'
__fish_brew_complete_sub_cmd 'services' 'unload' 'Stop the service formula immediately and unregister it from launching at login (or boot),'
__fish_brew_complete_sub_cmd 'services' 'terminate' 'Stop the service formula immediately and unregister it from launching at login (or boot),'
__fish_brew_complete_sub_cmd 'services' 'term' 'Stop the service formula immediately and unregister it from launching at login (or boot),'
__fish_brew_complete_sub_cmd 'services' 't' 'Stop the service formula immediately and unregister it from launching at login (or boot),'
__fish_brew_complete_sub_cmd 'services' 'u' 'Stop the service formula immediately and unregister it from launching at login (or boot),'
__fish_brew_complete_sub_cmd 'services' 'start' 'Start the service formula immediately and register it to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 'launch' 'Start the service formula immediately and register it to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 'load' 'Start the service formula immediately and register it to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 's' 'Start the service formula immediately and register it to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 'l' 'Start the service formula immediately and register it to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 'run' 'Run the service formula without registering to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 'restart' 'Stop (if necessary) and start the service formula immediately and register it to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 'relaunch' 'Stop (if necessary) and start the service formula immediately and register it to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 'reload' 'Stop (if necessary) and start the service formula immediately and register it to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 'r' 'Stop (if necessary) and start the service formula immediately and register it to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 'list' 'List information about all managed services for the current user (or root)'
__fish_brew_complete_sub_cmd 'services' 'ls' 'List information about all managed services for the current user (or root)'
__fish_brew_complete_sub_cmd 'services' 'kill' 'Stop the service formula immediately but keep it registered to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 'k' 'Stop the service formula immediately but keep it registered to launch at login (or boot)'
__fish_brew_complete_sub_cmd 'services' 'info' 'List all managed services for the current user (or root)'
__fish_brew_complete_sub_cmd 'services' 'i' 'List all managed services for the current user (or root)'
__fish_brew_complete_sub_cmd 'services' 'cleanup' 'Remove all unused services'
__fish_brew_complete_sub_cmd 'services' 'clean' 'Remove all unused services'
__fish_brew_complete_sub_cmd 'services' 'cl' 'Remove all unused services'
__fish_brew_complete_sub_cmd 'services' 'rm' 'Remove all unused services'
__fish_brew_complete_arg 'services; and [ (count (__fish_brew_args)) = 1 ]' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'services; and [ (count (__fish_brew_args)) = 1 ]' -l help -d 'Show this message'
__fish_brew_complete_arg 'services; and [ (count (__fish_brew_args)) = 1 ]' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'services; and [ (count (__fish_brew_args)) = 1 ]' -l sudo-service-user -d 'When run as root on macOS, run the service(s) as this user'
__fish_brew_complete_arg 'services; and [ (count (__fish_brew_args)) = 1 ]' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'services' 'stop unload terminate term t u' -l all -d 'Stop all services and unregister them from launching at login (or boot), unless `--keep` is specified'
__fish_brew_complete_sub_arg 'services' 'stop unload terminate term t u' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'services' 'stop unload terminate term t u' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'services' 'stop unload terminate term t u' -l keep -d 'When stopped, don\'t unregister the service from launching at login (or boot)'
__fish_brew_complete_sub_arg 'services' 'stop unload terminate term t u' -l max-wait -d 'Wait at most this many seconds for `stop` to finish stopping a service. Defaults to 60. Set this to zero (0) seconds to wait indefinitely'
__fish_brew_complete_sub_arg 'services' 'stop unload terminate term t u' -l no-wait -d 'Don\'t wait for `stop` to finish stopping the service'
__fish_brew_complete_sub_arg 'services' 'stop unload terminate term t u' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'services' 'stop unload terminate term t u' -l sudo-service-user -d 'When run as root on macOS, run the service(s) as this user'
__fish_brew_complete_sub_arg 'services' 'stop unload terminate term t u' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'services' 'stop unload terminate term t u' -a '(__fish_brew_suggest_services)'
__fish_brew_complete_sub_arg 'services' 'start launch load s l' -l all -d 'Start all services and register them to launch at login (or boot)'
__fish_brew_complete_sub_arg 'services' 'start launch load s l' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'services' 'start launch load s l' -l file -d 'Use the service file from this location to `start` the service'
__fish_brew_complete_sub_arg 'services' 'start launch load s l' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'services' 'start launch load s l' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'services' 'start launch load s l' -l sudo-service-user -d 'When run as root on macOS, run the service(s) as this user'
__fish_brew_complete_sub_arg 'services' 'start launch load s l' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'services' 'start launch load s l' -a '(__fish_brew_suggest_services)'
__fish_brew_complete_sub_arg 'services' 'run' -l all -d 'Run all services without registering them to launch at login (or boot)'
__fish_brew_complete_sub_arg 'services' 'run' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'services' 'run' -l file -d 'Use the service file from this location to `run` the service'
__fish_brew_complete_sub_arg 'services' 'run' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'services' 'run' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'services' 'run' -l sudo-service-user -d 'When run as root on macOS, run the service(s) as this user'
__fish_brew_complete_sub_arg 'services' 'run' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'services' 'run' -a '(__fish_brew_suggest_services)'
__fish_brew_complete_sub_arg 'services' 'restart relaunch reload r' -l all -d 'Restart all services'
__fish_brew_complete_sub_arg 'services' 'restart relaunch reload r' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'services' 'restart relaunch reload r' -l file -d 'Use the service file from this location to `start` the service'
__fish_brew_complete_sub_arg 'services' 'restart relaunch reload r' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'services' 'restart relaunch reload r' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'services' 'restart relaunch reload r' -l sudo-service-user -d 'When run as root on macOS, run the service(s) as this user'
__fish_brew_complete_sub_arg 'services' 'restart relaunch reload r' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'services' 'restart relaunch reload r' -a '(__fish_brew_suggest_services)'
__fish_brew_complete_sub_arg 'services' 'list ls' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'services' 'list ls' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'services' 'list ls' -l json -d 'Output as JSON'
__fish_brew_complete_sub_arg 'services' 'list ls' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'services' 'list ls' -l sudo-service-user -d 'When run as root on macOS, run the service(s) as this user'
__fish_brew_complete_sub_arg 'services' 'list ls' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'services' 'kill k' -l all -d 'Stop all services immediately but keep them registered to launch at login (or boot)'
__fish_brew_complete_sub_arg 'services' 'kill k' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'services' 'kill k' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'services' 'kill k' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'services' 'kill k' -l sudo-service-user -d 'When run as root on macOS, run the service(s) as this user'
__fish_brew_complete_sub_arg 'services' 'kill k' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'services' 'kill k' -a '(__fish_brew_suggest_services)'
__fish_brew_complete_sub_arg 'services' 'info i' -l all -d 'List all managed services'
__fish_brew_complete_sub_arg 'services' 'info i' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'services' 'info i' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'services' 'info i' -l json -d 'Output as JSON'
__fish_brew_complete_sub_arg 'services' 'info i' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'services' 'info i' -l sudo-service-user -d 'When run as root on macOS, run the service(s) as this user'
__fish_brew_complete_sub_arg 'services' 'info i' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_sub_arg 'services' 'info i' -a '(__fish_brew_suggest_services)'
__fish_brew_complete_sub_arg 'services' 'cleanup clean cl rm' -l debug -d 'Display any debugging information'
__fish_brew_complete_sub_arg 'services' 'cleanup clean cl rm' -l help -d 'Show this message'
__fish_brew_complete_sub_arg 'services' 'cleanup clean cl rm' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_sub_arg 'services' 'cleanup clean cl rm' -l sudo-service-user -d 'When run as root on macOS, run the service(s) as this user'
__fish_brew_complete_sub_arg 'services' 'cleanup clean cl rm' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'setup-ruby' 'Installs and configures Homebrew\'s Ruby'
__fish_brew_complete_arg 'setup-ruby' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'setup-ruby' -l help -d 'Show this message'
__fish_brew_complete_arg 'setup-ruby' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'setup-ruby' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'setup-ruby' -a '(__fish_brew_suggest_commands)'


__fish_brew_complete_cmd 'sh' 'Enter an interactive shell for Homebrew\'s build environment'
__fish_brew_complete_arg 'sh' -l cmd -d 'Execute commands in a non-interactive shell'
__fish_brew_complete_arg 'sh' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'sh' -l env -d 'Use the standard `$PATH` instead of superenv\'s when `std` is passed'
__fish_brew_complete_arg 'sh' -l help -d 'Show this message'
__fish_brew_complete_arg 'sh' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'sh' -l ruby -d 'Set up Homebrew\'s Ruby environment'
__fish_brew_complete_arg 'sh' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'shellenv' 'Valid shells: bash|csh|fish|pwsh|sh|tcsh|zsh  Print export statements'
__fish_brew_complete_arg 'shellenv' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'shellenv' -l help -d 'Show this message'
__fish_brew_complete_arg 'shellenv' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'shellenv' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'source' 'Open a formula\'s source repository in a browser, or open Homebrew\'s own repository if no argument is provided'
__fish_brew_complete_arg 'source' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'source' -l help -d 'Show this message'
__fish_brew_complete_arg 'source' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'source' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'source' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'style' 'Check formulae or files for conformance to Homebrew style guidelines'
__fish_brew_complete_arg 'style' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'style' -l changed -d 'Check files that were changed from the `main` branch'
__fish_brew_complete_arg 'style' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'style' -l except-cops -d 'Specify a comma-separated cops list to skip checking for violations of the listed RuboCop cops'
__fish_brew_complete_arg 'style' -l fix -d 'Fix style violations automatically using RuboCop\'s auto-correct feature'
__fish_brew_complete_arg 'style' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'style' -l help -d 'Show this message'
__fish_brew_complete_arg 'style' -l only-cops -d 'Specify a comma-separated cops list to check for violations of only the listed RuboCop cops'
__fish_brew_complete_arg 'style' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'style' -l reset-cache -d 'Reset the RuboCop cache'
__fish_brew_complete_arg 'style' -l todo -d 'Add `rubocop:todo` comments for RuboCop violations that remain after auto-correction. Requires `--fix`'
__fish_brew_complete_arg 'style' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'style' -a '(__fish_brew_suggest_taps_installed)'
__fish_brew_complete_arg 'style; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'style; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'tab' 'Edit tab information for installed formulae or casks'
__fish_brew_complete_arg 'tab' -l cask -d 'Only mark casks'
__fish_brew_complete_arg 'tab' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'tab' -l formula -d 'Only mark formulae'
__fish_brew_complete_arg 'tab' -l help -d 'Show this message'
__fish_brew_complete_arg 'tab' -l installed-on-request -d 'Mark installed_formula or installed_cask as installed on request'
__fish_brew_complete_arg 'tab' -l no-installed-on-request -d 'Mark installed_formula or installed_cask as not installed on request'
__fish_brew_complete_arg 'tab' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'tab' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'tab; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_installed)'
__fish_brew_complete_arg 'tab; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_installed)'


__fish_brew_complete_cmd 'tap' 'Tap a formula repository'
__fish_brew_complete_arg 'tap' -l custom-remote -d 'Install or change a tap with a custom remote. Useful for mirrors'
__fish_brew_complete_arg 'tap' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'tap' -l force -d 'Force install core taps even under API mode'
__fish_brew_complete_arg 'tap' -l help -d 'Show this message'
__fish_brew_complete_arg 'tap' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'tap' -l repair -d 'Add missing symlinks to tap manpages and shell completions. Correct git remote refs for any taps where upstream HEAD branch has been renamed'
__fish_brew_complete_arg 'tap' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'tap' -a '(__fish_brew_suggest_taps_installed)'


__fish_brew_complete_cmd 'tap-info' 'Show detailed information about one or more taps'
__fish_brew_complete_arg 'tap-info' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'tap-info' -l help -d 'Show this message'
__fish_brew_complete_arg 'tap-info' -l installed -d 'Show information on each installed tap'
__fish_brew_complete_arg 'tap-info' -l json -d 'Print a JSON representation of tap. Currently the default and only accepted value for version is `v1`. See the docs for examples of using the JSON output: https://docs.brew.sh/Querying-Brew'
__fish_brew_complete_arg 'tap-info' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'tap-info' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'tap-info' -a '(__fish_brew_suggest_taps_installed)'


__fish_brew_complete_cmd 'tap-new' 'Generate the template files for a new tap'
__fish_brew_complete_arg 'tap-new' -l branch -d 'Initialise a Git repository and set up GitHub Actions workflows with the specified branch name (default: `main`)'
__fish_brew_complete_arg 'tap-new' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'tap-new' -l github-packages -d 'Upload bottles to GitHub Packages'
__fish_brew_complete_arg 'tap-new' -l help -d 'Show this message'
__fish_brew_complete_arg 'tap-new' -l no-git -d 'Don\'t initialise a Git repository for the tap'
__fish_brew_complete_arg 'tap-new' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'tap-new' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'tap-new' -a '(__fish_brew_suggest_taps_installed)'


__fish_brew_complete_cmd 'test' 'Run the test method provided by an installed formula'
__fish_brew_complete_arg 'test' -l HEAD -d 'Test the HEAD version of a formula'
__fish_brew_complete_arg 'test' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'test' -l force -d 'Test formulae even if they are unlinked'
__fish_brew_complete_arg 'test' -l help -d 'Show this message'
__fish_brew_complete_arg 'test' -l keep-tmp -d 'Retain the temporary files created for the test'
__fish_brew_complete_arg 'test' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'test' -l retry -d 'Retry if a testing fails'
__fish_brew_complete_arg 'test' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'test' -a '(__fish_brew_suggest_formulae_installed)'


__fish_brew_complete_cmd 'test-bot' 'Tests the full lifecycle of a Homebrew change to a tap (Git repository)'
__fish_brew_complete_arg 'test-bot' -l added-formulae -d 'Use these added formulae rather than running the formulae detection steps'
__fish_brew_complete_arg 'test-bot' -l build-dependents-from-source -d 'Build dependents from source rather than testing bottles'
__fish_brew_complete_arg 'test-bot' -l build-from-source -d 'Build from source rather than building bottles'
__fish_brew_complete_arg 'test-bot' -l cleanup -d 'Clean all state from the Homebrew directory. Use with care!'
__fish_brew_complete_arg 'test-bot' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'test-bot' -l deleted-formulae -d 'Use these deleted formulae rather than running the formulae detection steps'
__fish_brew_complete_arg 'test-bot' -l dry-run -d 'Print what would be done rather than doing it'
__fish_brew_complete_arg 'test-bot' -l fail-fast -d 'Immediately exit on a failing step'
__fish_brew_complete_arg 'test-bot' -l git-email -d 'Set the Git author/committer email to the given email'
__fish_brew_complete_arg 'test-bot' -l git-name -d 'Set the Git author/committer names to the given name'
__fish_brew_complete_arg 'test-bot' -l help -d 'Show this message'
__fish_brew_complete_arg 'test-bot' -l junit -d 'generate a JUnit XML test results file'
__fish_brew_complete_arg 'test-bot' -l keep-old -d 'Run `brew bottle --keep-old` to build new bottles for a single platform'
__fish_brew_complete_arg 'test-bot' -l local -d 'Ask Homebrew to write verbose logs under `./logs/` and set `$HOME` to `./home/`'
__fish_brew_complete_arg 'test-bot' -l only-bottles-fetch -d 'Only run the bottles fetch steps. This optional post-upload test checks that all the bottles were uploaded correctly. It is not run unless requested and only needs to be run on a single machine. The bottle commit to be tested must be on the tested branch'
__fish_brew_complete_arg 'test-bot' -l only-cleanup-after -d 'Only run the post-cleanup step. Needs `--cleanup`, except in GitHub Actions'
__fish_brew_complete_arg 'test-bot' -l only-cleanup-before -d 'Only run the pre-cleanup step. Needs `--cleanup`, except in GitHub Actions'
__fish_brew_complete_arg 'test-bot' -l only-formulae -d 'Only run the formulae steps'
__fish_brew_complete_arg 'test-bot' -l only-formulae-dependents -d 'Only run the formulae dependents steps'
__fish_brew_complete_arg 'test-bot' -l only-formulae-detect -d 'Only run the formulae detection steps'
__fish_brew_complete_arg 'test-bot' -l only-json-tab -d 'Run `brew bottle --only-json-tab` to build new bottles that do not contain a tab'
__fish_brew_complete_arg 'test-bot' -l only-setup -d 'Only run the local system setup check step'
__fish_brew_complete_arg 'test-bot' -l only-tap-syntax -d 'Only run the tap syntax check step'
__fish_brew_complete_arg 'test-bot' -l publish -d 'Publish the uploaded bottles'
__fish_brew_complete_arg 'test-bot' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'test-bot' -l root-url -d 'Use the specified URL as the root of the bottle\'s URL instead of Homebrew\'s default'
__fish_brew_complete_arg 'test-bot' -l skip-checksum-only-audit -d 'Don\'t audit checksum-only changes'
__fish_brew_complete_arg 'test-bot' -l skip-dependents -d 'Don\'t test any dependents'
__fish_brew_complete_arg 'test-bot' -l skip-livecheck -d 'Don\'t test livecheck'
__fish_brew_complete_arg 'test-bot' -l skip-new -d 'Don\'t pass `--new` to `brew audit` for new formulae'
__fish_brew_complete_arg 'test-bot' -l skip-new-strict -d 'Don\'t pass `--strict` to `brew audit` for new formulae'
__fish_brew_complete_arg 'test-bot' -l skip-online-checks -d 'Don\'t pass `--online` to `brew audit` and skip `brew livecheck`'
__fish_brew_complete_arg 'test-bot' -l skip-relocation -d 'Run `brew bottle --skip-relocation` to build new bottles that don\'t require relocation'
__fish_brew_complete_arg 'test-bot' -l skip-revision-audit -d 'Don\'t audit the revision'
__fish_brew_complete_arg 'test-bot' -l skip-setup -d 'Don\'t check if the local system is set up correctly'
__fish_brew_complete_arg 'test-bot' -l skip-stable-version-audit -d 'Don\'t audit the stable version'
__fish_brew_complete_arg 'test-bot' -l skipped-or-failed-formulae -d 'Use these skipped or failed formulae from formulae steps for a formulae dependents step'
__fish_brew_complete_arg 'test-bot' -l stable -d 'Only run the tap syntax checks needed on stable brew'
__fish_brew_complete_arg 'test-bot' -l tap -d 'Use the Git repository of the given tap. Defaults to the core tap for syntax checking'
__fish_brew_complete_arg 'test-bot' -l test-default-formula -d 'Use a default testing formula when not building a tap and no other formulae are specified'
__fish_brew_complete_arg 'test-bot' -l tested-formulae -d 'Use these tested formulae from formulae steps for a formulae dependents step'
__fish_brew_complete_arg 'test-bot' -l testing-formulae -d 'Use these testing formulae rather than running the formulae detection steps'
__fish_brew_complete_arg 'test-bot' -l verbose -d 'Print test step output in real time. Has the side effect of passing output as raw bytes instead of re-encoding in UTF-8'


__fish_brew_complete_cmd 'tests' 'Run Homebrew\'s unit and integration tests'
__fish_brew_complete_arg 'tests' -l changed -d 'Only runs tests on files that were changed from the `main` branch'
__fish_brew_complete_arg 'tests' -l coverage -d 'Generate code coverage reports'
__fish_brew_complete_arg 'tests' -l debug -d 'Enable debugging using `ruby/debug`, or surface the standard `odebug` output'
__fish_brew_complete_arg 'tests' -l fail-fast -d 'Exit early on the first failing test'
__fish_brew_complete_arg 'tests' -l generic -d 'Run only OS-agnostic tests'
__fish_brew_complete_arg 'tests' -l help -d 'Show this message'
__fish_brew_complete_arg 'tests' -l no-parallel -d 'Run tests serially'
__fish_brew_complete_arg 'tests' -l online -d 'Include tests that use the GitHub API and tests that use any of the taps for official external commands'
__fish_brew_complete_arg 'tests' -l only -d 'Run only `test_script_spec.rb`. Appending `:line_number` will start at a specific line'
__fish_brew_complete_arg 'tests' -l profile -d 'Output the n slowest tests. When run without `--no-parallel` this will output the slowest tests for each parallel test process'
__fish_brew_complete_arg 'tests' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'tests' -l ruby-prof -d 'Use `ruby-prof` to profile tests'
__fish_brew_complete_arg 'tests' -l seed -d 'Randomise tests with the specified value instead of a random seed'
__fish_brew_complete_arg 'tests' -l stackprof -d 'Use `stackprof` to profile tests'
__fish_brew_complete_arg 'tests' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'tests' -l vernier -d 'Use `vernier` to profile tests'


__fish_brew_complete_cmd 'trust' 'Trust non-official tap formulae, casks or commands so Homebrew may load them'
__fish_brew_complete_arg 'trust' -l cask -d 'Trust the named cask'
__fish_brew_complete_arg 'trust' -l command -d 'Trust the named external command'
__fish_brew_complete_arg 'trust' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'trust' -l formula -d 'Trust the named formula'
__fish_brew_complete_arg 'trust' -l help -d 'Show this message'
__fish_brew_complete_arg 'trust' -l json -d 'Print trusted entries as JSON. A version number is required. The only accepted value for version is `v1`'
__fish_brew_complete_arg 'trust' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'trust' -l tap -d 'Trust the named tap'
__fish_brew_complete_arg 'trust' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'typecheck' 'Check for typechecking errors using Sorbet'
__fish_brew_complete_arg 'typecheck' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'typecheck' -l dir -d 'Typecheck all files in a specific directory'
__fish_brew_complete_arg 'typecheck' -l file -d 'Typecheck a single file'
__fish_brew_complete_arg 'typecheck' -l fix -d 'Automatically fix type errors'
__fish_brew_complete_arg 'typecheck' -l help -d 'Show this message'
__fish_brew_complete_arg 'typecheck' -l ignore -d 'Ignores input files that contain the given string in their paths (relative to the input path passed to Sorbet)'
__fish_brew_complete_arg 'typecheck' -l lsp -d 'Start the Sorbet LSP server'
__fish_brew_complete_arg 'typecheck' -l quiet -d 'Silence all non-critical errors'
__fish_brew_complete_arg 'typecheck' -l suggest-typed -d 'Try upgrading `typed` sigils'
__fish_brew_complete_arg 'typecheck' -l update -d 'Update RBI files'
__fish_brew_complete_arg 'typecheck' -l update-all -d 'Update all RBI files rather than just updated gems'
__fish_brew_complete_arg 'typecheck' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'typecheck' -a '(__fish_brew_suggest_taps_installed)'


__fish_brew_complete_cmd 'unalias' 'Remove aliases'
__fish_brew_complete_arg 'unalias' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'unalias' -l help -d 'Show this message'
__fish_brew_complete_arg 'unalias' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'unalias' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'unbottled' 'Show the unbottled dependents of formulae'
__fish_brew_complete_arg 'unbottled' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'unbottled' -l dependents -d 'Skip getting analytics data and sort by number of dependents instead'
__fish_brew_complete_arg 'unbottled' -l help -d 'Show this message'
__fish_brew_complete_arg 'unbottled' -l lost -d 'Print the `homebrew/core` commits where bottles were lost in the last week'
__fish_brew_complete_arg 'unbottled' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'unbottled' -l tag -d 'Use the specified bottle tag (e.g. `big_sur`) instead of the current OS'
__fish_brew_complete_arg 'unbottled' -l total -d 'Print the number of unbottled and total formulae'
__fish_brew_complete_arg 'unbottled' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'unbottled' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'uninstall' 'Uninstall a formula or cask'
__fish_brew_complete_arg 'uninstall' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'uninstall' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'uninstall' -l force -d 'Delete all installed versions of formula. Uninstall even if cask is not installed, overwrite existing files and ignore errors when removing files'
__fish_brew_complete_arg 'uninstall' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'uninstall' -l help -d 'Show this message'
__fish_brew_complete_arg 'uninstall' -l ignore-dependencies -d 'Don\'t fail uninstall, even if formula is a dependency of any installed formulae'
__fish_brew_complete_arg 'uninstall' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'uninstall' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'uninstall' -l zap -d 'Remove all files associated with a cask. *May remove files which are shared between applications.*'
__fish_brew_complete_arg 'uninstall; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_installed)'
__fish_brew_complete_arg 'uninstall; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_installed)'


__fish_brew_complete_cmd 'unlink' 'Remove symlinks for formula from Homebrew\'s prefix'
__fish_brew_complete_arg 'unlink' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'unlink' -l dry-run -d 'List files which would be unlinked without actually unlinking or deleting any files'
__fish_brew_complete_arg 'unlink' -l help -d 'Show this message'
__fish_brew_complete_arg 'unlink' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'unlink' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'unlink' -a '(__fish_brew_suggest_formulae_installed)'


__fish_brew_complete_cmd 'unpack' 'Unpack the files for the formula or cask into subdirectories of the current working directory'
__fish_brew_complete_arg 'unpack' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'unpack' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'unpack' -l destdir -d 'Create subdirectories in the directory named by path instead'
__fish_brew_complete_arg 'unpack' -l force -d 'Overwrite the destination directory if it already exists'
__fish_brew_complete_arg 'unpack' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'unpack' -l git -d 'Initialise a Git repository in the unpacked source. This is useful for creating patches for the software'
__fish_brew_complete_arg 'unpack' -l help -d 'Show this message'
__fish_brew_complete_arg 'unpack' -l patch -d 'Patches for formula will be applied to the unpacked source'
__fish_brew_complete_arg 'unpack' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'unpack' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'unpack; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'
__fish_brew_complete_arg 'unpack; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_all)'


__fish_brew_complete_cmd 'unpin' 'Unpin the specified package, allowing it to be upgraded by `brew upgrade` formula or cask'
__fish_brew_complete_arg 'unpin' -l cask -d 'Treat all named arguments as casks'
__fish_brew_complete_arg 'unpin' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'unpin' -l formula -d 'Treat all named arguments as formulae'
__fish_brew_complete_arg 'unpin' -l help -d 'Show this message'
__fish_brew_complete_arg 'unpin' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'unpin' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'unpin; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_installed)'
__fish_brew_complete_arg 'unpin; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_installed)'


__fish_brew_complete_cmd 'untap' 'Remove a tapped formula repository'
__fish_brew_complete_arg 'untap' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'untap' -l force -d 'Uninstall all formulae and casks from this tap with `--force` before untapping'
__fish_brew_complete_arg 'untap' -l help -d 'Show this message'
__fish_brew_complete_arg 'untap' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'untap' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'untap' -a '(__fish_brew_suggest_taps_installed)'


__fish_brew_complete_cmd 'untrust' 'Stop trusting non-official tap formulae, casks or commands'
__fish_brew_complete_arg 'untrust' -l cask -d 'Untrust the named cask'
__fish_brew_complete_arg 'untrust' -l command -d 'Untrust the named external command'
__fish_brew_complete_arg 'untrust' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'untrust' -l formula -d 'Untrust the named formula'
__fish_brew_complete_arg 'untrust' -l help -d 'Show this message'
__fish_brew_complete_arg 'untrust' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'untrust' -l tap -d 'Untrust the named tap'
__fish_brew_complete_arg 'untrust' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'update' 'Fetch the newest version of Homebrew and all formulae from GitHub using `git`(1) and perform any necessary migrations'
__fish_brew_complete_arg 'update' -l auto-update -d 'Run on auto-updates (e.g. before `brew install`). Skips some slower steps'
__fish_brew_complete_arg 'update' -l debug -d 'Display a trace of all shell commands as they are executed'
__fish_brew_complete_arg 'update' -l force -d 'Always do a slower, full update check (even if unnecessary)'
__fish_brew_complete_arg 'update' -l help -d 'Show this message'
__fish_brew_complete_arg 'update' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'update' -l verbose -d 'Print the directories checked and `git` operations performed'


__fish_brew_complete_cmd 'update-if-needed' 'Runs `brew update --auto-update` only if needed'
__fish_brew_complete_arg 'update-if-needed' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'update-if-needed' -l help -d 'Show this message'
__fish_brew_complete_arg 'update-if-needed' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'update-if-needed' -l verbose -d 'Make some output more verbose'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'update-license-data' -d 'Update SPDX license data in the Homebrew repository'
__fish_brew_complete_arg 'update-license-data' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'update-license-data' -l help -d 'Show this message'
__fish_brew_complete_arg 'update-license-data' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'update-license-data' -l verbose -d 'Make some output more verbose'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'update-maintainers' -d 'Update the list of maintainers in the `Homebrew/brew` README'
__fish_brew_complete_arg 'update-maintainers' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'update-maintainers' -l help -d 'Show this message'
__fish_brew_complete_arg 'update-maintainers' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'update-maintainers' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'update-perl-resources' 'Update versions for CPAN resource blocks in formula'
__fish_brew_complete_arg 'update-perl-resources' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'update-perl-resources' -l help -d 'Show this message'
__fish_brew_complete_arg 'update-perl-resources' -l ignore-errors -d 'Continue processing even if some resources can\'t be resolved'
__fish_brew_complete_arg 'update-perl-resources' -l print-only -d 'Print the updated resource blocks instead of changing formula'
__fish_brew_complete_arg 'update-perl-resources' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'update-perl-resources' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'update-perl-resources' -a '(__fish_brew_suggest_formulae_all)'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'update-portable-ruby' -d 'Update the vendored `portable-ruby` from the current `portable-ruby` formula: write the version files and bottle checksums, run `brew vendor-install ruby`, then sync `utils/ruby.sh`, vendored gems and RBI files to the bundler shipped by the new ruby'
__fish_brew_complete_arg 'update-portable-ruby' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'update-portable-ruby' -l help -d 'Show this message'
__fish_brew_complete_arg 'update-portable-ruby' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'update-portable-ruby' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'update-python-resources' 'Update versions for PyPI resource blocks in formula'
__fish_brew_complete_arg 'update-python-resources' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'update-python-resources' -l exclude-packages -d 'Exclude these packages when finding resources'
__fish_brew_complete_arg 'update-python-resources' -l extra-packages -d 'Include these additional packages when finding resources'
__fish_brew_complete_arg 'update-python-resources' -l help -d 'Show this message'
__fish_brew_complete_arg 'update-python-resources' -l ignore-errors -d 'Record all discovered resources, even those that can\'t be resolved successfully. This option is ignored for homebrew/core formulae'
__fish_brew_complete_arg 'update-python-resources' -l ignore-main-package-cooldown -d 'Bypass the release cooldown for formula\'s own package when resolving resources. Its dependencies still respect the cooldown. This option is ignored for official taps'
__fish_brew_complete_arg 'update-python-resources' -l ignore-non-pypi-packages -d 'Don\'t fail if formula is not a PyPI package'
__fish_brew_complete_arg 'update-python-resources' -l install-dependencies -d 'Install missing dependencies required to update resources'
__fish_brew_complete_arg 'update-python-resources' -l package-name -d 'Use the specified package-name when finding resources for formula. If no package name is specified, it will be inferred from the formula\'s stable URL'
__fish_brew_complete_arg 'update-python-resources' -l print-only -d 'Print the updated resource blocks instead of changing formula'
__fish_brew_complete_arg 'update-python-resources' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'update-python-resources' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'update-python-resources' -l version -d 'Use the specified version when finding resources for formula. If no version is specified, the current version for formula will be used'
__fish_brew_complete_arg 'update-python-resources' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_arg 'update-report' -l auto-update -d 'Run in \'auto-update\' mode (faster, less output)'
__fish_brew_complete_arg 'update-report' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'update-report' -l force -d 'Treat installed and updated formulae as if they are from the same taps and migrate them anyway'
__fish_brew_complete_arg 'update-report' -l help -d 'Show this message'
__fish_brew_complete_arg 'update-report' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'update-report' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'update-reset' 'Fetch and reset Homebrew and all tap repositories (or any specified repository) using `git`(1) to their latest `origin/HEAD`'
__fish_brew_complete_arg 'update-reset' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'update-reset' -l help -d 'Show this message'
__fish_brew_complete_arg 'update-reset' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'update-reset' -l verbose -d 'Make some output more verbose'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'update-sponsors' -d 'Update the list of GitHub Sponsors in the `Homebrew/brew` README'
__fish_brew_complete_arg 'update-sponsors' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'update-sponsors' -l help -d 'Show this message'
__fish_brew_complete_arg 'update-sponsors' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'update-sponsors' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'update-test' 'Run a test of `brew update` with a new repository clone'
__fish_brew_complete_arg 'update-test' -l before -d 'Use the commit at the specified date as the start commit'
__fish_brew_complete_arg 'update-test' -l commit -d 'Use the specified commit as the start commit'
__fish_brew_complete_arg 'update-test' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'update-test' -l help -d 'Show this message'
__fish_brew_complete_arg 'update-test' -l keep-tmp -d 'Retain the temporary directory containing the new repository clone'
__fish_brew_complete_arg 'update-test' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'update-test' -l to-tag -d 'Set `$HOMEBREW_UPDATE_TO_TAG` to test updating between tags'
__fish_brew_complete_arg 'update-test' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'upgrade' 'Upgrade outdated, unpinned packages using the same options they were originally installed with, plus any appended brew formula options'
__fish_brew_complete_arg 'upgrade' -l appdir -d 'Target location for Applications (default: `/Applications`)'
__fish_brew_complete_arg 'upgrade' -l appimagedir -d 'Target location for AppImages (default: `~/Applications`)'
__fish_brew_complete_arg 'upgrade' -l audio-unit-plugindir -d 'Target location for Audio Unit Plugins (default: `~/Library/Audio/Plug-Ins/Components`)'
__fish_brew_complete_arg 'upgrade' -l binaries -d 'Disable/enable linking of helper executables (default: enabled)'
__fish_brew_complete_arg 'upgrade' -l build-from-source -d 'Compile formula from source even if a bottle is available'
__fish_brew_complete_arg 'upgrade' -l cask -d 'Treat all named arguments as casks. If no named arguments are specified, upgrade only outdated casks'
__fish_brew_complete_arg 'upgrade' -l colorpickerdir -d 'Target location for Color Pickers (default: `~/Library/ColorPickers`)'
__fish_brew_complete_arg 'upgrade' -l debug -d 'If brewing fails, open an interactive debugging session with access to IRB or a shell inside the temporary build directory'
__fish_brew_complete_arg 'upgrade' -l debug-symbols -d 'Generate debug symbols on build. Source will be retained in a cache directory'
__fish_brew_complete_arg 'upgrade' -l dictionarydir -d 'Target location for Dictionaries (default: `~/Library/Dictionaries`)'
__fish_brew_complete_arg 'upgrade' -l display-times -d 'Print install times for each package at the end of the run. Enabled by default if `$HOMEBREW_DISPLAY_INSTALL_TIMES` is set'
__fish_brew_complete_arg 'upgrade' -l dry-run -d 'Show what would be upgraded, but do not actually upgrade anything'
__fish_brew_complete_arg 'upgrade' -l fetch-HEAD -d 'Fetch the upstream repository to detect if the HEAD installation of the formula is outdated. Otherwise, the repository\'s HEAD will only be checked for updates when a new stable or development version has been released'
__fish_brew_complete_arg 'upgrade' -l fontdir -d 'Target location for Fonts (default: `~/Library/Fonts`)'
__fish_brew_complete_arg 'upgrade' -l force -d 'Install formulae without checking for previously installed keg-only or non-migrated versions. When installing casks, overwrite existing files (binaries and symlinks are excluded, unless originally from the same cask)'
__fish_brew_complete_arg 'upgrade' -l force-bottle -d 'Install from a bottle if it exists for the current or newest version of macOS, even if it would not normally be used for installation'
__fish_brew_complete_arg 'upgrade' -l formula -d 'Treat all named arguments as formulae. If no named arguments are specified, upgrade only outdated formulae'
__fish_brew_complete_arg 'upgrade' -l greedy -d 'Also include casks with `version :latest` and `auto_updates true` casks that would otherwise be skipped. Enabled by default if `$HOMEBREW_UPGRADE_GREEDY` is set'
__fish_brew_complete_arg 'upgrade' -l greedy-auto-updates -d 'Also include `auto_updates true` casks that would otherwise be skipped'
__fish_brew_complete_arg 'upgrade' -l greedy-latest -d 'Also include casks with `version :latest`'
__fish_brew_complete_arg 'upgrade' -l help -d 'Show this message'
__fish_brew_complete_arg 'upgrade' -l input-methoddir -d 'Target location for Input Methods (default: `~/Library/Input Methods`)'
__fish_brew_complete_arg 'upgrade' -l interactive -d 'Download and patch formula, then open a shell. This allows the user to run `./configure --help` and otherwise determine how to turn the software package into a Homebrew package'
__fish_brew_complete_arg 'upgrade' -l internet-plugindir -d 'Target location for Internet Plugins (default: `~/Library/Internet Plug-Ins`)'
__fish_brew_complete_arg 'upgrade' -l keep-tmp -d 'Retain the temporary files created during installation'
__fish_brew_complete_arg 'upgrade' -l keyboard-layoutdir -d 'Target location for Keyboard Layouts (default: `/Library/Keyboard Layouts`)'
__fish_brew_complete_arg 'upgrade' -l language -d 'Comma-separated list of language codes to prefer for cask installation. The first matching language is used, otherwise it reverts to the cask\'s default language. The default value is the language of your system'
__fish_brew_complete_arg 'upgrade' -l mdimporterdir -d 'Target location for Spotlight Plugins (default: `~/Library/Spotlight`)'
__fish_brew_complete_arg 'upgrade' -l minimum-version -d 'Only upgrade a named formula or cask with an installed version below the given minimum version'
__fish_brew_complete_arg 'upgrade' -l no-ask -d 'Do not ask for confirmation before downloading and upgrading. Ask mode is the default. Enabled by default if `$HOMEBREW_NO_ASK` is set'
__fish_brew_complete_arg 'upgrade' -l no-binaries -d 'Disable/enable linking of helper executables (default: enabled)'
__fish_brew_complete_arg 'upgrade' -l no-quit -d 'Prevent running cask applications from being quit during upgrade. Enabled by default if `$HOMEBREW_NO_UPGRADE_QUIT_CASKS` is set'
__fish_brew_complete_arg 'upgrade' -l overwrite -d 'Delete files that already exist in the prefix while linking'
__fish_brew_complete_arg 'upgrade' -l prefpanedir -d 'Target location for Preference Panes (default: `~/Library/PreferencePanes`)'
__fish_brew_complete_arg 'upgrade' -l qlplugindir -d 'Target location for Quick Look Plugins (default: `~/Library/QuickLook`)'
__fish_brew_complete_arg 'upgrade' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'upgrade' -l require-sha -d 'Require all casks to have a checksum'
__fish_brew_complete_arg 'upgrade' -l screen-saverdir -d 'Target location for Screen Savers (default: `~/Library/Screen Savers`)'
__fish_brew_complete_arg 'upgrade' -l servicedir -d 'Target location for Services (default: `~/Library/Services`)'
__fish_brew_complete_arg 'upgrade' -l skip-cask-deps -d 'Skip installing cask dependencies'
__fish_brew_complete_arg 'upgrade' -l verbose -d 'Print the verification and post-install steps'
__fish_brew_complete_arg 'upgrade' -l vst-plugindir -d 'Target location for VST Plugins (default: `~/Library/Audio/Plug-Ins/VST`)'
__fish_brew_complete_arg 'upgrade' -l vst3-plugindir -d 'Target location for VST3 Plugins (default: `~/Library/Audio/Plug-Ins/VST3`)'
__fish_brew_complete_arg 'upgrade; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_installed)'
__fish_brew_complete_arg 'upgrade; and not __fish_seen_argument -l formula -l formulae' -a '(__fish_brew_suggest_casks_installed)'


__fish_brew_complete_cmd 'uses' 'Show formulae and casks that specify formula as a dependency; that is, show dependents of formula'
__fish_brew_complete_arg 'uses' -l cask -d 'Include only casks'
__fish_brew_complete_arg 'uses' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'uses' -l formula -d 'Include only formulae'
__fish_brew_complete_arg 'uses' -l help -d 'Show this message'
__fish_brew_complete_arg 'uses' -l include-build -d 'Include formulae that specify formula as a `:build` dependency'
__fish_brew_complete_arg 'uses' -l include-implicit -d 'Include formulae that have formula as an implicit dependency for downloading and unpacking source files'
__fish_brew_complete_arg 'uses' -l include-optional -d 'Include formulae that specify formula as an `:optional` dependency'
__fish_brew_complete_arg 'uses' -l include-test -d 'Include formulae that specify formula as a `:test` dependency'
__fish_brew_complete_arg 'uses' -l installed -d 'Only list formulae and casks that are currently installed'
__fish_brew_complete_arg 'uses' -l missing -d 'Only list formulae and casks that are not currently installed'
__fish_brew_complete_arg 'uses' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'uses' -l recursive -d 'Resolve more than one level of dependencies'
__fish_brew_complete_arg 'uses' -l skip-recommended -d 'Skip all formulae that specify formula as a `:recommended` dependency'
__fish_brew_complete_arg 'uses' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'uses; and not __fish_seen_argument -l cask -l casks' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'vendor-gems' 'Install and commit Homebrew\'s vendored gems'
__fish_brew_complete_arg 'vendor-gems' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'vendor-gems' -l help -d 'Show this message'
__fish_brew_complete_arg 'vendor-gems' -l no-commit -d 'Do not generate a new commit upon completion'
__fish_brew_complete_arg 'vendor-gems' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'vendor-gems' -l update -d 'Update the specified list of vendored gems to the latest version'
__fish_brew_complete_arg 'vendor-gems' -l verbose -d 'Make some output more verbose'


complete -f -c brew -n 'not __fish_brew_command; and set -q HOMEBREW_DEVELOPER' -a 'vendor-install' -d 'Install Homebrew\'s portable Ruby'
__fish_brew_complete_arg 'vendor-install' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'vendor-install' -l help -d 'Show this message'
__fish_brew_complete_arg 'vendor-install' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'vendor-install' -l verbose -d 'Make some output more verbose'


__fish_brew_complete_cmd 'verify' 'Verify the build provenance of bottles using GitHub\'s attestation tools'
__fish_brew_complete_arg 'verify' -l arch -d 'Download for the given CPU architecture. (Pass `all` to download for all architectures.)'
__fish_brew_complete_arg 'verify' -l bottle-tag -d 'Download a bottle for given tag'
__fish_brew_complete_arg 'verify' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'verify' -l deps -d 'Also download dependencies for any listed formula'
__fish_brew_complete_arg 'verify' -l force -d 'Remove a previously cached version and re-fetch'
__fish_brew_complete_arg 'verify' -l help -d 'Show this message'
__fish_brew_complete_arg 'verify' -l json -d 'Return JSON for the attestation data for each bottle'
__fish_brew_complete_arg 'verify' -l os -d 'Download for the given operating system. (Pass `all` to download for all operating systems.)'
__fish_brew_complete_arg 'verify' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'verify' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'verify' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'version-install' 'Extract a specific version of formula into a personal tap and install it'
__fish_brew_complete_arg 'version-install' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'version-install' -l help -d 'Show this message'
__fish_brew_complete_arg 'version-install' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'version-install' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'version-install' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'vulns' 'Check formula for known security vulnerabilities using the OSV.dev database'
__fish_brew_complete_arg 'vulns' -l brewfile -d 'Check formulae listed in a Brewfile. Defaults to `./Brewfile`; use `--brewfile=`path to specify another'
__fish_brew_complete_arg 'vulns' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'vulns' -l deps -d 'Also check the dependencies of named formulae'
__fish_brew_complete_arg 'vulns' -l fix-available -d 'Only report vulnerabilities that have a fix available. Note that this may exclude vulnerabilities with fixes available if we cannot determine that the fix is included in the version under consideration'
__fish_brew_complete_arg 'vulns' -l help -d 'Show this message'
__fish_brew_complete_arg 'vulns' -l json -d 'Output JSON'
__fish_brew_complete_arg 'vulns' -l max-summary -d 'Truncate summaries to n characters (default 60, 0 for no limit)'
__fish_brew_complete_arg 'vulns' -l no-fix-available -d 'Only report vulnerabilities that do not have a fix available. Note that this may include vulnerabilities with fixes available if we cannot determine that the fix is included in the version under consideration'
__fish_brew_complete_arg 'vulns' -l no-ignore-patches -d 'Report vulnerabilities even when a formula patch resolves them'
__fish_brew_complete_arg 'vulns' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'vulns' -l severity -d 'Only report findings at or above: `low`, `medium`, `high`, `critical`'
__fish_brew_complete_arg 'vulns' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'vulns' -a '(__fish_brew_suggest_formulae_all)'


__fish_brew_complete_cmd 'which-formula' 'Show which formula(e) provides the given command'
__fish_brew_complete_arg 'which-formula' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'which-formula' -l explain -d 'Output explanation of how to get command by installing one of the providing formulae'
__fish_brew_complete_arg 'which-formula' -l help -d 'Show this message'
__fish_brew_complete_arg 'which-formula' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'which-formula' -l verbose -d 'Make some output more verbose'
__fish_brew_complete_arg 'which-formula' -a '(__fish_brew_suggest_commands)'


__fish_brew_complete_cmd 'which-update' 'Database update for `brew which-formula`'
__fish_brew_complete_arg 'which-update' -l bottle-json-dir -d 'Use generated bottle JSON files in the given directory to update formula entries'
__fish_brew_complete_arg 'which-update' -l debug -d 'Display any debugging information'
__fish_brew_complete_arg 'which-update' -l help -d 'Show this message'
__fish_brew_complete_arg 'which-update' -l pull-request -d 'Update entries for formula changes in the given pull request number'
__fish_brew_complete_arg 'which-update' -l quiet -d 'Make some output more quiet'
__fish_brew_complete_arg 'which-update' -l removed-formulae-file -d 'Remove database entries for formulae listed in the given file'
__fish_brew_complete_arg 'which-update' -l repository -d 'GitHub repository for `--pull-request` (default: `$GITHUB_REPOSITORY`)'
__fish_brew_complete_arg 'which-update' -l summary-file -d 'Output a summary of the changes to a file'
__fish_brew_complete_arg 'which-update' -l verbose -d 'Make some output more verbose'



################################
## OFFICIAL EXTERNAL COMMANDS ##
################################
# TODO: These commands are installed/tapped separately, so they should be completed only when present

##############
### BUNDLE ###

__fish_brew_complete_cmd 'bundle' "Install or upgrade all dependencies in a Brewfile"
__fish_brew_complete_arg 'bundle; and [ (count (__fish_brew_args)) = 1 ]' -s v -l verbose -d "Print more details"

# --file/--global option is available for bundle command and all its subcommands except exec
__fish_brew_complete_arg 'bundle;
        and not __fish_brew_subcommand bundle exec;
        and not __fish_brew_opt --file --global
    ' -l file -r -d "Specify Brewfile"
__fish_brew_complete_arg 'bundle;
        and not __fish_brew_subcommand bundle exec;
        and not __fish_brew_opt --file --global
    ' -l global  -d "Use \$HOME/.Brewfile"

__fish_brew_complete_sub_cmd 'bundle' 'install' "Install and upgrade (by default) all dependencies from the Brewfile."
__fish_brew_complete_sub_cmd 'bundle' 'dump'    "Write all installed casks/formulae/taps into a Brewfile"
__fish_brew_complete_sub_cmd 'bundle' 'cleanup' "Uninstall all dependencies not listed in a Brewfile"
__fish_brew_complete_sub_cmd 'bundle' 'check'   "Check if all dependencies are installed in a Brewfile"
__fish_brew_complete_sub_cmd 'bundle' 'exec'    "Run an external command in an isolated build environment"
__fish_brew_complete_sub_cmd 'bundle' 'list'    "List all dependencies present in the Brewfile."

# --force is available only for the dump/cleanup subcommands
__fish_brew_complete_sub_arg 'bundle' 'dump cleanup' -l force -d "Uninstall dependencies or overwrite an existing Brewfile"

# --no-upgrade is available for bundle command and its check subcommand
__fish_brew_complete_arg 'bundle; and [ (count (__fish_brew_args)) = 1 ];
        or __fish_brew_subcommand bundle check
    ' -l no-upgrade -d "Don't run brew upgrade for outdated dependencies"


################
### SERVICES ###

__fish_brew_complete_cmd 'services' "Integrates Homebrew formulae with macOS's launchctl manager"
__fish_brew_complete_arg 'services; and [ (count (__fish_brew_args)) = 1 ]' -s v -l verbose -d "Print more details"

__fish_brew_complete_sub_cmd 'services' 'list'    "List all running services for the current user"
__fish_brew_complete_sub_cmd 'services' 'run'     "Run service without starting at login/boot"
__fish_brew_complete_sub_cmd 'services' 'start'   "Start service immediately and register it to launch at login/boot"
__fish_brew_complete_sub_cmd 'services' 'stop'    "Stop service immediately and unregister it from launching at login/boot"
__fish_brew_complete_sub_cmd 'services' 'restart' "Stop and start service immediately and register it to launch at login/boot"
__fish_brew_complete_sub_cmd 'services' 'cleanup' "Remove all unused services"

__fish_brew_complete_sub_arg 'services' 'run start stop restart' -l all -d "Run all available services"
__fish_brew_complete_sub_arg 'services' 'run start stop restart' -a '(__fish_brew_suggest_services)'
