LinuxPedia

Wiki libre et indépendant dédié à GNU-Linux et BSD.

Outils pour utilisateurs

Outils du site


personaliser:panels

barre de tâche, panel, dock, applets, pager, systray, volume-control, menus, lanceurs, raccourcis…
configurable en gui, en cli, transparent, auto-hide, personnalisable, en 3D…
un petit éventail de docks & panels en tout genre.

fbpanel

fbpanel est un panel indépendant proposant un grand nombre de plugins et configurable depuis son fichier ~/.config/fbpanel/default. ses principales possibilités:

  • menu avec support freedesktop (comme pour gnome/kde, fbpanel liste vos fchiers *.desktop)
  • liste des fenêtres
  • pager
  • bouton “montrer le bureau”
  • barre de lancement d'applications
  • horloge
  • zone de notification
  • usage du disque
  • usage de la mémoire
  • usage du cpu
  • état de la batterie
  • contrôleur de volume
  • gestion de la transparance
  • positionnement/taille configurable
  • possibilité de lancer plusieurs instances indépendantes

installation

fbpanel est disponible dans la plupart des distributions, la dernière version stable est la 6.1. pour les débianistes

# apt-get install fbpanel

mais vous pouvez aussi l'installer depuis les sources:

  • télécharger l'archive disponible sur sourceforge
  • installer les dépendances:
    # apt-get install libgtk2.0-dev
  • entamer la procédure de compilation classique:
    $ tar zxvf fbpanel-x.y.tgz       ## extraire l'archive
    $ cd fbpanel-x.y                 ## se placer dans le répertoire de travail
    $ ./configure                    ## préparer les sources pour la compilation
    $ make                           ## compiler
    $ su                             ## se placer en root
    # make install                   ## installer fbpanel

configuration

le fichier de configuration par défaut (celui lancé par la commande fbpanel) est situé dans votre ~/.config/fbpanel/default . il s'organise autour d'une section “globale” réunissant les propriétés du panel, et de plusieurs sections “plugins”.

  • la section “global”:
    Global {
        edge = bottom           ## position sur l'écran: left,right,top ou bottom
        allign = center         ## alignement du panel: left,right ou center
        margin = 0              ## marge au bord d'écran en pixels
        widthtype = percent     ## type de mesure pour le panel: pixel,percent ou request
        width = 92              ## mesure de taille du panel (ici 92% de l'écran)
        height = 48             ## hauteur du panel en pixels (ici 48 px)
        transparent = true      ## active la transparence: true ou false
        tintcolor = #ffffff     ## couleur se superposant au fond
        alpha = 32              ## opacité de la couleur appliquée au fond: de 0 à 255
        setdocktype = true      ## considérer le panel comme un dock: true ou false
        setpartialstrut = true  ## recouvrir par les fenêtres maximisées: true ou false
        autohide = false        ## masquage automatique: true ou false
        heightWhenHidden = 2    ## taille du panel lors du masquage en pixels
        roundcorners = false    ## arrondir les angles: true ou false
        roundcornersradius = 7  ## importance de l'arrondi: de 0 à 25
        layer = above           ## placement du panel: above ou below
        setlayer = false        ## utiliser le placement du panel: true ou false
        maxelemheight = 24      ## hauteur maximale des plugins, si la hauteur du panel est suffisante, ils s'empilent 
    }
  • les plugins: ils décrivent quel type de plugin charger et comment le charger:
    les plugins disponibles sont: battery, cpu, dclock, deskno, deskno2, genmon, icons, image, launchbar, mem, menu, net, pager, separator, space, systray, taskbar, tclock, volume, wincmd. quelques exemples:
    • le plugin “espace”:
      Plugin {
          type = space     ## nom du plugin
          expand = false   ## étendre le plugin sur l'espace libre du panel: true ou false
          padding = 0      ## marges autour du plugin en pixels
          config {         ## configuration du plugin
              size = 2     ## taille du plugin en pixels
          }
      }
    • le plugin “cpu”:
      Plugin {
          type = cpu           ## nom du plugin
          config {
              Color = green    ## couleur du graphique
          }
      }
    • le plugin “net”:
      Plugin {
          type = net             ## nom du plugin
          config {
              interface = eth0   ## interface à surveiller
              TxLimit = 20       ## limite sortante en kb/s
              RxLimit = 190      ## limite entrante en kb/s
              TxColor = violet   ## couleur des données sortantes
              RxColor = blue     ## couleur des données entrantes
          }
      }
    • le plugin “pager”:
      Plugin {
          type = pager
          config {
              showwallpaper = true  ## affiche le fond d'écran dans le pager: true ou false
          }
      }
    • le plugin “mem”:
      Plugin {
          type = mem
          config {
              ShowSwap = true   ## affiche la quantité de swap utilisée: true ou false
          }
      }
    • le plugin “dclock”:
      Plugin {
          type = dclock
          config {
              ShowSeconds = false  ## afficher les secondes: true ou false
              HoursView = 24       ## type d'horloge: 12 ou 24
              Color = white        ## couleur du texte
              Action = osmo        ## programme à lancer lors du clic sur l'horloge
          }
      }
    • le plugin “tclock”:
      Plugin {
          type = tclock
          config {
              ClockFmt = %-l:%M %P
%a %B %-e  ## horloge sur deux lignes
              TooltipFmt = %A %x                  ## format du message d'aide
              ShowCalendar = false                ## affiche le calendrier: true ou false
              ShowTooltip = true                  ## affiche le message d'aide
          }
      }
    • le plugin “taskbar”:
      plugin {
          type = taskbar
          expand = true              ## remplir l'espace libre: true ou false
          config {
              ShowIconified = true   ## montrer les fenêtres minimisées: true ou false
              ShowMapped = true      ## ??
              ShowAllDesks = false   ## montrer les fenêtres de tous les bureaux: true ou false
              tooltips = true        ## afficher les bulles d'aide: true ou false
              IconsOnly = false      ## afficher uniquement les icones des applications: true ou false
              MaxTaskWidth = 150     ## taille maximale des éléments de la barre de tâches
          }
      }
    • le plugin “launchbar”:
      plugin {
          type = launchbar
          expand = false
          padding = 0
          config {
              button {                          ## premier lanceur
                  icon = gnome-terminal         ## icone du lanceur prise dans votre thème d'icones
                  tooltip = Terminal            ## texte à afficher dans la bulle d'aide
                  action = xterm                ## programme à lancer
              }
              button {                          ## second lanceur
                  image = /pics/icons/uzbl.png  ## image à utiliser comme icone
                  tooltip = uzbl browser
                  action = uzbl http://arpinux.org
              }     
          }
      }
    • le plugin “menu”:
      plugin {
          type = menu
          config {
              icon = start-here              ## icone du menu
              systemmenu {                   ## menu système ~= menu debian
              }
              separator {                    ## separateur graphique
              }
              menu {                         ## sous-menu
                  name = Computer            ## nom du sous-menu
                  icon = computer            ## icone du sous-menu
                  item {                     ## première entrée du sous-menu
                      name = Terminal        ## nom du lanceur
                      icon = terminal        ## icone du lanceur
                      action = x-terminal    ## programme à lancer
                  }
                  item {                     ## seconde entrée du sous-menu
                      name = Lock Display    ## nom du lanceur..
                      icon = gnome-lockscreen
                      action = xtrlock2
                  }
                  separator {                ## separateur graphique
                  }
                  item {                      
                      name = Quit            ## entrée directe de menu
                      icon = gnome-session-halt
                      action = sudo halt
                  }
              
              }
          }
      }
    • le plugin “icons” pour déterminer vos icones rattachées à certaines applications:
      plugin {
          type = icons
          expand = false
          padding = 0
          config {
              DefaultIcon = /usr/share/fbpanel/images/default.xpm
              application {
                  icon = gnome-terminal
                  ClassName = XTerm
              }
              application {
                  icon = gnome-terminal
                  ClassName = mlterm
              }
              application {
                  icon = gnome-terminal
                  ClassName = URxvt
              }
              application {
                  icon = gnome-emacs
                  ClassName = Emacs
              }
              application {
                  icon = mozilla-firefox
                  ClassName = Firefox-bin
              }
              application {
                  icon = mozilla-firefox
                  ClassName = Firefox
              }
              application {
                  image = /usr/share/icons/yasis/scalable/apps/gnome-ppp.svg
                  AppName = minicom
              }
          }
      }

utilisation

vous pouvez lancer plusieurs instances de fbpanel grâce à l'option “profil”

fbpanel -p /chemin_du_fichier1
fbpanel -p /chemin_du_fichier2
...


sources: doc fbpanel sur sourceforge.

lxpanel

c'est le panel par défaut de l'environnement LXDE. il a l'avantage d'inclure un gestionnaire de configuration en mode graphique déclenché au clic-droit sur le panel. vous pouvez l'utiliser dans d'autres sessions, mais il ne conviendra pas pour les sessions en tiling (dwm, echinus, wmfs, awesome).

installation

lxpanel est disponible dans la plupart des distributions, la dernière version stable est la 0.5.10. pour les débianistes

# apt-get install lxpanel

configuration

le menu de configuration de lxpanel déclenché au clic-droit est détaillé et explicite:


pypanel

pypanel est un de mes préférés: léger, facilement configurable, et s'intégrant parfaitement avec tous les *Box-like.
ses possibilités:

  • contrôle de la transparence et de la couleur
  • contrôle de la taille, position globale et des éléments du panel
  • support des polices xft
  • horloge
  • indicateur/sélecteur de bureau
  • zone de notification
  • masquage automatique
  • lanceur d'applications
  • contrôle des icones des applications: affichage, personnalisation.

installation

la dernière version de pypanel sur sourceforge date du 27 juin 2005 :D et pourtant il est toujours utilisé (il est dans les dépots archlinux). mais pour les debianistes, il va falloir installer depuis les sources.
les dépendances: python 2.2 ou plus récent, lib python X 0.12 ou plus récent, imlib2 1.1.1 ou plus récent. je vous laisse vous référer à vos dépots respectifs. pour les débianistes sur squeeze:

# apt-get install python libpython2.6 libimlib2 libimlib2-dev

une fois l'archive récupérée et décompréssée, placez vous dans le répertoire:

$ cd Pypanel-2.4
# python setup.py install

pour le lancer depuis votre ~/.xinitrc ou tout autre fichier autostart

pypanel &

configuration

pas de config en gui, tout passe par le fichier dans votre dossier utilisateur ~/.pypanelrc
en voici en exemplaire traduit/commenté

#------------------------------------------------------------------------------
#
#                         PyPanel v2.4 Configuration
#
# ce fichier de configuration est le script python qui est executé lors du
# lancement de pypanel. pour que pypanel fonctionne correctement, vérifiez
# que la syntaxe réponde aux normes python.
#------------------------------------------------------------------------------
VERSION         = 2.4           # version du fichier de configuration
 
#------------------------------------------------------------------------------
# couleurs: format héxadécimal - 0xrrggbb
#------------------------------------------------------------------------------
BG_COLOR        = "0xd6d6d6"    # couleur de fond de pypanel
TASK_COLOR      = "0x000000"    # couleur du texte des fenêtres normales 
FOCUSED_COLOR   = "0x1826de"    # couleur du texte de la fenêtre ayant le focus
SHADED_COLOR    = "0x808080"    # couleur du texte des fenêtres enroulées 
MINIMIZED_COLOR = "0x808080"    # couleur du texte des fenêtres minimisées 
DESKTOP_COLOR   = "0x000000"    # couleur du texte de l'indicateur de bureau
CLOCK_COLOR     = "0x000000"    # couleur du texte de l'horloge
LINE_COLOR      = "0x606060"    # couleur des séparateurs
 
# couleurs des ombres
TASK_SHADOW_COLOR      = "0xffffff"  # couleur de l'ombre du texte des fenêtres normales
FOCUSED_SHADOW_COLOR   = "0xffffff"  # couleur de l'ombre du texte de la fenêtre ayant le focus
SHADED_SHADOW_COLOR    = "0xffffff"  # couleur de l'ombre du texte des fenêtres enroulées
MINIMIZED_SHADOW_COLOR = "0xffffff"  # couleur de l'ombre du texte des fenêtres minimisées
DESKTOP_SHADOW_COLOR   = "0xffffff"  # couleur de l'ombre du texte de l'indicateur de bureau
CLOCK_SHADOW_COLOR     = "0xffffff"  # couleur de l'ombre du texte de l'horloge
 
#------------------------------------------------------------------------------
# placement et taille de pypanel. mesures en pixels.
#------------------------------------------------------------------------------
P_LOCATION      = 1             # position sur l'écran: 0 = haut, 1 = bas
P_WIDTH         = 0             # taille de pypanel: 0 = largeur totale de l'écran
P_START         = 0             # point de départ de pypanel par rapport au board gauche de l'écran
P_SPACER        = 6             # espace entre les éléments de pypanel
P_HEIGHT        = 24            # hauteur de pypanel
 
#------------------------------------------------------------------------------
# taille des icones: mesures en pixels
#------------------------------------------------------------------------------
I_HEIGHT        = 16            # hauteur des icones dans la liste des fenêtres
I_WIDTH         = 16            # largeur des icones dans la liste des fenêtres 
APPL_I_HEIGHT   = 24            # hauteur des icones des lanceurs
APPL_I_WIDTH    = 24            # largeur des icones des lanceurs
TRAY_I_HEIGHT   = 24            # hauteur des icones dans le systray (usually 16 or 24)
TRAY_I_WIDTH    = 24            # largeur des icones dans le systray  (usually 16 or 24)
                                # si TRAY_I_WIDTH = 0, alors pypanel laisse l'application
                                # décider de la taille de son applet
 
#------------------------------------------------------------------------------
# format de l'horloge: 'man strftime' pour toutes les options.
#------------------------------------------------------------------------------
CLOCK_FORMAT    = "%d-%m-%Y %H:%M"    # Ex: 26-09-2004 17:45 
 
#------------------------------------------------------------------------------
# fréquence de rafraichissement de l'horloge durant l'inactivité.
#------------------------------------------------------------------------------
CLOCK_DELAY     = 20
 
#------------------------------------------------------------------------------
# applications cachées: les applications listées ici ne seront pas affichées 
# dans pypanel. cette liste utilise le nom WM_CLASS que vous trouvez grâce à xprop
# Ex: ["xmms", "xine", "gDesklets"]
#------------------------------------------------------------------------------
HIDE_LIST       = []            
 
#------------------------------------------------------------------------------
# taille du panel en autohide: taille en pixel du panel en mode caché. en pixels
#------------------------------------------------------------------------------
HIDDEN_SIZE     = 2
 
#------------------------------------------------------------------------------
# police de pypanel: syntaxe traditionnelle et xft supportés 
# Ex: "-schumacher-clean-medium-r-normal-*-12-*-*-*-*-*-*-*"
#     "aquafont-8" 
#------------------------------------------------------------------------------
FONT            = "bitstream vera sans-8"
 
#------------------------------------------------------------------------------
# montrer toutes les applications dans la liste des fenêtres:
# 0: desactivé - montrer seulement les applications du bureau courant
# 1: activé  - montrer les applications de tous les bureaux: restaurer dans le bureau courant
# 2: activé  - montrer les applications de tous les bureaux: restaurer dans le bureau d'origine
#------------------------------------------------------------------------------
SHOWALL         = 0             # 0, 1 or 2 - voir description ci-dessus
 
#------------------------------------------------------------------------------
# montrer les applications minimisées ou toutes les applications:
# 0: desactiver - montrer toutes les applications
# 1: activer  - montrer seulement les applications minimisées
#------------------------------------------------------------------------------
SHOWMINIMIZED   = 0
 
#------------------------------------------------------------------------------
# liste d'icones d'applications: liste d'icones personnelles pour certaines 
# applications. utiliser le WM_CLASS name trouvé avec xprop
#
# l'entrée "default" est utilisée pour les applications n'ayant pas d'icones.
# si vous laissez "", pypanel utilisera l'icone par défaut distribuée dans ses sources.
#
# syntaxe de la liste:
#     "<nom de l'application>" : "<chemin complet vers l'icone>",
#------------------------------------------------------------------------------
ICON_LIST       = {
                   "default" : "",
                   "example" : "/usr/share/imlib2/data/images/audio.png",
                  }
 
#------------------------------------------------------------------------------
# liste de lanceurs d'applications: liste ordonnée des applications pour la
# section 'launcher'.
# ---------
# attention à bien activer le 'launcher' dans la section 'disposition des éléments'
# ---------
# syntaxe de la liste:
#     ("<executable>", "<chemin complet vers l'icone>")
#------------------------------------------------------------------------------
LAUNCH_LIST     = [
                   ("gimp-2.2", "/usr/share/imlib2/data/images/paper.png"), 
                  ]
 
#------------------------------------------------------------------------------
# niveau de transparence de pypanel: 0 (transparent) -> 255 (opaque)
# BG_COLOR est utiliser pour la teinte
#------------------------------------------------------------------------------
SHADE           = 50
 
#------------------------------------------------------------------------------
# options diverses: syntaxe 1 = activer/oui, 0 = desactiver/non
#------------------------------------------------------------------------------
ABOVE           = 1             # pypanel passe derrière les autres fenêtres
APPICONS        = 1             # montrer les icones des applications
AUTOHIDE        = 0             # masquer automatiquement: utilise CLOCK_DELAY
SHADOWS         = 0             # dessiner les ombres pour les textes
SHOWLINES       = 0             # dessiner les séparateurs
SHOWBORDER      = 0             # dessine une bordure autour de pypanel
 
#------------------------------------------------------------------------------
# nom des bureaux: personnaliser le noms de vos bureaux
# si vous laissez vierge [], PyPanel va essayer d'utiliser les noms de bureaux
# spécifiés par le serveurX, si cela ne fonctionne pas, il utilisera les numéros
# comme nom de bureau.
# Ex. ["One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight"]
#------------------------------------------------------------------------------
DESKTOP_NAMES   = []
 
#------------------------------------------------------------------------------
# disposition des éléments:       -----------------------------------
#                                 [  1  ][  2  ][  3  ][  4  ][  5  ]
#                                 -----------------------------------
#
# la disposition comprend 5 zones numérotées de 1 à 5 comme montré ci-dessus.
# chaque éléments doit être assigné à une section pour apparaitre dans pypanel.
# 0 désactive l'élément.
# par défaut, la section launcher est désactivée.
#------------------------------------------------------------------------------
DESKTOP         = 1             # bouton de selecteur de bureau
TASKS           = 2             # listes des fenêtres 
TRAY            = 3             # zone de notification
CLOCK           = 4             # horloge
LAUNCHER        = 0             # lanceurs
 
#------------------------------------------------------------------------------
#                       configuration des actions de la souris
#------------------------------------------------------------------------------
# clic gauche   - button 1 
# clic central  - button 2
# clic droit    - button 3
# scroll haut   - button 4
# scroll bas    - button 5 
#
# changeDesktop(x)
# - change de bureau: se deplace de 'x' bureaux vers la droite, vers la gauche si x est négatif
# 
# toggleShade(task)
# - enroule ou déroule une fenêtre
#
# toggleHidden()
# - masque/affiche pypanel
#
# toggleMinimize(task, traise=1)
# - minimise/restaure une fenêtreet optionnellement la place au premier plan.
#
# taskRaise(task, focus=1)
# - place la fenêtre en premier dans la liste des fenêtres et optionnellement lui donne le focus.
#
# taskLower(task, focus=0)
# - place la fenêtre en dernier dans la liste des fenêtres et optionnellement lui donne le focus
#
# taskFocus(task)
# - donne le focus à la fenêtre, si elle a déjà le focus, la minimiser.
#
# showDesktop()
# - masquer/afficher toutes les fenêtres: montrer le bureau
#------------------------------------------------------------------------------
 
#----------------------------------
def desktopButtonEvent(pp, button):
#----------------------------------
# action sur le bouton sélecteur de bureaux
 
    if button == 1:
        pp.changeDesktop(-1)
    elif button == 2:
        pp.changeDesktop(2)
    elif button == 3:
        pp.changeDesktop(1)
    elif button == 4:
        pp.changeDesktop(1)
    elif button == 5:
        pp.changeDesktop(-1)
 
#--------------------------------
def clockButtonEvent(pp, button):
#--------------------------------
# action sur l'horloge
 
    if button == 1:
        os.system("xclock &")
    elif button == 2:
        pass
    elif button == 3:
        pp.toggleHidden()  
    elif button == 4:
        pp.showDesktop()
    elif button == 5:
        pp.showDesktop()
 
#--------------------------------
def panelButtonEvent(pp, button):
#--------------------------------
# action sur une section vide de pypanel
 
    if button == 1:
        pass
    elif button == 2:
        pass
    elif button == 3:
        pass
    elif button == 4:
        pass
    elif button == 5:
        pass
 
#-------------------------------------
def taskButtonEvent(pp, button, task):
#-------------------------------------
# action sur la liste des fenêtres
 
    if button == 1:
        pp.taskFocus(task)
    elif button == 2:
        # tuer l'application
        task.obj.destroy()
    elif button == 3:
        # Ex. - XMMS ne s'enroule pas, donc cette option lui dit
        #       de se minimiser, tout en continuant à utiliser le
        #       bouton 3 pour enrouler/derouler les autres fenêtres.
        #       tclass est le nom de l'application (WM_CLASS)
        if "xmms" in task.tclass:
            pp.toggleMinimize(task)
        else:
            pp.toggleShade(task)
    elif button == 4:
        pp.taskRaise(task, focus=1)
    elif button == 5:
        pp.taskLower(task, focus=0)
 

voilà, je pense que c'est assez explicite :) . vous pouvez intégrer un menu à pypanel en utilisant compiz-deskmenu ou 9menu et en l'associant à un lanceur. vous pouvez également naviguer entre les fenêtres, utiliser des raccoucis clavier avec xdotool ..
sources: pypanel sur sourceforge

adeskbar


ADeskBar est une application en python développée par le talentueux Adcomp aka David Art, le créateur de la distribution MadBox. adeskbar sert de panel, de dock, est très léger et hautement configurable grâce à une interface graphique. l'application est en developpement permanent, vous pouvez suivre la progression du projet sur le blog d'Adcomp.

installation

