RIO(1)                                                     RIO(1)

          rio - rio-like Window Manager for X

          rio [ -font fontname ] [ -grey ] [ -s ] [ -term termprog ] [
          -version ] [ -virtuals num ] [ exit | restart ]

          xshove [ name rectangle ]

          Rio is a window manager for X which attempts to emulate the
          window management policies of Plan 9's rio window manager.
          Rio is derived from David Hogan's 9wm.

          The -grey option makes the background stippled grey, the
          default X11 background, instead of solid grey, the Plan 9

          The -font option sets the font in rio's menu to fname, over-
          riding the default.  Unlike the other programs in the Plan 9
          ports, rio expects this font to be an X11 font rather than a
          Plan 9 font.

          The -term option specifies an alternative program to run
          when the New menu item is selected.  The default is to try
          9term(1) and then to fall back to xterm(1). The -s option
          has no effect.  It formerly set the scrolling mode for new
          windows and is recognized to avoid breaking scripts.  See
          9term(1) for a description of scrolling behavior.

          The -version option prints the current version on standard
          error, then exits.

          The -virtuals option sets the number of virtual screens (the
          default is 1, and the maximum is 12).

          If the argument exit or restart is given, it is sent to an
          already-running rio, causing the extant rio to exit or res-

        Using rio
          One window is current, and is indicated with a dark border
          and text; characters typed on the keyboard are available in
          the /dev/cons file of the process in the current window.
          Characters written on /dev/cons appear asynchronously in the
          associated window whether or not the window is current.

          Windows are created, deleted and rearranged using the mouse.
          Clicking (pressing and releasing) mouse button 1 in a non-
          current window makes that window current and brings it in

     RIO(1)                                                     RIO(1)

          front of any windows that happen to be overlapping it.  When
          the mouse cursor points to the background area or is in a
          window that has not claimed the mouse for its own use,
          pressing mouse button 3 activates a menu of window opera-
          tions provided by rio. Releasing button 3 then selects an
          operation.  At this point, a gunsight or cross cursor indi-
          cates that an operation is pending.  The button 3 menu oper-
          ations are:

          New     Create a window.  Press button 3 where one corner of
                  the new rectangle should appear (cross cursor), and
                  move the mouse, while holding down button 3, to the
                  diagonally opposite corner.  Releasing button 3 cre-
                  ates the window, and makes it current.  Very small
                  windows may not be created.  The new window is cre-
                  ated running termprog, by default 9term(1) or, if
                  9term is not available, xterm(1).
          Resize  Change the size and location of a window.  First
                  click button 3 in the window to be changed (gunsight
                  cursor).  Then sweep out a window as for the New
                  operation.  The window is made current.
          Move    Move a window to another location.  After pressing
                  and holding button 3 over the window to be moved
                  (gunsight cursor), indicate the new position by
                  dragging the rectangle to the new location.  The
                  window is made current.  Windows may be moved par-
                  tially off-screen.
          Delete  Delete a window.  Click in the window to be deleted
                  (gunsight cursor).  Deleting a window causes a
                  `hangup' note to be sent to all processes in the
                  window's process group (see notify(3)).
          Hide    Hide a window.  Click in the window to be hidden
                  (gunsight cursor); it will be moved off-screen.
                  Each hidden window is given a menu entry in the but-
                  ton 3 menu according to its current window system
          label   Restore a hidden window.

          Windows may also be arranged by dragging their borders.
          Pressing button 1 or 2 over a window's border allows one to
          move the corresponding edge or corner, while button 3 moves
          the whole window.

          When the mouse cursor points to the background area and rio
          has been started with multiple virtual screens using the
          -virtuals option, clicking button 2 brings up a menu to
          select a virtual screen to view.  Scrolling the mouse wheel
          while the cursor points at the background will cycle through
          the virtual screens.

          Xshove moves or resizes every window whose X11 class or
          instance strings contain name. The rectangle argument can be

     RIO(1)                                                     RIO(1)

          widthxheight, widthxheight@xmin,xmax, or
          xmin,ymin,xmax,ymax.  A leading + or - causes the rectangle
          to be interpreted as a delta: `+10,0' nudges a window to the
          right, while `+100x100' grows a window.  With no arguments,
          xshove lists all the current X windows.  Xshove is not spe-
          cific to rio and can be used with other window managers.

          In Plan 9's rio, clicking button 2 or button 3 to select a
          window also sends that event to the window itself.  This rio
          does not.

          The command-line syntax is non-standard.

          In Plan 9's rio, newly started applications take over the
          current window.  This rio starts a new window for each pro-
          gram.  (In X11, it appears to be impossible to know which
          window starts a particular program.)

          There is a currently a compiled-in limit of 128 hidden win-

          9term(1), xterm(1)

          As mentioned above, rio is mainly maintenance updates
          applied to the original 9wm by David Hogan; see