1Rio is the Plan 9 window system. 2 3To read more of this window, the up and down arrows 4scroll the text up and down half screens. 5 6To effectively use rio, you need at least a three 7button mouse. If you only have a two button mouse you 8can emulate the middle button by holding down shift key 9whilst pressing the right button. 10 11Button 1, 2, and 3 are used to refer to the left, 12middle, and right buttons respectively. 13 14THE POP-UP MENU 15 16Pressing and holding down button 3 on the desktop or 17shell window will give you a menu with the following 18options: 19 20 * New - create a new window 21 * Resize - reshape a window 22 * Move - move a window without reshaping it 23 * Delete - close a window 24 * Hide - hides a window from display (it will appear 25 in this menu) 26 * <label> - the label of a hidden window, 27 selecting it unhides it 28 29You select an item by releasing the button over the 30menu item. rio uses the same button that started an 31action throughout that operation. If you press another 32button during the action the operation is aborted and 33any intermediate changes are reversed. 34 35The menu acts as a action verb selector which then 36requires an object (i.e. window) to be picked to 37indicate which window the verb is to act on. A further 38mouse action may then be required. 39 40EXAMPLES 41 42After selecting New, the cursor will change into a 43cross. Using button 3 again, you should then drag out 44a rectangle to indicate the size and location of the 45new window. When you release the button a new window 46will be created. 47 48New windows will contain the rc shell. Invoking a rio 49program from the shell will allow that program to take 50over the window. As there is no job control in the 51shell (e.g. &, fg, bg), you just create another window 52if you want to run another program concurrently. 53 54To Resize a window, you select Resize, then click 55(remember using the same button that started the 56action, i.e. button 3) on the window you want to 57resize. The cursor will change to a cross-hair theat 58will allow you to drag out the desired shape of the 59window. 60 61After selecting Move, click and keep the button 62depressed over the window you want to move, then move 63the mouse to move the red rectangle that represents the 64new location you want. Release the button to finish 65the action. 66 67Delete and Hide both operate by requiring you to click 68on the window you wish to respectively Delete or Hide. 69 70WINDOW CONTROL TIPS 71 72Clicking on a window brings it to the front. 73 74You can directly change the shape of a window by 75clicking and dragging on the edge or corner of the 76window border. Button 1 or 2 will allow you to drag 77the edge or corner to a new size, and Button 3 will 78allow you to move the window. 79 80The pop-up menu remembers the last command chosen, so 81as a short cut you can just press and release button 3 82without moving the mouse between pressing and releasing 83to select the previous command again. 84 85BASIC TEXT CONTROL 86 87Unlike in other systems, the text cursor can only be 88controlled by the mouse or the side-effects of certain 89commands. 90 91Clicking with button 1 will move the text insertion 92point (indicated by an I-beam) to just before the 93character closest to the mouse pointer. Dragging 94across a section of text will select that portion of 95text. It may be useful to know that the insertion 96I-beam represents an empty selection (between two 97characters). In text editors, the current selection is 98known as "dot". 99 100In the shell window button 2 will invoke a pop-up menu. 101Most of it's commands operate on dot. 102 103 * cut - moves the contents of the dot to the clipboard 104 if dot is non-empty 105 * paste - replaces dot with the contents of the clipboard 106 * snarf - copies dot to the clipboard 107 * plumb - sends dot (or text surrounding dot, if dot is 108 empty)to the plumber. 109 * send - completes the current input line with the dot, 110 if it is non-empty, or the contents of the clipboard. 111 If the dot is non-empty it does a snarf at the same time. 112 * scroll - toggles the automatic scrolling of the window 113 on output. 114 115Double-clicking will allow you to automatically select 116a section of text surrounding that point. The 117selection is made by an analysis of appropriate 118delimeters. A whole line is selected by 119double-clicking at either end of the line. A quoted or 120bracketed selection is made by double-clicking just 121inside of the quote or bracket. 122 123SCROLLING 124 125The arrow keys will let you scroll up or down by half a 126page at a time. 127 128Clicking button 1 on the scrollbar scrolls up by half a 129page. Button 3 scrolls down by half a page. Button 2 130jumps to position in the document relative to the 131position on the scrollbar clicked. Holding a button on 132the scrollbar will have the effect of invoking the 133clicking action continuously. 134 135The white elevator box on the scrollbar is sized 136proportionally to the proportion of the document that 137is currently visible. 138 139Scrolling does not affect the text cursor. 140 141RIO AND THE RC SHELL WINDOW 142 143Rc is a command interpreter for Plan 9 that provides 144similar facilities to UNIX's Bourne shell. See the 145additional references at the end of this document for 146information specifically about rc. 147 148Rio provides some additional features that enhance the 149interface to programs that use the text console. The 150rc shell command interpreter is one such program. 151 152Rc commands are typed after the prompt on the last line 153of the text buffer. The commands are sent to rc only 154after each newline so line editing may be performed if 155desired. You can move the cursor and edit the previous 156lines of commands and program output but none of this 157will be interpreted by rc shell. 158 159The interpretation of commands is supressed altogether 160when ESC is pressed to put the window in hold mode. 161The window border and text will change to dark blue to 162indicate the hold mode is active. In this mode you can 163type multiple lines of commands and edit them. 164Pressing ESC again will release the hold and send the 165lines of text to the rc command interpreter. 166 167The DEL key sends an 'interrupt' note to all processes 168in the window's process group. The usual intent is to 169terminate the execution of the current command. It is 170also a convenient short cut for ensuring you have a 171fresh command prompt. 172 173FURTHER INFORMATION 174 175For further information, try the rio(1) manual page. 176Type "man rio" or click on rio(1) in either of these 177sentences and select plumb from the button 2 menu. 178 179