Copy purify.fvwm2rc to /tmp - add instructions in README.
[fvwm.git] / sample.fvwmrc / new-features
blobe8d87405a46769d96e24a4bbc8cab6584af66d5f
1 ##############################
2 # Sample .fvwm2rc file
3 # Configured by Jay Kuri
4 # 2/9/99
5 ##############################
7 # Paths
8 #       Paths are given as a list of directories, seperated by colons
10 # ImagePath     A list of directories where images (bitmaps, pixmaps,
11 #               etc) can be found.
13 # ModulePath    A list of directories where fvwm modules are stored.
14 #               The compiled-in setting will contain all modules
15 #               distributed with fvwm, so you only set this if you
16 #               add your own modules in another directory.
18 ImagePath       /usr/X11R6/include/X11/pixmaps/:$HOME/xpms:$HOME/pixmaps
19 #ModulePath     $FVWM_MODULEDIR:$HOME/fvwm-modules
21 # set XORvalue to something visible.  This sets the coloration of the
22 # 'rubber-band' window-borders when moving and resizing windows.
23 XORvalue 208
25 # Make our windows snap-up against other windows and make icons snap
26 # up against other icons
27 SnapAttraction 20 SameType
29 # Font configuration
31 # WindowFont style      Sets the font to be used in window title-bars
33 # IconFont style        Sets the font that will be used for icon labels.
35 Style * Font            -adobe-helvetica-bold-r-*-*-14-*-*-*-*-*-*-*
36 Style * IconFont        -adobe-helvetica-bold-r-*-*-14-*-*-*-*-*-*-*
38 # Highlight color
40 # This sets the textcolor and background color for the active window
41 Style * HilightFore #ffffff, HilightBack #1ea819
44 # BorderStyle
46 # This sets how the border of windows will be displayed.
47 # Format:  BorderStyle [state] [style] [ -- [!flag] ... ]
48 # State is either Active or Inactive
49 # The commands below set the borders to solid colors
51 BorderStyle Active -- NoInset HiddenHandles
52 BorderStyle Inactive -- NoInset HiddenHandles
54 # TitleStyle
56 # This option sets the style of the window title-bar
57 # We set the Active style to a Green vertical gradient,
58 # the Active (pushed down) style to the reverse of the green gradient
59 # and the Inactive style to a blue vertical gradient
61 # Format: TitleStyle [state] [style] [ -- [!flag] ... ]
63 TitleStyle ActiveUp Vgradient 16 #1ea819 #065414 -- flat
64 TitleStyle ActiveDown Vgradient 16 #065414 #1ea819 -- flat
65 TitleStyle Inactive Vgradient 16 #11236b #03092b -- flat
67 # The Second Variation of TitleStyle:
69 # Format: TitleStyle [ justification ] [ height num ]
71 TitleStyle LeftJustified height 18
73 # Button Styles
75 # Now we are going to set up the buttons
77 # The two commands we use are:
79 # ButtonStyle button [ state ] [ style ] [ -- [!]flag ... ]
81 # AddButtonStyle button [ state ] [ style ] [-- [!]flag ...]
83 # the 'button' is the number of the button you are defining, it can be
84 # a number from 0-9 or the word 'all' which means apply the style to all
85 # buttons.
86 # Even button numbers are on the right, while odd button numbers are on the
87 # left. The lower numbers are on the outside:  13579    title   86420
89 # First, we set all buttons to start with the same style we are using for
90 # the title.  Then we define the pixmaps we use as our buttons using
91 # AddButtonStyle.
92 ButtonStyle All -- UseTitleStyle flat
93 AddButtonStyle 1 Pixmap button.xpm
94 AddButtonStyle 2 Pixmap button-max.xpm
95 AddButtonStyle 4 Pixmap button-vert.xpm
96 AddButtonStyle 6 Pixmap button-horiz.xpm
97 AddButtonStyle 8 Pixmap button-close.xpm
99 # MenuStyle
101 # MenuStyle is perhaps the most complicated configuration option. For this
102 # reason we suggest you read the fvwm man page.  However, using the
103 # MenuStyle definition below, we will attempt to give you an idea of how to
104 # use it.
106 # Format: MenuStyle stylename options
108 # The StyleName is a name to indicate which menustyle you are defining.  All
109 # of the menus get the '*' by default. (you can change the menu style a menu
110 # uses with the 'changemenustyle' option)
112 # Here we set the default menu-style:
114 # Background sets the default menu background color
116 # ActiveFore sets the foreground color of the currently selected menu-item
118 # ForeGround sets the foreground color of non-selected menu-items
120 # Popupoffset sets the offset of child-menus.
121 #   Format: Popupoffset pixels percent
122 #       We set the percent to 100, making the child-menus pop-up to the right
123 #       of the existing menus.
125 # MenuFace sets the background of the menu using the 'fancy' options.
126 #       Menuface is another complicated one so again, check the man-page,
127 #       but I'll explain the one here:
128 #       This menuface command sets the background of the menus to a
129 #          Horizontal gradient using 64 colors, with one pair of colors,
130 #          from the color #758591 to the color #102030.
132 # Animation turns menu animations on.  If you pop-up a submenu on the right
133 #       edge of the screen, the menu will move over so it is fully visible.
135 MenuStyle * background #455561, ActiveFore #ccfcf0, ForeGround black
136 MenuStyle * popupoffset 0 100
137 MenuStyle * MenuFace HGradient 64 1 #758591 100 #102030, Animation
140 # Set up some desktop options
142 # Desktop [Horizontal]x[vertical]  Defines the virtual desktop size,
143 #       1x1 = one physical screen size (no virtual desktop
144 DesktopSize     1x1
146 # EdgeResistance scrolling moving
147 #   Sets how hard it is to change the desktop viewport
148 #   scrolling is in milliseconds
149 #   moving is in pixels (how far a window's edge must move to move off-screen
151 # These values don't much matter in this configuration as our viewport
152 # is only as big as our screen anyway.
153 EdgeResistance  750 75
155 # EdgeScroll horizontal vertical
156 #   Sets the percentage of a page to scroll when the cursor is on the edge
157 #   of the screen.   Again, not useful in this configuration since we only
158 #   have a viewport as big as our screen.
159 EdgeScroll      100 100
161 # OpaqueMoveSize percentage
162 #   This option tells fvwm the maximum size window that it should move
163 #   with contents intact (ie, not 'rubber-banding')  You should keep this
164 #   low if you don't have good video hardware.
165 OpaqueMoveSize 50
169 # Style related options
171 # Styles are used to set-up how windows are treated by the window manager.
172 # They allow you to change the way windows are placed, decorated and treated
173 # in general.  You can give different options to different windows, so that
174 # your xterms may be decorated differently than, say, your netscape window.
176 # The format of the style commands are:
177 #       Style windowname options
179 # The windowname is the window's name class or resource string that you want
180 # this option to affect.  You can use wildcards (such as * or ?), thus
181 # "*" specifies options for all windows.
182 # The options that you can specify with the Style command are many and varied
183 # and really warrant a look at the fvwm man page.
185 #  We set up some global defaults here for all windows.
186 Style "*" ForeColor grey40
187 Style "*" BackColor #11236b
188 Style "*" TileCascadePlacement
189 Style "*" StickyIcon
190 Style "*" IconBox       5 -50 -134 -5
191 Style "*" BorderWidth 5, HandleWidth 5
192 Style "*" !UsePPosition
193 Style "*" NakedTransient
196 # Some Fvwm-Related Styles
197 Style "Fvwm*"   !Title, !Handles, Sticky, WindowListSkip
198 Style "FvwmWinList"     !Title
199 Style "FvwmPager"       BorderWidth 0
201 # My own settings
202 style "XTerm"   BorderWidth 4, Handlewidth 4, Icon Monitor.xpm
203 style "Netscape" BorderWidth 3, Handlewidth 3
204 Style "*clock"  BorderWidth 0,!Title,!Handles,WindowListSkip,Sticky
205 Style "XMcd"    !Title
206 Style "*Dialog_popup" WindowListSkip
207 Style "*Download" WindowListSkip,!Title
209 # Resources for Modules
211 # Resources are usually of the form
212 # *Modulename: Option value
214 # Resources are used to configure fvwm modules. See the man page for each
215 # module to find out what resources you can set
217 # FvwmPager
219 *FvwmPager: Back #150525
220 *FvwmPager: Fore #484058
221 *FvwmPager: Font -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
222 *FvwmPager: Hilight #908090
223 *FvwmPager: DeskTopScale 64
224 *FvwmPager: Geometry -0-0
225 *FvwmPager: Label 0 Pager
226 *FvwmPager: SmallFont 5x8
227 *FvwmPager: Columns 1
228 *FvwmPager: Label 0 All
229 *FvwmPager: Label 1 Work
230 *FvwmPager: Label 2 No
231 *FvwmPager: Label 3 Play
232 *FvwmPager: Balloons Pager
233 *FvwmPager: Balloonfore white
235 # FvwmForm
236 # options for the FvwmForm module which we specify as 'Ssh' later on
237 *Ssh: Fore              #dfdfdf
238 *Ssh: Back              #303030
239 *Ssh: ItemBack  black
240 *Ssh: ItemFore  #ffffff
241 *Ssh: Font              -*-lucidatypewriter-medium-r-*-*-14-*-*-*-m-*-*-*
242 *Ssh: ButtonFont        -*-lucidatypewriter-medium-r-*-*-14-*-*-*-m-*-*-*
243 *Ssh: InputFont         -*-lucidatypewriter-medium-r-*-*-14-*-*-*-m-*-*-*
244 *Ssh: Line      Left
245 *Ssh: Text      "Host"
246 *Ssh: Input     Host 30
247 *Ssh: Line      Left
248 *Ssh: Text      "User"
249 *Ssh: Input     User 30
250 *Ssh: Line      Center
251 *Ssh: Button    quit "OK"       ^M
252 *Ssh: Command   Exec exec xterm -sl 1024 -cr white -fg white -bg black -T "\"$(Host)\"" -e ssh $(Host) -l $(User) &
253 *Ssh: Button    quit "Cancel"   ^[
254 *Ssh: Command   Nop
256 # Function definitions
258 # Functions let you define more complex events than fvwm provides
259 #  in it's default configuration.  It allows you to do multiple things
260 #  when something happens... for example.  The following function
261 #  can be used on the titlebar of a window, and will allow you to move,
262 #  raise or windowshade a window when you move, click, or doubleclick
263 #  the titlebar, respectively.
264 AddToFunc "Move-or-Raise" "M" Move
265 +              "M" Raise
266 +              "C" Raise
267 +              "D" WindowShade
269 AddToFunc "Move-or-Iconify" "M" Move
270 +              "D" Iconify
271 +              "C" RaiseLower
273 AddToFunc "Resize-or-Raise" "M" Resize
274 +              "M" Raise
275 +              "C" Raise
276 +              "D" RaiseLower
278 AddToFunc "StartFunction"
279 +              "Immediate" Module FvwmPager 0 3
280 +              "Immediate" Module FvwmAudio
281 +              "Immediate" Module FvwmAuto 750
282 +              "Immediate" Module FvwmAnimate
284 AddToFunc "InitFunction"
285 +              "Immediate" Exec xsetroot -solid \#050530
286 +              "Immediate" Desk 0 2
287 +              "Immediate" Desk 0 0
289 AddToFunc "RestartFunction"
290 +              "Immediate" Exec xsetroot -solid \#004020
292 AddToFunc "Maximize_func" "M" Maximize 0 100
293 +              "C" Maximize 0 80
294 +              "D" Maximize 100 100
296 # Popup menus
298 # Now we start defining menus.  The Window-popups are used for
299 # window-operations.
301 # Application and root-menu definitions come later
302 AddToMenu "Window-Popup" "Window Ops" Title
303 +              "Move" Function Move-or-Raise
304 +              "Resize" Function Resize-or-Raise
305 +              "Raise" Raise
306 +              "Lower" Lower
307 +              "(De)Iconify" Iconify
308 +              "(Un)Stick" Stick
309 +              "(Un)Maximize" Function maximize_func
310 +              "Identify" Module FvwmIdent
311 +              "" Nop
312 +              "Destroy" Destroy
313 +              "Close" Close
314 +              "" Nop
315 +              "Refresh Screen" Refresh
317 AddToMenu "Window-ops-Popup" "Move" Function Move-or-Raise
318 +              "Resize" Function Resize-or-Raise
319 +              "Raise" Raise
320 +              "Lower" Lower
321 +              "Iconify" Iconify
322 +              "(Un)Stick" Stick
323 +              "Identify" Module FvwmIdent
324 +              "" Nop
325 +              "Destroy" Destroy
326 +              "Close" Close
327 +              "" Nop
328 +              "Scrollbar" Module FvwmScroll 2 2
331 # Key bindings
333 #  Now we set-up some hot-keys.
334 #  The format for Key-bindings is:
336 #  Key keyname context modifier function
338 #  context describes where the binding applies, W for an application window,
339 #     R for root window, A for anywhere, T for title, etc.
340 #  modifier is keyboard meta-keys which should be pressed, N for none,
341 #     S for Shift, M for Meta, C for Control, or A for any. You can combine
342 #     these, so things like SM (shift-Meta) are valid.
344 Key F3 W M Iconify
345 Key F3 I M Iconify
346 Key F4 W M Close
347 Key F11 A C Exec exec xlock -mode swarm &
348 Key F9 A M Desk 0 0
349 Key F10 A M Desk 0 1
350 Key F11 A M Desk 0 2
351 Key F12 A M Desk 0 3
353 # These are some neat ones.  They allow you to hit control-<Arrow-key>
354 # to switch focus to the window next to your current window in that direction.
355 # Some people don't like this, if you don't, comment out these lines
357 Key Right A C Direction East (AcceptsFocus CurrentDesk !Iconic) Focus
358 Key Left A C Direction West (AcceptsFocus CurrentDesk !Iconic) Focus
359 Key Up A C Direction North (AcceptsFocus CurrentDesk !Iconic) Focus
360 Key Down A C Direction South (AcceptsFocus CurrentDesk !Iconic) Focus
362 # Familiar alt-tabbing
363 Key Tab A M Next (AcceptsFocus CurrentDesk !Iconic) Focus
364 Key Tab A SM Prev (AcceptsFocus CurrentDesk !Iconic) Focus
366 # Mouse bindings
368 # Mouse bindings work in very much the same way as key bindings
370 # Format:  Mouse Button Context Modifiers function
372 Mouse 1 R N Menu "Utilities" Nop
373 Mouse 2 R N Menu "Window-Popup" Nop
374 Mouse 3 R N Module FvwmWinList transient
375 Mouse 1 1 N Iconify
376 Mouse 3 1 N Menu "Window-ops-Popup" Nop
377 Mouse 1 2 N Maximize
378 Mouse 3 2 N Function "Resize-or-Raise"
379 Mouse 1 4 N Maximize 0 100
380 Mouse 1 6 N Maximize 100 0
381 Mouse 1 8 N Delete
382 Mouse 1 T N Function "Move-or-Raise"
383 Mouse 1 SF N Function "Resize-or-Raise"
384 Mouse 3 T N RaiseLower
385 Mouse 1 I N Function "Move-or-Iconify"
386 Mouse 3 I N Function "Move-or-Iconify"
387 Mouse 2 TSFI N Menu "Window-ops-Popup" Nop
388 Mouse 3 S N Function "Move-or-Iconify"
393 # Some Example Menus
398 AddToMenu "Remote-Popup" "somewhere"    exec xterm -sl 1024 -cr white -fg white -bg \#114433 -T Oneway -e ssh -l me somewhere.com
399 +              "generic" FvwmForm Ssh
401 AddToMenu "Applications-Popup"  "Netscape" Exec /usr/local/bin/netscape
402 +              "Addressbook" Exec addressbook
403 +              "Xdir" Exec xdir
404 +              "Knews" Exec knews
406 AddToMenu "Graphics-Popup" "The GIMP" Exec xterm -fg \#30d030 -bg black -T gimpit -geometry 80x5+602+787 -e /usr/local/bin/gimp
407 +              "Tgif" Exec tgif
408 +              "Xpaint" Exec xpaint
409 +              "Xmag" Exec xmag
410 +              "XView" Exec xv
411 +              "Image Magick" Exec display
413 AddToMenu "Development-Popup"  "X-gdb" Exec xxgdb
414 +              "ddd" Exec ddd
415 +              "X-man" Exec xman
417 AddToMenu "Accessories-Popup" "Calculator" Exec xcalc
418 +              "Seyon" Exec seyon -modems /dev/cuaa1
419 +              "Nedit" Exec nedit
420 +              "Lock" Exec xlock -mode swarm
422 AddToMenu "Games-Popup" "X-kobo" Exec xkobo
423 +              "X-boing" Exec xboing
424 +              "Mahjong" Exec xmj
425 +              "Minesweeper" Exec xmine
426 +              "X-Emeraldia" Exec xemeraldia -noscore
427 +              "Solitaire" Exec tksol
429 AddToMenu "Sound-Popup" "X-Mixer" Exec xmmix
430 +              "Xm-CD Player" Exec xmcd
432 AddToMenu "Module-Popup" "FvwmTalk" Module FvwmTalk
433 +              "Clean-Up" Module FvwmClean
434 +              "Identify" Module FvwmIdent
435 +              "IconManager" Module FvwmIconMan
436 +              "Control Animation" Popup MenuFvwmAnimate
439 AddToMenu "Utilities" "Utilities" Title
440 +              "Xterm" Exec xterm -sl 1024 +ut -fg white -bg black -e tcsh
441 +              "" Nop
442 +              "Remotes" Popup Remote-Popup
443 +              "Applications" Popup Applications-Popup
444 +              "Graphics Apps" Popup Graphics-Popup
445 +              "Development" Popup Development-Popup
446 +              "Accessories" Popup Accessories-Popup
447 +              "Entertainment" Popup Games-Popup
448 +              "Sound Stuff" Popup Sound-Popup
449 +              "Modules" Popup Module-Popup
450 +              "" Nop
451 +              "Refresh" Refresh
452 +              "Quit X" Popup Quit-Verify
454 AddToMenu "Quit-Verify" "Restart WM" Restart
455 +              "Yes, Really Quit" Quit
456 +              "" Nop
457 +              "No, Don't Quit" Nop