diff options
Diffstat (limited to 'examples/system.fvwm2rc')
-rw-r--r-- | examples/system.fvwm2rc | 381 |
1 files changed, 381 insertions, 0 deletions
diff --git a/examples/system.fvwm2rc b/examples/system.fvwm2rc new file mode 100644 index 0000000..ce60e78 --- /dev/null +++ b/examples/system.fvwm2rc @@ -0,0 +1,381 @@ +# +# 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 |