Annotation of researchv10dc/630/man/src/u_man/man1/jim.1, revision 1.1.1.1

1.1       root        1: .TH JIM 1 "630 MTG"
                      2: .SH NAME
                      3: jim, jim.recover\- 630 MTG text editor
                      4: .SH SYNOPSIS
                      5: .B jim 
                      6: [ 
                      7: .B \-c 
                      8: ] [ files \&. \&. \&. ]
                      9: .br
                     10: \f3jim.\(**\f1
                     11: [
                     12: .B \-f
                     13: ] [
                     14: .B \-t
                     15: ] [ files \&. \&. \&. ]
                     16: .SH DESCRIPTION
                     17: .I Jim
                     18: is the text editor for the 630 MTG terminal.
                     19: .P
                     20: It is a shared cached application if the \f3\-c\f1 option is
                     21: specified.
                     22: This means that multiple instances of jim
                     23: may run simultaneously without needing to do a download for
                     24: each instance. Once jim is downloaded it does not have to be
                     25: downloaded again.
                     26: .P
                     27: Jim relies on the mouse to select text and commands;
                     28: it runs only under
                     29: .IR layers (1).
                     30: .IR Jim 's
                     31: screen consists of a number of
                     32: .IR frames ,
                     33: a one-line command and diagnostic frame at the bottom,
                     34: and zero or more larger file frames above it.
                     35: Except where indicated, these frames behave identically.
                     36: One of the frames is always the current frame,
                     37: to which typing and editing commands refer,
                     38: and one of the file frames is the working frame,
                     39: to which file commands such as pattern searching and I/O refer.
                     40: .PP
                     41: A frame has at any time a selected region of text,
                     42: indicated by reverse video highlighting.
                     43: The selected region may be a null string between two characters,
                     44: indicated by a narrow vertical bar between the characters.
                     45: The editor has a single
                     46: .I "save buffer
                     47: containing an arbitrary string.
                     48: The editing commands simply invoke transformations between the
                     49: selected region and the save buffer.
                     50: .PP
                     51: The mouse buttons are used for the most common operations.
                     52: Button 1 is used for selection.
                     53: Clicking button 1 in a frame
                     54: which is not the current frame makes the indicated frame current.
                     55: Clicking button 1 in the current frame selects the null string closest
                     56: to the mouse cursor.
                     57: Making the same null selection twice (`double clicking') selects
                     58: (in decreasing precedence) the bracketed or quoted string, word, or line
                     59: enclosing the selection.
                     60: By depressing and holding button 1, an arbitrary contiguous visible string
                     61: may be selected.
                     62: Button 2 provides a small menu of text manipulation functions, described below.
                     63: Button 3 provides control for inter-frame operations.
                     64: .PP
                     65: The button 2 menu entries are:
                     66: .TP
                     67: .B cut
                     68: Copy the selected text to the save buffer and delete it from the frame.
                     69: If the selected text is null, the save buffer is unaffected.
                     70: .TP
                     71: .B paste
                     72: Replace the selected text by the contents of the save buffer.
                     73: .TP
                     74: .B snarf
                     75: Copy the selected text to the save buffer.
                     76: If the selected text is null, the save buffer is unaffected.
                     77: .bp
                     78: .PP
                     79: Typing
                     80: replaces the selected text with the typed text.
                     81: If the selected text is not null,
                     82: the first character typed forces an implicit
                     83: .BR cut .
                     84: Control characters are discarded, but
                     85: BS (control H),
                     86: ETB (control W),
                     87: NL (control J) and ESC (escape) have special meanings.
                     88: BS is the usual backspace character, which erases the character before the selected text (which is a null string when it takes effect).
                     89: ETB erases back to the word boundary preceding the selected text.
                     90: There is no line kill character.
                     91: NL toggles the current frame between the workframe and the diagnostic
                     92: frame, and can be a substitute for manual frame selection with the
                     93: mouse.
                     94: ESC selects the text typed since the last button hit or ESC.
                     95: If an ESC is typed immediately after a button hit or ESC,
                     96: it is identical to a
                     97: .BR cut .
                     98: ESC followed by
                     99: .B paste
                    100: provides the functionality of a simple undo feature.
                    101: .PP
                    102: The button 3 menu entries are:
                    103: .TP
                    104: .B new
                    105: Create a new frame by sweeping with the mouse.
                    106: .TP
                    107: .B reshape
                    108: Change the shape of the indicated frame.
                    109: The frame is selected by clicking button 3 over the frame.
                    110: .TP
                    111: .B close
                    112: Close the indicated frame and its associated file.
                    113: The file is still available for editing later;
                    114: only the associated frame is shut down.
                    115: .TP
                    116: .B write
                    117: Write the indicated frame's contents to its associated file.
                    118: .PP
                    119: The rest of the menu is a list of file names available for editing.
                    120: To work in a different file, select the file from the menu.
                    121: If the file is not open on the screen, the cursor will switch to an
                    122: outline box to prompt for a rectangle to be swept out with button 3.
                    123: (Clicking button 3 without moving the mouse creates the largest
                    124: possible rectangle.)
                    125: If the file is already open, it will simply be made the workframe and
                    126: current frame (for typing), perhaps after redrawing if it is obscured
                    127: by another frame.
                    128: The format of the lines in the menu is:
                    129: .TP
                    130: \-
                    131: possibly an apostrophe, indicating that the file has been modified since
                    132: last written,
                    133: .TP
                    134: \-
                    135: possibly a period or asterisk, indicating the file is open (asterisk) or
                    136: the workframe (period),
                    137: .TP
                    138: \-
                    139: a blank,
                    140: .TP
                    141: \-
                    142: and the file name.
                    143: The file name may be abbreviated by compacting path components to keep
                    144: the menu manageable, but the last component will always be complete.
                    145: .bp
                    146: .PP
                    147: The work frame has a
                    148: .I "scroll bar
                    149: \(em a black vertical bar down the left edge.
                    150: A small tick in the bar indicates the relative position of the frame
                    151: within the file.
                    152: Pointing to the scroll bar and clicking a button controls scrolling
                    153: operations in the file:
                    154: .TP
                    155: button 1
                    156: Move the line at the top of the screen to the y position of the mouse.
                    157: .TP
                    158: button 2
                    159: Move to the absolute position in the file indicated by the y position of the mouse.
                    160: .TP
                    161: button 3
                    162: Move the line at the y position of the mouse to the top of the screen.
                    163: .PP
                    164: The bottom line frame is used for a few typed commands, modeled on
                    165: .IR ed (1) ,
                    166: which operate on the workframe.
                    167: When a carriage return is typed in the bottom line,
                    168: the line is interpreted as a command.
                    169: The bottom line scrolls, but only
                    170: when the first character of the next line is typed.
                    171: Thus, typically, after some message appears in the bottom line,
                    172: a command need only be typed;
                    173: the contents of the line will be automatically cleared when the first
                    174: character of the command is typed.
                    175: The commands available are:
                    176: .TP
                    177: .B e \f2file\f1\f3
                    178: Edit the named 
                    179: .IR file ,
                    180: or use the current file name if none specified.
                    181: Note that each file frame has an associated file name.
                    182: .TP
                    183: .B E \f2file\f1\f3
                    184: Edit the named 
                    185: .IR file 
                    186: unconditionally, as in \fIed\fP(1).
                    187: .TP
                    188: .B f \f2file\f1\f3
                    189: Set the name of the
                    190: file associated with the work frame, if one is specified,
                    191: and display the result.
                    192: .TP
                    193: .B g \f2files\f1\f3
                    194: Enter the named
                    195: .I files
                    196: into the filename menu, without duplication,
                    197: and set the work frame to one of the named files.
                    198: If the new work frame's file is not open, the user is prompted to create its frame.
                    199: The arguments to
                    200: .IT g
                    201: are passed through
                    202: .IR echo (1)
                    203: for shell metacharacter interpretation.
                    204: .TP
                    205: .B w \f2file\f1\f3
                    206: Write the named
                    207: .IR file ,
                    208: or use the current file name if none specified.
                    209: .TP
                    210: .B q
                    211: Quit the editor.
                    212: .bp
                    213: .TP
                    214: .B Q
                    215: Quit the editor unconditionally, as in \fIed\fP(1).
                    216: .TP
                    217: .B /
                    218: Search forward for the string matching the regular expression after the slash.
                    219: If found, the matching text is selected.
                    220: The regular expressions are exactly as in
                    221: .IR egrep (1),
                    222: with two additions: the character `@' matches any character
                    223: .I including
                    224: newline, and the sequence `\en' specifies a newline, even in character classes.
                    225: The negation of a character class does not match a newline.
                    226: An empty regular expression (slash-newline) repeats the last regular expression.
                    227: .TP
                    228: .B ?
                    229: Search backwards for the expression after the query.
                    230: .TP
                    231: .B 94
                    232: Select the text of line 94, as in
                    233: .IR ed .
                    234: .TP
                    235: .B $
                    236: Select the text of the last line.
                    237: .TP
                    238: .B cd \f2dir\f1\f3
                    239: Set the working directory to \fIdir\fP, as in the shell.
                    240: There is no CDPATH search, but $HOME is the default \fIdir\fP.
                    241: .TP
                    242: .B =
                    243: Display the line number of selection in the current frame.
                    244: .TP
                    245: .B >\f2Unix-command\fP
                    246: Sends the selected text to the standard input of
                    247: .IR Unix-command .
                    248: .TP
                    249: .B <\f2Unix-command\fP
                    250: Replaces the selected text by the standard output of
                    251: .IR Unix-command .
                    252: .TP
                    253: .B |\|\f2Unix-command\fP
                    254: Replaces the selected text by the standard output of
                    255: .IR Unix-command,
                    256: given the original selected text as standard input.
                    257: .PP
                    258: If any of <, > or | is preceded by an asterisk \(**,
                    259: the command is applied to the entire file, instead of just the selected text.
                    260: If the command for < or | exits with non-zero status, the original text
                    261: is not deleted; otherwise, the new text is selected.
                    262: Finally, the standard error output of the command, which is merged with the
                    263: standard output for >, is saved in the file
                    264: $HOME/jim.err .
                    265: If the file is non-empty when the command completes, the first line is
                    266: displayed in the diagnostic frame.  Therefore the command ``>pwd''
                    267: will report
                    268: .IR jim 's
                    269: current directory.
                    270: .PP
                    271: The most recent search command ('/' or '?') and Unix command ('<', '|',
                    272: or '>') are added to the button 2 menu, so that they may be easily repeated.
                    273: .PP
                    274: Attempts to quit with modified files, or edit a new file
                    275: in a modified frame, are rejected.
                    276: A second `q' or `e' command will succeed.
                    277: The `Q' or `E' commands ignore modifications and work immediately.
                    278: Some consistency checks are performed for the `w' command.
                    279: .I jim
                    280: will reject write requests which it considers dangerous
                    281: (such as writes that change files which are modified when
                    282: read into memory).
                    283: A second `w' will always write the file.
                    284: .bp
                    285: .PP
                    286: If
                    287: .I jim
                    288: receives a hang-up signal, it writes a recover file,
                    289: which is a shell command file that, when executed, will
                    290: retrieve files that were being edited and had been modified.
                    291: The name of the file will be of the form \f2jim.\f1 followed
                    292: by a uniquely generated alphanumeric string. \f2Jim\f1 will
                    293: send mail to the logon id saying files may be recovered and
                    294: specifying the path and name of the recover file. If it cannot
                    295: write this file in the home directory, it writes it in the
                    296: current working directory. The \f3-t\f1 option prints a table
                    297: of contents. By default, the jim recover file is interactive;
                    298: the \f3-f\f1 option suppresses the interaction.
                    299: If no \f2file\f1 argument is given to the jim.recover shell
                    300: file, the recovery will apply to all modified files at the
                    301: time when jim received the hang-up signal. If there is a
                    302: \f2file\f1 argument, only those files will be recovered.
                    303: .SH FILES
                    304: .ta \w'$DMD/lib/jim.m      'u
                    305: $DMD/lib/jim.m terminal support program
                    306: .br
                    307: /tmp/jim.\(**  temporary file
                    308: .br
                    309: $HOME/jim.err  diagnostic output from Unix commands
                    310: .br
                    311: jim.\(**       recovery script created upon \fIjim\fP failure
                    312: .SH SEE ALSO
                    313: ucache(1).
                    314: .br
                    315: ed(1), echo(1), egrep(1) in the \f2UNIX System V
                    316: User's Reference Manual\f1.
                    317: .br
                    318: layers(1) in the \f2Unix System V Release 3 User's Reference Manual\f1.
                    319: .br
                    320: layers(1) in the \f25620 Dot-Mapped Display Reference Manual.\f1
                    321: .SH WARNING
                    322: \f2Jim\f1 is reshapable, but a reshape clears the screen
                    323: space of all open frames.
                    324: .SH BUGS
                    325: \" spectacular is the real word...
                    326: The regular expression matcher is non-deterministic (unlike
                    327: .IR egrep ),
                    328: and may be slow for
                    329: complicated expressions.
                    330: .P
                    331: The < and | operators don't snarf the original text.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.