OBSD4* : wiki

cwm (gestionnaire de fenêtres)

Description

cwm est un gestionnaire de fenêtres, léger et efficace, présent par défaut dans OpenBSD.

Utilisation

Si vous utilisez le gestionnaire de connexion xenodm, présent par défaut lui-aussi, vous pouvez démarrer cwm en l'appelant dans le fichier ~/.xsession :

xsetroot -solid steelblue &
# feh --bg-scale /Images/background.jpg
cwm

La première ligne permet de définir une couleur de fond. Vous pouvez la remplacer par la seconde actuellement commentée afin de définir un fond d'écran à partir d'une image.

Prise en main

cwm peut se contrôler aussi bien avec le clavier que la souris.

Par la suite, nous utiliserons les mêmes abréviations que dans le fichier de configuration, à savoir :

  • C : Ctrl
  • M : Alt
  • S : Shift
  • 4 : Touche “windows”

Pour déplacer une fenêtre, il faut maintenir M appuyé puis glisser-déposer avec la souris. Pour la redimensionner, c'est avec un clic-milieu. Un clic-gauche sur le bureau vous affiche la liste des fenêtres ouverts. Un clic-milieu affiche la liste des groupes de fenêtres (sortes d'espace de travail). Un clic-droit affiche le menu des applications que vous aurez configuré dans le fichier de configuration.

Les raccourcis claviers par défaut sont (non-exhaustif) :

  • M-? : invite de commande pour lancer un programme.
  • CM-Entrée : ouvre un terminal.
  • CM-Suppr : verrouille la session.
  • M-Tab : circule entre les fenêtres.
  • M-/ : recherche une fenêtre. Appuyez ensuite sur C-a pour les lister toutes.
  • CM-x : ferme la fenêtre.
  • CM-f : met la fenêtre en plein écran.
  • CM-=, CMS-=, CM-m : respectivement, maximise la fenêtre verticalement, horizontalement et totalement.
  • CMS-r : relance cwm
  • CMS-q : quitte cwm

Configuration

Fichier : ''~/.cwmrc''

La configuration de cwm se déroule en éditant un fichier .cwmrc dans votre dossier personnel : ~/.cwmrc

Vous pouvez y définir notamment :

Apparence

borderwidth 2                  # Épaisseur des bordures
color activeborder "#2aa198"   # Couleur des bordures des fenêtres sélectionnées
color inactiveborder "002B36"  # Couleur des bordures si la fenêtre est inactive

gap 20 0 0 0                   # je souhaite avoir une marge en haut de l'écran
                               # de 20 pixels

# Configuration de l'apparence des menus
color font           "#839496" # Couleur du texte
color selfont        "#eee"    # Couleur du texte sélectionnée
color menubg         "#002b36" # Couleur d'arrière plan
color menufg         "#2aa198" # Couleur de bordure des éléments sélectionnées
fontname "Hack:pixelsize=14"   # La police des menus

Commandes personnalisées

# Les commandes terminal et de verouillage.
# Autant utiliser les défauts d'OpenBSD
command term st
command lock "slock" # activer avec C-M-Suppr
command "   Web   " firefox
command "   Mail  " thunderbird
command "  Files  " pcmanfm
command ">> next  " "mpc next"
command "<< prev  " "mpc prev"
command "|> toggle" "mpc toggle"
command "   top   " "xterm -e top"

Groupes automatiques

Vous pouvez mettre des fenêtres directement dans certains groupes pour facilement vous y retrouver :

# Groupes, à retrouver avec xprop
# autogroup n "name,class"
autogroup 2 "Navigator,Firefox"
autogroup 3 "mutt,mutt"
autogroup 3 "mutt,st-256color"

Raccourcis clavier

Les groupes facilement accessibles pour un clavier azerty

Pour voir un groupe : M-n où n est le chiffre correspondant au groupe. Sur un clavier azerty, c'est &é“'(…

Pour envoyer une fenêtre dans un groupe, c'est MS-n.

bind-key M-ampersand        group-only-1
bind-key M-eacute           group-only-2
bind-key M-quotedbl         group-only-3
bind-key M-apostrophe       group-only-4
bind-key M-parenleft        group-only-5
bind-key M-minus            group-only-6
bind-key M-egrave           group-only-7
bind-key M-underscore       group-only-8
bind-key M-ccedilla         group-only-9
bind-key M-agrave           group-toggle-all

# Déplacer les fenêtres dans un groupe
bind-key MS-ampersand        window-movetogroup-1
bind-key MS-eacute           window-movetogroup-2
bind-key MS-quotedbl         window-movetogroup-3
bind-key MS-apostrophe       window-movetogroup-4
bind-key MS-parenleft        window-movetogroup-5
bind-key MS-minus            window-movetogroup-6
bind-key MS-egrave           window-movetogroup-7
bind-key MS-underscore       window-movetogroup-8
bind-key MS-ccedilla         window-movetogroup-9
Agencement en tuile

Ces raccourcis permettent d'agencer très rapidement les fenêtres en tuile pour occuper tout l'espace disponible (comme dwm)

# Du tiling !!!
bind-key M-t window-vtile
bind-key M-Return window-vtile
bind-key MS-t window-htile
Raccourcis clavier personnels

Vous pouvez lancer des commandes avec un raccourci clavier. Par exemple ceci ouvre firefox :

bind-key M-w firefox

Redimensionnement avec clic-droit

Pour redimensionner avec le bouton droit de la souris, on peut désactiver le raccourci précédent :

# Souris
# Désactive le redimensionnement avec le clic milieu
unbind-mouse M-2
# Alt+ clic droit redimensionne
bind-mouse M-3 window-resize

Liens et références