fish-shell/share/completions/portmaster.fish
Fabian Homborg 04d7d89020 __fish_print_packages: Extract the rest
Of note: The rpm/yum thing seems to be coupled, so I put it into one
function that tries the yum helper and uses the rpm path otherwise.
Zypper is already its own thing, so this should only be used for yum
and probably dnf (does that still have the helper?)

Zypper can be dropped, as that already used a separate function in the file.

Apk can just be inlined - it's literally one line for installed and another for all packages.
2020-12-22 17:10:02 +01:00

54 lines
4.1 KiB
Fish

#completion for portmaster
# These completions are generated from the man page
complete -c portmaster -l force-config -d 'run \'make config\' for all ports (overrides -G).'
complete -c portmaster -s C -d 'prevents \'make clean\' from being run before building.'
complete -c portmaster -s G -d 'prevents \'make config\'.'
complete -c portmaster -s H -d 'hide details of the port build and install in a log file.'
complete -c portmaster -s K -d 'prevents \'make clean\' from being run after building.'
complete -c portmaster -s B -d 'prevents creation of the backup package for the installed port.'
complete -c portmaster -s b -d 'create and keep a backup package of an installed port.'
complete -c portmaster -s g -d 'create a package of the new port.'
complete -c portmaster -s n -d 'run through all steps, but do not make or install any ports.'
complete -c portmaster -s t -d 'recurse dependencies thoroughly, using all-depends-list.'
complete -c portmaster -s v -d 'verbose output.'
complete -c portmaster -s w -d 'save old shared libraries before deinstall [-R][See Man Page]'
complete -c portmaster -s i -d 'interactive update mode -- ask whether to rebuild ports.'
complete -c portmaster -s D -d 'no cleaning of distfiles.'
complete -c portmaster -s d -d 'always clean distfiles.'
complete -c portmaster -s m -d 'any arguments to supply to make 1.'
complete -c portmaster -s x -d 'avoid building or updating ports that match this pattern.'
complete -c portmaster -l no-confirm -d 'do not ask the user to confirm the list of port… [See Man Page]'
complete -c portmaster -l no-term-title -d 'do not update the xterm title bar.'
complete -c portmaster -l no-index-fetch -d 'skip fetching the INDEX file.'
complete -c portmaster -l index -d 'use INDEX-[7-9] exclusively to check if a port is up to date.'
complete -c portmaster -l index-first -d 'use the INDEX for status, but double-check with the port.'
complete -c portmaster -l index-only -d 'do not try to use /usr/ports.'
complete -c portmaster -l delete-build-only -d 'delete ports that are build-only dependencies a… [See Man Page]'
complete -c portmaster -l update-if-newer -d '(only for multiple ports listed on the command[See Man Page]'
complete -c portmaster -s P -l packages -d 'use packages, but build port if not available.'
complete -c portmaster -o PP -l packages-only -d 'fail if no package is available.'
complete -c portmaster -l packages-build -d 'use packages for all build dependencies.'
complete -c portmaster -l packages-if-newer -d 'use package if newer than installed even if the… [See Man Page]'
complete -c portmaster -l always-fetch -d 'fetch package even if it already exists locally.'
complete -c portmaster -l local-packagedir -d 'where local packages can be found, will fall ba… [See Man Page]'
complete -c portmaster -l packages-local -d 'use packages from -local-packagedir only.'
complete -c portmaster -l delete-packages -d 'after installing from a package, delete it El P… [See Man Page]'
complete -c portmaster -s a -d 'check all ports, update as necessary.'
complete -c portmaster -l show-work -d 'show what dependent ports are, and are not inst… [See Man Page]'
complete -c portmaster -s o -d 'replace the installed port with a port from a d… [See Man Page]'
complete -c portmaster -s R -d 'used with the r or f options to skip ports upda… [See Man Page]'
complete -c portmaster -s l -d 'list all installed ports by category.'
complete -c portmaster -s L -d 'list all installed ports by category, and search for updates.'
complete -c portmaster -l list-origins -d 'list directories from /usr/ports for root and leaf ports.'
complete -c portmaster -s y -d 'answer yes to all user prompts for the features… [See Man Page]'
complete -c portmaster -s h -l help -d 'display help message.'
complete -c portmaster -l version -d 'display the version number El ENVIRONMENT The d… [See Man Page]'
# Grab items from the ports directory, max depth 2
complete -c portmaster -f -d 'Ports Directory' -a "
(
string match -r '(?<=/usr/ports/)[^/]*(?:/[^/]*)?' (__fish_complete_directories /usr/ports/(commandline -ct))
)"
complete -c portmaster -f -d 'Installed package' -a "(__fish_print_port_packages)"