Compton 配置选项全览

想用好Compton,首先得摸清它的“工具箱”里都有什么。这份配置选项全览,就是帮你快速上手、按需调校的“地图”。
一 基础与运行控制
万丈高楼平地起,我们先从最基础的运行控制说起。
- 配置文件与日志
- config / config-file:这是Compton的“大脑”,指定配置文件路径,比如常见的
~/.config/compton.conf。 - log-level / log-file / quiet / debug:这是它的“日记本”。你可以设定日志级别(如 debug/info/warning/error)、指定输出文件,或者干脆让它安静运行、开启调试模式。
- config / config-file:这是Compton的“大脑”,指定配置文件路径,比如常见的
- 合成开关与渲染后端
- backend:核心的渲染引擎。主流选择是
glx或xrender(部分构建可能支持 wayland),前者通常性能更好。 - 合成总开关:
disable-composite,这个选项极少使用,一旦开启就等于关闭了所有合成效果。
- backend:核心的渲染引擎。主流选择是
- 显示与刷新
- vsync:垂直同步开关。开启它能有效减少画面撕裂,但有时会影响性能。
- frame-rate:给合成器上个“限速器”,比如限制在60帧。
- max-frame-time / min-frame-time:帧时间的上下限(单位毫秒)。设置
16.67就意味着锁定在60 FPS的节奏上。
二 视觉效果参数
这部分是Compton的“化妆师”,决定了你的桌面最终长什么样。
- 透明度与淡化
- opacity / alpha / background-opacity:控制窗口或背景的透明度,取值在0.0(全透)到1.0(不透明)之间。更妙的是,你可以用规则为不同窗口设定不同的透明度。
- fade / fade-in / fade-out:让窗口的出现和消失不再生硬,而是带有优雅的淡入淡出动画。
- ignore-root:忽略根窗口的透明度。在某些桌面环境下,开启这个选项能带来更好的稳定性。
- 阴影
- shadow:全局阴影的总开关。
- shadow-exclude:按窗口属性或正则表达式排除某些窗口的阴影,比如匹配到特定类名或标题的窗口。
- shadow-color / shadow-dim:精细调整阴影的颜色和暗化强度,让投影更符合你的审美。
- 模糊
- blur / blur-background / blur-method / blur-radius / blur-size / blur-deviation:这一系列参数共同掌管背景或区域的模糊效果。你可以选择高斯(gaussian)等算法,并配合半径、强度等参数进行微调。
- screen-edge-blur:专门针对屏幕边缘的模糊效果,能营造出独特的视觉层次感。
- 其它视觉细节
- mouse-pointer-shadow:一个容易被忽略但很提气的细节——为鼠标指针也加上阴影。
三 性能与调优
光好看不行,还得流畅。这部分参数就是性能和效果的“平衡术”。
- 渲染与绕过
- unredirect:是否对全屏窗口绕过合成器。开启后能显著降低延迟,但代价是可能导致画面撕裂或部分特效失效。
- ignore-glx-glitz:忽略部分OpenGL加速路径。在遇到兼容性或稳定性问题时,可以尝试开启此选项。
- GLX细节与高级渲染
- glx-no-stencil / glx-fbconfig / glx-use-glxteximage2d / glx-use-dri3:一系列GLX相关的底层细节。通常不需要动,但如果你对硬件和驱动有深入了解,可以在这里进行微调。
- custom shader:通过
shader-file加载自定义片段着色器,配合一系列shader-*参数,可以实现近乎无限的视觉效果定制。
- 资源与帧控制
- max-cpu-usage:给Compton的CPU占用率设个上限,比如80%,防止它“吃”掉太多系统资源。
- max-frame-time / min-frame-time / frame-rate:再次强调帧时间和帧率的控制,这是在功耗、发热与流畅度之间找到最佳平衡点的关键。
四 窗口规则与忽略列表
Compton很聪明,知道不能“一刀切”。通过规则,你可以让不同的窗口享受不同的“待遇”。
- 窗口选择
- shadow-exclude / ignore-windows:根据窗口的类、实例、标题、角色等属性进行匹配(支持正则表达式),从而排除或忽略特定窗口的阴影或合成效果。
- 透明度规则
- opacity-rule:为匹配到的窗口设置固定或范围透明度。例如:
[“90:class_g ‘Firefox’”, “100:class_g ‘Xephyr’”]表示让Firefox窗口保持90%透明度,而Xephyr窗口完全不透明。
- opacity-rule:为匹配到的窗口设置固定或范围透明度。例如:
五 配置示例与生效方式
理论说再多,不如一个例子来得实在。最后,我们来看看如何让配置真正跑起来。
- 示例配置(~/.config/compton.conf)
[general] backend = "glx" vsync = true log-level = "info" [shadow] shadow = true shadow-exclude = [ "name = 'Conky'", "class_g = 'Polybar'" ] [blur] method = "gaussian" size = 10 deviation = 5.0 [fading] fade = true fade-in = true fade-out = true [opacity-rule] ["90:class_g 'Firefox'"] ["100:class_g 'Xephyr'"] - 启动与热重载
- 直接启动:
compton --config ~/.config/compton.conf -f - 重启生效:先
killall compton结束现有进程,再运行compton -f重新启动。 - 使用systemd服务:创建一个系统服务单元,在
ExecStart中指向带--config参数的compton命令,然后通过systemctl enable --now compton来启用并立即启动服务,实现开机自启。
- 直接启动:
