1 ##########################################################################
2 # FVWM - F? Virtual Window Manager, Version 2.x (fvwm2) Configuration File
5 dnl The file is in m4 format, use FvwmM4 module to read it
6 dnl like this: ModuleSynchronous FvwmM4 -lock .fvwm2rc
8 dnl This is to prevent FvwmM4 to shadow $HOME
16 dnl define(`SMALL_FONT_KOI8', `-*-fixed-medium-r-normal-*-*-100-*-*-*-*-koi8-r')
17 dnl define(`MEDIUM_FONT_KOI8', `-*-fixed-medium-r-normal-*-*-120-*-*-*-*-koi8-r')
18 dnl define(`BIG_FONT_KOI8', `-*-fixed-medium-r-normal-*-*-140-*-*-*-*-koi8-r')
21 dnl define(`SMALL_FONT_CP1251', `-*-fixed-medium-r-normal-*-*-100-*-*-*-*-*-cp1251')
22 dnl define(`MEDIUM_FONT_CP1251', `-*-fixed-medium-r-normal-*-*-120-*-*-*-*-*-cp1251')
23 dnl define(`BIG_FONT_CP1251', `-*-fixed-medium-r-normal-*-*-140-*-*-*-*-*-cp1251')
25 dnl define(`XBUFFY_FONT', `-cronyx-helvetica-bold-r-*-*-*-100-*-*-*-*-koi8-r')
29 define(`VERY_SMALL_FONT', `xft:Sans:size=10')
30 define(`SMALL_FONT', `xft:Sans:size=12')
31 define(`MEDIUM_FONT', `xft:Sans:size=14')
32 define(`BIG_FONT', `xft:Sans:size=16')
33 define(`LARGE_FONT', `xft:Sans:size=18')
34 define(`HUGE_FONT', `xft:Sans:size=20')
35 define(`GIGANTIC_FONT', `xft:Sans:size=22')
38 define(`SMALL_BOLD_FONT', SMALL_FONT`:Bold')
39 define(`MEDIUM_BOLD_FONT', MEDIUM_FONT`:Bold')
40 define(`BIG_BOLD_FONT', BIG_FONT`:Bold')
42 define(`TITLE_FONT', MEDIUM_FONT)
43 define(`ICON_FONT', LARGE_FONT)
45 dnl Font and geometry aliases that depend on whether the screen resolution is
46 dnl 800x600, 1024x768 or 1920x1200
49 ifelse(eval(WIDTH < 1024), 1, `365x100+0+0',
50 eval(WIDTH < 1920), 1, `365x100+0+0', `600x160+0+0'))
52 define(`SMALL_PAGER_FONT', ifelse(eval(WIDTH < 1920), 1, VERY_SMALL_FONT, SMALL_FONT))
53 define(`PAGER_FONT', ifelse(eval(WIDTH < 1920), 1, SMALL_FONT, BIG_FONT))
54 define(`BUTTONS_FONT', PAGER_FONT)
58 ifelse(eval(WIDTH < 1024), 1, BIG_FONT,
59 eval(WIDTH < 1920), 1, LARGE_FONT, GIGANTIC_FONT))
60 define(`IDENT_FONT', MENU_FONT)
61 define(`WIN_LIST_FONT', MENU_FONT)
62 define(`ICON_BOX_FONT', MENU_FONT)
65 dnl XSetBg message width and font
67 ifelse(eval(WIDTH < 1024), 1, 70,
68 eval(WIDTH < 1920), 1, 75, 80))
70 define(`MESSAGE_FONT', `Nimbus Sans L 18')
75 ifelse(eval(WIDTH < 1024), 1, `80x25',
76 eval(WIDTH < 1920), 1, `80x30', `80x32'))
78 define(`TERM_GEOM_BOTLT', TERM_GEOM`+0-0')
79 define(`TERM_GEOM_BOTRT', TERM_GEOM`-0-0')
81 define(`TERM_GEOM_BIG',
82 ifelse(eval(WIDTH < 1024), 1, `96x30',
83 eval(WIDTH < 1920), 1, `112x32+2-0', `119x32+1-0'))
86 define(`TERM', `urxvt')
87 define(`TERM_KOI8', `Exec LC_CTYPE=ru_RU.KOI8-R exec TERM')
88 define(`TERM_UTF8', `Exec exec "$HOME"/lib/X11/utf8rxvt')
89 define(`TERM_KOI8_BOTLT', `TERM_KOI8 -geometry TERM_GEOM_BOTLT')
90 define(`TERM_UTF8_BOTLT', `TERM_UTF8 -geometry TERM_GEOM_BOTLT')
91 define(`TERM_KOI8_BOTRT', `TERM_KOI8 -geometry TERM_GEOM_BOTRT')
92 define(`TERM_UTF8_BOTRT', `TERM_UTF8 -geometry TERM_GEOM_BOTRT')
95 define(`SSH', `ssh -4')
97 define(`REMOTE_HOST_TERM', `$1 -e SSH $2')
99 define(`REMOTE_HOST_TERM_TITLE', `$1 -title $3 -n $3 -e SSH $2')
101 define(`REMOTE_HOST_KOI8',
102 REMOTE_HOST_TERM_TITLE(TERM_KOI8, $1, $2))
104 define(`REMOTE_HOST_KOI8_MENU',
105 "$2 (koi8)" REMOTE_HOST_KOI8($1, $2))
107 define(`REMOTE_HOST_KOI8_BOTLT',
108 REMOTE_HOST_TERM_TITLE(TERM_KOI8_BOTLT, $1, $2))
110 define(`REMOTE_HOST_KOI8_BOTRT',
111 REMOTE_HOST_TERM_TITLE(TERM_KOI8_BOTRT, $1, $2))
113 define(`REMOTE_HOST_KOI8_BOTLT_MENU',
114 "$2 (koi8,btlt)" REMOTE_HOST_KOI8_BOTLT($1, $2))
116 define(`REMOTE_HOST_KOI8_BOTRT_MENU',
117 "$2 (koi8,btrt)" REMOTE_HOST_KOI8_BOTRT($1, $2))
119 define(`REMOTE_HOST_UTF8',
120 REMOTE_HOST_TERM(TERM_UTF8, $1))
122 define(`REMOTE_HOST_UTF8_MENU',
123 "$2 (utf8)" REMOTE_HOST_UTF8($1, $2))
125 define(`REMOTE_HOST_UTF8_BOTLT',
126 REMOTE_HOST_TERM(TERM_UTF8_BOTLT, $1))
128 define(`REMOTE_HOST_UTF8_BOTRT',
129 REMOTE_HOST_TERM(TERM_UTF8_BOTRT, $1))
131 define(`REMOTE_HOST_UTF8_BOTLT_MENU',
132 "$2 (utf8,btlt)" REMOTE_HOST_UTF8_BOTLT($1, $2))
134 define(`REMOTE_HOST_UTF8_BOTRT_MENU',
135 "$2 (utf8,btrt)" REMOTE_HOST_UTF8_BOTRT($1, $2))
137 define(`REMOTE_HOST_KOI8_BIG',
138 TERM_KOI8 -geometry TERM_GEOM_BIG -title "$2" -n "$2" -e SSH "$1")
140 define(`REMOTE_HOST_KOI8_BIG_MENU',
141 "$2 (koi8)" REMOTE_HOST_KOI8_BIG($1, $2))
145 ##########################################################################
148 # Colon seperated unix directory paths for Modules, xpm files, and bitmaps
149 #ModulePath /usr/lib/fvwm
150 ImagePath /usr/share/pixmaps/fvwm:/usr/share/pixmaps:/usr/include/X11/bitmaps #:/usr/local/firefox/browser/chrome/icons/default:/usr/local/firefox/browser/icons
152 ############################################################################
155 # Set the fore and back border colors for the window that has focus
156 Style * HilightFore Black, HilightBack #c06077
158 # Set fore/back border colors for all other windows
159 Style * Color Black/#60a0c0
161 # Set colors/font for pop-up menus
162 # Syntax: MenuStyle forecolor backcolor shadecolor font style(fvwm/mwm)
163 MenuStyle * FVWM, Foreground Black, Background grey, Greyed SlateGrey, Font MENU_FONT
165 # Set fonts to use on title bar and icon label
166 Style * Font TITLE_FONT
168 ############################################################################
171 # If you don't want icons for some or all windows (or all of them!)
174 # If you want ALL icons to follow you around the desktop (Sticky)
177 # Auto Place Icons is a nice feature (Left Top Right Bottom)
178 #Style * IconBox 10 -75 -10 -0
180 Style * IconFont ICON_FONT
182 ############################################################################
185 # Does the window with focus control the colormap, or the one under the mouse
186 ColormapFocus FollowsMouse
188 # Uncomment this to force you to click in a window to give it focus
189 #Style * ClickToFocus
191 # default: focus follows mouse
193 #Style * FocusFollowsMouse
195 # If you knock your mouse out of the term, it keeps focus while in root window
198 ############################################################################
201 # click/release must occur in <n milliseconds to be a "click"
204 # if the window occupies less than n% of the screen, draw it opaque
207 # Do not flip pages on the edge of the screen, but allow to move windows
210 Style * EdgeMoveDelay 500
211 Style * EdgeMoveResistance 100
213 # MWM Emulation: Don't ignore hints for functions and transient decoration
214 #Style * MWMFunctions, MWMDecor, MWMButtons, MWMMenus
215 Style * MWMFunctions, MWMDecor, MWMButtons
217 # Changes the look of the "rubberband" you see when moving windows (0 - 255)
220 ###########################################################################
223 # set the desk top size in units of physical screen size (width x height)
226 ############################################################################
229 Style * PositionPlacement Center
231 ############################################################################
234 # (decorations and window options)
235 # Note: Order is important!! If compatible styles are set, styles are ORed
236 # together. If conflicting styles are set, the last one specified is used.
238 # change the default width, set a global icon, and give borders to popups
239 Style * BorderWidth 5, HandleWidth 5, Icon unknown1.xpm
240 Style * DecorateTransient, ClickToFocusRaisesOff
242 Style "Fvwm*" !Title, Sticky, WindowListSkip
243 Style "FvwmButtons" !Handles, BorderWidth 0, Layer 2
244 Style "FvwmPager" Layer 2
247 Style "*term" Icon term.xpm
248 Style "*rxvt" Icon term.xpm
249 Style "term-im-local" Icon pidgin-menu.xpm
250 Style "term-im-remote" Icon rcalc2.xpm
251 Style "term-im-*" IconBox 630 -75 -2 -2, IconGrid 200 80
252 Style "term-im-*" StartsOnPage 1 1 0, StartIconic
255 Style "Certificate Manager" PositionPlacement Center
256 Style "*Downloads" PositionPlacement 50-50w +5
257 Style "*Mozilla*" PositionPlacement +0 -0
259 Style "*Chromium*" PositionPlacement +0 -0
262 Style "Gajim" PositionPlacement +0 -0
263 Style "* - Gajim" MinOverlapPercentPlacement
265 Style "Buddy List" PositionPlacement +0 -0
266 Style "*Pidgin*" MinOverlapPercentPlacement
269 Style "*MPlayer*" Layer 6, PositionPlacement 250p 100p
270 Style "*mpv" Layer 6, PositionPlacement 250p 100p
272 Style "*clock" !Title, Sticky, WindowListSkip, Color Black/#40c040, NeverFocus, PositionPlacement 50-50w +1p, Layer 2
273 Style "emacs" NoPPosition
274 Style "gxmessage" PositionPlacement 50-50w +20
275 Style "*lock" !Title, Sticky, WindowListSkip
276 Style "Mosaic" NoPPosition
277 Style "xbiff" Icon mail1.xpm, !Title, Sticky, WindowListSkip
278 Style "xcalc" Icon xcalc.xpm
279 Style "xconsole" !Title, Sticky, WindowListSkip, NeverFocus
280 Style "xload" !Title, Sticky, WindowListSkip, NeverFocus
281 Style "xman" Icon xman.xpm
282 Style "xmh" Icon mail2.xpm
283 Style "xsession" !Title, Sticky, WindowListSkip, ClickToFocus
284 Style "XXkb" !Title, !Borders, Sticky, WindowListSkip, Layer 5
286 ############################################################################
290 ## Buttons actually being used (duplicated below)
292 #ButtonStyle 2 4 50x35@1 65x65@0 35x65@0 50x35@1
293 # small down triangle
294 #ButtonStyle 4 4 50x65@1 35x35@1 65x35@1 50x65@0
296 #ButtonStyle 3 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
301 # ButtonStyle * 4 50x35@1 65x65@0 35x65@0 50x35@1
302 # Small down Triangle
303 #ButtonStyle * 4 50x65@1 35x35@1 65x35@1 50x65@0
305 #ButtonStyle 6 4 50x25@1 75x75@0 25x75@0 50x25@1
306 # Large down Triangle
307 #ButtonStyle 8 4 50x75@1 25x25@1 75x25@1 50x75@0
312 ButtonStyle 4 5 25x25@1 25x75@1 75x75@0 75x25@0 25x25@1
314 ButtonStyle 5 5 40x40@1 60x40@1 60x60@0 40x60@0 40x40@1
316 #ButtonStyle 7 5 40x25@1 60x25@1 60x75@0 40x75@0 40x25@1
318 #ButtonStyle 5 5 45x45@1 55x45@1 55x55@0 45x55@0 45x45@1
319 # Big Box with arrow (left-up to right-down) to little box (iconify)
320 #ButtonStyle 6 14 20x20@1 20x70@1 70x70@0 70x20@0 20x20@1 60x60@0 60x50@0 60x60@0 50x60@0 60x60@0 60x80@0 80x80@0 80x60@0 60x60@0
321 # Big Box with arrow (right-up to left-down) to little box (iconify)
322 ButtonStyle 6 14 70x20@0 70x70@0 20x70@1 20x20@1 70x20@1 30x60@0 30x50@0 30x60@0 40x60@0 30x60@0 30x80@0 10x80@0 10x60@0 30x60@0
327 #ButtonStyle 3 17 20x20@1 30x20@1 50x40@1 70x20@1 80x20@1 80x30@0 60x50@0 80x70@1 80x80@0 70x80@0 50x60@0 30x80@0 20x80@0 20x70@0 40x50@1 20x30@0 20x20@1
328 ButtonStyle 2 17 20x20@1 30x20@1 50x40@1 70x20@1 80x20@1 80x30@0 60x50@0 80x70@1 80x80@0 70x80@0 50x60@0 30x80@0 20x80@0 20x70@0 40x50@1 20x30@0 20x20@1
330 #ButtonStyle 3 13 26x29@1 34x21@1 50x35@1 70x21@1 79x29@1 63x48@0 79x65@1 70x75@0 50x61@0 34x75@0 26x65@0 44x48@1 26x29@0
332 #ButtonStyle 3 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
336 # Small Lightning Bolt (skinny at both ends)
337 #ButtonStyle 5 7 70x15@0 30x55@1 50x55@0 40x85@1 80x45@0 60x45@1 70x15@0
338 # Big Lighting Bolt (Fat at top, comes to a point)
339 #ButtonStyle 6 8 35x15@1 20x50@1 40x50@0 30x80@1 75x40@0 50x40@1 75x15@0 35x15@1
341 ## Miscellaneous Buttons
343 # Nested Right Angles (looks kinda crappy)
344 #ButtonStyle 5 13 10x0@1 80x0@1 80x10@1 80x80@0 0x80@0 0x60@1 10x65@1 70x65@0 70x0@0 55x0@1 55x10@1 55x55@0 10x55@0
345 # Nested Right Angles (looks nice)
346 #ButtonStyle 6 14 0x0@1 0x20@1 20x20@0 20x0@0 0x0@1 0x25@1 25x25@1 25x0@1 55x0@1 55x55@0 0x55@0 0x60@1 60x60@1 60x0@1
347 # 4 Horizontal bars (sticky)
348 #ButtonStyle 7 12 10x23@0 90x23@0 90x28@0 10x28@1 10x47@1 90x47@0 90x52@0 10x52@1 10x70@2 90x70@0 90x76@0 10x76@1
349 ButtonStyle 3 12 10x23@0 90x23@0 90x28@0 10x28@1 10x47@1 90x47@0 90x52@0 10x52@1 10x70@2 90x70@0 90x76@0 10x76@1
350 # Expanding Windows (iconify -- looks NICE)
351 #ButtonStyle 8 16 60x40@1 60x80@0 15x80@0 15x40@1 60x40@1 40x40@1 40x25@1 75x25@1 75x60@0 60x60@0 75x60@0 75x40@0 85x40@0 85x15@0 60x15@1 60x25@1
356 #ButtonStyle 3 8 40x80@1 40x50@1 20x50@1 50x20@1 80x50@0 60x50@0 60x80@0 40x80@0
358 #ButtonStyle 3 8 40x20@1 40x50@1 20x50@1 50x80@1 80x50@0 60x50@0 60x20@0 40x20@1
360 #ButtonStyle 7 8 80x40@1 50x40@1 50x20@1 20x50@1 50x80@0 50x60@0 80x60@0 80x40@0
362 #ButtonStyle 8 8 20x40@1 50x40@1 50x20@1 80x50@1 50x80@0 50x60@0 20x60@0 20x40@1
363 # Horizontal Line with arrowheads on left and right ( <-> )
364 #ButtonStyle * 12 10x50@1 35x25@1 35x40@1 65x40@1 65x25@1 90x50@1 65x75@0 65x60@0 35x60@0 35x75@0 10x50@0 10x50@1
365 # Vertical Line with arrowheads on top and bottom
366 #ButtonStyle * 12 50x10@1 25x35@1 40x35@1 40x60@1 25x60@1 50x85@1 75x60@0 60x60@0 60x35@0 75x35@0 50x10@0 50x10@1
367 # Diagonal Line with arrowheads on top and bottom ( / )
368 #ButtonStyle 5 11 80x15@1 45x15@1 55x25@1 25x55@1 15x45@1 15x80@1 50x80@0 40x70@0 70x40@0 80x50@0 80x15@0
369 # Diagonal Line with arrowheads on top and bottom ( \ )
370 #ButtonStyle 6 12 55x15@0 45x25@0 75x55@0 85x45@0 85x80@0 50x80@0 60x70@1 30x40@1 20x50@1 20x15@1 55x15@1 55x15@0
373 #ButtonStyle 8 12 80x80@0 22x80@0 80x40@0 70x25@0 30x25@0 20x35@0 20x30@1 30x20@1 70x20@1 80x30@1 20x75@1 80x75@1
375 ############################################################################
378 # First, the root window. Button 1 brings up the Main Menu. B2 is the
379 # window operations list, and B3 is the winlist module
380 # Button Context Modifi Function
381 Mouse 1 R A Menu RootMenu Nop
382 Mouse 2 R A Menu Window-Ops Nop
383 Mouse 3 R A WindowList
385 # Now, title bar buttons
386 # Left button is the Window-Ops2 menu
387 # Button Context Modifi Function
388 Mouse 0 1 A Menu Window-Ops2 Close
391 # Right buttonsare iconify/maximize, rightmost is close
393 Mouse 0 4 A Maximize toggle
396 # Button 1 in Frame or Sides is a resize-or-raise, in Icons is a move or
397 # de-iconify, and on Top does a move-or-raise
398 # Button Context Modifi Function
399 Mouse 1 F A Resize-or-Raise
400 Mouse 1 S A Move-or-Raise
401 Mouse 1 I A Move-or-Iconify
402 #Mouse 1 T A Move-or-Raise
405 # Button 2 in an Icon is de-iconify, in Corners/Sides/Titlebar gets Ops Menu
406 # Button Context Modifi Function
408 Mouse 2 FST A Menu Window-Ops2 Nop
410 # Button 3 does a raise-lower on anything
411 Mouse 3 TSIF A RaiseLower
413 ############################################################################
417 # press arrow + control + meta anywhere, and scroll by 1 page
418 Key Left A CM Scroll -100 +0
419 Key Right A CM Scroll +100 +0
420 Key Up A CM Scroll +0 -100
421 Key Down A CM Scroll +0 +100
423 # press arrow + meta key, and scroll by 1/10 of a page
424 Key Left A M Scroll -10 +0
425 Key Right A M Scroll +10 +0
426 Key Up A M Scroll +0 -10
427 Key Down A M Scroll +0 +10
429 # press shift arrow + control anywhere, and move the pointer by 1% of a page
430 Key Left A SC CursorMove -1 +0
431 Key Right A SC CursorMove +1 +0
432 Key Up A SC CursorMove +0 -1
433 Key Down A SC CursorMove +0 +1
435 # press shift arrow + meta key, and move the pointer by 1/10 of a page
436 Key Left A SM CursorMove -10 +0
437 Key Right A SM CursorMove +10 +0
438 Key Up A SM CursorMove +0 -10
439 Key Down A SM CursorMove +0 +10
441 # Switch window, mswindows style :)
442 Key Tab A M Next [*] focus
443 Key Escape A M Prev [*] focus
450 Key 5 A CM GotoPage 0 0
451 Key 6 A CM GotoPage 1 0
452 Key 7 A CM GotoPage 0 1
453 Key 8 A CM GotoPage 1 1
455 #############################################################################
458 DestroyFunc InitFunction
459 AddToFunc InitFunction
460 + I Module FvwmBacker
461 + I Module FvwmButtons
462 + I Module FvwmCommandS
463 + I Module FvwmPager 0 2
465 DestroyFunc RestartFunction
466 AddToFunc RestartFunction
467 + I Module FvwmBacker
468 + I Module FvwmButtons
469 + I Module FvwmCommandS
470 + I Module FvwmPager 0 2
471 + I Schedule 1000 Raise-All
473 DestroyFunc UrgencyFunc
474 AddToFunc UrgencyFunc
476 + I ThisWindow ("*Downloads") Break
479 + I WarpToWindow 5p 5p
481 DestroyFunc StartStandardSession
482 AddToFunc StartStandardSession
483 + I GotoDeskAndPage 0 0 0
486 + I GotoDeskAndPage 0 0 1
487 + I TERM_UTF8 -geometry 38x30+0-0
489 + I Exec exec pulseaudio --start
491 + I Exec exec "$HOME"/current/projects/audio-cdr-video/audio/pa-mic-off
494 + I GotoDeskAndPage 1 0 1
497 + I GotoDeskAndPage 2 0 1
498 + I TERM_KOI8 -geometry TERM_GEOM_BIG
502 DestroyFunc ResumeFunction
503 AddToFunc ResumeFunction
504 + I GotoDeskAndPage 0 0 0
507 + I Exec exec pulseaudio --start
508 + I None ("Volume Control") PaVuControl
509 + I Exec sleep 10; exec "$HOME"/current/projects/audio-cdr-video/audio/pa-mic-off
512 + I Any ("*Mozilla Firefox") GotoDeskAndPage 0 0 0
513 + I TestRc (Match) Break
514 + I None ("*Mozilla Firefox") FireFox
516 ############################################################################
520 AddToFunc Center I Move 50-50w 50-50w
521 + I WarpToWindow 74p 18p
523 DestroyFunc Iconify-and-Raise
524 AddToFunc Iconify-and-Raise I Iconify
527 DestroyFunc Maximize-Func
528 AddToFunc Maximize-Func C Maximize toggle
531 DestroyFunc Move-or-Iconify
532 AddToFunc Move-or-Iconify I Raise
536 DestroyFunc Move-or-Raise
537 AddToFunc Move-or-Raise I Raise
541 DestroyFunc Move-or-Raise2
542 AddToFunc Move-or-Raise2 M Raise
546 DestroyFunc Resize-or-Raise
547 AddToFunc Resize-or-Raise I Raise
551 DestroyFunc Resize-or-Raise2
552 AddToFunc Resize-or-Raise2 M Raise
557 AddToFunc Shadify D WindowShade
561 DestroyFunc warp-or-run
562 AddToFunc warp-or-run I Next [$0 CirculateHit] Iconify -1
563 + I Next [$0 CirculateHit] Focus
566 DestroyFunc MailFunction
567 AddToFunc MailFunction I Next [$0] Iconify -1
569 + I None [$0] Exec exec $0 $1
571 DestroyFunc PrintFunction
572 AddToFunc PrintFunction I Raise
573 + I Exec exec xdpr -id $w
575 DestroyFunc Raise-All
576 AddToFunc Raise-All I All Raise
578 ##############################################################################
579 # User-defined functions
582 DestroyFunc PaVuControl
583 AddToFunc PaVuControl I GotoDeskAndPage 0 1 1
584 + I Exec exec pavucontrol
585 + I Wait "Volume Control"
589 AddToFunc Id3Info I Exec "$HOME"/lib/audio/mp3/id3info.py "`audtool --current-song-filename`" | text-wrap.py | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
590 changequote([`], ['])
592 DestroyFunc AudioPlayer
593 AddToFunc AudioPlayer I GotoDeskAndPage 0 1 1
594 + I Exec exec audacious
596 DestroyFunc Term-Phdru
597 AddToFunc Term-Phdru I GotoDeskAndPage 1 0 1
598 + I REMOTE_HOST_KOI8(phdru.name, phdru.name)
600 DestroyFunc Term-Phdru-Big
601 AddToFunc Term-Phdru-Big I GotoDeskAndPage 1 0 1
602 + I REMOTE_HOST_KOI8_BIG(phdru.name, phdru.name)
605 AddToFunc FireFox I Any ("*Mozilla Firefox") Break
606 + I GotoDeskAndPage 1 0 0
607 + I Exec LC_CTYPE=ru_RU.KOI8-R exec start-browser firefox
608 + I Wait "*Mozilla Firefox"
611 AddToFunc Gajim I GotoDeskAndPage 1 1 0
615 AddToFunc Pidgin I GotoDeskAndPage 1 1 0
618 DestroyFunc XFilename
619 AddToFunc XSetbgFilename I Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -w TEXT_WIDTH -s | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
621 ##############################################################################
625 # This defines the most common window operations
626 AddToMenu Window-Ops "Window Ops" Title
628 + "Move" Move-or-Raise2
629 + "Resize" Resize-or-Raise2
632 + "(De)Iconify" Iconify
634 + "(Un)Maximize" maximize_func
640 + "Refresh Screen" Refresh
642 # A trimmed down version of "Window Ops", good for binding to decorations
643 DestroyMenu Window-Ops2
644 AddToMenu Window-Ops2 "Center" Center
645 + "Move" Move-or-Raise
648 + "Refresh" RefreshWindow
654 + "Resize" Resize-or-Raise
655 + "Shade" WindowShade
656 + "Raise/Lower" RaiseLower
658 + "ScrollBar" Module FvwmScroll 2 2
659 + "Print" PrintFunction
661 AddToMenu Terminals "Terminals" Title
662 + "Grey term (koi8)" TERM_KOI8
663 + "Grey term (utf8)" TERM_UTF8
664 + "Grey term (koi8,btlt)" TERM_KOI8_BOTLT
665 + "Grey term (koi8,btrt)" TERM_KOI8_BOTRT
666 + "Grey term (utf8,btlt)" TERM_UTF8_BOTLT
667 + "Grey term (utf8,btrt)" TERM_UTF8_BOTRT
668 + "Big grey term (koi8)" TERM_KOI8 -geometry TERM_GEOM_BIG
669 + "Big grey term (utf8)" TERM_UTF8 -geometry TERM_GEOM_BIG
671 + "White/black term (koi8)" TERM_KOI8 -fg white -cr white -bg black
672 + "White/black term (utf8)" TERM_UTF8 -fg white -bg black
674 AddToMenu TermColors "Term Colors" Title
675 + "Term: black/mediumturquoise" TERM_KOI8 -fg black -cr black -bg mediumturquoise
676 + "Term: black/lightseagreen" TERM_KOI8 -fg black -cr black -bg lightseagreen
678 + "Term: black/lightsteelblue" TERM_KOI8 -fg black -cr black -bg lightsteelblue
679 + "Term: black/lightblue3" TERM_KOI8 -fg black -cr black -bg lightblue3
681 + "Term: black/lightgoldenrod" TERM_KOI8 -fg black -cr black -bg lightgoldenrod
682 + "Term: black/rosybrown1" TERM_KOI8 -fg black -cr black -bg rosybrown1
683 + "Term: black/pink1" TERM_KOI8 -fg black -cr black -bg pink1
685 + "Term: white/orchid4" TERM_KOI8 -fg white -cr white -bg orchid4
686 + "Term: white/purple3" TERM_KOI8 -fg white -cr white -bg purple3
687 + "Term: white/purple4" TERM_KOI8 -fg white -cr white -bg purple4
689 + "Term: white/lightslategrey" TERM_KOI8 -fg white -cr white -bg lightslategrey
690 + "Term: white/navyblue" TERM_KOI8 -fg white -cr white -bg navyblue
691 + "Term: white/mediumblue" TERM_KOI8 -fg white -cr white -bg mediumblue
692 + "Term: white/steelblue" TERM_KOI8 -fg white -cr white -bg steelblue
694 + "Term: white/forestgreen" TERM_KOI8 -fg white -cr white -bg forestgreen
695 + "Term: white/rosybrown" TERM_KOI8 -fg white -cr white -bg rosybrown
696 + "Term: white/deeppink" TERM_KOI8 -fg white -cr white -bg deeppink
697 + "Term: white/black" TERM_KOI8 -fg white -cr white -bg black
699 AddToMenu Systems "Systems" Title
700 + REMOTE_HOST_KOI8_MENU(phdru.name, phdru)
701 + REMOTE_HOST_UTF8_BOTLT_MENU(phdru.name, phdru)
702 + REMOTE_HOST_KOI8_BIG_MENU(phdru.name, PHDRU)
704 AddToMenu FvwmCommands "Fvwm Commands" Title
706 + "Raise all" Raise-All
707 #+ "Restart Fvwm2" Restart fvwm2
708 #+ "Start Fvwm" Restart fvwm
709 + "Fvwm Setup" Popup FvwmSetup
710 + "Fvwm Modules" Popup FvwmModules
714 AddToMenu FvwmSetup "Fvwm Setup" Title
715 + "Start standard session" StartStandardSession
716 + "Change Scrolling" Popup FvwmScroll
718 AddToMenu FvwmScroll "Change Scroll Behavior" Title
719 + "OFF" EdgeScroll 0 0
720 + "ON" EdgeScroll 100 100
721 + "Horizontal Only" EdgeScroll 100 0
722 + "Vertical Only" EdgeScroll 0 100
723 + "Partial" EdgeScroll 50 50
725 AddToMenu FvwmModules "Fvwm Modules" Title
726 + "Animate" Module FvwmAnimate
727 + "Auto" Module FvwmAuto
728 + "Backer" Module FvwmBacker
729 + "Banner" Module FvwmBanner
730 + "Buttons" Module FvwmButtons
731 + "Cascade" Module FvwmCascade
732 + "CommandS" Module FvwmCommandS
733 + "Console" Module FvwmConsole
734 + "ConsoleC" Module FvwmConsoleC -e FvwmConsoleC.pl
735 + "Cpp" Module FvwmCpp
736 + "Debug" Module FvwmDebug
737 + "DragWell" Module FvwmDragWell
738 + "Event" Module FvwmEvent
739 + "Form" Module FvwmForm
740 + "Gtk" Module FvwmGtk
741 + "IconBox" Module FvwmIconBox
742 + "IconMan" Module FvwmIconMan
743 + "Ident" Module FvwmIdent
745 + "Pager" Module FvwmPager 0 2
746 + "Rearrange" Module FvwmRearrange
747 + "Save" Module FvwmSave
748 + "SaveDesk" Module FvwmSaveDesk
749 + "Script" Module FvwmScript
750 + "Scroll" Module FvwmScroll
751 + "TaskBar" Module FvwmTaskBar
752 + "Theme" Module FvwmTheme
753 + "Tile" Module FvwmTile
754 + "Wharf" Module FvwmWharf
755 + "WinList" Module FvwmWinList
757 # This is the root menu
758 AddToMenu RootMenu "Root Menu" Title
759 + "Terminals" Popup Terminals
760 #+ "Color term" Popup TermColors
761 + "Systems" Popup Systems
763 + "Browsers" Popup Browsers
764 + "Utilities" Popup Utilities
766 #+ "Lock Screen" Popup XlockMenu
767 + "XScreenSaver" Popup XScreenSaverMenu
768 #+ "Tv-tuner" Popup Tv-tuner
770 + "XSetBg" Popup XSetBgMenu
771 + "Fvwm Commands" Popup FvwmCommands
773 # This menu will fire up some often used programs
774 DestroyMenu Utilities
775 AddToMenu Utilities "Choose one:" Title
776 + "qPDFview" Exec exec qpdfview
777 + "FBReader" Exec exec fbreader
779 + "GVim" Exec exec gvim
781 #+ "XFortune" Exec /usr/games/fortune | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
782 #+ "xbuffy" Exec exec xbuffy -fn 'XBUFFY_FONT' -geometry +0+125 -boxfile mail/misc/.xbuffyrc
784 + "pavucontrol" PaVuControl
785 + "AudioPlayer" AudioPlayer
791 + "xload" Exec exec xload -geometry =136x136+0+0
792 + "Top" TERM_KOI8 -T Top -n Top -e top
794 + "Refresh Screen" Refresh
795 + "xrefresh" Exec exec xrefresh
797 #+ "xcalc" Exec exec xcalc
798 + "xclipboard" Exec exec xclipboard
799 + "xcutsel" Exec exec xcutsel
800 #+ "xman" Exec exec xman -notopbox -geometry +150+102
801 #+ "emacs" Exec emacs -geometry 81x35+150+34
802 #+ "xv" Function warp-or-run xv "Exec exec xv -ncols 240 -geometry +0+0"
805 AddToMenu Browsers "Choose one:" Title
807 + "Chromium" None ("*Chromium") Exec exec start-browser chromium
808 + "Opera" None ("*Opera") Exec exec start-browser opera
810 # A wide variety of screenlocking options...
811 #AddToMenu XlockMenu "Choose one:" Title
812 #+ "Hop" Exec exec xlock -mode hop
813 #+ "Image" Exec exec xlock -mode image
814 #+ "Life" Exec exec xlock -mode life
815 #+ "Flame" Exec exec xlock -mode flame
816 #+ "Pyro" Exec exec xlock -mode pyro
817 #+ "Qix" Exec exec xlock -mode qix
818 #+ "Rotor" Exec exec xlock -mode rotor
819 #+ "Swarm" Exec exec xlock -mode swarm
821 #+ "Random" Exec exec xlock -mode random
822 #+ "Blank" Exec exec xlock -mode blank
824 AddToMenu XScreenSaverMenu "Choose mode:" Title
825 + "Blank Screen Now" Exec exec xscreensaver-command -activate
826 + "Lock Screen Now" Exec exec xscreensaver-command -lock
827 + "Screen Saver Demo" Exec exec xscreensaver-command -demo
828 + "Screen Saver Preferences" Exec exec xscreensaver-command -prefs
829 + "Reinitialize Screen Saver" Exec exec xscreensaver-command -restart
831 + "Kill Screen Saver" Exec exec xscreensaver-command -exit
832 + "Launch Screen Saver" Exec exec xscreensaver
834 AddToMenu XSetBgMenu "XSetBg" Title
835 + "Change wallpaper" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-force
836 + "Start" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-start
837 + "Stop" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-stop
838 + "Restart" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-restart
841 + "Xli" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" "$fn"
842 + "Xli (scaled)" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" -zoom auto "$fn"
843 + "Open in browser" Exec exec webbrowserX -n "`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r`"
844 + "Filename" Exec exec "$HOME"/current/projects/xsetbg/print-filename.py -e koi8-r
845 + "XFilename" Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
846 + "XFilename (wrapped)" XSetbgFilename
848 + "Xli (prev.)" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r 1`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" "$fn"
849 + "Xli (prev., scaled)" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r 1`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" -zoom auto "$fn"
850 + "Open in browser (prev.)" Exec exec webbrowserX -n "`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r 1`"
851 changequote([`], ['])
852 + "Filename (prev.)" Exec exec "$HOME"/current/projects/xsetbg/print-filename.py -e koi8-r 1
853 + "XFilename (prev.)" Exec "$HOME"/current/projects/xsetbg/print-filename.py 1 | text-wrap.py | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
854 + "XFilename (prev., wrapped)" Exec "$HOME"/current/projects/xsetbg/print-filename.py 1 | text-wrap.py -w TEXT_WIDTH -s | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
856 ############################################################################
859 #*FvwmBacker: Command (Desk 0, Page * *) -solid DarkCyan
860 #*FvwmBacker: Command (Desk 1, Page * *) -solid steelblue
861 #*FvwmBacker: Command (Desk 2, Page * *) -solid midnightblue
862 *FvwmBacker: Command (Desk *, Page * *) Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-change
864 ############################################################################
868 *FvwmButtons: Fore Black
869 *FvwmButtons: Back rgb:90/80/90
872 *FvwmButtons: Font BUTTONS_FONT
874 # Geometry-- really likes to pick its own size, but giving a position is OK
875 *FvwmButtons: Geometry -1+1
877 # Layout: specify rows or columns, not both
878 *FvwmButtons: Rows 2 #, Columns 5
880 # Transparent background
881 #*FvwmButtons: Pixmap none
883 #*FvwmButtons: Pixmap fvwm.xpm
885 # Define the buttons to use.....
886 #*FvwmButtons: Move arrows2.xpm Move
887 #*FvwmButtons: Kill skull.xpm Destroy
888 #*FvwmButtons: Quit nuke.xpm Popup "Quit-Verify"
890 #*FvwmButtons: (Swallow XClock 'Exec exec xclock -update 1 -geometry -3000-3000')
893 pushdef(`TERM_KOI8', `Exec "TERM" LC_CTYPE=ru_RU.KOI8-R exec TERM')
894 pushdef(`TERM_UTF8', `Exec "URxvt" exec "$HOME"/lib/X11/utf8rxvt')
895 *FvwmButtons: (Title Term, Icon rterm2.xpm, Action TERM_KOI8)
896 *FvwmButtons: (Title UTF-8, Icon rterm2.xpm, Action TERM_UTF8)
897 *FvwmButtons: (Title phdru, Icon xterm-sgi.xpm, Action REMOTE_HOST_KOI8(phdru.name, phdru.name))
898 popdef(`TERM_KOI8', `TERM_UTF8')
900 *FvwmButtons: (Title Wallpaper, Icon find1.xpm, Action Exec "gxmessage" "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -w TEXT_WIDTH -s | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -)
901 *FvwmButtons: (Title "-1", Icon find1.xpm, Action Exec "gxmessage" "$HOME"/current/projects/xsetbg/print-filename.py 1 | text-wrap.py -w TEXT_WIDTH -s | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -)
902 *FvwmButtons: (Title Next, Icon Jrecycle.xpm, Action Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-force)
903 *FvwmButtons: (Title pavucontrol, Icon mini.sound.xpm, Action Exec "Volume Control" exec pavucontrol)
904 #*FvwmButtons: (Title Id3Info, Icon bell.xpm, Action Id3Info)
905 *FvwmButtons: (Title AudioPlayer, Icon bell.xpm, Action Exec "Audacious" exec audacious)
906 #*FvwmButtons: (Title XLock, Icon Jxlock.xpm, Action Exec exec xscreensaver-command -lock)
908 ############################################################################
911 # FvwmForm alias - rlogin to host via term
913 #*Rlogin: WarpPointer
914 #*Rlogin: Font *helvetica*m*r*n*14*
915 #*Rlogin: ButtonFont *helvetica*m*o*n*14*
916 #*Rlogin: InputFont *cour*m*r*n*14*
918 #*Rlogin: Back Light Gray
919 #*Rlogin: ItemFore Wheat
920 #*Rlogin: ItemBack Gray50
922 #*Rlogin: Line center
923 #*Rlogin: Text "Login to Remote Host"
924 #*Rlogin: Line center
925 #*Rlogin: Text "Host:"
926 #*Rlogin: Input HostName 20 ""
927 #*Rlogin: Line center
928 #*Rlogin: Selection UserSel single
929 #*Rlogin: Choice Default Default on "same user"
930 #*Rlogin: Choice Custom Custom off "user:"
931 #*Rlogin: Input UserName 10 ""
932 #*Rlogin: Line expand
933 #*Rlogin: Button quit "Login" ^M
934 #*Rlogin: Command TERM_KOI8 -T term@$(HostName) -e rlogin $(HostName) $(Custom?-l $(UserName))
935 #*Rlogin: Button restart "Clear"
936 #*Rlogin: Command Beep
937 #*Rlogin: Button quit "Cancel"
938 #*Rlogin: Command Nop
940 ## FvwmForm alias - query exit ala mwm
942 #*QuitVerify: GrabServer
943 #*QuitVerify: WarpPointer
944 #*QuitVerify: Font *helvetica*m*r*n*14*
945 ##*QuitVerify: ButtonFont *helvetica*m*o*n*14*
946 #*QuitVerify: ButtonFont 7x13bold
947 #*QuitVerify: Fore Black
948 #*QuitVerify: Back Light Gray
949 #*QuitVerify: ItemFore Wheat
950 #*QuitVerify: ItemBack Gray50
952 #*QuitVerify: Line center
953 #*QuitVerify: Text "Do you really want to exit FVWM?"
954 #*QuitVerify: Line expand
955 #*QuitVerify: Button quit " Exit "
956 #*QuitVerify: Command Quit
957 #*QuitVerify: Button quit "Cancel"
958 #*QuitVerify: Command Nop
961 ## MyTalk & MyFvwmTalk from Dave Goldberg
962 ## MyTalk Form - dissappears after use
964 #*MyTalk: WarpPointer
965 #*MyTalk: Font *helvetica*m*r*n*14*
966 #*MyTalk: ButtonFont *helvetica*m*o*n*14*
967 #*MyTalk: InputFont *cour*m*r*n*14*
970 #*MyTalk: ItemFore Blue
971 #*MyTalk: ItemBack Gray
972 #*MyTalk: Line center
973 #*MyTalk: Text "Fvwm Function"
974 #*MyTalk: Input Func 40 ""
975 #*MyTalk: Line expand
976 #*MyTalk: Button quit "Run" ^M
977 #*MyTalk: Command $(Func)
978 #*MyTalk: Button restart "Clear" ^R
979 #*MyTalk: Button quit "Cancel" ^C
980 #*MyTalk: Command Nop
982 ## MyFvwmTalk Form - sticks around
984 #*MyFvwmTalk: WarpPointer
985 #*MyFvwmTalk: Font *helvetica*m*r*n*14*
986 #*MyFvwmTalk: ButtonFont *helvetica*m*o*n*14*
987 #*MyFvwmTalk: InputFont *cour*m*r*n*14*
988 #*MyFvwmTalk: Fore Red
989 #*MyFvwmTalk: Back Gray
990 #*MyFvwmTalk: ItemFore Blue
991 #*MyFvwmTalk: ItemBack Gray
992 #*MyFvwmTalk: Line center
993 #*MyFvwmTalk: Text "Fvwm Function"
994 #*MyFvwmTalk: Input Func 40 ""
995 #*MyFvwmTalk: Line expand
996 #*MyFvwmTalk: Button restart "Run" ^M
997 #*MyFvwmTalk: Command $(Func)
998 #*MyFvwmTalk: Button restart "Clear" ^R
999 #*MyFvwmTalk: Command Nop
1000 #*MyFvwmTalk: Button restart "Iconify" ^Z
1001 #*MyFvwmTalk: Command Next [MyFvwmTalk] Iconify
1002 #*MyFvwmTalk: Button quit "Quit" ^C
1003 #*MyFvwmTalk: Command Nop
1005 ############################################################################
1008 # NOTE: Icons will only be shown in module if "Style * !Icon" is set
1009 *FvwmIconBox: IconBack #cfcfcf
1010 *FvwmIconBox: IconHiFore black
1011 *FvwmIconBox: IconHiBack LightSkyBlue
1012 *FvwmIconBox: Back #5f9ea0
1013 #*FvwmIconBox: Fore blue
1014 *FvwmIconBox: Geometry 5x1+0+0
1015 *FvwmIconBox: MaxIconSize 64x38
1016 *FvwmIconBox: Font ICON_BOX_FONT
1017 *FvwmIconBox: SortIcons IconName
1018 *FvwmIconBox: Padding 4
1019 *FvwmIconBox: Lines 10
1020 *FvwmIconBox: SBWidth 11
1021 *FvwmIconBox: Placement Left Top
1022 *FvwmIconBox: Pixmap fvwm.xpm
1023 #*FvwmIconBox: HideSC Horizontal
1024 *FvwmIconBox: SetWMIconSize
1025 *FvwmIconBox: HilightFocusWin
1026 #*FvwmIconBox: Resolution Desk
1027 *FvwmIconBox: Mouse 1 Click RaiseLower
1028 *FvwmIconBox: Mouse 1 DoubleClick Iconify
1029 *FvwmIconBox: Mouse 2 Click Iconify -1, Focus
1030 *FvwmIconBox: Mouse 3 Click Module FvwmIdent
1031 *FvwmIconBox: Key r RaiseLower
1032 *FvwmIconBox: Key space Iconify
1033 *FvwmIconBox: Key d Close
1034 *FvwmIconBox: Key n Next
1035 *FvwmIconBox: Key p Prev
1036 *FvwmIconBox: Key h Left
1037 *FvwmIconBox: Key j Down
1038 *FvwmIconBox: Key k Up
1039 *FvwmIconBox: Key l Right
1041 ############################################################################
1044 # Give us colors and a fonts
1045 *FvwmIdent: Back MidnightBlue
1046 *FvwmIdent: Fore Yellow
1047 *FvwmIdent: Font IDENT_FONT
1049 ############################################################################
1052 *FvwmPager: Back #908090
1053 *FvwmPager: Fore #484048
1054 *FvwmPager: Font TITLE_FONT
1055 *FvwmPager: Hilight #cab3ca
1056 *FvwmPager: Geometry PAGER_GEOM
1057 *FvwmPager: Label 0 System
1058 *FvwmPager: Label 1 Net
1059 *FvwmPager: Label 2 Work
1060 *FvwmPager: SmallFont SMALL_PAGER_FONT
1062 *FvwmPager: Balloons All
1063 *FvwmPager: BalloonBack #efe3b5
1064 *FvwmPager: BalloonFore Black
1065 *FvwmPager: BalloonFont ICON_FONT
1066 *FvwmPager: BalloonYOffset +2
1067 *FvwmPager: BalloonBorderWidth 1
1068 *FvwmPager: BalloonBorderColor Black
1070 ############################################################################
1073 *FvwmScroll: Back grey40
1074 *FvwmScroll: Fore green
1076 ############################################################################
1079 *FvwmWinList: Back #908090
1080 *FvwmWinList: Fore Black
1081 *FvwmWinList: Font WIN_LIST_FONT
1082 *FvwmWinList: Action Click1 Iconify -1, Focus
1083 *FvwmWinList: Action Click2 Iconify
1084 *FvwmWinList: Action Click3 Module "FvwmIdent: " FvwmIdent
1085 *FvwmWinList: UseSkipList
1086 *FvwmWinList: Geometry +10-10