ImagePath /usr/X11R6/include/X11/pixmaps/:/home/sacha/pixmaps/:/usr/X11R6/include/X11/bitmaps/

Read /etc/X11/fvwm/pre.hook Quiet
Read pre.hook Quiet

DeskTopSize 1x1

EdgeScroll 100 100

EdgeResistance 250 100

OpaqueMoveSize 100

# Put the defaults in a separate decor so decor users can ignore them
Read /etc/X11/fvwm/default-style.hook Quiet
Read default-style.hook Quiet

Style "*" UseStyle default-style

Style "*" WindowShadeSteps 30

# I have commented out the RandomPlacement and the SmartPlacement styles,
# replacing them by ActivePlacement (which should be the default anyway).
# Also, NoPPostion completes this, although this may occasionally cause
# problems.  (Please let me know if this be the case!)
# I think it can be annoying for windows to suddenly appear without the
# user having an initial choice of where they do so.  This is, of course,
# completely changeable within the user's post.hook.

Style "*" BackingStoreOff, SaveUnderOff

Style "*" BorderWidth 2
Style "*" HandleWidth 2
Style "*" SmartPlacement
Style "*" RandomPlacement
Style "*" NoPPosition
Style "*" IconBox  50 -200 -1 -60
#Style "*" SloppyFocus
Style * GrabFocusTransient
Style "*" StickyIcon
Style "*" Icon unknown1.xpm, MiniIcon mini.x.xpm
#Style * ResizeOpaque


Style "Fvwm*" NoTitle
Style "Fvwm*" WindowListSkip
Style "Fvwm*" CirculateSkip

Style "FvwmButtons" Sticky, HandleWidth 0, StaysOnTop
Style "FvwmIconMan" Sticky
Style "FvwmPager"   Sticky, StaysOnTop, Handles, HandleWidth 5

Style "FvwmIdent" Title
Style "FvwmIdent" WindowListHit
Style "FvwmIdent" CirculateHit


# Add icons to some common programs
Style "Emacs"       Icon gnu-animal.xpm, MiniIcon mini.gnu.xpm
Style "gnus"       MiniIcon gnus-pointer.xpm
Style "XTerm"       Icon xterm-linux.xpm, MiniIcon mini.xterm.xpm
#Style "xterm*"       Icon xterm-linux.xpm, MiniIcon mini.xterm.xpm
Style "rxvt*"       Icon xterm-linux.xpm, MiniIcon mini.xterm.xpm
Style "Ghostview"   Icon gv.xpm
Style "Gnuplot"     Icon graphs.xpm
Style "Xcalc"       Icon xcalc.xpm, MiniIcon mini-calc.xpm
Style "XBiff"       Icon mail1.xpm, MiniIcon mini-mail.xpm
Style "Xman"        Icon xman.xpm, MiniIcon mini-manual.xpm
Style "Xmag"        Icon mag_glass.xpm, MiniIcon mini.xmag.xpm
Style "Mosaic"      Icon Mosaic.xpm
Style "Netscape*"   MiniIcon mini.nscape.xpm, StartsOnDesk 1, SkipMapping
#Style "Mozilla*"    MiniIcon /usr/lib/mozilla/icons/mozicon16.xpm, StartsOnDesk 1, SkipMapping
Style "Mozilla*"    Icon mozilla.xpm, MiniIcon mozilla.mini.xpm, StartsOnDesk 1, SkipMapping
Style "galeon_browser"    MiniIcon galeon.mini.xpm, StartsOnDesk 1, SkipMapping
Style "Xpaint"      Icon xpaint.xpm, MiniIcon mini.xpaint.xpm
Style "Manual Page" Icon xman.xpm, MiniIcon mini-manual.xpm
Style "Xedit"       Icon textedit.xpm, MiniIcon mini-edit.xpm
Style "XMMS*"       Notitle, Icon xmms.xpm, MiniIcon xmms.mini.xpm, StartsOnDesk 0, SkipMapping
Style "GQmpeg*"     Notitle, StartsOnDesk 0, SkipMapping
Style "FreeAmp*"       Notitle, StartsOnDesk 0, SkipMapping
Style "*Gimp*"      UsePPosition, Icon wilber.xpm, MiniIcon wilber.mini.xpm, SkipMapping, StartsOnDesk 2
#Style "*VIM*"        Icon vim48x48.xpm, MiniIcon vim16x16.xpm
Style "*VIM*"       MiniIcon vim.xpm
Style "GQview*"      Icon qgview.xpm, MiniIcon gqview.mini.xpm
Style "xv*"         MiniIcon mini.xv.xpm
Style "top"         MiniIcon mini.run.xpm
Style "mutt*"       Icon mutt.xpm, MiniIcon mutt.mini.xpm
Style "XMath*"      Icon mathematica.xpm, MiniIcon mathematica.mini.xpm
#Style "ArcoRead"    MiniIcon mini-pdf.xpm
#Style "documentShell"    MiniIcon mini.pdf.xpm, StartsOnDesk 1, SkipMapping
Style "documentShell"    MiniIcon mini.pdf.xpm, SkipMapping
Style "xmailbox"     NoTitle
Style "*bitchx*"     Icon BitchX.xpm, MiniIcon BitchX.mini.xpm
Style "nap"     Icon napster.xpm, MiniIcon napster.mini.xpm
Style "xmcd"     MiniIcon xmcd_small.xpm
Style "ssh*"     Icon openssh.xpm, MiniIcon openssh.mini.xpm
Style "irssi*"   Icon xterm.xpm, MiniIcon mini.zircon.xpm, Sticky, NoTitle
Style "*Licq*"   MiniIcon online.xpm, Sticky, WindowListSkip
Style "*licq*"   MiniIcon online.xpm, Sticky, WindowListSkip
Style "procmeter3"   MiniIcon mini.graph.xpm, Sticky, WindowListSkip
Style "wmWeather" NoTitle
Style "nd"          HandleWidth 0, NoTitle, WindowListSkip, CirculateSkip
Style "Tux Racer 0.61" Icon tuxracer.xpm, MiniIcon tuxracer.mini.xpm
Style "rdesktop*" MiniIcon rdp.xpm
Style "xclipboard" NoTitle, Sticky, WindowListSkip

