Content-type: text/html
Fluxbox fournit des décorations de fenêtres configurables, un menu racine pour lancer des applications et une barre d'outils qui indique le nom de l'espace de travail courant, le nom de l'application disposant du clavier, et l'heure courante. Il dispose aussi d'un menu pour gérer les espaces de travail (ajout ou suppression). La « fente » (NDT. slit) est utilisable pour accrocher de petites applications, comme la plupart des outils-bb (NDT. bbtools), par exemple.
Fluxbox réduit les fenêtres en icônes et les place sur la barre d'outils, et en outre ajoute les noms des applications réduites au sous-menu « Icônes » du menu « Bureaux ». Un clic suffit à les faire réapparaître. Un double clic sur la barre de titre d'une fenêtre la rend ombrée (c'est-à-dire que la fenêtre disparaît et seule sa barre de titre reste visible.)
Fluxbox utilise ses propres classes graphiques pour produire ses images à la volées. Par l'utilisation de fichiers de styles, vous pouvez très finement déterminer à quoi ressemble votre bureau. Les styles de Fluxbox sont compatibles avec ceux de Blackbox, ainsi les utilisateurs souhaitant migrer pourront encore utiliser leurs thèmes favoris. Fluxbox est désormais prêt à supporter les nouvelles spécifications des gestionnaires de fenêtres qui sont développées pour Gnome et KDE2.0.
exec fluxbox
en tant que dernière commande exécutée par le script. Quand Fluxbox se termine, la session X se terminera également.
Au démarrage, Fluxbox essaye de trouver un fichier de menu par défaut dans /usr/share/fluxbox/menu. Vous pouvez y configurer un menu global pour les utilisateurs.
Lors de l'arrêt ou du redémarrage, Fluxbox enregistre les options par défaut de l'utilisateur dans le fichier ~/.fluxbox/init situés dans le répertoire de l'utilisateur. Certaines ressources de ce fichier peuvent être éditées à la main.
Un clic gauche (bouton 1) sur une application dans le menu « Bureaux » vous place sur le bureau de travail de l'application, la place au premier plan et lui donne le focus ; un clic central (bouton 2) place l'application sur le bureau virtuel courant.
En utilisant ce menu, vous pouvez saisir un nom pour le bureau virtuel courant (lorsque la saisie est terminée, actionnez Entrée). Vous pouvez aussi déterminer la position de la barre d'outils, si elle doit toujours être visible (c'est-à-dire qu'aucune autre fenêtre ne la cache), et si elle doit glisser hors de l'écran lorsque la souris la quitte.
Lorsque vous double-cliquez sur la barre de titre d'une fenêtre, elle devient ombrée, de sorte que seule la barre de titre demeure visible. Un autre double-clic la rend à nouveau intégralement visible.
Right: minimize maximize close (iconifier maximiser fermer) Left: sticky (coller)
Cliquer sur le bouton Iconifier avec n'importe quel bouton de la souris icônifie la fenêtre. Cliquer sur le bouton Fermer avec n'importe quel bouton ferme l'application. Le bouton de Maximisation (s'il est présent) maximise la fenêtre de trois manières : un clic gauche entraîne une maximisation sur tout l'écran, un clic central verticalement, et un clic droit horizontalement. Le bouton Coller agit de la même manière que l'option Coller du menu de fenêtre.
session.menuFile: ~/.fluxbox/menu
Pour que ce changement prenne effet, Fluxbox doit être redémarré. Soyez sûr que votre menu est utilisable, puis choisissez « Redémarrer » dans le menu racine de Fluxbox.
[étiquette] (libellé ou fichier) {commande ou fichier}
Les étiquettes supportées sont les suivantes :
[include] (~/fluxbox/stylesmenu)
inclut /home/fluxgen/fluxbox/stylesmenu dans mon menu).
Toute ligne débutant par le caractère « # » est considérée comme un commentaire et n'est pas prise en compte par Fluxbox. Dans les libellés, les commandes ou les noms de fichiers, n'importe quel caractère peut être protégé de la façon suivante :
[exec] (\(mon chouette\) \{XTERM\}) {xterm -T \"chouette XTERM\"}
L'utilisation de « \ » insère un back-slash littéral dans le libellé, la commande ou le nom de fichier.
# Fichier de menu Fluxbox [begin] (Fluxbox 0.5.1) [exec] (rxvt) {rxvt -ls} [exec] (Netscape) {netscape} [exec] (The GIMP) {gimp} [exec] (XV) {xv} [exec] (Vim) {rxvt -geometry 132x60 -name VIM -e screen vim} [exec] (Mutt) {rxvt -name mutt -e mutt} [submenu] (mozilla) [exec] (browser) {mozilla -browser} [exec] (news) {mozilla -news} [exec] (mail) {mozilla -mail} [exec] (edit) {mozilla -edit} [exec] (compose) {mozilla -compose} [end] [submenu] (Gestionnaire de fenêtres) [exec] (Edition Menus) {nedit ~/.fluxbox/menu} [submenu] (Style) {Quel Style?} [stylesdir] (~/.fluxbox/styles) [stylesmenu] (Styles Fluxbox) {/usr/share/fluxbox/styles} [end] [config] (Options de Config.) [reconfig] (Reconfigurer) [restart] (Redémarrer) [end] [exit] (Déconnexion) [end] # Fin du fichier de menu
L'installation par défaut de Fluxbox fournit quelques fichiers de style. Ils sont habituellement copiés dans /usr/share/fluxbox/styles. Vous pouvez étudier ou éditer ces fichiers pour comprendre comment fonctionnent les styles dans Fluxbox. Les commandes [style], [stylesdir] et [stylesmenu] placées dans votre fichier de menu vous permettent de changer de style à la volée en le sélectionnant simplement dans votre menu.
Vous pouvez aussi créer un répertoire dans votre répertoire d'utilisateur (habituellement nommé ~/.fluxbox/styles) et y placer vos propres styles. Vous avez bien sûr le choix dans le nom du répertoire, mais de nombreux styles à télécharger s'appuient sur le nom styles (selon le modèle de nom de bb.themes.org).
Pour comprendre comment les styles fonctionnent, vous devez avoir une légère connaissance sur le fonctionnement des ressources X.
Les ressources X consistent en une clé et une valeur. La clé est constituée d'un certain nombre de clés plus petites (parfois référencées sous le nom d'enfants), délimitées par un point (« . »). Les clés peuvent aussi contenir une astérisque (« * ») qui sert de joker, ce qui signifie qu'une seule ligne de texte saisie peut correspondre à plusieurs clés. Ce cas est très utile lorsque le style est basé sur une ou deux couleurs.
Fluxbox vous autorise à configurer ses quatre composants principaux : la barre d'outils, le slit, les menus et la décoration des fenêtres.
La petite fenêtre qui affiche la position (x,y) pendant que vous déplacez une fenêtre emprunte son style aux barres de titre des fenêtres.
Voici quelques exemples rapides :
toolbar.clock.color: green
Ici, la valeur « green » (vert) est affectée à la ressource couleur de l'horloge présente sur la barre d'outils. Un autre exemple :
menu*color: rgb:3/4/5
Dans cet exemple, la valeur « rgb:3/4/5 » est affectée à la ressource couleur du menu et à tous ces « enfants » (Pour une description des noms de couleurs, voir X(1).) Ainsi, elle s'applique aussi à menu.title.color et menu.frame.color.
*font: -b&h-lucida-medium-r-normal-*-*-140-*
Cet exemple positionne à la même valeur la ressource police de caractère de toutes les clés. (Pour des informations sur les fontes installées sur votre système, vous pouvez utiliser des programmes tels que xfontsel(1), gtkfontsel, or xlsfonts(1).)
Mais ce qui rend Fluxbox si spectaculaire, c'est sa capacité à produire des textures à la volée. Les descriptions de textures sont spécifiées d'une façon semblable à celle des couleurs illustrées précédemment. Par exemple :
toolbar.clock: Raised Gradient Diagonal Bevel1 toolbar.clock.color: rgb:8/6/4 toolbar.clock.colorTo: rgb:4/3/2
Pas de panique ! Nous expliquons tout de suite. La description d'une texture est composée d'au plus cinq champs, qui peuvent prendre les valeurs suivantes :
À la place de la description d'une texture, l'option ParentRelative est aussi disponible, ce qui rend le composant semblable à son parent, autrement dit il est totalement transparent.
Toutes les textures dégradées sont composées de deux valeurs de couleur : les ressources color et colorTo. color représente la couleur initiale et colorTo la couleur finale du dégradé. Lorsque Interlaced est utilisé conjointement au mode Solid la ressource colorTo est utilisée pour spécifier la couleur d'entrelacement.
Bien, voici la liste complète des composants, avec le type de valeur qu'ils acceptent. Les commentaires sont précédés d'un point d'exclamation (\space!), qui est aussi utilisé pour les commentaires dans le fichier de style Fluxbox, tout autant que dans les fichiers de ressources X.
! La barre d'outils elle-même toolbar: Texture toolbar.color: Couleur toolbar.colorTo: Couleur ! Les boutons de la barre d'outils toolbar.button: Texture ou ParentRelative toolbar.button.color: Couleur toolbar.button.colorTo: Couleur ! Couleur des flèches des boutons toolbar.button.picColor: Couleur ! Boutons dans l'état enfoncé (cliqué) toolbar.button.pressed: Texture (p.ex. Sunken) ou ParentRelative toolbar.button.pressed.color: Couleur toolbar.button.pressed.colorTo: Couleur ! Couleur des flèches des boutons dans l'état enfoncé (cliqué) toolbar.button.pressed.picColor:Couleur ! Le libellé de l'espace de travail sur la barre d'outils toolbar.label: Texture ou ParentRelative toolbar.label.color: Couleur toolbar.label.colorTo: Couleur toolbar.label.textColor: Couleur ! Le titre de la fenêtre active sur la barre d'outils toolbar.windowLabel: Texture ou ParentRelative toolbar.windowLabel.color: Couleur toolbar.windowLabel.colorTo: Couleur toolbar.windowLabel.textColor: Couleur ! L'horloge sur la barre d'outils toolbar.clock: Texture ou ParentRelative toolbar.clock.color: Couleur toolbar.clock.colorTo: Couleur toolbar.clock.textColor: Couleur ! Comment le texte de la barre d'outils doit être aligné ! Centré (center), à gauche (left) ou à droite (right) toolbar.justify: center, left, or right ! Police de caractères à utiliser avec tous les composants de la barre d'outils toolbar.font: Fonte ( p.ex. -*-helvetica-medium-r-normal-*-*-100-* ) ! Barre de titre du menu. menu.title: Texture menu.title.color: Couleur menu.title.colorTo: Couleur menu.title.textColor: Couleur menu.title.font: Fonte menu.title.justify: center, left, or right ! Le menu lui-même menu.frame: Texture menu.frame.color: Couleur menu.frame.colorTo: Couleur menu.frame.textColor: Couleur menu.frame.disableColor: Couleur menu.frame.font: Fonte menu.frame.justify: center, left, or right ! Les tirets pour les sous-menus ! Vide (empty), triangle (triangle), carré (square), losange (diamond) menu.bullet: empty, triangle, square, or diamond menu.bullet.position: right or left ! Un item de menu surligné menu.hilite: Texture (p.ex. Raised) menu.hilite.color: Couleur menu.hilite.colorTo: Couleur menu.hilite.textColor: Couleur ! Une fenêtre disposant du clavier (active) window.title.focus: Texture window.title.focus.color: Couleur window.title.focus.colorTo: Couleur ! Une fenêtre ne disposant pas du clavier (inactive) window.title.unfocus: Texture window.title.unfocus.color: Couleur window.title.unfocus.colorTo: Couleur ! Titre de la fenêtre window.label.focus: Texture ou ParentRelative window.label.focus.color: Couleur window.label.focus.colorTo: Couleur window.label.focus.textColor: Couleur window.label.unfocus: Texture ou ParentRelative window.label.unfocus.color: Couleur window.label.unfocus.colorTo: Couleur window.label.unfocus.textColor: Couleur ! Barre de saisie window.handle.focus: Texture window.handle.focus.color: Couleur window.handle.focus.colorTo: Couleur window.handle.unfocus: Texture window.handle.unfocus.color: Couleur window.handle.unfocus.colorTo: Couleur ! Poignées de redimensionnement window.grip.focus: Texture window.grip.focus.color: Couleur window.grip.focus.colorTo: Couleur window.grip.unfocus: Texture window.grip.unfocus.color: Couleur window.grip.unfocus.colorTo: Couleur ! Boutons de fenêtre window.button.focus: Texture ou ParentRelative window.button.focus.color: Couleur window.button.focus.colorTo: Couleur window.button.focus.picColor: Couleur window.button.unfocus: Texture ou ParentRelative window.button.unfocus.color: Couleur window.button.unfocus.colorTo: Couleur window.button.unfocus.picColor: Couleur window.button.pressed: Texture (e.g. Sunken) window.button.pressed.color: Couleur window.button.pressed.colorTo: Couleur ! Cadre autour de la fenêtre. window.frame.focusColor: Couleur window.frame.unfocusColor: Couleur ! Réglage des onglets (tabs) ! si ceux ci ne sont pas indiqués, des valeurs par défaut seront appliquées window.tab.justify: Right window.tab.label.unfocus: Texture window.tab.label.unfocus.color: Couleur window.tab.label.unfocus.textColor: Couleur window.tab.label.focus: Texture window.tab.label.focus.color: Couleur window.tab.label.focus.textColor: Couleur window.tab.borderWidth: 1 window.tab.borderColor: Couleur window.tab.font: fixed ! Police de caractères et alignement window.font: Fonte window.justify: center, left, or right ! Diverses ressources ! Une bordure peut être dessinée autour de tous les composants borderWidth: un nombre de pixels, p.ex. 1 borderColor: Couleur bevelWidth: un nombre de pixels > 0 handleWidth: un nombre de pixels > 0 ! Largeur du cadre des fenêtres ! Lorsqu'il n'est pas spécifié, la valeur de bevelWidth est prise par défaut frameWidth: un nombre de pixels >= 0 ! Cette commande est exécutée chaque fois que le style est sélectionné ! Typiquement, elle place une belle image sur la fenêtre racine. rootCommand: Commande shell, p.ex. bsetroot -mod 4 4 -fg rgb:5/6/6 -bg grey20 ! Certains bbtools lisent ces vieilles ressources de la version 0.51 menuFont: Fonte titleFont: Fonte
Cette liste est certes longue, mais rappelez vous lorsque vous créez votre propre style que vous pouvez facilement positionner beaucoup de clés en une seule ligne, par exemple:
*color: slategrey *colorTo: darkslategrey *unfocus.color: darkslategrey *unfocus.colorTo: black *textColor: white *unfocus.textColor: lightgrey *font: lucidasans-10
Cela spécifie déjà des valeurs par défaut sympathiques pour pas mal de composants.
<modifier> <clé> [...] :<operation>
Dans l'exemple ci-dessous, Mod1 est la touche « Alt » et Mod4 est une des touches supplémentaires sur un clavier pc104 possédant le logo dégoûtant d'une entreprise.
# Fluxbox: fichier des raccourcis clavier # Toute ligne débutant par # est un commentaire Mod1 Tab :NextWindow (Prochaine fenêtre) Mod1 F1 :Workspace1 (Bureau virtuel 1) Mod1 F2 :Workspace2 Mod1 F3 :Workspace3 Mod1 F4 :Workspace4 Mod1 F5 :Workspace5 Mod1 F6 :Workspace6 Mod1 F7 :Workspace7 Mod1 F8 :Workspace8 Mod1 F9 :Workspace9 Mod1 F10 :Workspace10 Mod1 F11 :Workspace11 Mod1 F12 :Workspace12 Mod4 b :PrevWorkspace (Bureau virtuel précédent) Mod4 c :Minimize (Iconifier) Mod4 r :ExecCommand rxvt (exécute rxvt) Mod4 v :NextWorkspace (Bureau virtuel suivant) Mod4 x :Close (Fermer) Mod4 m :RootMenu (Menu racine) Control n Mod1 n :NextTab (Onglet suivant)
Comme vous pouvez le constater sur la dernière ligne, les raccourcis claviers peuvent être chaînés de façon similaire aux raccourcis clavier emacs. Une liste des opérations possibles est donnée ci-dessous.
Minimize (Iconifier) Raise (Lever) Lower (Baisser) Close (Fermer) RootMenu (Menu racine) Workspace N (Bureau virtuel N avec N entier positif) Workspace1 Workspace2 Workspace3 Workspace4 Workspace5 Workspace6 Workspace7 Workspace8 Workspace9 Workspace10 Workspace11 Workspace12 NextWorkspace (Bureau virtuel suivant) PrevWorkspace (Bureau virtuel précédent) LeftWorkspace (Bureau virtuel à gauche) RightWorkspace (Bureau virtuel à droite) KillWindow (Massacrer) NextWindow (Fenêtre suivante) PrevWindow (Fenêtre précédente) NextTab (Onglet suivant) PrevTab (Onglet précèdent) ShadeWindow (Ombrer) MaximizeWindow (Maximiser) StickWindow (Coller) ExecCommand (Exécuter la commande) MaximizeVertical (Maximiser verticalement) MaximizeHorizontal (Maximiser horizontalement) NudgeRight (Déplacer la fenêtre vers la droite) NudgeLeft (Déplacer la fenêtre vers la gauche) NudgeUp (Déplacer la fenêtre vers le haut) NudgeDown (Déplacer la fenêtre vers le bas) BigNudgeRight (Déplacer grandement la fenêtre vers la droite) BigNudgeLeft (Déplacer grandement la fenêtre vers la gauche) BigNudgeUp (Déplacer grandement la fenêtre vers le haut) BigNudgeDown (Déplacer grandement la fenêtre vers le bas) HorizontalIncrement (Agrandir la fenêtre horizontalement) VerticalIncrement (Agrandir la fenêtre verticalement) HorizontalDecrement (Réduire la fenêtre horizontalement) VerticalDecrement (Réduire la fenêtre verticalement) ToggleDecor (Cacher la barre titre et la bordure d'une fenêtre)
session.titlebar.right: minimize maximize close (icônifier, maximiser, fermer) session.titlebar.left: sticky (coller)
De nombreuses applications accrochables utilise l'option -w afin de s'exécuter dans le slit. Par exemple, vous pouvez placer dans votre fichier ~/.xinitrc:
bbmail -w & bbpager -w & exec fluxbox
Bien sûr, pour utiliser le slit, vous devez avoir compilé Fluxbox en activant le support du slit (c'est l'option par défaut).
session.menuFile: /home/moi-même/.fluxbox/menu
session.titlebarFile: /home/moi-même/.fluxbox/titlebar
session.keyFile: /home/moi-même/.fluxbox/keys
session.styleFile: /usr/share/fluxbox/styles/Flux
Lorsque vous exécutez Fluxbox dans un environnement disposant de plusieurs écrans, la clé screen0 peut aussi être screen1, 2 etc. pour tout écran approprié, et vous pouvez configurer le comportement de Fluxbox sur chaque bureau. La configuration favorite de l'auteur de cette page de manuel possédant une carte dual-head Matrox G450 est de cacher automatiquement le slit et la barre d'outils sur screen0 et de les placer toujours au dessus et visible sur screen1, avec un plus grand format de le date sur screen1.
session.screen0.toolbar.onTop: False session.screen0.toolbar.autoHide: True session.screen0.toolbar.placement: BottomCenter session.screen0.toolbar.widthPercent: 42 session.screen0.slit.onTop: False session.screen0.slit.autoHide: True session.screen0.slit.placement: TopLeft session.screen0.slit.direction: Vertical session.screen0.strftimeFormat: %I:%M %p session.screen1.toolbar.onTop: True session.screen1.toolbar.autoHide: False session.screen1.toolbar.placement: BottomCenter session.screen1.toolbar.widthPercent: 69 session.screen1.slit.onTop: True session.screen1.slit.autoHide: False session.screen1.slit.placement: CenterRight session.screen1.slit.direction: Vertical session.screen1.strftimeFormat: %a %d %R [%s]
De cette façon le bureau principal (screen0) possède un maximum d'espace disponible et le bureau secondaire indique l'heure et exécute des « petites » applications comme gkrellm dans le slit, toujours visible et ne gênant pas le travail.
L'adresse du site officiel de Fluxbox :
http://fluxbox.sf.net/
De nombreux thèmes compatibles :
http://www.themes.org/themes/blackbox/
Cette page de manuel a été rédigée par Matthew Hawkins <matt@mh.dropbear.id.au> à partir de la page de manuel originale de Blackbox par Wilbert Berendsen (wbsoft@xs4all.nl).
Cette page de manuel a été traduite en français par Vincent Carriere <carriere_vincent@yahoo.fr> à partir de la traduction de la page de manuel de Blackbox par Bertrand Duret (bertrand.duret@libertysurf.fr).
De nombreuses autres traductions seront bientôt disponibles.