Terminals amb transparència real a WindowMaker amb Compton

Terminals amb transparència real a WindowMaker amb Compton

Compton, un fork de xcompmgr, és un compositor de finestres i ombres d'escriptori. Jo l'he instal·lat a FreeBSD compilant el port /usr/ports/x11/compton/ i l'execute al .xinitrc per a que arranque sempre quan execute startx:


xterm -en ca_ES.UTF8 -bg black -fg white +sb -geometry 100x45+77+51 &
xterm -en ca_ES.UTF8 -bg black -fg white +sb -geometry 100x45+686+51 &
exec setxkbmap -model pc105 -layout es -option "esperanto:qwerty" &
compton &
exec /usr/local/bin/wmaker

Sobre compton, tenim el fitxer de configuració a .config/compton.conf:

# 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-opacity = 0.7;
# shadow-red = 0.0;
# shadow-green = 0.0;
# shadow-blue = 0.0;
shadow-exclude = [
"name = 'Notification'",
"class_g = 'Conky'",
"class_g ?= 'Notify-osd'",
"class_g = 'Cairo-clock'",
"_GTK_FRAME_EXTENTS@:c"
];
# shadow-exclude = "n:e:Notification";
# shadow-exclude-reg = "x10+0+0";
# xinerama-shadow-crop = true;

# Opacity
#menu-opacity = 0.8;
opacity-rule = [ "80:class_g = 'XTerm'" ];
#inactive-opacity = 0.8;
#active-opacity = 1.0;
#frame-opacity = 0.7;
inactive-opacity-override = false;
alpha-step = 0.06;
# inactive-dim = 0.2;
# inactive-dim-fixed = true;
# blur-background = true;
# blur-background-frame = true;
blur-kern = "3x3box";
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
# blur-background-fixed = true;
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'",
"_GTK_FRAME_EXTENTS@:c"
];
#opacity-rule = [ "20:class_g = 'gnome-terminal'" ];

# Fading
fading = false;
# fade-delta = 30;
#fade-in-step = 0.03;
#fade-out-step = 0.03;
no-fading-openclose = true;
no-fading-destroyed-argb = true;
fade-exclude = [ ];

# Other
backend = "xrender";
mark-wmwin-focused = true;
mark-ovredir-focused = true;
# use-ewmh-active-win = true;
detect-rounded-corners = true;
detect-client-opacity = true;
refresh-rate = 0;
vsync = "none";
dbe = false;
paint-on-overlay = true;
# sw-opti = true;
# unredir-if-possible = true;
# unredir-if-possible-delay = 5000;
# unredir-if-possible-exclude = [ ];
focus-exclude = [ "class_g = 'Cairo-clock'" ];
detect-transient = true;
detect-client-leader = true;
invert-color-include = [ ];
# resize-damage = 1;

# GLX backend
# glx-no-stencil = true;
glx-copy-from-front = false;
# glx-use-copysubbuffermesa = true;
# glx-no-rebind-pixmap = true;
glx-swap-method = "undefined";
# glx-use-gpushader4 = true;
# xrender-sync = true;
# xrender-sync-fence = true;

# Window type settings
wintypes:
{
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; };
};

I sobre la part de configuració, primer executem l'xprop per saber com anomena a la terminal xterm amb:

$ xprop WM_CLASS

i això ens dóna de resultat:

WM_CLASS(STRING) = "xterm", "XTerm"

Aleshores, finalment afegim a la configuració el següent:

opacity-rule = [ "85:class_g *= 'XTerm'"];

I ja tenim un escriptori WindowMaker amb aspectes més moderns.