]> git.phdru.name Git - dotfiles.git/blob - .fvwm/main.m4
.fvwm: (Re)start `pulseaudio`
[dotfiles.git] / .fvwm / main.m4
1 ##########################################################################
2 # FVWM - F? Virtual Window Manager, Version 2.x (fvwm2) Configuration File
3 #
4
5 dnl The file is in m4 format, use FvwmM4 module to read it
6 dnl like this: ModuleSynchronous FvwmM4 -lock main.m4
7
8 dnl This is to prevent FvwmM4 to shadow $HOME
9 undefine(`HOME')
10
11 dnl Echo dimension
12 `#' width = WIDTH
13
14 divert(-1)
15 dnl koi8-r Fonts
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')
19
20 dnl cp1251 Fonts
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')
24
25 dnl define(`XBUFFY_FONT', `-cronyx-helvetica-bold-r-*-*-*-100-*-*-*-*-koi8-r')
26
27
28 dnl TrueType Fonts
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')
36
37 dnl Bold TT fonts
38 define(`SMALL_BOLD_FONT', SMALL_FONT`:Bold')
39 define(`MEDIUM_BOLD_FONT', MEDIUM_FONT`:Bold')
40 define(`BIG_BOLD_FONT', BIG_FONT`:Bold')
41
42 define(`TITLE_FONT', MEDIUM_FONT)
43 define(`ICON_FONT', LARGE_FONT)
44
45 dnl Font and geometry aliases that depend on whether the screen resolution is
46 dnl 800x600, 1024x768 or 1920x1200
47
48 define(`PAGER_GEOM',
49 ifelse(eval(WIDTH < 1024), 1, `365x100+0+0',
50        eval(WIDTH < 1920), 1, `365x100+0+0', `600x160+0+0'))
51
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)
55
56
57 define(`MENU_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)
63
64
65 dnl XSetBg message width and font
66 define(`TEXT_WIDTH',
67 ifelse(eval(WIDTH < 1024), 1, 70,
68        eval(WIDTH < 1920), 1, 75, 80))
69
70 define(`MESSAGE_FONT', `Nimbus Sans L 18')
71
72
73 dnl Terminal emulator
74 define(`TERM_GEOM',
75 ifelse(eval(WIDTH < 1024), 1, `80x25',
76        eval(WIDTH < 1920), 1, `80x30', `80x32'))
77
78 define(`TERM_GEOM_BOTLT', TERM_GEOM`+0-0')
79 define(`TERM_GEOM_BOTRT', TERM_GEOM`-0-0')
80
81 define(`TERM_GEOM_BIG',
82 ifelse(eval(WIDTH < 1024), 1, `96x30',
83        eval(WIDTH < 1920), 1, `112x32+2-0', `119x32+1-0'))
84
85
86 define(`TERM', `urxvt')
87 define(`TERM_KOI8', `Exec LC_CTYPE=ru_RU.KOI8-R exec TERM')
88 define(`TERM_RU_UTF8', `Exec LC_CTYPE=ru_RU.UTF-8 exec TERM -name URxvt')
89 define(`TERM_EN_UTF8', `Exec LC_CTYPE=en_US.UTF-8 exec TERM -name URxvt')
90 define(`TERM_HEB_UTF8', `Exec LC_CTYPE=he_IL.UTF-8 exec TERM -name URxvt')
91 define(`TERM_KOI8_BOTLT', `TERM_KOI8 -geometry TERM_GEOM_BOTLT')
92 define(`TERM_RU_UTF8_BOTLT', `TERM_RU_UTF8 -geometry TERM_GEOM_BOTLT')
93 define(`TERM_KOI8_BOTRT', `TERM_KOI8 -geometry TERM_GEOM_BOTRT')
94 define(`TERM_RU_UTF8_BOTRT', `TERM_RU_UTF8 -geometry TERM_GEOM_BOTRT')
95
96
97 define(`SSH', `cgmem_nice 300 ssh -4')
98
99 define(`REMOTE_HOST_TERM', `$1 -e SSH $2')
100
101 define(`REMOTE_HOST_TERM_TITLE', `$1 -title $3 -n $3 -e SSH $2')
102
103 define(`REMOTE_HOST_KOI8',
104 REMOTE_HOST_TERM_TITLE(TERM_KOI8, $1, $2))
105
106 define(`REMOTE_SCREEN_KOI8', `-t $1 exec /usr/bin/screen -xRR -S default-koi8')
107 define(`REMOTE_SCREEN_UTF8', `-t $1 exec /usr/bin/screen -xRR -S default-utf8')
108
109 define(`REMOTE_HOST_KOI8_MENU',
110 "$2 (koi8)" REMOTE_HOST_KOI8($1, $2))
111
112 define(`REMOTE_HOST_KOI8_BOTLT',
113 REMOTE_HOST_TERM_TITLE(TERM_KOI8_BOTLT, $1, $2))
114
115 define(`REMOTE_HOST_KOI8_BOTRT',
116 REMOTE_HOST_TERM_TITLE(TERM_KOI8_BOTRT, $1, $2))
117
118 define(`REMOTE_HOST_KOI8_BOTLT_MENU',
119 "$2 (koi8,btlt)" REMOTE_HOST_KOI8_BOTLT($1, $2))
120
121 define(`REMOTE_HOST_KOI8_BOTRT_MENU',
122 "$2 (koi8,btrt)" REMOTE_HOST_KOI8_BOTRT($1, $2))
123
124 define(`REMOTE_HOST_UTF8',
125 REMOTE_HOST_TERM_TITLE(TERM_RU_UTF8, $1, $2))
126
127 define(`REMOTE_HOST_UTF8_MENU',
128 "$2 (utf8)" REMOTE_HOST_UTF8($1, $2))
129
130 define(`REMOTE_HOST_UTF8_BOTLT',
131 REMOTE_HOST_TERM_TITLE(TERM_RU_UTF8_BOTLT, $1, $2))
132
133 define(`REMOTE_HOST_UTF8_BOTRT',
134 REMOTE_HOST_TERM_TITLE(TERM_RU_UTF8_BOTRT, $1, $2))
135
136 define(`REMOTE_HOST_UTF8_BOTLT_MENU',
137 "$2 (utf8,btlt)" REMOTE_HOST_UTF8_BOTLT($1, $2))
138
139 define(`REMOTE_HOST_UTF8_BOTRT_MENU',
140 "$2 (utf8,btrt)" REMOTE_HOST_UTF8_BOTRT($1, $2))
141
142 define(`REMOTE_HOST_KOI8_BIG',
143 TERM_KOI8 -geometry TERM_GEOM_BIG -title "$2" -n "$2" -e SSH "$1")
144
145 define(`REMOTE_HOST_KOI8_BIG_MENU',
146 "$2 (koi8)" REMOTE_HOST_KOI8_BIG($1, $2))
147
148 divert
149
150 ##########################################################################
151 # PATH Setup
152 #
153 # Colon seperated unix directory paths for Modules, xpm files, and bitmaps
154 #ModulePath /usr/lib/fvwm
155 ImagePath /usr/share/pixmaps/fvwm:/usr/share/pixmaps:/usr/include/X11/bitmaps #:/usr/local/firefox/browser/chrome/icons/default:/usr/local/firefox/browser/icons
156
157 ############################################################################
158 # COLORS and FONTS
159 #
160 # Set the fore and back border colors for the window that has focus
161 Style * HilightFore Black, HilightBack #c06077
162
163 # Set fore/back border colors for all other windows
164 Style * Color Black/#60a0c0
165
166 # Set colors/font for pop-up menus
167 # Syntax: MenuStyle forecolor backcolor shadecolor font style(fvwm/mwm)
168 MenuStyle * FVWM, Foreground Black, Background grey, Greyed SlateGrey, Font MENU_FONT
169
170 # Set fonts to use on title bar and icon label
171 Style * Font              TITLE_FONT
172
173 ############################################################################
174 # ICON Setup
175 #
176 # If you don't want icons for some or all windows (or all of them!)
177 # Style * !Icon
178
179 # If you want ALL icons to follow you around the desktop (Sticky)
180 #Style * StickyIcon
181
182 # Auto Place Icons is a nice feature (Left Top Right Bottom)
183 #Style * IconBox 10 -75 -10 -0
184
185 Style * IconFont          ICON_FONT
186
187 ############################################################################
188 # FOCUS Setup
189 #
190 # Does the window with focus control the colormap, or the one under the mouse
191 ColormapFocus FollowsMouse
192
193 # Uncomment this to force you to click in a window to give it focus
194 #Style * ClickToFocus
195
196 # default: focus follows mouse
197 #Style * MouseFocus
198 #Style * FocusFollowsMouse
199
200 # If you knock your mouse out of the term, it keeps focus while in root window
201 Style *           SloppyFocus
202
203 ############################################################################
204 # MISC Setup
205 #
206 # click/release must occur in <n milliseconds to be a "click"
207 ClickTime 250
208
209 # if the window occupies less than n% of the screen, draw it opaque
210 OpaqueMoveSize 100
211
212 # Do not flip pages on the edge of the screen, but allow to move windows
213 EdgeScroll 0 0
214 EdgeResistance 10000
215 Style * EdgeMoveDelay 500
216 Style * EdgeMoveResistance 100
217
218 # MWM Emulation: Don't ignore hints for functions and transient decoration
219 #Style * MWMFunctions, MWMDecor, MWMButtons, MWMMenus
220 Style * MWMFunctions, MWMDecor, MWMButtons
221
222 # Changes the look of the "rubberband" you see when moving windows (0 - 255)
223 XORvalue 80
224
225 ###########################################################################
226 # PAGER Setup
227 #
228 # set the desk top size in units of physical screen size (width x height)
229 DesktopSize 2 2
230
231 ############################################################################
232 # WINDOW Placement
233 #
234 Style * PositionPlacement Center
235
236 ############################################################################
237 # STYLE Flag Setup
238 #
239 # (decorations and window options)
240 # Note: Order is important!! If compatible styles are set, styles are ORed
241 # together. If conflicting styles are set, the last one specified is used.
242
243 # change the default width, set a global icon, and give borders to popups
244 Style * BorderWidth 5, HandleWidth 5, Icon unknown1.xpm
245 Style * DecorateTransient, ClickToFocusRaisesOff
246
247 Style "Fvwm*"           !Title, Sticky, WindowListSkip
248 Style "FvwmButtons"     !Handles, BorderWidth 0, Layer 2
249 Style "FvwmPager"       Layer 2
250
251 # Terminals
252 Style "*term"           Icon term.xpm
253 Style "*rxvt"           Icon term.xpm
254 Style "term-im-local"   Icon pidgin-menu.xpm
255 Style "term-im-remote"  Icon rcalc2.xpm
256 Style "term-im-*"       IconBox 630 -75 -2 -2, IconGrid 200 80
257 Style "term-im-*"       StartsOnPage 1 1 0, StartIconic
258
259 # Browsers' windows
260 Style "Certificate Manager" PositionPlacement Center
261 Style "*Downloads"      PositionPlacement 50-50w +5
262 Style "*Mozilla*"       PositionPlacement +0 -0
263
264 Style "*Chromium*"      PositionPlacement +0 -0
265
266 # IM
267 Style "Gajim"           PositionPlacement +0 -0
268 Style "* - Gajim"       MinOverlapPercentPlacement
269 # Pidgin
270 Style "Buddy List"      PositionPlacement +0 -0
271 Style "*Pidgin*"        MinOverlapPercentPlacement
272
273 # (S)MPlayer
274 Style "*MPlayer*"       Layer 6, PositionPlacement 250p 100p
275 Style "*mpv"            Layer 6, PositionPlacement 250p 100p
276
277 Style "*clock"          !Title, Sticky, WindowListSkip, Color Black/#40c040, NeverFocus, PositionPlacement 50-50w +1p, Layer 2
278 Style "gxmessage"       PositionPlacement 50-50w +20
279 Style "*lock"           !Title, Sticky, WindowListSkip
280 Style "Mosaic"          NoPPosition
281 Style "xbiff"           Icon mail1.xpm, !Title, Sticky, WindowListSkip
282 Style "xcalc"           Icon xcalc.xpm
283 Style "xconsole"        !Title, Sticky, WindowListSkip, NeverFocus
284 Style "xload"           !Title, Sticky, WindowListSkip, NeverFocus
285 Style "xman"            Icon xman.xpm
286 Style "xmh"             Icon mail2.xpm
287 Style "xsession"        !Title, Sticky, WindowListSkip, ClickToFocus
288 Style "XXkb"            !Title, !Borders, Sticky, WindowListSkip, Layer 5
289
290 ############################################################################
291 # BUTTON Setup
292 #
293
294 ## Buttons actually being used (duplicated below)
295 # small up triangle
296 #ButtonStyle 2 4 50x35@1 65x65@0 35x65@0 50x35@1
297 # small down triangle
298 #ButtonStyle 4 4 50x65@1 35x35@1 65x35@1 50x65@0
299 # Stylized X
300 #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
302 ## Triangles
303 #
304 # Small up Triangle
305 # ButtonStyle * 4 50x35@1 65x65@0 35x65@0 50x35@1
306 # Small down Triangle
307 #ButtonStyle * 4 50x65@1 35x35@1 65x35@1 50x65@0
308 # Large up Triangle
309 #ButtonStyle 6 4 50x25@1 75x75@0 25x75@0 50x25@1
310 # Large down Triangle
311 #ButtonStyle 8 4 50x75@1 25x25@1 75x25@1 50x75@0
312
313 ## Boxes
314 #
315 # Big Box
316 ButtonStyle 4 5 25x25@1 25x75@1 75x75@0 75x25@0 25x25@1
317 # Little Box
318 ButtonStyle 5 5 40x40@1 60x40@1 60x60@0 40x60@0 40x40@1
319 # Tall Box
320 #ButtonStyle 7 5 40x25@1 60x25@1 60x75@0 40x75@0 40x25@1
321 # Dot
322 #ButtonStyle 5 5 45x45@1 55x45@1 55x55@0 45x55@0 45x45@1
323 # Big Box with arrow (left-up to right-down) to little box (iconify)
324 #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
325 # Big Box with arrow (right-up to left-down) to little box (iconify)
326 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
328 ## X's
329 #
330 # Standard X
331 #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
332 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
333 # Funky X
334 #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
335 # Stylized X
336 #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
337
338 ## Lightning Bolts
339 #
340 # Small Lightning Bolt (skinny at both ends)
341 #ButtonStyle 5 7 70x15@0 30x55@1 50x55@0 40x85@1 80x45@0 60x45@1 70x15@0
342 # Big Lighting Bolt (Fat at top, comes to a point)
343 #ButtonStyle 6 8 35x15@1 20x50@1 40x50@0 30x80@1 75x40@0 50x40@1 75x15@0 35x15@1
344
345 ## Miscellaneous Buttons
346 #
347 # Nested Right Angles (looks kinda crappy)
348 #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
349 # Nested Right Angles (looks nice)
350 #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
351 # 4 Horizontal bars (sticky)
352 #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
353 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
354 # Expanding Windows (iconify -- looks NICE)
355 #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
357 ## Arrows Galore
358 #
359 # Up Arrow
360 #ButtonStyle 3 8 40x80@1 40x50@1 20x50@1 50x20@1 80x50@0 60x50@0 60x80@0 40x80@0
361 # Down Arrow
362 #ButtonStyle 3 8 40x20@1 40x50@1 20x50@1 50x80@1 80x50@0 60x50@0 60x20@0 40x20@1
363 # Left arrow  ( <- )
364 #ButtonStyle 7 8 80x40@1 50x40@1 50x20@1 20x50@1 50x80@0 50x60@0 80x60@0 80x40@0
365 # Right arrow ( -> )
366 #ButtonStyle 8 8 20x40@1 50x40@1 50x20@1 80x50@1 50x80@0 50x60@0 20x60@0 20x40@1
367 # Horizontal Line with arrowheads on left and right ( <-> )
368 #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
369 # Vertical Line with arrowheads on top and bottom
370 #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
371 # Diagonal Line with arrowheads on top and bottom ( / )
372 #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
373 # Diagonal Line with arrowheads on top and bottom ( \ )
374 #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
375 #
376 # the number "2"
377 #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
378
379 ############################################################################
380 # MOUSE Setup
381 #
382 # First, the root window. Button 1 brings up the Main Menu. B2 is the
383 # window operations list, and B3 is the winlist module
384 #     Button    Context Modifi  Function
385 Mouse 1         R       A       Menu RootMenu Nop
386 Mouse 2         R       A       Menu Window-Ops Nop
387 Mouse 3         R       A       WindowList
388
389 # Now, title bar buttons
390 # Left button is the Window-Ops2 menu
391 #     Button    Context Modifi  Function
392 Mouse 0         1       A       Menu Window-Ops2 Close
393 Mouse 0         3       A       Stick
394 Mouse 0         5       A       Center
395 # Right buttonsare iconify/maximize, rightmost is close
396 Mouse 0         2       A       Close
397 Mouse 0         4       A       Maximize toggle
398 Mouse 0         6       A       Iconify
399
400 # Button 1 in Frame or Sides is a resize-or-raise, in Icons is a move or
401 # de-iconify, and on Top does a move-or-raise
402 #     Button    Context Modifi  Function
403 Mouse 1         F       A       Resize-or-Raise
404 Mouse 1         S       A       Move-or-Raise
405 Mouse 1         I       A       Move-or-Iconify
406 #Mouse 1                T       A       Move-or-Raise
407 Mouse 1         T       A       Shadify
408
409 # Button 2 in an Icon is de-iconify, in Corners/Sides/Titlebar gets Ops Menu
410 #     Button    Context Modifi  Function
411 Mouse 2         I       A       Iconify
412 Mouse 2         FST     A       Menu Window-Ops2 Nop
413
414 # Button 3 does a raise-lower on anything
415 Mouse 3         TSIF    A       RaiseLower
416
417 ############################################################################
418 # KEYBOARD Setup
419
420 #
421 # press arrow + control + meta anywhere, and scroll by 1 page
422 Key Left        A       CM      Scroll -100 +0
423 Key Right       A       CM      Scroll +100 +0
424 Key Up          A       CM      Scroll +0   -100
425 Key Down        A       CM      Scroll +0   +100
426
427 # press arrow + meta key, and scroll by 1/10 of a page
428 Key Left        A       M       Scroll -10   +0
429 Key Right       A       M       Scroll +10   +0
430 Key Up          A       M       Scroll  +0  -10
431 Key Down        A       M       Scroll  +0  +10
432
433 # press shift arrow + control anywhere, and move the pointer by 1% of a page
434 Key Left        A       SC      CursorMove -1  +0
435 Key Right       A       SC      CursorMove +1  +0
436 Key Up          A       SC      CursorMove +0  -1
437 Key Down        A       SC      CursorMove +0  +1
438
439 # press shift arrow + meta key, and move the pointer by 1/10 of a page
440 Key Left        A       SM      CursorMove -10  +0
441 Key Right       A       SM      CursorMove +10  +0
442 Key Up          A       SM      CursorMove +0  -10
443 Key Down        A       SM      CursorMove +0  +10
444
445 # Switch window, mswindows style :)
446 Key Tab         A       M       Next [*] focus
447 Key Escape      A       M       Prev [*] focus
448
449 # Goto desktop/page
450 Key 1           A       CM      Desk 0 0
451 Key 2           A       CM      Desk 0 1
452 Key 3           A       CM      Desk 0 2
453 Key 4           A       CM      Desk 0 3
454 Key 5           A       CM      GotoPage 0 0
455 Key 6           A       CM      GotoPage 1 0
456 Key 7           A       CM      GotoPage 0 1
457 Key 8           A       CM      GotoPage 1 1
458
459 #############################################################################
460 # START-UP Functions
461 #
462 DestroyFunc InitFunction
463 AddToFunc InitFunction
464 +              I Module FvwmBacker
465 +              I Module FvwmButtons
466 +              I Module FvwmCommandS
467 +              I Module FvwmPager 0 2
468
469 DestroyFunc RestartFunction
470 AddToFunc RestartFunction
471 +              I Module FvwmBacker
472 +              I Module FvwmButtons
473 +              I Module FvwmCommandS
474 +              I Module FvwmPager 0 2
475 +              I Schedule 1000 Raise-All
476
477 DestroyFunc UrgencyFunc
478 AddToFunc UrgencyFunc
479 +                             I Iconify off
480 +                             I ThisWindow ("*Downloads|Skype") Break
481 +                             I FlipFocus
482 +                             I Raise
483 +                             I WarpToWindow 5p 5p
484
485 DestroyFunc StartStandardSession
486 AddToFunc StartStandardSession
487 +              I GotoDeskAndPage 0 0 0
488 +              I TERM_KOI8
489 +              I Wait TERM
490 #+              I GotoDeskAndPage 0 0 1
491 #+              I TERM_RU_UTF8 -geometry 38x30+0-0
492 #+              I Wait URxvt
493 +              I Exec exec cgmem_nice 200 pulseaudio --start
494 +              I PaVuControl
495 +              I Exec exec "$HOME"/current/projects/audio-cdr-video/audio/pa-mic-off
496 +              I XsetbgFilename
497 +              I Wait gxmessage
498 +              I GotoDeskAndPage 2 0 1
499 +              I TERM_KOI8 -geometry TERM_GEOM_BIG
500 +              I Wait TERM
501 +              I FireFox
502 +              I GotoDeskAndPage 0 1 1
503
504 DestroyFunc ResumeFunction
505 AddToFunc ResumeFunction
506 +              I GotoDeskAndPage 0 0 0
507 +              I TERM_KOI8
508 +              I Wait TERM
509 +              I Exec exec cgmem_nice 200 pulseaudio --start
510 +              I None ("Volume Control") PaVuControl
511 +              I Exec sleep 10; exec "$HOME"/current/projects/audio-cdr-video/audio/pa-mic-off
512 +              I XsetbgFilename
513 +              I Wait gxmessage
514 +              I Any ("*Mozilla Firefox") GotoDeskAndPage 0 1 1
515 +              I TestRc (Match) Break
516 +              I None ("*Mozilla Firefox") FireFox
517
518 ############################################################################
519 # COMPLEX FUNCTIONS
520 #
521 DestroyFunc Center
522 AddToFunc Center                I Move 50-50w 50-50w
523 +                               I WarpToWindow 74p 18p
524
525 DestroyFunc Iconify-and-Raise
526 AddToFunc Iconify-and-Raise     I Iconify
527 +                               I Raise
528
529 DestroyFunc Maximize-Func
530 AddToFunc Maximize-Func         C Maximize     toggle
531 +                               D Maximize     100 100
532
533 DestroyFunc Move-or-Iconify
534 AddToFunc Move-or-Iconify       I Raise
535 +                               M Move
536 +                               D Iconify
537
538 DestroyFunc Move-or-Raise
539 AddToFunc Move-or-Raise         I Raise
540 +                               M Move
541 +                               D Lower
542
543 DestroyFunc Move-or-Raise2
544 AddToFunc Move-or-Raise2        M Raise
545 +                               M Move
546 +                               D Lower
547
548 DestroyFunc Resize-or-Raise
549 AddToFunc Resize-or-Raise       I Raise
550 +                               M Resize
551 +                               D Lower
552
553 DestroyFunc Resize-or-Raise2
554 AddToFunc Resize-or-Raise2      M Raise
555 +                               M Resize
556 +                               D Lower
557
558 DestroyFunc Shadify
559 AddToFunc Shadify               D WindowShade
560 +                               M Move
561 +                               C RaiseLower
562
563 DestroyFunc warp-or-run
564 AddToFunc warp-or-run           I Next [$0 CirculateHit] Iconify -1
565 +                               I Next [$0 CirculateHit] Focus
566 +                               I None [$0] $1
567
568 DestroyFunc MailFunction
569 AddToFunc MailFunction          I Next [$0] Iconify -1
570 +                               I Next [$0] focus
571 +                               I None [$0] Exec exec $0 $1
572
573 DestroyFunc PrintFunction
574 AddToFunc PrintFunction         I Raise
575 +                               I Exec exec xdpr -id $w
576
577 DestroyFunc Raise-All
578 AddToFunc Raise-All           I All Raise
579
580 ##############################################################################
581 # User-defined functions
582 #
583
584 DestroyFunc PaVuControl
585 AddToFunc PaVuControl         I GotoDeskAndPage 0 1 1
586 +                             I Exec exec pulseaudio --kill
587 +                             I Exec exec cgmem_nice 200 pulseaudio --start
588 +                             I Exec exec cgmem_nice 200 pavucontrol
589 +                             I Wait "Volume Control"
590
591 changequote([,])
592 DestroyFunc Id3Info
593 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 -
594 changequote([`], ['])
595
596 DestroyFunc AudioPlayer
597 AddToFunc AudioPlayer         I GotoDeskAndPage 0 1 1
598 +                             I Exec LC_CTYPE=ru_RU.KOI8-R exec cgmem_nice 200 audacious
599
600 DestroyFunc Term-Iskra
601 AddToFunc Term-Iskra          I GotoDeskAndPage 1 1 2
602 +                             I REMOTE_HOST_KOI8(REMOTE_SCREEN_KOI8(iskra-aviel.phdru.name), iskra)
603
604 DestroyFunc Term-Iskra-Big
605 AddToFunc Term-Iskra-Big      I GotoDeskAndPage 1 1 2
606 +                             I REMOTE_HOST_KOI8_BIG(iskra-aviel.phdru.name, ISKRA)
607
608 DestroyFunc Term-Oper
609 AddToFunc Term-Oper           I GotoDeskAndPage 1 1 2
610 +                             I REMOTE_HOST_KOI8_BOTRT(REMOTE_SCREEN_KOI8(oper.med.ru), oper)
611
612 DestroyFunc Term-Oper-Big
613 AddToFunc Term-Oper-Big       I GotoDeskAndPage 1 1 2
614 +                             I REMOTE_HOST_KOI8_BIG(oper.med.ru, OPER)
615
616 DestroyFunc Term-Phdru
617 AddToFunc Term-Phdru          I GotoDeskAndPage 1 0 1
618 +                             I REMOTE_HOST_KOI8(REMOTE_SCREEN_KOI8(phdru.name), phdru.name)
619
620 DestroyFunc Term-Phdru-Big
621 AddToFunc Term-Phdru-Big      I GotoDeskAndPage 1 0 1
622 +                             I REMOTE_HOST_KOI8_BIG(phdru.name, phdru.name)
623
624 DestroyFunc FireFox
625 AddToFunc FireFox             I Any ("*Mozilla Firefox") Break
626 +                             I GotoDeskAndPage 1 0 0
627 +                             I Exec LC_CTYPE=ru_RU.KOI8-R exec cgmem_nice 4000 start-browser firefox
628 +                             I Wait "*Mozilla Firefox"
629 +                             I Exec LC_CTYPE=ru_RU.KOI8-R exec cgmem_nice 4000 firefox --new-window
630 +                             I Wait "*Mozilla Firefox"
631 +                             I Next ("*Mozilla Firefox") Iconify true
632
633 DestroyFunc Gajim
634 AddToFunc Gajim               I GotoDeskAndPage 1 1 0
635 +                             I Exec exec cgmem_nice 300 gajim
636
637 DestroyFunc Pidgin
638 AddToFunc Pidgin              I GotoDeskAndPage 1 1 0
639 +                             I Exec exec cgmem_nice 300 pidgin
640
641 DestroyFunc XFilename
642 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 -
643
644 ##############################################################################
645 # MENU Setup
646 #
647
648 # This defines the most common window operations
649 AddToMenu Window-Ops    "Window Ops"    Title
650 +                       "Center"        Center
651 +                       "Move"          Move-or-Raise2
652 +                       "Resize"        Resize-or-Raise2
653 +                       "Raise"         Raise
654 +                       "Lower"         Lower
655 +                       "(De)Iconify"   Iconify
656 +                       "(Un)Stick"     Stick
657 +                       "(Un)Maximize"  maximize_func
658 +                       ""              Nop
659 +                       "Delete"        Delete
660 +                       "Close"         Close
661 +                       "Destroy"       Destroy
662 +                       ""              Nop
663 +                       "Refresh Screen" Refresh
664
665 # A trimmed down version of "Window Ops", good for binding to decorations
666 DestroyMenu Window-Ops2
667 AddToMenu Window-Ops2   "Center"        Center
668 +                       "Move"          Move-or-Raise
669 +                       "Iconify"       Iconify
670 +                       "(Un)Stick"     Stick
671 +                       "Refresh"       RefreshWindow
672 +                       ""              Nop
673 +                       "Close"         Close
674 +                       "Delete"        Delete
675 +                       "Destroy"       Destroy
676 +                       ""              Nop
677 +                       "Resize"        Resize-or-Raise
678 +                       "Shade"         WindowShade
679 +                       "Raise/Lower"   RaiseLower
680 +                       ""              Nop
681 +                       "ScrollBar"     Module FvwmScroll 2 2
682 +                       "Print"         PrintFunction
683
684 AddToMenu Terminals     "Terminals" Title
685 +               "Grey term (koi8)" TERM_KOI8
686 +               "Grey term (utf8)" TERM_RU_UTF8
687 +               "Grey term (heb-utf8)" TERM_HEB_UTF8
688 +               "Grey term (koi8,btlt)" TERM_KOI8_BOTLT
689 +               "Grey term (koi8,btrt)" TERM_KOI8_BOTRT
690 +               "Grey term (utf8,btlt)" TERM_RU_UTF8_BOTLT
691 +               "Grey term (utf8,btrt)" TERM_RU_UTF8_BOTRT
692 +               "Big grey term (koi8)" TERM_KOI8 -geometry TERM_GEOM_BIG
693 +               "Big grey term (utf8)" TERM_RU_UTF8 -geometry TERM_GEOM_BIG
694 +                       ""      Nop
695 +               "White/black term (koi8)" TERM_KOI8 -fg white -cr white -bg black
696 +               "White/black term (utf8)" TERM_RU_UTF8 -fg white -bg black
697
698 AddToMenu TermColors    "Term Colors" Title
699 +                       "Term: black/mediumturquoise" TERM_KOI8 -fg black -cr black -bg mediumturquoise
700 +                       "Term: black/lightseagreen" TERM_KOI8 -fg black -cr black -bg lightseagreen
701 +                       ""      Nop
702 +                       "Term: black/lightsteelblue" TERM_KOI8 -fg black -cr black -bg lightsteelblue
703 +                       "Term: black/lightblue3" TERM_KOI8 -fg black -cr black -bg lightblue3
704 +                       ""      Nop
705 +                       "Term: black/lightgoldenrod" TERM_KOI8 -fg black -cr black -bg lightgoldenrod
706 +                       "Term: black/rosybrown1" TERM_KOI8 -fg black -cr black -bg rosybrown1
707 +                       "Term: black/pink1" TERM_KOI8 -fg black -cr black -bg pink1
708 +                       ""      Nop
709 +                       "Term: white/orchid4" TERM_KOI8 -fg white -cr white -bg orchid4
710 +                       "Term: white/purple3" TERM_KOI8 -fg white -cr white -bg purple3
711 +                       "Term: white/purple4" TERM_KOI8 -fg white -cr white -bg purple4
712 +                       ""      Nop
713 +                       "Term: white/lightslategrey" TERM_KOI8 -fg white -cr white -bg lightslategrey
714 +                       "Term: white/navyblue" TERM_KOI8 -fg white -cr white -bg navyblue
715 +                       "Term: white/mediumblue" TERM_KOI8 -fg white -cr white -bg mediumblue
716 +                       "Term: white/steelblue" TERM_KOI8 -fg white -cr white -bg steelblue
717 +                       ""      Nop
718 +                       "Term: white/forestgreen" TERM_KOI8 -fg white -cr white -bg forestgreen
719 +                       "Term: white/rosybrown" TERM_KOI8 -fg white -cr white -bg rosybrown
720 +                       "Term: white/deeppink" TERM_KOI8 -fg white -cr white -bg deeppink
721 +                       "Term: white/black" TERM_KOI8 -fg white -cr white -bg black
722
723 AddToMenu Systems       "Systems" Title
724 +                       REMOTE_HOST_KOI8_MENU(REMOTE_SCREEN_KOI8(iskra-aviel.phdru.name), iskra)
725 +                       REMOTE_HOST_UTF8_BOTLT_MENU(iskra-aviel.phdru.name, iskra)
726 +                       REMOTE_HOST_KOI8_BIG_MENU(iskra-aviel.phdru.name, ISKRA)
727 +                       ""        Nop
728 +                       REMOTE_HOST_KOI8_BOTRT_MENU(REMOTE_SCREEN_KOI8(oper.med.ru), oper)
729 +                       REMOTE_HOST_UTF8_BOTRT_MENU(oper.med.ru, oper)
730 +                       REMOTE_HOST_KOI8_BIG_MENU(oper.med.ru, OPER)
731 +                       ""        Nop
732 +                       REMOTE_HOST_KOI8_MENU(REMOTE_SCREEN_KOI8(phdru.name), phdru)
733 +                       REMOTE_HOST_UTF8_BOTLT_MENU(phdru.name, phdru)
734 +                       REMOTE_HOST_KOI8_BIG_MENU(phdru.name, PHDRU)
735
736 AddToMenu FvwmCommands  "Fvwm Commands" Title
737 +                       "Restart" Restart
738 +                       "Raise all" Raise-All
739 #+                       "Restart Fvwm2" Restart fvwm2
740 #+                       "Start Fvwm"    Restart fvwm
741 +                       "Fvwm Setup"    Popup FvwmSetup
742 +                       "Fvwm Modules"  Popup FvwmModules
743 +                       "" Nop
744 +                       "Exit Fvwm"     Quit
745
746 AddToMenu FvwmSetup     "Fvwm Setup" Title
747 +                       "Start standard session" StartStandardSession
748 +                       "Change Scrolling"      Popup FvwmScroll
749
750 AddToMenu FvwmScroll    "Change Scroll Behavior" Title
751 +                       "OFF"   EdgeScroll 0 0
752 +                       "ON"    EdgeScroll 100 100
753 +                       "Horizontal Only"       EdgeScroll 100 0
754 +                       "Vertical Only"         EdgeScroll 0 100
755 +                       "Partial"               EdgeScroll 50 50
756
757 AddToMenu FvwmModules   "Fvwm Modules" Title
758 +                       "Animate"      Module FvwmAnimate
759 +                       "Auto"         Module FvwmAuto
760 +                       "Backer"       Module FvwmBacker
761 +                       "Banner"       Module FvwmBanner
762 +                       "Buttons"      Module FvwmButtons
763 +                       "Cascade"      Module FvwmCascade
764 +                       "CommandS"     Module FvwmCommandS
765 +                       "Console"      Module FvwmConsole
766 +                       "ConsoleC"     Module FvwmConsoleC -e FvwmConsoleC.pl
767 +                       "Cpp"          Module FvwmCpp
768 +                       "Debug"        Module FvwmDebug
769 +                       "DragWell"     Module FvwmDragWell
770 +                       "Event"        Module FvwmEvent
771 +                       "Form"         Module FvwmForm
772 +                       "Gtk"          Module FvwmGtk
773 +                       "IconBox"      Module FvwmIconBox
774 +                       "IconMan"      Module FvwmIconMan
775 +                       "Ident"        Module FvwmIdent
776 +                       "M4"           Module FvwmM4
777 +                       "Pager"        Module FvwmPager 0 2
778 +                       "Rearrange"    Module FvwmRearrange
779 +                       "Save"         Module FvwmSave
780 +                       "SaveDesk"     Module FvwmSaveDesk
781 +                       "Script"       Module FvwmScript
782 +                       "Scroll"       Module FvwmScroll
783 +                       "TaskBar"      Module FvwmTaskBar
784 +                       "Theme"        Module FvwmTheme
785 +                       "Tile"         Module FvwmTile
786 +                       "Wharf"        Module FvwmWharf
787 +                       "WinList"      Module FvwmWinList
788
789 # This is the root menu
790 AddToMenu RootMenu "Root Menu"  Title
791 +               "Terminals"     Popup Terminals
792 #+               "Color term"    Popup TermColors
793 +               "Systems"       Popup Systems
794 +               ""              Nop
795 +               "Browsers"      Popup Browsers
796 +               "Utilities"     Popup Utilities
797 #+               ""              Nop
798 #+               "Lock Screen"   Popup XlockMenu
799 +               "XScreenSaver"  Popup XScreenSaverMenu
800 #+               "Tv-tuner"      Popup Tv-tuner
801 +               ""              Nop
802 +               "XSetBg"        Popup XSetBgMenu
803 +               "Fvwm Commands" Popup FvwmCommands
804
805 DestroyMenu OSMenu
806 AddToMenu OSMenu        "OS commands:" Title
807 +                       "Suspend to both" Exec exec s2b
808 +                       "Suspend to disk" Exec exec s2d
809 +                       "Suspend to ram"  Exec exec s2r
810
811 # This menu will fire up some often used programs
812 DestroyMenu Utilities
813 AddToMenu Utilities     "Choose one:" Title
814 +                       "OS"     Popup OSMenu
815 +                       ""       Nop
816 +                       "GVim (koi8)" Exec LC_CTYPE=ru_RU.KOI8-R exec gvim
817 +                       "GVim (utf8)" Exec LC_CTYPE=ru_RU.UTF-8  exec gvim
818 +                       ""       Nop
819 +                       "Refresh Screen" Refresh
820 +                       "xrefresh" Exec exec xrefresh
821 +                       ""       Nop
822 +                       "Skype" Exec BROWSER=firefox exec cgmem_nice 1000 skypeforlinux
823 +                       "pavucontrol" PaVuControl
824
825 DestroyMenu  Browsers
826 AddToMenu Browsers      "Choose one:" Title
827 +                       "FireFox" FireFox
828 +                       "Chromium" None ("*Chromium") Exec LC_CTYPE=ru_RU.KOI8-R exec cgmem_nice 2000 start-browser chromium
829 +                       "Opera" None ("*Opera") Exec LC_CTYPE=ru_RU.KOI8-R exec cgmem_nice 2000 start-browser opera
830
831 # A wide variety of screenlocking options...
832 #AddToMenu XlockMenu     "Choose one:" Title
833 #+                       "Hop" Exec exec xlock -mode hop
834 #+                       "Image" Exec exec xlock -mode image
835 #+                       "Life" Exec exec xlock -mode life
836 #+                       "Flame" Exec exec xlock -mode flame
837 #+                       "Pyro" Exec exec xlock -mode pyro
838 #+                       "Qix" Exec exec xlock -mode qix
839 #+                       "Rotor" Exec exec xlock -mode rotor
840 #+                       "Swarm" Exec exec xlock -mode swarm
841 #+                       "" Nop
842 #+                       "Random" Exec exec xlock -mode random
843 #+                       "Blank" Exec exec xlock -mode blank
844
845 AddToMenu XScreenSaverMenu     "Choose mode:" Title
846 +                       "Blank Screen Now" Exec exec xscreensaver-command -activate
847 +                       "Lock Screen Now"  Exec exec xscreensaver-command -lock
848 +                       "Screen Saver Demo" Exec exec xscreensaver-command -demo
849 +                       "Screen Saver Preferences"  Exec exec xscreensaver-command -prefs
850 +                       "Reinitialize Screen Saver" Exec exec xscreensaver-command -restart
851 +                       "" Nop
852 +                       "Kill Screen Saver"         Exec exec xscreensaver-command -exit
853 +                       "Launch Screen Saver"       Exec exec xscreensaver
854
855 AddToMenu XSetBgMenu    "XSetBg" Title
856 +                       "Change wallpaper" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-force
857 +                       "Start" Exec exec cgmem_nice 100 "$HOME"/current/projects/xsetbg/xsetbg-http-start
858 +                       "Stop" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-stop
859 +                       "Restart" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-restart
860 +                       ""       Nop
861 changequote([,])
862 +                       "Xli" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" "$fn"
863 +                       "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"
864 +                       "Open in browser" Exec exec webbrowserX -n "`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r`"
865 +                       "Filename" Exec exec "$HOME"/current/projects/xsetbg/print-filename.py -e koi8-r
866 +                       "XFilename" Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
867 +                       "XFilename (wrapped)" XSetbgFilename
868 +                       ""       Nop
869 +                       "Xli (prev.)" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r 1`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" "$fn"
870 +                       "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"
871 +                       "Open in browser (prev.)" Exec exec webbrowserX -n "`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r 1`"
872 changequote([`], ['])
873 +                       "Filename (prev.)" Exec exec "$HOME"/current/projects/xsetbg/print-filename.py -e koi8-r 1
874 +                       "XFilename (prev.)" Exec "$HOME"/current/projects/xsetbg/print-filename.py 1 | text-wrap.py | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
875 +                       "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 -
876
877 ############################################################################
878 # FvwmBacker
879 #
880 #*FvwmBacker: Command (Desk 0, Page * *) -solid DarkCyan
881 #*FvwmBacker: Command (Desk 1, Page * *) -solid steelblue
882 #*FvwmBacker: Command (Desk 2, Page * *) -solid midnightblue
883 *FvwmBacker: Command (Desk *, Page * *) Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-change
884
885 ############################################################################
886 # FvwmButtons
887 #
888 # Colors
889 *FvwmButtons: Fore Black
890 *FvwmButtons: Back rgb:90/80/90
891
892 # Font
893 *FvwmButtons: Font BUTTONS_FONT
894
895 # Geometry-- really likes to pick its own size, but giving a position is OK
896 *FvwmButtons: Geometry -1+1
897
898 # Layout: specify rows or columns, not both
899 *FvwmButtons: Rows 2 #, Columns 5
900
901 # Transparent background
902 #*FvwmButtons: Pixmap none
903 # Background
904 #*FvwmButtons: Pixmap fvwm.xpm
905
906 # Define the buttons to use.....
907 #*FvwmButtons: Move              arrows2.xpm     Move
908 #*FvwmButtons: Kill              skull.xpm       Destroy
909 #*FvwmButtons: Quit              nuke.xpm        Popup "Quit-Verify"
910
911 #*FvwmButtons: (Swallow XClock 'Exec exec xclock -update 1 -geometry -3000-3000')
912
913 # Buttons
914 pushdef(`TERM_KOI8', `Exec "TERM" LC_CTYPE=ru_RU.KOI8-R exec TERM')
915 pushdef(`TERM_RU_UTF8', `Exec "URxvt" LC_CTYPE=ru_RU.UTF-8 exec TERM -name URxvt')
916 *FvwmButtons: (Title Term,     Icon rterm2.xpm,      Action TERM_KOI8)
917 *FvwmButtons: (Title UTF-8,    Icon rterm2.xpm,      Action TERM_RU_UTF8)
918 *FvwmButtons: (Title phdru,    Icon xterm-sgi.xpm,   Action REMOTE_HOST_KOI8(REMOTE_SCREEN_KOI8(-D 1080 phdru.name), phdru.name))
919 *FvwmButtons: (Title iskra,    Icon xterm-sgi.xpm,   Action REMOTE_HOST_KOI8(REMOTE_SCREEN_KOI8(iskra-aviel.phdru.name), iskra))
920 *FvwmButtons: (Title oper,     Icon xterm-linux.xpm, Action REMOTE_HOST_KOI8_BOTRT(REMOTE_SCREEN_KOI8(oper.med.ru), oper))
921 popdef(`TERM_KOI8', `TERM_RU_UTF8')
922
923 *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 -)
924 *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 -)
925 *FvwmButtons: (Title Next,      Icon Jrecycle.xpm,     Action Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-force)
926 *FvwmButtons: (Title pavucontrol, Icon mini.sound.xpm, Action Exec "Volume Control" exec cgmem_nice 200 pavucontrol)
927 #*FvwmButtons: (Title Id3Info,  Icon bell.xpm,         Action Id3Info)
928 *FvwmButtons: (Title AudioPlayer,  Icon bell.xpm,      Action Exec "Audacious" LC_CTYPE=ru_RU.KOI8-R exec cgmem_nice 200 audacious)
929 #*FvwmButtons: (Title XLock,     Icon Jxlock.xpm,      Action Exec exec xscreensaver-command -lock)
930
931 ############################################################################
932 # FvwmForm
933 #
934 # FvwmForm alias - rlogin to host via term
935 #FvwmForm Rlogin
936 #*Rlogin: WarpPointer
937 #*Rlogin: Font         *helvetica*m*r*n*14*
938 #*Rlogin: ButtonFont   *helvetica*m*o*n*14*
939 #*Rlogin: InputFont    *cour*m*r*n*14*
940 #*Rlogin: Fore         Black
941 #*Rlogin: Back         Light Gray
942 #*Rlogin: ItemFore          Wheat
943 #*Rlogin: ItemBack          Gray50
944 ## begin items
945 #*Rlogin: Line         center
946 #*Rlogin: Text         "Login to Remote Host"
947 #*Rlogin: Line         center
948 #*Rlogin: Text         "Host:"
949 #*Rlogin: Input        HostName  20   ""
950 #*Rlogin: Line         center
951 #*Rlogin: Selection    UserSel   single
952 #*Rlogin: Choice       Default   Default   on   "same user"
953 #*Rlogin: Choice       Custom    Custom    off  "user:"
954 #*Rlogin: Input        UserName  10   ""
955 #*Rlogin: Line         expand
956 #*Rlogin: Button       quit "Login" ^M
957 #*Rlogin: Command      TERM_KOI8 -T term@$(HostName) -e rlogin $(HostName) $(Custom?-l $(UserName))
958 #*Rlogin: Button       restart   "Clear"
959 #*Rlogin: Command Beep
960 #*Rlogin: Button       quit "Cancel"
961 #*Rlogin: Command Nop
962 ##
963 ## FvwmForm alias - query exit ala mwm
964 #FvwmForm QuitVerify
965 #*QuitVerify: GrabServer
966 #*QuitVerify: WarpPointer
967 #*QuitVerify: Font          *helvetica*m*r*n*14*
968 ##*QuitVerify: ButtonFont    *helvetica*m*o*n*14*
969 #*QuitVerify: ButtonFont    7x13bold
970 #*QuitVerify: Fore          Black
971 #*QuitVerify: Back          Light Gray
972 #*QuitVerify: ItemFore Wheat
973 #*QuitVerify: ItemBack Gray50
974 ## begin items
975 #*QuitVerify: Line          center
976 #*QuitVerify: Text          "Do you really want to exit FVWM?"
977 #*QuitVerify: Line          expand
978 #*QuitVerify: Button   quit      " Exit "
979 #*QuitVerify: Command  Quit
980 #*QuitVerify: Button   quit      "Cancel"
981 #*QuitVerify: Command  Nop
982 #
983 ##
984 ## MyTalk & MyFvwmTalk from Dave Goldberg
985 ## MyTalk Form - dissappears after use
986 #FvwmForm MyTalk
987 #*MyTalk: WarpPointer
988 #*MyTalk: Font *helvetica*m*r*n*14*
989 #*MyTalk: ButtonFont *helvetica*m*o*n*14*
990 #*MyTalk: InputFont *cour*m*r*n*14*
991 #*MyTalk: Fore Red
992 #*MyTalk: Back Gray
993 #*MyTalk: ItemFore Blue
994 #*MyTalk: ItemBack Gray
995 #*MyTalk: Line center
996 #*MyTalk: Text "Fvwm Function"
997 #*MyTalk: Input Func 40 ""
998 #*MyTalk: Line expand
999 #*MyTalk: Button quit "Run" ^M
1000 #*MyTalk: Command $(Func)
1001 #*MyTalk: Button restart "Clear" ^R
1002 #*MyTalk: Button quit "Cancel" ^C
1003 #*MyTalk: Command Nop
1004 ##
1005 ## MyFvwmTalk Form - sticks around
1006 #FvwmForm MyFvwmTalk
1007 #*MyFvwmTalk: WarpPointer
1008 #*MyFvwmTalk: Font *helvetica*m*r*n*14*
1009 #*MyFvwmTalk: ButtonFont *helvetica*m*o*n*14*
1010 #*MyFvwmTalk: InputFont *cour*m*r*n*14*
1011 #*MyFvwmTalk: Fore Red
1012 #*MyFvwmTalk: Back Gray
1013 #*MyFvwmTalk: ItemFore Blue
1014 #*MyFvwmTalk: ItemBack Gray
1015 #*MyFvwmTalk: Line center
1016 #*MyFvwmTalk: Text "Fvwm Function"
1017 #*MyFvwmTalk: Input Func 40 ""
1018 #*MyFvwmTalk: Line expand
1019 #*MyFvwmTalk: Button restart "Run" ^M
1020 #*MyFvwmTalk: Command $(Func)
1021 #*MyFvwmTalk: Button restart "Clear" ^R
1022 #*MyFvwmTalk: Command Nop
1023 #*MyFvwmTalk: Button restart "Iconify" ^Z
1024 #*MyFvwmTalk: Command Next [MyFvwmTalk] Iconify
1025 #*MyFvwmTalk: Button quit "Quit" ^C
1026 #*MyFvwmTalk: Command Nop
1027
1028 ############################################################################
1029 # FvwmIconBox
1030 #
1031 # NOTE: Icons will only be shown in module if "Style * !Icon" is set
1032 *FvwmIconBox: IconBack    #cfcfcf
1033 *FvwmIconBox: IconHiFore  black
1034 *FvwmIconBox: IconHiBack  LightSkyBlue
1035 *FvwmIconBox: Back        #5f9ea0
1036 #*FvwmIconBox: Fore       blue
1037 *FvwmIconBox: Geometry    5x1+0+0
1038 *FvwmIconBox: MaxIconSize 64x38
1039 *FvwmIconBox: Font        ICON_BOX_FONT
1040 *FvwmIconBox: SortIcons   IconName
1041 *FvwmIconBox: Padding     4
1042 *FvwmIconBox: Lines       10
1043 *FvwmIconBox: SBWidth     11
1044 *FvwmIconBox: Placement   Left Top
1045 *FvwmIconBox: Pixmap      fvwm.xpm
1046 #*FvwmIconBox: HideSC Horizontal
1047 *FvwmIconBox: SetWMIconSize
1048 *FvwmIconBox: HilightFocusWin
1049 #*FvwmIconBox: Resolution          Desk
1050 *FvwmIconBox: Mouse       1       Click           RaiseLower
1051 *FvwmIconBox: Mouse       1       DoubleClick     Iconify
1052 *FvwmIconBox: Mouse       2       Click           Iconify -1, Focus
1053 *FvwmIconBox: Mouse       3       Click           Module FvwmIdent
1054 *FvwmIconBox: Key         r       RaiseLower
1055 *FvwmIconBox: Key         space   Iconify
1056 *FvwmIconBox: Key         d       Close
1057 *FvwmIconBox: Key         n       Next
1058 *FvwmIconBox: Key         p       Prev
1059 *FvwmIconBox: Key         h       Left
1060 *FvwmIconBox: Key         j       Down
1061 *FvwmIconBox: Key         k       Up
1062 *FvwmIconBox: Key         l       Right
1063
1064 ############################################################################
1065 # FvwmIdent
1066 #
1067 # Give us colors and a fonts
1068 *FvwmIdent: Back MidnightBlue
1069 *FvwmIdent: Fore Yellow
1070 *FvwmIdent: Font IDENT_FONT
1071
1072 ############################################################################
1073 # FvwmPager
1074 #
1075 *FvwmPager: Back #908090
1076 *FvwmPager: Fore #484048
1077 *FvwmPager: Font TITLE_FONT
1078 *FvwmPager: Hilight #cab3ca
1079 *FvwmPager: Geometry PAGER_GEOM
1080 *FvwmPager: Label 0 System
1081 *FvwmPager: Label 1 Net
1082 *FvwmPager: Label 2 Work
1083 *FvwmPager: SmallFont SMALL_PAGER_FONT
1084
1085 *FvwmPager: Balloons All
1086 *FvwmPager: BalloonBack #efe3b5
1087 *FvwmPager: BalloonFore Black
1088 *FvwmPager: BalloonFont ICON_FONT
1089 *FvwmPager: BalloonYOffset +2
1090 *FvwmPager: BalloonBorderWidth 1
1091 *FvwmPager: BalloonBorderColor Black
1092
1093 ############################################################################
1094 # FvwmScroll
1095 #
1096 *FvwmScroll: Back grey40
1097 *FvwmScroll: Fore green
1098
1099 ############################################################################
1100 # FvwmWinList
1101 #
1102 *FvwmWinList: Back #908090
1103 *FvwmWinList: Fore Black
1104 *FvwmWinList: Font WIN_LIST_FONT
1105 *FvwmWinList: Action Click1 Iconify -1, Focus
1106 *FvwmWinList: Action Click2 Iconify
1107 *FvwmWinList: Action Click3 Module "FvwmIdent: " FvwmIdent
1108 *FvwmWinList: UseSkipList
1109 *FvwmWinList: Geometry +10-10