home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1999 February / VPR9902B.ISO / TurboLinux / instimage / etc / X11 / fvwm / system.fvwmrc
Text File  |  1998-04-07  |  9KB  |  294 lines

  1. StdForeColor            forestgreen
  2. StdBackColor            darkslategrey
  3. HiForeColor         Red
  4. HiBackColor         darkslategrey
  5.  
  6. ############################################################################
  7.  
  8. Font                    fixed
  9. WindowFont              fixed
  10. IconFont                fixed
  11.  
  12. ClickToFocus
  13. IconBox -70 1 -1 -140
  14. MWMDecorHints
  15. OpaqueMove 0
  16. EdgeScroll 100 100
  17. EdgeResistance 250 50
  18. RandomPlacement
  19. SmartPlacement
  20. StubbornPlacement
  21. NoPPosition
  22. DeskTopSize 1x1
  23. DeskTopScale 32
  24.  
  25. ModulePath /usr/lib/X11/fvwm
  26. PixmapPath /usr/include/X11/pixmaps/
  27. IconPath   /usr/include/X11/bitmaps/
  28.  
  29. # change the default width.
  30. Style "*" BorderWidth 5, HandleWidth 5, Icon unknown1.xpm
  31.  
  32. Style "Fvwm*"      NoTitle, NoHandles, Sticky, WindowListSkip, BorderWidth 0
  33. # Style "Fvwm Pager" StaysOnTop
  34. # Style "FvwmPager"  StaysOnTop
  35. Style "FvwmBanner" StaysOnTop
  36. Style "GoodStuff"  NoTitle, NoHandles, Sticky, WindowListSkip, BorderWidth 0, CirculateSkip
  37. Style "*lock"      NoTitle, NoHandles, Sticky, WindowListSkip, BorderWidth 0, CirculateSkip
  38. Style "xbiff"      NoTitle, NoHandles, Sticky, WindowListSkip, BorderWidth 0, CirculateSkip
  39. Style "Maker"      StartsOnDesk 1
  40. Style "matlab"     StartsOnDesk 3
  41. Style "signal"     StartsOnDesk 3 
  42. Style "rxvt"       Icon  term.xpm
  43. Style "xterm"      Icon xterm.xpm
  44. Style "Console"    Icon xterm.xpm
  45. Style "xterm_color" Icon xterm.xpm
  46. Style "Appointment" Icon datebook.xpm, NoButton 2, NoButton 4
  47. Style "xcalc"      Icon xcalc.xpm, NoButton 2
  48. Style "xbiff"      Icon mail1.xpm, NoButton 2
  49. Style "xmh"        Icon mail1.xpm, StartsOnDesk 2, NoButton 2
  50. Style "xman"       Icon xman.xpm
  51. Style "xvgr"       Icon graphs.xpm
  52. Style "matlab"       Icon math4.xpm
  53. Style "xmag"       Icon mag_glass.xpm
  54. Style "xgraph"       Icon graphs.xpm
  55. Style "GoodStuff"  Icon toolbox.xpm
  56.  
  57. # Change the Maximize and iconify buttons to up and down triangles.
  58.  
  59. #ButtonStyle : 2 4 50x35@1 65x65@0 35x65@0 50x35@1
  60. #ButtonStyle : 4 4 50x65@1 35x35@1 65x35@1 50x65@0
  61.  
  62. ButtonStyle 2 20x20
  63. ButtonStyle 4 50x50
  64.  
  65. # Stuff to do at start-up
  66.  
  67. Function "InitFunction"
  68.     # Module    "I"    GoodStuff
  69.     # Module    "I"    FvwmPager 0 0
  70.     Desk     "I"    0 0
  71. EndFunction
  72.  
  73. Function "RestartFunction"
  74. #    Exec    "I"    xsetroot -solid "#266294"      
  75.     # Module    "I"    GoodStuff
  76.     # Module    "I"    FvwmPager 0 0
  77. EndFunction
  78.  
  79.  
  80. ############################################################################
  81. # Now define some handy complex functions
  82.  
  83. # This one moves and then raises the window if you drag the mouse,
  84. # only raises the window if you click,  or does a RaiseLower if you double 
  85. # click
  86. Function "Move-or-Raise"
  87.     Move         "Motion"
  88.     Raise        "Click"
  89. EndFunction
  90.  
  91. # This one maximizes vertically if you click (leaving room for the GoodStuff bar at the
  92. # bottom, or does a full maximization if you double click, or a true full vertical 
  93. # maximization if you just hold the mouse button down.
  94. Function "maximize_func"
  95.     Maximize    "Motion" 0 100
  96.     Maximize    "Click" 0 80
  97.     Maximize    "DoubleClick" 100 100
  98. EndFunction
  99.  
  100.  
  101. # This one moves and then lowers the window if you drag the mouse,
  102. # only lowers the window if you click,  or does a RaiseLower if you double 
  103. # click
  104. Function "Move-or-Lower"
  105.     Move         "Motion"
  106.     Lower        "Motion"
  107.     Lower        "Click"
  108.     RaiseLower    "DoubleClick"
  109. EndFunction
  110.  
  111. # This one moves or (de)iconifies:
  112. Function "Move-or-Iconify"
  113.     Move         "Motion"
  114.     Iconify        "Click"
  115. EndFunction
  116.  
  117. # This one resizes and then raises the window if you drag the mouse,
  118. # only raises the window if you click,  or does a RaiseLower if you double 
  119. # click
  120. Function "Resize-or-Raise"
  121.     Resize         "Motion"
  122.     Raise        "Motion"
  123.     Raise        "Click"
  124.     RaiseLower    "DoubleClick"
  125. EndFunction
  126.  
  127.  
  128. # This is provided as a hint only.
  129. # Move to a known page on the desktop, then start an application in a 
  130. # known location. Could also switch to a known desktop, I guess
  131. #Function "abs_coord"
  132. #    GoToPage "Immediate"    1,1
  133. #    Exec    "Immediate"    exec xcalc -geometry +100+100&
  134. #EndFunction
  135.  
  136.  
  137. ##############################################################################
  138. #now define the menus - defer bindings until later
  139.  
  140. # This menu is invoked as a sub-menu - it allows you to quit,
  141. # restart, or switch to another WM.
  142. Popup "Quit-Verify"
  143.     Title    "Really Quit Fvwm?"
  144.     Quit    "Yes, Really Quit"
  145.     Restart "Restart Fvwm"    fvwm
  146.     Nop    ""
  147.     Nop    "No, Don't Quit"
  148. EndPopup
  149.  
  150. # This defines the most common window operations
  151. Popup "Window Ops"
  152.     Title        "Window Ops"
  153.     Function    "Move"         Move-or-Raise
  154.     Function     "Resize"     Resize-or-Raise
  155.     Raise       "Raise"
  156.     Lower       "Lower"
  157.     Iconify     "(De)Iconify" 
  158.     Stick        "(Un)Stick"
  159.     Function     "(Un)Maximize"    maximize_func
  160.     Nop         ""
  161.     Close          "Close"
  162.     Nop        ""
  163.     Refresh        "Refresh Screen"
  164. EndPopup
  165.  
  166. # A trimmed down version of "Window Ops", good for binding to decorations
  167. Popup "Window Ops2"
  168.     Function     "Move"        Move-or-Raise
  169.     Function      "Resize"     Resize-or-Raise
  170.     Raise       "Raise"
  171.     Lower       "Lower"
  172.     Iconify     "Iconify"
  173.     Stick        "(Un)Stick"
  174.     Nop         ""
  175.     Close          "Close"
  176.     Nop         ""
  177.     Module        "ScrollBar"     FvwmScroll 2 2
  178. EndPopup
  179.  
  180. #############################################################################
  181. # but if you click instead, the menu stays up, motif style
  182. Function "window_ops_func"
  183.     PopUp     "Click"        Window Ops2
  184.     PopUp    "Motion"    Window Ops2
  185. # Motif would add:
  186. # I'll add it too, it can be mighty handy.
  187.     Close  "DoubleClick"  
  188. EndFunction
  189.  
  190.  
  191. ##############################################################################
  192. # This defines the mouse bindings
  193.  
  194. #     Button    Context Modifi     Function
  195. Mouse 1        R       A       WindowList
  196. Mouse 2        R       A       WindowList
  197.  
  198. # Now the title bar buttons
  199. # Any button in the left title-bar button gives the window ops menu
  200. # Any button in the right title-bar button Iconifies the window
  201. # Any button in the rightmost title-bar button maximizes
  202. # Note the use of "Mouse 0" for AnyButton.
  203.  
  204. #     Button    Context Modifi     Function
  205. #Mouse 0        1        A          Function "window_ops_func"
  206. #Mouse 0        2        A         Function "maximize_func"
  207. #Mouse 0        4        A         Iconify
  208. Mouse 0         1       A       Function "window_ops_func"
  209. Mouse 1         2       A       Iconify
  210. Mouse 3         2       A       Destroy
  211. Mouse 1         4       A       Maximize 0 100
  212. Mouse 3         4       A       Maximize 100 100
  213.  
  214. # Now the rest of the frame
  215. # Here I invoke my complex functions for Move-or-lower, Move-or-raise,
  216. # and Resize-or-Raise. 
  217. # Button 1 in the corner pieces, with any modifiers, gives resize or raise
  218. #Mouse 1        F    A    Function "Resize-or-Raise"
  219. Mouse 1         FS      A       Resize
  220. # Button 1 in the title, sides, or icon, w/ any modifiers, gives move or raise
  221. #Mouse 1        TS    A    Function "Move-or-Raise"
  222. Mouse 1         T       A       Function "Move-or-Raise"
  223.  
  224. # Button 1 in an icons gives move for a drag, de-iconify for a double-click,
  225. # nothing for a single click
  226. # Button 2 in an icon, w/ any modifiers, gives de-iconify
  227.  
  228. Mouse 1        I    A    Function "Move-or-Iconify"
  229. Mouse 2        I    A    Iconify
  230.  
  231. # Button 2 in the corners, sides, or title-bar gives the window ops menu
  232. Mouse 2        FST    A    Function "window_ops_func"
  233. # Button 3 anywhere in the decoration (except the title-bar buttons)
  234. # does a raise-lower
  235. Mouse 3        TSIF    A    RaiseLower
  236.  
  237. # Button 3 in the window, with the Modifier-1 key (usually alt or diamond)
  238. # gives Raise-Lower. Used to use control here, but that interferes with xterm
  239. #Mouse 3         W       M       RaiseLower
  240. Mouse 1         W       M       RaiseLower
  241. Mouse 2         W       M       Move
  242. Mouse 3         W       M       Resize
  243.  
  244. ############################################################################
  245. # Now some keyboard shortcuts.
  246.  
  247. # Arrow Keys
  248. # press arrow + control anywhere, and scroll by 1 page
  249. #Key Left    A    C    Scroll -100 0
  250. #Key Right    A    C    Scroll +100 +0
  251. #Key Up        A    C    Scroll +0   -100
  252. #Key Down    A    C    Scroll +0   +100
  253.  
  254. # press arrow + meta key, and scroll by 1/10 of a page
  255. #Key Left    A    M    Scroll -10 +0
  256. #Key Right    A    M    Scroll +10 +0
  257. #Key Up        A    M    Scroll +0   -10
  258. #Key Down    A    M    Scroll +0   +10
  259.  
  260. # press shift arrow + control anywhere, and move the pointer by 1% of a page
  261. #Key Left    A    SC    CursorMove -1 0
  262. #Key Right    A    SC    CursorMove +1 +0
  263. #Key Up        A    SC    CursorMove +0   -1
  264. #Key Down    A    SC    CursorMove +0   +1
  265.  
  266. # press shift arrow + meta key, and move the pointer by 1/10 of a page
  267. #Key Left    A    SM    CursorMove -10 +0
  268. #Key Right    A    SM    CursorMove +10 +0
  269. #Key Up        A    SM    CursorMove +0   -10
  270. #Key Down    A    SM    CursorMove +0   +10
  271.  
  272. # Keyboard accelerators
  273. #Key F1        A    M    CirculateUp
  274. #Key F1        A    M    Popup "Utilities"
  275. #Key F2        A    M    Popup "Window Ops"
  276. #Key F3        A    M    Module "WindowList" FvwmWinList 
  277. #Key F4        A    M    Iconify
  278. #Key F5        A    M    Move
  279. #Key F6        A    M    Resize
  280. #Key F7        A    M    CirculateUp
  281. #Key F8        A    M    CirculateDown
  282.  
  283. #Page Up/Dapge Down keys are used to scroll by one desktop page
  284. # in any context, press page up/down + control
  285. # in root context, just pressing page up/down is OK
  286. # I prefer the non-wrapping scroll. These are for example purposes only
  287. #Key Next    A       C       Scroll 100000 0
  288. #Key Next    R       N       Scroll 100000 0  
  289. #Key Prior    A       C       Scroll -100000 0
  290. #Key Prior    R       N       Scroll -100000 0
  291.  
  292.  
  293.