la dernière version stable est adeskbar.0.4.3 et est disponible ici sous forme de paquet .deb ou sources.

  • instalation des dépendances:
    # apt-get install python-xlib python-vte python-wnck python-alsaaudio python-gmenu gnome-menus libgnome-menu2
  • installation du paquet debian:
    $ wget http://download.tuxfamily.org/adeskbar/archives/adeskbar.0.4.3-all.deb
    # dpkg -i adeskbar.0.4.3-all.deb
  • installation depuis les sources:
    $ wget http://download.tuxfamily.org/adeskbar/sources/adeskbar-0.4.3.tar.bz2
    $ tar xvjf adeskbar-0.4.3.tar.bz2
    $ cd adeskbar-0.4.3/
    $ su
    # ./install.sh

configuration

la configuration d'ADeskBar passe par l'editeur graphique: clic droit sur la barre (en dehors d'un plugin/lanceur) puis “préférences”. la fenêtre de configuration apparaît alors vous permettant d'effectuer vos réglages:


sources: page de présentation d'adeskbar
suivre le projet adeskbar: http://davidmadbox.wordpress.com/category/adeskbar/

wbar

wbar est un dock minimal indépendant pour Linux. il s'intègre dans tous les gestionnaires de fenêtres. il supporte la transparence, la configuration graphique et la personnalisation des icones.

installation

la version stable chez Debian est wbar-1.3.3, je vous conseille donc l'installation depuis le site principal (version 2.3.0-1).

  • téléchargemant des paquets .deb wbar et wbar-config:
    $ wget http://wbar.googlecode.com/files/wbar_2.3.0-1_i386.deb
    $ wget http://wbar.googlecode.com/files/wbar-config_2.3.0-1_i386.deb
  • installation des paquets:
    # dpkg -i wbar_2.3.0-1_i386.deb
    # dpkg -i wbar-config_2.3.0-1_i386.deb

configuration

pour lancer wbar:

$ wbar &

wbar-config se lance depuis wbar et permet une configuration complète de votre dock. par défaut, un clic-droit sur la barre recharge la configuration:

sources: page principale du projet

tablaunch

tablaunch est un dock ultra-minimal indépendant. il fut le panel par défaut de crunchbanglinux lors de sa première version (crunchbang7.10.1). c'est le plus “basic” de la liste et je vous conseille d'utiliser un autre dock si vous désirez obtenir un rendu sympa pour vos icônes. l'intérêt de tablaunch réside dans son option “texte-only” qui permet de créer un dock ultra-réactif des plus léger.

installation

tablaunch n'est pas présent dans les dépôts Debian, il faut passer par la compilation depuis les sources disponibles sur sourceforge: http://sourceforge.net/projects/tablaunch/files/latest/download?source=files. une fois les sources téléchargées, il faut installer la dépendance:

# apt-get install libimlib2-dev

puis compiler:

$ tar xvzf tablaunch-0.6.tar.gz
$ cd tablaunch-0.6/src
$ make using.imlib2
# make install

configuration

tablaunch accepte les options suivantes (traduction du man):

tablaunch version 0.6 
usage:  tablaunch [option] [option] ...
where options include:
  option               X resource             description
  ------               ----------             -----------
  -h, --help                                  affiche l'aide
  --settings                                  liste les options en fonction
                                              (un bon moyen de voir les valeurs par défaut)
  --ignoreXRM                                 ignore les ressources X (pratique avec un tilingwm)
  -c configfile        configfile             utiliser un fichier de configuration
  -fg color            foreground             couleur du texte
  -sfg color           selected_foreground    couleur du texte de l'onglet sélectionné
  -pfg color           pressed_foreground     couleur du texte de l'onglet pressé
  -bg color            background             couleur de fond des onglets
  -fn fontname         font                   police utilisée
  -sfn fontname        selected_font          police utilisée pour l'onglet sélectionné
  -x xoffset           xoffset                marge horizontale
  -y yoffset           yoffset                marge verticale
  -r                   rightalign             placer tablaunch à droite de lécran
  -d hideDelay         hide_delay             délai avant le masquage automatique
  -l                   always_show_label      toujours afficher le label
  -t                   text_only              pas d'icones
  -k                   keep_selected_on_hide  garder l'onglet sélectionné visible
  -e float             expand_factor          facteur d'expansion
  --iconMaskOff        use_icon_mask          autorise les images à être transparentes
  --fit_text           fit_text               ajuste la hauteur des icones sur la taille de la police
  --s_yoffset pixels   selected_yoffset       décallage vertical de l'onglet sélectionné par rapport aux onglets voisins
  --limit_y pixels     limit_y                décallage vertical maximum
  --hidden pixels      hidden_height          taille de tablaunch masqué
  --bottom pixels      margin_bottom          espace sous le texte
  --top pixels         margin_top             espace au-dessus du texte
  --sides pixels       margin_sides           espace à droite/gauche du texte
  --pulldown pixels    pulldown_height        décallage vertical de l'onglet sélectionné
  --opts.bevel pixels  opts.bevel             taille du décallage autour des onglets
  --overlap pixels     tab_overlap            chevauchement entre les onglets, une valeure négative produit des onglets séparés.
  --step pixels        step_factor            step factor of tab offset as it gets farther from the selected tab ..??
  --height pixels      same_height            taille des icones
  --caption_y pixels   caption_yoffset        distance d'appel des onglets
  --no_caption         no_caption             pas d'appel des onglets
                         or show_caption      
  --no_label           no_label               pas de label
                         or show_label        
  --iconhome dir       iconhome               chemin du dossier d'icones
  --no_iconhome        no_iconhome            ne pas utiliser de dossier d'icones
                         or use_iconhome      
  --blinks int         blinks                 nombre de clignotements lors du clic
  --brightness float   brightness             luminosité de l'onglet lors du clic
  --dock [top|bottom]  dock_position          position de tablaunch sur l'écran

utilisation

tablaunch s'utilise depuis la ligne de commande et lit un fichier texte qui comprend le “menu” du dock. une des façons les plus simples est d'éditer un script de lancement. des exemples de scripts sont situés dans le répertoire des sources de tablaunch. pour tester tablaunch depuis le répertoire des sources:

$ cd example
$ ./tablaunch.sh

c'est assez basic… j'avoue :) mais vous pouvez choisir vos icônes ou décider d'employer tablaunch “text-only”.