#
# Section: Init and restart functions
#
# This section defines the functions InitFunction and RestartFunction.
# InitFunction is executed automatically when fvwm first starts.
# RestartFunction is executed automatically when fvwm restarts itself.
# They share a common hook, init-restart.hook, and two specific hooks,
# init.hook and restart.hook.
#
# init-restart.hook should be used for starting fvwm modules, such as the
# button bar.  init-hook 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.  restart.hook exists mostly for completeness;
# tell me if you find any use for it.
#
# InitFunction runs the script setup-background, which looks in
# ~/.fvwm to see if the user wants some specific background color or
# image.
#
# The init.hook, init-restart.hook and restart.hook files should
# contain continuation lines, eg:
#   + "I" Exec xterm
#


DestroyFunc InitFunction
AddToFunc InitFunction
+ "I" Exec exec setup-background
#Read /etc/X11/fvwm/init.hook Quiet
#Read /etc/X11/fvwm/init-restart.hook Quiet
Read init.hook Quiet
Read init-restart.hook Quiet

DestroyFunc RestartFunction
AddToFunc RestartFunction
#Read /etc/X11/fvwm/restart.hook Quiet
#Read /etc/X11/fvwm/init-restart.hook Quiet
Read restart.hook Quiet
Read init-restart.hook Quiet


#
# Section: Menus
#
# This section defines a small menu structure.  The main menu contains
# some typical entries, and uses a hook (main-menu.hook) to allow the
# user to add new entries.  Most of the default entries are submenus,
# which are also defined here.
#

#
# MWM style menus are easier to use and better for Windows refugees.
#

MenuStyle "*" fvwm, Foreground black, Background grey80, Greyed white, \
  Font -*-helvetica-medium-r-normal-*-*-100-*-*-p-*-koi8-r
#  Animation

#
# Read in system and user menu definitions.
#

# Read system and user menu prefixes
# The title of the main menu will be provided by the menu-methods script
# which creates an AddToMenu /Debian "Main Menu" Title Top command in
# menudefs.hook.  We also add an xterm entry just in case the user has
# no menudefs and the menu package is not installed -- it could be quite
# embarrassing.  An example without this can be found in the examples
# directory.
#
DestroyMenu /Debian
AddToMenu /Debian

Read /etc/X11/fvwm/main-menu-pre.hook Quiet
Read main-menu-pre.hook Quiet

