# Do not edit this file. It is generated from XStart/ctwmrc. # ctwcrc -- Configuration file for TWM family of window managers. # Well, ctwm only. And a recent version, at least 3.5, but 3.5.2 is better. # $Id: ctwmrc,v 1.9 2000-08-31 19:23:33+02 jv Exp jv $ # # ctwm processes this file through m4. # It includes the following files (possibly system dependent): # # ctwm_exec "Execute" menu # ctwm_terms "New Window" menu # # Defines used: # # WM_LIB Helper tools. # WM_DIR Run-time dir, usually WM_LIB/$DISPLAY. # WM_WORKSPACES The number of workspaces requested (default: 5). # WM_CTWM3D Use Ctwm's 3D features. # WM_RAISEDELAY We have a version of ctwm that supports raisedelay. # WM_NOSQUEEZE Do not squeezt titles (for Xsnow, around Xmas). # WM_WINDOWS_KEY A special key to use for windows-related shortcuts. # # Normal way of operation: The X startup script creates a file # WM_DIR/ctwmrc that sets the above defines according to system and # user preferences. The final line includes this ctwmrc # (WM_LIB/ctwmrc). Then ctwm is started with WM_DIR/ctwmrc as its # startup file. # Gadgets. They won't get borders and titles, occupy all, and such. define(`GADGETS',` "XClock" "XBiff" "xpostit" "XBclock" "XMeter" "XLoad" "XISDNLoad" "XWiFi" "wmtuxtime" "Xmessage" "wm*" ')dnl # Other windows w/o border and title define(`NoTitleNoBorderWindows',` "xeyes" "TWM Icon Manager" "XVroot" "Motif CD Audio Player *" "NoTitle*" "TridiaVNC:*" "TightVNC:*" "VNC:*" "XMMS_Player" "Grip" "Zinf" "Zinf:*" "PP*" "aumix" "Top Panel" "X-Lite" ')dnl NoGrabServer DecorateTransients TransientOnTop 200 # CHECK: ctwm 3.5 OpenWindowTimeout 60 ifdef(`WM_CTWM3D',`# WM_CTWM3D UseThreeDMenus UseThreeDTitles UseThreeDIconManagers # UseThreeDBorders # ThreeDBorderWidth 6 SunkFocusWindowTitle # UseSunkTitlePixmap ') ifelse(WIDTH,1600,` define(`TTFNT',`"-adobe-helvetica-medium-r-normal-*-14-*-*-*-*-*-iso8859-1"') define(`MNFNT',`"-adobe-helvetica-bold-r-normal-*-12-*-*-*-*-*-iso8859-1"') ',WIDTH,1400,` define(`TTFNT',`"-adobe-helvetica-medium-r-normal-*-12-*-*-*-*-*-iso8859-1"') define(`MNFNT',`"-adobe-helvetica-bold-r-normal-*-12-*-*-*-*-*-iso8859-1"') ',WIDTH,1280,` define(`TTFNT',`"*-helvetica-bold-r-normal--12-*-iso8859-1"') define(`MNFNT',`"*-helvetica-bold-r-normal--12-*-iso8859-1"') ',` define(`TTFNT',`"*-lucida-medium-r-normal-sans-10-*-iso8859-1"') define(`MNFNT',`"*-helvetica-bold-r-normal--10-*-iso8859-1"') ')dnl TitleFont TTFNT ResizeFont MNFNT MenuFont MNFNT IconFont MNFNT IconManagerFont MNFNT undefine(`TTFNT')undefine(`MNFNT') ifdef(`WM_RANDOMPLACEMENT', RandomPlacement "on" ) UsePPosition "non-zero" ifdef(`WM_NOSQUEEZE',, #Squeezetitle { # "*" right 0 0 #} #NoTitleHighlight ) # Keep menus up w/o pushing buttons. StayUpMenus # Work around a mapping bug # AnimationSpeed 0 # Prevent moving off the screen DontMoveOff # f.forcemove (bound to meta-mouse-1 on titlebar) can be used to override MoveOffResistance 50 # XMoveGrid 10 # YMoveGrid 10 CenterFeedbackWindow # CHECK: ctwm 3.5 AutoFocusToTransients WindowGeometries { "Top Panel" "+0+0" "Mozilla Firefox" "+0+6" "Thunderbird-bin" "+0+6" "Zim" "+1+1" "Evince*" "1000`x'eval(HEIGHT-30)+0+6" "J-Pilot*User:*" "+0+6" "J-Pilot Monthly View" "-4+6" } # InterpolateMenuColors # For fast X servers only: OpaqueMove OpaqueMove # OpaqueResize Color { BorderColor "Black" DefaultBackground "maroon" DefaultForeground "gray85" TitleBackground "LightGrey" TitleForeground "NavyBlue" MenuBackground "yellow" MenuForeground "black" MenuTitleBackground "green" MenuTitleForeground "black" IconBackground "maroon" IconForeground "gray85" IconBorderColor "gray85" IconManagerBackground "maroon" IconManagerForeground "gray85" MapWindowBackground "LightBlue" MapWindowForeground "Black" BorderTileForeground "Black" BorderTileBackground "Grey" { "XLoad" "Black" } } SaveColor { BorderColor TitleBackground TitleForeground "red" "green" "blue" } MonoChrome { BorderColor "Black" DefaultBackground "White" DefaultForeground "Black" TitleBackground "White" TitleForeground "Black" MenuBackground "White" MenuForeground "Black" MenuTitleBackground "White" MenuTitleForeground "Black" IconBackground "Black" IconForeground "White" IconBorderColor "Black" IconManagerBackground "White" IconManagerForeground "Black" MapWindowBackground "White" MapWindowForeground "Black" } AutoRelativeResize ifdef(`WM_RAISEDELAY',RaiseDelay 500) AutoLower { GADGETS } # AutoRaise default for all AutoRaise NoTitle { GADGETS NoTitleNoBorderWindows "xosview" "Console" "PostItNote #*" # "documentShell" "Battery*" "CPU*" } NoBorder { GADGETS NoTitleNoBorderWindows "Battery*" "CPU*" } # Icon Manager ShowIconManager # SortIconManager NoCaseSensitive # Lower Icon manager a bit, so XPostIt will fit above IconManagerGeometry "+0+30" # IconManagerGeometry "+0+0" IconifyByUnmapping IconManagerDontShow { GADGETS } NoIconManagerFocus # These goodies show in every workspace... OccupyAll { GADGETS "Battery*" "Top Panel" "CPU*" } # ... but not in the workspace manager. NoShowOccupyAll # These guys don't show in the icon manager. IconManagerDontShow { GADGETS "WorkSpaceManager" } # Retain mapping when ctwm is restarted. RestartPreviousState # Autoraise WorkSpaceManager if shown. AutoRaise { "WorkSpaceManager" } # Global buttons for workspace managent. # "Right" = : root : f.nextworkspace # "Left" = : root : f.prevworkspace NoHighlight { GADGETS } # Define some useful functions for motion-based actions. MoveDelta 3 Function "move-or-raise" { f.move f.deltastop f.raise } Function "move-or-iconify" { f.move f.deltastop f.iconify } WindowFunction f.iconify # Mousing around... Button1 = : root : f.menu "DefOps" Button2 = : root : f.menu "TermMenu" Button3 = : root : f.menu "ExecMenu" Button3 = m : root : f.menu "WinOps" # Title bar functions Button1 = : title : f.function "move-or-raise" Button1 = m : title : f.forcemove Button2 = : title : f.resize Button3 = : title : f.menu "WinOps" Button3 = m : title : f.menu "DefOps" NoDefaults ifdef(`WM_CTWM3D',`# WM_CTWM3D # LeftTitleButton ":xpm:dot" = f.iconify LeftTitleButton ":xpm:menu" = f.menu "Win95Ops" RightTitleButton ":xpm:dot" = f.iconify RightTitleButton ":xpm:zoom" = f.fullzoom RightTitleButton ":xpm:vbar" = f.delete ',`# No WM_CTWM3D LeftTitleButton ":menu" = f.menu "Win95Ops" RightTitleButton ":iconify" = f.iconify RightTitleButton ":xlogo" = f.fullzoom ') # Window functions Button1 = m c : window|icon : f.move Button1 = s m c : window|icon : f.forcemove Button2 = m c : window|icon : f.resize Button3 = m c : window|icon : f.menu "DefOps" # Icon functions Button1 = : icon : f.function "move-or-iconify" Button2 = : icon : f.iconify # Icon manager functions Button1 = : iconmgr : f.iconify Button2 = : iconmgr : f.iconify # CHECK: ctwm 3.5.3 IgnoreCaseInMenuSelection # CHECK: ctwm 3.6 IgnoreModifier { lock m2 } # for XFree86 v4 ifdef(`WM_WINDOWS_KEY',`# WM_WINDOWS_KEY # Window cycling. Key must be mapped by xmodmap. WindowRing # CHECK: ctwm 3.5.2 WindowRingExclude { GADGETS "xeyes" "TWM Icon Manager" "Console" "Motif CD Audio Player *" "XMMS_Player" "Battery*" "CPU*" "Top Panel" } WarpRingOnScreen "Right" = WM_WINDOWS_KEY : all : f.warpring "next" "Left" = WM_WINDOWS_KEY : all : f.warpring "prev" "Up" = WM_WINDOWS_KEY : all : f.prevworkspace "Down" = WM_WINDOWS_KEY : all : f.nextworkspace "i" = WM_WINDOWS_KEY : window : f.iconify "f" = WM_WINDOWS_KEY : window : f.focus "l" = WM_WINDOWS_KEY : window : f.lower # Too dangerous! # "q" = WM_WINDOWS_KEY : window : f.delete # "Q" = WM_WINDOWS_KEY : window : f.destroy "s" = WM_WINDOWS_KEY : window : f.squeeze "s" = WM_WINDOWS_KEY : title : f.squeeze "z" = WM_WINDOWS_KEY : window : f.fullzoom "Tab" = WM_WINDOWS_KEY : all : f.warpring "next" "Tab" = WM_WINDOWS_KEY s : all : f.warpring "prev" # Alternate Keymap 1 "Return" = WM_WINDOWS_KEY : all : f.altkeymap "1" "w" = a1 : all : f.menu "TwmWindows" "Up" = a1 : window : f.raise "Down" = a1 : window : f.lower "Left" = a1 : window : f.iconify "Delete" = a1 : window : f.delete "F4" = c : window : f.delete "F16" = : all : f.menu "WinOps" "F16" = m : all : f.menu "ExecMenu" "F16" = WM_WINDOWS_KEY : all : f.menu "TermMenu" "F16" = s : all : f.menu "TwmIcons" "F16" = c : all : f.menu "DefOps" ') # And the menus with the usual things Menu "Background" { "*Plain" f.exec "xsetroot -solid LightSkyBlue3 &" "Floating" f.exec "floatbg &" } Menu "DefOps" { "Root Menu" f.title "New Window" f.menu "TermMenu" "Execute" f.menu "ExecMenu" "Background" f.menu "Background" "Pause" f.exec "xlock -mode random &" "Window Ops" f.menu "WinOps" # CHECK: ctwm 3.5.2 "Icon List" f.menu "TwmIcons" "Window List" f.menu "TwmWindows" "Icon Manager" f.menu "Iconmgr" "Unclutter" f.exec "unclutter &" "Reload Xdefaults" f.exec "sh WM_LIB/load_xdefaults &" "Refresh" f.refresh # "Reset Keyboard" f.exec "kbdrate -r 200 -d 50&" "Reset Keyboard" f.exec "xset r rate 300 50&" "Restart WM" f.restart "Session" f.title "Exit WM" ("black":"red") f.quit } Menu "WinOps" { "WinOps" f.title "*Identify" f.identify "---" f.separator "Occupy" f.menu "OccMenu" "Vanish" f.vanish "Occupy All" f.occupyall "---" f.separator "Lower" f.lower "Raise" f.raise "Autoraise" f.autoraise "---" f.separator "Iconify" f.iconify "Zoom" f.fullzoom "Move" f.move "Free Move" f.forcemove "Squeeze" f.squeeze "HyperMove" f.hypermove "Resize" f.resize "---" f.separator "Focus" f.focus "Unfocus" f.unfocus "---" f.separator "Delete" f.delete "---" f.separator "Kill" ("black":"red") f.destroy } Menu "Win95Ops" { "Minimize" f.iconify "Maximize" f.fullzoom "Move" f.move "Resize" f.resize "---" f.separator "Close" f.delete } # Shuffle Menu Menu "Iconmgr" { "Icon Manager" f.title "*Show Manager" f.showiconmgr "Hide Manager" f.hideiconmgr "Sort entries" f.sorticonmgr } # WorkSpaces ifdef(`WM_WORKSPACES',,`define(`WM_WORKSPACES',5)') WorkSpaceManagerGeometry "400x60-0-0" WM_WORKSPACES NoTitle { "WorkSpaceManager" } define(`WS',`$1 {"MidnightBlue" "white" }') WorkSpaces { WS("Local") WS("Aux1") WS("Aux2") WS("CM") ifelse(eval(WM_WORKSPACES>4),1,WS("Aux3")) ifelse(eval(WM_WORKSPACES>5),1,WS("Aux4")) ifelse(eval(WM_WORKSPACES>6),1,WS("Aux5")) ifelse(eval(WM_WORKSPACES>7),1,WS("Aux6")) } undefine(`WS') # This works, but is confusing... #Occupy { # "Console*" { "Local" } # "sun4nl*:" { "Sun4nl" } # "sun4nl*:*mserv" { "Mserv" } # "solair*:" { "Solair1" } # "Mail Log" { "*" } # "Cm" { "CM" } #} # Global buttons for workspace managent. ifdef(`WM_WINDOWS_KEY',`define(`FMOD',WM_WINDOWS_KEY : all)',`define(`FMOD',: root)') "F1" = FMOD : f.gotoworkspace "Local" "F2" = FMOD : f.gotoworkspace "Aux1" "F3" = FMOD : f.gotoworkspace "Aux2" "F4" = FMOD : f.gotoworkspace "CM" ifelse(eval(WM_WORKSPACES>4),1,"F5" = FMOD : f.gotoworkspace "Aux3") ifelse(eval(WM_WORKSPACES>5),1,"F6" = FMOD : f.gotoworkspace "Aux4") ifelse(eval(WM_WORKSPACES>6),1,"F7" = FMOD : f.gotoworkspace "Aux5") ifelse(eval(WM_WORKSPACES>7),1,"F8" = FMOD : f.gotoworkspace "Aux6") undefine(`FMOD') # Menu for workspace management. Menu "WorkSpaceMenu" { "WorkSpace" f.title "Local" f.gotoworkspace "Local" "Aux1" f.gotoworkspace "Aux1" "Aux2" f.gotoworkspace "Aux2" "Aux3" f.gotoworkspace "Aux3" "CM" f.gotoworkspace "CM" } Button2 = m : root : f.menu "WorkSpaceMenu" Button2 = m : root : f.menu "TwmWorkspaces" # So there's no need to show the workspace manager at all. # ShowWorkSpaceManager # Additions to the Iconmgr menu. Menu "Iconmgr" { "WorkSpace Manager" f.title "*Show Manager" f.showworkspacemgr "Hide Manager" f.hideworkspacemgr "Set Button Mode" f.setbuttonsstate "Set Map Mode" F.setmapstate } Menu "OccMenu" { "Occupy" f.title "Local" f.addtoworkspace "Local" "Aux1" f.addtoworkspace "Aux1" "Aux2" f.addtoworkspace "Aux2" "CM" f.addtoworkspace "CM" "Aux3" f.addtoworkspace "Aux3" "xx" f.separator "*Default" f.occupy } # Term menu include(WM_LIB/ctwm_terms) # Exec Menu include(WM_LIB/ctwm_exec) # Local Variables: # eval:(auto-fill-mode -1) # End: