Xmonad et les tiling desktop

29/05/2009

On se l’accorde tous, Gnome ou KDE sont de très bon gestionnaires de bureau et Compiz (activation du bureau en 3D avec des effets en tout genre) est une merveille pour les yeux. Loin de moi l’idée de vouloir casser du sucre sur ces environnements. Appréciable pour la majeure partie des bureau utilisateur.

Mais je suis développeur, et administrateur Linux. Et la grande force de mon système d’exploitation préféré est de me permettre de choisir un autre environnement plus adapté à mes besoins et surtout de pouvoir le modifier comme je l’entend. C’est donc ainsi que je me suis retrouvé à utiliser un “tiling desktop” (bureau en mosaïque). Laissez moi vous montrer… et vous expliquer.

En premier lieu sachez que j’utilise quasiment tout le temps des terminaux (vous savez la fenêtre noir où l’on tape des commande, ce truc qui fait peur à tout novice) et je me suis rendu compte que la majeur partie du temps, ma main passe du clavier à la souris pour 2 principales raisons: -placer la fenêtre -redimensionner la fenêtre

La manière dont sont agencées les fenêtres n’est pas optimale pour ma manière de travailler si je suis sur gnome ou KDE. En fait, pour passer d’une fenêtre à l’autre, je dois faire ALT+TAB ce qui fait défiler les fenêtres. Les fenêtres ont d’ailleurs la fâcheuse habitude de passer les unes au dessus des autres.

Résultat des courses, en utilisant gnome-terminal je dois m’imposer d’utiliser des onglets de terminaux pour ne pas encombrer le bureau. Mais cela me gène fortement de ne pas avoir tous mes terminaux sous les yeux.

Les “tiling desktop” vont justement changer la manière de travailler. Il faut un petit temps d’adaptation mais en quelques minutes vous y trouverez vos repères. Il en existe plusieurs dont Xmonad, DWM ou encore WMii et awesome. Dans la quasi totalité des cas le principe reste le même: -une touche de clavier baptisée “mod” (par exemple CTRL, ALT ou la touche Super représentée par le logo de Microsoft) qui sert à tout les raccourcis -utilisation de terminaux -placement automatique en mosaïque ce qui empêche les fenêtres de se monter les unes sur les autres. -dmenu utilisé pour lancer rapidement une application

Ne vous attendez pas à avoir des décorations de fenêtre, c’est à dire des boutons de fermeture, maximisation, réduction… Le but d’un tiling desktop est justement de ne pas encombrer l’espace de ces choses qui ne servent pas forcément à une utilisation avancée du bureau.

Pas d’icônes, bien que vous puissiez certainement trouver une solution pour cela… mais est-ce bien une solution ? Si vous passez à un tiling desktop c’est justement pour vous passer au maximum de la souris.

Si j’ai choisi Xmonad, c’est pour sa qualité de librairie développée en //haskell//. Je vous avoues ne pas être un spécialiste mais j’ai assez rapidement compris comment modifier le fichier de configuration pour adapter Xmonad à mes besoins. J’ai aussi trouvé des dixaines d’exemples sur le wiki qui m’a permit de corriger quelques points “blocants” comme par exemple la gestion d’un clavier azerty.

La première fois que vous allez lancer Xmonad, en quittant le terminal qui vous montre l’aide, vous allez prendre peur de ne voir ni menu, ni icône, ni rien du tout en fait ! Ne prenez pas peur, c’est normal, c’est le fonctionnement attendu ! Et oui, tout vas se passer sur votre clavier.

Sitôt que vous utilisez un tiling desktop, vous devez apprendre quelques raccourcis. Au premier démarrage apparaît le manuel. Notez les raccourcis les plus importants. Ceux qu’il faut absolument garder en mémoire sont: -mod+shift+Entrée : création de terminal -mod+p : demnu => il suffit de commencer à taper le nom de l’application à exécuter et dmenu sélectionne automatiquement l’entrée correspondante.

Après cela, il faut apprendre à modifier l’agencement: -mod+k ou mod+j permettent de sélectionner la fenêtre précédente et suivante -mod+l ou mod+h modifient la taille des fenêtres (ou plutôt du conteneur)

Pour ces derniers raccourcis, regardez bien les touches utilisée: //hjkl// elle se trouvent à la suite les unes des autres, les deux au centre permettent de se déplacer, les deux au bords à redimensionner.

Reste un raccourcis bien sympathique: mod+Espace qui permet de changer l’agencement complet selon des algorithmes prédéfinis.

Enfin, mod+shift+j et mod+shift+k permettent de déplacer les fenêtres. Mod+shift+Q permet de quitter Xmonad.

Quand vous avez pris en main l’outil, vous allez vite vous rendre compte de son intérêt.

Notez tout de même que je ne conseille pas ce type de bureau aux débutants. Par contre, pour les amoureux du terminal qui aiment utiliser vim, irssi (pour discuter sur IRC) et se faire des environnement bien légers (parfait pour un eeepc ou un vieux PC) alors le tiling desktop fera votre bonheur.

Pour la forme, une petite capture décran s’impose:

J’utilise ici urxvt plutôt que xterm afin d’avoir de la transparence. un petit script qui me permet de voir l’état de ma RAM, de mes disques durs, Xclock sur le haut.

Après correction du fichier //.xmonad/xmonad.hs// j’ai put utilisé le clavier azerty ce qui m’a permis d’avoir les raccourcis pour changer de bureau (mod+1, mod+2…). J’ai aussi changé la touche “mod” pour correspondre à la touche “windows” communément appelée “Super” sur linux.

J’ai modifié aussi le raccourcis qui permet de modifier le nombre de fenêtre dans un conteneur. J’utilise mod+PageUp et mod+PageDown. Voici pour les français mon fichier xmonad.hs: xmonad.hs. **Surtout, pensez à installer rxvt-unicode ou urxvt avant d’utiliser mon fichier**. Placez le dans //~/.xmonad/.xmonad.hs// et pressez CTRL+Q pour recompiler le fichier si vous êtes déjà logué dans Xmonad.

Si vraiment Xmonad est trop complexe, pensez à awesome qui est un petit peu plus simple à modifier et donc l’agencement est plus “souple”.

Voilà, je vous souhaite de vous y plaire, car pour moi ce fut une révolution ;)

Ça peut vous intéresser aussi


Orange et Linux

Je venais de dire à un collègue dans la journée ...


The Sims 3 sur Linux

Faire tourner Les Sims 3 sur Linux ? Et oui,...


Optimisons un peu notre Linux en limitant les accès disques

Que vous ayez un SSD ou non, je pense que ...


Orange et Linux suite

Continuons dans mon fabuleux souci de connexion entre mes machines ...

Merci de m'aider à financer mes services

Si vous avez apprécié cet article, je vous serai reconnaissant de m'aider à me payer une petite bière :)

Si vous voulez en savoir plus sur l'utilisation de flattr sur mon blog, lisez cette page: Ayez pitié de moi

Commentaires

Ajouter un commentaire

Ajouter un commentaire

(*) Votre e-mail ne sera ni revendu, ni rendu public, ni utilisé pour vous proposer des mails commerciaux. Il n'est utilisé que pour vous contacter en cas de souci avec le contenu du commentaire, ou pour vous prévenir d'un nouveau commentaire si vous avez coché la case prévue à cet effet.