阅读量:2
Compton 透明度设置指南
一 配置思路与关键点
- 使用 opacity-rule 按窗口类、名称或状态设置透明度,语法为:“透明度:条件”,透明度用 0–100(百分比)表示。示例:“90:class_g ‘Firefox’” 表示类名为 Firefox 的窗口透明度为 90%。
- 使用 focus-exclude 排除特定窗口(如弹出菜单、覆盖层)使其保持不透明,例如排除位于左上角的 dmenu:“x 0 && y 0 && override_redirect true”。
- 使用 ignore_root true 可忽略桌面根窗口的透明度,避免背景被透出。
- 使用 background-opacity 设置桌面背景的透明度(如:0.8 表示 80% 不透明)。
- 使用 fade 系列参数控制透明度变化时的淡入淡出效果(如:fade-in-step、fade-out-step、fade-exclude)。
- 注意:Compton 仅适用于 X11 会话;在 Wayland 下无法正常工作。
二 配置文件示例
# ~/.config/compton.conf
backend = "xrender"
vsync = true
shadow = true
# 背景透明度(0.0–1.0,1.0 为不透明)
background-opacity = 0.9
# 淡入淡出步长(数值越小越平滑,但可能更耗资源)
fade-in-step = 0.03
fade-out-step = 0.03
# 按窗口设置透明度
opacity-rule = [
"90:class_g 'Firefox'",
"90:name 'Terminal'",
"95:class_g 'alacritty' && !_NET_WM_STATE@:32a", # 未全屏时 95%
"0:_NET_WM_STATE@:32a * '_NET_WM_STATE_HIDDEN'" # 隐藏窗口完全透明
]
# 排除特定窗口(如 dmenu 覆盖层)
focus-exclude = "x 0 && y 0 && override_redirect true"
# 忽略根窗口透明度
ignore_root = true
- 说明:上述规则综合使用了窗口类/名称匹配、状态匹配(如 _NET_WM_STATE)、以及排除规则,便于实现“聚焦更不透明、未聚焦更透明”的常见效果。
三 应用与热重载
- 手动重启 Compton(确保先结束旧进程):
killall compton compton --config ~/.config/compton.conf & - 使用 systemd 用户服务(若已配置):
systemctl --user restart compton - 命令行临时覆盖(示例):
其中 -b 后台运行,-r 0.5 设置全局透明度为 50%,-i 0.8 设置聚焦窗口透明度为 80%(示例值,具体以你的 Compton 版本参数为准)。compton -b -r 0.5 -i 0.8
四 常见问题与排查
- 桌面环境自带合成器冲突:如 GNOME 自带 compositor,可能与 Compton 冲突。可尝试在系统设置中关闭自带合成,或改用其他复合器。
- 性能与驱动:透明度与淡入淡出会占用一定 GPU/CPU,老旧显卡或驱动不佳时可能出现卡顿;优先确保 OpenGL/GLX 正常工作。
- 规则不生效:优先用 xprop 检查窗口的 WM_CLASS、WM_NAME、_NET_WM_STATE 等属性,再微调 opacity-rule 与 focus-exclude 条件。
- 会话限制:Compton 仅支持 X11;Wayland 会话需改用其他方案(如桌面自带的合成器或其他 X11 复合器)。
以上就是关于“Linux Compton配置中透明度如何设置”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm