# # Ian's twm configuration file. # # RandomPlacement DecorateTransients TitleFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*" ResizeFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*" MenuFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*" IconFont "-adobe-helvetica-bold-r-normal--*-100-*-*-*-*-*-*" IconManagerFont "-adobe-helvetica-bold-r-normal--*-100-*-*-*" IconifyByUnmapping NoCaseSensitive IconManagerGeometry "119x286+0+0" NoDefaults DontMoveOff OpaqueMove Zoom NoRaiseOnMove NoRaiseOnResize SortIconManager SqueezeTitle RestartPreviousState WarpCursor Function "select" { f.iconify f.deiconify } WindowFunction f.function "select" WindowRing { "emacs" "emacs18" "XTerm" } OldFashionedTwmWindowsMenu NoStackMode { "Iceweasel" } #VirtualDesktop "6x5-0-0" 48 VirtualDesktop "19200x9100-0-0" 48 #VirtualDesktop "8228x3848-0-0" 48 #VirtualDesktop "6432x3608-208-0" 48 #VirtualDesktop "6400x3600-208-0" 48 # +32,+8 #VirtualDesktop "5136x3076-208-0" 48 #VirtualDesktop "5120x3072-237-0" 48 # +16,+4 #VirtualDesktop "4x3-208-0" 48 NotVirtualGeometries PanDistanceX 100 PanDistanceY 100 FixManagedVirtualGeometries FixTransientVirtualGeometries SnapRealScreen NoTitle { "TWM Icon Manager" "VTWM Desktop" "xclock" "panel" "xload" "xacpi-simple" } DontSqueezeTitle { "emacs" "emacs18" "epoch" "Emacs" } DontShowInDisplay { "VTWM Desktop" "xb ian" "xb sysadmin" "xb chiark" "xb iwj" "xclock" "xload" "XLoad" "panel" "xacpi-simple" } NailedDown { "VTWM Desktop" "xb ian" "xb sysadmin" "xb chiark" "xb iwj" "xclock" "xwrits" "xload" "XLoad" "panel" "xacpi-simple" } Cursors { Frame "crosshair" Title "crosshair" Icon "crosshair" IconMgr "crosshair" Move "fleur" Resize "fleur" Menu "sb_left_arrow" Button "hand2" Wait "watch" Select "dot" Destroy "pirate" } Color { BorderColor "yellow" DefaultBackground "black" DefaultForeground "white" TitleBackground "midnight blue" TitleForeground "light steel blue" MenuBackground "midnight blue" MenuForeground "light steel blue" MenuTitleBackground "midnight blue" MenuTitleForeground "light steel blue" IconBackground "midnight blue" IconForeground "light steel blue" IconBorderColor "red" IconManagerBackground "orange1" IconManagerForeground "black" BorderTileForeground "red" BorderTileBackground "red" VirtualBackground "midnight blue" DesktopDisplayBackground "black" DesktopDisplayBorder "light steel blue" RealScreenBackground "white" } Monochrome { BorderColor "black" DefaultBackground "black" DefaultForeground "white" TitleBackground "white" TitleForeground "black" MenuBackground "black" MenuForeground "white" MenuTitleBackground "black" MenuTitleForeground "white" IconBackground "black" IconForeground "white" IconBorderColor "white" IconManagerBackground "white" IconManagerForeground "black" BorderTileForeground "black" BorderTileBackground "white" } # Define some useful functions for motion-based actions. MoveDelta 3 Function "forcemove-or-lower" { f.forcemove f.deltastop f.lower } Function "move-or-raise" { f.move f.deltastop f.raise } # Root window buttons Button1 = : root : f.menu "hosts" Button2 = : root : f.menu "TwmWindows" Button3 = : root : f.menu "programs" Button1 = m : root : f.unfocus Button1 = : desktop : f.movescreen Button2 = : desktop : f.movescreen #Button3 = : desktop : f.iconify # Per window buttons Button1 = : icon|iconmgr|frame|title : f.function "move-or-raise" Button2 = : icon|iconmgr|frame|title : f.function "forcemove-or-lower" Button3 = : icon|iconmgr|frame|title : f.menu "windowmenu" Button1 = shift : icon|iconmgr|frame|title : f.resize Button2 = shift : icon|iconmgr|frame|title : f.resize Button3 = shift : icon|iconmgr|frame|title : f.zoom Button1 = m : icon|iconmgr|frame|title : f.focus Button3 = m : icon|iconmgr|frame|title : f.saveyourself Button1 = control : icon|iconmgr|frame|title : f.forcemove Button3 = control : icon|iconmgr|frame|title : f.delete Button3 = control|shift : icon|iconmgr|frame|title : f.destroy Button1 = control|shift|m : window|frame|title : f.destroy Button2 = control|shift|m : window|frame|title : f.forcemove Button3 = control|shift|m : window|frame|title : f.menu "windowmenu" "Up" = m : all : f.function "pan-up" "Down" = m : all : f.function "pan-down" "Left" = m : all : f.function "pan-left" "Right" = m : all : f.function "pan-right" Function "pan-up" { !"raise-mini-desktop" f.panup "100" } Function "pan-down" { !"raise-mini-desktop" f.pandown "100" } Function "pan-left" { !"raise-mini-desktop" f.panleft "100" } Function "pan-right" { !"raise-mini-desktop" f.panright "100" } Function "drag-with-up" { f.nail f.panup "100" f.raise f.nail !"raise-mini-desktop" } Function "drag-with-down" { f.nail f.pandown "100" f.raise f.nail !"raise-mini-desktop" } Function "drag-with-left" { f.nail f.panleft "100" f.raise f.nail !"raise-mini-desktop" } Function "drag-with-right" { f.nail f.panright "100" f.raise f.nail !"raise-mini-desktop" } "Up" = m|shift : window|frame|title : f.function "drag-with-up" "Down" = m|shift : window|frame|title : f.function "drag-with-down" "Left" = m|shift : window|frame|title : f.function "drag-with-left" "Right" = m|shift : window|frame|title : f.function "drag-with-right" # Accelerators out of icon manager # "F1" = : icon|window|frame|title : f.iconify "F2" = : icon|window|frame|title : f.raise "F3" = : icon|window|frame|title : f.lower "F1" = : iconmgr : f.hideiconmgr "F2" = : iconmgr : f.hideiconmgr "F7" = : all : f.warpring "prev" "F8" = : all : f.warpring "next" "Menu" = : icon|window|frame|title : f.showiconmgr # Accelerators in icon manager "F7" = : iconmgr : f.previconmgr "F8" = : iconmgr : f.nexticonmgr "Menu" = : iconmgr : f.function "select" # Accelerators everywhere for new clients "F4" = : all : !"xtrlock &" "F6" = : all : !"xterm &" menu "windowmenu" { "Window Menu" f.title "Close" f.delete "Destroy" f.destroy "" f.nop "Icon" f.iconify "Nail" f.nail "Zoom" f.zoom "Resize" f.resize "Identify" f.identify "Forced move" f.forcemove "" f.nop "Mouse help" f.menu "windowmice" } menu "windowmice" { "Modifiers Leftbutton Middle Right" f.nop "" f.nop " Move/Raise Move/Lower Menu" f.nop " Shift: Iconify Resize Zoom" f.nop " Meta: Focus/Unfocus Checkpoint" f.nop " Control: Forced Move Delete" f.nop "Control+Shift: Destroy" f.nop } menu "special" { "Management" f.title "Refresh" f.refresh "Restart" f.function "restart" "" f.nop "Kill twm" f.quit "" f.nop "Show icon list" f.showiconmgr "Hide icon list" f.hideiconmgr } Function "restart" { !"rm .configs/mini-desktop-window-id" f.restart } menu "programs" { "Programs" f.title "Emacs restart" !".configs/startemacs" "Emacs left" !"emacs -geometry 79x40+0+35 &" "" f.nop "IRC Diziet" !"xterm -geometry 80x24+24-0 -T ' IRC' -e sh -c 'ssh -vt ijackson@tunnel.chiark.greenend.org.uk screen -x irc; read x' &" # "IRC iwj" !"xterm -geometry 80x70+340-0 -T 'IRC iwj' -e irc iwj cam.irc.devel.ncipher.com &" "" f.nop "Trn" !"xterm -geometry 80x45+240+95 -e trn &" "Archie" !"xarchie &" "Calc" !"xcalc &" # "Xab large" !"xab &" # "Xab small" !"perl -e '$xab=\"xab\"; exec $xab \"other-xab\"' &" "" f.nop "Management" f.menu "special" "Hosts" f.menu "hosts" "Games" f.menu "games" "Demos" f.menu "demos" } Menu "hosts" { "Hosts" f.title "" f.nop "Relativity" !"xterm-CT 'Relativity' -e ssh -p24 r-ian@relativity.dynamic.greenend.org.uk &" "" f.nop "Lewes" !"xterm-CT 'lewes rlogin' -e rlogin lewes &" "Scunthorpe" !"xterm-CT 'scunthorpe rlogin' -e rlogin scunthorpe &" "Saintpaul" !"xterm-CT 'saintpaul rlogin' -e rlogin saintpaul &" "Slough" !"xterm-CT 'slough rlogin' -e rlogin slough &" "Guildford" !"xterm-CT 'guildford rlogin' -e rlogin guildford &" "York" !"xterm-CT 'york rlogin' -e rlogin york &" # "Greenock" !"xterm-CT 'greenock rlogin' -e rlogin greenock &" "" f.nop "Ursa" !"xterm-CT 'ursa rlogin' -e rlogin ursa.cus.cam.ac.uk -l iwj10 &" "Taurus" !"xterm-CT 'taurus ssh' -e ssh taurus.cus.cam.ac.uk -l iwj10 &" "Taurus rlogin" !"xterm-CT 'taurus rlogin' -e rlogin taurus.cus.cam.ac.uk -l iwj10 &" "Bootes" !"xterm-CT 'bootes rlogin' -e rlogin bootes.cus.cam.ac.uk -l iwj10 &" "Thor" !"xterm-CT 'thor rlogin' -e rlogin hammer.thor.cam.ac.uk -l iwj10 &" "" f.nop "Leek" !"xterm-CT 'leek rlogin' -e rlogin leek.cam-orl.co.uk -l iwj&" "Lobster" !"xterm-CT 'lobster rlogin' -e rlogin lobster.cam-orl.co.uk -l iwj&" "" f.nop "Shep" !"xterm-CT 'shep ssh' -e ssh shep.cl.cam.ac.uk -l iwj10 &" "Ouse" !"xterm-CT 'ouse ssh' -e ssh ouse.cl.cam.ac.uk -l iwj10 &" "" f.nop "Chiark" !"xterm-CT 'chiark ssh' -e ssh chiark.greenend.org.uk -l ijackson &" "Chiark ian" !"xterm-CT 'chiark ssh ian' -e ssh chiark.greenend.org.uk -l ian &" "Chiark II" !"xterm-CT 'chiark ssh II' -e ssh chiark.greenend.org.uk -t -l ijackson personal/linux/bin/II &" "Iguana" !"xterm-CT 'iguana ssh' -e ssh iguana.ucam.org -l ijackson &" "Utter" !"xterm-CT 'utter ssh' -e ssh utter.chaos.org.uk -l ijackson &" "" f.nop "Club" !"xterm-CT 'club rlogin' -e rlogin club.damtp.cam.ac.uk -l iwj10 &" "Greed" !"xterm-CT 'greed rlogin' -e rlogin greed.damtp.cam.ac.uk -l iwj10 &" "Enghp" !"xterm -geometry 80x50 -T 'enghp' -e rlogin enghp.chu.cam.ac.uk -l iwj10 &" "Impren" !"xterm-CT 'impren rlogin' -e rlogin impren.al.cl.cam.ac.uk -l ijackson &" "" f.nop "Novare -v" !"xterm-CT 'novare -v' -e ssh -v debian.novare.net -l iwj &" "Novare" !"xterm-CT 'novare' -e ssh debian.novare.net -l iwj &" "Debian" !"xterm-CT 'debian' -e rlogin ftp.debian.org -l iwj &" "Debra" !"xterm-CT 'debra' -e rlogin debra.debian.org -l iwj &" "GNU" !"xterm-CT 'gnu' -e rlogin mescaline.gnu.org -l ijackson &" "GNU dist" !"xterm-CT 'gnudist' -e rlogin gnudist.gnu.org -l ijackson &" "Master" !"xterm-CT 'master' -e ssh master.debian.org -l iwj &" "Va" !"xterm-CT 'va' -e ssh va.debian.org -l iwj &" "Nyx" !"xterm-CT 'nyx - rlogin' -e rlogin nyx.cs.du.edu -l ijackson &" "Sunsite" !"xterm-CT 'sunsite' -e rlogin sunsite.unc.edu -l iwj &" "White" !"xterm-CT 'white' -geometry 80x25 -e sh -c \ 'rlogin white.dogwood.com; line >/dev/null' &" } Menu "demos" { "Demos - probably broken" f.title "Ico" !"ico &" "Maze" !"maze &" "Muncher" !"muncher &" "Plaid" !"plaid &" "Worm" !"worm &" "Colors" !"xcolors &" "Eyes" !"xeyes &" "Life" !"xlife &" "XLogo" !"xlogo &" } Menu "games" { "Games - probably broken" f.title "Chomp" !"xchomp &" "Cbzone" !"cbzone &" "MazeWar" !"xterm -e mazewar &" "Mille" !"xmille &" "Reversi" !"reversi &" "Roids" !"roids &" "Robots" !"xrobots &" "Shanghai" !"xmj &" "Solitaire" !"xsol &" "Spider" !"spider &" }