{{tag>gestionnaire_de_fenêtres brouillon}} ---- ====== JWM ====== ===== Introduction ===== **JWM** //(Joe's Window Manager)// est un gestionnaire de fenêtres pour le système X Window. **JWM** est écrit en C et peut être compilé en ne nécessitant que la bibliothèque Xlib. Il fournit un environnement graphique à la Windows 95. ===== Installation ===== **JWM** se trouve dans les [[:depots|dépots]] //Universe// (cf. documentation). Le paquet « jwm » permet de l'[[:gestionnaire_de_paquets|installer]]. ===== Configuration ===== Tout tient dans un unique fichier de configuration appelé jwmrc. Par défaut ce dernier est situé dans /etc/jwm. Pour plus de confort lors de la configuration je vous conseille de le copier dans votre dossier personnel sous le nom .jwmrc. cp /etc/jwm/jwmrc ~/.jwmrc Egalement, si jwm n'est pas proposé par l'écran de connexion, il est vraiment bien de taper dans le terminal: sudo cp /usr/share/jwm/xsessions/Jwm.desktop /usr/share/xsessions/Jwm.desktop Le fichier est codé en XML très facile a comprendre. Je vais essayer de « découper » le fichier le mieux possible. ==== Le menu ==== Il se situe dans la section "RootMenu" Voici le mien (créé juste pour l'exemple) : -*-fixed-*-r-*-*-10-*-*-*-*-*-*-* xterm firefox amsn rox xmms emacs Analysons tout ce bazar. D'abord la balise : elle admet plusieurs attributs : **label** : sera affiché en haut du menu si l'attribut **labeled** a la valeur "true", ce deuxième attribut est facultatif et s'il n'est pas indiqué sa valeur par défaut est "false". **height** définit la hauteur des lignes du menu. En utilisant la valeur Zéro elle s'adapte automatiquement à la taille des éléments. On comprend facilement les balises . Deux attributs : **icon** et **label** (nom de l'entrée) On tape dans la balise le nom de l'exécutable. Optionnellement on peut ajouter la balise **height** pour préciser la hauteur de la ligne du menu Un sous-menu est contenu dans la balise avec, la aussi, les attributs **icon** et **label**, ici encore l'attribut **height**, optionnel, spécifie la hauteur des items qui dépendent du sous menu. Je ne vous ferez pas l'injure de vous expliquer le rôle de la balise . La balise redémarre JWM. Enfin ferme la session, l'attribut **confirm**, s'il a pour valeur true, demande juste a l'utilisateur s'il veux vraiment quitter . ==== Les icônes ==== Il faut dire a JWM dans quels dossiers elles se trouvent. Cela se passe entre les balises **Icons** (très original...) Voici ma section Icons (vers la fin du fichier) /usr/share/icons/gnome/48x48/apps /usr/share/fvwm95/mini-icons/ /usr/X11R6/include/X11/pixmaps ==== Programmes au démarrage ==== Il est aussi possible de démarrer un certain nombre de programmes dès le démarrage de la session JWM. Cela est assez utile dans certains cas. Par exemple, on peut démarrer nautilus: nautilus ==== Les Barres du bas, du haut... ==== JWM permet de programmer soi-même des menus, mais aussi de créer des barres. Voici l'exemple de ma barre du bas: root:1 showdesktop xload -nolabel -bg black -fg blue -hl white xclock "x=0" et "y=-1" donnent les coordonnées de la barre. -1 c'est en bas, 1 en haut. On imagine qu'il est tout à fait possible de faire des barres latérales avec la coordonnée "x=1" ou "x=-1" avec y=0. Height c'est la hauteur de la barre. Cela dépend du type d'icone et ce que vous voulez y mettre. Il y a écrit "Menu" sur le bouton du menu root expliqué plus haut. L'autre bouton "R" est un bouton permettant de réduire toutes les fenêtres en même temps. Le "Pager" est le système qui permet de gérer les bureaux multiples, la "Tasklist" les tâches, le "Dock" permet à des applications système de s'afficher, le "swallow" permet d'intégrer des applications comme ici l'indicateur de charge du processeur. Voici un exemple de barre du haut (raccourcie): exec:gnome-system-monitor exec:gimp exec:scribus exec:nautilus exec:x-terminal-emulator exec:nautilus trash:/// Le code "autohide="true"" permet de masquer la barre quand le pointeur de la souris n'est pas dessus. Ensuite il y a toute une partie sur l'apparence des fenêtres et sur le comportement de JWM. Je continue quand je peux... A très bientôt ;) ===== Liens ===== * **(en)**[[https://joewing.net/projects/jwm/|Site officiel du logiciel]] * JWM sur Wikipédia [[wp>JWM|en anglais]] et [[wpfr>JWM|en français]] ---- //Contributeurs : ?// daypitoum, pwrdesc, reflets de vert