##########################################################################
# Fichier de configuration ~/.fvwm/.fvwm2rc pour fvwm version 2.5.12
# Dernière modification : 2004-10-16
# Bin Zhang <bb.zhang@free.fr>, http://bb.zhang.free.fr
##########################################################################

############################ Introduction ################################

# Je veux faire une configuration simple tout en essayant
#  d'avoir un rendu le plus beau possible, tout cela sans aucune
#  connaissance de programmation. Il suffit de lire mes commentaires et 
#  faire un peu de recherche dans le doc ou faq officiel (les deux 
#  premiers liens ci-dessous) pour comprendre ma configuration (elle
#  est simple !!!).
#
# Mes objectifs sont
# - Adapter à l'usage d'un portable sans souris et d'un petiet écran 
#   LCD 14" (j'utilise Touchpad + clavier).
# - Utiliser un seul fichier de configuration .fvwm2rc
# - Ne pas avoir besoin d'icônes (sauf que j'ai installé le package 
#   fvwm-icons pour faire plaisir au package menu), je ne suis pas un 
#   amateur d'icônes.
# - Sur une petite bande verticale à l'extrêmité droite de l'écran, je vais 
#   mettre gkrellm, wmpinboard, un petit lanceur d'apllications
#   et un pager (FvwmPager et FvwmButtons sont deux modules 
#   très très bien conçus et puissants, ils sont suffisants pour créer une 
#   config simple et efficace).
# - Utiliser un fond d'écran pour la transparance des menus, de FvwmPager, 
#   des FvwmButtons, de gkrellm, de gnome-terminal, de vim et de mutt.
#   Je préfère la root-transparence à la transparence totale (translucent)
#   pour plus de lisibilité.

# Liens 
##### Les essentiels #####
# - Man page agréable à lire, surtout facile à rechercher des mots
#   http://www.fvwm.org/documentation/manpages/unstable/
# - FAQ officiel
#   http://www.fvwm.org/documentation/faq/
#
##### Une très bonne introduction
# - Une introduction à FvwmButtons par Tavis Ormandy
#   http://forums.gentoo.org/viewtopic.php?t=162177
#
##### Des configs trouvés sur le web pour aller plus loin #####
# - Le .fvwm2rc de Tavis Ormandy
#   http://dev.gentoo.org/~taviso/fvwm2rc.html
# - La page de Syzygy
#   http://desintegr.free.fr/?page=linux/fvwm
# - Une page de lafouine
#   http://cestle9la.free.fr/
# - Une autre page 
#   http://www.linux.net.pl/~harnir/fvwm-crystal/
#
#####  Paquets non officiels pré patchés (translucent =transparent total) 
#   http://netzverschmutzer.net/~sbeyer/debian/

# Comment construire son propre fichier de configuration .fvwm2rc ???
# - J'ai commencé ma config en copiant la config globale par défaut de
#   Debian. Sinon, on peut aussi par exemple utiliser google 
#   mot clé fvwm2rc ou aller sur le site www.fvwm.org, trouver d'abord 
#   un screenshot proche de ce qu'on veut et récupérer le .fvwm2rc 
# - Mettre ce fichier dans le répertoire ~/.fvwm
# - Lancer fvwm pour voir le résultat.
# - Modifier le fichier ~/.fvwm/.fvwm2rc pour finaliser.
#   Méthode 1 : modifier directement ce fichier puis relancer fvwm
#               (Pas besoin de quiiter la session !!!).
#   Méthode 2 : utiliser FvwmConsole qui est particulièrement utile 
#               pour tester de nouvelles idées.
#               Attention : Ctrl + d ou Ctrl + c pour le quitter.
#               Lire le man page de FvwmConsole pour savoir comment
#               le lancer. Si l'on veut pouvoir le lancer depuis un 
#               terminal, lire le man page de FvwmCommand.
#   Le mieux est de combiner ces deux méthodes.

##########################################################################


############################ Images et Icônes ############################

# Les images et icones utilisée par le package menu
ImagePath /usr/X11R6/include/X11/pixmaps

##########################################################################



############################ Bureaux #####################################

# DeskTopSize définit la taille des desks (bureau virtuel) 
# en nombre d'écrans physiques ("pages"). 
# Le nombre de desks est "illimité". 
# 
# Je veux que chaque desk est composé de 4 pages en deux lignes 
# et deux colonnes. Elles ont les coordonnées 0 0, 1 0, 1 0, 1 1
#       -------------------
#       |  0  0  |  1  0  |
#       -------------------
#       |  0  1  |  1  1  |
#       -------------------
DeskTopSize 2x2

