在 Linux 中,Compton(现在多被维护为 picom)是一个常见的复合管理器(compositor),可以用来实现窗口透明、阴影、模糊等效果。下面详细说明如何通过 Compton / picom 设置透明度。
很多发行版已经用 picom 替代了 compton:
which compton
which picom
下文以 compton 为例,配置对 picom 也基本通用(文件通常是
~/.config/picom/picom.conf)。
sudo apt install compton
sudo pacman -S compton
sudo dnf install compton
mkdir -p ~/.config/compton
nano ~/.config/compton/compton.conf
# 全局透明度(0.0 = 完全透明,1.0 = 不透明)
opacity-rule = [
"90:class_g = '.*'"
];
这表示所有窗口默认 90% 不透明度。
opacity-rule = [
"80:class_g = 'URxvt'", # 终端透明
"90:class_g = 'Firefox'", # 浏览器
"100:class_g = '.*'", # 其他窗口不透明
"85:name *= 'Terminal'"
];
class_g:窗口类名(如 URxvt, Firefox)name:窗口标题role:窗口角色获取窗口信息:
xprop
点击窗口,看 WM_CLASS 和 WM_NAME
inactive-opacity = 0.8;
active-opacity = 1.0;
效果:
如果你只是想让终端透明:
echo "URxvt*transparent: true" >> ~/.Xresources
echo "URxvt*shading: 90" >> ~/.Xresources
xrdb ~/.Xresources
background_opacity: 0.85
compton --config ~/.config/compton/compton.conf &
或写入 .xinitrc / 自动启动:
compton -b
blur-method = "gaussian";
blur-strength = 10;
opacity-rule = [
"85:class_g = 'URxvt'",
"90:class_g = 'Firefox'",
"100:class_g = '.*'"
];
inactive-opacity = 0.85;
active-opacity = 1.0;
shadow = true;
blur-method = "gaussian";
blur-strength = 8;
如果你愿意,可以告诉我:
我可以给你一份精准配置。