====Configuration de TWM====
//[[http://forums.freebsd-fr.org/index.php?showtopic=1305 Article original]] de Marck sur le forum Tips de FreeBSD-fr.org//
Pourquoi twm? Pourquoi pas... il est souvent par défaut avec X et est donc le premier et seul wm dont on dispose après une installation "minimale" de X. Il convient donc pour les petites configurations et pour ceux qui veulent tester avant d'installer autre chose. Mais twm est peu pratique dans sa configuration d'origine. Voici les quelques astuces qui m'ont semblé vraiment nécessaires pour le rendre un peu plus convivial.
- Copiez le ficher de configuration par défaut comme fichier personnel:
spoutnik % cp /usr/X11R6/lib/X11/twm/system.twmrc ~/.twmrc
spoutnik % chmod 644 .twmrc##
- Puis éditez ce fichier personnel, pour y ajouter ces lignes:
%%# Pour que twm place de lui-même les fenêtres: RandomPlacement
Pour ajouter un bouton quitter à gauche de la barre de titre.
LeftTitleButton "target" = f.delete
Pour ajouter un bouton iconifier à droite de la barre de titre.
RightTitleButton "opendot" = f.iconify
Pour ajouter un bouton maximiser à droite de la barre de titre.
? cliquer deux fois pour démaximiser ?
RightTitleButton "icon" = f.fullzoom
Pour ouvrir un menu "Apps" avec un clic droit sur l'écran.
Button3 = : root : f.menu "apps"
Pour définir un menu "Apps".
menu "apps" { "Apps" f.title "Xcalc" f.exec "exec xcalc &" "Xclock" f.exec "exec xclock &" "" f.nop "Xedit" f.exec "exec xedit &" "" f.nop "Xterm W" f.exec "exec xterm &" "Xterm B" f.exec "exec xterm -rv &" }%%
Voici donc le .twmrc par défaut avec les lignes proposées ci-dessus: %%#
$Xorg: system.twmrc,v 1.3 2000/08/17 19:54:08 cpqbld Exp $
#
NoGrabServer RestartPreviousState DecorateTransients TitleFont "-adobe-helvetica-bold-r-normal---120------" ResizeFont "-adobe-helvetica-bold-r-normal---120------" MenuFont "-adobe-helvetica-bold-r-normal---120------" IconFont "-adobe-helvetica-bold-r-normal---100------" IconManagerFont "-adobe-helvetica-bold-r-normal---100---"
ClientBorderWidth
RandomPlacement LeftTitleButton "target" = f.delete RightTitleButton "opendot" = f.iconify RightTitleButton "icon" = f.fullzoom
Color { BorderColor "slategrey" DefaultBackground "rgb:2/a/9" DefaultForeground "gray85" TitleBackground "rgb:2/a/9" TitleForeground "gray85" MenuBackground "rgb:2/a/9" MenuForeground "gray85" MenuBorderColor "slategrey" MenuTitleBackground "gray70" MenuTitleForeground "rgb:2/a/9" IconBackground "rgb:2/a/9" IconForeground "gray85" IconBorderColor "gray85" IconManagerBackground "rgb:2/a/9" IconManagerForeground "gray85" }
#
Define some useful functions for motion-based actions.
# MoveDelta 3 Function "move-or-lower" { f.move f.deltastop f.lower } Function "move-or-raise" { f.move f.deltastop f.raise } Function "move-or-iconify" { f.move f.deltastop f.iconify }
#
Set some useful bindings. Sort of uwm-ish, sort of simple-button-ish
# Button1 = : root : f.menu "defops" Button3 = : root : f.menu "apps"
Button1 = m : window|icon : f.function "move-or-lower" Button2 = m : window|icon : f.iconify Button3 = m : window|icon : f.function "move-or-raise"
Button1 = : title : f.function "move-or-raise" Button2 = : title : f.raiselower
Button1 = : icon : f.function "move-or-iconify" Button2 = : icon : f.iconify
Button1 = : iconmgr : f.iconify Button2 = : iconmgr : f.iconify
#
And a menus with the usual things
# menu "defops" { "Twm" f.title "Iconify" f.iconify "Resize" f.resize "Move" f.move "Raise" f.raise "Lower" f.lower "" f.nop "Focus" f.focus "Unfocus" f.unfocus "Show Iconmgr" f.showiconmgr "Hide Iconmgr" f.hideiconmgr "" f.nop "Xterm" f.exec "exec xterm &" "" f.nop "Kill" f.destroy "Delete" f.delete "" f.nop "Restart" f.restart "Exit" f.quit }
menu "apps" { "Apps" f.title "Xcalc" f.exec "exec xcalc &" "Xclock" f.exec "exec xclock &" "" f.nop "Xedit" f.exec "exec xedit &" "" f.nop "Xterm W" f.exec "exec xterm &" "Xterm B" f.exec "exec xterm -rv &" }%%
Pour un fond d'écran un peu plus agréable, vous pouvez utiliser:
spoutnik % xsetroot -solid black ## (ou toute autre couleur standard: showrgb(1) vous donnera les noms reconnus).
Cette commande pourra être exécutée automatiquement à chaque début de session X en la placant dans votre ##~/.xinitrc##, par exemple.
Voilà ce menu n'est qu'un petit exemple avec des applications aussi souvent données en standard avec X. De très nombreux autres paramètres peuvent être définis et modifiés (options, fonctions, clics, touches, icones, couleurs... voyez sur internet et man twm) je n'ai voulu retenir ici que ce qui m'a semblé vraiment nécessaire par rapport au fichier de configuration par défaut.
Adapté par Francis
Last updated on Sat Jan 05 02:35:21 CET 2008