[comp.windows.x] 'uwm' startup file

gancarz@decvax.UUCP (02/04/87)

Following is the .uwmrc file I use with the 'uwm' window manager
under X.  I'm posting it because it's kind of a "kitchen sink"
startup file that shows lots of things you can do.  It also
incorporates several useful tricks I've picked up from others.

Notes:
1. Hostnames have been changed in the interest of security (Huh? X
   is a secure system, isn't it? :-)
2. The "browse" command is a simple shell script that runs a command
   and waits for a <CR> on stdin.
3. "sudo", the Grand Canyon of security holes, runs any command SETUID root.
4. Various other scripts are called from menus.  Try and guess what
   they do.
5. I don't care if you don't like my color choices.  I like 'em.
6. If some of the bindings seem kind of strange, think about them
   a while.  Some of their uses are not obvious.


Of course, Digital Equipment Corporation will not be liable for real
or imagined damages which may occur as a consequence of using this thing.
As for support...

--Mike



=============================== <CUT HERE> =================================
#
# UWM Startup File
# Author: Mike Gancarz
#
# GLOBAL VARIABLES
#
resetvariables;resetbindings;resetmenus
#reverse
autoselect
delta=25
freeze
grid
normali
nonormalw
hiconpad=5
hmenupad=6
iconfont=oldengssx
menufont=timrom12b
push=1
pushabsolute
resizefont=helv12b
viconpad=5
vmenupad=3
volume=4
#zap
maxcolors=0

#
# BUTTON-KEY BINDINGS
#
# FUNCTION	KEYS	CONTEXT		MOUSE BUTTON ACTIONS
f.newiconify=	meta	:window|icon:	left delta
f.lower=	meta	:window|icon:	left up
f.iconify=	meta	:window:	middle delta
f.iconify=	meta	:icon:		middle down
f.iconify=	meta	:window|icon:	middle up
f.moveopaque=	meta	:window|icon:	right down
f.raise=	meta	:window|icon:	right up
f.circledown=	meta	:root       :	left down
f.circleup=	meta	:root       :	right down
f.newiconify=	lock	:window|icon:	left delta
f.lower=	lock	:window|icon:	left up
f.iconify=	lock	:window|icon:	middle down
f.move=		lock	:window|icon:	right down
f.circleup=	lock	:root       :	left down
f.beep = 	lock	:root       :	middle down
f.circledown=	lock	:root	    :	right down
f.menu =	m|s	:	    :	left down :"WINDOW OPS"
f.menu = 	m|s	:	    :	left down :" MISCELLANEOUS "
f.menu =	m|s	:	    :	left down :" XTERMS"
f.pushleft = 	m|s	:window|icon:	middle down
f.pushright = 	m|s	:window|icon:	right down
f.pushup = 	m|c	:window|icon:	middle down
f.pushdown = 	m|c	:window|icon:	right down

#
# Unused bindings
#
#f.restart =    c|s    :root   :       left down
#f.beep = 	c|s    :root   :       left down

#
# MENU SPECIFICATIONS
#
#menu = "WINDOW OPS" (White:Black:Black:"#ef0fef") {
menu = "WINDOW OPS" (White:Black:Black:White) {
"(De)Iconify":(White:"#2f0f2f"):	f.iconify
Move:(White:"#4f0f4f"):			f.move
Resize:(White:"#6f0f6f"):		f.resize
Lower:(White:"#8f0f8f"):		f.lower
Raise:(White:"#af0faf"):		f.raise
Solid Move:(White:"#cf0fcf"):		f.moveopaque
"Others      -->":(White:"#cf0fcf"):	f.menu:"EXTENDED WINDOW OPS"
}

menu = "EXTENDED WINDOW OPS" (White:Black:Black:Turquoise) {
Iconify at New Position:(White:"#ff0000"):	f.newiconify
Focus Keyboard on Window:(White:"#d00000"):	f.focus
Freeze Server:(White:"#b00000"):		f.pause
UnFreeze Server:(White:"#900000"):		f.continue
Circulate Windows Up:(White:"#700000"):		f.circleup
Circulate Windows Down:(White:"#500000"):	f.circledown
Refresh Entire Screen:(White:"#300000"):	f.refresh
}

menu = " XTERMS" (White:Black:Red:White) {
*Local*:(White:Black):!"xterm =80x24+0+0 -n local -bw 5 -bd Black -cr Black&"
Daniel:(White:Blue):!"xterm =80x24+0+0 -s -bw 5 -bd Blue -cr Blue -e daniel&"
Amos:(White:Blue):!"xterm =80x24+0+0 -s -bw 5 -bd Blue -cr Blue -e amos&"
Decvax:(White:Black):!"xterm =80x24+0+0 -s -bw 5 -bd Black -cr Black -e decvax&"
James:(White:"#004900"):!"xterm =80x24+0+0 -s -bw 5 -fg White -bg '#004900' -bd '#ffff00' -cr Red -e james&"
Peter:(White:YellowGreen):!"xterm =80x24+0+0 -s -bw 5 -fg White -bg '#004900' -bd YellowGreen -cr Red -e peter&"
Timothy:(White:Magenta):!"xterm =80x24+0+0 -s -bw 5 -bd Magenta -cr Magenta -e timothy&"
John:(White:Magenta):!"xterm =80x24+0+0 -s -bw 5 -bd Magenta -cr Magenta -e john&"
David:(White:Red):!"xterm =80x24+0+0 -s -bw 5 -bd Red -cr Red -e david&"
Isaiah:(White:Red):!"xterm =80x24+0+0 -s -bw 5 -bd Red -cr Red -e isaiah&"
"Unsized        -->":(White:"#222222"):f.menu :"UNSIZED XTERMS"
"Dave's Xterms  -->":(White:"#aaaaaa"):f.menu :"DAVE'S XTERMS"
"Full-sized     -->":(White:"#666666"):f.menu :"LONG XTERMS"
}

menu = "LONG XTERMS" {
*Local*:!"xterm =80x65+0+0 -n Local -bw 5 -bd Black -cr Black&"
Daniel:!"xterm =80x65+0+0 -n Abyss -s -bw 5 -bd Blue -cr Blue -e daniel&"
Amos:!"xterm =80x65+0+0 -s -bw 5 -bd Blue -cr Blue -e amos&"
Decvax:!"xterm =80x65+0+0 -n Decvax -s -bw 5 -bd Black -cr Black -e decvax&"
James:!"xterm =80x65+0+0 -n Gorge -s -bw 5 -fg White -bg '#004900' -bd '#ffff00' -cr Red -e james&"
Peter:!"xterm =80x65+0+0 -s -bw 5 -fg White -bg '#004900' -bd YellowGreen -cr Red -e peter&"
Timothy:!"xterm =80x65+0+0 -s -bw 5 -bd Magenta -cr Magenta -e timothy&"
John:!"xterm =80x65+0+0 -n Preemie -s -bw 5 -bd Magenta -cr Magenta -e john&"
David:!"xterm =80x65+0+0 -n Ravine -s -bw 5 -bd Red -cr Red -e david&"
Isaiah:!"xterm =80x65+0+0 -s -bw 5 -bd Red -cr Red -e isaiah&"
}

menu = "UNSIZED XTERMS" {
*Local*:!"xterm -n local -bw 5 -bd Black -cr Black&"
Daniel:!"xterm -s -bw 5 -bd Blue -cr Blue -e daniel&"
Amos:!"xterm -s -bw 5 -bd Blue -cr Blue -e amos&"
Decvax:!"xterm -s -bw 5 -bd Black -cr Black -e decvax&"
James:!"xterm -s -bw 5 -fg White -bg '#004900' -bd '#ffff00' -cr Red -e james&"
Peter:!"xterm -s -bw 5 -fg White -bg '#004900' -bd YellowGreen -cr Red -e peter&"
Timothy:!"xterm -s -bw 5 -bd Magenta -cr Magenta -e timothy&"
John:!"xterm -s -bw 5 -bd Magenta -cr Magenta -e john&"
David:!"xterm -s -bw 5 -bd Red -cr Red -e david&"
Isaiah:!"xterm -s -bw 5 -bd Red -cr Red -e isaiah&"
}

menu = " MISCELLANEOUS " (White:Black:Black:White){
"Cut Buffer Strings -->":(White:SkyBlue):f.menu:"CUT BUFFER STRINGS"
"Handy Commands   -->":(White:CornflowerBlue):f.menu:"HANDY COMMANDS"
"STDFILE Menu     -->":(White:SkyBlue):f.menu:"`STDFILE' MENU"
"User Preferences -->":(White:CornflowerBlue):f.menu:"PREFERENCES"
"Demos Menu       -->":(White:SkyBlue):f.menu:"      DEMOS MENU      "
"Set Colors Menu  -->":(White:CornflowerBlue):f.menu:"SET COLORS"
}

menu = "`STDFILE' MENU" (White:Black:Yellow:Black) {
Edit STDFILE:(Black:Yellow):!"xterm -i =80x65+5+5 -s -bw 3 -bd Black -bg YellowGreen -fg Black -cr Red -e vi `cat $HOME/STDFILE`&"
Set & Edit STDFILE:(Black:Yellow):!"xterm -i =80x65+5+5 -s -bw 3 -bd Black -bg YellowGreen -fg Black -cr Red -e esetstdfile&"
Set STDFILE:(Black:Yellow):!"xterm -i =40x3+100+100 -s -bw 3 -bd VioletRed -bg Aquamarine -fg Black -cr Red -e setstdfile&"
}

menu = "CUT BUFFER STRINGS" (White:Black:White:Red) {
"Setup Terminal Emulator":(Black:White):^"xs;setclear;setenv DISPLAY `rsh decvax cat DISPLAY`;clear"
"Make > tmp &":(Black:White):^"rm -f tmp;make >tmp&"
"tail -f tmp":(Black:White):^"clear;tail -f tmp"
"Xted":(Black:White):^"xted -i &"
"biff n":(Black:White):^"biff n"
"xterm -fn 9x15 ...":(Black:White):|"xterm -fn 9x15 "
"Clear Screen":(Black:White):^clear
}

menu = "HANDY COMMANDS" (White:Black:Black:White) {
Edit .uwmrc:(LimeGreen:SeaGreen):!"xterm -i =80x65+5+5 -s -bw 3 -bd Black -bg NavyBlue -fg Yellow -cr Red -e vi $HOME/.uwmrc&"
Restart Window Manager:(SeaGreen:LimeGreen):f.restart
#Exit Window Manager:(LimeGreen:SeaGreen):f.exit
Vi Editor:(SeaGreen:LimeGreen):!"xterm -i =80x65+5+5 -s -bw 3 -bd Black -bg NavyBlue -fg Yellow -cr Red -e vi&"
Mail Window:(LimeGreen:SeaGreen):!"xterm =+0+0 -s -bw 5 -bd Red -cr Red -e rsh decvax mail&"
Restart X Server:(SeaGreen:LimeGreen):f.menu:"RESTART SERVER: Are you sure?"
Shutdown:(LimeGreen:SeaGreen):f.menu:"SHUTDOWN: Are you sure?"
Xted Editor:(SeaGreen:LimeGreen):!"xted -i &"
1987 Calendar:(LimeGreen:SeaGreen):!"xterm =67x38+2+2 -n 1986 -bw 3 -bd Black -bg Yellow -fg NavyBlue -e browse cal 1987&"
Monthly Calendar:(SeaGreen:LimeGreen):!"xterm =24x9+790+648 -n `cal|awk 'NR == 1 {print $1;exit}'` -bw 3 -bd Red -bg White -fg Black -e browse cal&"
}

menu = "SHUTDOWN: Are you sure?" (White:Black:White:Red) {
No:(Black:White):	!""
Yes:(Black:White):	!"sudo /etc/shutdown -h now"
}

menu = "RESTART SERVER: Are you sure?" (White:Black:White:Red) {
No:(Black:White):	!""
Yes:(Black:White):	!"$HOME/bin/restartX&"
}

menu = "      DEMOS MENU      " (White:Black:Black:White) {
"XDemos Menu -->":(Yellow:NavyBlue):	f.menu:" X DEMOS "
"Imaging Menu -->":(NavyBlue:Yellow):	f.menu:"IMAGING DEMOS"
"Multi-windows Menu -->":(Yellow:NavyBlue):f.menu:"MULTI-WINDOWS MENU"
"Multi-XDemos Menu -->":(NavyBlue:Yellow):f.menu:"MULTI-XDEMOS MENU"
"XWhiz Menu -->":(Yellow:NavyBlue):	f.menu:"XWHIZ MENU"
"XTed Demo":(NavyBlue:Yellow):		!"$HOME/demos/demo2 &"
"Pikapix Demo":(Yellow:NavyBlue):	!"/usr/local/pikapix &"
}

menu = " X DEMOS " (White:Black:Black:White) {
"Others -->":(Firebrick:White):f.menu:"MORE X DEMOS"
Balls:(Black:Yellow):!"/bin/nice -20 xdemo -bd=Red -bg=Yellow -fg=Black balls &"
Bounce:(White:Cyan):!"/bin/nice -20 xdemo -bd=Violet -bg=Cyan -fg=White bounce &"
Circle:(Yellow:BlueViolet):!"/bin/nice -20 xdemo -bd=Orange -bg=BlueViolet -fg=Yellow circle &"
Circles:(Blue:Red):!"/bin/nice -20 xdemo -bd=NavyBlue -bg=Red -fg=Blue circles &"
Lines:(MidnightBlue:White):!"/bin/nice -20 xdemo -bd=Yellow -bg=White -fg=MidnightBlue lines &"
Plaid:(DarkOliveGreen:Sienna):!"/bin/nice -20 xdemo -bd=Black -bg=Sienna -fg=DarkOliveGreen plaid &"
Star:(Violet:Black):!"/bin/nice -20 xdemo -bd=Orange -bg=Black -fg=Violet star &"
}

menu = "MORE X DEMOS" (White:Black:Black:White) {
Colors:(White:"#0000ff"):!"/bin/nice -20 xdemo colors &"
Cookie:(White:"#0000ef"):!"/bin/nice -20 xdemo cookie &"
Draw:(White:"#0000df"):!"/bin/nice -20 xdemo draw &"
Life:(White:"#0000cf"):!"/bin/nice -20 xdemo life &"
Menulife:(White:"#0000bf"):!"/bin/nice -20 xdemo menulife &"
Motion:(White:"#0000af"):!"/bin/nice -20 xdemo motion &"
Qix:(White:"#00009f"):!"/bin/nice -20 xdemo qix &"
Rgb:(White:"#00008f"):!"/bin/nice -20 xdemo rgb &"
Slide:(White:"#00007f"):!"/bin/nice -20 xdemo -fg=Blue -bg=YellowOrange slide &"
Tetra:(White:"#00006f"):!"/bin/nice -20 xdemo tetra &"
Wallpaper:(White:"#00005f"):!"/bin/nice -20 xdemo wallpaper &"
Web:(White:"#00004f"):!"/bin/nice -20 xdemo web &"
Xor:(White:"#00003f"):!"/bin/nice -20 xdemo xor &"
}

menu = "MULTI-WINDOWS MENU" (White:Black:Black:White) {
Run:(Black:White):!"$HOME/demos/demo1 &"
Kill:(Black:White):!"$HOME/demos/kill_xterm &"
}

menu = "MULTI-XDEMOS MENU" (:::) {
Run:(:):!"$HOME/demos/demo3 &"
Kill:(:):!"$HOME/demos/kill_xdemo &"
}

menu = "XWHIZ MENU" (White:Black:Black:White) {
Run default:(Red:Blue):!"/bin/nice -20 xwhiz &"
Run standard:(Blue:Red):!"/bin/nice -20 xwhiz -border 0 =1024x864 &"
Run wide:(Red:Blue):!"/bin/nice -20 xwhiz -border 0 -bheight 4 -bwidth 2 =1024x864 &"
Kill:(Blue:Red):!"$HOME/demos/kill_xwhiz &"
}

menu = "SET COLORS" (White:Black:White:Black) {
"Black/Aquamarine":(Black:Aquamarine):!"xset p 1 Black p 0 Aquamarine &"
"Blue/Aquamarine":(Blue:Aquamarine):!"xset p 1 Blue p 0 Aquamarine &"
"MediumBlue/Aquamarine":(MediumBlue:Aquamarine):!"xset p 1 MediumBlue p 0 Aquamarine &"
"Green/Aquamarine":(Green:Aquamarine):!"xset p 1 Green p 0 Aquamarine &"
"Red/Aquamarine":(Red:Aquamarine):!"xset p 1 Red p 0 Aquamarine &"
"Sienna/Aquamarine":(Sienna:Aquamarine):!"xset p 1 Sienna p 0 Aquamarine &"
"Violet/Aquamarine":(Violet:Aquamarine):!"xset p 1 Violet p 0 Aquamarine &"
"White/Aquamarine":(White:Aquamarine):!"xset p 1 White p 0 Aquamarine &"
"Yellow/Aquamarine":(Yellow:Aquamarine):!"xset p 1 Yellow p 0 Aquamarine &"
"Aquamarine/Black":(Aquamarine:Black):!"xset p 1 Black p 0 Aquamarine &"
"Blue/Black":(Blue:Black):!"xset p 1 Blue p 0 Black &"
"MediumBlue/Black":(MediumBlue:Black):!"xset p 1 MediumBlue p 0 Black &"
"Green/Black":(Green:Black):!"xset p 1 Green p 0 Black &"
"Red/Black":(Red:Black):!"xset p 1 Red p 0 Black &"
"Sienna/Black":(Sienna:Black):!"xset p 1 Sienna p 0 Black &"
"Violet/Black":(Violet:Black):!"xset p 1 Violet p 0 Black &"
"White/Black":(White:Black):!"xset p 1 White p 0 Black &"
"Yellow/Black":(Yellow:Black):!"xset p 1 Yellow p 0 Black &"
"Aquamarine/Blue":(Aquamarine:Blue):!"xset p 1 Blue p 0 Aquamarine &"
"Black/Blue":(Black:Blue):!"xset p 1 Blue p 0 Black &"
"MediumBlue/Blue":(MediumBlue:Blue):!"xset p 1 MediumBlue p 0 Blue &"
"Green/Blue":(Green:Blue):!"xset p 1 Green p 0 Blue &"
"Red/Blue":(Red:Blue):!"xset p 1 Red p 0 Blue &"
"Sienna/Blue":(Sienna:Blue):!"xset p 1 Sienna p 0 Blue &"
"Violet/Blue":(Violet:Blue):!"xset p 1 Violet p 0 Blue &"
"White/Blue":(White:Blue):!"xset p 1 White p 0 Blue &"
"Yellow/Blue":(Yellow:Blue):!"xset p 1 Yellow p 0 Blue &"
"Aquamarine/White":(Aquamarine:White):!"xset p 1 White p 0 Aquamarine &"
"Black/White":(Black:White):!"xset p 1 White p 0 Black &"
"Blue/White":(Blue:White):!"xset p 1 White p 0 Blue &"
"MediumBlue/White":(MediumBlue:White):!"xset p 1 MediumBlue p 0 White &"
"Green/White":(Green:White):!"xset p 1 Green p 0 White &"
"Red/White":(Red:White):!"xset p 1 Red p 0 White &"
"Sienna/White":(Sienna:White):!"xset p 1 Sienna p 0 White &"
"Violet/White":(Violet:White):!"xset p 1 Violet p 0 White &"
"Yellow/White":(Yellow:White):!"xset p 1 Yellow p 0 White &"
"**** MORE **** ==>":f.menu:"SET COLORS "
}

menu = "SET COLORS " (White:Black:White:Black) {
"Aquamarine/MediumBlue":(Aquamarine:MediumBlue):!"xset p 1 MediumBlue p 0 Aquamarine &"
"Black/MediumBlue":(Black:MediumBlue):!"xset p 1 Black p 0 MediumBlue &"
"Blue/MediumBlue":(Blue:MediumBlue):!"xset p 1 MediumBlue p 0 Blue &"
"Green/MediumBlue":(Green:MediumBlue):!"xset p 1 Green p 0 MediumBlue &"
"Red/MediumBlue":(Red:MediumBlue):!"xset p 1 Red p 0 MediumBlue &"
"Sienna/MediumBlue":(Sienna:MediumBlue):!"xset p 1 Sienna p 0 MediumBlue &"
"Violet/MediumBlue":(Violet:MediumBlue):!"xset p 1 Violet p 0 MediumBlue &"
"Yellow/MediumBlue":(Yellow:MediumBlue):!"xset p 1 Yellow p 0 MediumBlue &"
"White/MediumBlue":(White:MediumBlue):!"xset p 1 White p 0 MediumBlue &"
}

menu = "DAVE'S XTERMS" (:::) {
Slate Blue:(:):!"xterm -i  -s -bg SlateBlue -fg green -cr blue -ms blue &"
Firebrick:(:):!"xterm -bg firebrick -fg white -cr yellow -ms cyan -bd tan -fn kiltercrn &"
Maroon:(:):!"xterm -bg maroon -fg goldenrod -cr red -ms red -bd tan &"
Red:(:):!"xterm -i -fn 9x15 -s -bw 3 -bd Black -bg Red  -fg MidnightBlue -cr White &"
Green:(:):!"xterm -i -fn 9x15 -s -bw 3 -bd Black -bg Green -fg DarkGreen  -cr Red &"
Nblue:(:):!"xterm -i -fn 9x15 -s -bw 3 -bd Black -bg NavyBlue -fg Yellow -cr Red &"
White:(:):!"xterm -i -fn 9x15 -s -bw 3 -bd Black -bg White -fg VioletRed -cr Red &"
Magenta:(:):!"xterm -i -fn 9x15 -s -bw 3 -bd Black -bg Magenta -fg DarkGreen -cr Red &"
Sienna:(:):!"xterm -i -fn 9x15 -s -bw 3 -bd Black -bg Sienna -fg Yellow -cr Red &"
Black:(:):!"xterm -i -fn 9x15 -s -bw 3 -bd White -bg Black -fg LightBlue  -cr Red &"
Yellow:(:):!"xterm -i -fn 9x15 -s -bw 3 -bd Black -bg Yellow -fg NavyBlue -cr Red &"
}

menu = "IMAGING DEMOS" (White:Black:White:Blue) {
Boston Bird's Eye:(White:DimGrey):!"resimg -s /usr/lib/images/boston &"
Old Man Albert:(Black:LightGrey):!"resimg -s /usr/lib/images/einstein &"
Big Ben:(White:DimGrey):!"resimg -s /usr/lib/images/london &"
The World's Most Famous Smile:(Black:LightGrey):!"resimg -s /usr/lib/images/monalisa &"
From the Earth to the Moon:(White:DimGrey):!"resimg -s /usr/lib/images/moon &"
The Big Apple:(Black:LightGrey):!"resimg -s /usr/lib/images/newyork &"
Le Tour Eiffel:(White:DimGrey):!"resimg -s /usr/lib/images/paris &"
The Gipper:(Black:LightGrey):!"resimg -s /usr/lib/images/reagan &"
I Left My Heart...:(White:DimGrey):!"resimg -s /usr/lib/images/sanfran &"
Faraway Places:(Black:LightGrey):!"resimg -s /usr/lib/images/tajmahal &"
"(Kill)":(White:DimGrey):!"$HOME/demos/kill_resimg &"
}

menu = "PREFERENCES" (White:Black:White:Blue) {
Bell Loud:!"xset b 7&"
Bell Normal:!"xset b 3&"
Bell Off:!"xset b off&"
Click Loud:!"xset c 8&"
Click Soft:!"xset c on&"
Click Off:!"xset c off&"
Lock On:!"xset c on&"
Lock Off:!"xset c off&"
Mouse Fast:!"xset m 4 2&"
Mouse Normal:!"xset m 2 5&"
Mouse Slow:!"xset m 1 1&"
}