Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
devilspie [Le 01/12/2019, 10:39]
christophe c [Devil's Pie] gnome-shell
devilspie [Le 24/01/2024, 14:10] (Version actuelle)
141.227.26.230 [Devil's Pie]
Ligne 4: Ligne 4:
 ====== Devil'​s Pie ===== ====== Devil'​s Pie =====
  
-Devil'​s Pie est un logiciel ((de **Ross Burton**, [[http://​www.burtonini.com|Site de l'​auteur]],​ [[ross@burtonini.com|Contact]])) publié sous licence GNU GPL,  +Devil'​s Pie est un logiciel ((de **Ross Burton**, [[http://​www.burtonini.com|Site de l'​auteur]],​ [[ross@burtonini.com|Contact]])) publié sous licence GNU GPL, 
-qui permet de détecter les caractéristiques des fenêtres et de leur appliquer des règles de comportement. Il permet donc d'​ouvrir une fenêtre sur un bureau spécifique et / ou de lui définir une option d'​affichage (taille de la fenêtre, transparence,​ focus, minimisation ...).\\ +qui permet de détecter les caractéristiques des fenêtres et de leur appliquer des règles de comportement. Il permet donc d'​ouvrir une fenêtre sur un bureau spécifique et / ou de lui définir une option d'​affichage (taille de la fenêtre, transparence,​ focus, minimisation ...).
 Une fois paramétré pour un logiciel donné, Devil'​s Pie peut s'​oublier (il doit cependant être lancé en mémoire au démarrage) : on se contente de lancer le programme sur lequel on souhaite une action, et celle-ci s'​applique de façon totalement transparente. Une fois paramétré pour un logiciel donné, Devil'​s Pie peut s'​oublier (il doit cependant être lancé en mémoire au démarrage) : on se contente de lancer le programme sur lequel on souhaite une action, et celle-ci s'​applique de façon totalement transparente.
  
