dwww Home | Show directory contents | Find package

#
# Configuration file for fvwm2
# by Lars Wirzenius
# "@(#):$Id: system.fvwm2rc,v 1.1 2003-04-07 17:04:19 ballombe Exp $"
#
# This file can be used both as the system.fvwmrc and the per-user ~/.fvwm2rc.
# It uses certain `hooks' (files stored in /etc/X11/fvwm2 or ~/.fvwm2) to allow 
# the system administrator and user to modify menus, colors, and so on without 
# having to change this file.
#
# The defaults that this file sets up follow my own taste.  They attempt to set
# up a nice, easy, comfortable environment for the "ordinary" user.  However, 
# using the hooks, it should be possible to change anything.
#
# Please read /usr/doc/fvwm2/README.sysrc for more information.
#
# Hopefully, you will never have to modify this file.
#

#
# Section: pre.hook
#
# Use pre.hook for things that need to be done before anything else.
# For example, a PixmapPath might be defined here.
#
Style "Fvwm Pager"  StaysOnTop
Style "FvwmPager"   StaysOnTop
Style "Fvwm*"       NoTitle, NoHandles, Sticky, WindowListSkip,
Style "Fvwm*"       BorderWidth 0,CirculateSkipIcon
Style "*"           SmartPlacement
Style "*"           RandomPlacement
Style "Xlock"       NoTitle
Style "xlock"       NoTitle
Module  FvwmPager 0 3
*FvwmButtons(4x1) - whatever Swallow "FvwmPager" Module FvwmPager 0 3
*FvwmPagerBack #908090
*FvwmPagerFore #484048
*FvwmPagerFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
*FvwmPagerHilight #cab3ca
*FvwmPagerGeometry -1-1
#*FvwmPagerLabel 0 Misc
#*FvwmPagerLabel 1 Maker
#*FvwmPagerLabel 2 Mail
#*FvwmPagerLabel 3 Matlab
*FvwmPagerSmallFont 5x8


Read /etc/X11/fvwm2/pre.hook
Read .fvwm2/pre.hook


#
# Section: Various global settings
#
# These settings are personal.  If you need to modify them, do so in post.hook.
#
#
# DeskTopSize sets the size of the desktop in units of physical screen
# `pages'.  I prefer to use separate desktops instead of pages, but
# many reasonable people do it the other way.  My reason is that this
# makes it possible to have different backgrounds when changing the
# workspace.
#

DeskTopSize 3x3

#
# I don't like to be able to move between pages or desks simply by 
# moving the mouse against the screen border.  I find it very 
# confusing.  The following command disables it.
#

EdgeScroll 0 0

#
# When moving a window against the edge of the screen, it is
# nice to have a small resistance before the window is moved outside
# the screen.  This makes it easier to line windows against the
# edges.
#

EdgeResistance 0 100


#
# Section: Styles, colors, fonts, and related things
#
# This section defines the looks, behavior, and other attributes of windows.
# These are also quite personal.  Modify them in post.hook.
#
#
# The following sets window colors.  This is highly personal,
# of course.
#

Style "*" Color black/darkgrey
HilightColor white steelblue
WindowFont -adobe-helvetica-bold-r-*-*-12-*

#
# The following sets the window decorations: the window title, borders,
# and the handles in the corners.
#

ButtonStyle 2 16 20x20@1 30x20@1 50x40@1 70x20@1 80x20@1 80x30@0 60x50@0 80x80@0 70x80@0 50x60@0 30x80@0 20x80@0 20x70@0 40x50@1 20x30@0 20x20@1
ButtonStyle 4 5 25x25@1 25x75@1 75x75@0 75x25@0 25x25@1
ButtonStyle 6 2 80x76@0 20x76@1

Style "*" BorderWidth 6
Style "*" HandleWidth 6
Style "*" MWMBorder
Style "*" MWMDecor
Style "*" DecorateTransient
Style "*" SmartPlacement
Style "*" RandomPlacement
Style "*" IconBox 0 0 50 -1

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

