dwm

De Disposition de clavier bépo


Brève description de dwm

dwm est un gestionnaire de fenêtre minimaliste en tiling. Il gère néanmoins les fenêtres flottantes également. Il est écrit en 2000 lignes de code avec pour uniques dépendances le serveur graphique X, make et gcc pour la compilation. Ce projet utilise dmenu pour lancer les applications de façon

Dans ces circonstances, pas d'interface graphique de configuration, ni même de fichier de configuration en texte. Pour configurer/personnaliser dwm, il est nécessaire de modifier le code et de recompiler. Les sources sont composées de plusieurs fichiers :

  • config.h, variables pour l'apparence générale, les raccourcis clavier, les
  • dwm.c, cœur du code
  • Makefile, qui permet de lancer la compilation

Les deux façons « faciles » de configurer dwm sont :

  • modifier les variables existantes dans le fichier config.h
  • appliquer des patches pour ajouter des fonctionnalités supplémentaires (http://dwm.suckless.org/patches/)

Spécificités liées au BÉPO

L'utilisation de dwm repose sur le concept de « tag » (très proche de celui de « bureau virtuel » et sur l'utilisation intensive de raccourcis clavier pour changer la disposition des fenêtres affichées. Les raccourcis par défaut sont très proches de ceux de vim en « hardcodées » QWERTY. L'utilisation de la disposition BÉPO pose particulièrement problème avec les touches h, j, k et l qui permettent de naviguer entre les fenêtres et de les redimensionner. De même, l'accès aux chiffres avec la touche Maj casse tous les raccourcis par défaut (il en est de même pour le clavier AZERTY). Il existe un patch pour régler ce soucis en azerty azertykey.

Recommendations pour utilisation de dwm avec la disposition BÉPO

Pour contourner les soucis liés à la ligne des chiffres, ainsi que les raccourcis type vim, et faire en sorte que les raccourcis clavier reste identique même en cas de disposition de clavier multiple, on peut appliquer le patche keycode. Ce patche modifie la façon avec laquelle dwm gère l'interaction avec le clavier, pour considérer les « keycodes » plutôt que les caractères.

Ceci rend la lecture et la modification de la section raccourci clavier plus laborieuse. Pour obtenir les keycodes liés à une touche du clavier, on pourra utiliser [xev] et observer l'activité sur la sortie standard après l'appui sur les touches en question.

Sélection de patches

  • systray ajoute une zone de notification
  • pertag rend l'organisation de fenêtre indépendante selon le tag
  • autostart permet d'exécuter un autostart.sh en début de session
  • bottom_stack ajoute une organisation de pile de fenêtre verticale
  • keycode dont le comportement a été documenté plus haut

NB: L'ordre d'application de patches est très important Il faut appliquer les patches compliqués avant les autres, sinon patch ne retrouve pas ses petits. Pour cette sélection il faut appliquer systray avant pertag, ensuite l'ordre n'a plus d'importance.

Liens divers

Page du projet

http://dwm.suckless.org/ : de nombreuses ressources sont disponibles, faq, tutoriel, patches

Autres liens utiles