Common Lisp FullScreen Window Manager
Common Lisp FullScreen Window Manager (abrĂ©gĂ© CLFSWM) est un gestionnaire de fenĂȘtres pour X Window System Ă©crit entiĂšrement en Common Lisp qui a pour but de se faire oublier en prĂ©sentant les fenĂȘtres d'applications en plein Ă©cran sans dĂ©coration ni fioriture. Il est basĂ© sur (en) tinywm et stumpwm.
DerniĂšre version | 1212 |
---|---|
Type | Gestionnaire de fenĂȘtres pour X Window System |
Licence | GNU GPL |
Site web | common-lisp.net/project/clfswm/ |

C'est un logiciel libre distribué selon les termes de la licence publique générale GNU.
CLFSWM est extrĂȘmement dynamique : par dĂ©faut il n'y a qu'un cadre. Les autres cadres sont ajoutĂ©s au fur et Ă mesure suivant les besoins. Un cadre peut contenir des fenĂȘtres ou d'autres cadres. Une fenĂȘtre peut ĂȘtre prĂ©sente dans plusieurs cadres. Ce qui permet diffĂ©rentes vue des mĂȘmes fenĂȘtres.
CLFSWM n'est pas Ă proprement parler un gestionnaire de fenĂȘtres par pavage puisque les fenĂȘtres sont la plupart du temps maximisĂ©es mais la possibilitĂ© de les mettre en pavage (tiler) est prĂ©sente. De plus, une fenĂȘtre peut ĂȘtre flottante ou prise en charge par son cadre (maximisĂ©e, pavĂ©e...).
DĂ©tails
CLFSWM n'est constituĂ© que de cadres ou de fenĂȘtres d'applications. L'Ă©cran est constituĂ© d'un cadre principal et de ses enfants. Chaque cadre peut contenir des fenĂȘtres ou d'autres cadres. Le cadre principal est maximisĂ© Ă l'Ă©cran sans dĂ©coration.
Chaque cadre peut arranger ses enfants de maniĂšres diffĂ©rentes : les uns derriĂšre les autres (Ă la Ion), en pavĂ©, en colonnes avec une fenĂȘtre principale (Ă la larswm).
Un agencement spĂ©cial pour le GIMP est aussi prĂ©sent : les fenĂȘtres en colonnes avec une fenĂȘtre principale et un focus qui suit la souris.
Chaque cadre peut avoir une gestion du focus de la souris différent : clic pour avoir le focus, le focus suit la souris (sloppy focus), le focus suit la souris de maniÚre stricte (seulement pour le cadre courant), la souris sélectionne le cadre en passant dessus.
De plus chaque cadre peut avoir (en) un hook associĂ© Ă la crĂ©ation d'une fenĂȘtre pour lui indiquer ce qu'il doit faire de la nouvelle fenĂȘtre : l'absorber, l'ignorer ou la placer dans un autre cadre...
Utiliser CLFSWM est comme naviguer dans un arbre de cadres et de fenĂȘtres. Il suffit d'entrer dans un enfant (cadre ou fenĂȘtre) pour le maximiser.
Par exemple, les touches par défaut pour naviguer dans CLFSWM sont :
- Alt-Tab : circule à travers les enfants du cadre sélectionné ;
- Alt-Droite/Gauche : circule Ă travers les frĂšres du cadre sĂ©lectionnĂ©. C'est comme circuler entre diffĂ©rents bureaux pour un gestionnaire de fenĂȘtre plus conventionnel ;
- Alt-Haut : sélectionne le premier enfant du cadre courant ;
- Alt-Bas : sélectionne le parent de l'enfant courant ;
- Alt-Entrer : entre dans l'enfant courant et le maximise Ă l'Ă©cran;
- Alt+Shift-Entrer : sort de l'enfant courant et maximise son parent.
CLFSWM utilise deux modes. Le mode principal avec trĂšs peu de raccourcis pour Ă©viter les collisions avec les autres programmes. Et un second mode avec (en) beaucoup plus de raccourcis qui permettent de gĂ©rer les cadres et les fenĂȘtres, le tout se faisant uniquement au clavier ou Ă l'aide de la souris.
De plus, beaucoup de fonctions sont accessibles par un (en) systĂšme de menu qui Ă©vite de retenir trop de raccourcis clavier.
Les (en) coins de l'écran sont actifs dans CLFSWM. Ce qui permet d'avoir un Exposé comme dans Mac OS X en cliquant dans le coin en bas à droite ou un clavier virtuel en cliquant dans le coin en haut à droite ou un terminal à la Quake console en cliquant en haut à gauche, etc.
CLFSWM étant écrit en Common Lisp, le fichier de configuration est lui aussi en Common Lisp. En fait, on peut voir CLFSWM comme un gros fichier de configuration autour de quelques fonctions de la Xlib. Un systÚme de hook est présent mais tout est modifiable via le fichier de configuration, il suffit de regarder le code source et de redéfinir la/les fonction(s) voulue(s).
Notes et références
Liens externes
- (en) Site officiel