# Je préfère ne pas passer sur une autre page
# quand le pointeur de la souris arrive au bord de l'écran. 
# EdgeThickness=0 désactive edge scrolling et EdgeCommand
EdgeResistance 15 100
EdgeThickness 0

##########################################################################



############ Décoration générale des Fenêtres et des Icônes ##############

# Polices des titres pour les fenêtres et les icônes 
# J'utilise true type fonts.
Style * Font "xft:Bitstream Vera Sans:Bold:size=10:encoding=iso8859-1"
Style * IconFont "xft:Bitstream Vera Sans:Medium:size=10:encoding=iso8859-1"

# Les bords des fenêtres
#Style * BorderWidth 4   #ceci est inutile à cause de la ligne suivante
Style * HandleWidth 4

# Couleurs des textes et de l'arrière plan des fenêtres ou des icônes.
# Quand la fenêtre est activée (au premier plan) :
Style * HilightFore white, HilightBack steelblue
# Quand une fenêtre est non acivée (en arrière plan) :
Style * Color Black/DarkGrey

# Style à la MWm
Style * MWMFunctions, MWMDecor, HintOverride, MWMBorder
Style * DecorateTransient

# On déssine les formes des boutons sur les barres de titre des fenêtres.
# J'utilise 5 boutons (Je ne définis que leur formes ici, mais 
# pas leur actions, elles sont dans la section "mouse binding" ci-dessous). 
# Un seul bouton à gauche (bouton 1, non défini ici, donc utiliser le défaut),
# qui affiche un menu d'options des fenêtres (menu Windows Ops). 
# Quatre autres boutons à droite (numérotés sous la forme "|8|6|4|2|"),
# qui sont (de doite à gauche) : close, maximise, iconify and shade. 
#   ____________________________________________________
#   | 1                                     8  6  4  2 |
#   |--------------------------------------------------|
#   |                                                  |
# les formes : 1=tiret, 2=croix, 4=carré, 6=point, 8=triangle vers le bas
ButtonStyle Reset
ButtonStyle 2 Vector 17 20x20@1 30x20@1 50x40@1 70x20@1 80x20@1 80x30@0 \
                     60x50@0 80x70@0 80x80@0 70x80@0 50x60@0 30x80@0 \
                     20x80@0 20x70@1 40x50@1 20x30@0 20x20@1
ButtonStyle 4 Vector 5 25x75@0 75x75@0 75x25@0 25x25@1 25x75@1
ButtonStyle 6 Vector 5 45x45@1 55x45@1 55x55@0 45x55@0 45x45@1
ButtonStyle 8 Vector 4 50x75@1 25x25@1 75x25@1 50x75@0

##########################################################################



############### Placement des fenêtres ###################################

# La meilleur façon de placer des fenêtres une après l'autre quand
# on lance des applications. Ne pas changer!
Style * MinOverlapPercentPlacement
Style * NoPPosition, CaptureHonorsStartsOnPage

# Focusing the windows 
Style * MouseFocusClickRaises
Style * FPAllowFocusClickFunction, FPAllowRaiseClickFunction

# Définition de l'iconebox (l'endoit où va quand "iconify a window" )
# coordonnées : left=0, top=-10, right=-280, bottom=-1 
Style * IconBox 0 -10 -280 -1
Style * Icon unknown.xpm

##########################################################################



########################### Décoration spéciale ##########################

Style Fvwm* NoTitle, Sticky, WindowListSkip, CirculateSkip, CirculateSkipIcon
Style FvwmButtons NeverFocus, StaysOnBottom, NoHandles, BorderWidth 0
Style FvwmPager NeverFocus, StaysOnTop, NoHandles, BorderWidth 1
Style FvwmIdent Title, WindowListHit, CirculateHit
Style gkrellm Sticky, WindowListSkip, NoTitle, CirculateSkip, BorderWidth 0

##########################################################################



######################## Menus ####################################

# Décoration des menus
Colorset 1 RootTransparent buffer, fg rgb:ff/ff/c4, bg average, \
       Tint black 55, bgTint black 55
# 55 ci-dessus détermine le degré de transparence
#
MenuStyle * MenuColorset 1
#MenuStyle * Mwm, Foreground black, Background grey, Greyed white
Menustyle * Font "xft:Bitstream Vera Sans:Bold:size=10:encoding=iso8859-1"