-Devil'​s Pie marche normalement avec n'​importe quel [[:​gestionnaire de fenêtres]] (xfwm, metacity, compiz ...) X11, mais PAS avec [[wayland|Wayland]]. Devilspie ne fonctionne donc pas sous [[gnome-shell|Gnome-Shell]] pour Wayland+Devil'​s Pie marche normalement avec n'​importe quel [[:​gestionnaire de fenêtres]] (xfwm, metacity, compiz ...) X11, mais :!: PAS avec [[wayland|Wayland]]. Devilspie ne fonctionne donc pas sous [[gnome-shell|Gnome-Shell]] pour Wayland ​(il faut alors utiliser l'​extension gnome-shell ​[[https://extensions.gnome.org/extension/16/​auto-move-windows/|auto-move-windows]]) :!:.
- +
-<​note>​Il existe une version avec interface graphique pour créer les règles de devilspie : [[http://code.google.com/p/gdevilspie/|gdevilspie]]. Ce logiciel était dans les dépôts jusqu'​à la version 17.04 de Ubuntu, mais en a disparu depuis, faute de maintenance.</​note>​+
  
 <note Important>​Cet article porte sur **Devilspie**,​ mais il existe également un fork de Devilspie, nommé [[http://​www.nongnu.org/​devilspie2/​|Devilspie2]],​ qui se configure différemment,​ via des scripts Lua simples. __Attention à ne pas les confondre__.</​note>​ <note Important>​Cet article porte sur **Devilspie**,​ mais il existe également un fork de Devilspie, nommé [[http://​www.nongnu.org/​devilspie2/​|Devilspie2]],​ qui se configure différemment,​ via des scripts Lua simples. __Attention à ne pas les confondre__.</​note>​
Ligne 17: Ligne 15:
 [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​devilspie]]**. [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​devilspie]]**.
  
-Pour que Devilspie soit actif à chaque démarrage, il faudra ajouter  +Pour que Devilspie soit actif à chaque démarrage, il faudra ajouter 
-<​code>​devilspie</​code> ​aux applications [[:​tutoriel:​application_demarrage|démarrées automatiquement]] ​à votre session.+<​code>​devilspie</​code> ​dans la liste des applications [[:​tutoriel:​application_demarrage|démarrées automatiquement]] ​par votre session.
  
 ===== Configuration manuelle simple ​ ===== ===== Configuration manuelle simple ​ =====
 L'​utilisation la plus courante de devilspie, c'est d'​affecter un logiciel à un bureau spécifique,​ ou de positionner sa fenêtre (mode "​minimisé",​ centré, en haut à gauche, ...). Pour ce faire : L'​utilisation la plus courante de devilspie, c'est d'​affecter un logiciel à un bureau spécifique,​ ou de positionner sa fenêtre (mode "​minimisé",​ centré, en haut à gauche, ...). Pour ce faire :
  
-  * Créer un [[:​fichier_cache|répertoire caché]] **/​.devilspie** dans votre //Dossier Personnel//​. \\ :!: Si les fichiers de règles ne sont pas placés dans le répertoire **~/​.devilspie** mais dans  **/​etc/​devilspie**,​ les règles s'​appliqueront alors à **tous** les utilisateurs. Mais les règles devront alors être manipulées en mode [[:​sudo|administrateur]]. :!: +  * Créer un [[:​fichier_cache|répertoire caché]] **/​.devilspie** dans votre //Dossier Personnel// ​(si vous préférez le terminal : **mkdir ~/​.devilspie)**. \\ :!: Si les fichiers de règles ne sont pas placés dans le répertoire **~/​.devilspie** mais dans  **/​etc/​devilspie**,​ les règles s'​appliqueront alors à **tous** les utilisateurs. Mais les règles devront alors être manipulées en mode [[:​sudo|administrateur]]. :!: 
-  * Dans ce répertoire caché, créer un fichier par logiciel qu'on souhaite manipuler. Le fichier est un fichier texte avec un extension **.ds** ​ Le nom n'a pas d'​importance,​ mais il est logique de donner le nom du programme manipulé. Par exemple **Thunderbird.ds**.+  * Dans ce répertoire caché, créer ​avec un éditeur de texte quelconque ([[gedit|gedit]],​ [[mousepad|mousepad]],​ [[nano|nano]],​ ...) un fichier par logiciel qu'on souhaite manipuler. Le fichier est un fichier texte avec un extension **.ds** ​ Le nom n'a pas d'​importance,​ mais il est logique de donner le nom du programme manipulé. Par exemple **Thunderbird.ds**.
   * À l'​intérieur du fichier, **on colle les commandes** pour engendrer le comportement souhaité. Voir les exemple ci-dessous.   * À l'​intérieur du fichier, **on colle les commandes** pour engendrer le comportement souhaité. Voir les exemple ci-dessous.
  
Ligne 32: Ligne 30:
  
 <​file>​ <​file>​
-(if +(if
   (is (application_name) "​Thunderbird"​)   (is (application_name) "​Thunderbird"​)
   (set_workspace 3)   (set_workspace 3)
Ligne 41: Ligne 39:
  
 <​file>​ <​file>​
-(if +(if
   (is (application_name) "​Thunderbird"​)   (is (application_name) "​Thunderbird"​)
   (minimize)   (minimize)
Ligne 51: Ligne 49:
  
 <​file>​ <​file>​
-(if +(if
   (is (application_name) "​Thunderbird"​)   (is (application_name) "​Thunderbird"​)
   (geometry "​+1+0"​)   (geometry "​+1+0"​)
Ligne 63: Ligne 61:
  
 <​file>​ <​file>​
-(if +(if
   (is (application_name) "​Thunderbird"​)   (is (application_name) "​Thunderbird"​)
   (geometry "​1200x1150+1+0"​)   (geometry "​1200x1150+1+0"​)
Ligne 73: Ligne 71:
  
 <​file>​ <​file>​
-(if +(if
   (is (application_name) "​Thunderbird"​) ​   (is (application_name) "​Thunderbird"​) ​
   (begin (set_workspace 3) (minimize) )   (begin (set_workspace 3) (minimize) )
Ligne 93: Ligne 91:
 (begin (begin
  
-  (if +  (if
     (is (application_name) "​Thunderbird"​) ​     (is (application_name) "​Thunderbird"​) ​
     (set_workspace 3)     (set_workspace 3)
   )   )
  
-  (if +  (if
    (is (application_name) "​gmusicbrowser"​)    (is (application_name) "​gmusicbrowser"​)
       (begin (minimize) (set_workspace 2) )       (begin (minimize) (set_workspace 2) )
   )   )
  
-  (if +  (if
     (is (application_name) "​Firefox"​)     (is (application_name) "​Firefox"​)
     (geometry "​1200x1150+1+0"​)     (geometry "​1200x1150+1+0"​)
Ligne 114: Ligne 112:
 En fonction de votre besoin, créez le nombre de fichier nécessaire (1 fichier par programme, ou un fichier global) et adaptez le **nom du programme** et le N° de bureau (**set_workspace**) qu'on trouve dans les exemples précédents. En fonction de votre besoin, créez le nombre de fichier nécessaire (1 fichier par programme, ou un fichier global) et adaptez le **nom du programme** et le N° de bureau (**set_workspace**) qu'on trouve dans les exemples précédents.
  
-Une fois un fichier de paramétrage créé, il faut démarrer ​**devilspie** pour que cela fonctionne :+ 
 +__**Une fois un fichier de paramétrage créé, il faut démarrer devilspie pour que cela fonctionne :**__
   * __ponctuellement__ : ouvrir une invite de commande via alt+F2, et y taper **devilspie**.   * __ponctuellement__ : ouvrir une invite de commande via alt+F2, et y taper **devilspie**.
-  * __Démarrage automatique__ ​+  * __Paramétrer un démarrage automatique via votre interface graphique__ ​:
      - dans XFCE : "​gestionnaire de paramètre > session et démarrage > démarrage automatique d'​application > ajouter" ​ ;       - dans XFCE : "​gestionnaire de paramètre > session et démarrage > démarrage automatique d'​application > ajouter" ​ ; 
      - dans Ubuntu gnome : "​Applications > Applications au démarrage > ajouter"​      - dans Ubuntu gnome : "​Applications > Applications au démarrage > ajouter"​
      * Puis dans la zone "​**commande**",​ ajouter la commande "​**devilspie**"​ (Devilspie se lancera alors à chaque démarrage de votre session Ubuntu).      * Puis dans la zone "​**commande**",​ ajouter la commande "​**devilspie**"​ (Devilspie se lancera alors à chaque démarrage de votre session Ubuntu).
 +  * __Paramétrer un démarrage automatique via le terminal__ :
 +<​code>​ln -s -f /​usr/​share/​applications/​devilspie.desktop ~/​.config/​autostart/​devilspie.desktop</​code>​
 +Paramétrer votre démarrage automatique en mode graphique ou en mode texte est équivalent,​ mais ne faite pas les 2 méthodes à la fois.
  
-3 remarques importantes :+__**3 remarques importantes :**__
   * Il ne faut pas faire de faute dans le nom du logiciel, ou cela ne marchera pas.   * Il ne faut pas faire de faute dans le nom du logiciel, ou cela ne marchera pas.
   * Les noms de programmes sont sensibles à la casse : **F**irefox marche, mais pas firefox (sans majuscule). Certains logiciels demandent une majuscule (**F**irefox),​ et d'​autres non (**g**musicbrowser).   * Les noms de programmes sont sensibles à la casse : **F**irefox marche, mais pas firefox (sans majuscule). Certains logiciels demandent une majuscule (**F**irefox),​ et d'​autres non (**g**musicbrowser).
Ligne 136: Ligne 138:
 <​file>​ <​file>​
 ; ceci est un commentaire ; ceci est un commentaire
-( if +( if
   ( is ( application_name ) "​Thunderbird"​ )   ( is ( application_name ) "​Thunderbird"​ )
   ( set_workspace 3 )   ( set_workspace 3 )
Ligne 182: Ligne 184:
 <​file>​ <​file>​
 ; Duplique la fenêtre Gedit sur chaque bureau ; Duplique la fenêtre Gedit sur chaque bureau
-( if +( if
   ( is ( application_name ) "​Gedit"​ )   ( is ( application_name ) "​Gedit"​ )
   ( pin )   ( pin )
Ligne 194: Ligne 196:
  
   * une simple action (elle s'​applique alors à toutes les fenêtres) : **//​(debug)//​** ou   * une simple action (elle s'​applique alors à toutes les fenêtres) : **//​(debug)//​** ou
-  * une condition : **//(if (condition) (action))//​** : si la condition est vraie alors l'​action est réalisée par devilspie.+  * une condition : **//​(if(condition) (action))//​** : si la condition est vraie alors l'​action est réalisée par devilspie.
  
-//(if (is (application_name) "​gThumb"​) (maximize))//​+//(if(is (application_name) "​gThumb"​) (maximize))//​
 (si l'​application qui ouvre la fenêtre est gThumb alors devilspie va maximiser la fenêtre). (si l'​application qui ouvre la fenêtre est gThumb alors devilspie va maximiser la fenêtre).
  
Ligne 215: Ligne 217:
 De la même façon, on peut faire appliquer plusieurs actions en faisant débuter la liste par **begin** : De la même façon, on peut faire appliquer plusieurs actions en faisant débuter la liste par **begin** :
  
-//(if (is (application_name) "​gThumb"​) (begin (maximize) (set_workspace 4)))//+//(if(is (application_name) "​gThumb"​) (begin (maximize) (set_workspace 4)))//
  
 Quand une action comporte un argument l'​ensemble doit être entre parenthèses. Quand une action comporte un argument l'​ensemble doit être entre parenthèses.
Ligne 271: Ligne 273:
 pour un bureau de 800x600 compiz le considère comme un bureau de 3200x600, donc si je veux ouvrir mon application sur le second bureau (geometry "​800x600+800+0"​).</​note>​ pour un bureau de 800x600 compiz le considère comme un bureau de 3200x600, donc si je veux ouvrir mon application sur le second bureau (geometry "​800x600+800+0"​).</​note>​
  
-===== Problèmes connus ===== 
- 
-Si l'​application graphique ne se lance pas, [[:​tutoriel:​comment_modifier_un_fichier|ouvrez]] avec les [[:​sudo|droits d'​administrateur]] le fichier **/​usr/​bin/​gdevilspie**.\\ 
-Commentez ((ajouter un # au début de ligne)) la ligne suivante: 
-<​file>#​ self.UpdateAutostartStatus()</​file>​ 
-Enregistrer le fichier et relancer gdevilpsie. (Merci à [[http://​community.linuxmint.com/​user/​view/​73879|hrvooje]] de la communauté de Linux Mint) 
  
-Un changement de paramétrage n'est pris en compte qu'​après un redémarrage de devilspie. Le plus simple est de redémarrer la session. 
    
 ===== Liens ===== ===== Liens =====
  • devilspie.1575193177.txt.gz
  • Dernière modification: Le 01/12/2019, 10:39
  • par christophe c