Plop, plop
Dernier post sur ce sujet (à moins que ...)
Donc la dernière version est dans le post au dessus.
Pour moi, elle est aboutie, elle fait ce que je lui demande.
Et elle n'est pas si déroutante à utiliser, même agréable je dirais.
J'ai fait un petit "Lisez-moi" plus complet que que le "How To Do" embarqué.
Le voici pour ceux qui voudraient savoir comment l'utiliser correctement :
Devil's Pie Interface Graphique Extra Légère
Comment Faire :
- Donnez les droits d'exécution au fichier DevilsPie-IGEL.
Dans un terminal : chmod +x DEvilsPie-IGEL
- Ensuite entrez la commande suivante pour lancer Devil's Pie I.G.L.E.
Dans un terminal : DevilsPie-IGEL
- Ou créez un lanceur.
- Un 1ère fenêtre apparaît vous demandant d'ouvrir l'application à gérer.
- Ouvrez l'application désirée.
- Cliquez sur OK dans la fenêtre DevilsPie-IGEL.
- Une nouvelle fenêtre s'ouvre avec les propriétés de la fenêtre de l'application.
- Le nom de la classe d'application
- le nom de l'application
- le titre de la fenêtre
- les dimensions et position de la fenêtre
- Manipulez votre fenêtre d'application pour la postionner et la dimensionner.
- Cliquez sur "Attraper les données de la fenêtre".
il est possible d'"Attraper les données" de la fenêtre plusieurs fois,
cela n'engendre pas de règles.
Elle sera engendrée à l'appui sur "Nouvelle Fenêtre OK".
Mais ce sera les dernières données qui serviront à la règle.
- Choisissez le bureau sur lequel vous voulez que l'application démarre.
1 = Bureau 1 2 = Bureau 2 etc ....
Le choix "Sur le Bureau où démarre l'application" laisse
votre application s'afficher sur le bureau actuel.
- Choisssez la consistance de la règle à appliquer : "is" ou "contains"
is : la correspondance avec le titre de la fenêtre doit être EXACTE (le titre est XXXXX).
contains : le titre de la fenêtre contient la chaine de caractère XXXXX.
Beaucoup de titres fenêtre d'application sont interactifs avec leur contenu.
Par exemple : "Lisez-moi - Mousepad" est le titre de ma fenêtre actuelle.
Donc si je veux contrôler cette fenêtre d'une manière générale.
(sans prendre en compte que ce soit lisez- moi ou un autre document)
Je choisi la consistance "contains"
ET je MODIFIE LE TITRE DE LA FENÊTRE en conséquence.
( j'enlève "Lisez-moi - " et je laisse "Mousepad" dans le champ de titre.)
Si, au contraire, je veux contrôler cette fenêtre précisément,
je choisi "is" et je laisse le titre intact.
- Ne changez pas le nom d'application ni la classe. IMPORTANT
- Une fois les réglages de dimension, position,
choix de bureau, choix de consistance
et changement ou non du titre faits,
- OUVREZ UNE NOUVELLE FENÊTRE
- Cliquez sur "Nouvelle Fenêtre OK".
- Les nouvelles informations apparaissent, recommencez la procédure.
Attraper les données.
Dimensionnement, Positionnement, choix Bureau,
choix Consistance et modification Titre.
Ouvrir une nouvelle fenêtre.
Cliquer sur "Nouvelle Fenêtre OK".
- Parcourez ainsi TOUTES les fenêtres de votre application.
- quand toutes les fenêtres ont été parcourues,
cliquez sur "Créer Règles" et laissez vous guider.
- Il se peut que l'application utilise un programme extérieur.
ce n'est pas grave, un fichier à son nom sera créé,
mais il faudra peut-être soit désactiver ce fichier (supprimer)
soit contrôler cette nouvelle application entièrement avec DevilsPie-IGEL.
Que Fait Exactement DevilsPie-IGEL :
- DevilsPie-IGEL considère la 1ère fenêtre d'une application
comme étant la fenêtre mère.
il prend les informations :
Classe d'application,
Nom d'application,
Titre de Fenêtre (modifié ou pas),
Géométrie,
Bureau et
Loi
pour créer la première règle du fichier de la forme :
-----------------------------------------------------------------------------------------
(if (and (is (window_class) "CLASSE APPLICATION") (is (application_name) "NOM APPLICATION"))
(set_workspace N) <--------------------selon le choix fait pour le bureau
(n'apparaît pas si aucun choix)
(if (LOI (window_name) "TITRE FENÊTRE (modifié ou pas") <-LOI est le choix
(geometry "DIM+POS")) entre "is" et "contains"
)
-----------------------------------------------------------------------------------------
- Ensuite si d'autres règles pour des fenêtres
ayant le même nom d'application sont trouvées (saisies par l'utilsateur)
il les rajoute au fichier de la façon suivante :
-----------------------------------------------------------------------------------------
(if (and (is (window_class) "CLASSE APPLICATION") (is (application_name) "NOM APPLICATION"))
(begin
(set_workspace N)
(if (LOI (window_name) "TITRE FENÊTRE (modifié ou pas")
(geometry "DIM+POS"))
(if (LOI2 (window_name) "TITRE FENÊTRE 2 (modifié ou pas") <---2ème règle
(set_workspace N2) <--------n'apparaît pas si
(geometry "DIM2+POS2")) pas de choix de Bureau
)
)
-----------------------------------------------------------------------------------------
Et ainsi de suite jusqu'à épuisement des règles à ajouter.
Ce qu'il faut comprendre dans cette structure,
c'est que l'application assujétie l'est tout d'abord par sa Classe et son Nom.
Ensuite le 1er choix de bureau assujéti aussi toute l'application,
il n'est pas nécéssaire de choisir le bureau pour toutes les fenêtres
à partir du moment où il a été choisi pour la 1ère fenêtre.
Certaines fenêtres ne sont pas séparables de leur fenêtres mère.
Par exemple, n'essayez pas de faire afficher les "préférences" d'une application
sur un autre bureau que celui de l'application.
CA NE MARCHE PAS !
Il est possible fabriquer des règles pour plusieurs applications en 1 fois.
Pour se faire, il suffit quand on a fini avec une application
d'ouvrir une nouvelle application et de cliquer sur "Nouvelle Fenêtre OK"
Et pas sur "Créer Règles" qui fini la prospection
et enregistre les fichiers règles précédemment saisis.
Un dossier ~/.devilspie/ds-igel est créé pour stocker
les règles construites avec DevilsPie-IGEL.
Si vous choisissez de redémarrer devilspie,
ce dossier sera vidé dans le dossier ~/.devilspie
(plus rien dans ~/.devilspie/ds-igel)
Si vous choisissez de ne pas démarrer avec les nouvelles règles,
les fichiers créés restent dans le dossier ~/.devilspie/ds-igel
Toutes les copies de fichiers se font avec "écrasement" en cas de fichier déjà exixtant.
Un message d'avertissemnt apparaît avant l'action de copie,
ce qui vous laisse la liberté sur les fichiers risquant d'être écrasés.
Devil's Pie Interface Graphique Extra Légère n'a pas la prétention
d'englober toutes les fonctionnalités de Devil's Pie.
Il est là surtout pour des règles simples, sans édition à la main.
Il est toujours possible d'utiliser Devil's Pie I.G.E.L
pour obtenir les informations de dimension et position
afin de créer soit même ses propres règles.
Fait par Tawal.
Vli,vlà,vlou
À la bonne heure et au plaisir ...
PS : une petite fonctionnalité non décrite dans le lisez-moi :
On peut se servir de ce script pour "redémarrer devilspie" après un changement de règles (edit à la mano ou autre).
Et ce sans dans déconnexion de session.
Une fois la règle modifiée, on ouvre Devil'sPie I.G.E.L., on clique sur "Sortie" directement et on a l'invite pour redémarrer devilspie.
Edit: Nouvelle Version !
Elle prend en charge les positionnements et dimensionnement prédéfinis (center, minimize, maximize et fullscreen).
Voici un fichier .ds crée à l'instant :
(if (and (is (window_class) "Xfburn") (is (application_name) "Xfburn"))
(begin
(set_workspace 2)
(if (is (window_name) "Xfburn")
(begin
(geometry "1077x214")
(minimize)
)
)
(if (is (window_name) "Préférences")
(begin
(set_workspace 2)
(geometry "775x400")
(center)
)
)
(if (is (window_name) "Répertoire temporaire")
(begin
(set_workspace 2)
(geometry "595x534")
(maximize)
)
)
(if (is (window_name) "À propos de Xfburn")
(begin
(set_workspace 2)
(geometry "355x230")
(center)
)
)
)
)
Et ça marche ! Malgré la configuration un peu loufoque !
Je pourrais même ajouter la loi "matches" ...
Je ne poste pas le script, ça n'a pas l'air d'intéresser ....
Edit2: Loi "matches" ajoutée ...
Edit3: Rajout des codes retour commandes 'cp' et 'mv', donc si on a un code retour non listé il faut regarder de coté là en 1er
Edit4: Un dernier fichier .ds généré par mon script (je ne l'aurais certainement pas fait à la main, j'aurais raté des fenêtres etc ...)
(if (and (is (window_class) "Gedit") (is (application_name) "gedit"))
(begin
(if (contains (window_name) "gedit")
(geometry "1290x920+-36+-31"))
(if (is (window_name) "Ouvrir")
(begin
(geometry "742x535")
(center)
)
)
(if (is (window_name) "Enregistrer sous")
(begin
(geometry "742x535")
(center)
)
)
(if (is (window_name) "Quick Open")
(begin
(geometry "450x300")
(center)
)
)
(if (is (window_name) "Rechercher et remplacer")
(begin
(geometry "582x223")
(center)
)
)
(if (is (window_name) "Find in Files")
(begin
(geometry "408x223")
(center)
)
)
(if (is (window_name) "Select a _folder")
(begin
(geometry "742x535")
(center)
)
)
(if (is (window_name) "Mode de coloration")
(begin
(geometry "477x513")
(center)
)
)
(if (is (window_name) "Vérifier l'orthographe")
(begin
(geometry "534x356")
(center)
)
)
(if (is (window_name) "Définir la langue")
(begin
(geometry "405x283")
(center)
)
)
(if (is (window_name) "Statistiques du document")
(begin
(geometry "434x263")
(center)
)
)
(if (is (window_name) "Préférences")
(begin
(geometry "559x528")
(center)
)
)
(if (is (window_name) "Choisissez la police de l’éditeur")
(begin
(geometry "424x480")
(center)
)
)
(if (is (window_name) "Insérer la date et l’heure")
(begin
(geometry "440x378")
(center)
)
)
(if (is (window_name) "À propos de Commentateur de code")
(begin
(geometry "424x332")
(center)
)
)
(if (is (window_name) "À propos de Complétion de mots")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Complétion de parenthèses")
(begin
(geometry "424x329")
(fullscreen)
)
)
(if (is (window_name) "À propos de Console Python")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Éditeur de jeu de couleurs")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Édition multiple")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Espaces intelligents")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Fournisseur de données Zeitgeist")
(begin
(geometry "471x329")
(center)
)
)
(if (is (window_name) "À propos de Fragments de code")
(begin
(geometry "429x329")
(center)
)
)
(if (is (window_name) "À propos de Git")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Indicateur d'espaces")
(begin
(geometry "424x346")
(center)
)
)
(if (is (window_name) "À propos de Insérer la date et l’heure")
(begin
(geometry "431x329")
(center)
)
)
(if (is (window_name) "À propos de Joindre/couper les lignes")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Ligne de commande")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Modificateurs")
(begin
(geometry "452x329")
(center)
)
)
(if (is (window_name) "À propos de Outils externes")
(begin
(geometry "424x329")
(center)
)
)
(if (contains (window_name) "À propos de Outils externes")
(begin
(geometry "434x353")
(center)
)
)
(if (is (window_name) "À propos de Ouverture rapide")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Panneau de l’explorateur de fichiers")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Recherche dans des fichiers")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Sélecteur de couleurs")
(begin
(geometry "499x349")
(center)
)
)
(if (is (window_name) "À propos de Signets")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Statistiques du document")
(begin
(geometry "463x329")
(center)
)
)
(if (is (window_name) "À propos de Surlignage rapide")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de SyncTeX")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Table de caractères")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Terminal intégré")
(begin
(geometry "424x329")
(center)
)
)
(if (is (window_name) "À propos de Translate")
(begin
(geometry "424x332")
(center)
)
)
(if (is (window_name) "À propos de Trier")
(begin
(geometry "424x249")
(center)
)
)
(if (is (window_name) "À propos de Vérificateur orthographique")
(begin
(geometry "424x249")
(center)
)
)
(if (is (window_name) "Color Scheme Editor")
(begin
(geometry "700x550")
(center)
)
)
(if (is (window_name) "Pick the foreground color")
(begin
(geometry "488x277")
(center)
)
)
(if (is (window_name) "À propos de gedit")
(begin
(geometry "503x380")
(center)
)
)
(if (contains (window_name) "Untitled window")
(begin
(geometry "561x167")
(center)
)
)
)
)
À bon entendeur ....
Edit: Tiens, en relisant mon fichier, je me suis rendu compte que j'ai mis une boite "À propos
qqchose" en
"fullscreen" !
Ça, c'est une erreur de saisie de ma part ! Comme quoi, il faut faire attention, sinon on fait n'importe quoi.
Allez, petite correction à la mano pour moi ...