XGEDIT -- simple graphic editor for the X window system XGEDIT allows one to create and edit .def compatible files. To run type gedit filename which will load filename.def for editing. In its quiescent state XGEDIT displays an x-shaped graphics cursor at the current position. XGEDIT commands are single letters; the commands fall into various categories: graphic cursor control object manipulation (rotation, editing, creation, deletion) miscellaneous commands Some commands prompt the user for text input. When this happens a prompt appears at the bottom of the screen and an underscore text cursor is displayed. Printing chars typed by the user will be returned to the command for processing; in addition, certain control chars facilitate editing of text input: ^A move to beginning of text line ^B move backward n chars (also ^H and right-arrow key) ^C abort input returning abort status to requestor (also ^G, ^Q) ^D delete n chars above and to right of cursor ^E move to end of text line ^F move forward n chars (also left-arrow key) ^K delete from cursor position to end of line ^L redisplay ^U n = n*4; after a command, n is reset to 1 RUBOUT delete n chars before cursor CR editing complete, return to command (also NL, ESC) If the cursor is somewhere in the middle of the line, printing chars typed at the keyboard will be inserted at the current cursor position. Some commands provide some initial text to be edited by the user -- if this default text is satisfactory, the user only need type a CR. GRAPHIC CURSOR CONTROL The graphic cursor is an x. The size of the x (which can be changed) determines the area under the cursor. Some commands affect objects which are under the cursor, others move the cursor to the edge of this area (i.e., a big cursor moves faster than a small one). The cursor will never move beyond the edge of the screen. F, f, ^F move graphic cursor to the right H, h, ^H, B, b, ^B move graphic cursor to the left P, p, ^P move graphic cursor up N, n, ^N move graphic cursor down W, w, ^W recenter window at current cursor position + make cursor twice as large - make cursor half as large @ move graphic cursor to origin of picture ! snap cursor to grid (large cursor -> coarse grid) U, u, ^U multiplier *= 4 (^U^F moves 4 times as far as ^F) OBJECT MANIPULATION There are three types of objects: lines, labels, and subpictures (other .def files treated as a single graphic object). L, l, left button start a new line at current position a, A, ^A specify new angle subtended by line segment C, c create new label (prompts for text) I, i insert a new subpicture (prompts for name) S, s, ^S, right button select object (cycles among possibilites) Z, z, ^Z, SPACE, middle button release selection at current position ^G release selection, don't update old position M, m release selection after same relative motion as previously released selection E, e, ^E edit selection labels: edit exisiting text subpics: recursive edit of source file ^ edit last R, r, ^R rotate, reflect selection labels: changes position wrt ref. point subpics: one of 8 possible rots&reflects segments: if angle<>0 reflect arc about line * scale selected subpicture Selected objects follow cursor motion (lines act like rubber bands with only the selected end following the cursor) until they are released. MISCELLANEOUS ^L redisplay X, x, ^X change display scale (screen:def) ^C, ^Q exit XGEDIT, updating files if top level ^O move picture origin to cursor position G, g turn/on off grid points