From 6f722a59cc2f0c00deaf022f0835455207de3ca5 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Fri, 9 Aug 2024 21:25:47 +0200 Subject: bash: Add auto-cpufreq completions --- .bashrc | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to '.bashrc') diff --git a/.bashrc b/.bashrc index 8ca461a..6b3db5a 100644 --- a/.bashrc +++ b/.bashrc @@ -102,4 +102,41 @@ alias v="$VISUAL" PS1='\[\e[96;1m\]\u \[\e[39m\]\W \[\e[96m\]〉\[\e[0m\]' +# Autocompletions for auto-cpufreq. Inlined from the generated output +# for performance reasons. +_auto_cpufreq_completion() { + local IFS=$'\n' + local response + + response=$( + env \ + COMP_WORDS="${COMP_WORDS[*]}" \ + COMP_CWORD=$COMP_CWORD \ + _AUTO_CPUFREQ_COMPLETE=bash_complete \ + $1 + ) + + for completion in $response; do + IFS=',' read type value <<<"$completion" + + case $type in + dir) + COMPREPLY=() + compopt -o dirnames + ;; + file) + COMPREPLY=() + compopt -o default + ;; + plain) + COMPREPLY+=($value) + ;; + esac + done + + return 0 +} + +complete -o nosort -F _auto_cpufreq_completion auto-cpufreq + # sed '1s/^/‘/; $s/$/’/' "$XDG_CACHE_HOME/qotd" | fold -sw 80 -- cgit v1.2.3