Linux Compton 透明度调整指南
一 调整方式概览
- 全局透明度:通过配置文件设置 opacity(0.0–1.0,数值越小越透明),或在命令行用 –opacity 0.8 临时生效。
- 按窗口规则:使用 opacity-rule 为不同应用/窗口设置不同透明度,例如让 Firefox 为 90%、终端为 90%。
- 背景不透明:设置 background-opacity: 1 可避免桌面背景透出(如桌面壁纸/面板)。
- 立即生效:修改配置后重启 Compton,例如 compton --config ~/.config/compton.conf 或先 killall compton 再启动。
二 配置文件关键参数与示例
- 建议将配置写入 ~/.config/compton.conf,示例:
# 渲染后端:glx 通常性能更好;xrender 兼容性更强
backend = "glx"
# 全局不透明度(0.0–1.0)
opacity = 0.85
# 背景窗口不透明度(避免桌面背景透出)
background-opacity = 1
# 按窗口设置不同透明度
opacity-rule = [
"90:class_g 'Firefox'",
"90:name 'Terminal'",
"100:class_g 'Xephyr'"
]
# 可选:启用背景模糊(需要合适的后端与配置)
# bg_blur = true
# screen_edge_blur = true
- 说明:
- opacity 为全局默认透明度;
- opacity-rule 支持按 class_g(应用类)、name(窗口名)等匹配;
- 若使用 bg_blur / screen_edge_blur,需确保渲染后端与驱动支持。
三 命令行临时调整与重启
- 临时启动并指定透明度:
- 示例:compton --config ~/.config/compton.conf --opacity 0.9(前台运行,便于调试)。
- 后台常驻:
- 示例:compton --config ~/.config/compton.conf -b。
- 热重载:
- 先结束旧进程:killall compton;
- 再按新配置启动:compton --config ~/.config/compton.conf。
- 提示:命令行参数会覆盖配置文件中的同名选项,适合快速试验。
四 常见问题与排查
- 桌面环境自带合成器冲突:如 GNOME 自带合成器,可能与 Compton 冲突,需在其设置中关闭自带合成或改用 Compton 接管。
- 透明度无效或异常:检查 backend(优先 glx)、驱动是否支持 OpenGL/GLX,必要时切换 xrender 以提升兼容性。
- 性能与资源占用:降低 frame-rate、关闭不必要的特效(如阴影)可提升流畅度。
- 模糊/透明异常:若启用 bg_blur / screen_edge_blur 无效,通常与后端或驱动不匹配有关,先回退到基础配置排查。
五 进阶 按状态设置不同透明度
- 使用 opacity-rule 区分窗口的 focused / !focused 状态,实现“聚焦更不透明、未聚焦更透明”的效果:
opacity-rule = [
"90:name *? 'VIM' && focused",
"60:name *? 'VIM' && !focused",
"90:name *? 'Firefox' && focused",
"70:name *? 'Firefox' && !focused"
]
- 说明:上述规则对匹配到的窗口在聚焦与未聚焦时分别应用 90%/60% 或 90%/70% 的透明度。