&ITS string search provides a powerful form of searching. (This form of search was popularized by Dave Moon and Dan Weinreb of MIT-AI.) $$$ reads characters and either adds them to the "search string", or performs some action as specified by the character. All non-control characters are added to the search string. With the exception of the control characters listed below, all control characters are illegal and are ignored. The special control characters recognized by $$$ are: \177 removes the last character from the search string. If there are no characters in the search string, $$$ aborts. # is the same as \177. ^B changes the starting point for searches requested by ^S or ESC. When $$$ is entered, searches are made starting from the current cursor position. ^B will cause searches to start from the beginning of the buffer. A subsequent ^B will cause searches to start from the current cursor position, etc. ^D replaces the search string with the current default search string, and "rotates" the list of defaults. The default search string is the last string used by any other search command, or by the use of ^S to this command. ^D permits you to "walk" through the last sixteen strings you searched for to find the one you wish to search for again. ^G aborts the search. ^L redisplays the screen. ^Q reads a character and adds it to the search string regardless of its nature. ^Q is the only way to place control characters into the search string. ^R reverses the direction of the search. Any characters read after the ^R are processed by the $$reverse-ITS-string-search$ command. ^S searches forward for the current search string. If found, the cursor is placed after the string. In any event, the current search string is pushed onto the top of the list of default search strings. ^Y adds the current default search string to the search string typed so far. Thus, $$$^Y^Y^S will search forward for two successive occurrences of the default search string. ESC searches forward for the current search string and then exits the $$$ command. If the previous character typed to $$$ was ^S, ESC will only exit and not search. The search done by ESC is identical to that done by a ^S.d $$$ is an obsolete synonym for $$extended-command$ accept-messages. See the documentation for that.s me .Enter ALM major mode in this buffer. ALM mode consists of many commands and variable settings suitable for the creation and editing of ALM programs.@LCenter the current line, according to fill-column (see $$set-fill-column$). tReads a single character and searches forward for that character unless it is one of the following characters which are interpreted specially: ^A invokes the ITS string search command. (See $$ITS-string-search$ for more detail.) ^G aborts the search. ^J finds next beginning of a line. ^M finds next beginning of a line. ^Q reads another character and searches for it regardless of its value. ^Q should be used when searching for control characters. ^R reverses the direction of the search and reads another character. The character read is then processed as if it were read by $$reverse-character-search$. ^S searches for the current default string. The default will be displayed in the minibuffer. If the search succeeds, the cursor is left after the character(s) found.wQuit out of the current command execution to the editing, or editing the minibuffer. Compare $$command-prompt-abort$. @( z@Copies the text between the cursor and the-mark on to the top of the kill ring. This means that the next $$yank$ will copy the text now between the cursor and the-mark to wherever the cursor is when the $$yank$ is issued.Creates a new window at the bottom of the screen, redividing the screen equally among the windows there. The cursor will be moved to the new window, which will have a buffer name created from its window number. See $$edit-windows$.4Create a new window at the bottom of the screen, redividing the screen equally among all the windows. The cursor remains where it is. The new window, which has a default buffer name created from its window number, becomes the "least recently used window". See $$select-another-window$ and $$edit-windows$.NDoes a $$new-line$ and a $$indent-relative$. Basically, this means finish this line, and start a new line, indented the same as the previous line. If the original line was not indented, note that this will line up with the second word on the first line. This is the command you want to terminate a line of an indented body of text.Delete blank lines around cursor: get rid of vertical whitespace. If issued on a blank line, leave one blank line. Otherwise, delete all blank lines after this line's end. See $$open-space$.Delete the character to the right of the current point. This is the character on which the cursor sits. Move the rest of the line one to the right, closing up the space. Deleting a newline at the end of a line merges lines.BWithout a numeric argument, i.e., $$$, delete all whitespace at the beginning of this line and then merge it with the previous line. With an argument, i.e., $$multiplier$$$$, does a $$next-line-command$ first, so that $$multiplier$$$$ in effect "connects" the next line into this one, without the next line's indentation.cDelete, including necesary commas, the single header item (recipient, etc.), that the cursor is on.Delete all whitespace characters on the current line surrounding the cursor. In this context, a whitespace character is a space, a tab, a formfeed, or a vertical tab.Delete the word to the right of the current point. More specifically, delete going forward, deleting all whitespace and punctuation and characters until the end of the next word.Display the documentation for an extended command. The command name is the argument describe. For example, $$extended-command$ describe apropos CR to find out about the "apropos" extended command.Display the documentation for a given key sequence. To find out what a Control D does, type $$$ and a Control D. With a numeric argument, i.e., $$multiplier$ $$$, just the command name to which the key is currently connected will be displayed in the minibuffer.Properly indents the comment on the next line, or puts a comment on the next line, if there is not one there already. Effectively the same as $$next-line-command$$$indent-for-comment$. See $$indent-for-comment$.@Go down one level of list structure. Basically the same as looking forward for an open parenthesis, but it is intelligent about Lisp comments, quotes, etc.XEnters the buffer editor. If given no argument, i.e., $$$, the buffer editor will set up its display in the current window. If given an argument, i.e., $$multiplier$ $$$, the buffer editor will find some other appropriate window (if in two-or-more-window mode) to set itself up in. See windows.info for full information on the buffer editor. Produces a symbolic file of all keyboard macros defined in the current buffer and places it in a new buffer. The keyboard macros may then be written out for later loading, edited, redefined, or compiled into Lisp code. See macro-edit.info for full information.xEnter the window editor to create, realign, destroy, or visit windows. If given no argument, i.e., $$$, the window editor will set up its display in the window where the cursor currently sits. If given an argument, i.e., $$multiplier$ $$$, the window editor will find some appropriate window in which to set up shop. See windows.info for full information on the window editor.Used to terminate a PL/I label. Inserts a colon, and spaces out to the expected start of the next PL/I statement. Use $$quote-char$: to insert a colon without this action.Enters Electric PL/I mode in the current buffer. Electric PL/I mode is a variant of PL/I mode in which semicolons and colons have violent automatic "electric" action which may be disturbing to some, but useful to others. See pl1-mode.info.Inserts a semicolon, terminating the current PL/I statement. Starts a new line, and inserts enough indentation for the next PL/I statement. If typed to end a valid "end" statement, the "end" statement will be undented by 5 whitespace positions as well (if in PL/I indentation style 1). Note that the use of electric-pl1-semicolon makes commenting difficult; either use $$quote-char$$$$ to insert a semicolon without the electric action, or use $$prev-comment-line$ to comment the line just finished.Go to right after the last close-paren of the current function. See $$begin-defun$ for a definition of the current function. Useful to see if function balances parens correctly.KEnd a macro definition. The commands and input typed since $$begin-macro-collection$ become the "last macro defined" for $$execute-last-editor-macro$, which see. If given a numeric argument, re-executes the defined macro as $$execute-last-editor-macro$ does (see that command). See $$begin-macro-collection$ for what a macro is.Move to the end of the current paragraph. If at the end of a paragraph, move to the end of the next paragraph. The end of a paragraph is the end of the last line of the paragraph. The definition of paragraphs is controlled by the paragraph-definition-type option; if 1, blank lines separate paragraphs. If 2, an indented line starts a paragraph. Runoff and compose control lines count as paragraphs.@Used to enter two-keystroke key sequences, and to supply numeric arguments to commands. For example, to enter the esc-K command, type $$$ then a K. To supply a numeric argument to a command, type $$$, the number, and the command. For example, $$$ 3 $$delete-char$ deletes 3 characters.$$$ is the same as $$escape$, and may be used for all $$escape$-... commands and numeric arguments, but may be used in the minibuffer when typing $$escape$ would terminate the minibuffer, as in search strings.Evaluates the contents of the buffer and displays the value of the last form in the buffer via the minibuffer. Loads the file "e-macros.incl.lisp" to ensure the presence of the EMACS macros. This command is used to "load" a buffer of Lisp code into the EMACS environment for debugging. $$eval-top-level-form$ function may then be used to "re-load" any functions whose definition you change while debugging. Be careful to WRITE OUT changes you make and debug via these facilities.Prompt for a string for Lisp to evaluate; put a pair of parens around it, evaluate it in Lisp (with ibase = 8) and print out the Lisp value in the minibuffer (base = 8, *nopoint nil). To get a variable value, use $$$ progn CR.Prompt for a Multics command line. Terminate it with CR. Multics commands that produce output may well ruin your screen; if this occurs, use $$redisplay-command$. Use $$comout-command$ if you expect output.Evaluates the current top-level form and displays its value in the minibuffer. (See $$begin-defun$ for the definition). Loads the file "e-macros.incl.lisp" to ensure the presence of the EMACS macros. (See extensions.info). This facility is intended for use in debugging extensions, as is compile-function, but will run your code interpreted rather than compiled which aids in debugging. Be careful to WRITE OUT changes you make and debug via this facility.@"2B@Execute the last macro defined (via $$begin-macro-collection$ ), one or many times depending on the numeric argument to this command: No argument: Execute it once. 0( i.e., $$escape$-0$$$) Execute it over and over, pausing after each execution. Type a space to go on to the next, CR or ^G to stop repeating. 1-9999 Do it that many times. 9999-infinity Do it forever until an error happens. The window in which the cursor appears will be expanded to fill the whole screen; all other windows will be removed. This in essence returns to "one window mode" from having any number of windows. The cursor will retain its position in the text. See $$edit-windows$.@Search for a character string, from current point in buffer to end. Prompts for string in minibuffer, and leaves point, if search succeeds, after the matched string. End search string with $$escape$. $$$$$escape$ re-uses last search string. If search fails, point will not move.Prompt for the name and arguments of an extended commands in the minibuffer. Terminate with CR. To find out about an extended command, type $$$ describe CR0Turns off fill mode in this buffer, if it is on.@Turn on Fill Mode (a minor mode) in this buffer. In Fill Mode, text will be wrapped around lines so as not to extend past the fill column (see $$set-fill-column$ to set that). When a space, tab, CR, or punctuation mark is placed after a word which passes the fill column, the line will be broken at the first whitespace from the end of the line. $$fill-mode-off$ turns it off. To insert a character to cause a line deliberately to extend pass the fill column, precede the character with $$quote-char$.har$.%@|Enter Fortran major mode in this buffer. Fortran mode consists of many commands and variable settings suitable for the creation and editing of Fortran programs. See fortran-mode.info for a list of the commands and a description of this mode. You can issue the command $$extended-command$ apropos fortran CR in a Fortran mode buffer for a list of relevant commands in this mode.@zMove forward one character. Tabs and newlines count as one character each. Will $$command-quit$ at the end of the buffer.Move to right after the end of current Lisp list. Basically the same as searching for a close paren, but intelligent about Lisp comments, quoting, etc.@]Move forward one recipient, cc recipient, etc. on this (header) line. Circles around at end. Move forward to the end of this sentence. If at the end of a sentence, move forward to the end of the next sentence. Ends of paragraphs are implicitly ends of sentences, whether or not an end-of-sentence punctuation (period, question mark, exclamation point) appears. Skip forward over exactly one S-expression, positioning to after the appropriate close parenthesis, or before the appropriate whitespace. Accepts a numeric argument for repetition count. Skips leading close parens. Avoid invoking inside quoted strings or comments.Go forward one word. If in the middle of a word, move to the end of the current word. Leaves point immediately after that word. All punctuation and whitespace before the word are moved over. Underscores and backspaces count as parts of words.Enters the mode (set of key bindings and variable settings) that all buffers start out in. This can be used to "undo" any other major mode that you may have set.@Get back a "variable" stored by $$put-variable$. The name of the variable will be prompted for; the cursor will be put after it, and the-mark before it.Global print all lines a la QEDX. Prompts for a string. With a numeric argument, i.e., $$multiplier$$$$, takes a QEDX-like regular string. End in either case with $$escape$. Prints all lines containing that string. Type $$noop$ or continue editing to restore buffer display.@~Switch to another buffer. Prompts for the name of that buffer, terminate with CR. If that buffer does not already exist, it will be created. All key bindings, fill column, comment column, comment prefix, etc., associated with that buffer will be put in effect. The last point that you were at in that buffer becomes the current point. $$$CR goes to the last buffer you were in.Move to the beginning of the current buffer, i.e., before the first character in the buffer, that is, the top of the document being edited.oPosition to the beginning of the current line of the buffer. That is to say, right before the first character.@Move to the end of the current buffer, i.e., before the newline on the last line of the current buffer. In other words, go to the bottom of the document being edited. There is no way to position beyond that newline.Position to the end of the current line: that is, after the last character and before the linefeed. On an empty line, this is the same as the beginning of the line.@Revert from two window mode to one window mode. The buffer now on display in the window with the cursor in it will occupy the screen; the cursor will be at the same point in that buffer that it is in that window now.2LFlush a prefix character. Used when a prefix character such as $$escape$ is entered by accident; causes an audible signal to indicate that the $$$ has been executed. Unlike $$command-prompt-abort$, does not exit the minibuffer.^K Searches for a string character by character as you type the string. The string accumulates in the minibuffer. That is to say, the cursor will move in the main window finding more and more accurate matches for the string you are typing as you specify further characters of it. The general idea is to find the string you are looking for before you finish typing it, at which point you type ESC. The cursor is left after the string found in the buffer, as with normal string-search and other Emacs searches. It is recommended only for high speed lines: try it in order to get the general idea. The following characters have special meaning when typing the search string to incremental-search; all normal "printing" characters are searched for: ^S Find the next match for the current search string. If the current search string is empty, retrieve the default search string set by the last search command. ESC End the incremental search to allow other commands to be typed. It is very important to remember to type ESC. ^G Abort the incremental search, and return to the place from which it was started. # or \177 Remove the last character from the search string, and move the cursor to the place it was before you typed that character. ^L Redisplay. ^Q Quote the next character, i.e., put it into the search string literally. ^R Reverse direction of searching. This will enter reverse-incremental-search, searching backward for the first occurence of the current search string (which will always be at the current point in the buffer). If an attempt is made to add a character to the search string which produces a search string that cannot be found, Emacs will ring the terminal bell and remove the character from the minibuffer, leaving the cursor in place. If this occurs during a macro execution, however, a normal Emacs $$command-quit$ will be done, aborting macro execution.*Searches for this line's comment. If one exists, indents it to the comment column in this buffer (see $$set-comment-column$). If one does not exist, start one at the comment column on this line. Uses the "comment-prefix" to search for an old one or start a new one. See also set-comment-prefix. Put enough whitespace on this line to indent it correctly for a new PL/I statement to be entered there. If issued at the beginning of a line that already has a PL/I statement on it, re-indent it properly (will NOT undent "end"'s). See pl1-mode.info for the indenting rules. Indent this line like the previous non-blank line. Use for tabbing at the beginning of lines when building indented paragraphs, tables, etc. If the current line is already indented, re-indent it to the next word on the right above the first non-blank on this line. With an argument, i.e., $$multiplier$ $$$, re-indent it like the last line that has less indentation than the current line, i.e., go back up "levels" of outline, paragraph, etc. Thus, $$$ $$multiplier$ $$$ may be typed on a fresh line to indent it one level less than the previous line. On a completely empty line, the argument is ignored, so $$multiplier$ $$$ may be repeated many times on an empty line to "try" different levels of indentation.Delete the indentation (leading whitespace) of the current line, and replace it with the fill prefix in this buffer. See $$set-fill-prefix$.On a blank or empty line, creates enough leading whitespace so that the first S-expression typed on this line will line up properly according to conventional Lisp indenting rules. Normally, this means line it up with the start of the previous S-expression, but in other circumstances other actions may be taken. On a non-blank line, re-adjusts the line's indentation to effect conventional Lisp indenting.*+LXKill backwards to the beginning of this sentence: kill as much of the sentence as thus far typed. Successive kills via $$$ and other reverse-killing commands (e.g., $$rubout-word$) merge, and may be retrieved with one $$yank$. ( >@Removes the comment and the whitespace preceding it from the current line. The deleted text is saved on the kill ring, accessible to $$yank$. The text is saved in such a way that folowing $$kill-lines$'s and other forward-killing commands will merge properly with the deleted text.Kills all the text on the current line, leaving it empty. The text killed is saved on the kill ring, and may be retrieved with $$yank$.Kill to end of line, except when already at end of line, delete the linefeed (merge lines). If on an empty line, delete it. If given a numeric argument, deletes that many lines, starting from the current point on the current line.Kill forward one complete S-expression, i.e., from current point to the point after one complete S-expression. Optional numeric argument specifies how many (> 1) S-expressions. Merges kills with itself and other forward-killing commands.Delete text going forward from the cursor to the end of the current sentence. If at the end of a sentence, delete forward to the end of the next sentence. Sentences and other text killed consecutively in this fashion are merged, and may be retrieved with a single $$yank$.!Enters a "Lisp Top Level" buffer in Lisp Debug mode. Forms typed into this buffer are evaluated and the value is displayed by placing it in this buffer. When $$$ has been used, all Lisp errors in Emacs trap into this buffer. ESC-P restarts a break. See ldebug.info for more information.8 &@]Identical to a $$new-line$ followed by $$indent-to-lisp$; this is the normal way to terminate an input line in Lisp mode. It puts you on a new line and indents in correctly for the next S-expression. Done in the middle of a line, breaks the line at that point, correctly indenting the S-expression which was to the right of point on the new line.Put point and mark around the current Lisp function (see $$begin-defun$). For all lines other than the first, re-indent them according to conventional Lisp indentation.Re-indent all lines (other than the first) in the point-to-mark region for conventional Lisp indentation as per $$indent-to-lisp$.Enter Lisp major mode in this buffer. Lisp mode consists of many commands and variable settings suitable for the creation and editing of Lisp programs. See lisp-mode.info for a list of the commands and a description of this mode.Produces listing of buffers and their pathnames. ">" marks buffer you came from, "*" says buffer is modified since it was last read or written. Proceed with editing, or type $$noop$ to refresh screen.WLoads a private Emacs extension package into the editor. The argument is its pathname.dLoad an "uninstalled" extension package into Emacs. Normally, such packages are "autoloaded" when commands in them are invoked, but from time to time, new, experimental, or highly specialized packages may require being loaded in this way. The single argument is the name of the package to be loaded. Loading a package makes the commands in it available. =2Lowercase all letters between cursor and the-mark.Display the names and lengths of all "variables" saved by $$put-variable$. Type $$noop$ to resume, or just continue editing. See $$put-variable$ and $$get-variable$.Query. Only usable while macros are being collected: when the macro is run, $$$ will query the user for a character: space will continue execution of the macro. ^G will stop the macro altogether. CR or other random characters will restart the macro from the beginning. In this way, $$begin-macro-collection$ $$string-search$ f o o $$escape$ $$$ $$upper-case-word$ $$end-macro-collection$ will "query replace", i.e., interrogatively upper-case all foo's.Go to the end of the body of the mail. Use this to start inputting the text after you have set the destination, or to go back to the text after editing some header field. @Go to the end of the "cc:" (carbon copy recipients) line, making one if there is none, so that you can type in the destination of a carbon copy recipient.VGo to the end of the "From" line in a message, to edit it, or add more sender's names.Go to the "Reply-To:" field of the message being built. If there is none, set one up, and go there. The Reply-To field is used to contain a destination address for others to reply to when responding to your mail.gGo to the end of the subject line, to edit it. Use $$forward-mail-field to get to the beginning of it.@Go to the end of the "To:" line, to add a recipient. You will be left here when the MAIL buffer is entered, to enter the first recipient. Then use $$mail-append$ to continue. Separate recipients (like all header fields) with commas, i.e., To: Washington.States, Consultant.c Puts into a buffer a "Wall Chart", describing all the currently defined commands and what keys invoke them in the current buffer. The resultant buffer is intended for dprinting.Put point and mark around the current function (or top-level) form. See $$begin-defun$ for the definition of the current function.Put the-mark at the beginning of the current paragraph. Put the cursor at the end of the current paragraph. See $$beginning-of-paragraph$ for a definition of paragraphs. N@Causes the next kill-type commands (example, $$kill-lines$, $$delete-word$) which must follow immediately, to merge what they kill with the last saved kill on the kill ring, in the same direction as the next command kills. For instance, $$go-to-beginning-of-line$ $$kill-lines$ $$kill-lines$ $$next-line-command$ $$next-line-command$ $$$ $$kill-lines$ $$kill-lines$ catenates two disjoint lines on the kill ring.DPrompt for a response to send to the last message-sender. The sender's name will be the prompt; as all minibuffers, $$command-quit$ may be used to abort. The minibuffer will be sent to that person when CR is typed. With a numeric argument, switches to the last sender's message buffer, like $$go-to-new-message-buffer$ CR.Move the current function or top-level form (see $$begin-defun$ for definition) to the top of the current screen, leaving point at its beginning. @Multi-word search. Prompts for one or more words, terminated by $$new-line$. (this is a search string; just $$new-line$ re-uses last). Searches from current point to end for those words appearing in order, regardless of case of letters, underlining, intervening punctuation, whitespace, or line breaks. Finds whole words, not parts of words. A word that ends in * will match the rest of a word to *. With a numeric argument, ($$multiplier$$$$), goes to beginning of buffer before searching.@Multiplier. When not followed by a number, multiplies the next command by 4 for each use. i.e., $$$$$delete-char$ deletes 4 chars. $$$$$$$$delete-char$ deletes 16. With a number, uses that, i.e., $$$13x inserts 13 x's.$pPosition to the next line of the buffer. If on the last line now, append a new empty line to the bottom of the buffer, and position to the beginning (and end) of it. Successive $$$'s and $$prev-line-command$'s try to maintain the same horizontal position.@ wLinefeed; ignored. See also $$redisplay-command$. Good for exiting displays (such as $$list-buffers$, apropos, etc.) @Open up space by putting a newline AHEAD of the current point. Pushes all lines of the buffer below the current line down one. For instance, $$multiplier$$$multiplier$$$$ will open up 16 lines. See $$delete-blank-lines$ to remove (extra) blank lines..@"2@The same as typing CR and $$indent-to-pl1$. Ends the current line, and goes to a new line, indenting it properly for PL/I. This is the normal way to end a line of PL/I code in non-electric PL/I mode. See pl1-mode.info.hEnter PL/I major mode in this buffer. PL/I mode consists of many commands and variable settings suitable for the creation and editing of PL/I programs. See pl1-mode.info for a list of the commands and a description of this mode. You can issue the command $$extended-command$ apropos pl1 CR in a PL/I mode buffer for a list of relevant commands in this mode.Insert 5 more spaces worth of whitespace (one level of PL/I indentation) to the left of the cursor. This may be used with $$roll-back-pl1-indentation$) to manually indent PL/I code.mInsert a declaration for the system entry point or variable whose name appears to the left of the cursor; there is a library of such containing many common system declarations. If the declaration is not found in the library, a diagnostic will be issued. For example, dcl hcs_$initiate $$$ expands to dcl hcs_$initiate entry (char (*), char (*)... etc.Indent the comment on the previous line properly. If there is no comment on the previous line, put one there, indented properly. Effectively the same as $$prev-line-command$$$indent-for-comment$. See $$indent-for-comment$.Move to previous line of the buffer. Will $$command-quit$ if on first line of the buffer. Attempt to maintain the same horizontal position. Successive $$$'s and $$next-line-command$'s will try to maintain the original horizontal position. @Store away point/mark region to a "variable", whose name will be prompted for. Use $$get-variable$ to retreive this value, and list-variables to get it back. LInteractively replaces all occurences of one string with another. The command prompts for both strings in the minibuffer, and then searches forward for each occurrence of the first string. Terminate the strings with $$escape$. It positions the cursor immediately after this string and waits for one of the following responses: space -- replaces this particular occurrence of the first string with the second. Then searches for the next occurrence of the first string and waits for a response again. return -- leaves this occurrence of the first string alone and searches for the next occurrence of the first string. period -- replaces this occurrence of the first string with the second and terminates the query replace. ^G -- terminates the query replace without modifying this occurrence of the first string. @Exits the editor, returning to Multics command level without querying if modified buffers exist. This command will cause all work in modified buffers to be lost. The normal command to exit the editor is $$quit-the-editor$.)<Search forward regular expression, `a la "QEDX". Terminate the regular expression by $$new-line$, we supply the slashes. All rules for QEDX regular expressions apply. Searches forward from cursor, and can find many occurences of the regular expresion on one line. Leaves the cursor and the-mark around the string it finds, so that s/(fo.*)/(a b & )/ (QEDX) = $$$(fo.*) $$new-line$ $$wipe-region$( a b $$yank$ ) (EMACS) ݀*,Removes the window in which the cursor appears from the screen. The cursor will be moved to the window which had been visited just before the current window was entered (that is, the next-most-recently visited window). The space occupied by the departing window will be divided among its neighbors.Remove underlining from the current or previous word: the rules for selecting which word are the same as those used by $$uppercase-word$.!rjDkResets the size of the minibuffer/prompting area to its default of two lines. See $$set-minibuffer-size$.@reset-screen-size Resets the size of the main editing area of the screen to its default, namely, all of the space above the mode line. See $$set-screen-size$.'Used only in message facility message buffers. Used to end a line to be sent to the correspondent whose Person Name appears in the buffer name. When $$$ is typed, the current line is sent, and "Reply:" is inserted in its front so that the transcript of the conversation may be understood later.QReturns to the RMAIl buffer, and its window, without sending the (reply) message.'Reverse ITS string search provides a powerful form of searching. (This form of search was popularized by David Moon and Daniel Weinreb of MIT-AI.) $$$ reads characters and either adds them to the "search string", or performs some action as specified by the character. All non-control characters are added to the search string. With the exception of the control characters listed below, all control characters are illegal and are ignored. The special control characters recognized by $$$ are: \177 removes the last character from the search string. If there are no characters in the search string, $$$ aborts. # is the same as \177. ^D replaces the search string with the current default search string, and "rotates" the list of defaults. The default search string is the last string used by any other search command, or by the use of ^S to this command. ^D permits you to "walk" through the last sixteen strings you searched for to find the one you wish to search for again. ^E changes the starting point for searches requested by ^S or ESC. When $$$ is entered, searches are made starting from the current cursor position. ^E will cause searches to start from the end of the buffer. A subsequent ^E will cause searches to start from the current cursor position, etc. ^G aborts the search. ^L redisplays the screen. ^Q reads a character and adds it to the search string regardless of its nature. ^Q is the only way to place control characters into the search string. ^R reverses the direction of the search. Any characters read after the ^R are processed by the $$ITS-string-search$ command. ^S searches backwards for the current search string. If found, the cursor is placed before the string. In any event, the current search string is pushed onto the top of the list of default search strings. ^Y adds the current default search string to the search string typed so far. Thus, $$$^Y^Y^S will search backwards for two successive occurrences of the default search string. ESC searches backwards for the current search string and then exits the $$$ command. If the previous character typed to $$$ was ^S, ESC will only exit and not search. The search done by ESC is identical to that done by a ^S. V'Reverse search. Leave cursor positioned before matching string, don't move cursor if not found. Prompts for search string in minibuffer, which must be ended with $$escape$.Searches backward from the cursor to the beginning of the buffer, using the "search as string is being typed" technique of incremental-search. The cursor is left to the left of the found string, as in all other Emacs reverse searches. Once the string is found, end with ESC. reverse-incremental-search is just like incremental search, except it is somewhat less obvious. Try it to experiment. All the characters accepted by reverse-incremental-search have the same meaning as those accepted by incremental-search, except: ^S Reverses the direction of search, entering incremental-search. The first occurence of the search string is found going forward in the buffer. ^R Repeat the search, going backward, for the current search string, i.e., find the next occurence of it. If the current search is empty, retrieve the default search string. See the documentation for incremental-search for more info. 9Copies the current message into a savebox. It will prompt for the pathname of the savebox; the suffix ".sv.mbx" will be assumed if not specified. If the savebox does not exist it will query about creating it.ing th@0*@}Move to the message whose message number is the numeric argument to $$$, e.g., $$escape$ 3 $$$ go go to message number three.@=Move to the first (undeleted) message in the current mailbox.'@:Move to the last undeleted message in the current mailbox.Appends the message currently being displayed to the Mail log file, which is kept in the "Mail log" buffer. A formfeed (^L, AKA \014) separates messages in the Mail log file. If this is the first use of $$$ or $$rmail-logger-prepend$, or a numeric argument is given (as in $$multiplier$ $$$), the pathname of the Mail log file will be prompted for. Otherwise, the last Mail log file used in this invocation of emacs will be used.Writes the message currently being displayed at the front of the Mail log file. A formfeed (^L, AKA \014) separates messages in the Mail log file. If this is the first use of $$$ or $$rmail-logger-append$, or a numeric argument is given (as in $$multiplier$ $$$), the pathname of the Mail log file will be prompted for. Otherwise, the last Mail log file used in this invocation of emacs will be used.Delete (that is, mark for deletion when RMAIL is exited by typing $$rmail-quit$) the current message, and move on to the previous (undeleted) message in the current mailbox.Delete (that is, mark for deletion when RMAIL is exited by typing $$rmail-quit$) the current message, and move on to the next (undeleted) message in the current mailbox.sQuit out of RMAIL, returning to the buffer from which RMAIL was invoked, deleting all messages marked for deletion.mSummarize (as local output) all undeleted messages. This command may take some time for very full mailboxes.VUndelete, i.e., unmark for deletion, the last deleted message, and go to that message.Remove 5 spaces worth of whitespace (one level of PL/I indentation) to the left of the cursor. This may be used (with $$pl1-tab-one-more-level$) to manually indent or re-indent code. In non-electric PL/I mode, it is convenient to use it before an "end" statement.Deletes the previous character (before the cursor, which is usually the last character typed, like in normal Multics.) Note that $$$ deletes the character to the left of the cursor, while $$delete-char$ deletes the character at the cursor.Delete the word to the left of the current point. More specifically, delete going backwards, deleting characters until the beginning of a word. Successive words deleted with $$$ are merged and may be retrieved with one $$yank$. `Saves a macro, assigning it to a key. Invoke it after a macro has been defined. Will prompt for a command name to assign to the macro, and a key. When a key has been assigned, this key will invoke that macro- it will take arguments identical to $$execute-last-editor-macro$. bee2This character goes directly into the buffer. Typing "$$$" puts $$$ into the text at the current point, and moves the cursor beyond it.Send to RMAIL reply letter just composed to its intended recipients (as with RMAIL send-mail), and return to the RMAIL buffer and its window. To return to RMAIL without sending the reply, use $$return-to-rmail$.)v8Send the buffer to the recipients specified in the header. The relative success of the sendings will be displayed as local output (2 linefeeds to restore display).@j"4Set the "comment prefix" in this buffer. This is usually set automatically by entering a major mode. The comment prefix is given as an argument to this command, in quotes. The comment prefix is used by $$indent-for-comment$, $$down-comment-line$, and $$prev-comment-line$ to find comments, and start them. Sets the fill column in the current buffer to be the horizontal position where the cursor is now. The fill column is the "right margin" used by $$runoff-fill-paragraph$ to fill and adjust text, by fill mode to fill and adjust text, and by $$center-line$ to determine where to center. The fill column is the first column in which text is NOT to be placed. The new value of the fill column is printed out in the minibuffer. If a numeric argument is given, e.g., $$multiplier$ 72 $$$, the fill column is set to that value.tSet "fill prefix" in this buffer to be whatever is between the beginning of the line and the cursor. The "fill prefix" is inserted automatically by $$new-line$, autofill, and $$runoff-paragraph$. If the cursor is at the beginning of the line when $$$ is issued, the fill prefix is reset (i.e., there will be no fill prefix). It may be used to establish a "left margin".Assigns key bindings in the current buffer. Takes two arguments, the "Key name" and the command name. Makes that key execute that command in this buffer. The command name is what $$describe-command$ or apropos or make-wall-chart give; the key name can be anything like the names in this documentation, e.g., ^X, ^x, ESC-ESC, ^Xq, control-p, c-p, meta-f, esc-^f, CR, ^X-^F, ^X-CR, \177, #, A, ^P, etc. For instance, you might want to say set-key ^Z quit-the-editor if you want the privilege of quitting in one keystroke.Sets the size of the minibuffer/prompting area on the screen to any value. The single argument to $$$ is the decimal number of how many lines should be devoted to this function. The default is two. With many-line minibuffers, many messages and errors may appear at once. Use $$reset-minibuffer-size$ to reset the minibuffer size to its default of two lines. Valid sizes are 1 to 6.rUsed to set permanent (default in all buffers) key bindings. Otherwise, works exactly like set-key. See set-key.rUsed to set permanent (default in all buffers) key bindings. Otherwise, works exactly like set-key. See set-key.Set the size of the main editing area (the area above the Mode Line) to other than its default. The default is all of the area above the mode line. The decimal argument to $$$ is the number of lines in the main editing area. $$reset-screen-size$ may be used to reset the main editing area size to its default value. $$$ is usually used to reduce the amount of redisplay at low terminal speeds. @^Sets the bindings of ^S and ^R to invoke several different forms of searching. The argument is the search mode. The known search modes are: string Searches for the exact character string typed (the default). regular-expression The string typed is interpreted as a or regexp QEDX regular expression. character Searches for the single character typed. Control characters control sophisticated options. ITS-string A type of search popularized by Dave Moon and Dan Weinreb on MIT-AI, having many sophisticated features. incremental Searches for a string showing the state of the search as each character is entered. All searches prompt telling the type of search that has been invoked. To find out more about these different kinds of searches, set the search mode of interest, and do an $$describe-key$ ^S.Puts the-mark in this buffer where the cursor is now, and leaves it there. It will move around properly if the text around the-mark is deleted. See $$exchange-point-and-mark$ to verify where the-mark is.Define one word as an abbreviation for another for Speedtype mode, for instance, setab edr editor Will accept multiple pairs of arguments. If the second string (the thing being abbreviated) is many words, or has special characters in it, put it in quotes.Display the commands (as keystrokes, i.e., ^A, ESC-B, etc.) in the last macro defined (see $$begin-macro-collection$). If given a numeric argument, i.e., $$multiplier$$$$, display the keystrokes and command names.@Displays an editor macro (defined with $$begin-macro-collection$) the same as $$show-last-editor-macro$ does, but takes the name assigned to the macro (by $$save-macro$) as an argument.VMove the cursor to the first non-whitespace (i.e., not tab, blank, formfeed, or vertical tab) position on this line. In other words, skip over the indentation on this line.Enter speedtype minor mode in this buffer. Speedtype allows words to be used as abbreviations for other words. $$setab$ is used to define abbreviations; When a space, newline, tab, or punctuation mark is typed after an abbreviation, the abbreviation is removed from the text and its expansion is used instead. Precede punctuation or spaces with $$quote-char$ to deliberately avoid speedtype expansion when in this mode.See if the word to the left of the cursor is a "speedtype" abbrev. If so, expand it, replacing it in the text. Then insert a "$$$".4Turn off speedtype mode in this buffer, if it is on.@Break the line at this point, shear it vertically. Puts the text to the right of the cursor on the next line, with enough indentation so that it is still in the same place horizontally. This can be undone by $$multiplier$$$delete-line-indentation$. See $$delete-line-indentation$.@JTurns off all screen updating until the next $$$, $$command-quit$, or error happens. $$$ may be used on slow terminals with no insert/delete facilities to avoid excessive printing time for operations such as typing in the middle of a line.kTwiddle (transpose, interchange) the last two characters typed, like, I like Mutl$$$ics becua$$$se... etc. If not already in two-window mode, go into two window mode, with the lower window displaying the buffer "alternate". The cursor will be placed in the upper window; use $$select-other-window$ to switch windows. The numeric argument gives the size of the UPPER window, i.e., $$multiplier$$$$ makes an upper window of four lines. If already in two-window mode, adjust the window sizes appropriately.If not already in two-window mode, go into two window mode, with the lower window displaying buffer "alternate". The cursor will be placed in the lower window; use $$select-other-window$ to switch windows. The numeric argument gives the size of the TOP window, i.e., $$multiplier$$$$ makes a top window of four lines. If already in two-window mode, adjust the window sizes appropriately.1$$$ is not a defined command in this environment. Canonically underscore the current or previous word. Although it will look peculiar on the screen, it will be correct, and $$runoff-paragraph$ and fill and dprint correctly. The rules for selecting which word to do are the same as those used by $$uppercase-word$.Update command description. This command is used in Doc Update mode to change the documentation for a function to be the current contents of the buffer. See $$update-cmd-doc-from-old$ for more information.0l83Upper-case all letters between cursor and the-mark.@Print out current function: put point and mark around the current Lisp function (see $$begin-defun$ for a definition), and display it (print it out on printing terminals) as local output.%8\Wipe (kill) all text between cursor and the-mark. Succeeding kill commands (like $$kill-lines$, NOT $$$) will merge killed text. The killed text is saved on the kill ring, and can be retrieved with $$yank$.SI don't like what I just $$yank$'ed. Get rid of it and yank the previous thing in its place. Used to retrieve the previous "kill" when you find that the thing that you just $$yank$'ed was the wrong thing. In more detail, delete the text between the cursor and the-mark without saving it, rotate the kill ring one position, and $$yank$.>;NYank (retrieve) killed text to cursor. Unkills last killed word, line, or region ($$wipe-region$). With a numeric argument, goes that many killings down the 10-position kill ring. Leaves the-mark at the front of the retrieved text, and the point at the end.Yank back the last content of the minibuffer, without prompt string. The mark will be set in the minibuffer, so $$exchange-point-and-mark$ may be used to position around it, and $$wipe-region$ to delete it. The real mark in the main buffer will not be destroyed.3Z6wWhen in two-window mode, (see $$create-new-window-and-go-there$) move the cursor to the other window, implicitly (usually) switching buffers. The mode line will be updated to reflect the new buffer. The cursor will appear at the last point it was in the new window. In general, the cursor will enter the window used last, immediately before the current window was entered.Marks the current buffer as not modified. Emacs will not mention this buffer when querying because of a $$quit-the-editor$. $$$ is useful after accidently modifying a buffer which you only intended to examine..*tKills all the text on the current line to the left of the cursor. The text killed is saved on the kill ring, and may be retrieved with $$yank$.@The cursor is moved to the least-recently visited window on the screen. That window then becomes the most-recently visited. Thus, successive applications of $$$ will visit all windows on the screen. $$$ is a good command to use when you want to visit some new buffer or file, but not overwrite windows containing information you have been looking at recently. With an argument, i.e., $$escape$ 3 $$$, goes to that window, e.g., window 3. @With no argument, i.e., $$$, sets the-mark in this buffer where the cursor is now, and leaves it there. The current value of the-mark, if any, and different than the current point, will be pushed on the mark ring. It will move around properly if the text around the-mark is deleted. See $$exchange-point-and-mark$ to verify where the-mark is. With an argument, i.e., $$multiplier$ $$$, pops a mark off the mark ring, and positions to it. Successive $$multiplier$ $$$'s will "try" all marks on the mark ring.Prompt for the name of a "named mark", and set that named mark to be where the cursor is now. Named marks are valid only in the buffer in which they were created. Use $$go-to-named-mark$ to go to a named mark.Prompt for the name of a "named mark", and move the cursor to the point where that mark was saved. Use $$set-named-mark$ to set a named mark.Display a list of all of the named marks in the current buffer. Use $$set-named-mark$ to create a named mark, and $$go-to-named-mark$ to go to one.@^Exchange the cursor and the-mark, to verify what you are getting into before typing $$wipe-region$ or similar. Puts the cursor where the-mark is and vice versa. $$$ $$$ quickly verifies the extent of the "point-mark region" visually and puts things back. Use $$multiplier$ $$set-or-pop-the-mark$ to visit older settings of the-mark in this buffer.Fills/adjusts an entire region in the same way as $$runoff-fill-paragraph$ does to a paragraph. It does not respect paragraph breaks: this makes it only marginally useful.In language modes that support ESC-^C for "compile buffer", and similar (e.g., PL/I, FORTRAN), sets non-default compilation options to be given to the appropriate compiler.Sets the name of the compiler to be used by the compile-buffer command (usually ESC-^C) in those language modes that compile buffers this way (e.g., PL/I, FORTRAN). The single argument to $$$ is the compiler name. !r0sScrolls the current window (or whole screen, in one-window mode) up or down a specified number of lines. The cursor remains on the same line of the buffer. The numeric argument tells how many lines to scroll it up; the default is one line up. A negative numeric argument indicates scrolling it down. Thus, $$escape$ - 3 $$$ scrolls the current window three lines down.@89:Display next screenful of this buffer. Leave cursor at upper left hand corner of screen. With an argument, displays that many screens ahead.Display the previous screen (one back) of this buffer, leaving cursor at the top of it. With an argument, displays that many screens backward.Make the "comment-column" in this buffer be the horizontal position where the cursor is now.. With an argument, sets the comment column to that number, counting from the left as column 1. See $$indent-for-comment$. Display in the minibuffer area the number of lines in this buffer, the line number (the first line is line 1) of the line the cursor is on, and the horizontal column position (on a dprinted line, not the screen).Re-execute the last keystroke (command), other than $$noop$ or $$$. If used to repeat a search, the search will be repeated with the same search string. Useful for skipping successive words, etc.  Global replace of one string with another, from the current point to the end of the buffer. Prompts for two strings, which must be terminated by $$new-line$. If the first string is not found, $$$ will not prompt for the second string, and will not move the cursor.Global print all lines a la QEDX. Prompts for a string. With a numeric argument, i.e., $$multiplier$$$$, takes a QEDX-like regular string. End in either case with $$new-line$. Prints all lines containing that string. Type $$noop$ or continue editing to restore buffer display.@bValid only when more than one window exists. With no argument, causes a $$next-screen$ to be done on the other window (i.e., the one the cursor is not now in); with an argument, pages the other window that many screens backward or forward; thus, $$escape$ - $$$ pages the other window one backward. Very useful for "paging" compiler diagnostics while editing a program. When more than two windows are in use, the "next most recently visited" window will be considered to be the "other window".View lines or region, for printing terminals. The optional numeric argument is how many lines to print- leaves you after them, unless argument is 1 or not supplied, in which case it leaves you on current line, after printing it. $$escape$-0$$$ views the region (between cursor and the-mark), thus $$mark-whole-buffer$ $$escape$-0$$$ prints the whole buffer. With a negative argument, prints lines starting that many back.@Removes a window from the screen; only valid if there is more than one window on the screen. With no argument, $$$ removes the current window. With a numeric argument, it removes the window specified by the argument. The uppermost window is window 1.@:Upper-case all characters between the cursor and the mark.7Lower-case all letters between the cursor and the mark.@|This command is used internally by the Emacs key reader to process "meta numbers" originating from MIT "Knight TV" consoles.Exits the buffer editor, deleting any buffers previously marked for deletion. The buffer from which the buffer editor was entered will be exited to.@ 2@Marks the designated buffer (the one named on the line on which the cursor sits) for deletion when the buffer editor is exited.Causes the buffer designated by the line on which the cursor sits to be written out to the file of its default pathname. It is an error to use $$$ to attempt to write out a file with no default pathname.Unmarks the designated buffer for deletion. The "X" is removed from the column which indicates pending deletion. The specified buffer, which had been marked for deletion, is no longer so marked.Places the buffer designated by the line on which the cursor sits on display in some window, and selects that window. If the buffer is already on display in some window, that window will simply be selected.Selects the buffer designated by the line on which the cursor sits, that is, "goes to" that buffer. The selected buffer replaces the buffer editor in the current window.Goes to the next line of the buffer editor display. If issued on the last line, goes to the first line. Each line represents one buffer of the current Emacs invocation. Various requests may be issued when the cursor is on a given line to alter the status of that buffer.gGoes to the previous line of the buffer editor display. If issued on the first line, goes to the last.oMarks the file named on the current line for deletion. This file will be deleted when dired is finally exited.@|If the current file (the file whose name on the is on the current line) is marked for deletion, make it no longer so marked.Prompt for a new name for the file that is named on the current line, and rename it. You must have modify access to the directory being edited.Exit the directory editor (DIRED), returning to the buffer from which it was invoked. You will be asked if you want to delete all the files you marked for deletion; they will be deleted if you say so. If errors are encountered during the deletion, DIRED will not be exited.@Read the file whose name is on the current line into the "Dired Examine" buffer, and put that buffer on display. If you are in multiple-window mode, it will be put on display in another window. You will be put in that buffer, use ^X^Q to return to the DIRED buffer (and/or window).Prompt for the name of a new buffer to go to; a null response (CR only) indicates to return to the buffer from which DIRED was entered. You will be queried about any files that you had marked for deletion, and they will be deleted if you reply affirmatively. @YEnter the directory editor, editing the working directory. With an argument, i.e., $$multiplier$$$$, prompts for other directory name. Position to a line with some segment's name on it, and the following commands (keys) may be used (lower case O.K.): D Delete this segment when the directory editor is exited. U Undelete, i.e., cancel previous D on this line. E Examine (i.e., take a look at) this segment, in a separate buffer. Use ^X^Q to get back, and the examine buffer will disappear of its own accord. Q Quit the directory editor. A list of files will be shown, and you will be queried if you want to delete them or not. To exit without any action use ^XB. R Rename this segment. The new name is prompted for. N Same as $$next-line-command$. P Same as $$prev-line-command$.+LD1Put the-mark at the end of the buffer and the cursor at the beginning. This "marks" the whole buffer, so that $$wipe-region$ will delete it, etc. The linefeed at the end of the buffer is NOT in the marked region, but $$$ $$wipe-region$ $$select-buffer$ ... $$yank$ will effectively move a whole buffer.,@*Insert file. Prompts for a filename, terminated by CR. Reads that file into the current buffer without destroying the previous contents of the buffer. The file is read in to the left of the cursor and the cursor is left after the contents of the file just read. The default file for the buffer is not changed. (See $$save-same-file$.) Archive component pathnames are accepted. Starnames are accepted, but no more than one segment or archive component can match the starname.Inserts the pathname (as seen in the mode-line below) of the current buffer at the cursor. With an argument, inserts the entryname portion of the pathname only. If the pathname is an archive component pathname, the componentname is inserted.@Inserts a newline character into the buffer at the current point, ending the current line, and starting a new one. If entered in the middle of a line, breaks the line at the current point. If the next line is empty, i.e., was made by a single $$$ or $$open-space$, $$$ will just go to it, and will not insert a newline. However, the last empty line before a non-empty line will be left empty. If there is a fill prefix (see $$set-fill-prefix$), $$$ will insert it after any newline character it inserts.Removes one close parenthesis from the end of the last S-expression prior to this line, and reindents this line. Implements "This automatically-indented Lisp line is indented one level too few. There must be an extra close paren on the last line. Fix it and let's see." Adds one close parenthesis to the end of the last S-expression prior to this line, and reindents this line. Implements "This automatically-indented Lisp line is indented one level too many. There must be a missing close paren on the last line. Fix it and let's see."Effects compilation and loading of the current Lisp function via the Multics Lisp Compiler (lcp). Does this by loading lcp into the Emacs environment (the first time it is used in an Emacs invocation), utilizing it, and loadfiling the result. Will automatically incorporate/compile the correct version of e-macros.incl.lisp into your environment (the first time) as well. Puts the name of the function compiled on the kill ring, so it can be yanked into an $$eval-lisp-line$ minibuffer for trial. Displays compiler diagnostics as local display. Be careful to WRITE OUT changes you make and debug via this facility; this is a common trap: you see what you have in front of you "working", and you think you are done. Forms $$$'ed will be treated as though they had been encountered at top level by the compiler; macro definitions, declarations, and side-effects from compilation to compilation are all handled correctly. The regnant Emacs environment will be used as the compile AND LOAD time environments.n$ tIndent the current point on this line (where the cursor is) to line up with the next non-whitespace item on the previous non-blank line. Successive invocations of $$$ cause attempts to line up with succeeding non-whitespace items. This is ideal for building columnated tables, etc. Type in the first line by hand, and use $$$ to get to each new field, column, etc. on succeeding lines. Typed on an empty line, or at the end of a line, it positions for the next text to be entered. With a numeric argument, $$$ uses previously undented lines (other than the last line) for a model, thus facilitating typing in outlines, etc.Compiles the current PL/I Mode buffer, with default compiler options for that mode. The buffer is written out to its default pathname, and compiled from there. Error diagnostics will be placed in the file_output buffer, and in two-window mode, will be displayed in the other window. Use $$locate-next-error$ to automatically scan that buffer to locate errors in the source program buffer.+"Quote" the next character, i.e., insert it into the buffer literally. This is used to enter control characters and other "funny" characters into the buffer, i.e., $$$# to insert a pound sign. $$$ CR, however, inserts a single Newline chaacter (Newline characters separate lines in Multics files.)$$$NNN where NNN are 1 to 3 octal digits, inserts the character whose value is NNN into the buffer. For example, $$$14 inserts a form-feed (^L). $$$$$$ inserts a $$$; $$$$$rubout-char$ inserts a $$rubout-char$; $$$$$kill-to-beginning-of-line$ inserts a $$kill-to-beginning-of-line$. $$$ followed by any other character inserts $$$ and that character (except $$$ CR, which inserts a newline). VGets help/documentation at any time. This feature is now only partially complete. The current repertoire is: $$$ H Find out where to get more help. $$$ ? Display the current repertoire of $$$ $$$ A Prompt for a string to search for appropriate commands (same as $$extended-command$ apropos). $$$ C Prompt for a key sequence to document (same as $$describe-key$). $$$ D Prompt for the name of an extended command to document (same as $$extended-command$ describe). $$$ L Display the last 50 characters typed in. $$$ ^G Do a $$command-quit$ as usual.Also "option". Sets non-obvious internal flags and defaults, each of which have names. Takes three forms, opt list List all options and settings. opt NAME VALUE Set option value. opt status NAME Report setting of one option. Values may be on, off, or numbers, depending on the option. Code, such as startups, can simply set these Lisp variables. (on/off => t/nil). Current options are: display-ctlchar-with-^ Causes control characters to print as ^P instead of \020. suppress-ctlchar-display Don't show control characters. Any character which would print as \NNN (except \177) is not displayed. suppress-rubout-display Don't show rubout characters. Causes \177 to never be displayed. Usefull when reading ALM listing segments. suppress-backspace-display Don't show backspaces. Causes underlined "foo" to print as "_f_o_o". rdis-whitespace-optimize Avoid printing whitespace when clever terminal control would go faster. Currently on by default, but adds a little expense. rdis-wosclr-opt Wipe Out Screen lines before filling screen. Try it both ways to see what this means. paragraph-definition-type 1 (default) = blank lines precede paragraphs. 2 = indented line starts one. find-file-set-modes When on, find-filing foo.pl1 sets pl1 mode, etc. track-eol-opt When on, ^N, ^P at eol stick to ends of lines. default-fill-column Fill column for new buffers. default-comment-column Comment column for new buffers (0 origin). pop-up-windows When on, ^XB, ^X^F, ^X^E, etc., find an appropriate place on the screen to put up a window as opposed to replacing contents of current window (highly experimental).4Repeats via local display the last message received.v . MSwitches to the message buffer of a given correspondent. Prompts for the Person Name of that correspondent (NOT Person.Project). If given an empty response, will switch to the message buffer of the last correspondent. To switch to the message buffer of someone not now communicating with you, give his or her name in the form Person.Project, OR Person at Net-Host-Name (Person@Host is acceptable, also). With a numeric argument, i.e., $$multiplier$$$$, lists all message buffers (conversations), and the direction of the last interaction (=> means you spoke last, <= the other party).wSets up to edit Emacs command documentation, given a keystroke. ^X^S writes the edited documentation back to the VFILE.Accept Multics interactive console messages into Emacs buffers, one buffer per correspondent. Causes messages to be displayed as local output as they arrive. All correspondence to and from each correspondent is maintained in a buffer named "Messages from ", in which carriage return is bound to respond-from-buffer, which causes messages to be transmitted when a line is typed by you into that buffer. In these buffers, conversations "transcript" as with send_message in "input mode". The following key bindings are set up globally by accept-msgs: (see their documentation): ^X: message-response-command (responds to last sender from minibuffer). ^X' go-to-new-message-buffer (goes to a message buffer). With an argument, lists message buffers (conversations) ^X` send-a-message (prompts for user name and then message) ^X~ repeat-last-message (reprints last interactive message)rAccepts messages on some other mailbox than the user's default mailbox. Up to 50 mailboxes may be accepting messages at once in a process. The argument to $$$ is either a mailbox pathname (containing >'s or <'s) or a user-name (for sites using the ARPANet Mail Daemon) or a pair of the form User.Project. The effect is the same as $$extended-command$ accept-messages.Move forward to the next undeleted message in the mailbox. If there are no more, a diagnostic will be issued. Accepts an optional numeric argument for how many to go forward.Move backward to the previous undeleted message in the mailbox. If there are no more, a diagnostic will be issued. Accepts an optional numeric argument for how many to go backward.Collects a numeric argument for an RMAIL command; you do not have to precede numeric arguments by $$escape$ or $$multiplier$ in RMAIL mode, since the buffer is read-only.Collects a negative numeric argument when in RMAIL mode. You do not have to have to type $$escape$ or $$multiplier$ before numeric command arguments when in RMAIL mode.@Prompts for a subject for outbound mail, and sets you up to edit the mail. This command is basically the same as $$send-mail$, but a special convenience from RMAIL. ^X^S will return you to RMAIL's buffer/window when it sends the mail; ^X^Q will return to RMAIL without sending the mail.WInteractively replaces all occurences of one string with another. The command prompts for both strings in the minibuffer, and then searches forward for each occurrence of the first string. Terminate the strings with $$new-line$. It positions the cursor immediately after this string and waits for one of the following responses: space -- replaces this particular occurrence of the first string with the second. Then searches for the next occurrence of the first string and waits for a response again. , -- same as space, but redisplays before searching on. Normally, $$$ redisplays only before prompting. return -- leaves this occurrence of the first string alone and searches for the next occurrence of the first string. period -- replaces this occurrence of the first string with the second and terminates the query replace. ! -- Replaces this and all succeeding occurences of the first string by the second, without asking. ^G -- terminates the query replace without modifying this occurrence of the first string. ESC -- same as ^G. LReads a single character and searches backwards for that character unless it is one of the following characters which are interpreted specially: ^A invokes the reverse ITS string search command. (See $$reverse-ITS-string-search$ for more detail.) ^G aborts the search. ^J finds previous end of line. ^M finds previous end of line. ^Q reads another character and searches for it regardless of its value. ^Q should be used when searching for control characters. ^R searches again for the current default string, backwards. The default is displayed in the minibuffer. ^S searches for the current default string. The default will be displayed in the minibuffer. If the search succeeds, the cursor is left before the character(s) found.succNRe-indents all lines in the region defined by the cursor and the mark by the amount specified by the numeric argument. The numeric argument may be negative to unindent. All lines that have any characters between the cursor and the mark will be re-indented; thus, a line with the region ending at its beginning will not be re-indented.RYank in the text of a piece of mail being replied to, indented. The default indentation is 4; opt rmail-original-yank-indent NN controls the indentation. The region is set around the yanked mail, so $$wipe-region$ can be used to delete it, $$indent-rigidly$ to re-indent it, and $$exchange-point-and-mark$ to get to the other side of it. @Reply to sender, via Mail mode. Formats up a Mail mode buffer to reply to the current message, copying the subject (if any), and setting up as a destination the sender's address that he/she would like to be responded to at. With a numeric argument, e.g. 1$$$, replies to other recipients of the mail as well. In 2-window mode the response will be put in the other window and $$page-other-window$ may be used to "page" the letter you are responding to as you respond. To send the reply and return to RMAIL, use ^X^S. To return to RMAIL without sending the reply, use ^X^Q.e reply, use ^X^Q.Signals QUIT to Multics. Restores normal tty modes before so doing, and sets them back as Emacs needs them after having typed start.@Quit out of the current minibuffer prompt if any, and ring the bell (or beep). May be used to exit a minibuffer you did not intend to get into, or just to tell when Emacs has "caught up."@Switch to another buffer. Prompts for the name of that buffer, ending with the default buffer to go to in parentheses. Terminate input with a CR. If that buffer does not already exist, it will be created. All key bindings, fill column, comment column, comment prefix, etc., associated with that buffer will be put in effect. The last point that you were at in that buffer becomes the current point. $$$CR goes to the last buffer you were in.@Twiddle (transpose, interchange) the last two words typed, like: like I $$twiddle-words$ Multics because... If you are currently in the middle of a word, goes to the end of the word first. $Kill (destroy) a buffer. Prompts for the buffer's name. End with CR. Buffers may be killed to conserve storage, or not to appear in buffer listings or to prevent quitting (see $$quit-the-editor$). If you kill the current buffer, prompts for another buffer to go to, as in $$select-buffer$.lect-buffer$.Goes to a given line, given by line number, from the top of the buffer. The numeric argument specifies the line number. For instance, $$escape$ 25 $$$ goes to line 25. If the line number is not specified, prompts for a line number to go to. &If the current horizontal position on the line is beyond the fill column (see $$set-fill-column$) break this line so as to make the line fit within the fill column. This will break the line as many times as necessary so as to make all lines fit within the fill column, and then insert a "$$$".Also "option". Sets non-obvious internal flags and defaults, each of which have names. Takes three forms, opt list List all options and settings. opt NAME VALUE Set option value. opt status NAME Report setting of one option. Values may be on, off, or numbers, depending on the option. Code, such as startups, can simply set these Lisp variables. (on/off => t/nil). Some of the current options are: display-ctlchar-with-^ Causes control characters to print as ^P instead of \020. suppress-ctlchar-display Don't show control characters. Any character which would print as \NNN (except \177) is not displayed. suppress-rubout-display Don't show rubout characters. Causes \177 to never be displayed. Usefull when reading ALM listing segments. suppress-backspace-display Don't show backspaces. Causes underlined "foo" to print as "_f_o_o". rdis-whitespace-optimize Avoid printing whitespace when clever terminal control would go faster. Currently on by default, but adds a little expense. rdis-wosclr-opt Wipe Out Screen lines before filling screen. Try it both ways to see what this means. paragraph-definition-type 1 (default) = blank lines precede paragraphs. 2 = indented line starts one. find-file-set-modes When on, find-filing foo.pl1 sets pl1 mode, etc. track-eol-opt When on, ^N, ^P at eol stick to ends of lines. default-fill-column Fill column for new buffers. default-comment-column Comment column for new buffers (0 origin). pop-up-windows When on, ^XB, ^X^F, ^X^E, etc., find an appropriate place on the screen to put up a window as opposed to replacing contents of current window (highly experimental).7Moves to the beginning of the current macro definition.5Move backward one term in the current keyboard macro.*Compiles the current macro into Lisp code.1Moves to the end of the current macro definition.7Moves forward one term in the current macro definition.@udd>m>abc>abc, etc) is prompted for. The first message in the mailbox is placed in a buffer in RMAIL mode. Type "q" to exit RMAIL and delete all mail queued for deletion during RMAIL. Refer to the Emacs Text Editor User's Guide (Order no. CH27) for full info on RMAIL and reading and sending mail.@Go to the end of the "bcc:" (blind carbon copy recipients, i.e. these addresses are not shown to regular recipients) line, making one if there is none, so that you can type in the destination of a carbon copy recipient.Toggles the state of the current mail-sending buffer's acknowledgement requesting. When it is on, "Ack" is shown in the minor modes list, and when the mail is sent an acknowledgement will be requested.@Enter the Emacs mailer (RMAIL) to compose a letter of outgoing mail. $$$ will prompt for the mail subject. Use ^X^S to send the mail and return to the previous buffer. For full information on reading and sending mail, see the Multics Emacs Text Editor User's Guide (Order no. CH27).Places on display (in another window, if there are more than one) the buffer designated by the line on which the cursor sits. To return to the buffer editor, if in one-window mode, use $$select-buffer$ CR.bU;&t"Fill" the current paragraph, like runoff/compose with ".na". With argument (i.e., $$multiplier$ $$$), fill and adjust like runoff/compose with .fi and .ad. Right margin is determined by fill column, left margin by fill prefix. Runoff/compose control lines count as their own paragraphs, as does the line after a .unh control line. See $$set-fill-column$ to set fill-column, and $$set-fill-prefix$ to set fill prefix.Search for a character string, from current point in buffer to end. Prompts for string in minibuffer, and leaves point, if search succeeds, after the matched string. End search string with $$new-line$. $$$$$new-line$ re-uses last search string. If search fails, point will not move. If a numeric argument N is given then the Nth instance of the search string will be found; if less than N remain in the buffer then point will be left at the last one found and the mark will be set at the original point location. @Search for a character string matching a qedx-style regular expression, from current point in buffer to end. Prompts for the regular expression in minibuffer. End regular expression with $$new-line$. $$$$$new-line$ re-uses last search string. If the search succeeds then point is left after the matched string and the mark is left before the string. If the search fails, point will not move. If a numeric argument N is given then the Nth instance of a match will be found; if less than N remain in the buffer then point will be left after the last one found, the mark will be set before it, and the previous mark (reachable with $$multiplier$$$set-or-pop-the-mark$) at the original point location.&~ Search backward in the buffer for a string matching a qedx-style regular expression. Leave cursor positioned before matching string and mark set after it; doesn't move cursor if not found. Prompts for regular expression in minibuffer, which must be ended with $$new-line$; if just $$new-line$ is typed then the last search string is used. If a numeric argument N is given to this command then the Nth previous matching string will be found. If less than N are found then point will be left before the last one found, the mark will be set after this match, and the previous mark (reachable with $$multiplier$$$set-or-pop-the-mark$) will be set at the original point location.@ Search backward in the buffer for a specified character string. Leave cursor positioned before matching string, doesn't move cursor if not found. Prompts for search string in minibuffer, which must be ended with $$new-line$; if just $$new-line$ is typed then the last search string is used. If a numeric argument N is given to this command then the Nth previous occurrence of the search string will be found. If less than N are found then point will be left before the last one found, and the mark will be set at the original point location.gWithout a numeric argument, i.e., $$$, delete all whitespace at the beginning of this line and then merge it with the previous line, adding a space between the two parts. With an argument, i.e., $$multiplier$$$$, does a $$next-line-command$ first, so that $$multiplier$$$$ in effect "connects" the next line into this one, without the next line's indentation.@Clear the screen, and display the current window of the current buffer, centered about the current line. Useful if your screen is messed up by messages (although see accept-messages), non-Emacs output, etc. With a numeric argument, moves current line to that line from the top of window; ESC 1 $$$ moves current line to top, for example. With a negative argument, a line counting from the bottom of the window will be used; ESC - 1 $$$ moves the current line to the bottom.aMove to top, bottom, or other point in the window. $$escape$ 1 $$$ is the top line of the window, $$escape$ 6 $$$ is the 6th line from the top, $$escape$ - 4 $$$ is the fourth line from the bottom. A very large number is also the bottom. If no argument is given, the middle of the window is used. Leaves the cursor on the start of the selected line.Exits the editor. If modified buffers exist, they are listed as if by $$list-buffers$; $$$ then asks you if you really want to exit the editor. Exits the editor. If modified buffers exist, they are listed as if by $$list-buffers$; $$$ then asks you if you really want to exit the editor. !\8hWhile in the minibuffer, this attempts to finish the response that is being typed. This is currently implemented in commands that request buffer names (e.g. $$select-buffer$ and $$kill-buffer$) and in $$extended-command$. If executed immediately after a previous invocation it replaces the completion with another possible completion. If all the possible completions have been tried then it reverts to the response that the user originally typed.@Turn on Fill Mode (a minor mode) in this buffer. In Fill Mode, text will be wrapped around lines so as not to extend past the fill column (see $$set-fill-column$ to set that). When a space, tab, CR, or punctuation mark is placed after a word which passes the fill column, the line will be broken at the first whitespace from the end of the line. $$fill-mode-off$ turns it off. To insert a character to cause a line deliberately to extend pass the fill column, precede the character with $$quote-char$.0Turns off fill mode in this buffer, if it is on.Find file. Prompts for a filename, terminated by CR. If the file is already in a buffer, $$$ goes to that buffer (see $$select-buffer$). If the file is in more than one buffer, you will be queried about which one (or a new one) to use. If the file has been modified since that buffer was last read or written you will be queried about whether the file should be read into the buffer, read into a new buffer, the buffer should be used as is, or the $$$ should be skipped; if the find-file-check-dtcm option is off, the buffer will be used as is. If the file is not in any buffers, it will be read into a new, appropriately-named buffer. This is the standard way to read in a file or create a buffer for a new file. If no such buffer exists, $$$ reads the file into the buffer whose name is the first component of the entry portion of the filename, and sets the default file of this buffer to the file just read. If the find-file-set-modes option is on, $$$ will set the major mode of the buffer according to the last component of the entry portion of the filename. (For example, for the filename ">ldd>include>sst.incl.pl1", the buffer chosen is "sst" and the major mode is "PL/1".) $$$ will accept archive component pathnames (archive::component). $$$ also accepts star names (including stars in the archive and component names). When more than one star match is found, a $$$ is done for each file/archive component selected. $$$ can also read multisegment files (MSFs).  Read file. Prompts for a filename, terminated by CR. Reads that file into the current buffer destroying anything which was in the buffer, and sets this buffer's default file to the file read. If the current buffer has been modified then it asks if it should be replaced, unless it was given a numeric argument (e.g. $$multiplier$ $$$) or the find-file-force option is On. The cursor is left at the first position of the first line of the file read. If a blank response is given for the filename, the buffer's default file is read. The default file is set by $$$, $$find-file$, and $$write-file$. Archive component pathnames are accepted. Starnames are accepted too, but no more than one file or archive component must match. Multisegment files (MSFs) are also permitted.Writes the current buffer out to a file, whose relative pathname will be prompted for in the minibuffer. Terminate response with a CR. If a blank or null response is given, it is as if $$save-same-file$ were used. The file specified becomes the buffer's default file. If the file already exists, and a null pathname was not specified, then the user will be queried. The query may be prevented by setting the write-file-overwrite option to On, or by invoking $$$ with a numeric argument (e.g. $$multiplier$ $$$).).TSave file. Writes the contents of the current buffer to its default file. This command is equivalent to $$write-file$CR. If the file has been modified since it was last read or written then the user is queried, unless the save-same-file-check-dtcm option is off or the command is invoked with a numeric argument (e.g. $$multiplier$ $$$). >FExecute a Multics command line (prompted for, end with CR), and display the command line's output in a buffer; if the command line is empty this request is aborted. The output is placed in the buffer "file_output"; however, if the command is given a numeric argument (e.g. $$multiplier$$$$) the comout-command-to-buffer command is executed, prompting for the buffer to use. The output buffer is made the current buffer.urrent buffer.Execute a Multics command line (prompted for, end with CR), and display the command line's output in a user-specified buffer; if the command line is empty this request is aborted. The output buffer is made the current buffer.Compiles the current buffer; use $$set-compiler$ and $$set-compile-options$ to select a compiler and options that differ from the defaults. The buffer is written out to its default pathname, and compiled from there. Error diagnostics will be placed in the "Compilation Errors" buffer; if the option "one-error-scan-buffer" os Off, the diagnostics are placed in the buffer " Errors", where is the name of the buffer being compiled. Use $$locate-next-error$ to automatically scan that buffer to locate errors in the source program buffer. If in two-window mode, the error buffer is displayed in another window; if the option "compile-two-windows" is On then two-window mode will automatically be entered. If not, but the "compile-local-display" option is On, the diagnostics will be displayed as a local display (in addition to being put in a buffer). If neither are set (the default), a one-line local display will indicate whether the compilation was successful. bFinds the next diagnosed source error after $$compile-buffer$ has placed compiler diagnostics in a buffer. The cursor will be placed on the source line designated by the compilation error; deleting or inserting of lines during editing will not cause the wrong lines to be found. The diagnostics buffer may not be used between $$compile-buffer$ and $$$.=!\