# Le contenu du Root-Menu.
#
# J'utilise rarement le Root-Menu, donc pour simplifier la vie, 
# je prends le défaut "Debian Menu".
# Installer le package menu, la commande "# update-menus" produit
# la mise à jour du "Debian Menu".
Read /etc/X11/fvwm/menudefs.hook Quiet
#
# Ajouter "restart" et "quit" à la fin du root-menu
AddToMenu /Debian
+  ""            Nop
+  "Restart Fvwm" Restart
+  "Exit Fvwm"   Quit

# The Window-Ops menu is for manipulating windows.
DestroyMenu Window-Ops
AddToMenu Window-Ops "Alt-F1: Window Ops" Title
+ "Alt-F2:  Main Menu"                   Popup /Debian
+ "Alt-F3:  Lower"                       Lower
+ "Alt-F4:  Window List"                 WindowList
+ "Alt-F5:  Previous"                    Prev
+ "Alt-F6:  Next"                        Next
+ "Alt-F7:  Move"                        Move
+ "Alt-F8:  Resize"                      Resize
+ "Alt-F9:  (De)Iconify"                 Iconify
+ "Alt-F10: (Un)Maximize to screen"      Maximize 100 100
+ "Alt-F11: Raise"                       Raise
+ "Alt-F12: (Un)Stick"                   Stick
+ "         (Un)Maximize vertical"       Maximize 0 100
+ "         (Un)Maximize horizontal"     Maximize 100 0
+ "         (Un)Shade"                   WindowShade
+ ""                                     Nop
+ "         ScrollBar"                   Module FvwmScroll 2 2
+ ""                                     Nop
+ "         Destroy"                     Destroy
+ "         Close"                       Close

# Un petit Menu pour la touche "Menu" du clavier :
DestroyMenu "Help"
AddToMenu "Help" "Rappel de mes KeyBindings" Title Top
+ "&xterm (Ctrl+x)"     Exec exec gnome-terminal
+ "&Mutt (Ctrl+m)"      Exec exec gnome-terminal --geometry 80x35 --title "Mutt" -e mymutt
+ "Mutt-&Chinese (Ctrl+M)"      Exec exec xcinterm-gb2312 -geometry 80x35 -title "Mutt-chinese" -n "mutt-chinese" -e mymutt
+ "Mo&zilla-firefox (Ctrl+n)"   Exec exec firefox
+ "&Vim (Ctrl+v)"       Exec exec gvim
+ "&LyX (Ctrl+l)"       Exec exec lyx
#+ "&amsn (Ctrl+a)"     Exec exec amsn
+ "&Gaim-chinese (Ctrl+g)"      Exec exec xcinterm-gb2312 -e gaim
+ "Fetchmail-&daemon (Ctrl+F)"  Exec exec fetchmail --daemon 600
+ "&Fetchmail (Ctrl+f)" Exec exec xterm -e fetchmail
+ "&Yet Another FTP Client (Ctrl+y)" Exec exec rxvt -fg wheat -bg black -T "Yet Another FTP Client" -e /usr/bin/yafc
+ "&Lock Screen (XScreenSaver) (Ctrl+L)" Exec exec /usr/bin/xscreensaver-command -lock
+ "&Synaptic (Ctrl+s)" Exec exec gksu -u root /usr/sbin/synaptic
+ "&Unison-gtk (Ctrl+u)" Exec exec xterm -e unison-gtk
+ ""            Nop
+  "Restart Fvwm" Restart
+  "Exit Fvwm"   Quit

##########################################################################



########################### Mouse bindings ###############################

# Syntax :
# Mouse Button Context Modifiers Function
#
# Defines a mouse binding, or removes the binding if Function is '-'. 
#
# Button is the mouse button number. 
# If Button is 0 then any button performs the specified function.
#
# Context describes where the binding applies:
# R = root window 
# W = an application window
# D = desktop application (as kdesktop or Nautilus desktop)
# T = window title-bar
# S = window side, top, or bottom bar
# [, ], -, _ = left, right, top, bottom (side)
# F = window frame (the corners)
# <, ^, >, v = top left, top right, bottom right, bottom left (corner)
# I = Icon window
# 0 through 9 = title-bar buttons
# or any combination of these letters 
# A = any context 
#
# Modifiers:
# N = no modifiers
# C = Ctrl =control
# S = Shift
# M =Alt = Meta
# A = any modifier
#
# Function is one of fvwm's commands

