debian

Debian Compton下的窗口动画设置

小樊
39
2025-11-15 05:22:24
栏目: 智能运维

Debian 下使用 Compton 实现窗口动画的要点

Compton 是 X11 的窗口合成器,主要负责窗口的合成、阴影、透明度等视觉呈现;它并不提供类似 KWin/Mutter 那样的“内置窗口过渡动画”。因此,常见的“窗口动画”(如淡入淡出、滑入滑出、最小化/最大化过渡)通常来自窗口管理器(如 i3、Openbox、awesome)或桌面环境自带的动画,Compton 的作用是让这些动画更顺滑(抗撕裂、透明叠加正确)。若使用 Wayland,Compton 不适用,应改用相应桌面/合成器的内置动画方案。

快速实现顺滑过渡的做法

让动画更顺滑的实用配置示例

# ~/.config/compton.conf
backend = "glx";
vsync = true;

# 淡入淡出
fade = true;
fade-delta = 10;
fade-in-step = 0.03;
fade-out-step = 0.03;

# 阴影
shadow = true;
shadow-radius = 5;
shadow-offset-x = 1;
shadow-offset-y = 1;
shadow-opacity = 0.3;
shadow-exclude = [
  "name 'Notification'",
  "class_g ? 'Dmenu'",
  "class_g ? 'Dunst'",
  "_NET_WM_STATE@:32a * '_NET_WM_STATE_HIDDEN'"
];

# 透明度(示例:Firefox/Chromium 保持 90% 不透明)
opacity-rule = [
  "90:class_g='Firefox'",
  "90:class_g='Chromium'"
];

# 忽略根窗口透明,减少某些环境下的异常
ignore_root = true;

说明:上述键位与语义以当前主流 Compton 配置为准;若你的版本不支持个别键(例如某些“动画时长”项),请删除或改用等效项(如用 fade-delta 调节速度)。

常见故障排查

进阶方案

若需要“窗口抖动、弹跳、路径动画”等更丰富的效果,Compton 本身不提供,可结合 xdotool 等工具编写脚本对窗口进行移动/缩放,从而实现自定义动画;例如用 xdotool windowmove 将窗口平滑移动到目标位置,再配合 Compton 的淡入淡出获得更自然的观感。

0
看了该问题的人还看了