在 alacritty 中切换 background_opacity 选项

在 alacritty 中切换 background_opacity 选项

我想绑定一个background_opacity在 0.9 和 1.0 之间切换值的键,并立即在 Alactitty 终端中显示结果。key_bindings 中没有用于此目的的操作。

我已经live_config_reload启用,所以一种可能的方法是编写 zsh 函数,这将改变 alacritty.yml文件。

答案1

我在寻找相同功能时偶然发现了这个问题,并最终自己实现了它。我在我的博客

为了完整起见,我将在这里列出相关步骤。

〜/ bin / toggle_alacritty_opacity
#!/usr/bin/env bash

## If alacritty.yml does not exist, raise an alert
[[ ! -f ~/.config/alacritty/alacritty.yml ]] && \
    notify-send "alacritty.yml does not exist" && exit 0

## Fetch background_opacity from alacritty.yml
opacity=$(awk '$1 == "background_opacity:" {print $2; exit}' \
    ~/.config/alacritty/alacritty.yml)

## Assign toggle opacity value
case $opacity in
  1)
    toggle_opacity=0.9
    ;;
  *)
    toggle_opacity=1
    ;;
esac

## Replace opacity value in alacritty.yml
sed -i -- "s/background_opacity: $opacity/background_opacity: $toggle_opacity/" \
    ~/.config/alacritty/alacritty.yml

通过在终端中运行使上述脚本可执行:
chmod +x ~/bin/toggle_alacritty_opacity

~/.zshrc确保在或中有以下行~/.bashrc

## In order to use the executable scripts inside ~/bin directly
export PATH=$HOME/bin:$PATH

现在toggle_alacritty_opacity从您的终端运行将切换 alacritty 的不透明度。

奖金

如果你使用的是 i3 WM,请将以下几行附加到~/.config/i3/config

## Toggling alacritty opacity in i3 (inside ~/bin)
bindsym $mod+Shift+a exec --no-startup-id toggle_alacritty_opacity

现在您有一个键绑定来切换 alacritty 的不透明度。

相关内容