aboutsummaryrefslogtreecommitdiff
path: root/.local/bin/scripts/opacity-change.sh
diff options
context:
space:
mode:
authorsrdusr <trevorgray@srdusr.com>2023-02-10 11:32:00 +0200
committersrdusr <trevorgray@srdusr.com>2023-02-10 11:32:00 +0200
commit009cd3c349ada787d5828d69655c7cd78707ae40 (patch)
tree26e18ca2fe7c6b427eb6ff7f1ad92658f1b9aaf4 /.local/bin/scripts/opacity-change.sh
parent588984c769470ff070dc89a15fb6c63f1bc74562 (diff)
parent4b073028c17697e2254464e2b54678d07489c14e (diff)
downloaddotfiles-009cd3c349ada787d5828d69655c7cd78707ae40.tar.gz
dotfiles-009cd3c349ada787d5828d69655c7cd78707ae40.zip
Add '.local/bin/scripts/' from commit '972ed253fa17ffc0db8dfde82c0662acaed17d48'
git-subtree-dir: .local/bin/scripts git-subtree-mainline: 4d3d5a0f39a5e504f1296cb401e2dffc62292572 git-subtree-split: 972ed253fa17ffc0db8dfde82c0662acaed17d48
Diffstat (limited to '.local/bin/scripts/opacity-change.sh')
-rwxr-xr-x.local/bin/scripts/opacity-change.sh34
1 files changed, 34 insertions, 0 deletions
diff --git a/.local/bin/scripts/opacity-change.sh b/.local/bin/scripts/opacity-change.sh
new file mode 100755
index 0000000..b509936
--- /dev/null
+++ b/.local/bin/scripts/opacity-change.sh
@@ -0,0 +1,34 @@
+#!/usr/bin/env bash
+set -eu
+[[ -n ${DEBUG:-} ]] && set -x
+
+#### Example alacritty.yml usage
+#key_bindings:
+# - { key: N, mods: Control|Shift, action: SpawnNewInstance }
+# - { key: O, mods: Control|Shift, command: { program: "opacity-change.sh", args: ["-"] } }
+# - { key: P, mods: Control|Shift, command: { program: "opacity-change.sh", args: ["+"] } }
+
+
+operation="${1:-}${2:-}" # Arg #1 & #2 (in case the user misinterpreted a space in the usage), Default ''
+step="${operation:1}" # Substring from char index 1
+step="${step:-1}" # Default '1'
+operation="${operation:0:1}" # Substring from char index 0 length of 1
+config_file="$HOME/.config/alacritty/alacritty.yml"
+config_field="opacity"
+tmp_file="/tmp/$(basename $config_file).$(date +%s)"
+current_value=$(sed 's/#.*//g; /\b'"$config_field"':/!d; s/.*: \?//' < "$config_file")
+
+case $operation in
+"-")
+ verb="Decreasing" ;;
+"+")
+ verb="Increasing" ;;
+*)
+ echo "Usage: ${BASH_SOURCE[0]} (-|+)[int]"; exit 255 ;;
+esac
+
+new_value="$(awk '{n=$1+$2/10; print (n<0 ? 0 : n>1 ? 1 : n)}' <<<"$current_value $operation$step")"
+echo "$verb $config_field from $current_value to $new_value" >&2
+cp "$config_file" "$tmp_file"
+sed "s/\b$config_field:.*/$config_field: $new_value/" "$tmp_file" > "$config_file"
+