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