Style "FvwmButtons" Sticky
Style "FvwmIconMan" Sticky

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


#
# 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 
# ~/.fvwm2 to see if the user wants some specific background color or
# image.
#

DestroyMenu InitFunction
AddToFunc InitFunction
+ "I" Exec setup-background
Read /etc/X11/fvwm2/init.hook
Read /etc/X11/fvwm2/init-restart.hook
Read .fvwm2/init.hook
Read .fvwm2/init-restart.hook

DestroyMenu RestartFunction
AddToFunc RestartFunction
Read /etc/X11/fvwm2/restart.hook
Read /etc/X11/fvwm2/init-restart.hook
Read .fvwm2/restart.hook
Read .fvwm2/init-restart.hook


#
# 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 black grey white -adobe-helvetica-bold-r-*-*-12-* mwm

#
# The main menu.
#

###DestroyMenu MainMenu
###AddToMenu MainMenu
###+ "Main menu"                Title   
###Read /etc/X11/fvwm2/main-menu-pre.hook
###Read .fvwm2/main-menu-pre.hook
###Read /etc/X11/fvwm2/main-menu.hook
###Read .fvwm2/main-menu.hook
###+ ""                 Nop
###+ "Exit Fvwm"                Popup Quit-Verify
###
####
# Read in system and user menu definitions.
#

Read /etc/X11/fvwm2/menudefs.hook
Read .fvwm2/menudefs.hook

#
# 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"                  Title           
+ "Move"                        Move
+ "Resize"                      Resize
+ "Raise"                       Raise
+ "Lower"                       Lower 
+ "(De)Iconify"                 Iconify
+ "(Un)Stick"                   Stick           
+ "(Un)Maximize vertical"       Maximize 0 100
+ "(Un)Maximize horizontal"     Maximize 100 0
+ "(Un)Maximize to screen"      Maximize 100 100
+ ""                            Nop  
+ "Destroy"                     Destroy
+ "Close"                       Close    

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

DestroyMenu Quit-Verify
AddToMenu Quit-Verify
+ "Restart Fvwm"        Restart fvwm2
+ ""                    Nop
+ "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.
#

Mouse 1 R A Menu /Debian
Mouse 2 R A Menu Window-Ops
Mouse 3 R A WindowList

#
# 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-or-raise
Mouse 2 T A move-and-raise-or-raiselower
Mouse 3 T A move-or-lower
Mouse 0 F A resize-or-raiselower
Mouse 1 S A move-or-raise
Mouse 2 S A move-and-raise-or-raiselower
Mouse 3 S A move-or-lower


#
# 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 2 A Close
Mouse 0 4 A Maximize 0 100
Mouse 0 6 A Iconify


#
# 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       Next [CurrentDesk !iconic] Focus
Key Tab         A       MS      Prev [CurrentDesk !iconic] Focus
Key Tab         A       CM      Next [CurrentDesk] deiconify-and-focus
Key Tab         A       CMS     Prev [CurrentDesk] deiconify-and-focus
Key Left        A       M       Desk -1 0
Key Up          A       M       Desk -1 0
Key Right       A       M       Desk 1 0
Key Down        A       M       Desk 1 0
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       CirculateUp
Key F6          A       M       CirculateDown
Key F7          A       M       Move
Key F8          A       M       Resize
Key F9          A       M       Iconify
Key F10         A       M       Maximize

Key F1          A       C       exec /usr/bin/X11/xterm_color -sb -sl 500 -j -ls -fn 7x14 -geometry 80x30
#
# 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".
#

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

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

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

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

DestroyMenu move-or-raise
AddToFunc   move-or-raise
+ "M" Move
+ "C" Raise

DestroyMenu move-or-lower
AddToFunc   move-or-lower
+ "M" Move
+ "C" Lower

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

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

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

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

Read /etc/X11/fvwm2/post.hook
Read .fvwm2/post.hook

Generated by dwww version 1.15 on Fri Jun 21 10:13:46 CEST 2024.