tablaunch textonly

  • le script de lancement:
    #!/bin/sh
    # tabdock, a simple script for tablaunch
    tablaunch \
        --ignoreXRM \
        --dock bottom -x 0 -y 0 -r \
        -fn "fixed" -sfn "fixed" \
        -bg "#000000" \
        -fg "#9E9E9E" -sfg "#D7D7D7" -pfg "#099F00" \
        -d 1 -t -e 1 --fit_text \
        --hidden 1 --bottom 1 --top 1 \
        --pulldown 5 --caption_y 10 \
        --no_label \
        -c ~/.tablaunchrc
  • le fichier du dock:
    # ~/.tablaunchrc
    # file format: label command icon big_icon
    menu "compiz-deskmenu"
    filer "rox"
    terminal "urxvtc"
    internet "uzbl"
    jabber "urxvtc -T jabber -e mcabber"
    mail "claws-mail"
    arpinux "uzbl http://arpinux.org"
    deviantart "uzbl http://deviantart.com"
    crunch "uzbl http://crunchbanglinux-fr"
    images "rox ~/pics"
    docs "rox ~/docs"
    pkgs "rox /pkgs"
    lock "slock"
    exit "quit.sh"

sources: tablaunch sur sourceforge

tint2

tint2 est un panel multi-fonction qui a de plus en plus de succès. il est léger, rapide et hautement configurable. il est indépendant et s'intègre dans quasi tous les gestionnaires de fenêtres. c'est le panel par dédaut de la distribution crunchbanglinux sur openbox et je l'utilise dans mon livarp pour les sessions pekwm, evilwm et echinuswm.

installation

tint2 est présent dans les dépôts Debian sous le version 0.9.2, je vous conseille donc l'installation depuis les sources (version 0.11). une version .deb de la 0.11 est disponible dans les dépôts de crunchbang statler, pour l'installer:

$ wget http://packages.crunchbanglinux.org/statler/pool/main/tint2_0.11~svn620-1_i386.deb
# dpkg -i tint2_0.11~svn620-1_i386.deb

configuration

la configuration de tint2 peut se faire en GUI grâce à tint2conf, mais je ne vous le conseille pas. le logiciel fonctionne bien mais son organisation prête à confusion et de nombreux utilisateurs ont effacés leurs configurations préférées avec tint2conf. nous allons donc configurer tint2 “à l'ancienne”, en éditant son fichier de configuration.
notez que vous pouvez lancer plusieurs instances de tint2 avec leurs configurations respectives.
pour l'exemple, nous prendrons le fichier de configuration du tint2 de crunchbanglinux:

l'avantage de tint2 est que vous pouvez tout configurer: l'apparence, la position, les widgets, la disposition interne au panel, les actions de la souris sur le panel…. alors allons-y: voici le fichier de configuration correspondant à l'image ci-dessus:

#---------------------------------------------
# TINT2 CONFIG FILE
#---------------------------------------------
# For more information about tint2, see:
# http://code.google.com/p/tint2/wiki/Welcome
#
# For more config file examples, see:
# http://crunchbanglinux.org/forums/topic/3232/my-tint2-config/

# Background definitions
# ID 1
rounded = 0
border_width = 0
background_color = #ffffff 5
border_color = #828282 0

# ID 2 - task active
rounded = 1
border_width = 0
background_color = #d8d8d8 30
border_color = #d8d8d8 30

# ID 3 - task
rounded = 1
border_width = 0
background_color = #000000 0
border_color = #000000 0

# ID 4
rounded = 1
border_width = 1
background_color = #888888 20
border_color = #ED2323 60

# ID 5 - taskbar
rounded = 0
border_width = 1
background_color = #000000 0
border_color = #000000 0

# ID 6 - active taskbar
rounded = 0
border_width = 1
background_color = #d8d8d8 8
border_color = #d8d8d8 0

# ID 7 - tooltip
rounded = 3
border_width = 0
background_color = #222222 90
border_color = #222222 90

# ID 8
rounded = 1
border_width = 1
background_color = #888888 20
border_color = #888888 20

# Panel
panel_monitor = all
panel_position = top center horizontal
panel_items = LTSC
panel_size = 100% 30
panel_margin = 0 -1
panel_padding = 0 0
panel_dock = 0
wm_menu = 1
panel_layer = bottom
panel_background_id = 1

# Panel Autohide
autohide = 0
autohide_show_timeout = 0.3
autohide_hide_timeout = 1.5
autohide_height = 6
strut_policy = follow_size

# Taskbar
taskbar_mode = multi_desktop
taskbar_padding = 6 0 6
taskbar_background_id = 5
taskbar_active_background_id = 6
taskbar_name = 1
taskbar_name_background_id = 0
taskbar_name_active_background_id = 0
taskbar_name_font = Liberation Sans 9
taskbar_name_font_color = #828282 100
taskbar_name_active_font_color = #828282 100

# Tasks
urgent_nb_of_blink = 20
task_icon = 1
task_text = 0
task_centered = 1
task_maximum_size = 40 40
task_padding = 2 2
task_background_id = 3
task_active_background_id = 2
task_urgent_background_id = 4
task_iconified_background_id = 3

