问题: 我正在尝试:
- 使用
compton
oni3wm
使某些应用程序透明化 - 在标签/堆叠模式下,
i3wm
底层窗口被隐藏(或不被绘制)。
==========================================
示例:
例如,让我们将应用程序视为zathura
.
我在我的compton.conf
:
opacity-rule = [
"90:class_g = 'Zathura' && !_NET_WM_STATE@:32a",
"0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
]
这zathura
在未聚焦时变得透明。如果zathura
被聚焦,那么它将不透明。zathura
如果它位于选项卡式/堆叠窗口中的任何其他透明窗口下方,则隐藏。
接下来我尝试了以下内容compton.conf
:
opacity-rule = [
"90:class_g = 'Zathura'",
"0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
]
这确实使zathura
透明,但是zathura
当处于选项卡或堆叠模式时,它会在其他窗口下方绘制i3wm
。
我找到了这个并尝试了建议的解决方案。也就是说,我替换"0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
为
"0:_NET_WM_STATE@[0]:32a = '_NET_WM_STATE_HIDDEN'",
"0:_NET_WM_STATE@[1]:32a = '_NET_WM_STATE_HIDDEN'",
"0:_NET_WM_STATE@[2]:32a = '_NET_WM_STATE_HIDDEN'",
"0:_NET_WM_STATE@[3]:32a = '_NET_WM_STATE_HIDDEN'",
"0:_NET_WM_STATE@[4]:32a = '_NET_WM_STATE_HIDDEN'"
然而这并没有改变。请帮忙。
==========================================
配置文件:
我的整个compton.conf
在下面。备注:某些应用程序,例如urxvt
或emacs
允许我在本机设置透明度。这些应用程序在选项卡/堆叠模式下表现良好,配置如下:
menu = { shadow = false; };
dropdown_menu = { shadow = false; };
popup_menu = { shadow = false; };
utility = { shadow = false; };
# Shadow
shadow = true;
no-dnd-shadow = true;
no-dock-shadow = true;
clear-shadow = true;
shadow-radius = 7;
shadow-offset-x = -7;
shadow-offset-y = -7;
shadow-exclude = [
"class_g = 'i3-frame'",
"class_g = 'keynav'",
"name = 'Notification'",
"class_g ?= 'Notify-osd'",
"_GTK_FRAME_EXTENTS@:c"
];
opacity-rule = [
# "90:class_g = 'Zathura'",
"90:class_g = 'Zathura' && !_NET_WM_STATE@:32a",
# "0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
"0:_NET_WM_STATE@[0]:32a *= '_NET_WM_STATE_HIDDEN'"
,"0:_NET_WM_STATE@[1]:32a *= '_NET_WM_STATE_HIDDEN'"
,"0:_NET_WM_STATE@[2]:32a *= '_NET_WM_STATE_HIDDEN'"
,"0:_NET_WM_STATE@[3]:32a *= '_NET_WM_STATE_HIDDEN'"
,"0:_NET_WM_STATE@[4]:32a *= '_NET_WM_STATE_HIDDEN'"
];
# Fading
fading = true;
fade-delta = 5;
fade-in-step = 0.03;
fade-out-step = 0.03;
fade-exclude = [ ];
# Other
backend = "xrender";
mark-wmwin-focused = true;
mark-ovredir-focused = true;
detect-rounded-corners = true;
detect-client-opacity = true;
refresh-rate = 0;
vsync = "none";
dbe = false;
focus-exclude = [ "class_g = 'Cairo-clock'" ];
detect-transient = true;
detect-client-leader = true;
invert-color-include = [ ];
# GLX backend
glx-copy-from-front = false;
glx-swap-method = "undefined";
# Window type settings
wintypes:
{
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; };
};