home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / pc / editor / j414doc.arc / JOVE.5 < prev    next >
Text File  |  1989-10-10  |  40KB  |  815 lines

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