quake.fvwm2rc
Style Quake Sticky, WindowListSkip, StaysOnTop, \
CirculateSkip, !Title, !Handles, BorderWidth 1
SetAnimation 20 0 .01 .02 .04 .08 .16 .32 .64 1
DestroyFunc QuakeTerminal
AddToFunc QuakeTerminal
+ I Next (Quake, CirculateHit) ToggleQuakeTerminal
+ I TestRc (NoMatch) StartQuakeTerminal
DestroyFunc ToggleQuakeTerminal
AddToFunc ToggleQuakeTerminal
+ I ThisWindow (Visible) AnimatedMove +0p -100
+ I TestRc (Match) KeepRc Next (HasPointer) Focus
+ I TestRc (NoMatch) KeepRc ThisWindow Move +0p +0p
+ I TestRc (NoMatch) ThisWindow Focus
DestroyFunc StartQuakeTerminal
AddToFunc StartQuakeTerminal
+ I Exec exec rxvt -title Quake -e screen -S Quake -R
+ I Wait Quake
+ I Next (Quake, CirculateHit) ResizeMove 100 60 +0p +0p
AddToFunc StartFunction
+ I Test (Restart) Next (Quake, CirculateHit) Move +0p -100
+ I Test (Quit) Next (Quake, CirculateHit) Destroy
Module FvwmAuto 40 -mleave "Silent ThisWindow (Quake) AnimatedMove +0p -100"
In StartFunction
+ I Module FvwmCommandS
A script named quake contains simply
FvwmCommand 'QuakeTerminal'
Then I can type for example in quake term
sleep 20
quake
The term will be back after 20 seconds.
Another example:
sudo portsnap fetch update; quake
will pop up the quake window when port update is done.