# Each button gives a different menu from the background (root window).
Mouse 1   R  A  Menu /Debian    # 1=left button, R=root window
Mouse 2   R  A  Menu Window-Ops # 2=boutton au milieu
Mouse 3   R  A  WindowList      # 3=right button

# Just not to get accidental exit
# Mouse wheel bindings (inutile pour moi, je n'en ai pas)
Mouse 4   R  A  Menu /Debian
Mouse 5   R  A  Menu /Debian

# Moving and resizing, depending on which part of the window
# you grab (T=title bar, S=side/top/bottom, F=corner).
Mouse 0 T A move-and-raise-or-raiselower        # 0=n'importe quel boutton
# This caused problems with emacs selection (Bug #17668).
# Mouse 0 W M move-and-raise-or-raiselower
Mouse 0 W M   -
Mouse 0 F A resize-or-raiselower
Mouse 0 S A resize-or-raiselower

# Move or de-iconify an icon.
Mouse 0 I A move-or-winmenu-or-deiconify

# Buttons on the title bar (1,3,5,7,9 are on the left, 0,8,6,4,2 on
# the right side of the title bar).  Note that the bindings here
# make more sense if the ButtonStyle's defined earlier are retained.
Mouse 0 1 A Popup Window-Ops
Mouse 0 6 A Iconify
Mouse 0 2 A Close
Mouse 1 4 A Maximize 100 100
Mouse 2 4 A Maximize 0 100
Mouse 3 4 A Maximize 100 0
Mouse 0 8 A WindowShade

##########################################################################


############################ Key bindings ################################

# Syntax :
# Key Keyname Context Modifiers Function
#
# Binds a keyboard key to a specified fvwm command, 
# or removes the binding if Function is '-'. 
# The syntax is the same as for a Mouse binding except that 
# the mouse button number is replaced with a Keyname.
# Voir ci-dessus la section sur Mouse bindings

#Key Tab   A    M    Next [CurrentPage !iconic] focus-and-raise
Key Tab   A    M    RaiseLower
Key Tab   A    MS   Prev [CurrentPage !iconic] focus-and-raise
Key Tab   A    CM   Next [CurrentPage] deiconify-and-focus
Key Tab   A    CMS  Prev [CurrentPage] deiconify-and-focus

# Pour bouger entre les pages du desk actuel
Key Left  A    C    Scroll -100 +0      # Ctrl + left arrow
Key Up    A    C    Scroll +0 -100
Key Right A    C    Scroll +100 +0
Key Down  A    C    Scroll +0 +100
# Pour changer de desks (au cas où le module FvwmPager affiche deux desks)
#Key Page_Up A C  Desk 0 0              # Ctrl + PgUp
#Key Page_Down  A C  Desk 0 1           # Ctrl + PgDn

# Appuyer sur la touche Menu (en haut à gauche du clavier) 
Key Menu  A    N    PopUp Help

Key F1    A    M    Popup Window-Ops
Key F2    A    M    Popup /Debian
Key F3    A    M    Lower
Key F4    A    M    WindowList
Key F5    A    M    Prev
Key F6    A    M    Next
Key F7    A    M    Move
Key F8    A    M    Resize
Key F9    A    M    Iconify
Key F10   A    M    Maximize 100 100
Key F11   A    M    Raise
Key F12   A    M    Stick

# Pour lancer des applications fréquemment utilisées
Key E     A    C    Exec exec evolution
Key M     A    C    Exec exec gnome-terminal --geometry 80x35 -t \
        "Mutt" -e "mutt -f $HOME/mail/inbox"
Key M     A    CS   Exec exec xcinterm-gb2312 -geometry 80x35 -title \
        "Mutt-chinese" -n "mutt-chinese" -e "mutt -f $HOME/mail/inbox"
Key N     A    C    Exec exec firefox
Key X     A    C    Exec exec gnome-terminal
Key V     A    C    Exec exec gvim
Key L     A    C    Exec exec lyx
Key A     A    C    Exec exec amsn
Key G     A    C    Exec exec xcinterm-gb2312 -e gaim
Key F     A    CS   Exec exec fetchmail --daemon 600
key F     A    C    Exec exec xterm -e fetchmail
Key Y     A    C    Exec exec rxvt -fg white -bg black -T \
        "Yet Another FTP Client" -e /usr/bin/yafc
