VTWM(1)                                                   VTWM(1)


NAME
       vtwm - Virtual Desktop Tab Window Manager for the X Window
       System

SYNTAX
       vtwm [ -display dpy ] [ -s ] [ -f initfile ] [ -v ]

DESCRIPTION
       Vtwm is a window manager for the X Window System.  It pro-
       vides  titlebars,  shaped  windows,  several forms of icon
       management, user-defined  macro  functions,  click-to-type
       and  pointer-driven keyboard focus, and user-specified key
       and pointer button bindings.

       This program is usually started by the user's session man-
       ager or startup script.  When used from xdm(1) or xinit(1)
       without a session manager, vtwm is frequently executed  in
       the  foreground  as  the  last client.  When run this way,
       exiting vtwm causes the session to  be  terminated  (i.e.,
       logged out).

       By  default,  application  windows  are  surrounded  by  a
       ``frame'' with a titlebar at the top and a special  border
       around  the  window.   The  titlebar contains the window's
       name, a rectangle that is lit when the window is receiving
       keyboard  input,  and  function boxes known as ``titlebut-
       tons'' at the left and right edges of the titlebar.

       Pressing pointer Button1  (usually  the  left-most  button
       unless  it has been changed with xmodmap) on a titlebutton
       will invoke the function associated with the  button.   In
       the  default  interface, windows are iconified by clicking
       (pressing and then immediately releasing) the left  title-
       button  (which looks like a Dot).  Conversely, windows are
       deiconified by clicking in the associated icon or entry in
       the  icon  manager  (see description of the variable Show-
       IconManager and of the function f.showiconmgr).

       Windows are resized  by  pressing  the  right  titlebutton
       (which  resembles a group of nested squares), dragging the
       pointer over edge that is to be moved, and  releasing  the
       pointer  when  the  outline  of  the window is the desired
       size.  Similarly, windows are moved  by  pressing  in  the
       title  or  highlight  region, dragging a window outline to
       the new location, and then releasing when the  outline  is
       in  the  desired  position.  Just clicking in the title or
       highlight region raises the window without moving it.

       When new windows are created, vtwm will honor any size and
       location   information  requested  by  the  user  (usually
       through -geometry command line argument or  resources  for
       the  individual  applications).   Otherwise, an outline of
       the window's default size, its titlebar, and lines  divid-
       ing  the window into a 3x3 grid that track the pointer are



X Version 11                                                    1





VTWM(1)                                                   VTWM(1)


       displayed.  Clicking pointer  Button1  will  position  the
       window  at  the  current  position and give it the default
       size.   Pressing  pointer  Button2  (usually  the   middle
       pointer  button)  and  dragging  the outline will give the
       window its current position but  allow  the  sides  to  be
       resized  as  described  above.   Clicking  pointer Button3
       (usually the right pointer button) will  give  the  window
       its current position but attempt to make it long enough to
       touch the bottom the screen.

OPTIONS
       Vtwm accepts the following command line options:


       -display dpy
               This option specifies the X server to use.

       -s      This option indicates that only the default screen
               (as  specified by -display or by the DISPLAY envi-
               ronment variable) should be managed.  By  default,
               twm will attempt to manage all screens on the dis-
               play.

       -f filename
               This option specifies the name of the startup file
               to  use.   By default, twm will look in the user's
               home directory for files named .vtwmrc.num  (where
               num is a screen number) or .vtwmrc.

       -v      This  option indicates that twm should print error
               messages whenever an unexpected X Error  event  is
               received.   This  can  be  useful  when  debugging
               applications but can  be  distracting  in  regular
               use.

CUSTOMIZATION
       Much  of  vtwm's appearance and behavior can be controlled
       by providing a startup file in one of the following  loca-
       tions  (searched  in  order  for each screen being managed
       when vtwm begins):

       $HOME/.vtwmrc.screennumber
               The screennumber is a small positive number  (e.g.
               0,  1, etc.)  representing the screen number (e.g.
               the last number in the DISPLAY  environment  vari-
               able host:displaynum.screennum) that would be used
               to contact that screen of the  display.   This  is
               intended  for  displays  with  multiple screens of
               differing visual types.

       $HOME/.vtwmrc
               This is the usual name for  an  individual  user's
               startup file.




X Version 11                                                    2





VTWM(1)                                                   VTWM(1)


       <Root>/lib/X11/twm/system.twmrc
               If  neither of the preceding files are found, vtwm
               will look in this file for  a  default  configura-
               tion.  This is often tailored by the site adminis-
               trator to provide  convenient  menus  or  familiar
               bindings  for  novice users. <XRoot> refers to the
               root of the X11 install tree.

       If no startup files are found, vtwm will use the  built-in
       defaults  described  above. The only resource used by vtwm
       is bitmapFilePath for a colon-separated list  of  directo-
       ries  to  search  when  looking for bitmap files (for more
       information, see the Athena Widgets manual and xrdb(1)).

       The startup file is run through the M4 macro processor for
       making  it easier to customize vtwm's behavior for differ-
       ent displays. When the startup file is processed, the fol-
       lowing M4 variables are set:

       TWM     Defined to be 1.

       VTWM    Defined to be 1.

       VTWMPATCHLEVEL
               The current patch level of vtwm.

       WIDTH   The width of the display.

       HEIGHT  The height of the display.

       DEPTH   The  depth  of the display (i.e. the number of bit
               planes).

       SERVERHOST
               The host name of the X server.

       CLIENTHOST
               The host name of the computer running vtwm.

       CLASS   The class name of the default visual.

       COLOR   Yes or No depending on whether the  display  is  a
               color or monochrome/grayscale display.

       Vtwm  startup  files  are  logically  broken up into three
       types of specifications:  Variables, Bindings, Menus.  The
       Variables  section must come first and is used to describe
       the fonts, colors, cursors, border widths, icon and window
       placement,  highlighting,  autoraising,  layout of titles,
       warping, use of the icon manager.   The  Bindings  section
       usually  comes second and is used to specify the functions
       that should be to be invoked  when  keyboard  and  pointer
       buttons are pressed in windows, icons, titles, and frames.
       The Menus section gives any user-defined menus (containing



X Version 11                                                    3





VTWM(1)                                                   VTWM(1)


       functions to be invoked or commands to be executed).

       Variable names and keywords are case-insensitive.  Strings
       must  be  surrounded  by  double  quote  characters  (e.g.
       "blue")  and are case-sensitive.  A pound sign (#) outside
       of a string causes the remainder of the line in which  the
       character appears to be treated as a comment.

VARIABLES
       Many  of  the  aspects  of  vtwm's user interface are con-
       trolled by variables that may be set in the user's startup
       file.   Some of the options are enabled or disabled simply
       by the presence of a particular  keyword.   Other  options
       require  keywords,  numbers,  strings,  or lists of all of
       these.

       Lists are surrounded by braces and are  usually  separated
       by whitespace or a newline.  For example:

            AutoRaise { "emacs" "XTerm" "Xmh" }

       or

            AutoRaise
            {
                 "emacs"
                 "XTerm"
                 "Xmh"
            }

       When  a variable containing a list of strings representing
       windows is searched (e.g. to determine whether or  not  to
       enable  autoraise  as  shown  above),  a string must be an
       exact, case-sensitive match to the window's name (given by
       the  WM NAME window property), resource name or class name
       (both given by the WM CLASS window property).  The preced-
       ing  example  would  enable  autoraise  on  windows  named
       ``emacs'' as well as any xterm (since they  are  of  class
       ``XTerm'') or xmh windows (which are of class ``Xmh'').

       String  arguments  that  are interpreted as filenames (see
       the  Pixmaps,  Cursors,  and  IconDirectory  below)   will
       prepend  the user's directory (specified by the HOME envi-
       ronment variable) if the first character is a  tilde  (~).
       If,  instead, the first character is a colon (:), the name
       is assumed to refer to one of the  internal  bitmaps  that
       are  used  to create the default titlebars symbols: :xlogo
       or :delete (both refer to the X logo),  :dot  or  :iconify
       (both  refer to the dot), :resize (the nested squares used
       by the resize button), :menu (a page with  lines),  :ques-
       tion  (the  question  mark  used  for  non-existent bitmap
       files), and :kill (a skull with bones). There are a number
       of  internal  three dimensional symbols: :xpm:bar (a hori-
       zontal bar), :xpm:dot  (a  small  dot),  :xpm:resize  (the



X Version 11                                                    4





VTWM(1)                                                   VTWM(1)


       nested squares), :xpm:zoom (a box), :xpm:menu (a menu sym-
       bol), :xpm:vbar (a vertical bar), :xpm:iconify (a downward
       pointing  triangle),  :xpm:box (a box), :xpm:sunkresize (a
       ``sunken''  resize  symbol),  :xpm:question  (a   question
       mark), and :xpm:kill (a skull with bones).

       The  following  variables may be specified at the top of a
       vtwm startup file.  Lists of Window  name  prefix  strings
       are  indicated  by win-list.  Optional arguments are shown
       in square brackets:

       AddMoveFunction movefunction
               This variable specifies the move  function  to  be
               used  when  adding  new  windows using interactive
               placement. Only effective  if  RandomPlacement  is
               not specified. The default is f.move.

       AutoPanDelay num
               The number of milliseconds to delay before panning
               automatically when the pointer hits  the  edge  of
               the screen. The default is -1 (no automatical pan-
               ning).

       AutoPanDistanceX num

       AutoPanDistanceY num
               This variable specifies the percentage of the real
               screen  to  pan  when  using  automatical  panning
               (0-100). The default is 100.

       AutoRaise { win-list }
               This variable specifies a  list  of  windows  that
               should   automatically   be  raised  whenever  the
               pointer enters the  window.  This  action  can  be
               interactively  enabled  or  disabled on individual
               windows using the function f.autoraise.

       AutoRelativeResize
               This variable indicates that dragging out a window
               size (either when initially sizing the window with
               pointer Button2 or when resizing  it)  should  not
               wait  until  the  pointer  has  crossed the window
               edges.  Instead, moving the pointer  automatically
               causes  the  nearest  edge or edges to move by the
               same amount. This allows the resizing  of  windows
               that  extend  off  the  edge of the screen. If the
               pointer is in the center of the window, or if  the
               resize  is  begun  by pressing a titlebutton, vtwm
               will still wait for the pointer to cross a  window
               edge  (to  prevent accidents). This option is par-
               ticularly useful for people who  like  the  press-
               drag-release  method of sweeping out window sizes.





