Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
jwm [Le 23/06/2009, 08:30] – cppier->copier 213.95.41.13 | jwm [Le 07/01/2010, 02:17] (Version actuelle) – Reflets de vert |
---|
| {{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 <code>/etc/jwm</code>. |
| Pour plus de confort lors de la configuration je vous conseille de le copier dans votre dossier personnel sous le nom <code>.jwmrc</code>. |
| <code>cp /etc/jwm/jwmrc ~/.jwmrc</code> |
| |
| Egalement, si jwm n'est pas proposé par l'écran de connexion, il est vraiment bien de taper dans le terminal: |
| <code>sudo cp /usr/share/jwm/xsessions/Jwm.desktop /usr/share/xsessions/Jwm.desktop</code> |
| |
| 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) : |
| <code><RootMenu label="Debian" labeled="false" height="0"> |
| |
| <Font>-*-fixed-*-r-*-*-10-*-*-*-*-*-*-*</Font> |
| <Program icon="xterm.xpm" label="Terminal">xterm</Program> |
| |
| <!-- Addititional Menu attributes (height, labeled) --> |
| <Menu icon="folder.xpm" label="Applications"> |
| <Program icon="firefox.png" label="Firefox" height="32">firefox</Program> |
| <Program icon="amsn.xpm" label="aMSN">amsn</Program> |
| <Program icon="mini-filemgr.xpm" label="Rox">rox</Program> |
| <Program icon="xmms.xpm" label="XMMS">xmms</Program> |
| <Program icon="gedit.png" label="Edit GFG">emacs</Program> |
| |
| </Menu icon="shutdown24.xpm" label="SESSION" height="32"> |
| |
| <Separator/> |
| |
| <Restart icon="mini.start.xpm" /> |
| <Exit icon="mini.exit.xpm" confirm="false" /> |
| </RootMenu> </code> |
| Analysons tout ce bazar. |
| D'abord la balise <RootMenu> : 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 <Program>. 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 <Menu> 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 <Separator>. |
| |
| La balise <Restart> redémarre JWM. |
| Enfin <Exit> 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) <code> <Icons> |
| <IconPath>/usr/share/icons/gnome/48x48/apps</IconPath> |
| <IconPath>/usr/share/fvwm95/mini-icons/</IconPath> |
| <IconPath>/usr/X11R6/include/X11/pixmaps</IconPath> |
| </Icons></code> |
| |
| ==== 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: |
| <code><StartupCommand> |
| nautilus |
| </StartupCommand></code> |
| |
| ==== 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: |
| <code><Tray x="0" y="-1" height="32"> |
| |
| <TrayButton label="Menu">root:1</TrayButton> |
| |
| <TrayButton label="R">showdesktop</TrayButton> |
| |
| <Pager/> |
| |
| <TaskList/> |
| |
| <Dock/> |
| |
| <Swallow name="xload" width="64"> |
| xload -nolabel -bg black -fg blue -hl white |
| </Swallow> |
| |
| <Clock format="%H:%M">xclock</Clock> |
| |
| </Tray></code> |
| "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): |
| <code><Tray x="0" y="1" height="36" autohide="true"> |
| |
| <TrayButton icon="/usr/share/icons/hicolor/32x32/apps/gnome-cpu-frequency-applet.png">exec:gnome-system-monitor</TrayButton> |
| <TrayButton icon="/usr/share/icons/hicolor/32x32/apps/gimp.png">exec:gimp</TrayButton> |
| <TrayButton icon="/usr/share/icons/hicolor/32x32/apps/tomboy.png">exec:scribus</TrayButton> |
| <TrayButton icon="/usr/share/icons/hicolor/32x32/apps/nautilus.png">exec:nautilus</TrayButton> |
| <TrayButton icon="/usr/share/icons/oxygen/32x32/apps/utilities-terminal.png">exec:x-terminal-emulator</TrayButton> |
| <TrayButton icon="/usr/share/icons/oxygen/32x32/places/user-trash.png">exec:nautilus trash:///</TrayButton> |
| </Tray></code> |
| 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 ===== |
| |
| * Site officiel : http://www.joewing.net/programs/jwm/ |
| * JWM sur Wikipédia [[wp>JWM|en anglais]] et [[wpfr>JWM|en français]] |
| |
| ---- |
| |
| //Contributeurs : ?// |
| daypitoum, pwrdesc, reflets de vert |