Key L     A    CS       Exec exec /usr/bin/xscreensaver-command -lock
Key S     A    C        Exec exec gksu -u root /usr/sbin/synaptic
key U     A    C       Exec exec xterm -e unison-gtk

# Voir plus loin ci-dessous pour l'usage de la touche "Windows logo"

##########################################################################



############################# Functions ##################################

# This section defines various functions.  Not all of these are used by
# the default bindings, but they can be useful for a user who wants to
# customize things.
#
# The following functions operate on a window or menu.  The
# names are systematic: foo means "do foo"; foo-or-bar means
# "do foo, if mouse is moving, bar if click"; and foo-or-bar-or-baz
# adds "baz, if double-clicked".

DestroyFunc move-or-winmenu-or-deiconify
AddToFunc   move-or-winmenu-or-deiconify
+ "M" Move
+ "C" Popup Window-Ops
+ "D" Iconify

DestroyFunc deiconify-and-focus
AddToFunc   deiconify-and-focus
+ "I" Iconify -1
+ "I" Focus

DestroyFunc deiconify-and-raise
AddToFunc   deiconify-and-raise
+ "I" Iconify -1
+ "I" Raise

DestroyFunc focus-and-raise
AddToFunc   focus-and-raise
+ "I" Focus
+ "I" Raise

DestroyFunc move-or-raiselower
AddToFunc   move-or-raiselower
+ "M" Move
+ "C" RaiseLower

DestroyFunc move-and-raise-or-raiselower
AddToFunc   move-and-raise-or-raiselower
+ "M" Move
+ "M" Raise
+ "C" RaiseLower

DestroyFunc move-or-raiselower-or-maximize-vertical
AddToFunc   move-or-raiselower-or-maximize-vertical
+ "M" Move
+ "C" RaiseLower
+ "D" Maximize 0 100

DestroyFunc resize-or-raiselower
AddToFunc   resize-or-raiselower
+ "M" Resize
+ "C" RaiseLower

##########################################################################



################################ Module Config ###########################

# J'utilse principalement les deux modules FvwmPager et FvwmButtons.
# Ces deux modules sont largement suffisants pour faire une config
# simple et efficace. 
# Le module FvwmProxy donne un petit plus agréable.

# FvwMPager
#
# Pour Non transparence :
# Pager background and foreground
Colorset 2  bg #502000, fg #C0C0C0
Colorset 3  bg #004020, fg #C0C0C0
# Pager inactive and active window colors
Colorset 4  bg #808080
Colorset 5  bg #FCFF00
#
# Pour la Tranparence :
Colorset 6 RootTransparent buffer, fg red, bg darkcyan
*FvwmPager: Colorset * 6
#
Style FvwmPager ParentalRelativity
#
*FvwmPager: Geometry 80x62-0-0
*FvwmPager: Rows 1
*FvwmPager: Columns 1
#*FvwmPager: Colorset * 2
*FvwmPager: HilightColorset * 3
*FvwmPager: WindowColorsets 4 5
*FvwmPager: Window3DBorders
# Font pour les noms des desks :
#*FvwmPager: Font "xft:Bitstream Vera Sans:Medium:size=8:encoding=iso8859-1"
#On n affiche pas de label pour chaque desk
*FvwmPager: Font none
# Le nom du desk no.1 :
*FvwmPager: Label 0 zhang
# Le nom du desk no.2 :
#*FvwmPager: Label 1 TeX                
# Font pour les noms des fenêtres dans les pages :
*FvwmPager: SmallFont "xft:Bitstream Vera Sans:Medium:size=6:encoding=iso8859-1"
*FvwmPager: Balloons All
*FvwmPager: BalloonBack Yellow
*FvwmPager: BalloonFore Black
*FvwmPager: BalloonFont "xft:Bitstream Vera Sans:Medium:size=6:encoding=iso8859-1"
*FvwmPager: BalloonYOffset      +2
*FvwmPager: BalloonBorderWidth  1
*FvwmPager: BalloonBorderColor  Black

