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')
37 define(`SMALL_BOLD_FONT', SMALL_FONT`:Bold')
38 define(`MEDIUM_BOLD_FONT', MEDIUM_FONT`:Bold')
39 define(`BIG_BOLD_FONT', BIG_FONT`:Bold')
41 define(`TITLE_FONT', MEDIUM_FONT)
42 define(`ICON_FONT', LARGE_FONT)
44 dnl Font and geometry aliases that depend on whether the screen resolution is
45 dnl 800x600, 1024x768 or 1920x1200
48 ifelse(eval(WIDTH < 1024), 1, `365x100+0+0',
49 eval(WIDTH < 1920), 1, `365x100+0+0', `600x160+0+0'))
51 define(`SMALL_PAGER_FONT', ifelse(eval(WIDTH < 1920), 1, VERY_SMALL_FONT, SMALL_FONT))
52 define(`PAGER_FONT', ifelse(eval(WIDTH < 1920), 1, SMALL_FONT, BIG_FONT))
53 define(`BUTTONS_FONT', PAGER_FONT)
57 ifelse(eval(WIDTH < 1024), 1, `xft:Helvetica:size=16',
58 eval(WIDTH < 1920), 1, `xft:Helvetica:size=18', `xft:Helvetica:size=22'))
59 define(`IDENT_FONT', MENU_FONT)
60 define(`WIN_LIST_FONT', MENU_FONT)
61 define(`ICON_BOX_FONT', MENU_FONT)
64 dnl XSetBg message width and font
66 ifelse(eval(WIDTH < 1024), 1, 70,
67 eval(WIDTH < 1920), 1, 75, 80))
69 define(`MESSAGE_FONT', `Nimbus Sans L 18')
74 ifelse(eval(WIDTH < 1024), 1, `80x25',
75 eval(WIDTH < 1920), 1, `80x30', `80x32'))
77 define(`TERM_GEOM_BOTLT', TERM_GEOM`+0-0')
78 define(`TERM_GEOM_BOTRT', TERM_GEOM`-0-0')
80 define(`TERM_GEOM_BIG',
81 ifelse(eval(WIDTH < 1024), 1, `96x30',
82 eval(WIDTH < 1920), 1, `112x32', `126x35'))
85 define(`TERM', `urxvt')
86 define(`TERM_KOI8', `Exec LC_CTYPE=ru_RU.KOI8-R exec TERM')
87 define(`TERM_UTF8', `Exec exec "$HOME"/lib/X11/utf8rxvt')
88 define(`TERM_KOI8_BOTLT', `TERM_KOI8 -geometry TERM_GEOM_BOTLT')
89 define(`TERM_UTF8_BOTLT', `TERM_UTF8 -geometry TERM_GEOM_BOTLT')
90 define(`TERM_KOI8_BOTRT', `TERM_KOI8 -geometry TERM_GEOM_BOTRT')
91 define(`TERM_UTF8_BOTRT', `TERM_UTF8 -geometry TERM_GEOM_BOTRT')
94 define(`REMOTE_HOST_KOI8',
95 `TERM_KOI8 -title "$2" -n "$2" -e ssh -4 "$1"')
97 define(`REMOTE_HOST_KOI8_MENU',
98 "$2 (koi8)" REMOTE_HOST_KOI8($1, $2))
100 define(`REMOTE_HOST_KOI8_BOTLT',
101 TERM_KOI8_BOTLT -title "$2" -n "$2" -e ssh -4 "$1")
103 define(`REMOTE_HOST_KOI8_BOTRT',
104 `TERM_KOI8_BOTRT -title "$2" -n "$2" -e ssh -4 "$1"')
106 define(`REMOTE_HOST_KOI8_BOTLT_MENU',
107 "$2 (koi8,btlt)" REMOTE_HOST_KOI8_BOTLT($1, $2))
109 define(`REMOTE_HOST_KOI8_BOTRT_MENU',
110 "$2 (koi8,btrt)" REMOTE_HOST_KOI8_BOTRT($1, $2))
112 define(`REMOTE_HOST_UTF8',
113 TERM_UTF8 -e ssh -4 "$1")
115 define(`REMOTE_HOST_UTF8_MENU',
116 "$2 (utf8)" REMOTE_HOST_UTF8($1, $2))
118 define(`REMOTE_HOST_UTF8_BOTLT',
119 TERM_UTF8_BOTLT -e ssh -4 "$1")
121 define(`REMOTE_HOST_UTF8_BOTRT',
122 TERM_UTF8_BOTRT -e ssh -4 "$1")
124 define(`REMOTE_HOST_UTF8_BOTLT_MENU',
125 "$2 (utf8,btlt)" REMOTE_HOST_UTF8_BOTLT($1, $2))
127 define(`REMOTE_HOST_UTF8_BOTRT_MENU',
128 "$2 (utf8,btrt)" REMOTE_HOST_UTF8_BOTRT($1, $2))
130 define(`REMOTE_HOST_KOI8_BIG',
131 TERM_KOI8 -geometry TERM_GEOM_BIG -title "$2" -n "$2" -e ssh -4 "$1")
133 define(`REMOTE_HOST_KOI8_BIG_MENU',
134 "$2 (koi8)" REMOTE_HOST_KOI8_BIG($1, $2))
137 ##########################################################################
140 # Colon seperated unix directory paths for Modules, xpm files, and bitmaps
141 #ModulePath /usr/lib/fvwm
142 ImagePath /usr/share/pixmaps/fvwm:/usr/share/pixmaps:/usr/include/X11/bitmaps #:/usr/local/firefox/chrome/icons/default:/usr/local/firefox/icons
144 ############################################################################
147 # Set the fore and back border colors for the window that has focus
148 Style * HilightFore Black, HilightBack #c06077
150 # Set fore/back border colors for all other windows
151 Style * Color Black/#60a0c0
153 # Set colors/font for pop-up menus
154 # Syntax: MenuStyle forecolor backcolor shadecolor font style(fvwm/mwm)
155 MenuStyle * FVWM, Foreground Black, Background grey, Greyed SlateGrey, Font MENU_FONT
157 # Set fonts to use on title bar and icon label
158 Style * Font TITLE_FONT
160 ############################################################################
163 # If you don't want icons for some or all windows (or all of them!)
166 # If you want ALL icons to follow you around the desktop (Sticky)
169 # Auto Place Icons is a nice feature (Left Top Right Bottom)
170 #Style * IconBox 10 -75 -10 -0
172 Style * IconFont ICON_FONT
174 ############################################################################
177 # Does the window with focus control the colormap, or the one under the mouse
178 ColormapFocus FollowsMouse
180 # Uncomment this to force you to click in a window to give it focus
181 #Style * ClickToFocus
183 # default: focus follows mouse
185 #Style * FocusFollowsMouse
187 # If you knock your mouse out of the term, it keeps focus while in root window
190 ############################################################################
193 # click/release must occur in <n milliseconds to be a "click"
196 # if the window occupies less than n% of the screen, draw it opaque
199 # Do not flip pages on the edge of the screen, but allow to move windows
202 Style * EdgeMoveDelay 500
203 Style * EdgeMoveResistance 100
205 # MWM Emulation: Don't ignore hints for functions and transient decoration
206 #Style * MWMFunctions, MWMDecor, MWMButtons, MWMMenus
207 Style * MWMFunctions, MWMDecor, MWMButtons
209 # Changes the look of the "rubberband" you see when moving windows (0 - 255)
212 ###########################################################################
215 # set the desk top size in units of physical screen size (width x height)
218 ############################################################################
221 Style * PositionPlacement Center
223 ############################################################################
226 # (decorations and window options)
227 # Note: Order is important!! If compatible styles are set, styles are ORed
228 # together. If conflicting styles are set, the last one specified is used.
230 # change the default width, set a global icon, and give borders to popups
231 Style * BorderWidth 5, HandleWidth 5, Icon unknown1.xpm
232 Style * DecorateTransient, ClickToFocusRaisesOff
234 Style "Fvwm*" !Title, Sticky, WindowListSkip
235 Style "FvwmButtons" !Handles, BorderWidth 0
238 Style "*term" Icon term.xpm
239 Style "*rxvt" Icon term.xpm
240 Style "term-im-local" Icon pidgin-menu.xpm
241 Style "term-im-remote" Icon rcalc2.xpm
242 Style "term-im-*" IconBox 630 -75 -2 -2, IconGrid 200 80
243 Style "term-im-*" StartsOnPage 1 1 0, StartIconic
246 Style "Certificate Manager" PositionPlacement Center
247 Style "*Downloads" PositionPlacement 50-50w +5
248 Style "*Mozilla*" PositionPlacement +0 -0
250 Style "*Chromium*" PositionPlacement +0 -0
253 Style "Gajim" PositionPlacement +0 -0
254 Style "* - Gajim" MinOverlapPercentPlacement
256 Style "Buddy List" PositionPlacement +0 -0
257 Style "*Pidgin*" MinOverlapPercentPlacement
260 Style "*MPlayer*" Layer 6, PositionPlacement 350p 100p
262 Style "*clock" !Title, Sticky, WindowListSkip, Color Black/#40c040, NeverFocus, PositionPlacement 50-50w +1p
263 Style "emacs" NoPPosition
264 Style "gxmessage" PositionPlacement 50-50w +20
265 Style "*lock" !Title, Sticky, WindowListSkip
266 Style "Mosaic" NoPPosition
267 Style "xbiff" Icon mail1.xpm, !Title, Sticky, WindowListSkip
268 Style "xcalc" Icon xcalc.xpm
269 Style "xconsole" !Title, Sticky, WindowListSkip, NeverFocus
270 Style "xload" !Title, Sticky, WindowListSkip, NeverFocus
271 Style "xman" Icon xman.xpm
272 Style "xmh" Icon mail2.xpm
273 Style "xsession" !Title, Sticky, WindowListSkip, ClickToFocus
274 Style "XXkb" !Title, !Borders, Sticky, WindowListSkip, Layer 5
276 ############################################################################
280 ## Buttons actually being used (duplicated below)
282 #ButtonStyle 2 4 50x35@1 65x65@0 35x65@0 50x35@1
283 # small down triangle
284 #ButtonStyle 4 4 50x65@1 35x35@1 65x35@1 50x65@0
286 #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
291 # ButtonStyle * 4 50x35@1 65x65@0 35x65@0 50x35@1
292 # Small down Triangle
293 #ButtonStyle * 4 50x65@1 35x35@1 65x35@1 50x65@0
295 #ButtonStyle 6 4 50x25@1 75x75@0 25x75@0 50x25@1
296 # Large down Triangle
297 #ButtonStyle 8 4 50x75@1 25x25@1 75x25@1 50x75@0
302 ButtonStyle 4 5 25x25@1 25x75@1 75x75@0 75x25@0 25x25@1
304 ButtonStyle 5 5 40x40@1 60x40@1 60x60@0 40x60@0 40x40@1
306 #ButtonStyle 7 5 40x25@1 60x25@1 60x75@0 40x75@0 40x25@1
308 #ButtonStyle 5 5 45x45@1 55x45@1 55x55@0 45x55@0 45x45@1
309 # Big Box with arrow (left-up to right-down) to little box (iconify)
310 #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
311 # Big Box with arrow (right-up to left-down) to little box (iconify)
312 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
317 #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
318 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
320 #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
322 #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
326 # Small Lightning Bolt (skinny at both ends)
327 #ButtonStyle 5 7 70x15@0 30x55@1 50x55@0 40x85@1 80x45@0 60x45@1 70x15@0
328 # Big Lighting Bolt (Fat at top, comes to a point)
329 #ButtonStyle 6 8 35x15@1 20x50@1 40x50@0 30x80@1 75x40@0 50x40@1 75x15@0 35x15@1
331 ## Miscellaneous Buttons
333 # Nested Right Angles (looks kinda crappy)
334 #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
335 # Nested Right Angles (looks nice)
336 #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
337 # 4 Horizontal bars (sticky)
338 #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
339 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
340 # Expanding Windows (iconify -- looks NICE)
341 #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
346 #ButtonStyle 3 8 40x80@1 40x50@1 20x50@1 50x20@1 80x50@0 60x50@0 60x80@0 40x80@0
348 #ButtonStyle 3 8 40x20@1 40x50@1 20x50@1 50x80@1 80x50@0 60x50@0 60x20@0 40x20@1
350 #ButtonStyle 7 8 80x40@1 50x40@1 50x20@1 20x50@1 50x80@0 50x60@0 80x60@0 80x40@0
352 #ButtonStyle 8 8 20x40@1 50x40@1 50x20@1 80x50@1 50x80@0 50x60@0 20x60@0 20x40@1
353 # Horizontal Line with arrowheads on left and right ( <-> )
354 #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
355 # Vertical Line with arrowheads on top and bottom
356 #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
357 # Diagonal Line with arrowheads on top and bottom ( / )
358 #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
359 # Diagonal Line with arrowheads on top and bottom ( \ )
360 #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
363 #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
365 ############################################################################
368 # First, the root window. Button 1 brings up the Main Menu. B2 is the
369 # window operations list, and B3 is the winlist module
370 # Button Context Modifi Function
371 Mouse 1 R A Menu RootMenu Nop
372 Mouse 2 R A Menu Window-Ops Nop
373 Mouse 3 R A WindowList
375 # Now, title bar buttons
376 # Left button is the Window-Ops2 menu
377 # Button Context Modifi Function
378 Mouse 0 1 A Menu Window-Ops2 Close
381 # Right buttonsare iconify/maximize, rightmost is close
383 Mouse 0 4 A Maximize toggle
386 # Button 1 in Frame or Sides is a resize-or-raise, in Icons is a move or
387 # de-iconify, and on Top does a move-or-raise
388 # Button Context Modifi Function
389 Mouse 1 F A Resize-or-Raise
390 Mouse 1 S A Move-or-Raise
391 Mouse 1 I A Move-or-Iconify
392 #Mouse 1 T A Move-or-Raise
395 # Button 2 in an Icon is de-iconify, in Corners/Sides/Titlebar gets Ops Menu
396 # Button Context Modifi Function
398 Mouse 2 FST A Menu Window-Ops2 Nop
400 # Button 3 does a raise-lower on anything
401 Mouse 3 TSIF A RaiseLower
403 ############################################################################
407 # press arrow + control + meta anywhere, and scroll by 1 page
408 Key Left A CM Scroll -100 +0
409 Key Right A CM Scroll +100 +0
410 Key Up A CM Scroll +0 -100
411 Key Down A CM Scroll +0 +100
413 # press arrow + meta key, and scroll by 1/10 of a page
414 Key Left A M Scroll -10 +0
415 Key Right A M Scroll +10 +0
416 Key Up A M Scroll +0 -10
417 Key Down A M Scroll +0 +10
419 # press shift arrow + control anywhere, and move the pointer by 1% of a page
420 Key Left A SC CursorMove -1 +0
421 Key Right A SC CursorMove +1 +0
422 Key Up A SC CursorMove +0 -1
423 Key Down A SC CursorMove +0 +1
425 # press shift arrow + meta key, and move the pointer by 1/10 of a page
426 Key Left A SM CursorMove -10 +0
427 Key Right A SM CursorMove +10 +0
428 Key Up A SM CursorMove +0 -10
429 Key Down A SM CursorMove +0 +10
431 # Switch window, mswindows style :)
432 Key Tab A M Next [*] focus
433 Key Escape A M Prev [*] focus
440 Key 5 A CM GotoPage 0 0
441 Key 6 A CM GotoPage 1 0
442 Key 7 A CM GotoPage 0 1
443 Key 8 A CM GotoPage 1 1
445 #############################################################################
448 DestroyFunc InitFunction
449 AddToFunc InitFunction
450 + I Module FvwmBacker
451 + I Module FvwmButtons
452 + I Module FvwmCommandS
453 + I Module FvwmPager 0 2
455 DestroyFunc RestartFunction
456 AddToFunc RestartFunction
457 + I Module FvwmBacker
458 + I Module FvwmButtons
459 + I Module FvwmCommandS
460 + I Module FvwmPager 0 2
461 + I Schedule 1000 Raise-All
463 DestroyFunc UrgencyFunc
464 AddToFunc UrgencyFunc
466 + I ThisWindow ("*Downloads") Break
469 + I WarpToWindow 5p 5p
471 DestroyFunc StartStandardSession
472 AddToFunc StartStandardSession
473 + I GotoDeskAndPage 0 0 0
476 + I GotoDeskAndPage 0 0 1
477 + I TERM_UTF8 -geometry 38x30+0-0
479 + I GotoDeskAndPage 0 1 0
480 + I TERM_KOI8 -e su -
483 + I Wait "Volume Control"
484 + I Exec exec "$HOME"/current/projects/audio-cdr-video/audio/pa-mic-off
486 + I GotoDeskAndPage 1 0 1
489 + I GotoDeskAndPage 2 0 1
490 + I TERM_KOI8 -geometry TERM_GEOM_BIG
494 + I TERM_UTF8 -iconic -name term-im-remote
496 + I TERM_KOI8 -geometry 60x25-5-5 -iconic -name term-im-local
498 + I GotoDeskAndPage 1 1 0
499 + I Schedule 1000 GotoDeskAndPage 0 1 0
501 DestroyFunc ResumeFunction
502 AddToFunc ResumeFunction
503 + I GotoDeskAndPage 0 0 0
507 + I Wait "Volume Control"
508 + I Exec sleep 10; exec "$HOME"/current/projects/audio-cdr-video/audio/pa-mic-off
509 + I Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
511 + I None ("*Mozilla Firefox") FireFox
512 + I GotoDeskAndPage 0 1 0
514 ############################################################################
518 AddToFunc Center I Move 50-50w 50-50w
519 + I WarpToWindow 74p 18p
521 DestroyFunc Iconify-and-Raise
522 AddToFunc Iconify-and-Raise I Iconify
525 DestroyFunc Maximize-Func
526 AddToFunc Maximize-Func C Maximize toggle
529 DestroyFunc Move-or-Iconify
530 AddToFunc Move-or-Iconify I Raise
534 DestroyFunc Move-or-Raise
535 AddToFunc Move-or-Raise I Raise
539 DestroyFunc Move-or-Raise2
540 AddToFunc Move-or-Raise2 M Raise
544 DestroyFunc Resize-or-Raise
545 AddToFunc Resize-or-Raise I Raise
549 DestroyFunc Resize-or-Raise2
550 AddToFunc Resize-or-Raise2 M Raise
555 AddToFunc Shadify D WindowShade
559 DestroyFunc warp-or-run
560 AddToFunc warp-or-run I Next [$0 CirculateHit] Iconify -1
561 + I Next [$0 CirculateHit] Focus
564 DestroyFunc MailFunction
565 AddToFunc MailFunction I Next [$0] Iconify -1
567 + I None [$0] Exec exec $0 $1
569 DestroyFunc PrintFunction
570 AddToFunc PrintFunction I Raise
571 + I Exec exec xdpr -id $w
573 DestroyFunc Raise-All
574 AddToFunc Raise-All I All (!"FvwmButtons|System|*clock") Raise
576 ##############################################################################
577 # User-defined functions
580 DestroyFunc PaVuControl
581 AddToFunc PaVuControl I GotoDeskAndPage 0 1 1
582 + I Exec exec pavucontrol
586 AddToFunc Id3Info I Exec "$HOME"/lib/audio/mp3/id3info.py "`deadbeef --nowplaying '%F'`" | text-wrap.py -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
587 changequote([`], ['])
590 AddToFunc DeadBeef I GotoDeskAndPage 0 1 1
591 + I Exec exec deadbeef
593 DestroyFunc Term-Phdru
594 AddToFunc Term-Phdru I GotoDeskAndPage 1 0 1
595 + I REMOTE_HOST_KOI8(phdru.name, phdru.name)
597 DestroyFunc Term-Phdru-Big
598 AddToFunc Term-Phdru-Big I GotoDeskAndPage 1 0 1
599 + I REMOTE_HOST_KOI8_BIG(phdru.name, phdru.name)
602 AddToFunc FireFox I Any ("*Mozilla Firefox") Break
603 + I GotoDeskAndPage 1 0 0
604 + I Exec LC_CTYPE=ru_RU.KOI8-R exec start-browser firefox
605 + I Wait "*Mozilla Firefox"
608 AddToFunc Gajim I GotoDeskAndPage 1 1 0
612 AddToFunc Pidgin I GotoDeskAndPage 1 1 0
615 ##############################################################################
619 # This defines the most common window operations
620 AddToMenu Window-Ops "Window Ops" Title
622 + "Move" Move-or-Raise2
623 + "Resize" Resize-or-Raise2
626 + "(De)Iconify" Iconify
628 + "(Un)Maximize" maximize_func
634 + "Refresh Screen" Refresh
636 # A trimmed down version of "Window Ops", good for binding to decorations
637 DestroyMenu Window-Ops2
638 AddToMenu Window-Ops2 "Center" Center
639 + "Move" Move-or-Raise
642 + "Refresh" RefreshWindow
648 + "Resize" Resize-or-Raise
649 + "Shade" WindowShade
650 + "Raise/Lower" RaiseLower
652 + "ScrollBar" Module FvwmScroll 2 2
653 + "Print" PrintFunction
655 AddToMenu Terminals "Terminals" Title
656 + "Grey term (koi8)" TERM_KOI8
657 + "Grey term (utf8)" TERM_UTF8
658 + "Grey term (koi8,btrt)" TERM_KOI8_BOTRT
659 + "Grey term (utf8,btrt)" TERM_UTF8_BOTRT
660 + "Big grey term (koi8)" TERM_KOI8 -geometry TERM_GEOM_BIG
662 + "White/black term (koi8)" TERM_KOI8 -fg white -cr white -bg black
663 + "White/black term (utf8)" TERM_UTF8 -fg white -bg black
665 AddToMenu TermColors "Term Colors" Title
666 + "Term: black/mediumturquoise" TERM_KOI8 -fg black -cr black -bg mediumturquoise
667 + "Term: black/lightseagreen" TERM_KOI8 -fg black -cr black -bg lightseagreen
669 + "Term: black/lightsteelblue" TERM_KOI8 -fg black -cr black -bg lightsteelblue
670 + "Term: black/lightblue3" TERM_KOI8 -fg black -cr black -bg lightblue3
672 + "Term: black/lightgoldenrod" TERM_KOI8 -fg black -cr black -bg lightgoldenrod
673 + "Term: black/rosybrown1" TERM_KOI8 -fg black -cr black -bg rosybrown1
674 + "Term: black/pink1" TERM_KOI8 -fg black -cr black -bg pink1
676 + "Term: white/orchid4" TERM_KOI8 -fg white -cr white -bg orchid4
677 + "Term: white/purple3" TERM_KOI8 -fg white -cr white -bg purple3
678 + "Term: white/purple4" TERM_KOI8 -fg white -cr white -bg purple4
680 + "Term: white/lightslategrey" TERM_KOI8 -fg white -cr white -bg lightslategrey
681 + "Term: white/navyblue" TERM_KOI8 -fg white -cr white -bg navyblue
682 + "Term: white/mediumblue" TERM_KOI8 -fg white -cr white -bg mediumblue
683 + "Term: white/steelblue" TERM_KOI8 -fg white -cr white -bg steelblue
685 + "Term: white/forestgreen" TERM_KOI8 -fg white -cr white -bg forestgreen
686 + "Term: white/rosybrown" TERM_KOI8 -fg white -cr white -bg rosybrown
687 + "Term: white/deeppink" TERM_KOI8 -fg white -cr white -bg deeppink
688 + "Term: white/black" TERM_KOI8 -fg white -cr white -bg black
690 AddToMenu Systems "Systems" Title
691 + REMOTE_HOST_KOI8_MENU(phdru.name, phdru)
692 + REMOTE_HOST_UTF8_MENU(phdru.name, phdru)
693 + REMOTE_HOST_KOI8_BIG_MENU(phdru.name, PHDRU)
695 AddToMenu FvwmCommands "Fvwm Commands" Title
697 + "Raise all" Raise-All
698 #+ "Restart Fvwm2" Restart fvwm2
699 #+ "Start Fvwm" Restart fvwm
700 + "Fvwm Setup" Popup FvwmSetup
701 + "Fvwm Modules" Popup FvwmModules
705 AddToMenu FvwmSetup "Fvwm Setup" Title
706 + "Start standard session" StartStandardSession
707 + "Change Scrolling" Popup FvwmScroll
709 AddToMenu FvwmScroll "Change Scroll Behavior" Title
710 + "OFF" EdgeScroll 0 0
711 + "ON" EdgeScroll 100 100
712 + "Horizontal Only" EdgeScroll 100 0
713 + "Vertical Only" EdgeScroll 0 100
714 + "Partial" EdgeScroll 50 50
716 AddToMenu FvwmModules "Fvwm Modules" Title
717 + "Animate" Module FvwmAnimate
718 + "Auto" Module FvwmAuto
719 + "Backer" Module FvwmBacker
720 + "Banner" Module FvwmBanner
721 + "Buttons" Module FvwmButtons
722 + "Cascade" Module FvwmCascade
723 + "CommandS" Module FvwmCommandS
724 + "Console" Module FvwmConsole
725 + "ConsoleC" Module FvwmConsoleC -e FvwmConsoleC.pl
726 + "Cpp" Module FvwmCpp
727 + "Debug" Module FvwmDebug
728 + "DragWell" Module FvwmDragWell
729 + "Event" Module FvwmEvent
730 + "Form" Module FvwmForm
731 + "Gtk" Module FvwmGtk
732 + "IconBox" Module FvwmIconBox
733 + "IconMan" Module FvwmIconMan
734 + "Ident" Module FvwmIdent
736 + "Pager" Module FvwmPager 0 2
737 + "Rearrange" Module FvwmRearrange
738 + "Save" Module FvwmSave
739 + "SaveDesk" Module FvwmSaveDesk
740 + "Script" Module FvwmScript
741 + "Scroll" Module FvwmScroll
742 + "TaskBar" Module FvwmTaskBar
743 + "Theme" Module FvwmTheme
744 + "Tile" Module FvwmTile
745 + "Wharf" Module FvwmWharf
746 + "WinList" Module FvwmWinList
748 # This is the root menu
749 AddToMenu RootMenu "Root Menu" Title
750 + "Terminals" Popup Terminals
751 #+ "Color term" Popup TermColors
752 + "Systems" Popup Systems
754 + "Browsers" Popup Browsers
755 + "Utilities" Popup Utilities
757 #+ "Lock Screen" Popup XlockMenu
758 + "XScreenSaver" Popup XScreenSaverMenu
759 #+ "Tv-tuner" Popup Tv-tuner
761 + "XSetBg" Popup XSetBgMenu
762 + "Fvwm Commands" Popup FvwmCommands
764 # This menu will fire up some often used programs
765 DestroyMenu Utilities
766 AddToMenu Utilities "Choose one:" Title
767 + "FBReader" Exec exec fbreader
768 + "GVim (koi8)" Exec LC_CTYPE=ru_RU.KOI8-R exec gvim
769 + "GVim (utf8)" Exec LC_CTYPE=ru_RU.UTF-8 exec gvim
770 + "MyRuLb (koi8)" Exec LC_CTYPE=ru_RU.KOI8-R exec "$HOME"/admin/prog/myrulib/myrulib
771 + "MyRuLb (utf8)" Exec LC_CTYPE=ru_RU.UTF-8 exec "$HOME"/admin/prog/myrulib/myrulib
772 #+ "XFortune" Exec /usr/games/fortune | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
773 #+ "xbuffy" Exec exec xbuffy -fn 'XBUFFY_FONT' -geometry +0+125 -boxfile mail/misc/.xbuffyrc
775 + "pavucontrol" PaVuControl
776 + "DeadBeef" DeadBeef
781 + "xload" Exec exec xload -geometry =136x136+0+0
782 + "Top" TERM_KOI8 -T Top -n Top -e top
784 + "Refresh Screen" Refresh
785 + "xrefresh" Exec exec xrefresh
787 + "xcalc" Exec exec xcalc
788 + "xclipboard" Exec exec xclipboard
789 + "xcutsel" Exec exec xcutsel
790 #+ "xman" Exec exec xman -notopbox -geometry +150+102
791 #+ "emacs" Exec emacs -geometry 81x35+150+34
792 #+ "xv" Function warp-or-run xv "Exec exec xv -ncols 240 -geometry +0+0"
795 AddToMenu Browsers "Choose one:" Title
797 + "Chromium" None ("*Chromium") Exec LC_CTYPE=ru_RU.KOI8-R exec start-browser chromium
798 + "Opera" None ("*Opera") Exec LC_CTYPE=ru_RU.KOI8-R exec start-browser opera
800 # A wide variety of screenlocking options...
801 #AddToMenu XlockMenu "Choose one:" Title
802 #+ "Hop" Exec exec xlock -mode hop
803 #+ "Image" Exec exec xlock -mode image
804 #+ "Life" Exec exec xlock -mode life
805 #+ "Flame" Exec exec xlock -mode flame
806 #+ "Pyro" Exec exec xlock -mode pyro
807 #+ "Qix" Exec exec xlock -mode qix
808 #+ "Rotor" Exec exec xlock -mode rotor
809 #+ "Swarm" Exec exec xlock -mode swarm
811 #+ "Random" Exec exec xlock -mode random
812 #+ "Blank" Exec exec xlock -mode blank
814 AddToMenu XScreenSaverMenu "Choose mode:" Title
815 + "Blank Screen Now" Exec exec xscreensaver-command -activate
816 + "Lock Screen Now" Exec exec xscreensaver-command -lock
817 + "Screen Saver Demo" Exec exec xscreensaver-command -demo
818 + "Screen Saver Preferences" Exec exec xscreensaver-command -prefs
819 + "Reinitialize Screen Saver" Exec exec xscreensaver-command -restart
821 + "Launch Screen Saver" Exec exec xscreensaver
822 + "Kill Screen Saver" Exec exec xscreensaver-command -exit
824 AddToMenu XSetBgMenu "XSetBg" Title
825 + "Change wallpaper" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-force
826 + "Start" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-start
827 + "Stop" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-stop
828 + "Restart" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-restart
831 + "Xli" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" "$fn"
832 + "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"
833 + "Open in browser" Exec exec webbrowserX -n "`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r`"
834 + "Filename" Exec exec "$HOME"/current/projects/xsetbg/print-filename.py -e koi8-r
835 + "XFilename" Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
836 + "XFilename (wrapped)" Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
838 + "Xli (prev.)" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r -o`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" "$fn"
839 + "Xli (prev., scaled)" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r -o`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" -zoom auto "$fn"
840 + "Open in browser (prev.)" Exec exec webbrowserX -n "`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r -o`"
841 changequote([`], ['])
842 + "Filename (prev.)" Exec exec "$HOME"/current/projects/xsetbg/print-filename.py -e koi8-r -o
843 + "XFilename (prev.)" Exec "$HOME"/current/projects/xsetbg/print-filename.py -o | text-wrap.py -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
844 + "XFilename (prev., wrapped)" Exec "$HOME"/current/projects/xsetbg/print-filename.py -o | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
846 ############################################################################
849 #*FvwmBacker: Command (Desk 0, Page * *) -solid DarkCyan
850 #*FvwmBacker: Command (Desk 1, Page * *) -solid steelblue
851 #*FvwmBacker: Command (Desk 2, Page * *) -solid midnightblue
852 *FvwmBacker: Command (Desk *, Page * *) Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-change
854 ############################################################################
858 *FvwmButtons: Fore Black
859 *FvwmButtons: Back rgb:90/80/90
862 *FvwmButtons: Font BUTTONS_FONT
864 # Geometry-- really likes to pick its own size, but giving a position is OK
865 *FvwmButtons: Geometry -1+1
867 # Layout: specify rows or columns, not both
868 *FvwmButtons: Rows 2 #, Columns 5
870 # Transparent background
871 #*FvwmButtons: Pixmap none
873 #*FvwmButtons: Pixmap fvwm.xpm
875 # Define the buttons to use.....
876 #*FvwmButtons: Move arrows2.xpm Move
877 #*FvwmButtons: Kill skull.xpm Destroy
878 #*FvwmButtons: Quit nuke.xpm Popup "Quit-Verify"
880 #*FvwmButtons: (Swallow XClock 'Exec exec xclock -update 1 -geometry -3000-3000')
883 pushdef(`TERM_KOI8', `Exec "TERM" LC_CTYPE=ru_RU.KOI8-R exec TERM')
884 pushdef(`TERM_UTF8', `Exec "URxvt" exec "$HOME"/lib/X11/utf8rxvt')
885 *FvwmButtons: (Title Term, Icon rterm2.xpm, Action TERM_KOI8)
886 *FvwmButtons: (Title UTF-8, Icon rterm2.xpm, Action TERM_UTF8)
887 *FvwmButtons: (Title phdru, Icon xterm-sgi.xpm, Action REMOTE_HOST_KOI8(phdru.name, phdru.name))
888 popdef(`TERM_KOI8', `TERM_UTF8')
890 *FvwmButtons: (Title Wallpaper, Icon find1.xpm, Action Exec "gxmessage" "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -)
891 *FvwmButtons: (Title "-1", Icon find1.xpm, Action Exec "gxmessage" "$HOME"/current/projects/xsetbg/print-filename.py -o | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -)
892 *FvwmButtons: (Title Next, Icon Jrecycle.xpm, Action Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-force)
893 *FvwmButtons: (Title pavucontrol, Icon mini.sound.xpm, Action Exec "Volume Control" exec pavucontrol)
894 #*FvwmButtons: (Title Id3Info, Icon bell.xpm, Action Id3Info)
895 *FvwmButtons: (Title DeadBeef, Icon bell.xpm, Action Exec "DeaDBeeF-*" exec deadbeef)
896 #*FvwmButtons: (Title XLock, Icon Jxlock.xpm, Action Exec exec xscreensaver-command -lock)
898 ############################################################################
901 # FvwmForm alias - rlogin to host via term
903 #*Rlogin: WarpPointer
904 #*Rlogin: Font *helvetica*m*r*n*14*
905 #*Rlogin: ButtonFont *helvetica*m*o*n*14*
906 #*Rlogin: InputFont *cour*m*r*n*14*
908 #*Rlogin: Back Light Gray
909 #*Rlogin: ItemFore Wheat
910 #*Rlogin: ItemBack Gray50
912 #*Rlogin: Line center
913 #*Rlogin: Text "Login to Remote Host"
914 #*Rlogin: Line center
915 #*Rlogin: Text "Host:"
916 #*Rlogin: Input HostName 20 ""
917 #*Rlogin: Line center
918 #*Rlogin: Selection UserSel single
919 #*Rlogin: Choice Default Default on "same user"
920 #*Rlogin: Choice Custom Custom off "user:"
921 #*Rlogin: Input UserName 10 ""
922 #*Rlogin: Line expand
923 #*Rlogin: Button quit "Login" ^M
924 #*Rlogin: Command TERM_KOI8 -T term@$(HostName) -e rlogin $(HostName) $(Custom?-l $(UserName))
925 #*Rlogin: Button restart "Clear"
926 #*Rlogin: Command Beep
927 #*Rlogin: Button quit "Cancel"
928 #*Rlogin: Command Nop
930 ## FvwmForm alias - query exit ala mwm
932 #*QuitVerify: GrabServer
933 #*QuitVerify: WarpPointer
934 #*QuitVerify: Font *helvetica*m*r*n*14*
935 ##*QuitVerify: ButtonFont *helvetica*m*o*n*14*
936 #*QuitVerify: ButtonFont 7x13bold
937 #*QuitVerify: Fore Black
938 #*QuitVerify: Back Light Gray
939 #*QuitVerify: ItemFore Wheat
940 #*QuitVerify: ItemBack Gray50
942 #*QuitVerify: Line center
943 #*QuitVerify: Text "Do you really want to exit FVWM?"
944 #*QuitVerify: Line expand
945 #*QuitVerify: Button quit " Exit "
946 #*QuitVerify: Command Quit
947 #*QuitVerify: Button quit "Cancel"
948 #*QuitVerify: Command Nop
951 ## MyTalk & MyFvwmTalk from Dave Goldberg
952 ## MyTalk Form - dissappears after use
954 #*MyTalk: WarpPointer
955 #*MyTalk: Font *helvetica*m*r*n*14*
956 #*MyTalk: ButtonFont *helvetica*m*o*n*14*
957 #*MyTalk: InputFont *cour*m*r*n*14*
960 #*MyTalk: ItemFore Blue
961 #*MyTalk: ItemBack Gray
962 #*MyTalk: Line center
963 #*MyTalk: Text "Fvwm Function"
964 #*MyTalk: Input Func 40 ""
965 #*MyTalk: Line expand
966 #*MyTalk: Button quit "Run" ^M
967 #*MyTalk: Command $(Func)
968 #*MyTalk: Button restart "Clear" ^R
969 #*MyTalk: Button quit "Cancel" ^C
970 #*MyTalk: Command Nop
972 ## MyFvwmTalk Form - sticks around
974 #*MyFvwmTalk: WarpPointer
975 #*MyFvwmTalk: Font *helvetica*m*r*n*14*
976 #*MyFvwmTalk: ButtonFont *helvetica*m*o*n*14*
977 #*MyFvwmTalk: InputFont *cour*m*r*n*14*
978 #*MyFvwmTalk: Fore Red
979 #*MyFvwmTalk: Back Gray
980 #*MyFvwmTalk: ItemFore Blue
981 #*MyFvwmTalk: ItemBack Gray
982 #*MyFvwmTalk: Line center
983 #*MyFvwmTalk: Text "Fvwm Function"
984 #*MyFvwmTalk: Input Func 40 ""
985 #*MyFvwmTalk: Line expand
986 #*MyFvwmTalk: Button restart "Run" ^M
987 #*MyFvwmTalk: Command $(Func)
988 #*MyFvwmTalk: Button restart "Clear" ^R
989 #*MyFvwmTalk: Command Nop
990 #*MyFvwmTalk: Button restart "Iconify" ^Z
991 #*MyFvwmTalk: Command Next [MyFvwmTalk] Iconify
992 #*MyFvwmTalk: Button quit "Quit" ^C
993 #*MyFvwmTalk: Command Nop
995 ############################################################################
998 # NOTE: Icons will only be shown in module if "Style * !Icon" is set
999 *FvwmIconBox: IconBack #cfcfcf
1000 *FvwmIconBox: IconHiFore black
1001 *FvwmIconBox: IconHiBack LightSkyBlue
1002 *FvwmIconBox: Back #5f9ea0
1003 #*FvwmIconBox: Fore blue
1004 *FvwmIconBox: Geometry 5x1+0+0
1005 *FvwmIconBox: MaxIconSize 64x38
1006 *FvwmIconBox: Font ICON_BOX_FONT
1007 *FvwmIconBox: SortIcons IconName
1008 *FvwmIconBox: Padding 4
1009 *FvwmIconBox: Lines 10
1010 *FvwmIconBox: SBWidth 11
1011 *FvwmIconBox: Placement Left Top
1012 *FvwmIconBox: Pixmap fvwm.xpm
1013 #*FvwmIconBox: HideSC Horizontal
1014 *FvwmIconBox: SetWMIconSize
1015 *FvwmIconBox: HilightFocusWin
1016 #*FvwmIconBox: Resolution Desk
1017 *FvwmIconBox: Mouse 1 Click RaiseLower
1018 *FvwmIconBox: Mouse 1 DoubleClick Iconify
1019 *FvwmIconBox: Mouse 2 Click Iconify -1, Focus
1020 *FvwmIconBox: Mouse 3 Click Module FvwmIdent
1021 *FvwmIconBox: Key r RaiseLower
1022 *FvwmIconBox: Key space Iconify
1023 *FvwmIconBox: Key d Close
1024 *FvwmIconBox: Key n Next
1025 *FvwmIconBox: Key p Prev
1026 *FvwmIconBox: Key h Left
1027 *FvwmIconBox: Key j Down
1028 *FvwmIconBox: Key k Up
1029 *FvwmIconBox: Key l Right
1031 ############################################################################
1034 # Give us colors and a fonts
1035 *FvwmIdent: Back MidnightBlue
1036 *FvwmIdent: Fore Yellow
1037 *FvwmIdent: Font IDENT_FONT
1039 ############################################################################
1042 *FvwmPager: Back #908090
1043 *FvwmPager: Fore #484048
1044 *FvwmPager: Font TITLE_FONT
1045 *FvwmPager: Hilight #cab3ca
1046 *FvwmPager: Geometry PAGER_GEOM
1047 *FvwmPager: Label 0 System
1048 *FvwmPager: Label 1 Net
1049 *FvwmPager: Label 2 Work
1050 *FvwmPager: SmallFont SMALL_PAGER_FONT
1052 *FvwmPager: Balloons All
1053 *FvwmPager: BalloonBack #efe3b5
1054 *FvwmPager: BalloonFore Black
1055 *FvwmPager: BalloonFont ICON_FONT
1056 *FvwmPager: BalloonYOffset +2
1057 *FvwmPager: BalloonBorderWidth 1
1058 *FvwmPager: BalloonBorderColor Black
1060 ############################################################################
1063 *FvwmScroll: Back grey40
1064 *FvwmScroll: Fore green
1066 ############################################################################
1069 *FvwmWinList: Back #908090
1070 *FvwmWinList: Fore Black
1071 *FvwmWinList: Font WIN_LIST_FONT
1072 *FvwmWinList: Action Click1 Iconify -1, Focus
1073 *FvwmWinList: Action Click2 Iconify
1074 *FvwmWinList: Action Click3 Module "FvwmIdent: " FvwmIdent
1075 *FvwmWinList: UseSkipList
1076 *FvwmWinList: Geometry +10-10