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