Rio is the Plan 9 window system.

To read more of this window, the up and down arrows
scroll the text up and down half screens.

To effectively use rio, you need at least a three
button mouse.  If you only have a two button mouse you
can emulate the middle button by holding down shift key
whilst pressing the right button.

Button 1, 2, and 3 are used to refer to the left,
middle, and right buttons respectively.

THE POP-UP MENU

Pressing and holding down button 3 on the desktop or
shell window will give you a menu with the following
options:

 * New - create a new window 
 * Resize - reshape a window 
 * Move - move a window without reshaping it 
 * Delete - close a window
 * Hide - hides a window from display (it will appear
   in this menu)
 * <label> - the label of a hidden window,
   selecting it unhides it

You select an item by releasing the button over the
menu item.  rio uses the same button that started an
action throughout that operation.  If you press another
button during the action the operation is aborted and
any intermediate changes are reversed.

The menu acts as a action verb selector which then
requires an object (i.e.  window) to be picked to
indicate which window the verb is to act on.  A further
mouse action may then be required.

EXAMPLES

After selecting New, the cursor will change into a
cross.  Using button 3 again, you should then drag out
a rectangle to indicate the size and location of the
new window.  When you release the button a new window
will be created.

New windows will contain the rc shell.  Invoking a rio
program from the shell will allow that program to take
over the window.  As there is no job control in the
shell (e.g.  &, fg, bg), you just create another window
if you want to run another program concurrently.

To Resize a window, you select Resize, then click
(remember using the same button that started the
action, i.e.  button 3) on the window you want to
resize.  The cursor will change to a cross-hair theat
will allow you to drag out the desired shape of the
window.

After selecting Move, click and keep the button
depressed over the window you want to move, then move
the mouse to move the red rectangle that represents the
new location you want.  Release the button to finish
the action.

Delete and Hide both operate by requiring you to click
on the window you wish to respectively Delete or Hide.

WINDOW CONTROL TIPS

Clicking on a window brings it to the front.

You can directly change the shape of a window by
clicking and dragging on the edge or corner of the
window border.  Button 1 or 2 will allow you to drag
the edge or corner to a new size, and Button 3 will
allow you to move the window.

The pop-up menu remembers the last command chosen, so
as a short cut you can just press and release button 3
without moving the mouse between pressing and releasing
to select the previous command again.

BASIC TEXT CONTROL

Unlike in other systems, the text cursor can only be
controlled by the mouse or the side-effects of certain
commands.

Clicking with button 1 will move the text insertion
point (indicated by an I-beam) to just before the
character closest to the mouse pointer.  Dragging
across a section of text will select that portion of
text.  It may be useful to know that the insertion
I-beam represents an empty selection (between two
characters).  In text editors, the current selection is
known as "dot".

In the shell window button 2 will invoke a pop-up menu.
Most of it's commands operate on dot.

 * cut - moves the contents of the dot to the clipboard
   if dot is non-empty 
 * paste - replaces dot with the contents of the clipboard
 * snarf - copies dot to the clipboard
 * plumb - sends dot (or text surrounding dot, if dot is
   empty)to the plumber.
 * send - completes the current input line with the dot,
   if it is non-empty, or the contents of the clipboard.
   If the dot is non-empty it does a snarf at the same time.
 * scroll - toggles the automatic scrolling of the window
   on output.

Double-clicking will allow you to automatically select
a section of text surrounding that point.  The
selection is made by an analysis of appropriate
delimeters.  A whole line is selected by
double-clicking at either end of the line.  A quoted or
bracketed selection is made by double-clicking just
inside of the quote or bracket.

SCROLLING

The arrow keys will let you scroll up or down by half a
page at a time.

Clicking button 1 on the scrollbar scrolls up by half a
page.  Button 3 scrolls down by half a page.  Button 2
jumps to position in the document relative to the
position on the scrollbar clicked.  Holding a button on
the scrollbar will have the effect of invoking the
clicking action continuously.

The white elevator box on the scrollbar is sized
proportionally to the proportion of the document that
is currently visible.

Scrolling does not affect the text cursor.

RIO AND THE RC SHELL WINDOW

Rc is a command interpreter for Plan 9 that provides
similar facilities to UNIX's Bourne shell.  See the
additional references at the end of this document for
information specifically about rc.

Rio provides some additional features that enhance the
interface to programs that use the text console.  The
rc shell command interpreter is one such program.

Rc commands are typed after the prompt on the last line
of the text buffer.  The commands are sent to rc only
after each newline so line editing may be performed if
desired.  You can move the cursor and edit the previous
lines of commands and program output but none of this
will be interpreted by rc shell.

The interpretation of commands is supressed altogether
when ESC is pressed to put the window in hold mode.
The window border and text will change to dark blue to
indicate the hold mode is active.  In this mode you can
type multiple lines of commands and edit them.
Pressing ESC again will release the hold and send the
lines of text to the rc command interpreter.

The DEL key sends an 'interrupt' note to all processes
in the window's process group.  The usual intent is to
terminate the execution of the current command.  It is
also a convenient short cut for ensuring you have a
fresh command prompt.

FURTHER INFORMATION

For further information, try the rio(1) manual page.
Type "man rio" or click on rio(1) in either of these
sentences and select plumb from the button 2 menu.