# Définir un lanceur d'applications à l'aide de FvwmButtons
#
Colorset 7 RootTransparent buffer, fg yellow, bg darkcyan
DestroyModuleConfig Launch: *
*Launch: Columns 1
*Launch: Rows 8
*Launch: Font "xft:Bitstream Vera Sans:style=Roman:size=7"
*Launch: Colorset 7
*Launch: Frame 0
# Ci-dessous axb signifie un bouton qui occupe a colonnes et b lignes
*Launch: (1x1, Title "firefox", Action(Mouse 1) 'Exec exec firefox')
#*Launch: (1x1, Title "FvwmConsole", Action(Mouse 1) 'Module FvwmConsole -terminal rxvt -bg gold -fg midnightblue -fn "-adobe-courier-medium-r-*-*-14-*-*-*-*-*-*-*"')
*Launch: (1x1, Title "gaim", Action(Mouse 1) 'Exec exec \
        xcinterm-gb2312 -e gaim')
*Launch: (1x1, Title "gimp", Action(Mouse 1) 'Exec exec gimp-2.0')
*Launch: (1x1, Title "gvim", Action(Mouse 1) 'Exec exec gvim')
*Launch: (1x1, Title "lyx", Action(Mouse 1) 'Exec exec lyx')
*Launch: (1x1, Title "evolution", Action(Mouse 1) 'Exec exec evolution')
#*Launch: (1x1, Title "mutt", Action(Mouse 1) 'Exec exec gnome-terminal \
        --geometry 80x35 --title "Mutt" -e "mutt -f $HOME/mail/inbox"')
*Launch: (1x1, Title "skype", Action(Mouse 1) 'Exec exec skype')
*Launch: (1x1, Title "terminal", Action(Mouse 1) 'Exec exec gnome-terminal')

# Un autre FvwmButtons
#
# Pour bouton transparent sans bord:
*FvwmButtons: Frame 0
*FvwmButtons: Colorset 7
#*FvwmButtons: ButtonGeometry   64x64-0-64
#*FvwmButtons: ButtonGeometry   80x74-0-74
*FvwmButtons: Columns 1
*FvwmButtons: (Swallow (NoClose, UseOld) "wmpinboard" 'Exec exec wmpinboard'

# Lancer la commande xev, appuyer sur la touche "Windows logo" 
# qui est la troisième à droite de F12 sur mon portable.
# Je vois afficher 
# ...keycode 115 (keysym 0xffeb, Super_L)...
# Tout cela est défini dans /usr/include/X11/keysymdef.h
# Donc cette touche s'appelle Super_L
#
# Configurer pour que appuyer sur cette touche "to toggle FvwmProxy, 
# which allows you to see all windows on your
# desktop, even if they've been obscured..really cool".
DestroyModuleConfig FvwmProxy: *
*FvwmProxy: ProxyMove true
Key  Super_L  A  N  SendToModule FvwmProxy ShowToggle

##########################################################################



#################### Fonctions d'initialisation ##########################

# Start, Init and restart functions
#
# This section defines the functions StartFunction, InitFunction and
# RestartFunction.
#
# InitFunction is executed automatically when fvwm first starts.
# RestartFunction is executed automatically when fvwm restarts itself.
# StartFunction is the two types.
#
# StartFunction should be used for starting fvwm modules, such as the
# button bar.  InitFunction should be used to start other applications; they
# should not be started again, when fvwm is restarted, since they don't
# die like fvwm modules do. RestartFunction exists mostly for completeness.

DestroyFunc StartFunction
AddToFunc StartFunction
# Le pager affiche deux desks :
#+ I Module FvwmPager 0 1 
# Le pager affiche un seul desk :
+ I Module FvwmPager 0 0
+ I Module FvwmButtons -g 81x120-0-64 Launch
+ I Module FvwmButtons -g 81x74-0-186
+ I Module FvwmProxy

# Pour certaines applications, SkipMapping ne marche pas.
# Il faut essayer et tester.
#
# Pour korganizer, utiliser !FPFocusByFunction résoud le pb.
# Je veux que korganizer soit toujours sur le premier desk 
# et sur la page de coordonnées 1 0
Style korganizer StartsOnPage 0 1 0, SkipMapping, !FPFocusByFunction
#
# Pour firefox ou sunbird, utiliser "Firefox-bin" ou "Sunbird-bin" 
Style "Sunbird-bin" StartsOnPage 0 1 0, SkipMapping

DestroyFunc InitFunction
AddToFunc InitFunction
+ I Exec exec gkrellm  --geometry -0+0
#+ I Exec exec korganizer
+ I Exec exec sunbird
+ I GotoPage 0 0
+ I Exec exec gnome-terminal
+ I Exec exec firefox

##########################################################################