From fdc9df6b915b7dfcec1dc25412070d2ef51944dc Mon Sep 17 00:00:00 2001 From: Colin Date: Tue, 21 Nov 2023 08:25:01 +0000 Subject: [PATCH] sway-autoscaler: cleanup --- .../programs/sway-autoscaler/default.nix | 2 +- .../programs/sway-autoscaler/sway-autoscaler | 19 +++++++++++++------ 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/hosts/common/programs/sway-autoscaler/default.nix b/hosts/common/programs/sway-autoscaler/default.nix index a8cbd6c7..77091bea 100644 --- a/hosts/common/programs/sway-autoscaler/default.nix +++ b/hosts/common/programs/sway-autoscaler/default.nix @@ -25,7 +25,7 @@ in package = pkgs.static-nix-shell.mkBash { pname = "sway-autoscaler"; - pkgs = [ "jq" "sway" ]; + pkgs = [ "jq" "sway" "util-linux" ]; src = ./.; }; diff --git a/hosts/common/programs/sway-autoscaler/sway-autoscaler b/hosts/common/programs/sway-autoscaler/sway-autoscaler index e4b48d12..a34375a4 100755 --- a/hosts/common/programs/sway-autoscaler/sway-autoscaler +++ b/hosts/common/programs/sway-autoscaler/sway-autoscaler @@ -1,5 +1,5 @@ #!/usr/bin/env nix-shell -#!nix-shell -i bash -p jq -p sway +#!nix-shell -i bash -p jq -p sway -p util-linux help() { echo "queries the focused window and apply an appropriate display-wide scale." @@ -7,15 +7,15 @@ help() { echo "" echo "args:" echo " -v | --verbose" - echo " --loop-sec N re-compute the scale every N seconds. else, run once and exit." + echo " --loop-sec N: re-compute the scale every N seconds. else, run once and exit." echo "" echo "environment variables:" - echo " SWAY_DEFAULT_SCALE=N scale to apply when no known window is selected." + echo " SWAY_DEFAULT_SCALE=N: scale to apply when no known window is selected." # TODO: could use map-style environment variables to allow external per-app config # - SWAY_SCALE_org.gnome.Maps=1 ; ... } -options=$(getopt -l verbose,loop-sec: -o v -- "" "${@}") +options=$(getopt -l h,loop-sec:,verbose -o h,v -- "" "${@}") eval "set -- ${options}" verbose=false @@ -23,9 +23,10 @@ loop=false loop_sec= while true; do case "$1" in - (-v|--verbose) - verbose=true + (-h|--help) shift + help + exit ;; (--loop-sec) shift @@ -33,6 +34,10 @@ while true; do loop_sec="$1" shift ;; + (-v|--verbose) + shift + verbose=true + ;; (--) shift if [ $# -eq 1 ]; then @@ -41,6 +46,8 @@ while true; do ;; (*) echo "invalid arguments: '$1'" + echo "" + help exit 1 ;; esac