]> git.phdru.name Git - dotfiles.git/blobdiff - .fvwm/phd.m4
.fvwmrc: do not add pause if Firefox is already running
[dotfiles.git] / .fvwm / phd.m4
index 80f0e43a2333a7552e6667fecfa6844a406b89f6..5e969bb280cba63af926ddfaf849bd1eccc6d382 100644 (file)
@@ -5,17 +5,13 @@
 dnl The file is in m4 format, use FvwmM4 module to read it
 dnl like this: ModuleSynchronous FvwmM4 -lock .fvwm2rc
 
 dnl The file is in m4 format, use FvwmM4 module to read it
 dnl like this: ModuleSynchronous FvwmM4 -lock .fvwm2rc
 
-
 dnl This is to prevent FvwmM4 to shadow $HOME
 undefine(`HOME')
 
 dnl This is to prevent FvwmM4 to shadow $HOME
 undefine(`HOME')
 
-
 dnl Echo dimension
 dnl Echo dimension
-changecom(`/*', `*/')
-# width = WIDTH
-changecom(`#')
-
+`#' width = WIDTH
 
 
+divert(-1)
 dnl koi8-r Fonts
 dnl define(`SMALL_FONT_KOI8', `-*-fixed-medium-r-normal-*-*-100-*-*-*-*-koi8-r')
 dnl define(`MEDIUM_FONT_KOI8', `-*-fixed-medium-r-normal-*-*-120-*-*-*-*-koi8-r')
 dnl koi8-r Fonts
 dnl define(`SMALL_FONT_KOI8', `-*-fixed-medium-r-normal-*-*-100-*-*-*-*-koi8-r')
 dnl define(`MEDIUM_FONT_KOI8', `-*-fixed-medium-r-normal-*-*-120-*-*-*-*-koi8-r')
@@ -30,6 +26,7 @@ dnl define(`XBUFFY_FONT', `-cronyx-helvetica-bold-r-*-*-*-100-*-*-*-*-koi8-r')
 
 
 dnl TrueType Fonts
 
 
 dnl TrueType Fonts
+define(`VERY_SMALL_FONT', `xft:Sans:size=10')
 define(`SMALL_FONT', `xft:Sans:size=12')
 define(`MEDIUM_FONT', `xft:Sans:size=14')
 define(`BIG_FONT', `xft:Sans:size=16')
 define(`SMALL_FONT', `xft:Sans:size=12')
 define(`MEDIUM_FONT', `xft:Sans:size=14')
 define(`BIG_FONT', `xft:Sans:size=16')
@@ -37,36 +34,28 @@ define(`LARGE_FONT', `xft:Sans:size=18')
 define(`HUGE_FONT', `xft:Sans:size=20')
 
 dnl Bold TT fonts
 define(`HUGE_FONT', `xft:Sans:size=20')
 
 dnl Bold TT fonts
-define(`SMALL_BOLD_FONT', `SMALL_FONT:Bold')
-define(`MEDIUM_BOLD_FONT', `MEDIUM_FONT:Bold')
-define(`BIG_BOLD_FONT', `BIG_FONT:Bold')
+define(`SMALL_BOLD_FONT', SMALL_FONT`:Bold')
+define(`MEDIUM_BOLD_FONT', MEDIUM_FONT`:Bold')
+define(`BIG_BOLD_FONT', BIG_FONT`:Bold')
 
 
+define(`TITLE_FONT', MEDIUM_FONT)
+define(`ICON_FONT', LARGE_FONT)
 
 dnl Font and geometry aliases that depend on whether the screen resolution is
 dnl 800x600, 1024x768 or 1920x1200
 
 
 dnl Font and geometry aliases that depend on whether the screen resolution is
 dnl 800x600, 1024x768 or 1920x1200
 
-define(`TITLE_FONT', `MEDIUM_FONT')
-
-define(`ICON_FONT', `LARGE_FONT')
-
-
 define(`PAGER_GEOM',
 define(`PAGER_GEOM',
-`ifelse(eval(WIDTH < 1024), 1, `365x100+0+0',dnl
-`ifelse(eval(WIDTH < 1920), 1, `365x100+0+0', `600x160+0+0'dnl
-)')'dnl
-)
-
-define(`PAGER_FONT',
-`ifelse(eval(WIDTH < 1920), 1, `SMALL_FONT', `BIG_FONT'dnl
-)')
+ifelse(eval(WIDTH < 1024), 1, `365x100+0+0',
+       eval(WIDTH < 1920), 1, `365x100+0+0', `600x160+0+0'))
+
+define(`SMALL_PAGER_FONT', ifelse(eval(WIDTH < 1920), 1, VERY_SMALL_FONT, SMALL_FONT))
+define(`PAGER_FONT', ifelse(eval(WIDTH < 1920), 1, SMALL_FONT, BIG_FONT))
 define(`BUTTONS_FONT', PAGER_FONT)
 
 
 define(`MENU_FONT',
 define(`BUTTONS_FONT', PAGER_FONT)
 
 
 define(`MENU_FONT',
-`ifelse(eval(WIDTH < 1024), 1, `xft:Helvetica:size=16',dnl
-`ifelse(eval(WIDTH < 1920), 1, `xft:Helvetica:size=18', `xft:Helvetica:size=22'dnl
-)')'dnl
-)
+ifelse(eval(WIDTH < 1024), 1, `xft:Helvetica:size=16',
+       eval(WIDTH < 1920), 1, `xft:Helvetica:size=18', `xft:Helvetica:size=22'))
 define(`IDENT_FONT', MENU_FONT)
 define(`WIN_LIST_FONT', MENU_FONT)
 define(`ICON_BOX_FONT', MENU_FONT)
 define(`IDENT_FONT', MENU_FONT)
 define(`WIN_LIST_FONT', MENU_FONT)
 define(`ICON_BOX_FONT', MENU_FONT)
@@ -74,77 +63,76 @@ define(`ICON_BOX_FONT', MENU_FONT)
 
 dnl XSetBg message width and font
 define(`TEXT_WIDTH',
 
 dnl XSetBg message width and font
 define(`TEXT_WIDTH',
-`ifelse(eval(WIDTH < 1024), 1, 70,dnl
-`ifelse(eval(WIDTH < 1920), 1, 75, 80 dnl
-)')'dnl
-)
+ifelse(eval(WIDTH < 1024), 1, 70,
+       eval(WIDTH < 1920), 1, 75, 80))
 
 
-define(`MESSAGE_FONT', `Nimbus Sans L 18')'dnl
+define(`MESSAGE_FONT', `Nimbus Sans L 18')
 
 
 dnl Terminal emulator
 define(`TERM_GEOM',
 
 
 dnl Terminal emulator
 define(`TERM_GEOM',
-`ifelse(eval(WIDTH < 1024), 1, `80x25',dnl
-`ifelse(eval(WIDTH < 1920), 1, `80x30', `80x32'dnl
-)')'dnl
-)
+ifelse(eval(WIDTH < 1024), 1, `80x25',
+       eval(WIDTH < 1920), 1, `80x30', `80x32'))
 
 
-define(`TERM_GEOM_BOTRT', `TERM_GEOM-0-0')'dnl
+define(`TERM_GEOM_BOTLT', TERM_GEOM`+0-0')
+define(`TERM_GEOM_BOTRT', TERM_GEOM`-0-0')
 
 define(`TERM_GEOM_BIG',
 
 define(`TERM_GEOM_BIG',
-`ifelse(eval(WIDTH < 1024), 1, `96x30',dnl
-`ifelse(eval(WIDTH < 1920), 1, `112x32', `126x35'dnl
-)')'dnl
-)
+ifelse(eval(WIDTH < 1024), 1, `96x30',
+       eval(WIDTH < 1920), 1, `112x32', `126x35'))
 
 
 define(`TERM', `urxvt')
 define(`TERM_KOI8', `Exec LC_CTYPE=ru_RU.KOI8-R exec TERM')
 define(`TERM_UTF8', `Exec exec "$HOME"/lib/X11/utf8rxvt')
 
 
 define(`TERM', `urxvt')
 define(`TERM_KOI8', `Exec LC_CTYPE=ru_RU.KOI8-R exec TERM')
 define(`TERM_UTF8', `Exec exec "$HOME"/lib/X11/utf8rxvt')
-define(`TERM_KOI8_BOTRT', `Exec LC_CTYPE=ru_RU.KOI8-R exec TERM -geometry TERM_GEOM_BOTRT')
-define(`TERM_UTF8_BOTRT', `Exec exec "$HOME"/lib/X11/utf8rxvt -geometry TERM_GEOM_BOTRT')
+define(`TERM_KOI8_BOTLT', `TERM_KOI8 -geometry TERM_GEOM_BOTLT')
+define(`TERM_UTF8_BOTLT', `TERM_UTF8 -geometry TERM_GEOM_BOTLT')
+define(`TERM_KOI8_BOTRT', `TERM_KOI8 -geometry TERM_GEOM_BOTRT')
+define(`TERM_UTF8_BOTRT', `TERM_UTF8 -geometry TERM_GEOM_BOTRT')
 
 
 define(`REMOTE_HOST_KOI8',
 
 
 define(`REMOTE_HOST_KOI8',
-TERM_KOI8 -title "$2" -n "$2" -e ssh -4 "$1"dnl
-)
+`TERM_KOI8 -title "$2" -n "$2" -e ssh -4 "$1"')
 
 define(`REMOTE_HOST_KOI8_MENU',
 
 define(`REMOTE_HOST_KOI8_MENU',
-"$2 (koi8)" REMOTE_HOST_KOI8($1, $2)dnl
-)
+"$2 (koi8)" REMOTE_HOST_KOI8($1, $2))
+
+define(`REMOTE_HOST_KOI8_BOTLT',
+TERM_KOI8_BOTLT -title "$2" -n "$2" -e ssh -4 "$1")
 
 define(`REMOTE_HOST_KOI8_BOTRT',
 
 define(`REMOTE_HOST_KOI8_BOTRT',
-TERM_KOI8_BOTRT -title "$2" -n "$2" -e ssh -4 "$1"dnl
-)
+`TERM_KOI8_BOTRT -title "$2" -n "$2" -e ssh -4 "$1"')
+
+define(`REMOTE_HOST_KOI8_BOTLT_MENU',
+"$2 (koi8,btlt)" REMOTE_HOST_KOI8_BOTLT($1, $2))
 
 define(`REMOTE_HOST_KOI8_BOTRT_MENU',
 
 define(`REMOTE_HOST_KOI8_BOTRT_MENU',
-"$2 (koi8,btrt)" REMOTE_HOST_KOI8_BOTRT($1, $2)dnl
-)
+"$2 (koi8,btrt)" REMOTE_HOST_KOI8_BOTRT($1, $2))
 
 define(`REMOTE_HOST_UTF8',
 
 define(`REMOTE_HOST_UTF8',
-TERM_UTF8 -e ssh -4 "$1"dnl
-)
+TERM_UTF8 -e ssh -4 "$1")
 
 define(`REMOTE_HOST_UTF8_MENU',
 
 define(`REMOTE_HOST_UTF8_MENU',
-"$2 (utf8)" REMOTE_HOST_UTF8($1, $2)dnl
-)
+"$2 (utf8)" REMOTE_HOST_UTF8($1, $2))
+
+define(`REMOTE_HOST_UTF8_BOTLT',
+TERM_UTF8_BOTLT -e ssh -4 "$1")
 
 define(`REMOTE_HOST_UTF8_BOTRT',
 
 define(`REMOTE_HOST_UTF8_BOTRT',
-TERM_UTF8_BOTRT -e ssh -4 "$1"dnl
-)
+TERM_UTF8_BOTRT -e ssh -4 "$1")
+
+define(`REMOTE_HOST_UTF8_BOTLT_MENU',
+"$2 (utf8,btlt)" REMOTE_HOST_UTF8_BOTLT($1, $2))
 
 define(`REMOTE_HOST_UTF8_BOTRT_MENU',
 
 define(`REMOTE_HOST_UTF8_BOTRT_MENU',
-"$2 (utf8,btrt)" REMOTE_HOST_UTF8_BOTRT($1, $2)dnl
-)
+"$2 (utf8,btrt)" REMOTE_HOST_UTF8_BOTRT($1, $2))
 
 define(`REMOTE_HOST_KOI8_BIG',
 
 define(`REMOTE_HOST_KOI8_BIG',
-TERM_KOI8 -geometry TERM_GEOM_BIG -title "$2" -n "$2" -e ssh -4 "$1"dnl
-)
+TERM_KOI8 -geometry TERM_GEOM_BIG -title "$2" -n "$2" -e ssh -4 "$1")
 
 define(`REMOTE_HOST_KOI8_BIG_MENU',
 
 define(`REMOTE_HOST_KOI8_BIG_MENU',
-"$2 (koi8)" REMOTE_HOST_KOI8_BIG($1, $2)dnl
-)
-
+"$2 (koi8)" REMOTE_HOST_KOI8_BIG($1, $2))
+divert
 
 ##########################################################################
 # PATH Setup
 
 ##########################################################################
 # PATH Setup
@@ -164,7 +152,7 @@ Style * Color Black/#60a0c0
 
 # Set colors/font for pop-up menus
 # Syntax: MenuStyle forecolor backcolor shadecolor font style(fvwm/mwm)
 
 # Set colors/font for pop-up menus
 # Syntax: MenuStyle forecolor backcolor shadecolor font style(fvwm/mwm)
-MenuStyle * FVWM, Foreground Black, Background grey, Greyed SlateGrey, Font MENU_FONT fvwm
+MenuStyle * FVWM, Foreground Black, Background grey, Greyed SlateGrey, Font MENU_FONT
 
 # Set fonts to use on title bar and icon label
 Style * Font              TITLE_FONT
 
 # Set fonts to use on title bar and icon label
 Style * Font              TITLE_FONT
@@ -232,7 +220,6 @@ DesktopSize 2 2
 #
 Style * PositionPlacement Center
 
 #
 Style * PositionPlacement Center
 
-
 ############################################################################
 # STYLE Flag Setup
 #
 ############################################################################
 # STYLE Flag Setup
 #
@@ -375,7 +362,6 @@ ButtonStyle 3 12 10x23@0 90x23@0 90x28@0 10x28@1 10x47@1 90x47@0 90x52@0 10x52@1
 # the number "2"
 #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
 
 # the number "2"
 #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
 
-
 ############################################################################
 # MOUSE Setup
 #
 ############################################################################
 # MOUSE Setup
 #
@@ -459,33 +445,44 @@ Key 8           A       CM      GotoPage 1 1
 #############################################################################
 # START-UP Functions
 #
 #############################################################################
 # START-UP Functions
 #
-AddToFunc "InitFunction"
+DestroyFunc InitFunction
+AddToFunc InitFunction
 +              I Module FvwmBacker
 +              I Module FvwmButtons
 +              I Module FvwmCommandS
 +              I Module FvwmPager 0 2
 
 +              I Module FvwmBacker
 +              I Module FvwmButtons
 +              I Module FvwmCommandS
 +              I Module FvwmPager 0 2
 
-AddToFunc "RestartFunction"
+DestroyFunc RestartFunction
+AddToFunc RestartFunction
 +              I Module FvwmBacker
 +              I Module FvwmButtons
 +              I Module FvwmCommandS
 +              I Module FvwmPager 0 2
 +              I Module FvwmBacker
 +              I Module FvwmButtons
 +              I Module FvwmCommandS
 +              I Module FvwmPager 0 2
-+              I Next [!iconic CurrentScreen xterm] Focus
++              I Schedule 1000 Raise-All
+
+DestroyFunc UrgencyFunc
+AddToFunc UrgencyFunc
++                             I Iconify off
++                             I ThisWindow ("*Downloads") Break
++                             I FlipFocus
++                             I Raise
++                             I WarpToWindow 5p 5p
 
 
-AddToFunc "StartStandardSession"
+DestroyFunc StartStandardSession
+AddToFunc StartStandardSession
 +              I GotoDeskAndPage 0 0 0
 +              I TERM_KOI8
 +              I Wait TERM
 +              I GotoDeskAndPage 0 0 1
 +              I GotoDeskAndPage 0 0 0
 +              I TERM_KOI8
 +              I Wait TERM
 +              I GotoDeskAndPage 0 0 1
-+              I TERM_KOI8 -geometry 38x30+0-0
-+              I Wait TERM
++              I TERM_UTF8 -geometry 38x30+0-0
++              I Wait URxvt
 +              I GotoDeskAndPage 0 1 0
 +              I TERM_KOI8 -e su -
 +              I Wait TERM
 +              I PaVuControl
 +              I Wait "Volume Control"
 +              I GotoDeskAndPage 0 1 0
 +              I TERM_KOI8 -e su -
 +              I Wait TERM
 +              I PaVuControl
 +              I Wait "Volume Control"
++              I Exec exec "$HOME"/current/projects/audio-cdr-video/audio/pa-mic-off
 +              I FireFox
 +              I FireFox
-+              I Wait "*Mozilla Firefox"
 +              I GotoDeskAndPage 1 0 1
 +              I TERM_KOI8
 +              I Wait TERM
 +              I GotoDeskAndPage 1 0 1
 +              I TERM_KOI8
 +              I Wait TERM
@@ -501,6 +498,20 @@ AddToFunc "StartStandardSession"
 +              I GotoDeskAndPage 1 1 0
 +              I Schedule 1000 GotoDeskAndPage 0 1 0
 
 +              I GotoDeskAndPage 1 1 0
 +              I Schedule 1000 GotoDeskAndPage 0 1 0
 
+DestroyFunc ResumeFunction
+AddToFunc ResumeFunction
++              I GotoDeskAndPage 0 0 0
++              I TERM_KOI8
++              I Wait TERM
++              I PaVuControl
++              I Wait "Volume Control"
++              I Exec sleep 10; exec "$HOME"/current/projects/audio-cdr-video/audio/pa-mic-off
++              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 -
++              I Wait gxmessage
++              I Any ("*Mozilla Firefox") GotoDeskAndPage 0 1 0
++              I TestRc (Match) Break
++              I None ("*Mozilla Firefox") FireFox
++              I Schedule 2500 GotoDeskAndPage 0 1 0
 
 ############################################################################
 # COMPLEX FUNCTIONS
 
 ############################################################################
 # COMPLEX FUNCTIONS
@@ -509,47 +520,61 @@ DestroyFunc Center
 AddToFunc Center                I Move 50-50w 50-50w
 +                               I WarpToWindow 74p 18p
 
 AddToFunc Center                I Move 50-50w 50-50w
 +                               I WarpToWindow 74p 18p
 
+DestroyFunc Iconify-and-Raise
 AddToFunc Iconify-and-Raise     I Iconify
 +                               I Raise
 
 AddToFunc Iconify-and-Raise     I Iconify
 +                               I Raise
 
+DestroyFunc Maximize-Func
 AddToFunc Maximize-Func         C Maximize     toggle
 +                               D Maximize     100 100
 
 AddToFunc Maximize-Func         C Maximize     toggle
 +                               D Maximize     100 100
 
+DestroyFunc Move-or-Iconify
 AddToFunc Move-or-Iconify       I Raise
 +                               M Move
 +                               D Iconify
 
 AddToFunc Move-or-Iconify       I Raise
 +                               M Move
 +                               D Iconify
 
+DestroyFunc Move-or-Raise
 AddToFunc Move-or-Raise         I Raise
 +                               M Move
 +                               D Lower
 
 AddToFunc Move-or-Raise         I Raise
 +                               M Move
 +                               D Lower
 
+DestroyFunc Move-or-Raise2
 AddToFunc Move-or-Raise2        M Raise
 +                               M Move
 +                               D Lower
 
 AddToFunc Move-or-Raise2        M Raise
 +                               M Move
 +                               D Lower
 
+DestroyFunc Resize-or-Raise
 AddToFunc Resize-or-Raise       I Raise
 +                               M Resize
 +                               D Lower
 
 AddToFunc Resize-or-Raise       I Raise
 +                               M Resize
 +                               D Lower
 
+DestroyFunc Resize-or-Raise2
 AddToFunc Resize-or-Raise2      M Raise
 +                               M Resize
 +                               D Lower
 
 AddToFunc Resize-or-Raise2      M Raise
 +                               M Resize
 +                               D Lower
 
+DestroyFunc Shadify
 AddToFunc Shadify               D WindowShade
 +                               M Move
 +                               C RaiseLower
 
 AddToFunc Shadify               D WindowShade
 +                               M Move
 +                               C RaiseLower
 
+DestroyFunc warp-or-run
 AddToFunc warp-or-run           I Next [$0 CirculateHit] Iconify -1
 +                               I Next [$0 CirculateHit] Focus
 +                               I None [$0] $1
 
 AddToFunc warp-or-run           I Next [$0 CirculateHit] Iconify -1
 +                               I Next [$0 CirculateHit] Focus
 +                               I None [$0] $1
 
+DestroyFunc MailFunction
 AddToFunc MailFunction          I Next [$0] Iconify -1
 +                               I Next [$0] focus
 +                               I None [$0] Exec exec $0 $1
 
 AddToFunc MailFunction          I Next [$0] Iconify -1
 +                               I Next [$0] focus
 +                               I None [$0] Exec exec $0 $1
 
+DestroyFunc PrintFunction
 AddToFunc PrintFunction         I Raise
 +                               I Exec exec xdpr -id $w
 
 AddToFunc PrintFunction         I Raise
 +                               I Exec exec xdpr -id $w
 
+DestroyFunc Raise-All
+AddToFunc Raise-All           I All (!"FvwmButtons|System|*clock") Raise
+
 ##############################################################################
 # User-defined functions
 #
 ##############################################################################
 # User-defined functions
 #
@@ -563,18 +588,10 @@ DestroyFunc Id3Info
 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 -
 changequote([`], ['])
 
 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 -
 changequote([`], ['])
 
-#DestroyFunc Audacious
-#AddToFunc Audacious           I GotoDeskAndPage 0 1 1
-#+                             I Exec LC_CTYPE=ru_RU.UTF-8 exec audacious
-
 DestroyFunc DeadBeef
 AddToFunc DeadBeef            I GotoDeskAndPage 0 1 1
 +                             I Exec exec deadbeef
 
 DestroyFunc DeadBeef
 AddToFunc DeadBeef            I GotoDeskAndPage 0 1 1
 +                             I Exec exec deadbeef
 
-DestroyFunc SMPlayer
-AddToFunc SMPlayer            I GotoDeskAndPage 0 1 1
-+                             I Exec exec smplay -no-close-at-end
-
 DestroyFunc Term-Phdru
 AddToFunc Term-Phdru          I GotoDeskAndPage 1 0 1
 +                             I REMOTE_HOST_KOI8(phdru.name, phdru.name)
 DestroyFunc Term-Phdru
 AddToFunc Term-Phdru          I GotoDeskAndPage 1 0 1
 +                             I REMOTE_HOST_KOI8(phdru.name, phdru.name)
@@ -584,8 +601,13 @@ AddToFunc Term-Phdru-Big      I GotoDeskAndPage 1 0 1
 +                             I REMOTE_HOST_KOI8_BIG(phdru.name, phdru.name)
 
 DestroyFunc FireFox
 +                             I REMOTE_HOST_KOI8_BIG(phdru.name, phdru.name)
 
 DestroyFunc FireFox
-AddToFunc FireFox             I GotoDeskAndPage 1 0 0
+AddToFunc FireFox             I Any ("*Mozilla Firefox") Break
++                             I GotoDeskAndPage 1 0 0
 +                             I Exec LC_CTYPE=ru_RU.KOI8-R exec start-browser firefox
 +                             I Exec LC_CTYPE=ru_RU.KOI8-R exec start-browser firefox
++                             I Wait "*Mozilla Firefox"
++                             I All ("*Mozilla Firefox") Lower
++                             I Exec webbrowserX -n file:///home/phd/Internet/WWW/misc/index.html; exec webbrowserX -t file:///home/phd/Internet/WWW/misc/internet.html
++                             I Wait "*Mozilla Firefox"
 
 DestroyFunc Gajim
 AddToFunc Gajim               I GotoDeskAndPage 1 1 0
 
 DestroyFunc Gajim
 AddToFunc Gajim               I GotoDeskAndPage 1 1 0
@@ -595,17 +617,6 @@ DestroyFunc Pidgin
 AddToFunc Pidgin              I GotoDeskAndPage 1 1 0
 +                             I Exec exec pidgin
 
 AddToFunc Pidgin              I GotoDeskAndPage 1 1 0
 +                             I Exec exec pidgin
 
-DestroyFunc Raise-All
-AddToFunc Raise-All           I All (!"FvwmButtons|System|*clock") Raise
-
-DestroyFunc UrgencyFunc
-AddToFunc UrgencyFunc
-+                             I Iconify off
-+                             I ThisWindow ("*Downloads") Break
-+                             I FlipFocus
-+                             I Raise
-+                             I WarpToWindow 5p 5p
-
 ##############################################################################
 # MENU Setup
 #
 ##############################################################################
 # MENU Setup
 #
@@ -628,7 +639,7 @@ AddToMenu Window-Ops    "Window Ops"    Title
 +                       "Refresh Screen" Refresh
 
 # A trimmed down version of "Window Ops", good for binding to decorations
 +                       "Refresh Screen" Refresh
 
 # A trimmed down version of "Window Ops", good for binding to decorations
-DestroyMenu "Window-Ops2"
+DestroyMenu Window-Ops2
 AddToMenu Window-Ops2   "Center"        Center
 +                       "Move"          Move-or-Raise
 +                       "Iconify"       Iconify
 AddToMenu Window-Ops2   "Center"        Center
 +                       "Move"          Move-or-Raise
 +                       "Iconify"       Iconify
@@ -767,7 +778,6 @@ AddToMenu Utilities     "Choose one:" Title
 #+                       "xbuffy" Exec exec xbuffy -fn 'XBUFFY_FONT' -geometry +0+125 -boxfile mail/misc/.xbuffyrc
 +                       ""       Nop
 +                       "pavucontrol" PaVuControl
 #+                       "xbuffy" Exec exec xbuffy -fn 'XBUFFY_FONT' -geometry +0+125 -boxfile mail/misc/.xbuffyrc
 +                       ""       Nop
 +                       "pavucontrol" PaVuControl
-#+                       "audacious"   Audacious
 +                       "DeadBeef"    DeadBeef
 +                       "Id3Info"     Id3Info
 +                       "Gajim"       Gajim
 +                       "DeadBeef"    DeadBeef
 +                       "Id3Info"     Id3Info
 +                       "Gajim"       Gajim
@@ -789,8 +799,8 @@ AddToMenu Utilities     "Choose one:" Title
 DestroyMenu  Browsers
 AddToMenu Browsers      "Choose one:" Title
 +                       "FireFox" FireFox
 DestroyMenu  Browsers
 AddToMenu Browsers      "Choose one:" Title
 +                       "FireFox" FireFox
-+                       "Chromium" Exec LC_CTYPE=ru_RU.KOI8-R exec start-browser chromium
-+                       "Opera" Exec LC_CTYPE=ru_RU.KOI8-R exec start-browser opera
++                       "Chromium" None ("*Chromium") Exec LC_CTYPE=ru_RU.KOI8-R exec start-browser chromium
++                       "Opera" None ("*Opera") Exec LC_CTYPE=ru_RU.KOI8-R exec start-browser opera
 
 # A wide variety of screenlocking options...
 #AddToMenu XlockMenu     "Choose one:" Title
 
 # A wide variety of screenlocking options...
 #AddToMenu XlockMenu     "Choose one:" Title
@@ -817,26 +827,26 @@ AddToMenu XScreenSaverMenu     "Choose mode:" Title
 +                       "Kill Screen Saver"         Exec exec xscreensaver-command -exit
 
 AddToMenu XSetBgMenu    "XSetBg" Title
 +                       "Kill Screen Saver"         Exec exec xscreensaver-command -exit
 
 AddToMenu XSetBgMenu    "XSetBg" Title
-+                       "Change wallpaper" Exec exec "$HOME"/admin/prog/xsetbg/xsetbg-force
-+                       "Start" Exec exec "$HOME"/admin/prog/xsetbg/xsetbg-http-start
-+                       "Stop" Exec exec "$HOME"/admin/prog/xsetbg/xsetbg-http-stop
-+                       "Restart" Exec exec "$HOME"/admin/prog/xsetbg/xsetbg-http-restart
++                       "Change wallpaper" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-force
++                       "Start" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-start
++                       "Stop" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-stop
++                       "Restart" Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-restart
 +                       ""       Nop
 changequote([,])
 +                       ""       Nop
 changequote([,])
-+                       "Xli" Exec fn="`$HOME/admin/prog/xsetbg/print-filename.py -e koi8-r`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" "$fn"
-+                       "Xli (scaled)" Exec fn="`$HOME/admin/prog/xsetbg/print-filename.py -e koi8-r`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" -zoom auto "$fn"
-+                       "Open in browser" Exec exec webbrowserX -n "`$HOME/admin/prog/xsetbg/print-filename.py -e koi8-r`"
-+                       "Filename" Exec exec "$HOME"/admin/prog/xsetbg/print-filename.py -e koi8-r
-+                       "XFilename" Exec "$HOME"/admin/prog/xsetbg/print-filename.py | text-wrap.py -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
-+                       "XFilename (wrapped)" Exec "$HOME"/admin/prog/xsetbg/print-filename.py | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
++                       "Xli" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" "$fn"
++                       "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"
++                       "Open in browser" Exec exec webbrowserX -n "`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r`"
++                       "Filename" Exec exec "$HOME"/current/projects/xsetbg/print-filename.py -e koi8-r
++                       "XFilename" Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
++                       "XFilename (wrapped)" Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
 +                       ""       Nop
 +                       ""       Nop
-+                       "Xli (prev.)" Exec fn="`$HOME/admin/prog/xsetbg/print-filename.py -e koi8-r -o`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" "$fn"
-+                       "Xli (prev., scaled)" Exec fn="`$HOME/admin/prog/xsetbg/print-filename.py -e koi8-r -o`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" -zoom auto "$fn"
-+                       "Open in browser (prev.)" Exec exec webbrowserX -n "`$HOME/admin/prog/xsetbg/print-filename.py -e koi8-r -o`"
++                       "Xli (prev.)" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r -o`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" "$fn"
++                       "Xli (prev., scaled)" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r -o`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" -zoom auto "$fn"
++                       "Open in browser (prev.)" Exec exec webbrowserX -n "`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r -o`"
 changequote([`], ['])
 changequote([`], ['])
-+                       "Filename (prev.)" Exec exec "$HOME"/admin/prog/xsetbg/print-filename.py -e koi8-r -o
-+                       "XFilename (prev.)" Exec "$HOME"/admin/prog/xsetbg/print-filename.py -o | text-wrap.py -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
-+                       "XFilename (prev., wrapped)" Exec "$HOME"/admin/prog/xsetbg/print-filename.py -o | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
++                       "Filename (prev.)" Exec exec "$HOME"/current/projects/xsetbg/print-filename.py -e koi8-r -o
++                       "XFilename (prev.)" Exec "$HOME"/current/projects/xsetbg/print-filename.py -o | text-wrap.py -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
++                       "XFilename (prev., wrapped)" Exec "$HOME"/current/projects/xsetbg/print-filename.py -o | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
 
 ############################################################################
 # FvwmBacker
 
 ############################################################################
 # FvwmBacker
@@ -844,7 +854,7 @@ changequote([`], ['])
 #*FvwmBacker: Command (Desk 0, Page * *) -solid DarkCyan
 #*FvwmBacker: Command (Desk 1, Page * *) -solid steelblue
 #*FvwmBacker: Command (Desk 2, Page * *) -solid midnightblue
 #*FvwmBacker: Command (Desk 0, Page * *) -solid DarkCyan
 #*FvwmBacker: Command (Desk 1, Page * *) -solid steelblue
 #*FvwmBacker: Command (Desk 2, Page * *) -solid midnightblue
-*FvwmBacker: Command (Desk *, Page * *) Exec exec "$HOME"/admin/prog/xsetbg/xsetbg-http-change
+*FvwmBacker: Command (Desk *, Page * *) Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-change
 
 ############################################################################
 # FvwmButtons
 
 ############################################################################
 # FvwmButtons
@@ -854,8 +864,7 @@ changequote([`], ['])
 *FvwmButtons: Back rgb:90/80/90
 
 # Font
 *FvwmButtons: Back rgb:90/80/90
 
 # Font
-*FvwmButtonsFont        BUTTONS_FONT
-*FvwmButtons: Font      BUTTONS_FONT
+*FvwmButtons: Font BUTTONS_FONT
 
 # Geometry-- really likes to pick its own size, but giving a position is OK
 *FvwmButtons: Geometry -1+1
 
 # Geometry-- really likes to pick its own size, but giving a position is OK
 *FvwmButtons: Geometry -1+1
@@ -868,40 +877,27 @@ changequote([`], ['])
 # Background
 #*FvwmButtons: Pixmap fvwm.xpm
 
 # Background
 #*FvwmButtons: Pixmap fvwm.xpm
 
-
 # Define the buttons to use.....
 #*FvwmButtons: Move              arrows2.xpm     Move
 #*FvwmButtons: Kill              skull.xpm       Destroy
 #*FvwmButtons: Quit              nuke.xpm        Popup "Quit-Verify"
 
 # Define the buttons to use.....
 #*FvwmButtons: Move              arrows2.xpm     Move
 #*FvwmButtons: Kill              skull.xpm       Destroy
 #*FvwmButtons: Quit              nuke.xpm        Popup "Quit-Verify"
 
-#*FvwmButtons: (de)Iconify       eyenew.xpm      Iconify
-#*FvwmButtons: Restart eye2.xpm     Restart
-#*FvwmButtons: Xcalc   rcalc.xpm   Exec "Calculator" exec xcalc
-#*FvwmButtons: junk   3dx.xpm     Swallow "xload"  xload -bg \#908090
-#*FvwmButtons: xmter x.xpm            Swallow "xmter" xmter
-#*FvwmButtons: ""  clock.xpm   Swallow "xclock" xclock -bg \#908090 -padding 0
-#*FvwmButtons: "" 3dx.xpm Swallow "Time 3D" t3d -fg \#908090 -mag .3 -wobber 0
-
 #*FvwmButtons: (Swallow XClock 'Exec exec xclock -update 1 -geometry -3000-3000')
 #*FvwmButtons: (Swallow XClock 'Exec exec xclock -update 1 -geometry -3000-3000')
-#*FvwmButtons: news    page.xpm   TERM_KOI8 -title "Tin" -fn 10x20 -fg white -cr white -bg black -e tin
-#*FvwmButtons: Minicom mini-connect.xpm TERM_KOI8 -title "Minicom" -fg white -cr white -bg black -e minicom
-#*FvwmButtons: Real    bell.xpm    Exec cd /opt/audio && exec realplay
-#*FvwmButtons: Kill    rbomb.xpm    Destroy
-
 
 # Buttons
 
 # Buttons
+pushdef(`TERM_KOI8', `Exec "TERM" LC_CTYPE=ru_RU.KOI8-R exec TERM')
+pushdef(`TERM_UTF8', `Exec "URxvt" exec "$HOME"/lib/X11/utf8rxvt')
 *FvwmButtons: (Title Term,     Icon rterm2.xpm,      Action TERM_KOI8)
 *FvwmButtons: (Title UTF-8,    Icon rterm2.xpm,      Action TERM_UTF8)
 *FvwmButtons: (Title Term,     Icon rterm2.xpm,      Action TERM_KOI8)
 *FvwmButtons: (Title UTF-8,    Icon rterm2.xpm,      Action TERM_UTF8)
-*FvwmButtons: (Title phdru,    Icon xterm-sgi.xpm,   Action Term-Phdru)
+*FvwmButtons: (Title phdru,    Icon xterm-sgi.xpm,   Action REMOTE_HOST_KOI8(phdru.name, phdru.name))
+popdef(`TERM_KOI8', `TERM_UTF8')
 
 
-*FvwmButtons: (Title Wallpaper, Icon find1.xpm,        Action Exec $HOME/admin/prog/xsetbg/print-filename.py | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -)
-*FvwmButtons: (Title "-1",      Icon find1.xpm,        Action Exec $HOME/admin/prog/xsetbg/print-filename.py -o | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -)
-*FvwmButtons: (Title Next,      Icon Jrecycle.xpm,     Action Exec exec "$HOME"/admin/prog/xsetbg/xsetbg-http-force)
-*FvwmButtons: (Title pavucontrol, Icon mini.sound.xpm, Action PaVuControl)
+*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 -)
+*FvwmButtons: (Title "-1",      Icon find1.xpm,        Action Exec "gxmessage" "$HOME"/current/projects/xsetbg/print-filename.py -o | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -)
+*FvwmButtons: (Title Next,      Icon Jrecycle.xpm,     Action Exec exec "$HOME"/current/projects/xsetbg/xsetbg-http-force)
+*FvwmButtons: (Title pavucontrol, Icon mini.sound.xpm, Action Exec "Volume Control" exec pavucontrol)
 #*FvwmButtons: (Title Id3Info,  Icon bell.xpm,         Action Id3Info)
 #*FvwmButtons: (Title Id3Info,  Icon bell.xpm,         Action Id3Info)
-#*FvwmButtons: (Title Audacious, Icon bell.xpm,        Action Audacious)
-*FvwmButtons: (Title DeadBeef,  Icon bell.xpm,         Action DeadBeef)
-#*FvwmButtons: (Title SMPlayer,  Icon bell.xpm,        Action SMPlayer)
+*FvwmButtons: (Title DeadBeef,  Icon bell.xpm,         Action Exec "DeaDBeeF-*" exec deadbeef)
 #*FvwmButtons: (Title XLock,     Icon Jxlock.xpm,      Action Exec exec xscreensaver-command -lock)
 
 ############################################################################
 #*FvwmButtons: (Title XLock,     Icon Jxlock.xpm,      Action Exec exec xscreensaver-command -lock)
 
 ############################################################################
@@ -1056,7 +1052,7 @@ changequote([`], ['])
 *FvwmPager: Label 0 System
 *FvwmPager: Label 1 Net
 *FvwmPager: Label 2 Work
 *FvwmPager: Label 0 System
 *FvwmPager: Label 1 Net
 *FvwmPager: Label 2 Work
-*FvwmPager: SmallFont PAGER_FONT
+*FvwmPager: SmallFont SMALL_PAGER_FONT
 
 *FvwmPager: Balloons All
 *FvwmPager: BalloonBack #efe3b5
 
 *FvwmPager: Balloons All
 *FvwmPager: BalloonBack #efe3b5