diff options
| author | srdusr <trevorgray@srdusr.com> | 2023-10-22 22:50:02 +0200 |
|---|---|---|
| committer | srdusr <trevorgray@srdusr.com> | 2023-10-22 22:50:02 +0200 |
| commit | a4f18086ba7ce108ebb041b9b0c52bf522413000 (patch) | |
| tree | 8d63a98b329f4af486f38db47d0b6049c6e441d8 /.scripts/opacity-change.sh | |
| parent | bf45ef759815ad7ac3f6423114a96f4d56d1a2a2 (diff) | |
| parent | 68a2612c8b737f6770a4d23848fe6409ddce7888 (diff) | |
| download | dotfiles-a4f18086ba7ce108ebb041b9b0c52bf522413000.tar.gz dotfiles-a4f18086ba7ce108ebb041b9b0c52bf522413000.zip | |
Add '.scripts/' from commit 'a4ba0376ba73b1bb295d8bb459a4bf2b063ddca9'
git-subtree-dir: .scripts
git-subtree-mainline: 03c0cf66468d5e04c0e3559f9f89b5eec28feb9e
git-subtree-split: a4ba0376ba73b1bb295d8bb459a4bf2b063ddca9
Diffstat (limited to '.scripts/opacity-change.sh')
| -rwxr-xr-x | .scripts/opacity-change.sh | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/.scripts/opacity-change.sh b/.scripts/opacity-change.sh new file mode 100755 index 0000000..b509936 --- /dev/null +++ b/.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" + |
