From 0bc58b66a4850cdb8458a86c3d9a2fc81de82aa3 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 28 Apr 2024 11:14:42 +0200 Subject: Adding upstream version 1:2.11. Signed-off-by: Daniel Baumann --- completions/xrandr | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 completions/xrandr (limited to 'completions/xrandr') diff --git a/completions/xrandr b/completions/xrandr new file mode 100644 index 0000000..16704e3 --- /dev/null +++ b/completions/xrandr @@ -0,0 +1,63 @@ +# bash completion for xrandr -*- shell-script -*- + +_xrandr() +{ + local cur prev words cword + _init_completion || return + + case "$prev" in + -display | -d | -help | -s | --size | -r | --rate | --refresh | --screen | --fb | --fbmm | \ + --dpi | --pos | --set | --scale | --transform | --crtc | --panning | --gamma | \ + --newmode | --rmmode | --addmode | --delmode) + return + ;; + --output | --left-of | --right-of | --above | --below | --same-as) + local outputs=$("$1" | awk '/connected/ {print $1}') + COMPREPLY=($(compgen -W "$outputs" -- "$cur")) + return + ;; + --mode) + local i output + for ((i = 1; i < cword; i++)); do + if [[ ${words[i]} == --output ]]; then + output=${words[i + 1]} + break + fi + done + if [[ -v output ]]; then + local modes=$("$1" | command sed -e "1,/^$output / d" \ + -e "/connected/,$ d" \ + -e "s/\([^[:space:]]\)[[:space:]].*/\1/") + COMPREPLY=($(compgen -W "$modes" -- "$cur")) + fi + return + ;; + -o | --orientation) + COMPREPLY=($(compgen -W 'normal inverted left right 0 1 2 3' -- \ + "$cur")) + return + ;; + --reflect) + COMPREPLY=($(compgen -W 'normal x y xy' -- "$cur")) + return + ;; + --rotate) + COMPREPLY=($(compgen -W 'normal inverted left right' -- "$cur")) + return + ;; + --setprovideroutputsource | --setprovideroffloadsink) + local providers=$("$1" --listproviders 2>/dev/null | + command sed -ne 's/.* name:\([^ ]*\).*/\1/p') + COMPREPLY=($(compgen -W "$providers" -- "$cur")) + # TODO 2nd arg needed, is that a provider as well? + return + ;; + esac + + COMPREPLY=($(compgen -W '$("$1" -help 2>&1 | + command sed -e "s/ or / /g" -e "s/<[^>]*>]//g" | _parse_help -)' \ + -- "$cur")) +} && + complete -F _xrandr xrandr + +# ex: filetype=sh -- cgit v1.2.3