# Task Icons
task_icon_asb = 80 0 0
task_active_icon_asb = 100 0 0
task_urgent_icon_asb = 100 0 0
task_iconified_icon_asb = 80 0 0

# Fonts
task_font = Liberation Sans 06_55 6
task_font_color = #828282 60
task_active_font_color = #828282 100
task_urgent_font_color = #FFFFFF 100
task_iconified_font_color = #d8d8d8 60
font_shadow = 0

# Launcher
launcher_padding = 8 4 4
launcher_background_id = 0
launcher_icon_size = 24
# Specify icon theme names with launcher_icon_theme. 
# if you have an XSETTINGS manager running (like xfsettingsd), tint2 will follow your current theme.
launcher_icon_theme = gnome-colors-statler
# Each launcher_item_app must be a full path to a .desktop file
launcher_item_app = /usr/share/applications/terminator.desktop
launcher_item_app = /usr/share/applications/Thunar.desktop
launcher_item_app = /usr/share/applications/geany.desktop
launcher_item_app = /usr/share/applications/iceweasel.desktop

# System Tray
systray = 1
systray_padding = 4 2 3
systray_sort = ascending
systray_background_id = 0
systray_icon_size = 24
systray_icon_asb = 100 0 0

# Clock
time1_format = %H:%M:%S
time1_font = Liberation Mono 10
#time2_format = %A %d %B
#time2_font = Liberation Sans 6
clock_font_color = #828282 100
clock_padding = 12 4
clock_background_id = 0
clock_lclick_command = gsimplecal
clock_rclick_command = gsimplecal

# Tooltips
tooltip = 1
tooltip_padding = 2 2
tooltip_show_timeout = 0.0
tooltip_hide_timeout = 0.0
tooltip_background_id = 7
tooltip_font_color = #d8d8d8 100
tooltip_font = Liberation Sans normal 9.0

# Mouse
mouse_middle = none
mouse_right = toggle
mouse_scroll_up = toggle
mouse_scroll_down = iconify

# Battery
battery = 1
battery_low_status = 20
battery_low_cmd = notify-send "battery low"
battery_hide = 96
bat1_font = Liberation Sans 10
bat2_font = Liberation Sans 8
battery_font_color = #FFFFFF 100
battery_padding = 2 0
battery_background_id = 0

# End of config