X Version 11                                                    5





VTWM(1)                                                   VTWM(1)


       BorderColor string [{ wincolorlist }]
               This variable specifies the default color  of  the
               border  to be placed around all non-iconified win-
               dows, and  may  only  be  given  within  a  Color,
               Grayscale or Monochrome list. The optional wincol-
               orlist specifies a list of window and  color  name
               pairs  for specifying particular border colors for
               different types of windows.  For example:

                    BorderColor "gray50"
                    {
                         "XTerm"   "red"
                         "xmh"     "green"
                    }

               The default is "black".

       BorderShadowDepth num
               Depth of the border  shadow  in  3D  borders.  The
               default is 2.

       BorderTileBackground string [{ wincolorlist }]
               This  variable  specifies  the  default background
               color in the gray pattern  used  in  unhighlighted
               borders (only if NoHighlight hasn't been set), and
               may only be given within  a  Color,  Grayscale  or
               Monochrome  list. The optional wincolorlist allows
               per-window colors to be specified. The default  is
               "white".  When  using  3D  look this specifies the
               border and title color used for inactive  windows.

       BorderTileForeground string [{ wincolorlist }]
               This  variable  specifies  the  default foreground
               color in the gray pattern  used  in  unhighlighted
               borders (only if NoHighlight hasn't been set), and
               may only be given within  a  Color,  Grayscale  or
               Monochrome list.  The optional wincolorlist allows
               per-window colors to be specified.  The default is
               "black".

       BorderWidth pixels
               This variable specifies the width in pixels of the
               border surrounding all  client  window  frames  if
               ClientBorderWidth  has  not  been specified.  This
               value is also used to set the border size of  win-
               dows  created  by vtwm (such as the icon manager).
               The default is 2.

       ButtonIndent pixels
               This variable specifies the amount by which title-
               buttons should be indented on all sides.  Positive
               values cause the buttons to be  smaller  than  the
               window  text and highlight area so that they stand
               out.  Setting this and the  TitleButtonBorderWidth



X Version 11                                                    6





VTWM(1)                                                   VTWM(1)


               variables  to  0 makes titlebuttons be as tall and
               wide as possible.  The default is 1.

       ClientBorderWidth
               This variable indicates that  border  width  of  a
               window's frame should be set to the initial border
               width of the window, rather than to the  value  of
               BorderWidth.

       Color { colors-list }
               This  variable  specifies  a list of color assign-
               ments to be made if the default display is capable
               of  displaying  more  than simple black and white.
               The colors-list is made up of the following  color
               variables  and  their  values:  DefaultBackground,
               DefaultForeground, MenuBackground, MenuForeground,
               MenuTitleBackground,          MenuTitleForeground,
               MenuShadowColor, PointerForeground,  and  Pointer-
               Background.   The  following  color  variables may
               also be given a list  of  window  and  color  name
               pairs  to  allow per-window colors to be specified
               (see BorderColor for details): BorderColor,  Icon-
               ManagerHighlight, BorderTitleBackground, BorderTi-
               tleForeground,   DesktopDisplayBackground,   Desk-
               topDisplayForeground,  TitleBackground, TitleFore-
               ground, IconBackground,  IconForeground,  IconBor-
               derColor,  IconManagerBackground, and IconManager-
               Foreground.  For example:

                    Color
                    {
                         MenuBackground      "gray50"
                         MenuForeground      "blue"
                         BorderColor              "red" { "XTerm" "yellow" }
                         TitleForeground          "yellow"
                         TitleBackground          "blue"
                    }

               All of these color variables may also be specified
               for  the  Monochrome  variable,  allowing the same
               initialization file to be used on both  color  and
               monochrome displays.

       ConstrainedMoveTime milliseconds
               This variable specifies the length of time between
               button clicks needed to begin a  constrained  move
               operation.   Double clicking within this amount of
               time when invoking f.move will cause the window to
               be  moved  only in a horizontal or vertical direc-
               tion.  Setting this value to 0 will  disable  con-
               strained  moves.  The default is 400 milliseconds.

       Cursors { cursor-list }
               This  variable  specifies  the  glyphs  that  vtwm



X Version 11                                                    7





VTWM(1)                                                   VTWM(1)


               should use for various pointer cursors.  Each cur-
               sor may be defined either from the cursor font  or
               from  two  bitmap  files.   Shapes from the cursor
               font may be specified directly as:

                         cursorname     "string"

               where cursorname is one of the cursor names listed
               below,  and string is the name of a glyph as found
               in   the   file   <XRoot>/include/X11/cursorfont.h
               (without the ``XC '' prefix).  If the cursor is to
               be defined from bitmap files, the following syntax
               is used instead:

                         cursorname     "image"   "mask"

               The  image  and  mask strings specify the names of
               files containing  the  glyph  image  and  mask  in
               bitmap(1)  form.   The bitmap files are located in
               the same manner as icon bitmap files.  The follow-
               ing example shows the default cursor definitions:

                    Cursors
                    {
                         Frame          "top left arrow"
                         Title          "top left arrow"
                         Icon      "top left arrow"
                         IconMgr   "top left arrow"
                         Move      "fleur"
                         Resize         "fleur"
                         Menu      "sb left arrow"
                         Button         "hand2"
                         Wait      "watch"
                         Select         "dot"
                         Destroy   "pirate"
                    }


       DecorateTransients
               This  variable  indicates  that  transient windows
               (those  containing  a  WM TRANSIENT FOR  property)
               should have titlebars.  By default, transients are
               not reparented.

       DeiconifyToScreen
               When deiconifying a window, by default, the window
               will  be  placed  at  its previous geometry in the
               virtual desktop.  With  this  variable  set,  vtwm
               ensures  that  the window will be placed somewhere
               on the real screen.

       DefaultBackground string
               This variable specifies the background color to be
               used  for  sizing  and  information  windows.  The



X Version 11                                                    8





VTWM(1)                                                   VTWM(1)


               default is "white".

       DefaultForeground string
               This variable specifies the foreground color to be
               used  for  sizing  and  information  windows.  The
               default is "black".

       DefaultDesktopBackground string { win-list }
               This variable specifies the  background  color  of
               the  window's  representation in the virtual desk-
               top, and may only be specified inside of a  Color,
               Grayscale  or  Monochrome  list. The optional win-
               list is a list of window names and colors so  that
               per-window colors may be specified. The default is
               "white".

       DefaultDesktopForeground string { win-list }
               This variable specifies the  foreground  color  of
               the  window's  representation in the virtual desk-
               top, and may only be specified inside of a  Color,
               Grayscale  or  Monochrome  list. The optional win-
               list is a list of window names and colors so  that
               per-window colors may be specified. The default is
               "white".

       DontIconifyByUnmapping { win-list }
               This variable specifies a  list  of  windows  that
               should  not  be  iconified by simply unmapping the
               window (as would be the case if IconifyByUnmapping
               had  been  set).  This is frequently used to force
               some windows to be treated as  icons  while  other
               windows are handled by the icon manager.

       DontMoveOff
               This variable indicates that windows should not be
               allowed to be moved off the  screen.   It  can  be
               overridden by the f.forcemove function.

       DontSqueezeTitle [{ win-list }]
               This  variable indicates that titlebars should not
               be squeezed to their  minimum  size  as  described
               under  SqueezeTitle below.  If the optional window
               list is supplied, only those windows will be  pre-
               vented from being squeezed.

       ForceIcons
               This  variable  indicates that icon pixmaps speci-
               fied in the Icons  variable  should  override  any
               client-supplied pixmaps.

       FramePadding pixels
               This  variable  specifies the distance between the
               titlebar decorations (the button and text) and the
               window frame.  The default is 2 pixels.



X Version 11                                                    9





VTWM(1)                                                   VTWM(1)


       Grayscale { colors }
               This  variable  specifies  a list of color assign-
               ments that should be made  if  the  screen  has  a
               GrayScale  default visual.  See the description of
               Colors.

       IconBackground string [{ win-list }]
               This variable specifies the  background  color  of
               icons,  and  may  only  be  specified  inside of a
               Color, Grayscale or Monochrome list.  The optional
               win-list  is  a list of window names and colors so
               that per-window colors may be specified.  See  the
               BorderColor variable for a complete description of
               the win-list.  The default is "white".

       IconBorderColor string [{ win-list }]
               This variable specifies the color  of  the  border
               used  for  icon windows, and may only be specified
               inside of a Color, Grayscale or  Monochrome  list.
               The  optional  win-list  is a list of window names
               and colors so that per-window colors may be speci-
               fied.  See the BorderColor variable for a complete
               description  of  the  win-list.   The  default  is
               "black".

       IconBorderWidth pixels
               This variable specifies the width in pixels of the
               border surrounding icon windows.  The  default  is
               2.

       IconDirectory string
               This  variable specifies the directory that should
               be searched if if a bitmap file cannot be found in
               any  of  the  directories  in  the  bitmapFilePath
               resource.

       IconFont string
               This variable specifies the font  to  be  used  to
               display  icon  names within icons.  The default is
               "variable".

       IconForeground string [{ win-list }]
               This variable specifies the foreground color to be
               used when displaying icons, and may only be speci-
               fied inside of a Color,  Grayscale  or  Monochrome
               list.   The  optional win-list is a list of window
               names and colors so that per-window colors may  be
               specified.   See  the  BorderColor  variable for a
               complete description of the win-list.  The default
               is "black".

       IconifyByUnmapping [{ win-list }]
               This  variable  indicates  that  windows should be
               iconified by being unmapped without trying to  map



X Version 11                                                   10





VTWM(1)                                                   VTWM(1)


               any  icons.  This assumes that the user will remap
               the window through the icon manager, the  f.warpto
               function, or the TwmWindows menu.  If the optional
               win-list is provided, only those windows  will  be
               iconified  by simply unmapping.  Windows that have
               both this and the IconManagerDontShow options  set
               may not be accessible if no binding to the TwmWin-
               dows menu is set in the user's startup file.

       IconManagerBackground string [{ win-list }]
               This variable specifies the  background  color  to
               use  for  icon  manager  entries,  and may only be
               specified  inside  of  a   Color,   Grayscale   or
               Monochrome  list.  The optional win-list is a list
               of window names and colors so that per-window col-
               ors  may  be specified.  See the BorderColor vari-
               able for a complete description of  the  win-list.
               The default is "white".

       IconManagerDontShow [{ win-list }]
               This  variable  indicates  that  the  icon manager
               should not display any windows.  If  the  optional
               win-list  is given, only those windows will not be
               displayed.  This variable is used to prevent  win-
               dows  that are rarely iconified (such as xclock or
               xload) from taking up space in the icon manager.

       IconManagerFont string
               This variable specifies the font to be  used  when
               displaying  icon  manager entries.  The default is
               "variable".

       IconManagerForeground string [{ win-list }]
               This variable specifies the foreground color to be
               used when displaying icon manager entries, and may
               only be specified inside of a Color, Grayscale  or
               Monochrome  list.  The optional win-list is a list
               of window names and colors so that per-window col-
               ors  may  be specified.  See the BorderColor vari-
               able for a complete description of  the  win-list.
               The default is "black".

       IconManagerGeometry string [ nentries [dir1 [ dir2 ] ] ]
               This  variable  specifies  the geometry and growth
               direction of the icon manager window.  The  string
               argument  is  standard geometry specification that
               indicates the size of the entries in the icon man-
               ager.  The  icon  manager will grow first in dir1,
               and when there are  nentries  in  that  direction,
               another  row  or column will be added in direction
               dir2. The defaults for dir1 and dir2 are SOUTH and
               WEST (i.e. first downwards and then to the right).





X Version 11                                                   11





VTWM(1)                                                   VTWM(1)


       IconManagerHighlight string [{ win-list }]
               This variable specifies the  border  color  to  be
               used when highlighting the icon manager entry that
               currently has the focus, and can only be specified
               inside  of  a Color, Grayscale or Monochrome list.
               The optional win-list is a list  of  window  names
               and colors so that per-window colors may be speci-
               fied.  See the BorderColor variable for a complete
               description  of  the  win-list.   The  default  is
               "black".

       IconManagers { iconmgr-list }
               This variable specifies a list of icon managers to
               create.   Each  item  in  the iconmgr-list has the
               following format:

                         "winname" ["iconname"]   "geometry" [
                    nentries [ dir1 [ dir2 ] ] ]

               where winname is the  name  of  the  windows  that
               should  be put into this icon manager, iconname is
               the name of that icon manager window's icon, geom-
               etry  is  a  standard  geometry specification, and
               nentries, dir1, and dir2 are the number of entries
               in and the groft of this icon manager as described
               in IconManagerGeometry. For example:

                    IconManagers
                    {
                         "Emacs"   "=80x5-5-5"    4 NORTH WEST
                         "XTerm"   "=80x5-5+5"    5
                         "myhost"  "=80x5+100+5"  2
                    }

               Clients whose name or class is ``XTerm'' will have
               an  entry  created  in the ``XTerm'' icon manager.
               Clients whose name was  ``myhost''  would  be  put
               into  the  ``myhost''  icon manager. Clients whise
               name or class is ``Emacs'' will be  put  into  the
               ``Emacs'' icon manager which grows from the bottom
               right corner upwards and then to the left.

       IconManagerShow { win-list }
               This variable specifies a  list  of  windows  that
               should  appear  in the icon manager.  When used in
               conjunction with the IconManagerDontShow variable,
               only the windows in this list will be shown in the
               icon manager.

       IconRegion geomstring vgrav hgrav gridwidth gridheight
               This variable specifies an area on the root window
               in  which  icons  are  placed  if no specific icon
               location is provided by  the  client.   The  geom-
               string  is  a  quoted string containing a standard



X Version 11                                                   12





VTWM(1)                                                   VTWM(1)


               geometry specification.  If more than one  IconRe-
               gion  lines  are given, icons will be put into the
               succeeding icon regions when the  first  is  full.
               The vgrav argument should be either North or South
               and control and is used to control  whether  icons
               are  first filled in from the top or bottom of the
               icon region.  Similarly, the hgrav argument should
               be  either  East  or  West  and is used to control
               whether icons should be filled in from  left  from
               the  right.   Icons are laid out within the region
               in a grid with cells  gridwidth  pixels  wide  and
               gridheight pixels high.

       Icons { win-list }
               This variable specifies a list of window names and
               the bitmap filenames that should be used as  their
               icons.  For example:

                    Icons
                    {
                         "XTerm"   "xterm.icon"
                         "xfd"          "xfd icon"
                    }

               Windows  that  match  ``XTerm''  and  would not be
               iconified by unmapping, and would try to  use  the
               icon bitmap in the file ``xterm.icon''.  If Force-
               Icons is specified, this bitmap will be used  even
               if the client has requested its own icon pixmap.

       InterpolateMenuColors
               This  variable  indicates  that  menu entry colors
               should be  interpolated  between  entry  specified
               colors.  In the example below:

                    Menu "mymenu"
                    {
                         "Title"        ("black":"red")          f.title
                         "entry1"                 f.nop
                         "entry2"                 f.nop
                         "entry3"  ("white":"green")   f.nop
                         "entry4"                 f.nop
                         "entry5"  ("red":"white")          f.nop
                    }

               the   foreground   colors   for   ``entry1''   and
               ``entry2'' will be interpolated between black  and
               white,  and  the background colors between red and
               green.  Similarly, the foreground  for  ``entry4''
               will  be  half-way  between white and red, and the
               background will  be  half-way  between  green  and
               white.





X Version 11                                                   13





VTWM(1)                                                   VTWM(1)


       MakeTitle { win-list }
               This variable specifies a list of windows on which
               a titlebar should be placed and is used to request
               titles  on  specific windows when NoTitle has been
               set.

       MaxWindowSize string
               This variable specifies a geometry  in  which  the
               width and height give the maximum size for a given
               window.  This is typically used to  restrict  win-
               dows to the size of the screen.  The default width
               is 32767 - screen width.  The  default  height  is
               32767 - screen height.

       MenuBackground string
               This  variable specifies the background color used
               for menus, and can only be specified inside  of  a
               Color or Monochrome list.  The default is "white".

       MenuFont string
               This variable specifies the font to use when  dis-
               playing menus.  The default is "variable".

       MenuForeground string
               This  variable specifies the foreground color used
               for menus, and can only be specified inside  of  a
               Color,  Grayscale or Monochrome list.  The default
               is "black".

       MenuShadowColor string
               This variable specifies the color  of  the  shadow
               behind  pull-down  menus and can only be specified
               inside of a Color, Grayscale or  Monochrome  list.
               The default is "black".

       MenuTitleBackground string
               This  variable  specifies the background color for
               f.title entries in menus, and can only  be  speci-
               fied  inside  of  a Color, Grayscale or Monochrome
               list.  The default is "white".

       MenuTitleForeground string
               This variable specifies the foreground  color  for
               f.title entries in menus and can only be specified
               inside of a Color or Monochrome list.  The default
               is "black".

       Monochrome { colors }
               This  variable  specifies  a list of color assign-
               ments that should be made  if  the  screen  has  a
               depth of 1.  See the description of Colors.

       MoveDelta pixels
               This  variable  specifies the number of pixels the



X Version 11                                                   14





VTWM(1)                                                   VTWM(1)


               pointer  must  move  before  the  f.move  function
               starts  working.   Also  see the f.deltastop func-
               tion.  The default is zero pixels.

       MoveOffResistance num
               Allows moving a window outside the screen if Dont-
               MoveOff  is  set  and the window is moved out more
               than MoveOffResistance pixels.

       ovePackResistance num
               The number of pixels that a window must be dragged
               over  another  in order to overlap them when using
               f.movepackP.

       NailedDown { win-list }
               This  variable  specifies  the  windows  that  are
               nailed  down  on  startup.  Nailed down windows do
               not show on the virtual desktop and  retain  their
               position in the physical screen while panning. The
               function f.nail can be used  to  dynamically  nail
               down and release windows.

       NoBackingStore
               This  variable  indicates that vtwm's menus should
               not request backing store to  minimize  repainting
               of  menus.   This  is  typically used with servers
               that can repaint faster than they can handle back-
               ing store.

       NoCaseSensitive
               This   variable  indicates  that  case  should  be
               ignored when sorting icon names in  an  icon  man-
               ager.  This option is typically used with applica-
               tions that capitalize the first  letter  of  their
               icon name.

       NoDefaults
               This  variable indicates that vtwm should not sup-
               ply the default titlebuttons and  bindings.   This
               option  should  only  be  used if the startup file
               contains a completely new set of bindings and def-
               initions.

       NoGrabServer
               This  variable indicates that vtwm should not grab
               the server when popping up menus and moving opaque
               windows.

       NoHighlight [{ win-list }]
               This variable indicates that borders should not be
               highlighted to track the location of the  pointer.
               If  the  optional  win-list is given, highlighting
               will only be disabled for those windows.  When the
               border  is  highlighted,  it  will be drawn in the



X Version 11                                                   15





VTWM(1)                                                   VTWM(1)


               current BorderColor.  When the border is not high-
               lighted,  it  will be stippled with a gray pattern
               using the current BorderTileForeground and Border-
               TileBackground colors.

       NoIconManagers
               This  variable  indicates  that  no  icon  manager
               should be created.

       NoMenuShadows
               This variable indicates that menus should not have
               drop shadows drawn behind them.  This is typically
               used with slower servers since it speeds  up  menu
               drawing at the expense of making the menu slightly
               harder to read.

       NoRaiseOnDeiconify
               This variable  indicates  that  windows  that  are
               deiconified should not be raised.

       NoRaiseOnMove
               This variable indicates that windows should not be
               raised when moved.   This  is  typically  used  to
               allow windows to slide underneath each other.

       NoRaiseOnResize
               This variable indicates that windows should not be
               raised when resized.  This is  typically  used  to
               allow windows to be resized underneath each other.

       NoRaiseOnWarp
               This variable indicates that windows should not be
               raised  when  the pointer is warped into them with
               the f.warpto function.  If  this  option  is  set,
               warping  to  an  occluded window may result in the
               pointer ending up in the occluding window  instead
               the desired window (which causes unexpected behav-
               ior with f.warpring).

       NoSaveUnders
               This variable  indicates  that  menus  should  not
               request  save-unders to minimize window repainting
               following menu selection.  It  is  typically  used
               with  displays  that  can repaint faster than they
               can handle save-unders.

       NoStackMode [{ win-list }]
               This  variable  indicates   that   client   window
               requests   to  change  stacking  order  should  be
               ignored.  If the optional win-list is given,  only
               requests  on  those windows will be ignored.  This
               is typically used  to  prevent  applications  from
               relentlessly  popping  themselves  to the front of
               the window stack.



X Version 11                                                   16





VTWM(1)                                                   VTWM(1)


       NoTitle [{ win-list }]
               This variable indicates that  windows  should  not
               have  titlebars.   If  the  optional  win-list  is
               given, only those windows will not have titlebars.
               MakeTitle  may  be  used with this option to force
               titlebars to be put on specific windows.

       NoTitleFocus
               This variable indicates that vtwm should  not  set
               keyboard  input  focus  to  each  window  as it is
               entered.  Normally, vtwm sets the  focus  so  that
               focus  and  key  events from the titlebar and icon
               managers are delivered to the application.  If the
               pointer  is  moved  quickly  and  vtwm  is slow to
               respond, input can be directed to the  old  window
               instead of the new.  This option is typically used
               to prevent this ``input lag'' and to  work  around
               bugs in older applications that have problems with
               focus events.

       NoTitleHighlight [{ win-list }]
               This variable indicates that the highlight area of
               the titlebar, which is used to indicate the window
               that currently has the input focus, should not  be
               displayed.   If  the  optional  win-list is given,
               only those windows will not have highlight  areas.
               This  and  the  SqueezeTitle options can be set to
               substantially reduce the amount  of  screen  space
               required by titlebars.

       OpaqueMove
               This  variable  indicates that the f.move function
               should actually move the window instead of just an
               outline  so that the user can immediately see what
               the window will look like  in  the  new  position.
               This  option  is  typically  used on fast displays
               (particularly if NoGrabServer is set).

       OpaqueResize
               The same as OpaqueMove for resize operations.

       Pixmaps { pixmaps }
               This variable specifies a  list  of  pixmaps  that
               define  the  appearance  of  various images.  Each
               entry is a keyword indicating the pixmap  to  set,
               followed by a string giving the name of the bitmap
               file.  The following pixmaps may be specified:

                    Pixmaps
                    {
                         TitleHighlight "gray1"
                    }

               The default for TitleHighlight is to use  an  even



X Version 11                                                   17





VTWM(1)                                                   VTWM(1)


               stipple pattern.

       PanDistanceX num

       PanDistanceY num
               This  variable is the percentage of screen to move
               when one of the pan functions is  called.  E.g.  a
               PanDistanceX  of  50 would move the real screen by
               one half of the screen's width  in  the  specified
               direction.

       Priority priority
               This  variable  sets  vtwm's  priority.   priority
               should be an unquoted, signed number  (e.g.  999).
               This  variable  has  an  effect only if the server
               supports the SYNC extension.

       RandomPlacement
               This variable indicates that windows with no spec-
               ified geometry should be placed in a pseudo-random
               location instead of having the user  drag  out  an
               outline.

       RaiseVirtualOnMove
               Raise  the  virtual  desktop  when moving windows.
               Useful when  dragging  windows  into  the  virtual
               desktop and OpaqueMove is on.

       ResizeFont string
               This variable specifies the font to be used for in
               the dimensions window when resizing windows.   The
               default is "fixed".

       RestartPreviousState
               This  variable  indicates that vtwm should attempt
               to use the WM STATE property on client windows  to
               tell  which  windows should be iconified and which
               should be left visible.  This is typically used to
               try to regenerate the state that the screen was in
               before the previous window manager was shutdown.

       SaveColor { colors-list }
               This variable indicates a list  of  color  assign-
               ments  to  be  stored  as pixel values in the root
               window property  MIT PRIORITY COLORS.  Clients may
               elect  to  preserve  these  values when installing
               their own colormap.  Note that use of this  mecha-
               nism  is  a  way  an  for application to avoid the
               "technicolor"  problem,  whereby   useful   screen
               objects  such as window borders and titlebars dis-
               appear when a programs custom colors are installed






X Version 11                                                   18





VTWM(1)                                                   VTWM(1)


               by the window manager.  For example:

                    SaveColor
                    {
                            BorderColor
                            TitleBackground
                            TitleForeground
                            "red"
                            "green"
                            "blue"
                    }

               This would place on the root window 3 pixel values
               for borders and titlebars, as well  as  the  three
               color  strings,  all  taken  from the default col-
               ormap.

       ShowIconManager
               This variable indicates that the icon manager win-
               dow  should be displayed when vtwm is started.  It
               can always be brought up using  the  f.showiconmgr
               function.

       SortIconManager
               This  variable  indicates that entries in the icon
               manager should  be  sorted  alphabetically  rather
               than by simply appending new windows to the end.

       SqueezeTitle [{ squeeze-list }]
               This  variable  indicates that vtwm should attempt
               to use  the  SHAPE  extension  to  make  titlebars
               occupy  only  as  much  screen space as they need,
               rather than extending all the way across  the  top
               of  the  window.  The optional squeeze-list may be
               used to  control  the  location  of  the  squeezed
               titlebar along the top of the window.  It contains
               entries of the form:

                         "name"         justification  num  denom

               where name is  a  window  name,  justification  is
               either  left,  center, or right, and num and denom
               are numbers specifying a ratio giving the relative
               position  about  which  the titlebar is justified.
               The ratio is measured from left to  right  if  the
               numerator  is positive, and right to left if nega-
               tive.  A  denominator  of  0  indicates  that  the
               numerator  should be measured in pixels.  For con-
               venience, the ratio 0/0 is the  same  as  1/2  for
               center and -1/1 for right.  For example:

                    SqueezeTitle
                    {
                         "XTerm"   left      0    0



X Version 11                                                   19





VTWM(1)                                                   VTWM(1)


                         "xterm1"  left      1    3
                         "xterm2"  left      2    3
                         "oclock"  center         0    0
                         "emacs"   right          0    0
                    }

               The  DontSqueezeTitle list can be used to turn off
               squeezing on certain titles.

       StartIconified [{ win-list }]
               This variable indicates that client windows should
               initially   be  left  as  icons  until  explicitly
               deiconified by the user.  If the optional win-list
               is  given,  only  those  windows  will  be started
               iconic.  This is useful for programs that  do  not
               support   an   -iconic   command  line  option  or
               resource.

       ShapedIconManagers
               Uses the SHAPE extension (if available)  to  shape
               icon managers so that they use only as little room
               as possible.

       StayUpMenus
               Use menus which stay visible until another  button
               click.

       StayUpThreshold pixels
               The  number of pixels the cursor must move until a
               ButtonUp event selects  a  menu  item  without  an
               additional click. Useful when StayUpMenus is spec-
               ified and the user wants to select a menu item  by
               click-drag-release.

       ThreeDBorderWidth pixels
               The width of three dimensional borders.

       TitleBackground string [{ win-list }]
               This  variable specifies the background color used
               in titlebars, and may only be specified inside  of
               a   Color,  Grayscale  or  Monochrome  list.   The
               optional win-list is a list of  window  names  and
               colors so that per-window colors may be specified.
               The default is "white".

       TitleButtonBorderWidth pixels
               This variable specifies the width in pixels of the
               border  surrounding  titlebuttons.   This is typi-
               cally set to 0 to allow titlebuttons to take up as
               much  space  as possible and to not have a border.
               The default is 1.

       TitleButtonShadowDepth pixels
               This variable specifies the  depth  in  pixels  of



X Version 11                                                   20





VTWM(1)                                                   VTWM(1)


               three dimensional title buttons.

       TitleFont string
               This  variable  specifies  the font to be used for
               displaying window names in titlebars.  The default
               is "variable".

       TitleForeground string [{ win-list }]
               This  variable specifies the foreground color used
               in titlebars, and may only be specified inside  of
               a   Color,  Grayscale  or  Monochrome  list.   The
               optional win-list is a list of  window  names  and
               colors so that per-window colors may be specified.
               The default is "black".

       TitleJustification string
               This variable specifies how the title text is jus-
               tified.  The  allowed  values are "left", "right",
               and "center".

       TitlePadding pixels
               This variable specifies the distance  between  the
               various  buttons, text, and highlight areas in the
               titlebar.  The default is 8 pixels.

       TitleShadowDepth pixels
               This variable specifies the  depth  of  the  title
               when using three dimensional look in the titles.

       UnknownIcon string
               This  variable  specifies the filename of a bitmap
               file to be used as the default icon.  This  bitmap
               will  be  used as the icon of all clients which do
               not provide an icon bitmap and are not  listed  in
               the Icons list.

       UsePPosition string
               This variable specifies whether or not vtwm should
               honor program-requested locations  (given  by  the
               PPosition flag in the WM NORMAL HINTS property) in
               the absence of  a  user-specified  position.   The
               argument  string  may  have  one  of three values:
               "off" (the default) indicating  that  vtwm  should
               ignore  the  program-supplied position, "on" indi-
               cating that the position should be used, and "non-
               zero"  indicating that the position should used if
               it is other than (0,0).  The latter option is  for
               working around a bug in older toolkits.

       UseThreeDBorders

       UseThreeDIconManagers





X Version 11                                                   21





VTWM(1)                                                   VTWM(1)


       UseThreeDMenus

       UseThreeDTitles
               Use  a  three  dimensional  look for borders, icon
               managers, menus, and window titles.

       VirtualDesktop geometry scale

       VirtualDesktop geometry size
               This variable specifies the size and placement  of
               the  virtual desktop window. It specifies the size
               and placement of the virtual desktop  display  and
               the scaling factor used in the desktop.

                         VirtualDesktop "4x2+10+10"    20

               This  defines a virtual desktop which is 4 times 2
               the size of the physical screen scaled down by 20.
               This  retains  the  aspect  ratio  of the physical
               screen.

                         VirtualDesktop "100x50+10+10" "4x2"

               This defines a virtual desktop which is 100 by  50
               pixels  and  contains  4 by 2 real screens. All of
               the windows in the virtual desktop will be  scaled
               according to the aspect ratio defined by the geom-
               etry.

       WarpCursor [{ win-list }]
               This variable indicates that the pointer should be
               warped into windows when they are deiconified.  If
               the optional win-list is given, the  pointer  will
               only be warped when those windows are deiconified.

       WindowRing { win-list }
               This variable specifies a list  of  windows  along
               which the f.warpring function cycles.

       WarpUnmapped
               This variable indicates that the f.warpto function
               should deiconify any iconified windows it  encoun-
               ters.   This is typically used to make a key bind-
               ing that will pop a  particular  window  (such  as
               xmh),  no  matter where it is.  The default is for
               f.warpto to ignore iconified windows.

       WarpWindows
               When warping to a  window,  by  default  the  real
               screen  will  be  moved  to find the window on the
               virtual desktop. With this set, the window  itself
               will  be  warped to the real screen, moving in the
               virtual desktop.




X Version 11                                                   22





VTWM(1)                                                   VTWM(1)


       XorValue number
               This variable specifies  the  value  to  use  when
               drawing  window  outlines for moving and resizing.
               This should be set to a value that will result  in
               a variety of of distinguishable colors when exclu-
               sive-or'ed with the contents of the user's typical
               screen.   Setting  this  variable to 1 often gives
               nice results if adjacent  colors  in  the  default
               colormap  are  distinct.   By  default,  vtwm will
               attempt to cause temporary lines to appear at  the
               opposite end of the colormap from the graphics.

       Zoom [ count ]
               This  variable  indicates that outlines suggesting
               movement of a window to  and  from  its  iconified
               state  should  be  displayed  whenever a window is
               iconified  or  deiconified.   The  optional  count
               argument  specifies  the  number of outlines to be
               drawn.  The default count is 8.

       ZoomRegions { zoomlist }
               This variable specifies the zoom regions  used  by
               f.zoomtoregion.   Zoom  regions  are  specified as
               follows:

                         "window"  "geometry"

               For example:

                    ZoomRegions
                    {
                         "XTerm"        "500x350+0+0"
                         "XTerm"        "500x570+0+350"
                         "Emacs"        "500x820-0-0"
                    }


       The following variables must be set after the  fonts  have
       been  assigned,  so  it is usually best to put them at the
       end of the variables or beginning  of  the  bindings  sec-
       tions:

       DefaultFunction function
               This  variable  specifies  the function to be exe-
               cuted when a key or button event is  received  for
               which  no  binding is provided.  This is typically
               bound to f.nop, f.beep, or a menu containing  win-
               dow operations.

       WindowFunction function
               This  variable  specifies  the function to execute
               when a window  is  selected  from  the  TwmWindows
               menu.   If  this  variable  is not set, the window
               will be deiconified and raised.



X Version 11                                                   23





VTWM(1)                                                   VTWM(1)


BINDINGS
       After the desired variables have been set,  functions  may
       be  attached  titlebuttons  and  key  and pointer buttons.
       Titlebuttons may be added from the left or right side  and
       appear in the titlebar from left-to-right according to the
       order in which they are specified.  Key and pointer button
       bindings may be given in any order.

       Titlebuttons  specifications  must include the name of the
       pixmap to use in the button box and  the  function  to  be
       invoked when a pointer button is pressed within them:

            LeftTitleButton "bitmapname"  = function

       or

            RightTitleButton "bitmapname" = function

       The  bitmapname  may refer to one of the  built-in bitmaps
       (which are scaled to match TitleFont) by using the  appro-
       priate colon-prefixed name described above.

       Key  and pointer button specifications must give the modi-
       fiers that must be pressed, over which parts of the screen
       the  pointer  must be, and what function is to be invoked.
       Keys are  given  as  strings  containing  the  appropriate
       keysym  name;  buttons  are  given  as  the  keywords But-
       ton1-Button5:

            "FP1"          = modlist : context : function
            Button1   = modlist : context : function

       The modlist is  any  combination  of  the  modifier  names
       shift,  control,  lock,  meta,  mod1, mod2, mod3, mod4, or
       mod5 (which may be abbreviated as s, c, l, m, m1, m2,  m3,
       m4,  m5,  respectively)  separated  by a vertical bar (|).
       Similarly, the  context  is  any  combination  of  window,
       title,  icon,  root,  frame, iconmgr, virtual, their first
       letters (iconmgr abbreviation is m), or all, separated  by
       a  vertical  bar.  The function is any of the f.  keywords
       described below.  For example, the  default  startup  file
       contains the following bindings:

            Button1   =    : root         : f.menu "TwmWindows"
            Button1   = m  : window | icon     : f.function "move-or-lower"
            Button2   = m  : window | icon     : f.iconify
            Button3   = m  : window | icon     : f.function "move-or-raise"
            Button1   =    : title        : f.function "move-or-raise"
            Button2   =    : title        : f.raiselower
            Button1   =    : icon         : f.function "move-or-iconify"
            Button2   =    : icon         : f.iconify
            Button1   =    : iconmgr : f.iconify
            Button2   =    : iconmgr : f.iconify




X Version 11                                                   24





VTWM(1)                                                   VTWM(1)


       A  user  who  wanted to be able to manipulate windows from
       the keyboard could use the following bindings:

            "F1" =    : all          : f.iconify
            "F2" =    : all          : f.raiselower
            "F3" =    : all          : f.warpring "next"
            "F4" =    : all          : f.warpto "xmh"
            "F5" =    : all          : f.warpto "emacs"
            "F6" =    : all          : f.colormap "next"
            "F7" =    : all          : f.colormap "default"
            "F20"     =    : all          : f.warptoscreen "next"
            "Left"    = m  : all          : f.backiconmgr
            "Right"   = m | s   : all          : f.forwiconmgr
            "Up" = m  : all          : f.upiconmgr
            "Down"    = m | s   : all          : f.downiconmgr

       Vtwm provides many  more  window  manipulation  primitives
       than  can  be  conveniently stored in a titlebar, menu, or
       set of key bindings.  Although a small set of defaults are
       supplied  (unless the NoDefaults is specified), most users
       will want to have their most common  operations  bound  to
       key and button strokes.  To do this, vtwm associates names
       with each of  the  primitives  and  provides  user-defined
       functions  for  building higher level primitives and menus
       for interactively selecting among groups of functions.

       User-defined functions contain the name by which they  are
       referenced  in  calls  to  f.function  and a list of other
       functions to execute.  For example:

            Function "move-or-lower" { f.move f.deltastop f.lower }
            Function "move-or-raise" { f.move f.deltastop f.raise }
            Function "move-or-iconify"    { f.move f.deltastop f.iconify }
            Function "restore-colormap"   { f.colormap "default" f.lower }

       The function name must be used in f.function exactly as it
       appears in the function specification.

       In  the  descriptions  below,  if  the function is said to
       operate on the selected window, but is invoked from a root
       menu,  the cursor will be changed to the Select cursor and
       the next window to receive a button press will be chosen:

       ! string
               This is an abbreviation for f.exec string.

       f.autoraise
               This function toggles whether or not the  selected
               window  is raised whenever entered by the pointer.
               See the description of the variable AutoRaise.

       f.backiconmgr
               This function warps the pointer  to  the  previous
               column  in the current icon manager, wrapping back



X Version 11                                                   25





VTWM(1)                                                   VTWM(1)


               to the previous row if necessary.

       f.beep  This function sounds the keyboard bell.

       f.bottomzoom
               This function is similar to the  f.fullzoom  func-
               tion, but resizes the window to fill only the bot-
               tom half of the screen.

       f.circledown
               This function  lowers  the  top-most  window  that
               occludes another window.

       f.circleup
               This  function  raises the bottom-most window that
               is occluded by another window.

       f.colormap string
               This function rotates the colormaps (obtained from
               the  WM COLORMAP WINDOWS  property  on the window)
               that vtwm will display when the pointer is in this
               window.   The  argument string may have one of the
               following values: "next", "prev",  and  "default".
               It  should  be  noted  here  that  in general, the
               installed  colormap  is  determined  by   keyboard
               focus.   A  pointer  driven  keyboard  focus  will
               install a private colormap upon entry of the  win-
               dow  owning the colormap.  Using the click to type
               model, private colormaps  will  not  be  installed
               until  the user presses a mouse button on the tar-
               get window.

       f.deiconify
               This function deiconifies the selected window.  If
               the  window  is  not  an  icon, this function does
               nothing.

       f.delete
               This function sends the  WM DELETE WINDOW  message
               to  the  selected window if the client application
               has requested it through the  WM PROTOCOLS  window
               property.   The application is supposed to respond
               to the message by removing the  indicated  window.
               If  the  window has not requested WM DELETE WINDOW
               messages, the keyboard bell will be rung  indicat-
               ing  that  the  user  should choose an alternative
               method.   Note  this  is   very   different   from
               f.destroy.   The intent here is to delete a single
               window,  not necessarily the entire application.

       f.deltastop
               This function allows a user-defined function to be
               aborted  if  the  pointer has been moved more than
               MoveDelta  pixels.   See  the  example  definition



X Version 11                                                   26





VTWM(1)                                                   VTWM(1)


               given  for  Function "move-or-raise" at the begin-
               ning of the section.

       f.destroy
               This function instructs the X server to close  the
               display  connection of the client that created the
               selected window.  This should only be  used  as  a
               last  resort  for  shutting  down runaway clients.
               See also f.delete.

       f.downiconmgr
               This function warps the pointer to the next row in
               the current icon manger, wrapping to the beginning
               of the next column if necessary.

       f.exec string
               This  function  passes  the  argument  string   to
               /bin/sh  for  execution.   In multiscreen mode, if
               string starts a new X client without giving a dis-
               play  argument,  the  client  will  appear  on the
               screen from which this function was invoked.

       f.focus This function toggles the keyboard  focus  of  the
               server  to the selected window, changing the focus
               rule from pointer-driven  if  necessary.   If  the
               selected window already was focused, this function
               executes an f.unfocus.

       f.forcemove
               This  function  is  like  f.move  except  that  it
               ignores the DontMoveOff variable.

       f.forwiconmgr
               This function warps the pointer to the next column
               in the  current  icon  manager,  wrapping  to  the
               beginning of the next row if necessary.

       f.fullzoom
               This  function  resizes the selected window to the
               full size of the  display  or  else  restores  the
               original size if the window was already zoomed.

       f.function string
               This  function  executes the user-defined function
               whose name is specified by the argument string.

       f.goto string
               This function moves the real screen to the coordi-
               nates described by stringB. If string is a number,
               this moves the real  screen  to  the  nth  virtual
               screen modulo the virtual display size.

       f.hbzoom
               This function is a synonym for f.bottomzoom.



X Version 11                                                   27





VTWM(1)                                                   VTWM(1)


       f.hideiconmgr
               This function unmaps the current icon manager.

       f.horizoom
               This  function  is  similar to the f.zoom function
               except that the selected window is resized to  the
               full width of the display.

       f.htzoom
               This function is a synonym for f.topzoom.

       f.hzoom This function is a synonym for f.horizoom.

       f.iconify
               This   function   iconifies   or  deiconifies  the
               selected window or icon, respectively.

       f.iconifywarpcursor

       f.iconifywarpto

       f.iconifywarpwindow
               These functions are the same as their f.warp coun-
               terparts,  but  they  iconify  the  current window
               before warping.

       f.identify
               This function displays a summary of the  name  and
               geometry  of  the  selected window.  If the server
               supports the SYNC extension, the priority  of  the
               client   owning  the  window  is  also  displayed.
               Clicking the pointer or pressing a key in the win-
               dow will dismiss it.

       f.lefticonmgr
               This function similar to f.backiconmgr except that
               wrapping does not change rows.

       f.leftzoom
               This variable is similar to the f.bottomzoom func-
               tion  but  causes  the  selected  window  is  only
               resized to the left half of the display.

       f.lower This function lowers the selected window.

       f.menu string
               This function invokes the menu  specified  by  the
               argument  string.   Cascaded menus may be built by
               nesting calls to f.menu.

       f.move  This function drags an  outline  of  the  selected
               window  (or  the  window  itself if the OpaqueMove
               variable is set) until the invoking pointer button
               is released.  Double clicking within the number of



X Version 11                                                   28





VTWM(1)                                                   VTWM(1)


               milliseconds given  by  ConstrainedMoveTime  warps
               the  pointer  to the center of the window and con-
               strains the move to be either horizontal or verti-
               cal  depending  on which grid line is crossed.  To
               abort a move, press another button before  releas-
               ing the first button.

       f.movecursor string
               This function moves the cursor as indicated by the
               geometry in string. For example

                         f.movecursor   "+100+0"

               moves the cursor one hundred pixels to the  right.

       f.movepack
               This  function  behaves like f.move except that it
               tries to avoid overlapping windows. When the  mov-
               ing  window begins to overlap with another window,
               the move is stopped. If you go too  far  over  the
               other  window  (more  that MovePackResistance pix-
               els), the move is resumed and  the  moving  window
               overlaps  with  the  other  window. Useful to pack
               windows closely together.

       f.nail  Nails the specified window onto the real screen  -
               it  moves with the real screen and disappears from
               the Virtual Desktop display.  This  behaves  as  a
               toggle.

       f.nexticonmgr
               This  function  warps the pointer to the next icon
               manager containing any windows on the  current  or
               any succeeding screen.

       f.nop   This  function  does nothing and is typically used
               with the DefaultFunction or  WindowFunction  vari-
               ables or to introduce blank lines in menus.

       f.panup

       f.pandown

       f.panleft

       f.panright
               Move  the  real screen by PanDistance in the indi-
               cated direction. These are ideally  bound  to  the
               cursor keys:

                    "Up" = m : all : f.panup






X Version 11                                                   29





VTWM(1)                                                   VTWM(1)


       f.previconmgr
               This  function  warps  the pointer to the previous
               icon manager containing any windows on the current
               or preceding screens.

       f.priority string
               This function sets the priority of the client own-
               ing the selected window to the  numeric  value  of
               the  argument  string,  which  should  be a signed
               integer in double  quotes  (e.g.  "999"  ).   This
               function has an effect only if the server supports
               the SYNC extension.

       f.quit  This function causes vtwm to restore the  window's
               borders  and  exit.   If  vtwm is the first client
               invoked from xdm, this will  result  in  a  server
               reset.

       f.raise This function raises the selected window.

       f.raiselower
               This  function  raises  the selected window to the
               top of the stacking order if it is occluded by any
               windows, otherwise the window will be lowered.

       f.refresh
               This  function causes all windows to be refreshed.

       f.resetdesktop
               This function moves the real display to the origin
               of the virtual display (0, 0).

       f.resize
               This  function displays an outline of the selected
               window.  Crossing a border (or  setting  AutoRela-
               tiveResize)  will  cause  the  outline to begin to
               rubber band until the invoking button is released.
               To  abort  a  resize,  press another button before
               releasing the first button.

       f.restart

               This function kills and restarts vtwm.

       f.righticonmgr
               This function is similar to  f.nexticonmgr  except
               that wrapping does not change rows.

       f.rightzoom
               This variable is similar to the f.bottomzoom func-
               tion except  that  the  selected  window  is  only
               resized to the right half of the display.





X Version 11                                                   30





VTWM(1)                                                   VTWM(1)


       f.saveyourself
               This  function  sends a WM SAVEYOURSELF message to
               the selected window if it has requested  the  mes-
               sage in its WM PROTOCOLS window property.  Clients
               that accept this message are  supposed  to  check-
               point  all  state  associated  with the window and
               update the WM COMMAND property as specified in the
               ICCCM.   If  the  selected window has not selected
               for this message, the keyboard bell will be  rung.

       f.separator
               This  function  is  used  in menus to separate one
               item from another.

       f.showiconmgr
               This function maps the current icon manager.

       f.sorticonmgr
               This function sorts the  entries  in  the  current
               icon  manager  alphabetically.   See  the variable
               SortIconManager.

       f.title This function provides  a  centered,  unselectable
               item  in a menu definition.  It should not be used
               in any other context.

       f.topzoom
               This variable is similar to the f.bottomzoom func-
               tion  except  that  the  selected  window  is only
               resized to the top half of the display.

       f.unfocus
               This function resets the focus  back  to  pointer-
               driven.  This should be used when a focused window
               is no longer desired.

       f.upiconmgr
               This function warps the pointer  to  the  previous
               row  in  the current icon manager, wrapping to the
               last row in the same column if necessary.

       f.vlzoom
               This function is a synonym for f.leftzoom.

       f.vrzoom
               This function is a synonym for f.rightzoom.

       f.warpring string
               This function warps the pointer  to  the  next  or
               previous  window  (as  indicated  by  the argument
               string, which may be "next" or  "prev")  specified
               in the WindowRing variable.





X Version 11                                                   31





VTWM(1)                                                   VTWM(1)


       f.warpto string
               This  function  warps  the  pointer  to the window
               which has a name or class that matches string.  If
               the window is iconified, it will be deiconified if
               the variable WarpUnmapped is set or else  ignored.
               The  empty string (i.e. "") has a special meaning:
               it warps to the current window in an icon  manager
               or  the virtual desktop (i.e. the window under the
               cursor).

       f.warptoiconmgr string
               This function warps the pointer to the  icon  man-
               ager  entry  associated with the window containing
               the pointer in the icon manager specified  by  the
               argument  string.   If  string is empty (i.e. ""),
               the current icon manager is chosen.

       f.warptoscreen string
               This function warps  the  pointer  to  the  screen
               specified by the argument string.  String may be a
               number (e.g. "0" or "1"), the word  "next"  (indi-
               cating  the  current  screen plus 1, skipping over
               any unmanaged screens), the word "back"  (indicat-
               ing  the current screen minus 1, skipping over any
               unmanaged screens), or the word "prev" (indicating
               the last screen visited.

       f.winrefresh
               This function is similar to the f.refresh function
               except that only the selected window is refreshed.

       f.writefile stringP
               This  function  writes  the  contents  of  the cut
               buffer to the file specified by string.

       f.zoom  This function is similar to the  f.fullzoom  func-
               tion,  except  that  the  only  the  height of the
               selected window is changed.

       f.zoomto string
               This function zooms the  selected  window  to  the
               specified  geometry.   Absolute pixel size is used
               if string begins with a '=', otherwise the size is
               scaled by the unit size of the window.

       f.zoomtoregion
               This  function  zooms  the  selected  window  to a
               matching zoom region. The window's center must  be
               inside  the  zoom region. See ZoomRegions for more
               information about setting zoom regions.

MENUS
       Functions may be grouped and interactively selected  using
       pop-up (when bound to a pointer button) or pull-down (when



X Version 11                                                   32





VTWM(1)                                                   VTWM(1)


       associated with a titlebutton) menus.  Each menu  specifi-
       cation  contains  the  name  of  the  menu  as  it will be
       referred to by f.menu,  optional  default  foreground  and
       background  colors,  the  list of item names and the func-
       tions they should  invoke,  and  optional  foreground  and
       background colors for individual items:

            Menu "menuname" [ ("deffore":"defback") ]
            {
                 string1   [ ("fore1":"backn")]     function1
                 string2   [ ("fore2":"backn")]     function2
                      .
                      .
                      .
                 stringN   [ ("foreN":"backN")]     functionN
            }


       The  menuname is case-sensitive.  The optional deffore and
       defback arguments specify the  foreground  and  background
       colors  used on a color display to highlight menu entries.
       The string portion of each menu entry  will  be  the  text
       which will appear in the menu.  The optional fore and back
       arguments specify the foreground and background colors  of
       the  menu  entry  when  the  pointer  is not in the entry.
       These colors will only be used on a  color  display.   The
       default  is  to  use the colors specified by the MenuFore-
       ground and MenuBackground variables.  The function portion
       of  the  menu entry is one of the functions, including any
       user-defined functions, or additional menus.

       There is a special menu named  TwmWindows  which  contains
       the  names of all of the client and vtwm-supplied windows.
       Selecting an entry will cause  the  WindowFunction  to  be
       executed  on  that  window.  If WindowFunction hasn't been
       set, the window will be deiconified and raised.

ICONS
       Vtwm  supports  several  different  ways  of  manipulating
       iconified  windows.   The common pixmap-and-text style may
       be laid out by hand or automatically arranged as described
       by  the IconRegion variable.  In addition, a terse grid of
       icon names, called an icon manager, provides a more  effi-
       cient  use of screen space as well as the ability to navi-
       gate among windows from the keyboard.

       An icon  manager  is  a  window  that  contains  names  of
       selected  or  all  windows  currently  on the display.  In
       addition to the window name,  a  small  button  using  the
       default  iconify  symbol  will be displayed to the left of
       the name when the window is iconified.  By default, click-
       ing  on  an  entry in the icon manager performs f.iconify.
       To change the actions taken in the icon manager,  use  the
       the  iconmgr  context  when specifying button and keyboard



X Version 11                                                   33





VTWM(1)                                                   VTWM(1)


       bindings.

       Moving the pointer into the icon manager also directs key-
       board  focus  to  the  indicated window (setting the focus
       explicitly or else sending synthetic  events  NoTitleFocus
       is    set).     Using   the   f.upiconmgr,   f.downiconmgr
       f.lefticonmgr, and  f.righticonmgr  functions,  the  input
       focus  can  be  changed  between windows directly from the
       keyboard.

BUGS
       The resource manager should have been used instead of  all
       of the window lists.

       The IconRegion variable should take a list.

       Double  clicking  very  fast  to  get the constrained move
       function will sometimes cause the  window  to  move,  even
       though the pointer is not moved.

       If  IconifyByUnmapping  is  on  and  windows are listed in
       IconManagerDontShow  but  not  in  DontIconifyByUnmapping,
       they  may be lost if they are iconified and no bindings to
       f.menu "TwmWindows" or f.warpto are setup.

FILES
        $HOME/.vtwmrc.<screen number>
        $HOME/.vtwmrc
        <XRoot>/lib/X11/twm/system.twmrc

ENVIRONMENT VARIABLES
       DISPLAY This variable is used to determine which X  server
               to use.  It is also set during f.exec so that pro-
               grams come up on the proper screen.

       HOME    This variable is used as the prefix for files that
               begin  with  a  tilde  and  for  locating the vtwm
               startup file.

       M4      This variable denotes  an  alternate  m4(1)  macro
               processor to be used for preprocessing the startup
               file.

SEE ALSO
       X(1), Xserver(1), twm(1), xdm(1), xrdb(1), m4(1)

AUTHORS
       Tom LaStrange, Solbourne Computer; Jim Fulton, MIT X  Con-
       sortium; Steve Pitschke, Stardent Computer; Keith Packard,
       MIT X Consortium; Dave Sternlicht, MIT X Consortium;  Dave
       Payne,       Apple      Computer;      Nick      Williams,
       <njw@athena.mit.edu>; Dave  Edmondsen  <dme@doc.ic.ac.uk>;
       Jukka Partanen, <jtp@iki.fi>.




X Version 11                                                   34





VTWM(1)                                                   VTWM(1)


       Some  of  VTWM's  features  were taken from CTWM by Claude
       Lecommandeur <Claude.Lecommandeur@epfl.ch>. These  include
       3D  look, XPM support, f.movepack, f.separator, and Title-
       Justification.





















































X Version 11                                                   35