Annotation of 43BSDTahoe/new/jove/doc/jove.nr, revision 1.1

1.1     ! root        1: .hy 0
        !             2: .TH JOVE 1 "12 February 1986"
        !             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.  You
        !            73: can simulate the modified C shell by putting the following lines in your
        !            74: C shell initialization file (.cshrc):
        !            75: .nf
        !            76: .sp 1
        !            77:        alias cd        'cd \e!*; setenv CWD $cwd'
        !            78:        alias popd      'popd \e!*; setenv CWD $cwd'
        !            79:        alias pushd     'pushd \e!*; setenv CWD $cwd'
        !            80: .fi
        !            81: .TP
        !            82: .I +n
        !            83: Reads the file, designated by the following argument, and positions point at
        !            84: the
        !            85: .I n'th
        !            86: line instead of the (default) 1'st line.  This can be specified more than
        !            87: once but it doesn't make sense to use it twice on the same file; in that
        !            88: case the second one wins. If no numeric argument is given after the +,
        !            89: the point is positioned at the end of the file.
        !            90: .TP
        !            91: .I -p
        !            92: Parses the error messages in the file designated by the following argument.
        !            93: The error messages are assumed to be in a format similar to the C compiler,
        !            94: LINT, or GREP output.
        !            95: .TP
        !            96: .I -t
        !            97: Runs the
        !            98: .I find-tag 
        !            99: command on the string of characters immediately following 
        !           100: the -t if there is one (as in -tTagname), or on
        !           101: the following argument (as in -t Tagname) otherwise (see ctags(1)).
        !           102: .TP
        !           103: .I -w
        !           104: Divides the window in two.  When this happens, either the same file is
        !           105: displayed in both windows, or the second file in the list is read in and
        !           106: displayed in its window.
        !           107: .SH "RECOVERING BUFFERS AFTER A CRASH"
        !           108: The
        !           109: .I -r
        !           110: option of jove runs the JOVE recover program.  Use this when the system
        !           111: crashes, or JOVE crashes, or you accidently get logged out while in JOVE.
        !           112: If there are any buffers to be recovered, this will find them.
        !           113: .LP
        !           114: Recover looks for JOVE buffers that are left around and are
        !           115: owned by you.  (You cannot recover other peoples' buffers, obviously.)
        !           116: If there were no buffers that were modified at the time of the
        !           117: crash or there were but recover can't get its hands on them, you will be
        !           118: informed with the message, "There is nothing to recover."  Otherwise,
        !           119: recover prints the date and time of the version of the buffers it has,
        !           120: and then waits for you type a command.
        !           121: .LP
        !           122: To get a list of the buffers recover knows about, use the
        !           123: .I list
        !           124: command.  This will list all the buffers and the files and the number of
        !           125: lines associated with them.  Next to each buffer is a number.  When you want
        !           126: to recover a buffer, use the
        !           127: .I get
        !           128: command.  The syntax is
        !           129: .I get buffer filename
        !           130: where
        !           131: .I buffer
        !           132: is either the buffer's name or the number at the beginning of the line.  If
        !           133: you don't type the buffer name or the filename, recover will prompt you
        !           134: for them.
        !           135: .LP
        !           136: If there are a lot of buffers and you want to recover all of them, use the
        !           137: .I recover
        !           138: command.  This will recover each buffer to the name of the buffer with ".#"
        !           139: prepended to the name (so that the original isn't over-written).  It asks
        !           140: for each file and if you want to restore that buffer to that name you type
        !           141: "yes".  If you want to recover the file but to a different name, just type
        !           142: the new name in.  If you type "no" recover will skip that file and go on
        !           143: to the next one.
        !           144: .LP
        !           145: If you want to look at a buffer before deciding to recover it, use the
        !           146: .I print
        !           147: command.  The syntax for this is
        !           148: .I print buffer
        !           149: where
        !           150: .I buffer
        !           151: again is either its name or the number.  You can type ^C if you want to
        !           152: abort printing the file to the terminal, and recover will respond with
        !           153: an appropriate message.
        !           154: .LP
        !           155: When you're done and have all the buffers you want, type the
        !           156: .I quit
        !           157: command to leave.  You will then be asked whether it's okay to delete the
        !           158: tmp files.  Most of the time that's okay and you should type "yes".  When
        !           159: you say that, JOVE removes all traces of those buffers and you won't be able
        !           160: to look at them again.  (If you recovered some buffers they will still be
        !           161: around, so don't worry.)  So, if you're not sure whether you've gotten all
        !           162: the buffers, you should answer "no" so that you'll be able to run
        !           163: recover again at a later time (presumably after you've figured out
        !           164: which ones you want to save).
        !           165: .LP
        !           166: If you type ^C at any time other than when you're printing a file to the
        !           167: terminal, recover will exit without a word.  If you do this but wish you
        !           168: hadn't, just type "jove -r" to the shell again, and you will be put back
        !           169: with no loss.
        !           170: .SH GETTING HELP
        !           171: Once in JOVE, there are several commands available to get help.  To execute
        !           172: any JOVE command, you type "<ESC> X command-name" followed by <Return>.  To
        !           173: get a list of all the JOVE commands you type "<ESC> X" followed by "?".  The
        !           174: .I describe-bindings
        !           175: command can be used to get a list containing each key, and its associated
        !           176: command (that is, the command that gets executed when you type that key).
        !           177: If you want to save the list of bindings, you can set the jove variable
        !           178: .I send-typeout-to-buffer
        !           179: to ON (using the 
        !           180: .I set
        !           181: command), and then execute the
        !           182: .I describe-bindings
        !           183: command.  This will create a buffer and put in it the bindings list it
        !           184: normally would have printed on the screen.  Then you can save that buffer to
        !           185: a file and print it to use as a quick reference card.  (See VARIABLES below.)
        !           186: .LP
        !           187: Once you know the name of a command, you can find out what it does with the
        !           188: .I describe-command
        !           189: command, which you can invoke quickly by typing "ESC ?".  The
        !           190: .I apropos
        !           191: command will give you a list of all the command with a specific string in
        !           192: their names.  For example, if you want to know the names of all the
        !           193: commands that are concerned with windows, you can run "apropos" with the
        !           194: keyword
        !           195: .I window.
        !           196: .LP
        !           197: If you're not familar with the EMACS command set, it would be worth your
        !           198: while to use run TEACHJOVE.  Do do that, just type "teachjove" to your shell
        !           199: and you will be placed in JOVE in a file which contains directions.  I highly
        !           200: recommend this for beginners; you may save yourself a lot of time and
        !           201: headaches.
        !           202: .SH KEY BINDINGS and VARIABLES
        !           203: You can alter the key bindings in JOVE to fit your personal tastes.  That
        !           204: is, you can change what a key does every time you strike it.  For example,
        !           205: by default the C-N key is bound to the command
        !           206: .I next-line
        !           207: and so when you type it you move down a line.  If you want to change a
        !           208: binding or add a new one, you use the
        !           209: .I bind-to-key
        !           210: command.  The syntax is "bind-to-key <command> key".
        !           211: .LP
        !           212: You can also change the way JOVE behaves in little ways by changing the
        !           213: value of some variables with the
        !           214: .I set
        !           215: command.  The syntax is "set <variable> value", where value is a number or a
        !           216: string, or "on" or "off", depending on the context.  For example, if you
        !           217: want JOVE to make backup files, you set the "make-backup-files" variable to
        !           218: "on".  To see the value of a variable, use the "print <variable>" command.
        !           219: .SH INITIALIZATION
        !           220: JOVE automatically reads commands from an initialization file in your HOME
        !           221: directory, called ".joverc".  In this file you can place commands that you
        !           222: would normally type in JOVE.  If you like to rearrange the key bindings and
        !           223: set some variables every time you get into JOVE, you should put them in your
        !           224: initialization file.  Here are a few lines from mine:
        !           225: .nf
        !           226:        set match-regular-expressions on
        !           227:        auto-execute-command auto-fill /tmp/Re\e|.*drft
        !           228:        bind-to-key i-search-forward ^\e
        !           229:        bind-to-key i-search-reverse ^R
        !           230:        bind-to-key find-tag-at-point ^[^T
        !           231:        bind-to-key scroll-down ^C
        !           232:        bind-to-key grow-window ^Xg
        !           233:        bind-to-key shrink-window ^Xs
        !           234: .fi
        !           235: (Note that the Control Characters can be either two character sequences
        !           236: (e.g. ^ and C together as ^C) or the actual control character.  If you want
        !           237: to use an ^ by itself you must BackSlash it (e.g., bind-to-key grow-window
        !           238: ^X\e^ binds grow-window to "^X^").
        !           239: .SH SOME MINOR DETAILS
        !           240: You should type C-\e instead of C-S in many instances.  For example, the way
        !           241: to search for a string is documented as being "C-S" but in reality you
        !           242: should type "C-\e".  This is because C-S is the XOFF character (what gets
        !           243: sent when you type the NO SCROLL key), and clearly that won't work.  The XON
        !           244: character is "C-Q" (what gets sent when you type NO SCROLL again) which is
        !           245: documented as the way to do a quoted-insert.  The alternate key for this is
        !           246: "C-^" (typed as "C-`" on vt100's and its look-alikes).  If you want to
        !           247: enable C-S and C-Q and you know what you are doing, you can put the line:
        !           248: .nf
        !           249:        set allow-^S-and-^Q on
        !           250: .fi
        !           251: in your initialization file.
        !           252: .LP
        !           253: If your terminal has a metakey, JOVE will use it if you turn on the
        !           254: "meta-key" variable.  JOVE will automatically turn on "meta-key" if the
        !           255: METAKEY environment variable exists.  This is useful for if you have
        !           256: different terminals (e.g., one at home and one at work) and one has a
        !           257: metakey and the other doesn't.
        !           258: .SH FILES
        !           259: LIBDIR/.joverc - system wide initialization file
        !           260: .sp 0
        !           261: ~/.joverc - personal initialization file
        !           262: .sp 0
        !           263: TMPDIR - where temporary files are stored
        !           264: .sp 0
        !           265: LIBDIR/teach-jove - the interactive tutorial
        !           266: .sp 0
        !           267: LIBDIR/portsrv - for running shells in windows (pdp11 only)
        !           268: .SH SEE ALSO
        !           269: .nf
        !           270: ed(1) - for a description of regular expressions
        !           271: .sp 0
        !           272: teachjove(1) - for an interactive JOVE tutorial.
        !           273: .fi
        !           274: .SH DIAGNOSTICS
        !           275: JOVE diagnostics are meant to be self-explanatory, but you are advised
        !           276: to seek help whenever you are confused.  You can easily lose a lot of
        !           277: work if you don't know EXACTLY what you are doing.
        !           278: .SH BUGS
        !           279: Lines can't be more than 1024 characters long.
        !           280: .sp 1
        !           281: Searches can't cross line boundaries.
        !           282: .SH AUTHOR
        !           283: Jonathan Payne

unix.superglobalmegacorp.com

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