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