#!/bin/bash iwinfo() { local interface=$1 iwconfig "$interface" | sed -r 's/ {2,}/\n/g' | sed -e '/^\s*$/d' -e 's/:\s*/=/' \ -e '1s/^/Interface=/' \ -e '2s/^/MAC Protocol=/' } update() { local id id=$1 setup_trap "$id" while true; do { printf 'label ' iwinfo wlp2s0|grep -E '^(ESSID|Link Quality)='|sed 'N;s/\n/ | /' } | write "$id" sleep 1 done } right-click() { local list cur item list=() IFS='' while read -r line; do list+=("$line") done < <({ netctl-auto list; printf '> %s\n' 'New Network' 'Disable All' 'Enable All';} | sed 's,$,$,' | column -s '$' -t) cur='' for item in "${list[@]}"; do if [[ "$item" = '* '* ]]; then cur="$item" fi done IFS=$' \t\n' item=$(wmii9menu -i "$cur" "${list[@]}") case "$item" in '') # Nothing selected ;; '* '*) # Already selected; do nothing ;; '> New Network'*) urxvt +sb -title wifi-menu -e sudo wifi-menu ;; '> Disable All'*) sudo netctl-auto disable-all ;; '> Enable All'*) sudo netctl-auto enable-all ;; *) # NB: do NOT quote $item; we need to strip whitespace sudo netctl-auto switch-to $item ;; esac } . "$(dirname "$0")/rbar.sh"