# Read the auto-generated menus
Read /etc/X11/fvwm/menudefs.hook Quiet
Read menudefs.hook Quiet
#You know why
#AddToMenu "/Debian" "*debian.xpm*" Title Top

# Add in user additions
Read /etc/X11/fvwm/main-menu.hook Quiet
Read main-menu.hook Quiet

# Tack a quit entry on to the end; this version uses a pop-up menu to ask
# the user to confirm, MWM-style (?).  The second line may be changed as
# indicated to use a popup form instead.  (The QuitVerify form is defined
# in system.warnings, read in later.)
AddToMenu /Debian
+  ""            Nop
+  "Exit Fvwm"   Popup Quit-Verify
# or:
# +  "Exit Fvwm"   Module FvwmForm QuitVerify

#
# The Window-Ops menu is for manipulating windows.  It is invoked either
# from the main menu, or directly from the root window.
#

DestroyMenu Window-Ops
AddToMenu Window-Ops "Window Ops%mini.windows.xpm%"           Title
+                "&Move%mini.move1.xpm%"                  Move
+                "&Resize%mini.resize3.xpm%"              Resize
+                "&Shade%mini.shade1.xpm%"                WindowShade
+                "R&aise%mini.raise2.xpm%"                Raise
+                "&Lower%mini.lower2.xpm%"                Lower
+                "(De)&Iconify%mini.iconify1.xpm%"        Iconify
+                "(Un)S&tick%mini.stick1.xpm%"            Stick
+                "(Un)M&aximize%mini.maximize1.xpm%"      Maximize 100 100
+                "(Un)Max&wide%mini.maximize-horiz1.xpm%" Maximize 100 0
+                "(Un)Max&tall%mini.maximize-vert1.xpm%"  Maximize   0 100
+                "" Nop
+                "&Identify%mini.question.xpm%"           Module FvwmIdent
+                "" Nop
+                "Move to Next Desk%mini.move1.xpm%"      MoveToDesk  1 0 3
+                "Move to Prev Desk%mini.move1.xpm%"      MoveToDesk -1 0 3
+                "" Nop
+                "Delete%mini.bomb.xpm%"                  Delete
+                "Close%mini.cross.xpm%"                   Close "Close"
+                "Destroy%mini.bomb.xpm%"                 Destroy
+                ""     Nop
+                "Refresh Screen%mini.refresh.xpm%"       Refresh 


#
# The Quit-Verify menu checks that the user really wants to exit.
#

DestroyMenu Quit-Verify
AddToMenu Quit-Verify "Really quit FVWM?" Title
+ "No, restart Fvwm"   Restart fvwm2
+ ""                   Nop
+ "Yes, really quit"   Quit


#
# Section: Mouse bindings
#
# This section defines the mouse bindings, that is, all the things that
# can be done with the mouse.
#

#
# Each button gives a different menu from the background (root window).
#

Mouse 1   R  A  Menu /Debian/Me
Mouse 1   R  M  Menu /Debian
#Mouse 1   R  M  PipeRead "fvwm-update-menu popup"
Mouse 2   R  A  Menu Window-Ops
Mouse 3   R  A  WindowList
Mouse 4   R  A  Desk 1 0 4
Mouse 5   R  A  Desk -1 0 4


#
# Moving and resizing, depending on which part of the window
# you grab (T=title bar, S=side/top/bottom, F=corner).
#

Mouse 1 T A Move
Mouse 1 T CM WindowShade
Mouse 1 FS A Resize
Mouse 2 TFS A Popup Window-Ops
Mouse 3 TFS A RaiseLower

Mouse 1 W M Move
Mouse 2 W M Resize
Mouse 3 W M RaiseLower


Mouse 1 I A move-or-deiconify
Mouse 2 I A Popup Window-Ops


#
# 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 1 2 A Close
Mouse 2 2 A Destroy
Mouse 1 4 A Maximize 0 100
Mouse 2 4 A Maximize 100 100
Mouse 3 4 A Maximize 100 0
Mouse 0 6 A Iconify
Mouse 0 8 A WindowShade

#
# Section: Key bindings
#
# This section binds some actions to keys.  The bindings have been inspired
# by MWM, Windows, and nightmares.  Everything that these key bindings do,
# can be done without them.  Therefore they should not be too much of a
# burden on new users, but it definitely _can_ be confusing to press a
# key by accident and have it do something completely unexpected.
#

