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