Annotation of 43BSDTahoe/new/jove/doc/jove.5, revision 1.1.1.1

1.1       root        1: .dc "make-backup-files" "(variable)"
                      2: If this variable is set, then whenever \s-2JOVE\s0 writes out a file, it will
                      3: move the previous version of the file (if there was one) to "#filename".
                      4: This is often convenient if you save a file by accident.  The default
                      5: value of this variable is "off".
                      6: .IQ Note:
                      7: this is an optional part of
                      8: \s-2JOVE\s0, and your guru may not have it enabled, so it may not work.
                      9: .dc "make-buffer-unmodified" "ESC ~"
                     10: This makes \s-2JOVE\s0 think the selected buffer hasn't been changed even if
                     11: it has.  Use this when you accidentally change the buffer but don't
                     12: want it considered changed.  Watch the mode line to see the * disappear
                     13: when you use this command.  
                     14: .dc "make-macro-interactive" "Not Bound"
                     15: This command is meaningful only while you are defining a keyboard macro,
                     16: and when you are in the minibuffer.  Ordinarily, when a command in a macro
                     17: definition requires a trailing text argument (file name, search string,
                     18: etc.), the argument you supply becomes part of the macro definition.  If
                     19: you want to be able to supply a different argument each time the macro is
                     20: used, then while you are defining it, you should give the
                     21: make-macro-interactive command just before typing the argument which will
                     22: be used during the definition process.  Note: you must bind this command
                     23: to a key in order to use it; you can't say "ESC X make-macro-interactive".
                     24: .dc "mark-threshold" "(variable)"
                     25: This variable contains the number of lines point may move by before
                     26: the mark is set.  If, in a search or something, point moves by more
                     27: than this many lines, the mark is set so that you may return easily.
                     28: The default value of this variable is 22 (one screenful, on most
                     29: terminals).
                     30: .dc "marks-should-float" "(variable)"
                     31: When this variable is "off", the position of a mark is remembered as a line
                     32: number within the buffer and a character number within the line.  If you add
                     33: or delete text before the mark, it will no longer point to the text you
                     34: marked originally because that text is no longer at the same line and
                     35: character number.  When this variable is "on", the position of a mark is
                     36: adjusted to compensate for each insertion and deletion.  This makes marks
                     37: much more sensible to use, at the cost of slowing down insertion and
                     38: deletion somewhat.  The default value is "on".
                     39: .dc "match-regular-expressions" "(variable)"
                     40: When set, \s-2JOVE\s0 will match regular expressions in search patterns.
                     41: This makes special the characters ., *, [, ], ^, and $, and the two-character
                     42: sequences \e<, \e>, \e\|{, \e\|} and \e\||.
                     43: See the
                     44: .IQ ed(1)
                     45: manual page, the tutorial "Advanced Editing in 
                     46: .UX
                     47: ", and the section above "Searching with Regular Expressions"
                     48: for more information.
                     49: .dc "meta-key" "(variable)"
                     50: You should set this variable to "on" if your terminal has a real Meta key.
                     51: If your terminal has such a key, then a key sequence like ESC Y can be
                     52: entered by holding down Meta and typing Y.  NOTE:  This disables
                     53: interrupting noninteractive shell commands.
                     54: .dc "mode-line" "(variable)"
                     55: The format of the mode line can be determined by setting this variable.
                     56: The items in the line are specified using a printf(3) format, with the
                     57: special things being marked as "%x".  Digits may be used between the
                     58: '%' and the 'x' to mean repeat that many times.
                     59: \&'x' may be:
                     60: .DS I
                     61: .ta .5i 1i 1.5i
                     62:        C       check for new mail, and displays "[New mail]" if there
                     63:                is any (see also the mail-check-interval and disable-biff
                     64:                variables)
                     65:        F       the current file name, with leading path stripped
                     66:        M       the current list of major and minor modes
                     67:        b       the current buffer name
                     68:        c       the fill character (-)
                     69:        d       the current directory
                     70:        e       end of string--this must be the last item in the string
                     71:        f       the current file name
                     72:        l       the current load average (updated automatically)
                     73:        mxy     x, when the buffer is modified or y, when not
                     74:        n       the current buffer number
                     75:        p       interactive process status for process windows
                     76:        s       space, but only if previous character is not a space
                     77:        t       the current time (updated automatically)
                     78:        w       a '>' for windows which are scrolled left
                     79:        [ ]     the square brackets printed when in a recursive edit
                     80:        ( )     items enclosed in %( ... %) will only be printed on
                     81:                the bottom mode line, rather than copied when the
                     82:                window is split
                     83: .DE
                     84: In addition, any other character is simply copied into the mode line.
                     85: Characters may be escaped with a backslash.  To get a feel for all
                     86: this, try typing "ESC X print mode-line" and compare the result with
                     87: your current mode line.
                     88: .dc "mode-line-color" "(variable)"
                     89: This specifies the color of the modeline (PC version only).  Its default
                     90: value is 0, and in that case it is drawn in reverse video.  If it has any
                     91: other value, this value is used as the attribute in the Bios calls.
                     92: .dc "mode-line-should-standout" "(variable)"
                     93: If set, the mode line will be printed in reverse video, if your
                     94: terminal supports it.  The default for this variable is "off".
                     95: .dc "name-kbd-macro" "Not Bound"
                     96: This copies the keyboard macro and gives it a name freeing up the
                     97: keyboard macro so you can define some more.  Keyboard macros with
                     98: their own names can be bound to keys just like built in commands
                     99: can.  See the
                    100: .IQ define-macro,
                    101: .IQ source
                    102: and
                    103: .IQ write-macros-to-file
                    104: commands.
                    105: .dc "newline" "Return"
                    106: This divides the current line at point moving all the text to the
                    107: right of point down onto the newly created line.  Point moves down to
                    108: the beginning of the new line.
                    109: .dc "newline-and-backup" "C-O"
                    110: This divides the current line at point moving all the text to the
                    111: right of point down onto the newly created line.  The difference
                    112: between this and "newline" is that point does not move down to the
                    113: beginning of the new line.
                    114: .dc "newline-and-indent" "LineFeed"
                    115: This behaves the same was as Return does when in Auto Indent mode.
                    116: This makes Auto Indent mode obsolete but it remains in the name of
                    117: backward compatibility.
                    118: .dc "next-error" "C-X C-N"
                    119: This moves to the next error in the list of errors that were parsed
                    120: with
                    121: .IQ parse-errors.
                    122: In one window the list of errors is shown with the current one always at
                    123: the top.  In another window is the file that contains the error.  Point
                    124: is positioned in this window on the line where the error occurred.
                    125: .dc "next-line" "C-N"
                    126: This moves down to the next line.
                    127: .dc "next-page" "C-V"
                    128: This displays the next page of the buffer by taking the bottom line of
                    129: the window and redrawing the window with it at the top.  If there isn't
                    130: another page in the buffer \s-2JOVE\s0 rings the bell.  If a numeric argument
                    131: is supplied the screen is scrolled up that many lines; if the argument
                    132: is negative the screen is scrolled down.
                    133: .dc "next-window" "C-X N"
                    134: This moves into the next window.  Windows live in a circular list so
                    135: when you're in the bottom window and you try to move to the next one
                    136: you are moved to the top window.  It is an error to use this command
                    137: with only one window.
                    138: .dc "number-lines-in-window" "Not Bound"
                    139: This displays the line numbers for each line in the buffer being
                    140: displayed.  The number isn't actually part of the text; it's just
                    141: printed before the actual buffer line is.  To turn this off you run
                    142: the command again; it toggles.
                    143: .dc "over-write-mode" "Not Bound"
                    144: This turns Over Write mode on (or off if it's currently on) in the selected
                    145: buffer.  When on, this mode changes the way the self-inserting characters
                    146: work.  Instead of inserting themselves and pushing the rest of the line over
                    147: to the right, they replace or over-write the existing character.  Also,
                    148: Rubout replaces the character before point with a space instead of deleting
                    149: it.  When Over Write mode is on "OvrWt" is displayed on the mode line.
                    150: .dc "page-next-window" "ESC C-V"
                    151: This displays the next page in the next window.  This is exactly the
                    152: same as "C-X N C-V C-X P".
                    153: .dc "paren-flash" ") } ]"
                    154: This handles the C mode curly brace indentation, the Lisp mode paren
                    155: indentation, and the Show Match mode paren/curly brace/square bracket
                    156: flashing.
                    157: .dc "paren-flash-delay" "(variable)"
                    158: How long, in tenths of seconds, \s-2JOVE\s0 should pause on a matching
                    159: parenthesis in
                    160: .IQ Show Match
                    161: mode.  The default is 5.
                    162: .dc "parse-errors" "Not Bound"
                    163: This takes the list of C compilation errors (or output from another program
                    164: in the same format) in the current buffer and parses them for use with the
                    165: .IQ next-error
                    166: and
                    167: .IQ previous-error
                    168: and
                    169: .IQ current-error
                    170: commands.
                    171: This is a very useful tool and helps with compiling C programs and when used
                    172: in conjunction with the "grep" UNIX command very helpful in making changes
                    173: to a bunch of files.  This command understands errors produced by cc, cpp,
                    174: and lint; plus any other program with the same format (e.g., "grep -n").
                    175: \s-2JOVE\s0 visits each file that has an error and remembers each line that
                    176: contains an error.  It doesn't matter if later you insert or delete
                    177: some lines in the buffers containing errors; \s-2JOVE\s0 remembers where
                    178: they are regardless.
                    179: .IQ current-error
                    180: is automatically executed after one of the parse commands, so you end up
                    181: at the first error.  See also
                    182: .IQ error-format-string
                    183: to make it possible to parse errors of a different format.
                    184: .dc "parse-spelling-errors-in-buffer" "Not Bound"
                    185: This parses a list of words in the current buffer and looks them up in
                    186: another buffer that you specify.  This will probably go away soon.
                    187: .dc "pause-jove" "ESC S"
                    188: This stops \s-2JOVE\s0 and returns control to the parent shell.  This
                    189: only works for users using the C-shell, and on systems that have the
                    190: job control facility.  To return to \s-2JOVE\s0 you type "fg" to the C-shell.
                    191: .dc "physical-tabstop" "(variable)"
                    192: How many spaces your terminal prints when it prints a tab character.
                    193: .dc "pop-mark" "Not Bound"
                    194: This gets executed when you run
                    195: .IQ set-mark
                    196: with a numeric argument.
                    197: \s-2JOVE\s0 remembers the last 16 marks and you use
                    198: .IQ pop-mark
                    199: to go
                    200: backward through the ring of marks.  If you execute
                    201: .IQ pop-mark
                    202: enough
                    203: times you will eventually get back to where you started.
                    204: .dc "popd" "Not Bound"
                    205: This pops one entry off the directory stack.  Entries are pushed with
                    206: the
                    207: .IQ pushd
                    208: command.  The names were stolen from the C-shell and the
                    209: behavior is the same.
                    210: .dc "previous-error" "C-X C-P"
                    211: This is the same as
                    212: .IQ next-error
                    213: except it goes to the previous error.
                    214: See
                    215: .IQ next-error
                    216: for documentation.
                    217: .dc "previous-line" "C-P"
                    218: This moves up to the previous line.
                    219: .dc "previous-page" "ESC V"
                    220: This displays the previous page of the current buffer by taking the top
                    221: line and redrawing the window with it at the bottom.  If a numeric
                    222: argument is supplied the screen is scrolled down that many lines; if
                    223: the argument is negative the screen is scrolled up.
                    224: .dc "previous-window" "C-X P and C-X O"
                    225: This moves into the next window.  Windows live in a circular list so
                    226: when you're in the top window and you try to move to the previous one
                    227: you are moved to the bottom window.  It is an error to use this command
                    228: with only one window.
                    229: .dc "print" "Not Bound"
                    230: This prints the value of a \s-2JOVE\s0 variable.
                    231: .dc "process-bind-to-key" "Not Bound"
                    232: This command is identical to bind-to-key, except that it only affects
                    233: your bindings when you are in a buffer attached to a process.  When
                    234: you enter the process buffer, any keys bound with this command will
                    235: automatically take their new values.  When you switch to a non-process
                    236: buffer, the old bindings for those keys will be restored.  For example,
                    237: you might want to execute
                    238: .DS I
                    239: process-bind-to-key stop-process ^Z
                    240: process-bind-to-key interrupt-process ^C
                    241: .DE
                    242: Then, when you start up an interactive process and switch into that
                    243: buffer, C-Z will execute stop-process and C-C will execute interrupt-
                    244: process.  When you switch back to a non-process buffer, C-Z will go
                    245: back to executing scroll-up (or whatever you have it bound to).
                    246: .dc "process-newline" "Return"
                    247: This this only gets executed when in a buffer that is attached to an
                    248: interactive-process.  \s-2JOVE\s0 does two different things depending on where
                    249: you are when you hit Return.  When you're at the end of the I-Process
                    250: buffer this does what Return normally does, except it also makes the
                    251: line available to the process.  When point is positioned at some other
                    252: position that line is copied to the end of the buffer (with the prompt
                    253: stripped) and point is moved there with it, so you can then edit that
                    254: line before sending it to the process.  This command
                    255: .IQ must
                    256: be bound
                    257: to the key you usually use to enter shell commands (Return), or else
                    258: you won't be able to enter any.
                    259: .dc "process-prompt" (variable)
                    260: What a prompt looks like from the shell and i-shell-command
                    261: processes.  The default is "% ", the default C-shell prompt.  This is
                    262: actually a regular expression search string.  So you can set it to be
                    263: more than one thing at once using the \e| operator.  For instance, for
                    264: LISP hackers, the prompt can be
                    265: .DS
                    266: "% \e|-> \e|<[0-9]>: ".
                    267: .DE
                    268: .dc "process-send-data-no-return" "Not Bound"
                    269: This is like
                    270: .IQ process-newline
                    271: except it sends everything to the process without the newline.  Normally,
                    272: when you type return in a process buffer it sends everything you typed
                    273: including the Return.  This command just provides a way to send data to
                    274: the process without having to send a newline as well.
                    275: .dc "push-shell" "Not Bound"
                    276: This spawns a child shell and relinquishes control to it.  This works
                    277: on any version of UNIX, but this isn't as good as
                    278: .IQ pause-jove
                    279: because
                    280: it takes time to start up the new shell and you get a brand new
                    281: environment every time.  To return to \s-2JOVE\s0 you type "C-D".
                    282: .dc "pushd" "Not Bound"
                    283: This pushes a directory onto the directory stack and cd's into it.  It
                    284: asks for the directory name but if you don't specify one it switches
                    285: the top two entries no the stack.  It purposely behaves the same as
                    286: C-shell's
                    287: .IQ pushd.
                    288: .dc "pwd" "Not Bound"
                    289: This prints the working directory.
                    290: .dc "query-replace-string" "ESC Q"
                    291: This replaces the occurrences of a specified string with a specified
                    292: replacement string.  When an occurrence is found point is moved to it
                    293: and then \s-2JOVE\s0 asks what to do.  The options are:
                    294: .DS I
                    295: .ta \w'Rubout111'u
                    296: Space  to replace this occurrence and go on to the next one.
                    297: Period to replace this occurrence and then stop.
                    298: Rubout to skip this occurrence and go on to the next one.
                    299: C-R    to enter a recursive edit.  This lets you temporarily
                    300:        suspend the replace, do some editing, and then return
                    301:        to continue where you left off.  To continue with the
                    302:        Query Replace type "C-X C-C" as if you were trying to
                    303:        exit \s-2JOVE\s0.  Normally you would but when you are in a
                    304:        recursive edit all it does is exit that recursive
                    305:        editing level.
                    306: C-W    to delete the matched string and then enter a recursive
                    307:        edit.
                    308: U      to undo the last replacement.
                    309: P or ! to go ahead and replace the remaining occurrences without
                    310:        asking.
                    311: Return to stop the Query Replace.
                    312: .DE
                    313: The search for occurrences starts at point and goes to the end of the
                    314: buffer, so to replace in the entire buffer you must first go to the
                    315: beginning.
                    316: .dc "quit-process" "Not Bound"
                    317: This is the same as typing "C-\e" (the Quit character) to a normal UNIX
                    318: process, except it sends it to the current process in \s-2JOVE\s0.  This is
                    319: only for versions of \s-2JOVE\s0 that have the interactive processes feature.
                    320: This only works when you are inside a buffer that's attached to a
                    321: process.
                    322: .dc "quoted-insert" "C-Q"
                    323: This lets you insert characters that normally would be executed as
                    324: other \s-2JOVE\s0 commands.  For example, to insert "C-F" you type "C-Q C-F".
                    325: .dc "read-word-abbrev-file" "Not Bound"
                    326: This reads a specified file that contains a bunch of abbreviation
                    327: definitions, and makes those abbreviations available.  If the selected
                    328: buffer is not already in Word Abbrev mode this command puts it in
                    329: that mode.
                    330: .dc "recursive-edit" "Not Bound"
                    331: This enters a recursive editing level.  This isn't really very
                    332: useful.  I don't know why it's available for public use.  I think I'll
                    333: delete it some day.
                    334: .dc "redraw-display" "C-L"
                    335: This centers the line containing point in the window.  If that line is
                    336: already in the middle the window is first cleared and then redrawn.
                    337: If a numeric argument is supplied, the line is positioned at that
                    338: offset from the top of the window.  For example, "ESC 0 C-L" positions
                    339: the line containing point at the top of the window.
                    340: .dc "rename-buffer" "Not Bound"
                    341: This lets you rename the current buffer.
                    342: .dc "replace-in-region" "Not Bound"
                    343: This is the same as
                    344: .IQ replace-string
                    345: except that it is restricted
                    346: to occurrences between Point and Mark.
                    347: .dc "replace-string" "ESC R"
                    348: This replaces all occurrences of a specified string with a specified
                    349: replacement string.  This is just like
                    350: .IQ query-replace-string
                    351: except
                    352: it replaces without asking.
                    353: .dc "right-margin" "(variable)"
                    354: Where the right margin is for
                    355: .IQ "Auto Fill"
                    356: mode and the
                    357: .IQ justify-paragraph
                    358: and
                    359: .IQ justify-region
                    360: commands.  The default is 78.
                    361: .dc "right-margin-here" "Not Bound"
                    362: This sets the
                    363: .IQ right-margin
                    364: variable to the current position of
                    365: point.  This is an easy way to say, "Make the right margin begin here,"
                    366: without having to count the number of spaces over it actually is.
                    367: .dc "save-file" "C-X C-S"
                    368: This saves the current buffer to the associated file.  This makes your
                    369: changes permanent so you should be sure you really want to.  If the
                    370: buffer has not been modified
                    371: .IQ save-file
                    372: refuses to do the save.  If
                    373: you really do want to write the file you can use "C-X C-W" which
                    374: executes
                    375: .IQ write-file.
                    376: .dc "scroll-all-lines" "(variable)"
                    377: When this is turned on, the entire window will be scrolled left or right
                    378: when the current line scrolls.  The default value is OFF, which will
                    379: cause \s-2JOVE\s0 to behave in the familiar way, namely to scroll only
                    380: the current line.
                    381: .dc "scroll-down" "ESC Z"
                    382: This scrolls the screen one line down.  If the line containing point
                    383: moves past the bottom of the window point is moved up to the center of
                    384: the window.  If a numeric argument is supplied that many lines are
                    385: scrolled; if the argument is negative the screen is scrolled up
                    386: instead.
                    387: .dc "scroll-left" "Not Bound"
                    388: This scrolls the text in the current window 10 character positions to the
                    389: left.  If a numeric argument is specified then the text is scrolled that
                    390: number of character positions.  If the variable
                    391: .IQ scroll-all-lines
                    392: is ON then
                    393: .IQ scroll-left
                    394: may actually do nothing if the scrolling would cause Point not to be
                    395: visible.
                    396: .dc "scroll-next-page" "Not Bound"
                    397: This continuously scrolls up screen-full lines (PC version only).
                    398: .dc "scroll-previous-page" "Not Bound"
                    399: This continuously scrolls down screen-full lines (PC version only).
                    400: .dc "scroll-right" "Not Bound"
                    401: This scrolls the text in the current window 10 character positions to the
                    402: right.  If a numeric argument is specified then the text is scrolled that
                    403: number of character positions.  If the variable
                    404: .IQ scroll-all-lines
                    405: is ON then
                    406: .IQ scroll-right
                    407: may actually do nothing if the scrolling would cause Point not to be
                    408: visible.
                    409: .dc "scroll-step" "(variable)"
                    410: How many lines should be scrolled if the
                    411: .IQ previous-line
                    412: or
                    413: .IQ next-line
                    414: commands move you off the top or bottom of the screen.  You may wish to
                    415: decrease this variable if you are on a slow terminal.  The default value
                    416: is 0, which means to center the current line in the window.  If the value
                    417: is negative, the behavior is slightly different.  If you move off the top
                    418: of the window, and
                    419: .IQ scroll-step
                    420: is, say, -5 then the new line will be displayed 5 lines from the bottom
                    421: of the window.  If you move off the bottom of the window, the new line
                    422: will be positioned 5 lines from the top of the window.
                    423: .dc "scroll-up" "C-Z"
                    424: This scrolls the screen one line up.  If the line containing point
                    425: moves past the top of the window point is moved down to the center of
                    426: the window.  If a numeric argument is supplied that many lines are
                    427: scrolled; if the argument is negative the screen is scrolled down
                    428: instead.
                    429: .dc "search-exit-char" "(variable)"
                    430: Set this to the character you want to use to exit incremental search.
                    431: The default is Newline, which makes i-search compatible with normal
                    432: string search.
                    433: .dc "search-forward" "C-S"
                    434: This searches forward for a specified search string and positions
                    435: point at the end of the string if it's found.  If the string is not
                    436: found point remains unchanged.  This searches from point to the end of
                    437: the buffer, so any matches before point will be missed.
                    438: .dc "search-forward-nd" "Not Bound"
                    439: This is just like
                    440: .IQ search-forward
                    441: except that it doesn't assume a default search string, and it doesn't set
                    442: the default search string.  This is useful for defining macros, when you
                    443: want to search for something, but you don't want it to affect the current
                    444: default search string.
                    445: .dc "search-reverse" "C-R"
                    446: This searches backward for a specified search string and positions
                    447: point at the beginning if the string if it's found.  If the string is
                    448: not found point remains unchanged.  This searches from point to the
                    449: beginning of the buffer, so any matches after point will be missed.
                    450: .dc "search-reverse-nd" "Not Bound"
                    451: This is just like
                    452: .IQ search-reverse
                    453: except that it doesn't assume a default search string, and it doesn't set
                    454: the default search string.  This is useful for defining macros, when you
                    455: want to search for something, but you don't want it to affect the current
                    456: default search string.
                    457: .dc "select-buffer" "C-X B"
                    458: This selects a new or already existing buffer making it the current
                    459: one.  You can type either the buffer name or number.  If you type in
                    460: the name you need only type the name until it is unambiguous, at which
                    461: point typing Escape or Space will complete it for you.  If you want to
                    462: create a new buffer you can type Return instead of Space, and a new
                    463: empty buffer will be created.
                    464: .dc "select-buffer-1" "<Alt>-1"
                    465: This selects buffer number 1, if it exists (PC version only).
                    466: .dc "select-buffer-2" "<Alt>-2"
                    467: This selects buffer number 2, if it exists (PC version only).
                    468: .dc "select-buffer-3" "<Alt>-3"
                    469: This selects buffer number 3, if it exists (PC version only).
                    470: .dc "select-buffer-4" "<Alt>-4"
                    471: This selects buffer number 4, if it exists (PC version only).
                    472: .dc "select-buffer-5" "<Alt>-5"
                    473: This selects buffer number 5, if it exists (PC version only).
                    474: .dc "select-buffer-6" "<Alt>-6"
                    475: This selects buffer number 6, if it exists (PC version only).
                    476: .dc "select-buffer-7" "<Alt>-7"
                    477: This selects buffer number 7, if it exists (PC version only).
                    478: .dc "select-buffer-8" "<Alt>-8"
                    479: This selects buffer number 8, if it exists (PC version only).
                    480: .dc "select-buffer-9" "<Alt>-9"
                    481: This selects buffer number 9, if it exists (PC version only).
                    482: .dc "self-insert" "Most Printing Characters"
                    483: This inserts the character that invoked it into the buffer at point.
                    484: Initially all but a few of the printing characters are bound to
                    485: .IQ self-insert.
                    486: .dc "send-typeout-to-buffer" "(variable)"
                    487: When this is set \s-2JOVE\s0 will send output that normally overwrites the
                    488: screen (temporarily) to a buffer instead.  This affects commands like
                    489: .IQ list-buffers,
                    490: .IQ list-processes,
                    491: and commands that use completion.  The default value is "off".
                    492: .dc "set" "Not Bound"
                    493: This gives a specified variable a new value.  Occasionally you'll see
                    494: lines like "set this variable to that value to do this".  Well, you
                    495: use the
                    496: .IQ set
                    497: command to do that.
                    498: .dc "set-mark" "C-@"
                    499: This sets the mark at the current position in the buffer.  It prints
                    500: the message "Point pushed" on the message line.  It says that instead
                    501: of "Mark set" because when you set the mark the previous mark is still
                    502: remembered on a ring of 16 marks.  So "Point pushed" means point is
                    503: pushed onto the ring of marks and becomes the value of "the mark".
                    504: To go through the ring of marks you type "C-U C-@", or execute the
                    505: .IQ pop-mark
                    506: command.  If you type this enough times you will get back
                    507: to where you started.
                    508: .dc "shell" "(variable)"
                    509: The shell to be used with all the shell commands command.  If your SHELL
                    510: environment variable is set, it is used as the value of
                    511: .IQ shell;
                    512: otherwise "/bin/csh" is the default.
                    513: .dc "shell" "Not Bound"
                    514: This starts up an interactive shell in a window.  \s-2JOVE\s0 uses
                    515: "*shell*" as the name of the buffer in which the interacting takes
                    516: place.  See the manual for information on how to use interactive
                    517: processes.
                    518: .dc "shell-command" "C-X !"
                    519: This runs a UNIX command and places the output from that command in a
                    520: buffer.  \s-2JOVE\s0 creates a buffer that matches the name of the command
                    521: you specify and then attaches that buffer to a window.  So, when you
                    522: have only one window running this command will cause \s-2JOVE\s0 to split the
                    523: window and attach the new buffer to that window.  Otherwise, \s-2JOVE\s0
                    524: finds the most convenient of the available windows and uses that one
                    525: instead.  If the buffer already exists it is first emptied, except that if
                    526: it's holding a file, not some output from a previous command, \s-2JOVE\s0
                    527: prints an error message and refuses to execute the command.  If you
                    528: really want to execute the command you should delete that buffer
                    529: (saving it first, if you like) or use
                    530: .IQ shell-command-to-buffer,
                    531: and
                    532: try again.
                    533: .dc "shell-command-no-buffer" "Not Bound"
                    534: This is just like
                    535: .IQ shell-command
                    536: except it just runs the command without saving the output to any buffer.
                    537: It will report the success of the command in the usual way.
                    538: .dc "shell-command-to-buffer" "Not Bound"
                    539: This is just like
                    540: .IQ shell-command
                    541: except it lets you specify the
                    542: buffer to use instead of \s-2JOVE\s0.
                    543: .dc "shell-command-with-typeout" "Not Bound"
                    544: This is just like
                    545: .IQ shell-command
                    546: except that instead of saving the output to a buffer, and displaying
                    547: it in a window, this just types out the output in the same way that
                    548: .IQ list-buffers
                    549: does.  Actually, how this behaves depends on the value of the variable
                    550: .IQ send-typeout-to-buffer.
                    551: If it is on then shell-command-with-typeout will behave just like
                    552: .IQ shell-command.
                    553: .dc "shell-flags" "(variable)"
                    554: This defines the flags that are passed to shell commands.  The default is
                    555: "-c".  See the
                    556: .IQ shell
                    557: variable to change the default shell.
                    558: .dc "show-match-mode" "Not Bound"
                    559: This turns on Show Match mode (or off if it's currently on) in the
                    560: selected buffer.  This changes "}" and ")" so that when they are typed
                    561: the are inserted as usual, and then the cursor flashes back to the
                    562: matching "{" or "(" (depending on what was typed) for about half a
                    563: second, and then goes back to just after the "}" or ")" that invoked
                    564: the command.  This is useful for typing in complicated expressions in
                    565: a program.  You can change how long the cursor sits on the matching
                    566: paren by setting the "paren-flash-delay" variable in tenths of a
                    567: second.  If the matching "{" or "(" isn't visible nothing happens.
                    568: .dc "shrink-window" "Not Bound"
                    569: This makes the current window one line shorter, if possible.  Windows
                    570: must be at least 2 lines high, one for the text and the other for the
                    571: mode line.
                    572: .dc "source" "Not Bound"
                    573: This reads a bunch of \s-2JOVE\s0 commands from a file.  The format of the
                    574: file is the same as that in your initialization file (your ".joverc")
                    575: in your main directory.  There should be one command per line and it
                    576: should be as though you typed "ESC X" while in \s-2JOVE\s0.  For example,
                    577: here's part of my initialization file:
                    578: .DS I
                    579: bind-to-key i-search-reverse ^R
                    580: bind-to-key i-search-forward ^S
                    581: bind-to-key pause-jove ^[S
                    582: .DE
                    583: What they do is make "C-R" call the
                    584: .IQ i-search-reverse
                    585: command and
                    586: "C-S" call
                    587: .IQ i-search-forward
                    588: and "ESC S" call
                    589: .IQ pause-jove.
                    590: .dc "spell-buffer" "Not Bound"
                    591: This runs the current buffer through the UNIX
                    592: .IQ spell
                    593: program and places
                    594: the output in buffer "Spell".  Then \s-2JOVE\s0 lets you edit the list of
                    595: words, expecting you to delete the ones that you don't care about, i.e., the
                    596: ones you know are spelled correctly.  Then the
                    597: .IQ parse-spelling-errors-in-buffer
                    598: command comes along and finds all the
                    599: misspelled words and sets things up so the error commands work.
                    600: .dc "split-current-window" "C-X 2"
                    601: This splits the current window into two equal parts (providing the
                    602: resulting windows would be big enough) and displays the selected buffer
                    603: in both windows.  Use "C-X 1" to go back to 1 window mode.  If a numeric
                    604: argument is supplied, the window is split "evenly" that many times (when
                    605: possible).
                    606: .dc "start-remembering" "C-X ("
                    607: This is just another name for the
                    608: .IQ begin-kbd-macro
                    609: name.  It is included for backward compatibility.
                    610: .dc "stop-remembering" "C-X )"
                    611: This is just another name for the
                    612: .IQ end-kbd-macro
                    613: command.  It is included for backward compatibility.
                    614: .dc "stop-process" "Not Bound"
                    615: This sends a stop signal (C-Z, for most people) to the current process.
                    616: It only works if you have the interactive process feature, and you are
                    617: in a buffer attached to a process.
                    618: .dc "string-length" "Not Bound"
                    619: This prints the number of characters in the string that point sits in.
                    620: Strings are surrounded by double quotes.  \s-2JOVE\s0 knows that "\e007" is
                    621: considered a single character, namely "C-G", and also knows about
                    622: other common ones, like "\er" (Return) and "\en" (LineFeed).  This is
                    623: mostly useful only for C programmers.
                    624: .dc "suspend-jove" "ESC S"
                    625: This is a synonym for
                    626: .IQ pause-jove.
                    627: .dc "sync-frequency" "(variable)"
                    628: The temporary files used by \s-2JOVE\s0 are forced out to disk every
                    629: .IQ sync-frequency
                    630: modifications.  The default is 50, which really makes
                    631: good sense.  Unless your system is very unstable, you probably
                    632: shouldn't fool with this.
                    633: .dc "tag-file" "(variable)"
                    634: This the name of the file in which \s-2JOVE\s0 should look up tag
                    635: definitions.  The default value is "./tags".
                    636: .dc "text-mode" "Not Bound"
                    637: This sets the major mode to Text.  Currently the other modes are
                    638: Fundamental, C and Lisp mode.
                    639: .dc "tmp-file-pathname" "(variable)"
                    640: This tells JOVE where to put the tmp files, which is where JOVE stores
                    641: buffers internally.  The default is usually in /tmp, but if you want to
                    642: store them somewhere else, you can set this variable.  If your system
                    643: crashes a lot it might be a good idea to set this variable to somewhere
                    644: other than /tmp because the system removes all the files in /tmp upon
                    645: reboot, and so you would not be able to recover editor buffers using the
                    646: "jove -r" command.
                    647: 
                    648: NOTE: In order for this to work correctly you must set this variable
                    649: BEFORE JOVE creates the tmp file.  You can set this in your .joverc (the
                    650: closer to tbe beginning the better), or as soon as you start up JOVE
                    651: before you visit any files.
                    652: .dc "transpose-characters" "C-T"
                    653: This switches the character before point with the one after point, and
                    654: then moves forward one.  This doesn't work at the beginning of the
                    655: line, and at the end of the line it switches the two characters before
                    656: point.  Since point is moved forward, so that the character that was
                    657: before point is still before point, you can use "C-T" to drag a
                    658: character down the length of a line.  This command pretty quickly
                    659: becomes very useful.
                    660: .dc "transpose-lines" "C-X C-T"
                    661: This switches the current line with the one above it, and then moves
                    662: down one so that the line that was above point is still above point.
                    663: This, like
                    664: .IQ transpose-characters,
                    665: can be used to drag a line down a page.
                    666: .dc "unbind-key" "Not Bound"
                    667: Use this to unbind
                    668: .IQ any
                    669: key sequence.  You can use this to unbind even a
                    670: prefix command, since this command does not use "key-map completion".  For
                    671: example, "ESC X unbind-key ESC [" unbinds the sequence "ESC [".  This is
                    672: useful for "turning off" something set in the system-wide ".joverc" file.
                    673: .dc "update-time-frequency" "(variable)"
                    674: How often the mode line is updated (and thus the time and load
                    675: average, if you display them).  The default is 30 seconds.
                    676: .dc "use-i/d-char" "(variable)"
                    677: If your terminal has insert/delete character capability you can tell \s-2JOVE\s0
                    678: not to use it by setting this to "off".  In my opinion it is only worth using
                    679: insert/delete character at low baud rates.  WARNING: if you set this to
                    680: "on" when your terminal doesn't have insert/delete character capability,
                    681: you will get weird (perhaps fatal) results.
                    682: .dc "version" "Not Bound"
                    683: Displays the version number of this \s-2JOVE\s0.
                    684: .dc "visible-bell" "(variable)"
                    685: Use the terminal's visible bell instead of beeping.  This is set
                    686: automatically if your terminal has the capability.
                    687: .dc "visible-spaces-in-window" "Not Bound"
                    688: This displays an underscore character instead of each space in the
                    689: window and displays a greater-than followed by spaces for each tab
                    690: in the window.  The actual text in the buffer is not changed; only
                    691: the screen display is affected.  To turn this off you run the command
                    692: again; it toggles.
                    693: .dc "visit-file" "C-X C-V"
                    694: This reads a specified file into the current buffer replacing the old
                    695: text.  If the buffer needs saving \s-2JOVE\s0 will offer to save it for you.
                    696: Sometimes you use this to start over, say if you make lots of changes
                    697: and then change your mind.  If that's the case you don't want \s-2JOVE\s0 to
                    698: save your buffer and you answer "NO" to the question.
                    699: .dc "window-find" "C-X 4"
                    700: This lets you select another buffer in another window three
                    701: different ways.  This waits for another character which can be one of
                    702: the following:
                    703: .DS I
                    704: .ta .5i 1i 1.5i
                    705: T      Finds a tag in the other window.
                    706: F      Finds a file in the other window.
                    707: B      Selects a buffer in the other window.
                    708: .DE
                    709: This is just a convenient short hand for "C-X 2" (or "C-X O" if there are
                    710: already two windows) followed by the appropriate sequence for invoking each
                    711: command.  With this, though, there isn't the extra overhead of having to
                    712: redisplay.  In addition, you don't have to decide whether to type "C-X 2" or
                    713: "C-X O" since "C-X 4" does the right thing.
                    714: .dc "word-abbrev-mode" "Not Bound"
                    715: This turns on Word Abbrev mode (or off if it's currently on) in the
                    716: selected buffer.  Word Abbrev mode lets you specify a word (an
                    717: abbreviation) and a phrase with which \s-2JOVE\s0 should substitute the
                    718: abbreviation.  You can use this to define words to expand into long
                    719: phrases, e.g., "jove" can expand into "Jonathan's Own Version of
                    720: Emacs"; another common use is defining words that you often misspell
                    721: in the same way, e.g., "thier" => "their" or "teh" => "the".  See
                    722: the information on the
                    723: .IQ auto-case-abbrev
                    724: variable.
                    725: .sp 1
                    726: There are two kinds of abbreviations: mode specific and global.  If you
                    727: define a Mode specific abbreviation in C mode, it will expand only in
                    728: buffers that are in C mode.  This is so you can have the same
                    729: abbreviation expand to different things depending on your context.
                    730: Global abbreviations expand regardless of the major mode of the buffer.
                    731: The way it works is this: \s-2JOVE\s0 looks first in the mode specific
                    732: table, and then in the global table.  Whichever it finds it in first is
                    733: the one that's used in the expansion.  If it doesn't find the word it is
                    734: left untouched. \s-2JOVE\s0 tries to expand words as they are typed, when
                    735: you type a punctuation character or Space or Return.  If you are in Auto
                    736: Fill mode the expansion will be filled as if you typed it yourself.
                    737: .dc "wrap-search" "(variable)"
                    738: If set, searches will "wrap around" the ends of the buffer instead
                    739: of stopping at the bottom or top.  The default is "off".
                    740: .dc "write-file" "C-X C-W"
                    741: This saves the current buffer to a specified file, and then makes that
                    742: file the default file name for this buffer.  If you specify a file
                    743: that already exists you are asked to confirm over-writing it.
                    744: .dc "write-files-on-make" "(variable)"
                    745: When set, all modified files will be written out before calling
                    746: make when the
                    747: .IQ compile-it
                    748: command is executed.  The default is "on".
                    749: .dc "write-macros-to-file" "Not Bound"
                    750: This writes the currently defined macros to a specified file in a format
                    751: appropriate for reading them back in with the
                    752: .IQ source
                    753: command.  The purpose of this command is to allow you to define macros
                    754: once and use them in other instances of JOVE.
                    755: .dc "write-modified-files" "C-X C-M"
                    756: This saves all the buffers that need saving.  If you supply a numeric
                    757: argument it asks for each buffer whether you really want to save it.
                    758: .dc "write-region" "Not Bound"
                    759: This writes the text in the region to a specified file.  If the file
                    760: already exists you are asked to confirm over-writing it.
                    761: .dc "write-word-abbrev-file" "Not Bound"
                    762: This writes the currently defined abbreviations to a specified file.
                    763: They can be read back in and automatically defined with
                    764: .IQ read-word-abbrev-file.
                    765: .dc "yank" "C-Y"
                    766: This undoes the last kill command.  That is, it inserts the killed
                    767: text at point.  When you do multiple kill commands in a row, they are
                    768: merged so that yanking them back with "C\-Y" yanks back all of them.
                    769: .dc "yank-pop" "ESC Y"
                    770: This yanks back previous killed text.  \s-2JOVE\s0 has a kill ring on which
                    771: the last 10 kills are stored.
                    772: .IQ yank
                    773: yanks a copy of the text at the
                    774: front of the ring.  If you want one of the last ten kills you use "ESC
                    775: Y" which rotates the ring so another different entry is now at the
                    776: front.  You can use "ESC Y" only immediately following a "C-Y" or
                    777: another "ESC Y".  If you supply a negative numeric argument the ring
                    778: is rotated the other way.  If you use this command enough times in a
                    779: row you will eventually get back to where you started.  Experiment
                    780: with this.  It's extremely useful.

unix.superglobalmegacorp.com

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