Key Tab A M -

#Key Tab   A    M    Next [CurrentPage !iconic] focus-and-raise
#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

#Key Tab   A    C  WindowList "Prev FlipFocus"
Key Tab   A    C WindowList Root c c
Key Escape A    C  Popup /Debian/Me
#
# Section: 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-deiconify
AddToFunc   move-or-deiconify
+ "M" Move
+ "C" 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
+ "D" WindowShade

DestroyFunc move-or-shade
AddToFunc   move-or-shade
+ "M" Move
+ "D" WindowShade

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


#
# Configure a FvwmButtons module for the modules menu, but make sure
# user can easily override it with their own - so name it DebianFvwmButtons.
# To use this config, you need to invoke it as:
#   "Module FvwmButtons DebianFvwmButtons"
#
*DebianFvwmButtonsFore black
*DebianFvwmButtonsBack gray80
*DebianFvwmButtonsRows 1
*DebianFvwmButtonsFrame 1
*DebianFvwmButtonsPadding 0
*DebianFvwmButtonsGeometry 850x60+0-0
#*DebianFvwmButtons: ButtonGeometry 60x48
*DebianFvwmButtonsBoxSize smart
*DebianFvwmButtons(Swallow "wmxmms" "Exec wmxmms -n -t&")
#*DebianFvwmButtons(Padding 4, Swallow "asmix" "Exec asmix -shape -geometry +3000+0&")
*DebianFvwmButtons(Swallow "ascpu" "Exec ascpu -exe '/usr/X11R6/bin/xterm -title top -e top' -position +3000+0&")
*DebianFvwmButtons(Swallow "asmem" "Exec asmem -mb -used -asis -fg lightblue -memory red -position +3000+0&")
*DebianFvwmButtons(Swallow "asmounter" "Exec asmounter -s -geometry +3000+0&")
*DebianFvwmButtons(Swallow "wmWeather" "Exec wmWeather -m -station ULLI&")
#*DebianFvwmButtons(3x1, Padding 20, Swallow "2.1.10 beta" "Exec asclock-gtk -24&")
*DebianFvwmButtons(2x1, Padding 20, Swallow "2.1.10 beta" "Exec asclock-gtk -24&")
*DebianFvwmButtons(7x1, Swallow "FvwmPager" "FvwmPager 0 4")
#*DebianFvwmButtons(Panel(up) My)
#*DebianFvwmButtonsPanel My
#*DebianFvwmButtons(Icon gnome-term-linux.xpm, Action 'Exec exec rxvt &')
Module FvwmButtons DebianFvwmButtons

*ExecFvwmButtonsFore black
*ExecFvwmButtonsBack gray80
*ExecFvwmButtonsColumns 2
*ExecFvwmButtonsFrame 1
*ExecFvwmButtonsPadding 0
*ExecFvwmButtonsGeometry +0-62
*ExecFvwmButtonsBoxSize smart
*ExecFvwmButtons(Icon sj.mini.xpm, Action 'Exec exec pon sj&')
#*ExecFvwmButtons(Icon openssh.mini.xpm, Action 'Popup /Debian/Me/ssh')
*ExecFvwmButtons(Icon mini.xterm.xpm, Action 'Exec exec xterm&')
#*ExecFvwmButtons(Icon mutt.mini.xpm, Action 'Exec exec xterm -e mutt&')
*ExecFvwmButtons(Icon mozilla.mini.xpm, Action 'Exec exec mozilla&')
*ExecFvwmButtons(Icon galeon.mini.xpm, Action 'Exec exec galeon&')
*ExecFvwmButtons(Icon mini.zircon.xpm, Action 'Exec exec xterm -geometry -0-50 -bg black -fg white -e irssi&')
*ExecFvwmButtons(Icon online.xpm, Action 'Exec exec licq&')
*ExecFvwmButtons(Icon mini.gnu.xpm, Action 'Exec exec emacs&')
*ExecFvwmButtons(Icon gnus-pointer.xpm, Action 'Exec exec emacs --title gnus -f gnus&')
*ExecFvwmButtons(Icon mini.graph.xpm, Action 'Exec exec procmeter3 -geometry 80x90+0-230&')
*ExecFvwmButtons(Icon mini.xv.xpm, Action 'Exec exec xv&')
*ExecFvwmButtons(Icon wilber.mini.xpm, Action 'Exec exec gimp&')
*ExecFvwmButtons(Icon mini.pdf.xpm, Action 'Exec exec acroread&')
*ExecFvwmButtons(Icon aumix.mini.xpm, Action 'Exec exec xaumix&')
*ExecFvwmButtons(Icon xmcd_small.xpm, Action 'Exec exec xmcd&')
*ExecFvwmButtons(Icon mini.turn.xpm, Action Restart)
Module FvwmButtons ExecFvwmButtons

