home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 March / PCWELT_3_2006.ISO / base / 05_common.mo / usr / lib / jove / cmds.doc next >
Encoding:
Text File  |  2003-03-04  |  101.9 KB  |  2,183 lines

  1.  
  2. :entry "abort-char" "Variable"
  3. This variable defines JOVE'S'S abort character.  When JOVE reads this
  4. character from the keyboard, it stops what it is doing (unless the
  5. character is quoted in some way).  Unfortunately, JOVE won't notice
  6. the character until it reads from the keyboard.  The default value is
  7. ^G.  See also "interrupt-character".
  8.  
  9. :entry "add-lisp-special" "Command"
  10. This command is to tell JOVE what identifiers require special
  11. indentation in lisp mode.  Lisp functions like "defun" and "let" are
  12. two of the default functions that get treated specially.  This is just
  13. a kludge to define some of your own.  It prompts for the function
  14. name.
  15.  
  16. :entry "allow-^S-and-^Q" "Variable"
  17. This variable, when set, tells JOVE that your terminal will not need
  18. to use the characters ^S and ^Q for flow control, in which case JOVE
  19. will instruct the system's tty driver to pass them through as normal
  20. characters.  Otherwise, if the tty driver was already using these
  21. characters for flow control, it will continue to do so.  Certain
  22. terminals and communications systems require that this variable be set
  23. "off"; in other circumstances it is better set "on".
  24.  
  25. :entry "allow-bad-characters-in-filenames" "Variable"
  26. If set, this variable permits the creation of filenames which contain
  27. "bad" characters such as those from the set *&%!"`[]{}.  These files
  28. are harder to deal with, because the characters mean something to the
  29. shell.  The default value is "off".
  30.  
  31. :entry "allow-bad-filenames" "Variable"
  32. This is the obsolete name for "allow-bad-characters-in-filenames".
  33.  
  34. :entry "append-region" "Command"
  35. This appends the region to a specified file.  If the file does not
  36. already exist it is created.
  37.  
  38. :entry "apropos" "Command"
  39. This types out each command, variable and macro with the specified
  40. string in its name ("?" matches every name).  For each command and
  41. macro that contains the string, the key sequence that can be used to
  42. execute the command or macro is printed; with variables, the current
  43. value is printed.  So, to find all the commands that are related to
  44. windows, you type
  45.  
  46.      : apropos window<Return> .
  47.  
  48.  
  49. :entry "auto-case-abbrev" "Variable"
  50. When this variable is "on" (the default), word abbreviations are
  51. adjusted for case automatically.  If the abbreviation is typed with no
  52. uppercase letter, the expansion is not changed; if it is typed with
  53. one or more uppercase letters, the first character in the expansion is
  54. capitalized; additionally, if the abbreviation is typed with more than
  55. one uppercase letter, each letter in the expansion immediately
  56. preceded by whitespace or - is capitalized.  For example, if "jove"
  57. were the abbreviation for "jonathan's own version of EMACS", the
  58. following table shows how the abbreviation would be expanded.
  59.  
  60.      jove   jonathan's own version of EMACS
  61.      Jove   Jonathan's own version of EMACS
  62.      JOVE   Jonathan's Own Version Of EMACS
  63.      JoVe   Jonathan's Own Version Of EMACS
  64.  
  65. When this variable is "off", upper and lower case are distinguished
  66. when looking for the abbreviation, i.e., in the example above, "JOVE"
  67. and "Jove" would not be expanded unless they were defined separately.
  68. See also the "word-abbrev-mode" command.
  69.  
  70. :entry "auto-execute-command" "Command"
  71. This tells JOVE to execute a command automatically when a file whose
  72. name matches a specified pattern is read.  The first argument is the
  73. command you wish to have executed.  The second argument is the
  74. pattern, a regular expression that is matched against the start of the
  75. file name.  If you wish to match a suffix, start the pattern with
  76. ".*"; to match every file, use that as the whole pattern.  Any numeric
  77. argument will be passed on to the command when it is executed (this is
  78. useful when combined with commands that adjust a minor mode).  For
  79. example, if you want to be in "show-match-mode" when you edit C source
  80. files (that is, files that end with ".c" or ".h") you can type
  81.  
  82.      : auto-execute-command show-match-mode .*\.[ch]$
  83.  
  84. Actually, this command toggles the Show Match minor mode, but since it
  85. is initially off, it will have the desired effect.  For more certain
  86. control, give the "auto-execute-command" a non-zero numeric argument:
  87. this will be passed on to the "show-match-mode".
  88.  
  89. :entry "auto-execute-macro" "Command"
  90. This is like "auto-execute-command" except you use it to execute
  91. macros automatically instead of built-in commands.
  92.  
  93. :entry "auto-fill-mode" "Command"
  94. This turns on or off the Auto Fill minor mode in the selected buffer.
  95. Without a numeric argument, the command toggles the mode; with a zero
  96. argument, the mode is turned off; with a non-zero argument, the mode
  97. is turned on.  When JOVE is in Auto Fill mode it automatically breaks
  98. lines for you when you reach the right margin so you don't have to
  99. remember to hit Return.  JOVE uses 78 as the right margin but you can
  100. change that by setting the variable "right-margin" to another value.
  101.  
  102. :entry "auto-indent-mode" "Command"
  103. This turns on or off Auto Indent minor mode in the selected buffer.
  104. Without a numeric argument, the command toggles the mode; with a zero
  105. argument, the mode is turned off; with a non-zero argument, the mode
  106. is turned on.  When JOVE is in Auto Indent mode, the "newline" command
  107. (which is normally bound to Return) acts identically to "newline-and-
  108. indent": the new line is indented to the same position as the line you
  109. were just on.  This is useful for lining up C code (or any other
  110. language (but what else is there besides C?)).  Furthermore, if a line
  111. is broken because of Auto Fill mode, and Auto Indent mode is on, the
  112. new line will be indented as the old line was.
  113.  
  114. :entry "backward-character" "Command"
  115. This moves point backward over a single character or line-separator.
  116. Thus if point is at the beginning of the line it moves to the end of
  117. the previous line.
  118.  
  119. :entry "backward-list" "Command"
  120. This moves point backward over a list, which is any text between
  121. properly matching (...), [...] or {...}.  It first searches backward
  122. for a ")" and then moves to the matching "(".  This is useful when you
  123. are trying to find unmatched parentheses in a program.  Arguments are
  124. accepted, and negative arguments search forwards.  See also "backward-
  125. s-expression".
  126.  
  127. :entry "backward-paragraph" "Command"
  128. This moves point backward to the beginning of the current or previous
  129. paragraph.  Paragraphs are bounded by lines that match "paragraph-
  130. delimiter-pattern" (by default, those that are empty or look like
  131. troff or TeX commands).  A change in indentation may also signal a
  132. break between paragraphs, except that JOVE allows the first line of a
  133. paragraph to be indented differently from the other lines.  Arguments
  134. are accepted, and negative arguments search forwards.
  135.  
  136. :entry "backward-s-expression" "Command"
  137. This moves point backward over an s-expression, that is over a Lisp
  138. atom or a C identifier (depending on the major mode) ignoring
  139. punctuation and whitespace; or, if the nearest preceding significant
  140. character is one of ")]}", over a list as in "backward-list".
  141. Arguments are accepted, and negative arguments search forwards.
  142.  
  143. :entry "backward-sentence" "Command"
  144. This moves point backward to the beginning of the current or previous
  145. sentence.  JOVE considers the end of a sentence to be the characters
  146. ".", "!" or "?" followed by a Return or by one or more spaces.
  147. Arguments are accepted, and negative arguments search forwards.
  148.  
  149. :entry "backward-up-list" "Command"
  150. This is similar to "backward-list" except it backs up and OUT of the
  151. enclosing list.  In other words, it moves backward to whichever of
  152. "([{" would match one of ")]}" if you were to type it right then.
  153. Arguments are accepted, and negative arguments search forwards as in
  154. "down-list".
  155.  
  156. :entry "backward-word" "Command"
  157. This moves point backward to the beginning of the current or previous
  158. word.  Arguments are accepted, and negative arguments search forwards.
  159.  
  160. :entry "bad-filename-extensions" "Variable"
  161. This contains a list of words separated by spaces which are to be
  162. considered bad filename extensions, and so will not be included in
  163. filename completion.  The default contains, amongst much else, ".o" so
  164. if you have "jove.c" and "jove.o" in the same directory, the filename
  165. completion will not complain of an ambiguity because it will ignore
  166. "jove.o".
  167.  
  168. :entry "begin-kbd-macro" "Command"
  169. This starts defining the keyboard macro by remembering all your key
  170. strokes until you execute "end-kbd-macro", by typing "^X )".  Because
  171. of a bug in JOVE you shouldn't terminate the macro by typing "ESC X
  172. end-kbd-macro"; "end-kbd-macro" must be bound to "^X )" in order to
  173. make things work correctly.  The "execute-kbd-macro" command will
  174. execute the remembered key strokes.  Sometimes you may want a macro to
  175. accept different input each time it runs.  To see how to do this, see
  176. the "make-macro-interactive" command.
  177.  
  178. :entry "beginning-of-file" "Command"
  179. This moves point backward to the beginning of the buffer.  This
  180. sometimes prints the "[Point pushed]" message to indicate that JOVE
  181. has set the mark so you can go back to where you were if you want.
  182. See also the variable "mark-threshold".
  183.  
  184. :entry "beginning-of-line" "Command"
  185. This moves point to the beginning of the current line.
  186.  
  187. :entry "beginning-of-window" "Command"
  188. This moves point to the beginning of the active window.  If there is a
  189. numeric argument, point moves that many lines below the top line.
  190. With the default bindings, the sequence "ESC ," is the same as "ESC <"
  191. ("beginning-of-file") but without the shift key on the "<", and can
  192. thus easily be remembered.
  193.  
  194. :entry "bind-keymap-to-key" "Command"
  195. This is like "bind-to-key" except that you use it to attach a key
  196. sequence to a named keymap.  The only reasonable use is to bind some
  197. extra key to "ESC-map" for keyboards that make typing ESC painful.
  198.  
  199. :entry "bind-macro-to-key" "Command"
  200. This is like "bind-to-key" except you use it to attach a key sequence
  201. to a named macro.
  202.  
  203. :entry "bind-macro-to-word-abbrev" "Command"
  204. This command allows you to bind a macro to a previously defined word
  205. abbreviation.  Whenever you type the abbreviation, it will first be
  206. expanded as an abbreviation (which could be empty, of course), and
  207. then the macro will be executed.  Note that if the macro moves point
  208. around, you should first "set-mark" and then "exchange-point-and-
  209. mark".
  210.  
  211. :entry "bind-to-key" "Command"
  212. This attaches a key sequence to an internal JOVE command so that
  213. future hits on that key sequence invoke that command.  This is called
  214. a global binding, as compared to local bindings and process bindings.
  215. Any previous global binding of this key sequence is discarded.  For
  216. example, to make "^W" erase the previous word, you type
  217.  
  218.      : bind-to-key kill-previous-word ^W .
  219.  
  220. It isn't possible to have two globally bound key sequences where one
  221. is a prefix of the other: JOVE wouldn't know whether to obey the
  222. shorter sequence or wait for the longer sequence.  Normally, when the
  223. "bind-to-key" command is issued interactively, the key sequence is
  224. taken to end one keystroke after the longest sequence matching any
  225. proper prefix of another binding (thus no new prefix can be created).
  226. If the command is given a numeric argument, the key sequence is taken
  227. up to the next Return keystroke (kludge!); bindings to any prefix of
  228. the sequence are discarded.  When the command is issued from a
  229. "source"d file, the key sequence is taken up to the end of the line
  230. (it is also processed so that control characters can and should be
  231. entered using the ^A notation).
  232.  
  233. Note that neither process nor local bindings are changed by this
  234. command, although they can be eclipsed.  Given a choice between
  235. bindings, the shortest is executed; if there is still a choice, a
  236. process binding is preferred to a local binding, and a local binding
  237. is preferred to a global binding.
  238.  
  239. :entry "buffer-position" "Command"
  240. This displays the current file name, current line number, total number
  241. of lines, current character number, total number of characters,
  242. percentage of the way through the file, and the position of the cursor
  243. in the current line.
  244.  
  245. :entry "c-argument-indentation" "Variable"
  246. This variable describes how to indent lines which are part of nested
  247. expressions in C.  The default is -1, which means to indent a
  248. continued line by lining it up with the first argument of the current
  249. expression.  Otherwise, the line will be indented by "c-argument-
  250. indentation" characters past the indent of the first line of the
  251. expression.  For example, the default value produces:
  252.  
  253.      Typeout(fmt, itoa(bcount++), line_cnt(b, nbuf),
  254.              TypeNames[b->b_type],
  255.              IsModified(b) ? "*" : b->b_ntbf ? "+" : NullStr,
  256.              buf_width, b->b_name, filename(b));
  257.  
  258.  
  259. :entry "c-indentation-increment" "Variable"
  260. This defines a set of tabstops independent of the value of "tab-
  261. width".  This value will be used in C mode, and JOVE will insert the
  262. correct number of Spaces and Tabs to get the right behavior.  For
  263. programmers that like to indent with 4 spaces, set this value to 4.
  264. Some people prefer to set this to 4 and leave tab-width set to 8.
  265. This will create files whose indentation steps in 4-space increments,
  266. and which look the same anywhere that tabs are expanded to 8 spaces
  267. (i.e. in most settings).  Others prefer to have one tab character per
  268. indentation level, then fiddle the tab expansion width to get the
  269. appearance they like.  They should set both "c-indentation-increment"
  270. and "tab-width" to 4.  Whenever using a non-standard tab width ("tab-
  271. width") you should only use tabs for indentation, and use spaces for
  272. all columnar alignment later in the lines.
  273.  
  274. :entry "c-mode" "Command"
  275. This turns on the C major mode in the currently selected buffer.  When
  276. in C or Lisp mode, Tab, "}", and ")" behave a little differently from
  277. usual: They are indented to the "right" place for C (or Lisp)
  278. programs.  In JOVE, the "right" place is simply the way the author
  279. likes it (but I've got good taste).
  280.  
  281. :entry "case-character-capitalize" "Command"
  282. This capitalizes the character after point, i.e., the character under
  283. the cursor.  If a negative argument is supplied that many characters
  284. before point are upper cased.
  285.  
  286. :entry "case-ignore-search" "Variable"
  287. This variable, when "on", tells JOVE to treat upper and lower case the
  288. same when searching.  Thus "jove" would match "JOVE", and "JoVe" would
  289. match either.  The default value of this variable is "off".
  290.  
  291. :entry "case-region-lower" "Command"
  292. This changes all the upper case letters in the region to their lower
  293. case equivalents.
  294.  
  295. :entry "case-region-upper" "Command"
  296. This changes all the lower case letters in the region to their upper
  297. case equivalents.
  298.  
  299. :entry "case-word-capitalize" "Command"
  300. This capitalizes the current word by making the current letter upper
  301. case and making the rest of the word lower case.  Point is moved to
  302. the end of the word.  If point is not positioned on a word it is first
  303. moved forward to the beginning of the next word.  If a negative
  304. argument is supplied that many words before point are capitalized.
  305. This is useful for correcting the word just typed without having to
  306. move point to the beginning of the word yourself.
  307.  
  308. :entry "case-word-lower" "Command"
  309. This lower-cases the current word and leaves point at the end of it.
  310. If point is in the middle of a word the rest of the word is converted.
  311. If point is not in a word it is first moved forward to the beginning
  312. of the next word.  If a negative argument is supplied that many words
  313. before point are converted to lower case.  This is useful for
  314. correcting the word just typed without having to move point to the
  315. beginning of the word yourself.
  316.  
  317. :entry "case-word-upper" "Command"
  318. This upper-cases the current word and leaves point at the end of it.
  319. If point is in the middle of a word the rest of the word is converted.
  320. If point is not in a word it is first moved forward to the beginning
  321. of the next word.  If a negative argument is supplied that many words
  322. before point are converted to upper case.  This is useful for
  323. correcting the word just typed without having to move point to the
  324. beginning of the word yourself.
  325.  
  326. :entry "cd" "Command"
  327. This changes the current directory.
  328.  
  329. :entry "character-to-octal-insert" "Command"
  330. This inserts a Back-slash followed by the ascii value of the next
  331. character typed.  For example, "^G" inserts the string "\007".
  332.  
  333. :entry "clear-and-redraw" "Command"
  334. This clears the entire screen and redraws all the windows.  Use this
  335. when JOVE gets confused about what's on the screen, or when the screen
  336. gets filled with garbage characters or output from another program.
  337.  
  338. :entry "comment-format" "Variable"
  339. This variable tells JOVE how to format your comments when you run the
  340. command "fill-comment".  Its format is this:
  341.  
  342.      <open pattern>%!<line header>%c<line trailer>%!<close pattern>
  343.  
  344. The %!, %c, and %! must appear in the format; everything else is
  345. optional.  A newline (represented by %n) may appear in the open or
  346. close patterns.  %% is the representation for %.  The default comment
  347. format is for C comments.  See "fill-comment" for more details.
  348.  
  349. :entry "compile-it" "Command"
  350. This compiles your program by running the UNIX command "make" into a
  351. buffer, and automatically parsing the error messages that are created
  352. (if any).  See the "parse-errors" command.  If "compile-it" is given a
  353. numeric argument, it will prompt for a command to run in place of the
  354. plain make and the command you enter will become the new default.  See
  355. also "error-format-string" which makes it possible to parse errors of
  356. a different format and see also the variable "error-window-size".
  357.  
  358. :entry "continue-process" "Command"
  359. This sends the signal SIGCONT to the interactive process in the
  360. current buffer, IF the process is currently stopped.
  361.  
  362. :entry "copy-region" "Command"
  363. This takes all the text in the region and copies it onto the kill ring
  364. buffer.  This is just like running "kill-region" followed by the
  365. "yank" command.  See the "kill-region" and "yank" commands.
  366.  
  367. :entry "current-error" "Command"
  368. This moves to the current error in the list of parsed errors.  See the
  369. "next-error" and "previous-error" commands for more detailed
  370. information.
  371.  
  372. :entry "date" "Command"
  373. This prints the date on the message line.
  374.  
  375. :entry "dbx-format-string" "Variable"
  376. This is the default regular-expression search string used by JOVE to
  377. parse output from "dbx" running in a shell process (see the "process-
  378. dbx-output" command).  You shouldn't have to change this unless you
  379. are using something other than "DBX".
  380.  
  381. :entry "dbx-mode" "Command"
  382. This turns on or off the DBX minor mode in the selected buffer.
  383. Without a numeric argument, the command toggles the mode; with a zero
  384. argument, the mode is turned off; with a non-zero argument, the mode
  385. is turned on.  This mode only makes sense in a buffer running an
  386. interactive shell process.  If you are running "dbx" in a window and
  387. and the buffer is in DBX minor mode, JOVE will automatically track the
  388. source location in another window.  Whenever you type "where" or while
  389. you're stepping through a program, or when you reach a breakpoint,
  390. JOVE will present the source file in another window and move to the
  391. line that is being referenced.  See also the variable "dbx-format-
  392. string".
  393.  
  394. :entry "define-global-word-abbrev" "Command"
  395. This defines a global abbreviation.  See the "word-abbrev-mode"
  396. command.
  397.  
  398. :entry "define-macro" "Command"
  399. This provides a different mechanism for defining keyboard macros.
  400. Instead of gathering keystrokes and storing them into the "keyboard-
  401. macro" (which is how "begin-kbd-macro" works), "define-macro" prompts
  402. for a macro name (terminated with Space, or Newline) and then for the
  403. actual macro body.  If you wish to specify control characters in the
  404. macro, you may simply insert them (using the "quoted-insert" command)
  405. or by inserting the character '^' followed by the appropriate letter
  406. for that character (e.g., ^A would be the two characters '^' followed
  407. by 'A').  You may use Back-slash to prevent the '^' from being
  408. interpreted as part of a control character when you really wish to
  409. insert one (e.g., a macro body "\^foo" would insert the string "^foo"
  410. into the buffer, whereas the body "^foo" would be the same as typing
  411. ^F and then inserting the string "oo").  See "write-macros-to-file" to
  412. see how to save macros.
  413.  
  414. :entry "define-mode-word-abbrev" "Command"
  415. This defines a mode-specific abbreviation.  See the "word-abbrev-mode"
  416. command.
  417.  
  418. :entry "delete-blank-lines" "Command"
  419. This deletes all the blank lines around point.  This is useful when
  420. you previously opened many lines with the "newline-and-backup" command
  421. and now wish to delete the unused ones.
  422.  
  423. :entry "delete-buffer" "Command"
  424. This deletes a buffer and frees up all the memory associated with it.
  425. Be careful(!) - once a buffer has been deleted it is gone forever.
  426. JOVE will ask you to confirm if you try to delete a buffer that needs
  427. saving.  This command is useful for when JOVE runs out of space to
  428. store new buffers.  See also the "erase-buffer" command and the "kill-
  429. some-buffers" command.
  430.  
  431. :entry "delete-current-window" "Command"
  432. This deletes the active window and moves point into one of the
  433. remaining ones.  It is an error to try to delete the only remaining
  434. window.
  435.  
  436. :entry "delete-next-character" "Command"
  437. This deletes the character that's just after point (that is, the
  438. character under the cursor).  If point is at the end of a line, the
  439. line-separator is deleted and the next line is joined with the current
  440. one.  If an argument is given, that many characters are deleted and
  441. placed on the kill ring.  If the argument is negative the deletion is
  442. forwards.
  443.  
  444. :entry "delete-other-windows" "Command"
  445. This deletes all the other windows except the current one.  This can
  446. be thought of as going back into One Window mode.
  447.  
  448. :entry "delete-previous-character" "Command"
  449. This deletes the character that's just before point (that is, the
  450. character before the cursor).  If point is at the beginning of the
  451. line, the line separator is deleted and that line is joined with the
  452. previous one.  If an argument is given, that many characters are
  453. deleted and placed on the kill ring.  If the argument is negative the
  454. deletion is backwards.
  455.  
  456. :entry "delete-white-space" "Command"
  457. This deletes all the Tabs and Spaces around point.
  458.  
  459. :entry "describe-bindings" "Command"
  460. This types out a list containing each bound key and the command that
  461. gets invoked every time that key is typed.  To make a wall chart of
  462. JOVE commands, set "send-typeout-to-buffer" to "on" and JOVE will
  463. store the key bindings in a buffer which you can save to a file and
  464. then print.
  465.  
  466. :entry "describe-command" "Command"
  467. This waits for you to type a command and then prints an explanation of
  468. that command, together with its current bindings.
  469.  
  470. :entry "describe-key" "Command"
  471. This waits for you to type a key and then tells the name of the
  472. command that gets invoked every time that key is hit.  Once you have
  473. the name of the command you can use the "describe-command" command to
  474. find out exactly what it does.
  475.  
  476. :entry "describe-variable" "Command"
  477. This prints an explanation of a specified variable.
  478.  
  479. :entry "digit" "Command"
  480. Starts or continues the entry of a numeric argument with the digit
  481. typed.  It continues reading digits until you type some other command.
  482. Then that command is executed with the numeric argument you specified.
  483.  
  484. :entry "digit-0" "Command"
  485. Starts or continues the entry of a numeric argument with the digit 0.
  486. It continues reading digits until you type some other command.  Then
  487. that command is executed with the numeric argument you specified.
  488. Sometimes it is handy to bind this to the 0 key on the numeric keypad.
  489.  
  490. :entry "digit-1" "Command"
  491. Starts or continues the entry of a numeric argument with the digit 1.
  492. It continues reading digits until you type some other command.  Then
  493. that command is executed with the numeric argument you specified.
  494. Sometimes it is handy to bind this to the 1 key on the numeric keypad.
  495.  
  496. :entry "digit-2" "Command"
  497. Starts or continues the entry of a numeric argument with the digit 2.
  498. It continues reading digits until you type some other command.  Then
  499. that command is executed with the numeric argument you specified.
  500. Sometimes it is handy to bind this to the 2 key on the numeric keypad.
  501.  
  502. :entry "digit-3" "Command"
  503. Starts or continues the entry of a numeric argument with the digit 3.
  504. It continues reading digits until you type some other command.  Then
  505. that command is executed with the numeric argument you specified.
  506. Sometimes it is handy to bind this to the 3 key on the numeric keypad.
  507.  
  508. :entry "digit-4" "Command"
  509. Starts or continues the entry of a numeric argument with the digit 4.
  510. It continues reading digits until you type some other command.  Then
  511. that command is executed with the numeric argument you specified.
  512. Sometimes it is handy to bind this to the 4 key on the numeric keypad.
  513.  
  514. :entry "digit-5" "Command"
  515. Starts or continues the entry of a numeric argument with the digit 5.
  516. It continues reading digits until you type some other command.  Then
  517. that command is executed with the numeric argument you specified.
  518. Sometimes it is handy to bind this to the 5 key on the numeric keypad.
  519.  
  520. :entry "digit-6" "Command"
  521. Starts or continues the entry of a numeric argument with the digit 6.
  522. It continues reading digits until you type some other command.  Then
  523. that command is executed with the numeric argument you specified.
  524. Sometimes it is handy to bind this to the 6 key on the numeric keypad.
  525.  
  526. :entry "digit-7" "Command"
  527. Starts or continues the entry of a numeric argument with the digit 7.
  528. It continues reading digits until you type some other command.  Then
  529. that command is executed with the numeric argument you specified.
  530. Sometimes it is handy to bind this to the 7 key on the numeric keypad.
  531.  
  532. :entry "digit-8" "Command"
  533. Starts or continues the entry of a numeric argument with the digit 8.
  534. It continues reading digits until you type some other command.  Then
  535. that command is executed with the numeric argument you specified.
  536. Sometimes it is handy to bind this to the 8 key on the numeric keypad.
  537.  
  538. :entry "digit-9" "Command"
  539. Starts or continues the entry of a numeric argument with the digit 9.
  540. It continues reading digits until you type some other command.  Then
  541. that command is executed with the numeric argument you specified.
  542. Sometimes it is handy to bind this to the 9 key on the numeric keypad.
  543.  
  544. :entry "digit-minus" "Command"
  545. Starts the entry of a numeric argument with a minus sign.  It
  546. continues reading digits until you type some other command.  Then that
  547. command is executed with the numeric argument you specified.
  548. Sometimes it is handy to bind this to the - key on a numeric keypad.
  549. In the absence of further digits and unless otherwise stated (e.g.
  550. "next-page"), the argument -1 is assumed.
  551.  
  552. :entry "dirs" "Command"
  553. This prints out the directory stack.  See the "cd", "pushd",
  554. "pushlibd" and "popd" commands for more information.
  555.  
  556. :entry "disable-biff" "Variable"
  557. When this is set, JOVE disables biff when you're editing and enables
  558. it again when you get out of JOVE, or when you pause to the parent
  559. shell or push to a new shell.  (This means arrival of new mail will
  560. not be immediately apparent but will not cause indiscriminate writing
  561. on the display).  The default is "off", although it is always safe to
  562. set it "on", even on systems that do not provide the biff facility.
  563. Note that the variable "mode-line" can be set up to announce the
  564. arrival of new mail during a JOVE session.
  565.  
  566. :entry "display-bad-filenames" "Variable"
  567. This is the obsolete name for "display-filenames-with-bad-extensions".
  568.  
  569. :entry "display-filenames-with-bad-extensions" "Variable"
  570. This variable affects only filename completion, in particular, what
  571. happens when "?" is typed while prompting for a file.  When this
  572. variable is "on", any files that end with one of the extensions
  573. defined by the variable "bad-filename-extensions" will be displayed
  574. with an "!" in front of their names.  When "display-filenames-with-
  575. bad-extensions" is "off" the files will not be displayed at all.  The
  576. default value is "on".
  577.  
  578. :entry "down-list" "Command"
  579. This is the opposite of "backward-up-list".  It enters the next list.
  580. In other words, it moves forward to whichever of "([{" it first
  581. encounters.  Arguments are accepted, and negative arguments search
  582. backwards as in "backward-up-list".
  583.  
  584. :entry "dstop-process" "Command"
  585. Send the signal SIGTSTP to the interactive process in the selected
  586. buffer when next it tries to read input.  This is equivalent to
  587. sending the "dsusp" character (which most people have set to ^Y) to
  588. the process.  This only works if you are in a buffer bound to an
  589. interactive process.
  590.  
  591. :entry "edit-word-abbrevs" "Command"
  592. This creates (if necessary) a buffer with a list of each abbreviation
  593. and the phrase it expands into, and enters a recursive edit to let you
  594. change the abbreviations or add some more.  The format of this list is
  595. "abbreviation:phrase" so if you add some more you should follow that
  596. format.  It's probably simplest just to copy some already existing
  597. abbreviations and edit them.  Use the "exit-jove" command to exit the
  598. recursive edit.
  599.  
  600. :entry "end-kbd-macro" "Command"
  601. This stops the definition of the keyboard macro.  Because of a bug in
  602. JOVE, this must be bound to "^X )", or some key sequence which is one
  603. or two characters long.  Anything else will not work properly.  See
  604. "begin-kbd-macro" for more details.
  605.  
  606. :entry "end-of-file" "Command"
  607. This moves point forward to the end of the buffer.  This sometimes
  608. prints the "[Point pushed]" message to indicate that JOVE has set the
  609. mark so you can go back to where you were if you want.  See also the
  610. variable "mark-threshold".
  611.  
  612. :entry "end-of-line" "Command"
  613. This moves point to the end of the current line.  If the line is too
  614. long to fit on the screen, it will be scrolled horizontally.  This is
  615. described with the variables "scroll-width" and "scroll-all-lines".
  616.  
  617. :entry "end-of-window" "Command"
  618. This moves point to the last character in the active window.  If there
  619. is a numeric argument, the point moves that many lines above the
  620. bottom line.  With the default bindings, the sequence "ESC ." is the
  621. same as "ESC >" ("end-of-file") but without the shift key on the ">",
  622. and can thus easily be remembered.
  623.  
  624. :entry "enhanced-keyboard" "Variable"
  625. (IBM PC version only) This is a boolean variable which can be set to
  626. enable the enhanced AT-style keyboard.  The enhanced keyboard contains
  627. function keys and key combinations that are not supported on the
  628. original IBM PCs and XTs.  The default value is determined by a bit in
  629. the BIOS data area, but this method apparently does not work with a
  630. few BIOS implementations.  WARNING: setting enhanced-keyboard "on" on
  631. systems without an enhanced keyboard will lock up your system and
  632. require you to reboot.
  633.  
  634. :entry "eof-process" "Command"
  635. Sends EOF to the current interactive process.  This only works on
  636. versions of JOVE running under versions of UNIX with pty's.
  637.  
  638. :entry "erase-buffer" "Command"
  639. This erases the contents of the specified buffer.  This is like
  640. "delete-buffer" except it only erases the contents of the buffer, not
  641. the buffer itself.  If you try to erase a buffer that needs saving you
  642. will be asked to confirm it.
  643.  
  644. :entry "error-format-string" "Variable"
  645. This is the error format string that is used by "parse-errors" to find
  646. the error messages in a buffer.  The way it works is by using this
  647. string as a JOVE regular expression search string, where the \(...\)
  648. regular expression feature is used to pick out the file name and line
  649. number from the line containing an error message.  For instance, a
  650. typical error message might look like this:
  651.  
  652.        "file.c", line 540: missing semi-colon
  653.  
  654. For strings of this format, an appropriate value for "error-format-
  655. string" would be something like this:
  656.  
  657.        ^"\([^"]*\)", line \([0-9]*\):
  658.  
  659. What this means is, to find an error message, search for a line
  660. beginning with a double-quote.  Then it says that all the following
  661. characters up to another double-quote should be remembered as one
  662. unit, namely the filename that the error is in (that is why the first
  663. set of parentheses is surrounding it).  Then it says that after the
  664. filename there will be the string ", line " followed by a line number,
  665. which should be remembered as a single unit (which is why the second
  666. set of parentheses is around that).  The only constraint on the error
  667. messages is that the file name and line number appear on the same
  668. line.  Most compilers seem to do this anyway, so this is not an
  669. unreasonable restriction.
  670.  
  671. If you do not know how to use regular expressions then this variable
  672. will be hard for you to use.  Also note that you can look at the
  673. default value of this variable by printing it out, but it is a really
  674. complicated string because it is trying to accommodate the outputs of
  675. more than one compiler.
  676.  
  677. :entry "error-window-size" "Variable"
  678. This is the percentage of the screen to use for the error-window on
  679. the screen.  When you execute "compile-it" or "spell-buffer", "error-
  680. window-size" percent of the screen will go to the error window.  If
  681. the window already exists and is a different size, it is made to be
  682. this size.  The default value is 20%.
  683.  
  684. :entry "exchange-point-and-mark" "Command"
  685. This moves point to mark and makes mark the old point.  This is for
  686. quickly moving from one end of the region to the other.
  687.  
  688. :entry "execute-kbd-macro" "Command"
  689. This executes the keyboard macro.  If you supply a numeric argument
  690. the macro is executed that many times.  See the "begin-kbd-macro"
  691. command for more details.
  692.  
  693. :entry "execute-macro" "Command"
  694. This executes a specified macro.  If you supply a numeric argument the
  695. macro is executed that many times.
  696.  
  697. :entry "execute-named-command" "Command"
  698. This is the way to execute a command that isn't bound to any key.
  699. When you are prompted with ": " you can type the name of the command.
  700. You don't have to type the entire name.  After typing a few
  701. characters, Tab will fill in as many more as it can (as will Space,
  702. but that will also obey the command if it is now unambiguous).  If you
  703. are not sure of the name of the command, type "?" and JOVE will print
  704. a list of all the commands that you could possibly match given what
  705. you've already typed.  Once the command is unambiguous, typing Return
  706. will cause it to be obeyed.
  707.  
  708. If you don't have any idea what the command's name is but you know it
  709. has something to do with windows (for example), you can do "ESC X
  710. apropos window" and JOVE will print a list of all the commands that
  711. are related to windows.  If you find yourself constantly executing the
  712. same commands this way you probably want to bind them to keys so that
  713. you can execute them more quickly.  See the "bind-to-key" command.
  714.  
  715. :entry "exit-jove" "Command"
  716. This exits JOVE.  If any buffers need saving JOVE will print a warning
  717. message and ask for confirmation.  If you leave without saving your
  718. buffers all your work will be lost.  If you made a mistake and really
  719. do want to exit then you can.  If there are any interactive processes
  720. running, JOVE will also ask whether they should be terminated.
  721.  
  722. If you are in a recursive editing level "exit-jove" will return you
  723. from that.  The selected buffer will be set back to the buffer that
  724. was current when the recursive edit was entered.  Normally, point will
  725. be returned to its position at the time of entry, but if the "exit-
  726. jove" command is given a numeric argument, point is left at its most
  727. recent position within that buffer.
  728.  
  729. :entry "expand-environment-variables" "Variable"
  730. When this variable is "on" JOVE will try to expand any strings of the
  731. form "$var" into the value of the environment variable "var" when
  732. asking for a filename.  For example, if you type "$HOME/.joverc",
  733. "$HOME" will be replaced with your home directory.  The default value
  734. is "on".
  735.  
  736. :entry "file-creation-mode" "Variable"
  737. This variable has an octal value.  It contains the mode (see
  738. "chmod"(1)) with which files should be created.  This mode gets
  739. modified by your current umask setting (see "umask"(1)).  The default
  740. value is usually 0666 or 0644.
  741.  
  742. :entry "files-should-end-with-newline" "Variable"
  743. This variable indicates that all files should always have a newline at
  744. the end.  This is often necessary for line printers and the like.
  745. When set, if JOVE is writing a file whose last character is not a
  746. newline, it will add one automatically.  The default value is "on".
  747.  
  748. :entry "fill-comment" "Command"
  749. This command fills in your C comments to make them pretty and
  750. readable.  This filling is done according the variable "comment-
  751. format".
  752.  
  753.      /*
  754.       * the default format makes comments like this.
  755.       */
  756.  
  757. This can be changed by changing the "format-comment" variable.  Other
  758. languages may be supported by changing the format variable
  759. appropriately.  The formatter looks backwards from point for an open
  760. comment symbol.  If found, all indentation is done relative to the
  761. position of the first character of the open symbol.  If there is a
  762. matching close symbol, the entire comment is formatted.  If not, the
  763. region between the open symbol and point is reformatted.  The original
  764. text is saved in the kill ring; a "yank-pop" command will undo the
  765. formatting.
  766.  
  767. :entry "fill-paragraph" "Command"
  768. This rearranges words between lines so that all the lines in the
  769. current paragraph extend as close to the right margin as possible,
  770. ensuring that none of the lines will be greater than the right margin.
  771. The default value for "right-margin" is 78, but can be changed with
  772. the "set" and "right-margin-here" commands.
  773.  
  774. The rearrangement may cause an end of line to be replaced by
  775. whitespace.  Normally, this whitespace is a single space character.
  776. If the variable "space-sentence-2" is "on", and the end of the line
  777. was apparently the end of a sentence or the line ended with a colon,
  778. two spaces will be used.  However, a sentence or colon followed by a
  779. single space already within a line will not be altered.
  780.  
  781. JOVE has a complicated algorithm for determining the beginning and end
  782. of the paragraph.  In the normal case JOVE will give all the lines the
  783. same indent as they currently have, but if you wish to force a new
  784. indent you can supply a numeric argument to "fill-paragraph" and JOVE
  785. will indent each line to the column specified by the "left-margin"
  786. variable.  See also the "left-margin" variable and "left-margin-here"
  787. command.
  788.  
  789. :entry "fill-region" "Command"
  790. This is like "fill-paragraph", except it operates on a region instead
  791. of just a paragraph.
  792.  
  793. :entry "filter-region" "Command"
  794. This sends the text in the region to a UNIX command, and replaces the
  795. region with the output from that command.  For example, if you are
  796. lazy and don't like to take the time to write properly indented C
  797. code, you can put the region around your C file and "filter-region" it
  798. through "cb", the UNIX C beautifier.  If you have a file that contains
  799. a bunch of lines that need to be sorted you can do that from inside
  800. JOVE too, by filtering the region through the UNIX "sort" command.
  801. Before output from the command replaces the region JOVE stores the old
  802. text in the kill ring.  If you are unhappy with the results a "yank-
  803. pop" command will get back the old text.
  804.  
  805. :entry "find-file" "Command"
  806. This reads a specified file into its own buffer and then selects that
  807. buffer.  If you've already read this file into a buffer, that buffer
  808. is simply selected.  If the file doesn't yet exist, JOVE will print
  809. "(New file)" so that you know.  If possible, the buffer is named after
  810. the filename (ignoring any directory part).
  811.  
  812. :entry "find-tag" "Command"
  813. This finds the file that contains the specified tag.  JOVE looks up
  814. tags by default in the "tags" file in the current directory, as
  815. created by the UNIX command "ctags(1)".  If you are using the
  816. Exuberant Ctags program, you will need to give it flags -N --format=1.
  817. You can change the default tag name by setting the "tag-file" variable
  818. to another name.  If you specify a numeric argument to this command,
  819. you will be prompted for a tag file.  This is a good way to specify
  820. another tag file without changing the default.
  821.  
  822. :entry "find-tag-at-point" "Command"
  823. This finds the file that contains the tag that point is currently in.
  824. See "find-tag".
  825.  
  826. :entry "first-non-blank" "Command"
  827. This moves point (backwards or forwards) to the indent of the current
  828. line.
  829.  
  830. :entry "forward-character" "Command"
  831. This moves point forward over a single character or line-separator.
  832. Thus if point is at the end of the line it moves to the beginning of
  833. the next one.
  834.  
  835. :entry "forward-list" "Command"
  836. This moves point forward over a list, which is any text between
  837. properly matching (...), [...] or {...}.  It first searches forward
  838. for a "(" and then moves to the matching ")".  This is useful when you
  839. are trying to find unmatched parentheses in a program.  Arguments are
  840. accepted, and negative arguments search backwards.  See also "forward-
  841. s-expression".
  842.  
  843. :entry "forward-paragraph" "Command"
  844. This moves point forward to the end of the current or next paragraph.
  845. Paragraphs are bounded by lines that match "paragraph-delimiter-
  846. pattern" (by default, those that are empty or look like troff or TeX
  847. commands).  A change in indentation may also signal a break between
  848. paragraphs, except that JOVE allows the first line of a paragraph to
  849. be indented differently from the other lines.  Arguments are accepted,
  850. and negative arguments search backwards.
  851.  
  852. :entry "forward-s-expression" "Command"
  853. This moves point forward over an s-expression, that is over a Lisp
  854. atom or a C identifier (depending on the major mode) ignoring
  855. punctuation and whitespace; or, if the nearest succeeding significant
  856. character is one of "([{", over a list as in "forward-list".
  857. Arguments are accepted, and negative arguments search backwards.
  858.  
  859. :entry "forward-sentence" "Command"
  860. This moves point forward to the end of the current or next sentence.
  861. JOVE considers the end of a sentence to be the characters ".", "!" or
  862. "?", followed possibly by "'", "''", or """, followed by a Return or
  863. whitespace.  Arguments are accepted, and negative arguments search
  864. backwards.
  865.  
  866. :entry "forward-word" "Command"
  867. This moves point forward to the end of the current or next word.
  868.  
  869. :entry "fundamental-mode" "Command"
  870. This sets the major mode to Fundamental.  Fundamental mode is the mode
  871. of the Minibuf, and hence of anything typed in the message line.
  872.  
  873. :entry "gather-numeric-argument" "Command"
  874. This command is one of two ways to specify a numeric argument to a
  875. command.  Typing this command once means, Do the next command 4 times.
  876. Typing it twice will do the next command 16 times, and so on.  If at
  877. any point you type a number, then that number will be used instead of
  878. 4.  For instance, ^U 3 5 means do the next command 35 times (assuming
  879. "gather-numeric-argument" is bound to ^U).
  880.  
  881. :entry "goto-line" "Command"
  882. If a positive numeric argument is supplied, point moves to the
  883. beginning of that line.  If the argument is negative, it indicates how
  884. many lines from the end of the buffer to move point to.  If no
  885. argument is supplied one is prompted for.
  886.  
  887. :entry "goto-window-with-buffer" "Command"
  888. This command prompts for a buffer name and then selects that buffer.
  889. If the buffer is currently being displayed in one of the windows, that
  890. window is selected instead.
  891.  
  892. :entry "grind-s-expr" "Command"
  893. When point is positioned on a "(", this re-indents that LISP
  894. expression.
  895.  
  896. :entry "grow-window" "Command"
  897. This makes the active window one line bigger.  This only works when
  898. there is more than one window and provided there is room to change the
  899. size.  See also "shrink-window".
  900.  
  901. :entry "handle-tab" "Command"
  902. This handles indenting to the "right" place in C and Lisp mode, and
  903. just inserts itself in Text mode.
  904.  
  905. :entry "highlight-attribute" "Variable"
  906. (IBM PC version only) This specifies how the attribute (color) of a
  907. character is to be changed when it is highlighted.  Highlighting is
  908. indicated by exclusive oring this value with the normal attribute for
  909. the character.  The default is 16.
  910.  
  911. :entry "highlight-mark" "Variable"
  912. When this is on, jove will highlight the mark if currently visible.
  913. The mark is highlighted with an underscore.
  914.  
  915. :entry "i-search-forward" "Command"
  916. Incremental search.  Like search-forward except that instead of
  917. prompting for a string and searching for that string all at once, it
  918. accepts the string one character at a time.  After each character you
  919. type as part of the search string, it searches for the entire string
  920. so far.  When you like what it found, type Return to finish the
  921. search.  You can take back a character with DEL and the search will
  922. back up to the position before that character was typed.  ^G aborts
  923. the search.
  924.  
  925. :entry "i-search-reverse" "Command"
  926. Incremental search.  Like search-reverse except that instead of
  927. prompting for a string and searching for that string all at once, it
  928. accepts the string one character at a time.  After each character you
  929. type as part of the search string, it searches for the entire string
  930. so far.  When you like what it found, type Return to finish the
  931. search.  You can take back a character with DEL and the search will
  932. back up to the position before that character was typed.  ^G aborts
  933. the search.
  934.  
  935. :entry "i-shell-command" "Command"
  936. This is like "shell-command" except that it launches an interactive
  937. process and so lets you continue with your editing while the command
  938. is running.  This is really useful for long running commands with
  939. sporadic output.  See also the variable "wrap-process-lines".
  940.  
  941. :entry "insert-file" "Command"
  942. This inserts a specified file into the selected buffer at point.
  943. Point is positioned at the beginning of the inserted file.
  944.  
  945. :entry "internal-tabstop" "Variable"
  946. This is the obsolete name for "tab-width".
  947.  
  948. :entry "interrupt-character" "Variable"
  949. This specifies what character should be used as the operating system's
  950. tty driver interrupt character.  When this character is typed, the tty
  951. driver generates SIGINT signal.  This will interrupt a non-interactive
  952. process.  If no such process is running, JOVE'S will offer you the
  953. option of continuing, or crashing JOVE'S (trying to save your work).
  954. This is a crude and desperate way to stop JOVE'S.  Unfortunately there
  955. is no way to turn off the interrupt character.  The default is ^].
  956. See also "abort-char".
  957.  
  958. :entry "interrupt-process" "Command"
  959. This sends the signal SIGINT to the interactive process in the
  960. selected buffer.  This only works if you are inside a buffer bound to
  961. an interactive process.
  962.  
  963. :entry "kill-next-word" "Command"
  964. This kills the text from point to the end of the current or next word.
  965. The killed text is sent to the kill ring.
  966.  
  967. :entry "kill-previous-word" "Command"
  968. This kills the text from point to the beginning of the current or
  969. previous word.  The killed text is sent to the kill ring.
  970.  
  971. :entry "kill-process" "Command"
  972. This command prompts for a buffer name or buffer number (just as
  973. "select-buffer" does) and then sends the process in that buffer the
  974. signal SIGKILL.
  975.  
  976. :entry "kill-region" "Command"
  977. This deletes the text in the region and saves it on the kill ring.
  978. Commands that delete text but save it on the kill ring all have the
  979. word "kill" in their names.  Use the "yank" command to get back the
  980. most recent kill.
  981.  
  982. :entry "kill-s-expression" "Command"
  983. This kills the text from point to the end of the current or next s-
  984. expression.  The killed text is sent to the kill ring.
  985.  
  986. :entry "kill-some-buffers" "Command"
  987. This goes through all the existing buffers and asks whether or not to
  988. delete each one.  If you decide to delete a buffer, and it turns out
  989. that the buffer is modified, JOVE will offer to save it first.  This
  990. is useful for when JOVE runs out of memory to store lines (this only
  991. happens on PDP-11's) and you have lots of buffers that you are no
  992. longer using.  See also the "delete-buffer" command.
  993.  
  994. :entry "kill-to-beginning-of-sentence" "Command"
  995. This kills from point to the beginning of the current or previous
  996. sentence.  If a negative numeric argument is supplied it kills from
  997. point to the end of the current or next sentence.  The killed text is
  998. sent to the kill ring.
  999.  
  1000. :entry "kill-to-end-of-line" "Command"
  1001. This kills from point to the end of the current line.  When point is
  1002. at the end of the line (discounting any white space) the line-
  1003. separator is also deleted and the next line is joined with current
  1004. one.  If a numeric argument is supplied that many lines are killed; if
  1005. the argument is negative that many lines before point are killed; if
  1006. the argument is zero the text from point to the beginning of the line
  1007. is killed.  The killed text is sent to the kill ring.
  1008.  
  1009. :entry "kill-to-end-of-sentence" "Command"
  1010. This kills from point to the end of the current or next sentence.  If
  1011. a negative numeric argument is supplied it kills from point to the
  1012. beginning of the current or previous sentence.  The killed text is
  1013. sent to the kill ring.
  1014.  
  1015. :entry "lc-ctype" "Variable"
  1016. This string variable determines how non-ASCII characters are
  1017. displayed, and which characters are to be considered as upper-case,
  1018. lower-case, printable, etc.  The default is the implementation-defined
  1019. native environment; under POSIX, it is determined by whichever of the
  1020. environment variables LC_ALL, LC_CTYPE or LANG is first found to be
  1021. set, and is otherwise "C".  Some useful values of "lc-ctype" might be:
  1022.  
  1023.      ""             Default: the native environment.
  1024.      "C"            Strict ASCII.  All other characters greater than \177
  1025.                     rendered in octal.
  1026.      "iso_8859_1"   Latin-1 alphabet.
  1027.  
  1028.  
  1029. :entry "left-margin" "Variable"
  1030. This is how far lines should be indented when Auto Indent mode is on,
  1031. or when the "newline-and-indent" command is run (usually by typing
  1032. Linefeed).  It is also used by "fill-paragraph" and Auto Fill mode.
  1033. If the value is zero (the default) then the left margin is determined
  1034. from the surrounding lines.
  1035.  
  1036. :entry "left-margin-here" "Command"
  1037. This sets the "left-margin" variable to the current position of point.
  1038. This is an easy way to say, "Make the left margin begin here," without
  1039. having to count the number of spaces over it actually is.
  1040.  
  1041. :entry "lisp-mode" "Command"
  1042. This turns on the Lisp major mode.  In Lisp mode, the characters Tab
  1043. and ")" are treated specially, similar to the way they are treated in
  1044. C mode.  Also, Auto Indent mode is affected, and handled specially.
  1045. See also the "c-mode" command.
  1046.  
  1047. :entry "list-buffers" "Command"
  1048. This types out a list containing various information about each
  1049. buffer.  The list looks like this:
  1050.  
  1051.       (* means the buffer needs saving)
  1052.       NO  Lines Type        Name           File
  1053.       --  ----- ----        ----           ----
  1054.       1   1     File        Main           [No file]
  1055.       2   1     Scratch   * Minibuf        [No file]
  1056.       3   519   File      * commands.doc   commands.doc
  1057.  
  1058. The first column lists the buffer's number.  When JOVE prompts for a
  1059. buffer name you can either type in the full name, or you can simply
  1060. type the buffer's number.  The second column is the number of lines in
  1061. the buffer.  The third says what type of buffer.  There are four
  1062. types: File, Scratch, Process and I-Process.  "File" is simply a
  1063. buffer that holds a file; "Scratch" is for buffers that JOVE uses
  1064. internally; "Process" is one that holds the output from a UNIX
  1065. command; "I-Process" is one that has an interactive process attached
  1066. to it.  The next column contains the name of the buffer.  And the last
  1067. column is the name of the file that's attached to the buffer.  In this
  1068. case, both Minibuf and commands.doc have been changed but not yet
  1069. saved.  In fact Minibuf won't be saved since it's a Scratch buffer.
  1070.  
  1071. :entry "list-processes" "Command"
  1072. This makes a list somewhat like "list-buffers" does, except its list
  1073. consists of the current interactive processes.  The list looks like
  1074. this:
  1075.  
  1076.       Buffer           Status           Pid       Command
  1077.       ------           ------           ---       -------
  1078.       *shell*          Running          18415     shell
  1079.       fgrep            Done             18512     fgrep -n Buffer *.c
  1080.  
  1081. The first column has the name of the buffer to which the process is
  1082. attached.  The second has the status of the process; if a process has
  1083. exited normally the status is "Done" as in fgrep; if the process
  1084. exited with an error the status is "Exit N" where N is the value of
  1085. the exit code; if the process was killed by some signal the status is
  1086. the name of the signal that was used; otherwise the process is
  1087. running.  The last column is the name of the command that is being
  1088. run.
  1089.  
  1090. :entry "local-bind-keymap-to-key" "Command"
  1091. This is like "local-bind-to-key" except that you use it to attach a
  1092. key sequence to a named keymap.  The only reasonable use is to bind
  1093. some extra key to "ESC-map" for keyboards that make typing ESC
  1094. painful.
  1095.  
  1096. :entry "local-bind-macro-to-key" "Command"
  1097. This is like "local-bind-to-key" except you use it to attach a key
  1098. sequence to a named macro.
  1099.  
  1100. :entry "local-bind-to-key" "Command"
  1101. This is like "bind-to-key", except that the binding is only enabled
  1102. when the selected buffer is the buffer that was current when the
  1103. command was executed.  In other words, the binding only applies to the
  1104. selected buffer.
  1105.  
  1106. :entry "macify" "Variable"
  1107. (Mac version only) When this variable is on, JOVE will use the
  1108. standard Macintosh file-selector dialog in place of the traditional
  1109. JOVE Minibuffer.
  1110.  
  1111. :entry "mail-check-frequency" "Variable"
  1112. This is how often (in seconds) JOVE should check your mailbox for
  1113. incoming mail.  If you set this to zero JOVE won't check for new mail.
  1114. See also the "mode-line", "mailbox" and "disable-biff" variables.  The
  1115. default is 60.
  1116.  
  1117. :entry "mailbox" "Variable"
  1118. Set this to the full pathname of your mailbox.  JOVE will look here to
  1119. decide whether or not you have any unread mail.  This defaults to
  1120. "/usr/spool/mail/$USER", where "$USER" is set to your login name.
  1121.  
  1122. :entry "make-backup-files" "Variable"
  1123. If this variable is set, then whenever JOVE writes out a file, it will
  1124. move the previous version of the file (if there was one) to
  1125. "#filename~".  This is often convenient if you save a file by
  1126. accident.  The default value of this variable is "off".
  1127.  
  1128. :entry "make-buffer-unmodified" "Command"
  1129. This makes JOVE think the selected buffer hasn't been changed even if
  1130. it has.  Use this when you accidentally change the buffer but don't
  1131. want it considered changed.  Watch the mode line to see the *
  1132. disappear when you use this command.
  1133.  
  1134. :entry "make-macro-interactive" "Command"
  1135. This command is meaningful only while you are defining a keyboard
  1136. macro, and when you are expecting input in the message line.
  1137. Ordinarily, when a command in a macro definition requires a trailing
  1138. text argument (file name, search string, etc.), the argument you
  1139. supply becomes part of the macro definition.  If you want to be able
  1140. to supply a different argument each time the macro is used, then while
  1141. you are defining it, you should give the "make-macro-interactive"
  1142. command just before typing the argument which will be used during the
  1143. definition process.  Note: you must bind this command to a key in
  1144. order to use it; you can't say "ESC X make-macro-interactive".
  1145.  
  1146. :entry "mark-threshold" "Variable"
  1147. This variable contains the number of lines point may move by before
  1148. the mark is set.  If, in a search or some other command that may move
  1149. point, point moves by more than this many lines, the mark is set so
  1150. that you may return easily.  The default value of this variable is 22
  1151. (one screenful, on most terminals).  See also the commands "search-
  1152. forward", "search-reverse", "beginning-of-file" and "end-of-file".
  1153.  
  1154. :entry "match-regular-expressions" "Variable"
  1155. When set, JOVE will match regular expressions in search patterns.
  1156. This makes special the characters ., *, [ and ].  See the JOVE Manual
  1157. for a full discussion of regular-expressions.
  1158.  
  1159. :entry "meta-key" "Variable"
  1160. You should set this variable to "on" if your terminal has a real Meta
  1161. key which forces the 8th bit of each character.  If your terminal has
  1162. such a key, then a key sequence like ESC Y can be entered by holding
  1163. down Meta and typing Y.  On the IBM PC, this variable affects how ALT
  1164. is interpreted.  On the Macintosh, it affects how Option is
  1165. interpreted.  NOTE: In some older UNIX systems, JOVE must switch the
  1166. tty to raw mode to accept the 8-bit characters generated by a meta
  1167. key.  Unfortunately, the "interrupt-character" does not generate an
  1168. interrupt in raw mode.
  1169.  
  1170. :entry "mode-line" "Variable"
  1171. The format of the mode line can be determined by setting this
  1172. variable.  The items in the line are specified using a format similar
  1173. to that used by "printf(3)", with the special things being marked as
  1174. "%x".  Digits may be used between the '%' and the 'x' to mean repeat
  1175. that many times.  'x' may be:
  1176.  
  1177.           C    checks for new mail, and displays "[New mail]" if there is any
  1178.                (see also the "mail-check-frequency" and "mailbox" variables)
  1179.           F    the current file name, with leading path stripped
  1180.           M    the current list of major and minor modes
  1181.           b    the selected buffer name
  1182.           c    the fill character (-)
  1183.           d    the current directory
  1184.           e    extra space in mode line is distributed evenly
  1185.                among the places %e is used (used for justifying,
  1186.                separating, or centering parts of the mode line)
  1187.           f    the current file name
  1188.           ixy  x, when the buffer's file has been changed behind JOVE's back,
  1189.                y, when not
  1190.           mxy  x, when the buffer is modified or y, when not
  1191.           n    the selected buffer number
  1192.           p    interactive process status for process windows
  1193.           s    space, but only if previous character is not a space
  1194.           t    the current time (updated automatically)
  1195.           w    a '>' for windows which are scrolled left
  1196.           [ ]  the square brackets printed when in a recursive edit
  1197.           ( )  items enclosed in %( ... %) will only be printed on
  1198.                the bottom mode line, rather than copied when the
  1199.                window is split
  1200.  
  1201. In addition, any other character is simply copied into the mode line.
  1202. Characters may be escaped with a backslash.  To get a feel for all
  1203. this, try typing "ESC X print mode-line" and compare the result with
  1204. your current mode line.
  1205.  
  1206. :entry "mode-line-attribute" "Variable"
  1207. (IBM PC version only) This specifies the screen attribute (color) for
  1208. characters in the mode line.  The default is 112 (black on white).
  1209.  
  1210. :entry "mode-line-should-standout" "Variable"
  1211. If set, the mode line will be printed in reverse video, if your
  1212. terminal supports it.  The default for this variable is "on".
  1213.  
  1214. :entry "name-kbd-macro" "Command"
  1215. This copies the keyboard macro and gives it a name freeing up the
  1216. keyboard macro so you can define some more.  Keyboard macros with
  1217. their own names can be bound to keys just like built in commands can.
  1218. See the "define-macro", "source" and "write-macros-to-file" commands.
  1219.  
  1220. :entry "newline" "Command"
  1221. This divides the current line at point moving all the text to the
  1222. right of point down onto the newly created line.  Point moves down to
  1223. the beginning of the new line.  In Auto Indent mode, the new line will
  1224. be indented to match the old line.
  1225.  
  1226. :entry "newline-and-backup" "Command"
  1227. This divides the current line at point moving all the text to the
  1228. right of point down onto the newly created line.  The difference
  1229. between this and "newline" is that point does not move down to the
  1230. beginning of the new line.
  1231.  
  1232. :entry "newline-and-indent" "Command"
  1233. This behaves in any mode the same way as "newline" does in Auto Indent
  1234. mode.
  1235.  
  1236. :entry "next-error" "Command"
  1237. This moves to the next error in the list of errors that were parsed
  1238. with "parse-errors".  In one window the list of errors is shown with
  1239. the current one always at the top.  If the file that contains the
  1240. error is not already in a buffer, it is read in.  Its buffer is
  1241. displayed in another window and point is positioned in this window on
  1242. the line where the error occurred.
  1243.  
  1244. :entry "next-line" "Command"
  1245. This moves point down to the corresponding position on the next line
  1246. (or the end of that line if it does not extend so far).
  1247.  
  1248. :entry "next-page" "Command"
  1249. This displays the next page of the selected buffer by taking the
  1250. bottom line of the window and redrawing the window with it at the top.
  1251. If there isn't another page in the buffer JOVE rings the bell.  If a
  1252. numeric argument of only - (with no digits) is supplied, the previous
  1253. page is displayed.  Otherwise, if a numeric argument is supplied the
  1254. screen is scrolled up that many lines, exactly as in the "scroll-up"
  1255. command; if the argument is negative the screen is scrolled down.
  1256.  
  1257. :entry "next-window" "Command"
  1258. This moves into the next window.  Windows live in a circular list so
  1259. when you're in the bottom window and you try to move to the next one
  1260. you are moved to the top window.  It is an error to use this command
  1261. with only one window.
  1262.  
  1263. :entry "number-lines-in-window" "Command"
  1264. This displays the line numbers for each line in the buffer being
  1265. displayed.  The number isn't actually part of the text; it's just
  1266. printed before the actual buffer line is.  To turn this off you run
  1267. the command again; it toggles.
  1268.  
  1269. :entry "one-key-confirmation" "Variable"
  1270. If this variable is set, a single keystroke of y or n is expected in
  1271. answer to yes/no questions.  Normally, a yes/no question must be
  1272. answered with any non-empty prefix of yes or no, followed by a Return
  1273.  
  1274. :entry "over-write-mode" "Command"
  1275. This turns Over Write minor mode on in the selected buffer.  Without a
  1276. numeric argument, the command toggles the mode; with a zero argument,
  1277. the mode is turned off; with a non-zero argument, the mode is turned
  1278. on.  When on, this mode changes the way the self-inserting characters
  1279. work.  Instead of inserting themselves and pushing the rest of the
  1280. line over to the right, they replace or over-write the existing
  1281. character.  Also, DEL replaces the character before point with a space
  1282. instead of deleting it.  When Over Write mode is on "OvrWt" is
  1283. displayed in the mode line.
  1284.  
  1285. :entry "page-next-window" "Command"
  1286. This displays the next page in the next window.  It switches to the
  1287. next window, performs a "next-page" command (with any numeric
  1288. argument), and switches back to the original window.  Note that an
  1289. argument of just "-" will thus display the previous page.
  1290.  
  1291. :entry "paren-flash" "Command"
  1292. This command causes the characters bound to it to be inserted, and
  1293. then to partake in C mode curly brace indentation, Lisp mode
  1294. parenthesis indentation, and the Show Match mode paren/curly-
  1295. brace/square-bracket flashing.
  1296.  
  1297. :entry "paragraph-delimiter-pattern" "Variable"
  1298. When JOVE is searching for a paragraph boundary, if this pattern (a
  1299. regular expression) matches the start of a line, that line is treated
  1300. as a paragraph delimiter.  The default pattern recognizes blank lines,
  1301. troff control lines, and lines starting with a TeX control sequence.
  1302.  
  1303. There is a special provision for TeX: if a line is matched by the
  1304. pattern, and the match is of exactly an initial \, that line is only
  1305. treated as a delimiter if the next line also starts with \.
  1306.  
  1307. :entry "paren-flash-delay" "Variable"
  1308. How long, in tenths of a second, JOVE should pause on a matching
  1309. parenthesis in Show Match mode.  The default is 5.
  1310.  
  1311. :entry "parse-errors" "Command"
  1312. This takes the list of C compilation errors (or the output from
  1313. another program in an acceptable format) in the selected buffer and
  1314. parses them for use with the "next-error", "previous-error" and
  1315. "current-error" commands.  This is a very useful tool and helps with
  1316. compiling C programs or, when used in conjunction with the UNIX "grep"
  1317. command, with making changes to a bunch of files.  JOVE finds each
  1318. file that has an error and remembers each line that contains an error.
  1319. It doesn't matter if later you insert or delete some lines in the
  1320. buffers containing errors; JOVE remembers where they are regardless.
  1321. "current-error" is automatically executed after one of the parse
  1322. commands, so you end up at the first error.  The variable "error-
  1323. format-string" specifies, by means of regular-expressions, the format
  1324. of errors to be recognized.  Its default value can handle messages
  1325. from "cc", "cpp", "lint" and "grep -n".
  1326.  
  1327. :entry "parse-spelling-errors-in-buffer" "Command"
  1328. This parses a list of words in the selected buffer and looks them up
  1329. in another buffer that you specify.  It is invoked automatically by
  1330. the "spell-buffer" command.
  1331.  
  1332. :entry "pause-jove" "Command"
  1333. This stops JOVE and returns control to the parent shell.  This only
  1334. works on systems that have the job control facility.  To return to
  1335. JOVE you type "fg" to the shell.
  1336.  
  1337. :entry "pop-mark" "Command"
  1338. JOVE remembers the last eight marks and you use "pop-mark" to go
  1339. backward through the ring of marks.  If you execute "pop-mark" enough
  1340. times you will eventually get back to where you started.  This command
  1341. is also executed when you run "set-mark" with a numeric argument.
  1342.  
  1343. :entry "popd" "Command"
  1344. This pops one entry off the directory stack.  Entries are pushed with
  1345. the "pushd" or "pushlibd" commands.  The names were stolen from the C-
  1346. shell and the behavior is the same.
  1347.  
  1348. :entry "previous-error" "Command"
  1349. This is the same as "next-error" except it goes to the previous error.
  1350. See "next-error" for documentation.
  1351.  
  1352. :entry "previous-line" "Command"
  1353. This moves point up to the corresponding position on the previous line
  1354. (or the end of that line if it does not extend so far).
  1355.  
  1356. :entry "previous-page" "Command"
  1357. This displays the previous page of the selected buffer by taking the
  1358. top line and redrawing the window with it at the bottom.  If a numeric
  1359. argument of only - (with no digits) is supplied, the next page is
  1360. displayed.  Otherwise, if a numeric argument is supplied the screen is
  1361. scrolled down that many lines, exactly as in the "scroll-down"
  1362. command; if the argument is negative the screen is scrolled up.
  1363.  
  1364. :entry "previous-window" "Command"
  1365. This moves into the previous window.  Windows live in a circular list
  1366. so when you're in the top window and you try to move to the previous
  1367. one you are moved to the bottom window.  It is an error to use this
  1368. command with only one window.
  1369.  
  1370. :entry "print" "Command"
  1371. This displays the value of a JOVE variable in the message line.
  1372.  
  1373. :entry "process-bind-keymap-to-key" "Command"
  1374. This is like "process-bind-to-key" except that you use it to attach a
  1375. key sequence to named keymap.  The only reasonable use is to bind some
  1376. extra key to "ESC-map" for keyboards that make typing ESC painful.
  1377.  
  1378. :entry "process-bind-macro-to-key" "Command"
  1379. This is like "process-bind-to-key" except you use it to attach a key
  1380. sequence to a named macro.
  1381.  
  1382. :entry "process-bind-to-key" "Command"
  1383. This command is identical to "bind-to-key", except that it only
  1384. affects your bindings when you are in a buffer attached to an
  1385. interactive process.  When you enter the process buffer, any keys
  1386. bound with this command will automatically take their new values.
  1387. When you switch to a non-process buffer, the old bindings for those
  1388. keys will be restored.  For example, you might want to execute
  1389.  
  1390.      process-bind-to-key stop-process ^C ^Z
  1391.      process-bind-to-key interrupt-process ^C ^C
  1392.  
  1393. Then, when you start up an interactive process and switch into that
  1394. buffer, ^C ^Z will execute "stop-process" and ^C ^C will execute
  1395. "interrupt-process".  Bindings effective only in process windows are
  1396. shown with a "Proc:" prefix in this manual and by the "apropos" and
  1397. "describe-bindings" commands.
  1398.  
  1399. :entry "process-dbx-output" "Command"
  1400. This is the obsolete name for "dbx-mode".
  1401.  
  1402. :entry "process-newline" "Command"
  1403. This command is normally bound to Return as if by a "process-bind-to-
  1404. key" so that it will only be bound in a process window.  JOVE does two
  1405. different things depending on where you are when you hit Return.  When
  1406. you're in the last line of the interactive process buffer, point moves
  1407. to the end of the line, the line is terminated, and the line is made
  1408. available as input to the process.  When point is positioned in some
  1409. other line, that line is copied to the end of the buffer (with the
  1410. prompt stripped) and point is moved there with it, so you can then
  1411. edit that line before sending it to the process.  This command must be
  1412. bound to the key you usually use to enter shell commands (Return), or
  1413. else you won't be able to enter any.  See the variable "process-
  1414. prompt".
  1415.  
  1416. :entry "process-prompt" "Variable"
  1417. What a prompt looks like from the "shell" and "i-shell-command"
  1418. processes.  The default is "% ", the default C-shell prompt.  This is
  1419. actually a regular expression search string.  So you can set it to be
  1420. more than one thing at once using the \| operator.  For instance, for
  1421. LISP hackers, the prompt can be
  1422.  
  1423.      "% \|-> \|<[0-9]>: ".
  1424.  
  1425.  
  1426. :entry "process-send-data-no-return" "Command"
  1427. This is like "process-newline" except it sends everything to the
  1428. process without the newline.  Normally, when you type return in a
  1429. process buffer it sends everything you typed including the Return.
  1430. This command just provides a way to send data to the process without
  1431. having to send a newline as well.
  1432.  
  1433. :entry "push-shell" "Command"
  1434. This spawns a child shell and relinquishes control to it.  Within this
  1435. shell, $1 can be used to refer to the filename (if any) of the
  1436. selected buffer.  This works on any version of UNIX, but this isn't as
  1437. good as "pause-jove" because it takes time to start up the new shell
  1438. and you get a brand new environment every time.  To return to JOVE,
  1439. simply exit the shell.
  1440.  
  1441. :entry "pushd" "Command"
  1442. This pushes a directory onto the directory stack and cd's into it.  It
  1443. asks for the directory name but if you don't specify one it switches
  1444. the top two entries on the stack.  It purposely behaves the same as C-
  1445. shell's "pushd".
  1446.  
  1447. :entry "pushlibd" "Command"
  1448. Performs same function as "pushd" except that it pushes the Jove
  1449. sharable library directory.  This directory holds the system-wide
  1450. "jove.rc" and the text used by the "describe-command" and "describe-
  1451. variable" commands.  It is mainly intended for use with the "jove.rc"
  1452. file.
  1453.  
  1454. :entry "pwd" "Command"
  1455. This prints the pathname of the working directory, as in the UNIX
  1456. "pwd" command.
  1457.  
  1458. :entry "query-replace-string" "Command"
  1459. This replaces strings matching a specified regular-expression with a
  1460. specified replacement string.  When a match is found, point is moved
  1461. to it and then JOVE asks what to do.  The options are:
  1462.  
  1463.      Space or Y or y     to replace this match and go on to the next one.
  1464.      Period              to replace this match and then stop.
  1465.      DEL, BS, or N or n  to skip this match and go on to the next one.
  1466.      ^R or R or r        to enter a recursive edit.  This lets you temporarily
  1467.                          suspend the replace, do some editing, and then return
  1468.                          to continue where you left off.  To continue with the
  1469.                          "query-replace-string", use the "exit-jove" command.
  1470.      ^W                  to delete the match and then enter a recursive edit.
  1471.      ^U or U or u        to undo all changes to the last modified line and
  1472.                          continue the search from the start of that line.
  1473.      ! or P or p         to go ahead and replace the remaining matches without
  1474.                          asking, as in "replace-string".
  1475.      Return or Q or q    to stop the "query-replace-string".
  1476.      ^L                  to redraw the screen
  1477.  
  1478. It is often useful to include a piece of the matched string in the
  1479. replacement, especially if the piece was not matched by literal text.
  1480. To select which part of the matched string is to be used, the
  1481. corresponding part of the pattern is bracketed with \( and \).  More
  1482. than one set of brackets may be used, as long as they are properly
  1483. nested.  The matching substring is selected in the replacement string
  1484. using \ followed by a digit: \1 for the first, \2 for the second, and
  1485. so on.  Conveniently, \0 always stands for the complete matched
  1486. string, as if the whole regular expression were bracketed.  For
  1487. example, the following command will reverse pairs of comma-separated
  1488. numbers:
  1489.  
  1490.      : query-replace-string \([0-9]*\),\([0-9]*\) with \2,\1
  1491.  
  1492. The search for a match starts at point and goes to the end of the
  1493. buffer, so to replace in the entire buffer you must first go to the
  1494. beginning.  Each subsequent search starts at the position after the
  1495. previous match; if the previous match was an empty string, the search
  1496. is first advanced one character to prevent unbounded repetition.
  1497.  
  1498. :entry "quit-process" "Command"
  1499. Send the signal SIGQUIT to the interactive process in the selected
  1500. buffer.  This is equivalent to sending the "quit" character (which
  1501. most people have bound to ^\) to the process.  This only works if you
  1502. are in a buffer bound to an interactive process.
  1503.  
  1504. :entry "quoted-insert" "Command"
  1505. This lets you insert characters that normally would be executed as
  1506. other JOVE commands.  For example, to insert "^F" you type "^Q ^F"
  1507. (assuming "quoted-insert" is bound to ^Q).  NUL cannot be represented
  1508. in the buffer, so "quoted-insert" will insert "^@" in its stead.  On
  1509. the IBM PC under DOS, non-ASCII keystrokes are seen by JOVE as a hex
  1510. FF character followed by another character; "quoted-insert" will quote
  1511. both characters.
  1512.  
  1513. :entry "read-only-mode" "Command"
  1514. This turns on or off the Read-only minor mode.  Without a numeric
  1515. argument, the command toggles the mode; with a zero argument, the mode
  1516. is turned off; with a non-zero argument, the mode is turned on.  When
  1517. a buffer is in Read-only mode, any attempt to modify the buffer will
  1518. fail.  When a file is found, and it's not got write permission, JOVE
  1519. automatically puts the buffer in read-only mode.  This is very helpful
  1520. when you are in environments which use source control programs like
  1521. RCS and SCCS.  It prevents accidents like making a bunch of changes
  1522. and only THEN discovering that you haven't checked the file out for
  1523. making changes.
  1524.  
  1525. :entry "read-word-abbrev-file" "Command"
  1526. This reads a specified file that contains a bunch of abbreviation
  1527. definitions, and makes those abbreviations available.  See the "word-
  1528. abbrev-mode" command.
  1529.  
  1530. :entry "recursive-edit" "Command"
  1531. This enters a recursive editing level.  This isn't really very useful.
  1532. I don't know why it's available for public use.  I think I'll delete
  1533. it some day.
  1534.  
  1535. :entry "redraw-display" "Command"
  1536. This vertically centers the line containing point within the window.
  1537. If that line is already in place, the screen is first cleared and then
  1538. redrawn.  If a numeric argument is supplied, the line is positioned at
  1539. that offset from the top of the window.  For example, "ESC 0 ^L"
  1540. positions the line containing point at the top of the window (assuming
  1541. "redraw-display" is bound to ^L).
  1542.  
  1543. :entry "rename-buffer" "Command"
  1544. This lets you rename the selected buffer.
  1545.  
  1546. :entry "replace-in-region" "Command"
  1547. This is the same as "replace-string" except that it is restricted to
  1548. occurrences between point and the mark.
  1549.  
  1550. :entry "replace-string" "Command"
  1551. This replaces all occurrences of a specified string with a specified
  1552. replacement string.  This is just like "query-replace-string" except
  1553. that it replaces without asking.
  1554.  
  1555. :entry "right-margin" "Variable"
  1556. Where the right margin is for Auto Fill mode and the "fill-paragraph"
  1557. and "fill-region" commands.  The default is 78.
  1558.  
  1559. :entry "right-margin-here" "Command"
  1560. This sets the "right-margin" variable to the current position of
  1561. point.  This is an easy way to say, "Make the right margin begin
  1562. here," without having to count the number of spaces over it actually
  1563. is.
  1564.  
  1565. :entry "save-file" "Command"
  1566. This saves the selected buffer to the associated file.  This makes
  1567. your changes permanent so you should be sure you really want to do it.
  1568. If the buffer has not been modified "save-file" refuses to do the
  1569. save.  If you really do want to write the file you must use "write-
  1570. file".
  1571.  
  1572. :entry "save-on-exit" "Variable"
  1573. If this is "on" when JOVE is about to exit, it will ask, for each
  1574. modified buffer, whether you wish it to be saved.  See "write-
  1575. modified-files".
  1576.  
  1577. :entry "scroll-all-lines" "Variable"
  1578. When this is "off", (the default) horizontal scrolling will only
  1579. affect the line containing point.  When it is "on", horizontal
  1580. scrolling will affect the whole window.  See also the "scroll-width"
  1581. variable.
  1582.  
  1583. :entry "scroll-bar" "Variable"
  1584. When this is turned "on", a section of the mode line at the foot of
  1585. each window is left in not-reverse-video, to show the position of the
  1586. window relative to the whole of the file represented by that buffer
  1587. (however, if the whole of the buffer is within the window, the whole
  1588. mode line remains inverted).
  1589.  
  1590. :entry "scroll-down" "Command"
  1591. This scrolls the screen one line down.  If the line containing point
  1592. moves past the bottom of the window, point is moved up to the top of
  1593. the window.  If a numeric argument is supplied that many lines are
  1594. scrolled; if the argument is negative the screen is scrolled up
  1595. instead.  See the "previous-page" command.
  1596.  
  1597. :entry "scroll-left" "Command"
  1598. This scrolls the text in the active window to the left.  If a numeric
  1599. argument is specified then the text is scrolled that number of
  1600. columns.  Otherwise, the text is scrolled by the number of columns
  1601. specified by the variable "scroll-width".  If the variable "scroll-
  1602. all-lines" is ON then "scroll-left" may actually do nothing if the
  1603. scrolling would cause point not to be visible.  A negative argument
  1604. scrolls right.  If the "mode-line" variable is suitably set, an
  1605. indication that the text is scrolled will be given in the mode line.
  1606.  
  1607. :entry "scroll-right" "Command"
  1608. This scrolls the text in the active window to the right.  If a numeric
  1609. argument is specified then the text is scrolled that number of
  1610. columns.  Otherwise, the text is scrolled by the number of columns
  1611. specified by the variable "scroll-width".  If the variable "scroll-
  1612. all-lines" is ON then "scroll-right" may actually do nothing if the
  1613. scrolling would cause point not to be visible.  A negative argument
  1614. scrolls left.
  1615.  
  1616. :entry "scroll-step" "Variable"
  1617. How many lines should be scrolled if the "previous-line" or "next-
  1618. line" commands move you off the top or bottom of the screen.  You may
  1619. wish to decrease this variable if you are on a slow terminal.  The
  1620. default value is 0, which means to center the current line in the
  1621. window.  If the value is negative, the behavior is slightly different.
  1622. If you move off the top of the window, and "scroll-step" is, say, -5
  1623. then the new line will be displayed 5 lines from the bottom of the
  1624. window.  If you move off the bottom of the window, the new line will
  1625. be positioned 5 lines from the top of the window.
  1626.  
  1627. :entry "scroll-up" "Command"
  1628. This scrolls the screen one line up.  If the line containing point
  1629. moves past the top of the window, point is moved down to the top of
  1630. the window.  If a numeric argument is supplied that many lines are
  1631. scrolled; if the argument is negative the screen is scrolled down
  1632. instead.  See also the "next-page" command.
  1633.  
  1634. :entry "scroll-width" "Variable"
  1635. Just as a buffer may be too long to be completely displayed in a
  1636. window, a line may be too wide.  JOVE handles wide lines through
  1637. horizontal scrolling, displaying only a portion of the line.  This
  1638. variable affects horizontal scrolling.  If point is outside the
  1639. displayed portion of its line, but is within the specified number of
  1640. columns beyond either side, the line is scrolled that much.
  1641. Otherwise, the line will be scrolled to center point.  The default
  1642. value is 10.  If the variable is 0, centering will always be used.
  1643. See also the "scroll-all-lines" variable.
  1644.  
  1645. :entry "search-exit-char" "Variable"
  1646. Set this to the character you want to use to exit incremental search.
  1647. The default is Newline, which makes "i-search" commands compatible
  1648. with normal string search.
  1649.  
  1650. :entry "search-forward" "Command"
  1651. This searches forward for a specified search string and positions
  1652. point at the end of the string if it's found.  If the string is not
  1653. found point remains unchanged.  This searches from point to the end of
  1654. the buffer, so any matches before point will be missed.  If point is
  1655. moved by more than the variable "mark-threshold", the old point will
  1656. be pushed.
  1657.  
  1658. :entry "search-forward-nd" "Command"
  1659. This is just like "search-forward" except that it doesn't assume a
  1660. default search string, and it doesn't set the default search string.
  1661. This is useful for defining macros, when you want to search for
  1662. something, but you don't want it to affect the current default search
  1663. string.
  1664.  
  1665. :entry "search-reverse" "Command"
  1666. This searches backward for a specified search string and positions
  1667. point at the beginning if the string if it's found.  If the string is
  1668. not found point remains unchanged.  This searches from point to the
  1669. beginning of the buffer, so any matches after point will be missed.
  1670. If point is moved by more than the variable "mark-threshold", the old
  1671. point will be pushed.
  1672.  
  1673. :entry "search-reverse-nd" "Command"
  1674. This is just like "search-reverse" except that it doesn't assume a
  1675. default search string, and it doesn't set the default search string.
  1676. This is useful for defining macros, when you want to search for
  1677. something, but you don't want it to affect the current default search
  1678. string.
  1679.  
  1680. :entry "select-buffer" "Command"
  1681. This selects a new or already existing buffer making it the current
  1682. one.  You can type either the buffer name or number.  If you type in
  1683. the name you need only type the name until it is unambiguous, at which
  1684. point typing Tab or Space will complete it for you.  If you want to
  1685. create a new buffer you can type Return instead of Space, and a new
  1686. empty buffer will be created.
  1687.  
  1688. :entry "select-buffer-1" "Command"
  1689. This selects buffer number 1, if it exists.
  1690.  
  1691. :entry "select-buffer-10" "Command"
  1692. This selects buffer number 10, if it exists.
  1693.  
  1694. :entry "select-buffer-2" "Command"
  1695. This selects buffer number 2, if it exists.
  1696.  
  1697. :entry "select-buffer-3" "Command"
  1698. This selects buffer number 3, if it exists.
  1699.  
  1700. :entry "select-buffer-4" "Command"
  1701. This selects buffer number 4, if it exists.
  1702.  
  1703. :entry "select-buffer-5" "Command"
  1704. This selects buffer number 5, if it exists.
  1705.  
  1706. :entry "select-buffer-6" "Command"
  1707. This selects buffer number 6, if it exists.
  1708.  
  1709. :entry "select-buffer-7" "Command"
  1710. This selects buffer number 7, if it exists.
  1711.  
  1712. :entry "select-buffer-8" "Command"
  1713. This selects buffer number 8, if it exists.
  1714.  
  1715. :entry "select-buffer-9" "Command"
  1716. This selects buffer number 9, if it exists.
  1717.  
  1718. :entry "self-insert" "Command"
  1719. This inserts the character that invoked it into the buffer at point.
  1720. Initially all but a few of the printing characters are bound to "self-
  1721. insert".  See also "paren-flash".
  1722.  
  1723. :entry "send-typeout-to-buffer" "Variable"
  1724. When this is "on" JOVE will send output that normally overwrites the
  1725. screen (temporarily) to a buffer instead.  This affects commands like
  1726. "list-buffers", "list-processes", "shell-command-with-typeout", and
  1727. commands that use completion.  The default value is "off".
  1728.  
  1729. :entry "set" "Command"
  1730. This sets a specified variable to a new value.
  1731.  
  1732. :entry "set-mark" "Command"
  1733. This sets the mark at the current position in the buffer.  It prints
  1734. the message "[Point pushed]" on the message line.  It says that
  1735. instead of "[Mark set]" because when you set the mark the previous
  1736. mark is still remembered on a ring of eight marks.  So "[Point
  1737. pushed]" means point is pushed onto the ring of marks and becomes the
  1738. value of "the mark".  To go through the ring of marks, use the "pop-
  1739. mark" command.  If you type this enough times you will get back to
  1740. where you started.  If a "set-mark" command is given a numeric
  1741. argument, it acts like a "pop-mark" command.
  1742.  
  1743. :entry "shell" "Variable"
  1744. The shell to be used with all the shell-* commands command.  If your
  1745. SHELL environment variable is set, it is used as the default value of
  1746. "shell"; otherwise "/bin/csh" is the default.  See also the
  1747. description of the "shell-flags" variable to see how to change the
  1748. flags passed to this shell.
  1749.  
  1750. :entry "shell" "Command"
  1751. This starts up an interactive shell in a window; if there is already
  1752. an interactive shell, it just selects that buffer.  JOVE uses "*shell-
  1753. n*" (where "n" is the argument of the command) as the name of the
  1754. buffer in which the interacting takes place.  Thus different argument
  1755. values refer to different interactive shells.  See the JOVE manual for
  1756. information on how to use interactive processes.  See also the
  1757. variable "wrap-process-lines".
  1758.  
  1759. :entry "shell-command" "Command"
  1760. This runs a UNIX command and places the output from that command in a
  1761. buffer.  Within the command, $1 can be used to refer the the filename
  1762. (if any) of the selected buffer.  JOVE creates a buffer that matches
  1763. the name of the command you specify and then attaches that buffer to a
  1764. window.  So, when you have only one window running, this command will
  1765. cause JOVE to split the window and attach the new buffer to that
  1766. window.  Otherwise, JOVE finds the most convenient of the available
  1767. windows and uses that one instead.  If the buffer already exists it is
  1768. first emptied (unless a numeric argument is specified).  If it's
  1769. already holding a file, not some output from a previous command, JOVE
  1770. asks permission before emptying the buffer.  Beware that if you go
  1771. ahead, not only do you lose any unsaved changes that you made to the
  1772. buffer, but the buffer's file name remains set, making it easy to
  1773. later accidentally overwrite the original file.  See also the variable
  1774. "wrap-process-lines".
  1775.  
  1776. :entry "shell-command-no-buffer" "Command"
  1777. This is just like "shell-command" except it just runs the command
  1778. without saving the output to any buffer.  It will report the success
  1779. of the command in the usual way.
  1780.  
  1781. :entry "shell-command-to-buffer" "Command"
  1782. This is just like "shell-command" except it lets you specify the
  1783. buffer to use.
  1784.  
  1785. :entry "shell-command-with-typeout" "Command"
  1786. This is just like "shell-command" except that instead of saving the
  1787. output to a buffer, and displaying it in a window, this just types out
  1788. the output in the same way that "list-buffers" does.  Actually, how
  1789. this behaves depends on the value of the variable "send-typeout-to-
  1790. buffer".  If it is "on" then "shell-command-with-typeout" will behave
  1791. just like "shell-command".  If a numeric argument is given, the
  1792. "completed successfully" message at the end is suppressed.
  1793.  
  1794. :entry "shell-flags" "Variable"
  1795. This specifies a flag argument that directs the shell to take the next
  1796. argument as a command to be executed.  The default is "-c" (suitable
  1797. for all known UNIX shells).  Under MSDOS, the default is "/c"
  1798. (suitable for command.com and similar MSDOS shells).  Other MSDOS
  1799. shells, such as MKS KSH require that this be changed to "-c".  Under
  1800. MSDOS, JOVE puts quotes around the command argument if "shell-flags"
  1801. starts with "-".  See the "shell" variable to change the default
  1802. shell.
  1803.  
  1804. :entry "shift-region-left" "Command"
  1805. This shifts the region left by "c-indentation-increment" OR by the
  1806. numeric argument, if one is supplied.  If a negative argument is
  1807. supplied the region is shifted the other way.
  1808.  
  1809. :entry "shift-region-right" "Command"
  1810. This shifts the region right by "c-indentation-increment" OR by the
  1811. numeric argument, if one is supplied.  If a negative argument is
  1812. supplied the region is shifted the other way.
  1813.  
  1814. :entry "show-match-mode" "Command"
  1815. This turns on or off the Show Match minor mode in the selected buffer.
  1816. Without a numeric argument, the command toggles the mode; with a zero
  1817. argument, the mode is turned off; with a non-zero argument, the mode
  1818. is turned on.  This mode changes "}", ")" and "]" so that when they
  1819. are typed they are inserted as usual, and then the cursor flashes back
  1820. to the matching "{", "(" or "[" (depending on what was typed) for
  1821. about half a second, and then goes back to just after the "}", ")" or
  1822. "]" that invoked the command.  This is useful for typing in
  1823. complicated expressions in a program.  You can change how long the
  1824. cursor sits on the matching parenthesis by setting the "paren-flash-
  1825. delay" variable in tenths of a second.  If the matching "{", "(" or
  1826. "[" isn't visible, the line containing the match is displayed on the
  1827. message line.
  1828.  
  1829. :entry "shrink-window" "Command"
  1830. This makes the active window one line shorter, if possible.  Windows
  1831. must be at least 2 lines high, one for the text and the other for the
  1832. mode line.  See also "grow-window".
  1833.  
  1834. :entry "source" "Command"
  1835. This reads a bunch of JOVE commands from a file.  If a numeric
  1836. argument is supplied to the "source" command, it will quietly do
  1837. nothing if it cannot read the file.
  1838.  
  1839. The format of the file is the same as that in the "jove.rc" file, or
  1840. your private ".joverc" in your home directory.  There should be one
  1841. command per line and it should be as though you were responding to an
  1842. "execute-named-command" command while in JOVE.  A command can be
  1843. optionally preceded by a numeric argument.  Lines commencing with a #
  1844. are treated as comments.  Control characters such as ^R may be
  1845. represented as themselves, or as "^" followed by "R".  ESC should be
  1846. represented by ^[.
  1847.  
  1848. Sometimes it is useful to do different things in different
  1849. circumstances.  To make this possible, there are two conditional
  1850. commands: "if" and "ifenv".  The "if" command takes as an operand a
  1851. shell command, which it runs.  If the command succeeds, the commands
  1852. after the "if", until a line containing "else" or "endif", are
  1853. performed.  Otherwise, these commands are suppressed and the commands
  1854. after any "else", up until an "endif", are executed.  Conditionals
  1855. nest in the normal way.  The "ifenv" command takes as operands the
  1856. name of an environment variable and a pattern.  If the environment
  1857. variable is defined and its value matches the pattern, the "ifenv"
  1858. succeeds.
  1859.  
  1860. For example, here are some lines from the file "jove.rc".
  1861.  
  1862.      bind-to-key pause-jove ^[S
  1863.      bind-to-key pause-jove ^[s
  1864.      set process-prompt ^[^%$#]*[%$#]
  1865.      # source any TERMinal-specific rc file
  1866.      1 source jove.rc.$TERM
  1867.  
  1868. What they do is to provide two alternative key bindings for "pause-
  1869. jove", set the variable "process-prompt", and attempt to call the
  1870. "source" command on the file "jove.rc.$TERM".  Because of the numeric
  1871. argument 1, there will be no complaint if this file cannot be found.
  1872.  
  1873. :entry "space-sentence-2" "Variable"
  1874. If set "on", two spaces are left after each sentence by commands such
  1875. as "fill-paragraph"; otherwise, one space is left.  The default is
  1876. "on".
  1877.  
  1878. :entry "spell-buffer" "Command"
  1879. This runs the selected buffer through the UNIX "spell" program and
  1880. places the output in buffer "Spell".  Then JOVE lets you edit the list
  1881. of words, expecting you to delete the ones that you don't care about,
  1882. i.e., the ones you know are spelled correctly.  Then the "parse-
  1883. spelling-errors-in-buffer" command comes along and finds all the
  1884. misspelled words and sets things up so the error commands "next-
  1885. error", "previous-error" and "current-error" work.  See also the
  1886. variable "error-window-size".
  1887.  
  1888. :entry "split-current-window" "Command"
  1889. This splits the active window into two equal parts (providing the
  1890. resulting windows would be big enough) and displays the selected
  1891. buffer in both windows.  Use "delete-other-windows" to go back to 1
  1892. window mode.  If a numeric argument is supplied, the window is split
  1893. "evenly" that many times (when possible).
  1894.  
  1895. :entry "start-remembering" "Command"
  1896. This is just another name for the "begin-kbd-macro" command.  It is
  1897. included for backward compatibility.
  1898.  
  1899. :entry "stop-process" "Command"
  1900. Send the signal SIGTSTP to the interactive process in the selected
  1901. buffer.  This is equivalent to sending the "stop" character (which
  1902. most people have bound to ^Z) to the process.  This only works if you
  1903. are in a buffer bound to an interactive process.
  1904.  
  1905. :entry "stop-remembering" "Command"
  1906. This is just another name for the "end-kbd-macro" command.  It is
  1907. included for backward compatibility.
  1908.  
  1909. :entry "string-length" "Command"
  1910. This prints the number of characters in the string that point sits in.
  1911. Strings are surrounded by double quotes.  JOVE knows that "\007" is
  1912. considered a single character, namely "^G", and also knows about other
  1913. common ones, like "\r" (Return) and "\n" (Linefeed).  This is mostly
  1914. useful only for C programmers.
  1915.  
  1916. :entry "suspend-jove" "Command"
  1917. This is a synonym for "pause-jove".
  1918.  
  1919. :entry "sync-frequency" "Variable"
  1920. The temporary files used by JOVE are forced out to disk every "sync-
  1921. frequency" modifications.  The default is 50, which really makes good
  1922. sense.  Unless your system is very unstable, you probably shouldn't
  1923. fool with this.
  1924.  
  1925. :entry "tab-width" "Variable"
  1926. When JOVE displays a Tab character, it moves point forward to the next
  1927. multiple of this variable.  If the value is 0, tab is displayed as ^I,
  1928. not whitespace.  The default value is 8.
  1929.  
  1930. :entry "tag-file" "Variable"
  1931. This is the name of the file in which JOVE should look up tag
  1932. definitions.  The default value is "./tags".
  1933.  
  1934. :entry "text-attribute" "Variable"
  1935. (IBM PC version only) This specifies the screen attribute (color) for
  1936. normal text characters.  The default is 7 (white on black).
  1937.  
  1938. :entry "text-mode" "Command"
  1939. This sets the major mode to Text.  This affects what JOVE considers as
  1940. characters that make up words.  For instance, Single-quote is not part
  1941. of a word in Fundamental mode, but is in Text mode.
  1942.  
  1943. :entry "tmp-file-pathname" "Variable"
  1944. This tells JOVE where to put the tmp files, which is where JOVE stores
  1945. buffers internally.  The default is in "/tmp", or as set up when your
  1946. system was compiled, but if you want to store them somewhere else, you
  1947. can set this variable.  If your system crashes a lot it might be a
  1948. good idea to set this variable to somewhere other than "/tmp" because
  1949. the system removes all the files in "/tmp" upon reboot, and so you
  1950. would not be able to recover editor buffers using the "jove -r"
  1951. command.
  1952.  
  1953. NOTE: In order for this to work correctly you must set this variable
  1954. BEFORE JOVE creates the tmp file.  You can set this in your ".joverc"
  1955. (the closer to the beginning the better), or as soon as you start up
  1956. JOVE before you read any files.
  1957.  
  1958. :entry "transpose-characters" "Command"
  1959. This switches the character before point with the one after point, and
  1960. then moves forward one.  This doesn't work at the beginning of the
  1961. line, and at the end of the line it switches the two characters before
  1962. point.  Since point is moved forward, so that the character that was
  1963. before point is still before point, you can use "transpose-characters"
  1964. to drag a character down the length of a line.
  1965.  
  1966. :entry "transpose-lines" "Command"
  1967. This switches the current line with the one above it, and then moves
  1968. down one so that the line that was above point is still above point.
  1969. This, like "transpose-characters", can be used to drag a line down a
  1970. page.
  1971.  
  1972. :entry "unbound" "Command"
  1973. This command acts as if an unbound key sequence were typed.  In fact,
  1974. that is its use: if you wish to unbind a key sequence, simply bind it
  1975. to this command.
  1976.  
  1977. :entry "update-time-frequency" "Variable"
  1978. How often the mode line is updated (and thus the time).  The default
  1979. is 30 seconds.
  1980.  
  1981. :entry "use-i/d-char" "Variable"
  1982. If your terminal has insert/delete character capability you can tell
  1983. JOVE not to use it by setting this to "off".  In my opinion it is only
  1984. worth using insert/delete character at low baud rates.  WARNING: if
  1985. you set this to "on" when your terminal doesn't have insert/delete
  1986. character capability, you will get weird (perhaps fatal) results.
  1987.  
  1988. :entry "version" "Command"
  1989. Displays the version number of this JOVE.
  1990.  
  1991. :entry "visible-bell" "Variable"
  1992. If the terminal has a visible bell, use it instead of beeping.
  1993.  
  1994. :entry "visible-spaces-in-window" "Command"
  1995. This displays an underscore character instead of each Space in the
  1996. window and displays a greater-than followed by spaces for each Tab in
  1997. the window.  The actual text in the buffer is not changed; only the
  1998. screen display is affected.  To turn this off you run the command
  1999. again; it toggles.
  2000.  
  2001. :entry "visit-file" "Command"
  2002. This reads a specified file into the selected buffer replacing the old
  2003. text.  If the buffer needs saving JOVE will offer to save it for you.
  2004. Sometimes you use this to start over, say if you make lots of changes
  2005. and then change your mind.  If that's the case you don't want JOVE to
  2006. save your buffer and you answer "NO" to the question.
  2007.  
  2008. :entry "window-find" "Command"
  2009. This lets you select another buffer in another window three different
  2010. ways.  This waits for another character which can be one of the
  2011. following:
  2012.  
  2013.      T    Finds a tag in the other window.
  2014.      ^T   Finds the tag at point in the other window
  2015.      F    Finds a file in the other window.
  2016.      B    Selects a buffer in the other window.
  2017.  
  2018. This is just a convenient short hand for "split-current-window" (or
  2019. "previous-window" if there are already two windows) followed by the
  2020. appropriate sequence for invoking each command.  With this, though,
  2021. there isn't the extra overhead of having to redisplay.  In addition,
  2022. you don't have to decide whether to use "split-current-window" or
  2023. "previous-window" since "window-find" does the right thing.
  2024.  
  2025. :entry "word-abbrev-mode" "Command"
  2026. This turns on or off Word Abbrev minor mode in the selected buffer.
  2027. Without a numeric argument, the command toggles the mode; with a zero
  2028. argument, the mode is turned off; with a non-zero argument, the mode
  2029. is turned on.  Word Abbrev mode lets you specify a word (an
  2030. abbreviation) and a phrase with which JOVE should substitute the
  2031. abbreviation.  You can use this to define words to expand into long
  2032. phrases, e.g., "jove" can expand into "Jonathan's Own Version of
  2033. Emacs"; another common use is defining words that you often misspell
  2034. in the same way, e.g., "thier" => "their" or "teh" => "the".  See the
  2035. information on the "auto-case-abbrev" variable.
  2036.  
  2037. There are two kinds of abbreviations: mode specific and global.  If
  2038. you define a Mode specific abbreviation in C mode, it will expand only
  2039. in buffers that are in C mode.  This is so you can have the same
  2040. abbreviation expand to different things depending on your context.
  2041. Global abbreviations expand regardless of the major mode of the
  2042. buffer.  The way it works is this: JOVE looks first in the mode
  2043. specific table, and then in the global table.  Whichever it finds it
  2044. in first is the one that's used in the expansion.  If it doesn't find
  2045. the word it is left untouched.  JOVE tries to expand words when you
  2046. type a punctuation character or Space or Return.  If you are in Auto
  2047. Fill mode the expansion will be filled as if you typed it yourself.
  2048.  
  2049. :entry "wrap-process-lines" "Variable"
  2050. If this variable is "on", the process output that is captured in a
  2051. buffer is wrapped just before the line would have as many characters
  2052. as there are columns on the screen.  This introduces extra newlines,
  2053. but it makes the output more readable.  Note that the folding does not
  2054. take into account that some characters (notably tabs) occupy more than
  2055. one column of the display.  The output of the "filter-region" command
  2056. is not processed in this way because the extra newlines are presumed
  2057. to be undesired in this case.
  2058.  
  2059. :entry "wrap-search" "Variable"
  2060. If set, searches will "wrap around" the ends of the buffer instead of
  2061. stopping at the bottom or top.  The default is "off".
  2062.  
  2063. :entry "write-file" "Command"
  2064. This saves the selected buffer to a specified file, and then makes
  2065. that file the default file name for this buffer.  If you specify a
  2066. file that already exists you are asked to confirm over-writing it.
  2067.  
  2068. :entry "write-files-on-make" "Variable"
  2069. When set, all modified files will be written out before calling make
  2070. when the "compile-it" command is executed.  The default is "on".
  2071.  
  2072. :entry "write-macros-to-file" "Command"
  2073. This writes the currently defined macros to a specified file in a
  2074. format appropriate for reading them back in with the "source" command.
  2075. The purpose of this command is to allow you to define macros once and
  2076. use them in other instances of JOVE.  See also the "define-macro"
  2077. command.
  2078.  
  2079. :entry "write-modified-files" "Command"
  2080. This saves all the buffers that need saving.  If you supply a numeric
  2081. argument it asks, for each buffer, whether you really want to save it.
  2082.  
  2083. :entry "write-region" "Command"
  2084. This writes the text in the region to a specified file.  If the file
  2085. already exists you are asked to confirm over-writing it.
  2086.  
  2087. :entry "write-word-abbrev-file" "Command"
  2088. This writes the currently defined abbreviations to a specified file.
  2089. They can be read back in and automatically defined with "read-word-
  2090. abbrev-file".
  2091.  
  2092. :entry "xj-mouse-commands" "Command"
  2093. Programs such as XJove and JoveTool generate these commands whenever a
  2094. mouse button is pressed or released, or the mouse is moved while the
  2095. button is pressed.  They are followed by parameters giving parameters
  2096. for the button pressed, the coordinates of the mouse, etc.  They are
  2097. not intended for direct use by the normal user.
  2098.  
  2099. The individual commands will now be described.
  2100.  
  2101. :entry "xj-mouse-copy-cut" "Command"
  2102. Performs a "copy-region" if the CTRL key was down, or a "kill-region"
  2103. if both CTRL and SHIFT were down.  This command is normally bound to
  2104. the release of button 2.
  2105.  
  2106. :entry "xj-mouse-line" "Command"
  2107. Sets the region to be the whole line containing the cursor.  This
  2108. command is normally bound to a triple down click of button 2, and the
  2109. presumed effects of the preceding double click are first undone.
  2110.  
  2111. :entry "xj-mouse-mark" "Command"
  2112. Both point and mark are set to the cursor.  This command is normally
  2113. bound to the pressing of button 2.
  2114.  
  2115. :entry "xj-mouse-point" "Command"
  2116. Point is set to the cursor.  This command is normally bound to the
  2117. single, double, and triple down-click and the dragging of button 1;
  2118. also the dragging of button 2.
  2119.  
  2120. :entry "xj-mouse-word" "Command"
  2121. Sets the region to be the word (or the gap between two words)
  2122. containing the cursor.  This command is normally bound to a double
  2123. down click of button 2, and the presumed effects of the preceding
  2124. single click are first undone.
  2125.  
  2126. :entry "xj-mouse-yank" "Command"
  2127. Performs a "yank" if the CTRL key was down.  This command is normally
  2128. bound to the release of button 1.
  2129.  
  2130. :entry "xt-mouse" "Variable"
  2131. When set, JOVE sends XTerm escape sequences to enable and disable the
  2132. mouse messages at appropriate times.  Warning: due to the way XTerm
  2133. encodes mouse events, if "meta-key" is set, mouse actions beyond
  2134. column 95 or row 95 will be misunderstood; in any case, mouse actions
  2135. beyond column 223 or row 223 will be misunderstood.
  2136.  
  2137. :entry "xt-mouse-commands" "Command"
  2138. Programs such as XTerm generate these commands whenever a mouse button
  2139. is pressed or released.  XTerm does not give the user as much power as
  2140. XJove.  They are followed by parameters specifying the button pressed,
  2141. the coordinates of the mouse, etc.  They are not intended for direct
  2142. use by the normal user.  Set the variable "xt-mouse" on to enable
  2143. XTerm mouse mode.
  2144.  
  2145. The individual commands will now be described.
  2146.  
  2147. :entry "xt-mouse-mark" "Command"
  2148. Both point and mark are set to the cursor.  This command is normally
  2149. bound to the pressing of button 2.
  2150.  
  2151. :entry "xt-mouse-point" "Command"
  2152. Point is set to the cursor.  This command is normally bound to the
  2153. down-click of button 1.
  2154.  
  2155. :entry "xt-mouse-up" "Command"
  2156. As the name implies, this command is normally bound to the release of
  2157. any button (XTerm does not specify which button was released).  Note
  2158. that a normally configured XTerm will not pass on mouse events if the
  2159. CTRL or SHIFT keys are pressed.  Point is set to the cursor.  If the
  2160. most recently pressed button was button 1 and the CTRL key was down
  2161. (and not the SHIFT key), this command performs a "yank".  If the most
  2162. recently pressed button was button 2 and the CTRL key was down, this
  2163. command performs a "copy-region".  If the most recently pressed button
  2164. was button 2 and the CTRL and SHIFT keys were down, this command
  2165. performs a "kill-region".
  2166.  
  2167. :entry "yank" "Command"
  2168. This inserts the text at the front of the kill ring (as set by an
  2169. earlier "copy-region", "kill-region", etc.) at point.  When you do
  2170. multiple kill commands in a row, they are merged so that the "yank"
  2171. command yanks back all of them.
  2172.  
  2173. :entry "yank-pop" "Command"
  2174. JOVE has a kill ring on which the last sixteen kills are stored.  This
  2175. command yanks back previous texts from the kill ring.  "yank" yanks a
  2176. copy of the text at the front of the ring.  If you want one of the
  2177. last sixteen kills you then use "yank-pop" which rotates the ring so
  2178. another different entry is now at the front.  You can use "yank-pop"
  2179. only immediately following a "yank" or another "yank-pop".  If you
  2180. supply a negative numeric argument the ring is rotated the other way.
  2181. If you use this command enough times in a row you will eventually get
  2182. back to where you started.
  2183.