Bonjour à tous et à toutes
Vous désirez mettre un peu d'ordre dans vos fenêtres OpenBox ? Vous avez un soucis de placement de fenêtres ?? Alors cette page est faite pour vous !!
Je n'ai pas testé sur une version antérieure d'Ubuntu, encore moins sur une autre distribution Linux. Mais je pense que le principe doit rester le même.
Tout d'abord, vous vous demandez comment placer les fenêtres sous OpenBox ?? Pour cela, 2 solutions :
On va maintenant éditer le fichier de configuration rc.xml avec notre éditeur de texte préféré (gedit).
Pour cela, tapez dans un terminal cette commande :
gedit $HOME/.config/openbox/rc.xml
Pour ajouter une règle de position, la syntaxe est la suivante :
<applications> <!-- Place notre_application --> <application name="notre_application"> <position force="yes"> <x>abscisses</x> <y>ordonnées</y> </position> </application> </applications>
Prenons un exemple simple : placer firefox à 200 pixels du bord gauche et à 50 pixel du bord supérieur de l'écran.
<applications> <!-- Place firefox --> <application name="firefox"> <position force="yes"> <x>200</x> <y>50</y> </position> </application> </applications>
Maintenant, ajoutons 2 règles différentes :
<applications> <!-- Place firefox --> <application name="firefox"> <position force="yes"> <x>200</x> <y>50</y> </position> </application> <!-- Place Tilda --> <application name="tilda"> <position force="yes"> <x>450</x> <y>230</y> </position> </application> </applications>
Et voilà, le tour est joué
Pour définir la position de vos fenêtres à partir du bord droit, ou du bord inférieur, il vous suffit d'utiliser des valeurs négatives :
<!-- Place firefox --> <application name="firefox"> <position force="yes"> <x>-200</x> <y>-50</y> </position> </application>
Ceci placera Firefox à 200 pixels du bord droit et à 50 pixels du bord inférieur.
Vous souhaitez que toutes vos fenêtres se placent au même endroit ? Rien de plus simple !!
Voici une petite astuce pour vous éviter de définir la même règle de position pour toutes vos fenêtres :
<!-- Place TOUTES les fenêtres au même endroit --> <application name="*"> <position force="yes"> <x>50</x> <y>50</y> </position> </application>
Ici, toutes vos fenêtres ouvertes seront placées :
Si vous faites la manipulation précédente et que vous utilisez tint2, alors la règle de position affectera aussi tint2.
Pas très pratique pour une barre de tâches… Mais pas de crainte, on peut remédier à ce léger soucis
Devil's Pie est un logiciel qui, dans le gestionnaire de fenêtres Metacity (gestionnaire utilisé par Gnome) permet de détecter les caractéristiques des fenêtres et de leur appliquer des règles de comportement.
Pour en savoir plus, je vous conseille la doc de devilspie.
Pour l'installer, 2 méthodes :
sudo apt-get install devilspie
Ensuite, pour son utilisation, je vous renvois à la documentation dédiée : devilspie.
Son fichier et sa syntaxe de configuration sont assez complexes. Là encore, une solution simple existe : gdevilspie. Continuez au chapitre suivant
GDevilspie est une interface graphique pour créer les règles de devilspie. Je vous le conseille donc fortement !!
Voici le lien pour le télécharger : http://code.google.com/p/gdevilspie/downloads/list
Et la méthode à suivre pour l'installer :
mkdir $HOME/.devilspie find -type f -iname "*gdevilspie-0.5.tar.bz2*" -exec mv {} $HOME/.devilspie \; cd $HOME/.devilspie tar xjvf gdevilspie-0.5.tar.bz2 cd gdevilspie-0.5/ sudo python setup.py install
Ces lignes de codes vont :
Et voilà, normalement, gdevilspie vient d'être installé.
Pour le vérifier, démarrez le via le terminal :
gdevilspie &
sudo apt-get install python-wnck
GDevilspie est très simple d'utilisation.
Néanmoins, pour vous éviter de chercher, voici la configuration à adopter pour (re)placer tint2 là où vous le voulez :
killall tint2 ; tint2 &
Normalement, tint2 à repris sa position d'origine.
Maintenant que vos fenêtres sont placées, vous voulez qu'elles aient une taille fixe ? Bienvenue dans ce (court) chapitre !
[En cours de rédaction]
Pour définir la taille de nos fenêtres, on va se servir encore une fois de gdevilspie.
Cette méthode est bonne pour définir une règle, pour une fenêtre. Par exemple, avoir les fenêtres Firefox (et uniquement Firefox) de dimensions 800 par 450.
Toutefois, si vous voulez que d'autres fenêtres aient les mêmes dimensions (nautilus, gedit…), gdevilspie est un peu dépassé…
Pour palier facilment à ce problème, il va falloir passer par le fichier de configuration !! Aller c'est parti !!
Tout d'abord, il faut créer la règle :
Insérez ce bloc dans le fichier :
; generated_rule Nautifox ( if ( begin ( or ( contains ( application_name ) "Firefox" ) ( contains ( application_name ) "File Manager" ) ) ) ( begin ( geometry "1100x800+281+30" ) ( println "match" ) ) )
Ce code fonctionne de la manière suivante : "Si le nom de l'application contient "Firefox" ou "File Manager" alors, la fenêtre créée aura une largeur de 1100 pixels, une hauteur de 800 pixels, et sera positionnée à 281 pixels du bord gauche et à 30 pixels du bord supérieur".
Ça, c'est dit !!
Bon voilà, vous avez la structure de base pour configurer plusieurs fenêtres différentes avec la même règle de taille, à vous de jouer maintenant
Voilà, maintenant vous savez comment gérer vos fenêtres sous OpenBox. Vous pouvez définir la taille et/ou la position comme bon vous semble. Alors éclatez-vous !!
Pour cela, n'oubliez pas, 2 méthodes existent :
Merci d'avoir lu cette page. Si vous rencontrez des problèmes en la suivant ou des erreurs s'y sont infiltrées, n'hésitez pas à me contacter et/ou à les corriger.
Bonne continuation à tous et à toutes
Contributeur : Fenouille84