#*LiveFvwmButtonsFore black
#*LiveFvwmButtonsBack gray80
#*LiveFvwmButtonsColumns 2
#*LiveFvwmButtonsFrame 1
#*LiveFvwmButtonsPadding 0
#*LiveFvwmButtonsGeometry +46-62
#*LiveFvwmButtonsBoxSize smart
#*LiveFvwmButtons (Icon mini.sound.xpm, Action 'Exec exec dm rear unmute')
#*LiveFvwmButtons (Icon mini.ear.xpm, Action 'Exec exec dm front unmute')
#*LiveFvwmButtons (Icon mini.raise2.xpm, Action 'Exec exec dm rear +5')
#*LiveFvwmButtons (Icon mini.raise2.xpm, Action 'Exec exec dm front +5')
#*LiveFvwmButtons (Icon mini.lower2.xpm, Action 'Exec exec dm rear -5')
#*LiveFvwmButtons (Icon mini.lower2.xpm, Action 'Exec exec dm front -5')
#*LiveFvwmButtons (Icon mini.stop.xpm, Action 'Exec exec dm rear mute')
#*LiveFvwmButtons (Icon mini.stop.xpm, Action 'Exec exec dm front mute')
#Module FvwmButtons LiveFvwmButtons

*FvwmPager: Back DarkGreen
*FvwmPager: Fore LightBlue
*FvwmPager: Hilight MidnightBlue
*FvwmPager: WindowColors black gray80 black white
*FvwmPager: Font fixed
*FvwmPager: SmallFont fixed
#*FvwmPager: Geometry 240x60+3000+3000
#*FvwmPager: DeskTopScale 32
*FvwmPager: MiniIcons
*FvwmPager: Balloons
*FvwmPager: BalloonFore black
*FvwmPager: BalloonBack yellow
*FvwmPager: BalloonFont fixed
*FvwmPager: BalloonBorderWidth 0
#*FvwmPager: BalloonColor blue
*FvwmPager: Label 0 "general"
*FvwmPager: Label 1 "web"
*FvwmPager: Label 2 "stuff"
*FvwmPager: Label 3 "debian"
*FvwmPager: Label 4 "SJ"
#*FvwmPager: DeskColor 0 midnightblue
#*FvwmPager: DeskColor 1 darkgreen
#*FvwmPager: DeskColor 2 darkred
#*FvwmPager: DeskColor 3 wheat4
#*FvwmPager: DeskColor 4 black
*FvwmPager: Rows 1
#*FvwmPager: ShapeLabels

# We start the pager in the InitFunction and RestartFunction, so that the
# user has control over whether it starts or not.  We do this by placing
# it in the system init-restart.hook, so that either the administrator
# can remove it or infividual users can kill it or set it up differently
# by placing something like the following in their personal
# init-restart.hook:
#    + "I" Wait FvwmPager
#    + "I" KillModule FvwmPager
#    + "I" Module FvwmPager 0 3

# This reads in various warning styles and checks for the presence or
# not of ~/.fvwm and ~/.fvwm2.

#
# Section: post.hook
#
# Use post.hook to force things that may have been changed earlier, for
# example, key bindings.
#

Read /etc/X11/fvwm/post.hook Quiet
Read post.hook Quiet


*FvwmBacker: Command (Desk 0, Page 0 0) -solid midnightblue
*FvwmBacker: Command (Desk 1, Page 0 0) -solid darkgreen
*FvwmBacker: Command (Desk 2, Page 0 0) -solid darkred
*FvwmBacker: Command (Desk 3, Page 0 0) -solid wheat4
*FvwmBacker: Command (Desk 4, Page 0 0) -solid black
#*FvwmBacker: Command (Desk 2, Page 0 0) Exec xv -root SK-C-5.Z.jpg -quit
Module FvwmBacker
