#1 Le 14/02/2013, à 21:36
- UUBBUU_USER
[Script/bash] Urxvt Façon "console Quake" pour Openbox
Rien de bien nouveau que ce qu'on peux déjà trouver sur le net, mais avec une petite différence.
Voila je voulais avoir un terminal en fond, sans icône dans tint2, transparent, que je pourrais afficher ou cacher selon la nécessité sur le bureau, sans oublier que suivant le bureau ou l'on se trouve, suivant les fenêtres ouvertes ou pas, un terminal transparent c'est pas très pratique. Du coup j'ai rajouter 2 "tites" fonction pour cacher ou montrer les fenêtres du bureau sur lequel on est a chaque fois qu'on affiche la console ou qu'on la cache.
Toutes appréciation ou remarque est accepté !!
#!/bin/bash
# quake_rxvt: emulates quake terminal functionality
# with show and hide desktop window function
# designed for use with openbox and wmctrl
# make sure wmctrl is installed
# args for Quake terminal
consoleXargs=" -depth 32 -bg rgba:0000/0000/0000/0000 "
# set Quake Terminal class name
quake_rxvt_wmclass="quake_urxvt"
show_desktop() {
get_cur_desk_nb="$(xprop -root _NET_CURRENT_DESKTOP | tail -c -2)"
ob_cur_desk_win_list=($(wmctrl -l | awk '$2 == '$get_cur_desk_nb' {print $1} '))
for i in "${ob_cur_desk_win_list[@]}"; do
wmctrl -i -r $i -b add,hidden
done
}
unshow_desktop() {
get_cur_desk_nb="$(xprop -root _NET_CURRENT_DESKTOP | tail -c -2)"
ob_cur_desk_win_list=($(wmctrl -l | awk '$2 == '$get_cur_desk_nb' {print $1} '))
for i in "${ob_cur_desk_win_list[@]}"; do
wmctrl -i -R $i
done
}
quakeUrxvtWindowsId="$(wmctrl -l | grep "$quake_rxvt_wmclass" | sed -e 's/ .*//')"
# test: get current active focused windows
active_window_id="$(xprop -root | grep '^_NET_ACTIVE' | sed -e 's/.* //')"
# Does active windows is quake_urxvt
isActive="$(xprop -id "$active_window_id" 2>/dev/null | grep ^WM_CLASS.*.$quake_rxvt_wmclass)"
[[ ! $quakeUrxvtWindowsId ]] && {
#~ wmctrl -k on
show_desktop
urxvt $consoleXargs -name "$quake_rxvt_wmclass" &
exit 0
}
[[ ! $isActive ]] && {
show_desktop
wmctrl -R $quake_rxvt_wmclass -x
exit 0
}
unshow_desktop
wmctrl -i -r "$active_window_id" -b add,hidden
exit 0
J'utilise ce script pour urxvt avec openbox.
Il nécessite l'installation d'urxvt et de wmctrl pour fonctionner.
içi une copie des deux parties de mon rc.xml:
Le raccourcis Clavier :
( penser a modifier le chemin et le nom du script )
<keybind key="W-c">
<action name="Execute">
<command>/chemin/vers/script</command>
</action>
</keybind>
</keyboard>
Le mode D'affichage pour la fenêtre :
<application name="quake_urxvt">
<decor>no</decor>
<focus>yes</focus>
<iconic>no</iconic>
<skip_taskbar>yes</skip_taskbar>
<maximized>true</maximized>
</application>
Dernière modification par UUBBUU_USER (Le 14/02/2013, à 23:57)
PEACE LOVE UNITY FREE TIBET
Hors ligne
#2 Le 14/02/2013, à 22:36
- Maisondouf
Re : [Script/bash] Urxvt Façon "console Quake" pour Openbox
papounet@amd8papou:~/tempo/pingui$ bash quake.sh
Error: required dependency wmctrl not found.
Il lui faut quoi pour pouvoir tester ?
ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor, OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)
Hors ligne
#3 Le 14/02/2013, à 23:34
- UUBBUU_USER
Re : [Script/bash] Urxvt Façon "console Quake" pour Openbox
il faut installer le paquet
wmctrl
Dernière modification par UUBBUU_USER (Le 14/02/2013, à 23:34)
PEACE LOVE UNITY FREE TIBET
Hors ligne
#4 Le 14/02/2013, à 23:39
- Maisondouf
Re : [Script/bash] Urxvt Façon "console Quake" pour Openbox
papounet@amd8papou:~/tempo/pingui$ sudo apt-get install wmctrl
[sudo] password for papounet:
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
wmctrl est déjà la plus récente version disponible.
wmctrl passé en « installé manuellement ».
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
papounet@amd8papou:~/tempo/pingui$
Une histoire de $PATH....
papounet@amd8papou:~/tempo/pingui$ which wmctrl
/usr/bin/wmctrl
papounet@amd8papou:~/tempo/pingui$
Dernière modification par Maisondouf (Le 14/02/2013, à 23:41)
ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor, OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)
Hors ligne
#5 Le 14/02/2013, à 23:42
- UUBBUU_USER
Re : [Script/bash] Urxvt Façon "console Quake" pour Openbox
hum .. script rectifié .. ... juste a penser à installer wmctrl pour l'utiliser
PEACE LOVE UNITY FREE TIBET
Hors ligne
#6 Le 14/02/2013, à 23:45
- Maisondouf
Re : [Script/bash] Urxvt Façon "console Quake" pour Openbox
J'ai commenté le 'exit 1' pour forcer le scripte et je récupère :
quake.sh: ligne 52: urxvt : commande introuvable
Je viens de réaliser qu'il faut openbox pour tester
ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor, OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)
Hors ligne
#7 Le 14/02/2013, à 23:46
- UUBBUU_USER
Re : [Script/bash] Urxvt Façon "console Quake" pour Openbox
bah surtout urxvt ..... ( j'ai balancer le script un peu vite ... sans explication .... désolé !! )
Maj du premier post
Dernière modification par UUBBUU_USER (Le 14/02/2013, à 23:52)
PEACE LOVE UNITY FREE TIBET
Hors ligne