complete-c cpupower -s h -lhelp-d"Show supported commands and general usage"
complete-c cpupower -s c -l cpu -x-a all -d"Only show or set values for specific cores"# im not gonna write completion for the cpu bit mask stuff thingy
# complete subcommands
complete-c cpupower -n"not __fish_seen_subcommand_from $subcommands help"-ahelp-d"Show manpage for subcommands"
complete-c cpupower -n"not __fish_seen_subcommand_from $subcommands help"-a idle-set -d"Set cpu idle state specific kernel options"
complete-c cpupower -n"not __fish_seen_subcommand_from $subcommands help"-a set -d"Set processor power related kernel or hardware config"
complete-c cpupower -n"not __fish_seen_subcommand_from $subcommands help"-a info -d"Show processor power related kernel or hardware config"
complete-c cpupower -n"not __fish_seen_subcommand_from $subcommands help"-a monitor -d"Report processor frequency and idle statistics"
# complete other subcommands after 'help', but only once
complete-c cpupower -n"__fish_seen_subcommand_from help && not __fish_seen_subcommand_from $subcommands"-x-a"frequency-info frequency-set idle-info idle-set set info monitor"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s e -l debug -d"Prints out debug information"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s f -l freq -d"Get frequency the CPU currently runs at, according to the cpufreq core"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s w -l hwfreq -d"Get frequency the CPU currently runs at, by reading it from hardware"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s l -l hwlimits -d"Determine the minimum and maximum CPU frequency allowed"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s d -l driver -d"Determines the used cpufreq kernel driver"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s p -l policy -d"Gets the currently used cpufreq policy"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s g -l governors -d"Determines available cpufreq governors"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s s -l stats -d"Shows cpufreq statistics if available"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s y -l latency -d"Determines the maximum latency on CPU frequency changes"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s o -l proc -d"Prints out information like the old /proc/cpufreq"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s m -l human -d"human-readable output for the -f, -w, -s and -y parameters"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s n -l no-rounding -d"Output frequencies and latencies without rounding off values"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-l related-cpus -a"Determines which CPUs run at the same hardware frequency"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-info"-s a -l affected-cpus -a"Determines which CPUs need to have their frequency coordinated by software"
complete-c cpupower -n"__fish_seen_subcommand_from frequency-set"-s f -l freq -x-d"specific frequency to be set. Requires userspace governor to be available and loaded"
complete-c cpupower -n"__fish_seen_subcommand_from idle-set"-s d -l disable -x-a"$idlestates"-d"Disable a specific processor sleep state"
complete-c cpupower -n"__fish_seen_subcommand_from idle-set"-s e -l enable -x-a"$idlestates"-d"Enable a specific processor sleep state"
complete-c cpupower -n"__fish_seen_subcommand_from idle-set"-s D -l disable-by-latency -x-d"Disable all idle states with a equal or higher latency than <LATENCY>"
complete-c cpupower -n"__fish_seen_subcommand_from idle-set"-s E -l enable-all -d"Enable all idle states if not enabled already"