Annotation of 43BSD/contrib/jove/doc/jove.nr, revision 1.1.1.1

1.1       root        1: .hy 0
                      2: .TH JOVE 1 "February 12, 1986" "Lincoln Sudbury Regional High School"
                      3: .ad
                      4: .SH NAME
                      5: jove \- an interactive display-oriented text editor
                      6: .SH SYNOPSIS
                      7: .nf
                      8: jove [-d directory] [-w] [-t tag] [+n file] [-p file] [files]
                      9: jove -r
                     10: .fi
                     11: .SH DESCRIPTION
                     12: JOVE is Jonathan's Own Version of Emacs.  It is based on the original EMACS
                     13: editor written at MIT by Richard Stallman.  Although JOVE is meant to be
                     14: compatible with EMACS, there are some major differences between the two
                     15: editors and you shouldn't rely on their behaving identically.
                     16: .LP
                     17: JOVE works on any reasonable display terminal that is described in the
                     18: .I termcap
                     19: file (see TERMCAP(5) for more details).  When you start up JOVE, it checks
                     20: to see whether you have your
                     21: .I TERM
                     22: environment variable set.  On most systems that will automatically be set up
                     23: for you, but if it's not JOVE will ask you what kind of terminal you are
                     24: using.  To avoid having to type this every time you run JOVE you can set your
                     25: .I TERM
                     26: environment variable yourself.  How you do this depends on which shell you
                     27: are running.  If you are running the C Shell, as most of you are, you type
                     28: .sp 1
                     29:      % setenv TERM
                     30: .I type
                     31: .sp 1
                     32: and with the Bourne Shell, you type
                     33: .sp 1
                     34:      $ TERM=
                     35: .I type
                     36: ; export TERM
                     37: .sp 1
                     38: where
                     39: .I type
                     40: is the name of the kind of terminal you are using (e.g., vt100).  If
                     41: neither of these works get somebody to help you.
                     42: .SH INVOKING JOVE
                     43: If you run JOVE with no arguments you will be placed in an empty buffer,
                     44: called
                     45: .I Main.
                     46: Otherwise, any arguments you supply are considered file names and each is
                     47: "given" its own buffer.  Only the first file is actually read in--reading
                     48: other files is deferred until you actually try to use the buffers they are
                     49: attached to.  This is for efficiency's sake: most of the time, when you run
                     50: JOVE on a big list of files, you end up editing only a few of them.
                     51: .LP
                     52: The names of all of the files specified on the command line are saved in a
                     53: buffer, called
                     54: .I Minibuf.
                     55: The mini-buffer is a special JOVE buffer that is used when JOVE is prompting
                     56: for some input to many commands (for example, when JOVE is prompting for a
                     57: file name).  When you are being prompted for a file name, you can type C-N
                     58: (that's Control-N) and C-P to cycle through the list of files that were
                     59: specified on the command line.  The file name will be inserted where you are
                     60: typing and then you can edit it as if you typed it in yourself.
                     61: .LP
                     62: JOVE recognizes the following switches:
                     63: .TP
                     64: .I -d
                     65: The following argument is taken to be the name of the current directory.
                     66: This is for systems that don't have a version of C shell that automatically
                     67: maintains the
                     68: .I CWD
                     69: environment variable.  If
                     70: .I -d
                     71: is not specified on a system without a modified C shell, JOVE will have to
                     72: figure out the current directory itself, and that can be VERY slow.
                     73: .TP
                     74: .I +n
                     75: Reads the file, designated by the following argument, and positions point at
                     76: the
                     77: .I n'th
                     78: line instead of the (default) 1'st line.  This can be specified more than
                     79: once but it doesn't make sense to use it twice on the same file; in that
                     80: case the second one wins.
                     81: .TP
                     82: .I -p
                     83: Parses the error messages in the file designated by the following argument.
                     84: The error messages are assumed to be in a format similar to the C compiler,
                     85: LINT, or GREP output.
                     86: .TP
                     87: .I -t
                     88: Runs the
                     89: .I find-tag 
                     90: command on the following argument (see ctags(1)).
                     91: .TP
                     92: .I -w
                     93: Divides the window in two.  When this happens, either the same file is
                     94: displayed in both windows, or the second file in the list is read in and
                     95: displayed in its window.
                     96: .LP
                     97: As a special case, invoking JOVE with the -r option runs JOVE_RECOVER.  Use
                     98: this when the system crashes, or JOVE crashes, or you accidently get logged
                     99: out while in JOVE.  If there are any buffers to be recovered, this will find
                    100: them.  Read the documentation for JOVE_RECOVER.
                    101: .LP
                    102: .SH GETTING HELP
                    103: Once in JOVE, there are several commands available to get help.  To execute
                    104: any JOVE command, you type "<ESC> X command-name" followed by <Return>.  To
                    105: get a list of all the JOVE commands you type "<ESC> X" followed by "?".  The
                    106: .I describe-bindings
                    107: command can be used to get a list containing each key, and its associated
                    108: command (that is, the command that gets executed when you type that key).
                    109: If you want to save the list of bindings, you can set the jove variable
                    110: .I send-typeout-to-buffer
                    111: to ON (using the 
                    112: .I set
                    113: command), and then execute the
                    114: .I describe-bindings
                    115: command.  This will create a buffer and put in it the bindings list it
                    116: normally would have printed on the screen.  Then you can save that buffer to
                    117: a file and print it to use as a quick reference card.  (See VARIABLES below.)
                    118: .LP
                    119: Once you know the name of a command, you can find out what it does with the
                    120: .I describe-command
                    121: command, which you can invoke quickly by typing "ESC ?".  The
                    122: .I apropos
                    123: command will give you a list of all the command with a specific string in
                    124: their names.  For example, if you want to know the names of all the
                    125: commands that are concerned with windows, you can run "apropos" with the
                    126: keyword
                    127: .I window.
                    128: .LP
                    129: If you're not familar with the EMACS command set, it would be worth your
                    130: while to use run TEACHJOVE.  Do do that, just type "teachjove" to your shell
                    131: and you will be placed in JOVE in a file which contains directions.  I highly
                    132: recommend this for beginners; you may save yourself a lot of time and
                    133: headaches.
                    134: .SH KEY BINDINGS and VARIABLES
                    135: You can alter the key bindings in JOVE to fit your personal tastes.  That
                    136: is, you can change what a key does every time you strike it.  For example,
                    137: by default the C-N key is bound to the command
                    138: .I next-line
                    139: and so when you type it you move down a line.  If you want to change a
                    140: binding or add a new one, you use the
                    141: .I bind-to-key
                    142: command.  The syntax is "bind-to-key <command> key".
                    143: .LP
                    144: You can also change the way JOVE behaves in little ways by changing the
                    145: value of some variables with the
                    146: .I set
                    147: command.  The syntax is "set <variable> value", where value is a number or a
                    148: string, or "on" or "off", depending on the context.  For example, if you
                    149: want JOVE to make backup files, you set the "make-backup-files" variable to
                    150: "on".  To see the value of a variable, use the "print <variable>" command.
                    151: .SH INITIALIZATION
                    152: JOVE automatically reads commands from an initialization file in your HOME
                    153: directory, called ".joverc".  In this file you can place commands that you
                    154: would normally type in JOVE.  If you like to rearrange the key bindings and
                    155: set some variables every time you get into JOVE, you should put them in your
                    156: initialization file.  Here are a few lines from mine:
                    157: .nf
                    158:        set match-regular-expressions on
                    159:        auto-execute-command auto-fill /tmp/Re\\|.*drft
                    160:        bind-to-key i-search-forward ^\\
                    161:        bind-to-key i-search-reverse ^R
                    162:        bind-to-key find-tag-at-point ^[^T
                    163:        bind-to-key scroll-down ^C
                    164:        bind-to-key grow-window ^Xg
                    165:        bind-to-key shrink-window ^Xs
                    166: .fi
                    167: (Note that the Control Characters can be either two character sequences
                    168: (e.g. ^ and C together as ^C) or the actual control character.  If you want
                    169: to use an ^ by itself you must BackSlash it (e.g., bind-to-key grow-window
                    170: ^X\\^ binds grow-window to "^X^").
                    171: .SH SOME MINOR DETAILS
                    172: You should type C-\\ instead of C-S in many instances.  For example, the way
                    173: to search for a string is documented as being "C-S" but in reality you
                    174: should type "C-\\".  This is because C-S is the XOFF character (what gets
                    175: sent when you type the NO SCROLL key), and clearly that won't work.  The XON
                    176: character is "C-Q" (what gets sent when you type NO SCROLL again) which is
                    177: documented as the way to do a quoted-insert.  The alternate key for this is
                    178: "C-^" (typed as "C-`" on vt100's and its look-alikes).  If you want to
                    179: enable C-S and C-Q and you know what you are doing, you can put the line:
                    180: .nf
                    181:        set allow-^S-and-^Q on
                    182: .fi
                    183: in your initialization file.
                    184: .LP
                    185: If your terminal has a metakey, JOVE will use it if you turn on the
                    186: "meta-key" variable.  JOVE will automatically turn on "meta-key" if the
                    187: METAKEY environment variable exists.  This is useful for if you have
                    188: different terminals (e.g., one at home and one at work) and one has a
                    189: metakey and the other doesn't.
                    190: .SH FILES
                    191: LIBDIR/.joverc - system wide initialization file
                    192: .sp 0
                    193: ~/.joverc - personal initialization file
                    194: .sp 0
                    195: TMPDIR - where temporary files are stored
                    196: .sp 0
                    197: LIBDIR/teach-jove - the interactive tutorial
                    198: .sp 0
                    199: LIBDIR/portsrv - for running shells in windows (pdp11 only)
                    200: .SH SEE ALSO
                    201: .nf
                    202: jove_recover(1) - to recover buffers after a system/editor crash
                    203: .sp 0
                    204: ed(1) - for a description of regular expressions
                    205: .sp 0
                    206: teachjove(1) - for an interactive JOVE tutorial.
                    207: .fi
                    208: .SH DIAGNOSTICS
                    209: JOVE diagnostics are meant to be self-explanatory, but you are advised
                    210: to seek help whenever you are confused.  You can easily lose a lot of
                    211: work if you don't know EXACTLY what you are doing.
                    212: .SH BUGS
                    213: Lines can't be more than 1024 characters long.
                    214: .sp 1
                    215: Searches can't cross line boundaries.
                    216: .SH AUTHOR
                    217: Jonathan Payne

unix.superglobalmegacorp.com

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