détaillons à présent ce fichier: il est organisé par sections contrôlant chacune une partie de tint2:

  • # backgrounds definitions: réglage des fonds et bordures de tint2, chaque 'ID' peut être assigné à une ou plusieurs parties de tint2.
    • rounded: taille en pixel de l'arrondi des angles (0=angle droit)
    • background_color: couleur et pourcentage d'opacité de l'arrière plan
    • border_color: couleur et pourcentage d'opacité de la bordure
  • # panel: position et disposition du panel
    • panel_monitor: écran d'affichage et de gestion de tint2, mettre sur 'all' pour un affichage sur les différents écrans.
    • panel_position: placement sur l'écran sous la forme 'place' 'alignement' 'disposition'
    • panel_items: organisation du panel, 'L'launcher - 'T'askbar - 'S'systray - 'B'batterie - 'C'clock
    • panel_size: taille du panel sous la forme 'largeur' 'hauteur'
    • panel_margin: décallage au bord d'écran sous la forme 'marge horizontale' 'marge verticale'
    • panel_padding: marge intérieure à tint2 sous la forme 'marge horizontale' 'marge verticale' 'espace entre les éléments'
    • panel_dock: traite tint2 comme un dock (0 non, 1 oui)
    • wm_menu: un clic-droit affiche le menu du gestionnaire de fenêtres si il existe (0 non, 1 oui)
    • panel_layer: profondeur du panel sous la forme 'bottom'en-dessous - 'normal'normal - 'top'au-dessus
    • panel_background_id: background appliqué au panel
  • # panel autohide: propriétés du masquage automatique
    • autohide: 0 non - 1 oui
    • autohide_show_timeout: delai d'affichage de tint2
    • autohide_hide_timeout: delai de masquage de tint2
    • autohide_height: taille de tint2 masqué en pixels
    • strut_policy: conditions d'affichage sous la forme 'follow_size' suit la taille des fenêtres maximisées - 'minimum' utile avec de l'autohide - 'none' aucune
  • # taskbar: réglages de la barre de tâches
    • taskbar_mode: 'single_desktop' ne gère qu'un bureau - 'multi_desktop' gère tous les bureaux
    • taskbar_padding: marge intérieure à la taskbar sous la forme 'marge horizontale' 'marge verticale' 'espace entre les tâches'
    • taskbar_background_id: background appliqué à la barre de tâche
    • taskbar_active_background_id: background appliqué à la barre de tâche active
    • taskbar_name: afficher le nom du bureau (O non, 1 oui)
    • taskbar_name_background_id: background appliqué au nom du bureau
    • taskbar_name_active_background_id: background appliqué au nom du bureau actif
    • taskbar_name_font: police utilisée pour le nom du bureau
    • taskbar_name_font_color: couleur et pourcentage d'opacité du texte du nom du bureau
    • taskbar_name_active_font_color: couleur et pourcentage d'opacité du texte du nom du bureau actif
  • # tasks: réglage des fenêtres de tâches
    • urgent_nb_of_blink: nombre de flash sur l'application urgente
    • task_icon: afficher les icones des tâches (O non, 1 oui)
    • task_text: afficher le texte des tâches (0 non, 1 oui)
    • task_centered: centrer l'affichage dans les tâches (0 non, 1 oui)
    • task_maximum_size: taille maximale des tâches sous la forme 'largeur max' 'hauteur max'
    • task_padding: marges internes aux tâches sous la forme 'marge horizontale ' marge verticale'
    • task_background_id: background appliqué aux tâches
    • task_active_background_id: background appliqué aux tâches actives
    • task_urgent_background_id: background appliqué aux tâches urgentes
    • task_iconified_background_id: background appliqué aux tâches minimisées
  • # task icons: réglages des icones dans la barre de tâches
    • task_icon_asb: coloration des icones sous la forme 'alpha'de 0 à 100 - 'saturation' de -100 à 100 - 'luminosité' de -100 à 100
    • task_active_icon_asb: coloration des icones actives
    • task_urgent_icon_asb: coloration des icones urgentes
    • task_iconified_icon_asb: coloration des icones minimisées
  • # fonts: réglages des polices utilisées
    • task_font: police de la barre de tâches sous la forme 'police' 'style' 'taille'
    • task_font_color: couleur et pourcentage d'opacité de la police des tâches
    • task_active_font_color: couleur et pourcentage d'opacité de la police des tâches actives
    • task_urgent_font_color: couleur et pourcentage d'opacité de la police des tâches urgentes
    • task_iconified_font_color: couleur et pourcentage d'opacité de la police des tâches minimisées
    • font_shadow: ombre portée au texte (0 non, 1 oui)
  • # launcher: réglages des lanceurs
    • launcher_padding: marges internes à la section launcher sous la forme 'marge horizontale' 'marge verticale' 'espace entre les lanceurs'
    • launcher_background_id: background appliqué aux lanceurs
    • launcher_icon_size: taille des icones des lanceurs
    • launcher_icon_theme: theme d'où sont issues les icones des lanceurs
    • launcher_item_app: adresse du lanceur (au format .desktop)
  • # system tray: réglages de la zone de notification
    • systray: afficher la zone de notification (O non, 1 oui)
    • systray_sort: classement des icones dans la zone de notification
    • systray_background_id: background appliqué à la zone de notification
    • systray_icon_size: taille des icones de la zone de notification
    • systray_icon_asb: coloration des icones sous la forme 'alpha'de 0 à 100 - 'saturation' de -100 à 100 - 'luminosité' de -100 à 100
  • # clock: réglages de l'horloge
    • time1_format: format de la première ligne (man strftime)
    • time1_font: police utilisée pour la première ligne
    • time2_format: format de la seconde ligne
    • time2_font: police utilisée pour la seconde ligne
    • clock_font_color: couleur et pourcentage d'opacité de la police de l'horloge
    • clock_padding: marges internes à l'horloge sous la forme 'marge horizontale' 'marge verticale'
    • clock_background_id: background appliqué à l'horloge
    • clock_lclick_command: action lors d'un clic gauche sur l'horloge
    • clock_rclick_command: action lors d'un clic droit sur l'horloge
  • # tooltips: réglages des bulles d'aides
    • tooltip: afficher les bulles d'aides (0 non, 1 oui)
    • tooltip_padding: marges internes aux bulles d'aides sous la forme 'marge horizontale' 'marge verticale'
    • tooltip_show_timeout: delai d'affichage des bulles d'aides
    • tooltip_hide_timeout: delai de masquage des bulles d'aides
    • tooltip_background_id: background appliqué aux bulles d'aides
    • tooltip_font_color: couleur et pourcentage d'opacité de la police des bulles d'aides
    • tooltip_font: police utilisée pour les bulles d'aides sous la forme 'police' 'style' 'taille'
  • # mouse: réglages des actions de la souris sur les tâches: accepte les arguments suivants: none (aucun), close(fermer la fenêtre), toggle(bascule le focus), iconify(minimise), shade(enroule), toggle_iconify(minimise/restaure), maximize_restore(maximise/restaure), desktop_left(envoi au bureau de gauche), desktop_right(envoi au bureau de droite), next_task(tâche suivante), prev_task(tâche précédente).
    • mouse_middle: action au clic central
    • mouse_right: action au clic droit
    • mouse_scroll_up: action au défilement vers le haut
    • mouse_scroll_down: action au défilement ders le bas
  • # battery: réglages du contrôleur d'alimentation
    • battery: affiche la batterie (0 non, 1 oui)
    • battery_low_status: pourcentage de charge pour le status 'faible'
    • battery_low_cmd: commande éxécutée lors du status 'faible'
    • battery_hide: pourcentage de charge maximum pour afficher la batterie
    • bat1_font: police utilisée pour la batterie
    • bat2_font: ?
    • battery_font_color: couleur et pourcentage d'opacité de la police de la batterie
    • battery_padding: marges internes à la batterie
    • battery_background_id: background appliqué à la batterie

astuces

  • intégrer un applet de corbeille avec tint2 et thunar (sources coyotus sur LinuxTrack):
    créer un fichier nommé corbeille.desktop avec le contenu suivant dedans.
    Name=Corbeille
    Comment=Corbeille
    Exec=thunar trash:///
    Icon=/home/$USER/.icons/votre_thème_icone/filesystems/gnome-fs-trash-empty.png
    Terminal=false
    Type=Application
    Categories=other

    ensuite, éditer votre tint2rc et ajouter le launcher de corbeille:

    # Each launcher_item_app must be a full path to a .desktop file
    launcher_item_app = /usr/share/applications/corbeille.desktop

    résultat:

sources: wiki tint2 sur google code + wiki tint2 sur crunchbanglinux-fr

conclusion

panels ou docks, le but est de vous simplifier la tâche. pour certains (dont j'avoue faire partie) rien ne vaut le raccourcis clavier, mais ces petits outils sont très pratiques et permettent de consacrer les raccourcis à d'autres applications ou à la gestion des fenêtres.

personaliser/panels.txt · Dernière modification: 2018/11/17 12:54 (modification externe)