From bbanerje Tue May 14 10:06:01 1985 Received: by sjuvax.UUCP (4.12/4.7) id AA26204; Tue, 14 May 85 10:05:55 edt Date: Tue, 14 May 85 10:05:55 edt From: bbanerje (B. Banerjee) Message-Id: <8505141405.AA26204@sjuvax.UUCP> To: mendenha Subject: Re: GNU Emacs Status: R >> >> I've found someone here at RCA that can do the Emacs port to VMS. >> If I come by with a tape sometime, can I get a copy of the source? >> >> Henry >> I won't be around, but Joe will be. Tell him that the sources are in : /src/local/text-handling/Editors/emacs. Also, we have a utility called 'ansitar' which should be able to write tapes that VMS can read (I'm not sure what to do about the UNIX subdirectories). You'll have to excuse the state of the sources. I haven't 'cleaned' them up for distribution. Most of the object files are lying around in addition to a bunch of RCS files (with an extension of ,v). These you can get rid of. Anyway, I'll let your friend worry about the details. -- Binayak P.S. Some documentation of a preliminary nature is available for GNU EMACS. I'm taking the liberty of sending this over to you by mail. From bbanerje Tue May 14 10:08:53 1985 Received: by sjuvax.UUCP (4.12/4.7) id AA26213; Tue, 14 May 85 10:07:41 edt Date: Tue, 14 May 85 10:07:41 edt From: bbanerje (B. Banerjee) Message-Id: <8505141407.AA26213@sjuvax.UUCP> To: mendenha Subject: Emacs functions Status: R Command Summary For Gnu Emacs Richard M. Stallman _m_o_d_i_f_y-_s_y_n_t_a_x-_e_n_t_r_y Set syntax for character C according to string S. The first character of S should be one of the following: Space whitespace syntax. w word constituent. _ symbol constituent. ( open-parenthesis. ) close-parenthesis. " string quote. character-quote. $ paired delimiter. ' expression prefix operator. < comment starter. > comment ender. Only single-character comment start and end sequences are represented thus. Two-character sequences are represented as described below. The second character of S is the matching parenthesis, used only if the first character is ( or ). Any additional characters are flags. Defined flags are the characters 1, 2, 3 and 4. 1 means C is the start of a two-char comment start sequence. 2 means C is the second character of such a sequence. 3 means C is the start of a two-char comment end sequence. 4 means C is the second character of such a sequence. _p_a_r_s_e-_p_a_r_t_i_a_l-_s_e_x_p May 13, 1985 - 2 - Parse Lisp syntax starting at FROM until TO; return status of parse at TO. Parsing stops at TO or when certain criteria are met; dot is set to where parsing stops. If fifth arg STATE is omitted or nil, parsing assumes that FROM is the beginning of a function. Value is a list of six elements describing final state of parsing: 1. depth in parens. 2. character address of start of innermost containing list; nil if none. 3. character address of start of last complete sexp terminated. 4. non-nil if inside a string. (it is the character that will terminate the string.) 5. t if inside a comment. 6. t if following a quote character. If third arg TARGETDEPTH is non-nil, parsing stops if the depth in parentheses becomes equal to TARGETDEPTH. Fourth arg STOPBEFORE non-nil means stop when come to any character that starts a sexp. Fifth arg STATE is a six-list like what this function returns. It is used to initialize the state of the parse. _i_n_t_e_r_a_c_t_i_v_e May 13, 1985 - 3 - Specify a way of parsing arguments for interactive use of a function. For example, write (defun fun (arg) "Doc string" (interactive "p") ...use arg...) to make arg be the prefix numeric argument when foo is called as a command. This is actually a declaration rather than a function; it tells call-interactively how to read arguments to pass to the function. When actually called, interactive just returns nil. The argument of interactive is usually a string containing a code letter followed by a prompt. (Some code letters do not use I/O to get the argument and do not need prompts.) To prompt for multiple arguments, give a code letter, its prompt, a newline, and another code letter, etc. If the argument is not a string, it is evaluated to get a list of arguments to pass to the function. Just (interactive) means pass no args when calling interactively. Code letters available are: a -- Function name: symbol with a function definition. b -- Name of existing buffer. B -- Name of buffer, possibly nonexistent. c -- Character. C -- Command name: symbol with interactive function definition. d -- Value of dot as number. Does not do I/O. D -- Directory name. f -- Existing file name. F -- Possibly nonexistent file name. k -- Key sequence (string). m -- Value of mark as number. Does not do I/O. n -- Number read using minibuffer. p -- Prefix arg converted to number. Does not do I/O. P -- Prefix arg in raw form. Does not do I/O. r -- Region: dot and mark as 2 numeric args, smallest first. Does no I/O. s -- Any string. S -- Any symbol. v -- Variable name: symbol that is boundp. x -- Lisp expression read but not evaluated. X -- Lisp expression read and evaluated. _s_e_t-_s_c_r_e_e_n-_h_e_i_g_h_t Set number of lines on screen available for use in windows. _s_e_t-_s_c_r_e_e_n-_w_i_d_t_h Set number of columns on screen available for display. _s_c_r_e_e_n-_h_e_i_g_h_t Return number of lines on screen available for use in windows. May 13, 1985 - 4 - _s_c_r_e_e_n-_w_i_d_t_h Return number of columns on screen available for display. _d_i_n_g Beep, or flash the screen. _s_l_e_e_p-_f_o_r Pause, without updating display, for ARG seconds. _s_i_t-_f_o_r Perform redisplay, then wait for ARG seconds or until input is available _r_e_d_r_a_w-_d_i_s_p_l_a_y Clear the screen and output again what is supposed to appear on it. _w_i_n_d_o_w_p Returns t if OBJ is a window. _s_e_l_e_c_t_e_d-_w_i_n_d_o_w Return the window that the cursor appears in and commands apply to. _p_o_s-_v_i_s_i_b_l_e-_i_n-_w_i_n_d_o_w-_p Return t if position POS is currently on the screen in WINDOW. Returns nil if that position is scrolled vertically out of view. POS defautls to dot; WINDOW, to the selected window. _w_i_n_d_o_w-_b_u_f_f_e_r Return the buffer that WINDOW is displaying. _w_i_n_d_o_w-_h_e_i_g_h_t Return the number of lines in WINDOW (including its mode line). May 13, 1985 - 5 - _w_i_n_d_o_w-_w_i_d_t_h Return the number of columns in WINDOW. _w_i_n_d_o_w-_h_s_c_r_o_l_l Return the number of columns by which WINDOW is scrolled from left margin. _s_e_t-_w_i_n_d_o_w-_h_s_c_r_o_l_l Set number of columns WINDOW is scrolled from left margin to NCOL. NCOL should be zero or positive. _w_i_n_d_o_w-_e_d_g_e_s Return a list of the edge coordinates of WINDOW. (LEFT TOP RIGHT BOTTOM), all relative to 0, 0 at top left corner of screen. _w_i_n_d_o_w-_d_o_t Return current value of dot in WINDOW. _w_i_n_d_o_w-_s_t_a_r_t Return position at which display currently starts in WINDOW. _s_e_t-_w_i_n_d_o_w-_d_o_t Make dot value in WINDOW be at position POS in WINDOW's buffer. _s_e_t-_w_i_n_d_o_w-_s_t_a_r_t Make display in WINDOW start at position POS in WINDOW's buffer. _d_e_l_e_t_e-_w_i_n_d_o_w Remove WINDOW from the display. Default is selected window. _n_e_x_t-_w_i_n_d_o_w Return next window after WINDOW in canonical ordering of windows. May 13, 1985 - 6 - _p_r_e_v_i_o_u_s-_w_i_n_d_o_w Return previous window before WINDOW in canonical ordering of windows. _o_t_h_e_r-_w_i_n_d_o_w Select a different window by moving down ARG times. _g_e_t-_l_r_u-_w_i_n_d_o_w Return the window least recently selected or used for display. _g_e_t-_l_a_r_g_e_s_t-_w_i_n_d_o_w Return the largest window in area. _g_e_t-_b_u_f_f_e_r-_w_i_n_d_o_w Return a window currently displaying BUFFER, or nil if none. _d_e_l_e_t_e-_o_t_h_e_r-_w_i_n_d_o_w_s Make WINDOW (or the selected window) fill the screen. _d_e_l_e_t_e-_w_i_n_d_o_w_s-_o_n Delete all windows showing BUFFER. _r_e_p_l_a_c_e-_b_u_f_f_e_r-_i_n-_w_i_n_d_o_w_s Replace BUFFER with some other buffer in all windows showing it. _s_h_o_w-_b_u_f_f_e_r Make WINDOW display BUFFER as its contents. BUFFER can be a buffer or buffer name. _s_e_l_e_c_t-_w_i_n_d_o_w Select WINDOW. Most editing will apply to WINDOW's buffer. The main editor command loop selects the buffer of the selected window before each command. May 13, 1985 - 7 - _d_i_s_p_l_a_y-_b_u_f_f_e_r Make BUFFER appear in some window but don't select them. BUFFER can be a buffer or a buffer name. Returns the window displaying BUFFER. _s_p_l_i_t-_w_i_n_d_o_w Split WINDOW, putting SIZE lines in the first of the pair. WINDOW defaults to selected one and SIZE to half its size. If optional third arg HOR-FLAG is non-nil, split side by side and put SIZE columns in the first of the pair. _e_n_l_a_r_g_e-_w_i_n_d_o_w Make current window ARG lines bigger. >From program, optional second arg non-nil means grow sideways ARG columns. _s_h_r_i_n_k-_w_i_n_d_o_w Make current window ARG lines smaller. >From program, optional second arg non-nil means shrink sideways ARG columns. _s_c_r_o_l_l-_u_p Scroll text of current window upward ARG lines; or near full screen if no ARG. When calling from a program, supply a number as argument or nil. _s_c_r_o_l_l-_d_o_w_n Scroll text of current window downward ARG lines; or near full screen if no ARG. When calling from a program, supply a number as argument or nil. _s_c_r_o_l_l-_l_e_f_t Scroll selected window display ARG columns left. _s_c_r_o_l_l-_r_i_g_h_t Scroll selected window display ARG columns right. _s_c_r_o_l_l-_o_t_h_e_r-_w_i_n_d_o_w May 13, 1985 - 8 - Scroll text of next window upward ARG lines; or near full screen if no ARG. The next window is the one below the current one; or the one at the top if the current one is at the bottom. When calling from a program, supply a number as argument or nil. _r_e_c_e_n_t_e_r Center dot in window and redisplay screen. With ARG, put dot on line ARG. The desired position of dot is always relative to the current window. If there is no ARG (i.e., it is nil) then the entire screen is redisplayed. _m_o_v_e-_t_o-_s_c_r_e_e_n-_l_i_n_e Position dot relative to window. With no argument, position at text at center of window. An argument specifies screen line; zero means top of window, negative means relative to bottom of window. _s_a_v_e-_w_i_n_d_o_w-_e_x_c_u_r_s_i_o_n Execute body, preserving window sizes and contents. Restores which buffer appears in which window, where display starts, as well as dot and mark. _k_i_l_l-_e_m_a_c_s Exit the Emacs job and kill it. Arg means no query. _d_u_m_p-_e_m_a_c_s Dump current state of Emacs into executable file FILENAME. Take symbols from SYMFILE (presumably the file you executed to run Emacs). _r_e_c_u_r_s_i_v_e-_e_d_i_t Invoke the editor command loop recursively. Do (throw 'exit nil) within the command loop to make this function return, or (throw 'exit t) to make this function signal an error. This function is called by the editor initialization to begin editing. _t_o_p-_l_e_v_e_l Exit all recursive editing levels. May 13, 1985 - 9 - _e_x_i_t-_r_e_c_u_r_s_i_v_e-_e_d_i_t Exit from the innermost recursive edit or minibuffer. _a_b_o_r_t-_r_e_c_u_r_s_i_v_e-_e_d_i_t Abort the command that requested this recursive edit or minibuffer input. _r_e_a_d-_k_e_y-_s_e_q_u_e_n_c_e Read a sequence of keystrokes and return as a string. The sequence is sufficient to specify a non-prefix command starting from the current local and global keymaps. One arg, PROMPT, a prompt string. _c_o_m_m_a_n_d-_e_x_e_c_u_t_e Execute CMD as an editor command. CMD may be an APPLYable Lisp function, or a string (which is executed as a keyboard macro). _i_n_p_u_t-_p_e_n_d_i_n_g-_p T if command input is currently available with no waiting. Actually, the value is NIL only if we can be sure that no input is available. _r_e_c_e_n_t-_k_e_y_s Return string of last 100 chars read from terminal. _t_h_i_s-_c_o_m_m_a_n_d-_k_e_y_s Return string of the keystrokes that invoked this command. _l_a_s_t-_k_e_y-_s_t_r_u_c_k Return the last character input from the command input stream, as a number. _r_e_c_u_r_s_i_o_n-_d_e_p_t_h Return the current depth in recursive edits. _o_p_e_n-_d_r_i_b_b_l_e-_f_i_l_e Start writing all keyboard characters to a file named dribble. May 13, 1985 - 10 - _d_i_s_c_a_r_d-_i_n_p_u_t Discard the contents of the terminal input buffer. Also flush any kbd macro definition in progress. _s_u_s_p_e_n_d-_e_m_a_c_s Stop Emacs and return to superior process. You can resume. If optional arg STUFFSTRING is non-nil, its characters are stuffed to be read as terminal input by Emacs's superior shell. _s_t_a_r_t-_k_b_d-_m_a_c_r_o Record subsequent keyboard input, defining a keyboard macro. The commands are recorded even as they are executed. Use end-kbd-macro to finish recording and make the macro available. Use name-last-kbd-macro to give it a permanent name. Non-nil arg (prefix arg) means append to last macro defined; This begins by re-executing that macro as if you typed it again. _e_n_d-_k_b_d-_m_a_c_r_o Finish defining a keyboard macro. The definition was started by start-kbd-macro. The macro is now available for use via call-last-kbd-macro, or it can be given a name with name-last-kbd-macro and then invoked under that name. With numeric arg, repeat macro now that many times, counting the definition just completed as the first repetition. _c_a_l_l-_l_a_s_t-_k_b_d-_m_a_c_r_o Call the last keyboard macro that you defined. To make a macro permanent so you can call it even after defining others, use name-last-kbd-macro. _e_x_e_c_u_t_e-_k_b_d-_m_a_c_r_o Execute MACRO as string of editor command characters. If MACRO is a symbol, its function definition is used. COUNT is a repeat count, or nil for once, or 0 for infinite loop. _n_a_m_e-_l_a_s_t-_k_b_d-_m_a_c_r_o May 13, 1985 - 11 - Assign a name to the last keyboard macro defined. One arg, a symbol, which is the name to define. The symbol's function definition becomes the keyboard macro string. Such a "function" cannot be called from Lisp, but it is a valid command definition for the editor command loop. _m_a_k_e-_k_e_y_m_a_p Construct and return a new keymap. All entries in it are NIL, meaning "command undefined". _m_a_k_e-_s_p_a_r_s_e-_k_e_y_m_a_p Construct and return a new sparse-keymap list. Its car is 'keymap and its cdr is an alist of (CHAR . DEFINITION). Initially the alist is nil. _k_e_y_m_a_p_p T if ARG is a keymap. A keymap is a vector of length 128, or a list (keymap . ALIST), where alist elements look like (CHAR . DEFN). _d_e_f_i_n_e-_k_e_y Args KEYMAP, KEYS, DEF. Define key sequence KEYS, in KEYMAP, as DEF. KEYMAP is a keymap. KEYS is a string meaning a sequence of keystrokes. DEF is usually a symbol with a function definition, suitable for use as a command. _l_o_o_k_u_p-_k_e_y In keymap KEYMAP, look up key sequence KEYS. Return the definition. nil means undefined. Number as value means KEYS is "too long"; that is, characters in it except for the last one fail to be a valid sequence of prefix characters in KEYMAP. The number is how many characters at the front of KEYS it takes to reach a non-prefix command. _k_e_y-_b_i_n_d_i_n_g Return the definition for command KEYS in current keymaps. KEYS is a string, a sequence of keystrokes. The definition is probably a symbol with a function definition. May 13, 1985 - 12 - _l_o_c_a_l-_k_e_y-_b_i_n_d_i_n_g Return the definition for command KEYS in current local keymap only. KEYS is a string, a sequence of keystrokes. The definition is probably a symbol with a function definition. _g_l_o_b_a_l-_k_e_y-_b_i_n_d_i_n_g Return the definition for command KEYS in current global keymap only. KEYS is a string, a sequence of keystrokes. The definition is probably a symbol with a function definition. _g_l_o_b_a_l-_s_e_t-_k_e_y Give KEY a definition of COMMAND. COMMAND is a symbol naming an interactively-callable function. KEY is a string representing a sequence of keystrokes. Note that if KEY has a local definition in the current buffer that local definition will continue to shadow any global definition. _l_o_c_a_l-_s_e_t-_k_e_y Give KEY a local definition of COMMAND. COMMAND is a symbol naming an interactively-callable function. KEY is a string representing a sequence of keystrokes. The definition goes in the current buffer's local map, which is shared with other buffers in the same major mode. _g_l_o_b_a_l-_u_n_s_e_t-_k_e_y Remove global definition of KEY. KEY is a string representing a sequence of keystrokes. _l_o_c_a_l-_u_n_s_e_t-_k_e_y Remove local definition of KEY. KEY is a string representing a sequence of keystrokes. _d_e_f_i_n_e-_p_r_e_f_i_x-_c_o_m_m_a_n_d Define SYMBOL as a prefix command. A keymap is created and stored as SYMBOL's function definition. _u_s_e-_g_l_o_b_a_l-_m_a_p Selects KEYMAP as the global keymap. May 13, 1985 - 13 - _u_s_e-_l_o_c_a_l-_m_a_p Selects KEYMAP as the local keymap. nil for KEYMAP means no local keymap. _c_u_r_r_e_n_t-_l_o_c_a_l-_m_a_p Return current buffer's local keymap, or nil if it has none. _a_c_c_e_s_s_i_b_l_e-_k_e_y_m_a_p_s Find all keymaps accessible via prefix characters from KEYMAP. Returns a list of elements of the form (KEYS . MAP), where the sequence KEYS starting from KEYMAP gets you to MAP. These elements are ordered so that the KEYS increase in length. The first element is ("" . KEYMAP). _k_e_y-_d_e_s_c_r_i_p_t_i_o_n Return a pretty description of key-sequence KEYS. Control characters turn into caret-sequences, spaces are put between sequence elements, etc. _s_i_n_g_l_e-_k_e_y-_d_e_s_c_r_i_p_t_i_o_n Return a pretty description of command character KEY. Control characters turn into C-whatever, etc. _t_e_x_t-_c_h_a_r-_d_e_s_c_r_i_p_t_i_o_n Return a pretty description of file-character CHAR. Control characters turn into caret-sequences, etc. _w_h_e_r_e-_i_s-_i_n_t_e_r_n_a_l Return list of key sequences that currently invoke command DEFINITION. _w_h_e_r_e-_i_s Print message listing key sequences that invoke specified command. Argument is a command definition, usually a symbol with a function definition. _d_e_s_c_r_i_b_e-_b_i_n_d_i_n_g_s Show a list of all defined keys, and their definitions. The list is put in a buffer, which is displayed. May 13, 1985 - 14 - _a_p_r_o_p_o_s Show all symbols whose names contain match for REGEXP. If optional arg PRED is non-nil, (funcall PRED SYM) is done for each symbol and a symbol is mentioned if that returns non-nil. Returns list of symbols found; if third arg NOPRINT is non-nil, does not display them, just returns the list. _e_x_e_c_u_t_e-_e_x_t_e_n_d_e_d-_c_o_m_m_a_n_d Read function name, then read its arguments and call it. _b_u_f_f_e_r-_l_i_s_t Return a list of all buffers. _g_e_t-_b_u_f_f_e_r Return the buffer named NAME (a string). It is found by looking up NAME in buffer-alist. If there is no buffer named NAME, nil is returned. NAME may also be a buffer; it is returned. _g_e_t-_f_i_l_e-_b_u_f_f_e_r Return the buffer visiting file FILENAME (a string). If there is no such buffer, nil is returned. _g_e_t-_b_u_f_f_e_r-_c_r_e_a_t_e Like get-buffer but creates a buffer named NAME and returns it if none already exists. _c_r_e_a_t_e-_f_i_l_e-_b_u_f_f_e_r Creates a suitably named buffer for visiting FILENAME, and returns it. _b_u_f_f_e_r-_n_a_m_e Return the name of BUFFER, as a string. No arg means return name of current buffer. _b_u_f_f_e_r-_n_u_m_b_e_r Return the number of BUFFER. No arg means return number of current buffer. May 13, 1985 - 15 - _b_u_f_f_e_r-_f_i_l_e-_n_a_m_e Return name of file BUFFER is visiting, or NIL if none. No argument means use current buffer as BUFFER. _b_u_f_f_e_r-_l_o_c_a_l-_v_a_r_i_a_b_l_e_s Return alist of buffer-local variables of BUFFER. Each element looks like (SYMBOL . VALUE). No argument means use current buffer as BUFFER. _b_u_f_f_e_r-_m_o_d_i_f_i_e_d-_p Return t if BUFFER is modified since file last read in or saved. No argument means use current buffer as BUFFER. _s_e_t-_b_u_f_f_e_r-_m_o_d_i_f_i_e_d-_p Mark current buffer as modified or unmodified according to FLAG. _r_e_n_a_m_e-_b_u_f_f_e_r Change current buffer's name to NEWNAME (a string). _o_t_h_e_r-_b_u_f_f_e_r Return an interesting buffer other than BUFFER. If BUFFER is omitted or nil, some interesting buffer is returned. _b_u_f_f_e_r-_f_l_u_s_h-_u_n_d_o Make BUFFER stop keeping undo information. _k_i_l_l-_b_u_f_f_e_r One arg, a string or a buffer. Get rid of the specified buffer. _s_w_i_t_c_h-_t_o-_b_u_f_f_e_r One arg, a string or buffer. Select the specified buffer in the current window. _p_o_p-_t_o-_b_u_f_f_e_r One arg, a string or window. Select the specified buffer, popping up a window. May 13, 1985 - 16 - _c_u_r_r_e_n_t-_b_u_f_f_e_r Return the current buffer as a Lisp buffer object. _s_e_t-_b_u_f_f_e_r Set the current buffer to the buffer or buffer name supplied as argument. This function will not accomplish buffer switching interactively. This is because returning to command level always selects the buffer tied to the current window, and this function has no effect on what buffer that is. Use switch-to-buffer or pop-to-buffer for interactive buffer selection. _e_r_a_s_e-_b_u_f_f_e_r Delete the entire contents of the current buffer. _l_i_s_t-_b_u_f_f_e_r_s Display a list of names of existing buffers. Inserts it in buffer *Buffer List* and displays that. Note that buffers with names starting with spaces are omitted. Non-null optional arg FILES-ONLY means mention only file buffers. _k_i_l_l-_a_l_l-_l_o_c_a_l-_v_a_r_i_a_b_l_e_s Eliminate all the buffer-local variable values of the current buffer. This buffer will then see the default values of all variables. _m_a_r_k_e_r-_b_u_f_f_e_r Return the buffer that MARKER points into, or nil if MARKER points nowhere. _m_a_r_k_e_r-_p_o_s_i_t_i_o_n Return the position MARKER points at, as a character number. _s_e_t-_m_a_r_k_e_r Position MARKER before character number NUMBER in BUFFER. BUFFER defaults to the current buffer. If NUMBER is nil, makes marker point nowhere. Then it no longer slows down editing in any buffer. Returns MARKER. May 13, 1985 - 17 - _c_o_p_y-_m_a_r_k_e_r Return a new marker pointing at the same place as MARKER. If argument is a number, makes a new marker pointing at that position in the current buffer. _e_v_a_l-_m_i_n_i_b_u_f_f_e_r Return value of Lisp expression read using the minibuffer. Return Prompt with PROMPT. _r_e_a_d-_m_i_n_i_b_u_f_f_e_r Return Lisp object read using the minibuffer, prompting with PROMPT. _r_e_a_d-_s_t_r_i_n_g Read a string from the minibuffer, prompting with string PROMPT. _r_e_a_d-_i_n_p_u_t Read string from minibuffer, prompting with string PROMPT. Start off with second arg string INIT as minibuffer contents. _r_e_a_d-_n_o-_b_l_a_n_k_s-_i_n_p_u_t Args PROMPT and INIT, strings. Read a string from the terminal, not allowing blanks. Prompt with PROMPT, and provide INIT as an initial value of the input string. _r_e_a_d-_c_o_m_m_a_n_d One arg PROMPT, a string. Read the name of a command and return as a symbol. Prompts with PROMPT. _r_e_a_d-_f_u_n_c_t_i_o_n One arg PROMPT, a string. Read the name of a function and return as a symbol. Prompts with PROMPT. _r_e_a_d-_v_a_r_i_a_b_l_e One arg PROMPT, a string. Read the name of a variable and return as a symbol. Prompts with PROMPT. May 13, 1985 - 18 - _r_e_a_d-_b_u_f_f_e_r One arg PROMPT, a string. Read the name of a buffer and return as a string. Prompts with PROMPT. Optional second arg is value to return if user enters an empty line. If optional third arg REQUIRE-MATCH is non-nil, only existing buffer names are allowed. _t_r_y-_c_o_m_p_l_e_t_i_o_n Return common substring of all completions of STRING in ALIST. Each car of each element of ALIST is tested to see if it begins with STRING. All that match are compared together; the longest initial sequence common to all matches is returned as a string. If there is no match at all, nil is returned. For an exact match, t is returned. ALIST can be an obarray instead of an alist. Then the print names of all symbols in the obarray are the possible matches. If optional third argument PREDICATE is non-nil, it is used to test each possible match. The match is a candidate only if PREDICATE returns non-nil. The argument given to PREDICATE is the alist element or the symbol from the obarray. _a_l_l-_c_o_m_p_l_e_t_i_o_n_s Search for partial matches to STRING in ALIST. Each car of each element of ALIST is tested to see if it begins with STRING. The value is a list of all the strings from ALIST that match. ALIST can be an obarray instead of an alist. Then the print names of all symbols in the obarray are the possible matches. If optional third argument PREDICATE is non-nil, it is used to test each possible match. The match is a candidate only if PREDICATE returns non-nil. The argument given to PREDICATE is the alist element or the symbol from the obarray. _c_o_m_p_l_e_t_i_n_g-_r_e_a_d Read a string in the minibuffer, with completion. Args are PROMPT, TABLE, PREDICATE, REQUIRE-MATCH and INITIAL-INPUT. PROMPT is a string to prompt with; normally it ends in a colon and a space. TABLE is an alist whose elements' cars are strings, or an obarray (see try-completion). PREDICATE limits completion to a subset of TABLE; see try-completion for details. If REQUIRE-MATCH is non-nil, the user is not allowed to exit unless the input is (or completes to) an element of TABLE. If it is also not t, ^M does not exit if it does non-null completion. If INITIAL-INPUT is non-nil, insert it in the minibuffer initially. May 13, 1985 - 19 - _m_i_n_i_b_u_f_f_e_r-_c_o_m_p_l_e_t_e Complete the minibuffer contents as far as possible. _m_i_n_i_b_u_f_f_e_r-_c_o_m_p_l_e_t_e-_w_o_r_d Complete the minibuffer contents at most a single word. _m_i_n_i_b_u_f_f_e_r-_c_o_m_p_l_e_t_e-_a_n_d-_e_x_i_t Complete the minibuffer contents, and maybe exit. Exit if the name is valid with no completion needed. If name was completed to a valid match, a repetition of this command will exit. _m_i_n_i_b_u_f_f_e_r-_c_o_m_p_l_e_t_i_o_n-_h_e_l_p Display a list of possible completions of the current minibuffer contents. _s_e_l_f-_i_n_s_e_r_t-_a_n_d-_e_x_i_t Terminate minibuffer input. _e_x_i_t-_m_i_n_i_b_u_f_f_e_r Terminate this minibuffer argument. _f_i_l_e-_n_a_m_e-_d_i_r_e_c_t_o_r_y Return the directory component in file name NAME. Return nil if NAME does not include a directory. Otherwise return a string ending in a slash. _f_i_l_e-_n_a_m_e-_n_o_n_d_i_r_e_c_t_o_r_y Return file name NAME sans its directory. This is everything after the last slash in NAME, if NAME contains a slash. _m_a_k_e-_t_e_m_p-_n_a_m_e Generate temporary name (string) starting with PREFIX (a string). _e_x_p_a_n_d-_f_i_l_e-_n_a_m_e May 13, 1985 - 20 - Convert FILENAME to absolute, and canonicalize it. Second arg DEFAULT is directory to start with if FILENAME is relative (does not start with slash); if DEFAULT is nil or missing, the current buffer's value of default-directory is used. Filenames containing . or .. as components are simplified; initial ~ is expanded. See also the function substitute-in-file-name. _s_u_b_s_t_i_t_u_t_e-_i_n-_f_i_l_e-_n_a_m_e Substitute environment variables referred to in STRING. A $ begins a request to substitute; the env variable name is the alphanumeric characters after the $, or else is surrounded by braces. If a ~ appears following a /, everything through that / is discarded. _c_o_p_y-_f_i_l_e Copy FILE to NEWNAME. Both args strings. _d_e_l_e_t_e-_f_i_l_e Delete specified file. One argument, a file name string. If file has multiple names, it continues to exist with the other names. _r_e_n_a_m_e-_f_i_l_e Rename FILE as NEWNAME. Both args strings. If file has names other than FILE, it continues to have those names. _a_d_d-_n_a_m_e-_t_o-_f_i_l_e Give FILE additional name NEWNAME. Both args strings. _m_a_k_e-_s_y_m_b_o_l_i_c-_l_i_n_k Make a symbolic link to FILENAME, named LINKNAME. Both args strings. _f_i_l_e-_e_x_i_s_t_s-_p Return t if file FILENAME exists and you can read it. _f_i_l_e-_w_r_i_t_a_b_l_e-_p Return t if file FILENAME can be written or created by you. May 13, 1985 - 21 - _f_i_l_e-_s_y_m_l_i_n_k-_p Return t if file FILENAME is the name of a symbolic link. _f_i_l_e-_d_i_r_e_c_t_o_r_y-_p Return t if file FILENAME is the name of a directory. _f_i_l_e-_m_o_d_e_s Return mode bits of FILE, as an integer. _s_e_t-_f_i_l_e-_m_o_d_e_s Set mode bits of FILE to MODE (an integer). Only the 12 low bits of MODE are used. _i_n_s_e_r_t-_f_i_l_e-_c_o_n_t_e_n_t_s Insert contents of file FILENAME after dot. Returns list of absolute pathname and length of data inserted. If second argument VISIT is non-nil, the buffer's visited filename and last save file modtime are set, and it is marked unmodified. _w_r_i_t_e-_r_e_g_i_o_n Write current region into specified file. When called from a program, takes three arguments: START, END and FILENAME. START and END are buffer positions. Optional fourth argument APPEND if non-nil means append to existing file contents (if any). Optional fifth argument VISIT if t means set last-save-file-modtime of buffer to this file's modtime and mark buffer not modified. If VISIT is neither t nor nil, it means do not print the "Wrote file" message. _v_e_r_i_f_y-_v_i_s_i_t_e_d-_f_i_l_e-_m_o_d_t_i_m_e Return t if last mod time of BUF's visited file matches what BUF records. This means that the file has not been changed since it was visited or saved. _c_l_e_a_r-_v_i_s_i_t_e_d-_f_i_l_e-_m_o_d_t_i_m_e Clear out records of last mod time of visited file. Next attempt to save will certainly not complain of a discrepancy. May 13, 1985 - 22 - _d_o-_a_u_t_o-_s_a_v_e Auto-save all buffers that need it. This is all buffers that have auto-saving enabled and are changed since last auto-saved. Auto-saving writes the buffer into a file so that your editing is not lost if the system crashes. This file is not the file you visited; that changes only when you save. Non-nil argument means do not print any message. _s_e_t-_b_u_f_f_e_r-_a_u_t_o-_s_a_v_e_d Make current buffer as auto-saved with its current text. No auto-save file will be written until the buffer changes again. _r_e_c_e_n_t-_a_u_t_o-_s_a_v_e-_p Return t if buffer has been auto-saved since last read in or saved. _r_e_a_d-_f_i_l_e-_n_a_m_e-_i_n_t_e_r_n_a_l Internal subroutine for read-file-name. Do not call this. _r_e_a_d-_f_i_l_e-_n_a_m_e Read file name, prompting with PROMPT and completing in directory DIR. Value is not expanded! You must call expand-file-name yourself. Default name to DEFAULT if user enters a null string. Fourth arg MUSTMATCH non-nil means require existing file's name. Non-nil and non-t means also require confirmation after completion. DIR defaults to current buffer's directory default. _d_i_r_e_c_t_o_r_y-_f_i_l_e_s Return a list of names of files in DIRECTORY. If FULL is non-NIL, absolute pathnames of the files are returned. _f_i_l_e-_n_a_m_e-_c_o_m_p_l_e_t_i_o_n Complete file name FILE in directory DIR. Returns the longest string common to all filenames in DIR that start with FILE. If there is only one and FILE matches it exactly, returns t. Returns nil if DIR contains no name starting with FILE. May 13, 1985 - 23 - _f_i_l_e-_n_a_m_e-_a_l_l-_c_o_m_p_l_e_t_i_o_n_s Return a list of all completions of file name FILE in directory DIR. _f_i_l_e-_a_t_t_r_i_b_u_t_e_s Return a list of attributes of file FILENAME. Elements are: 0. t for directory, string (name linked to) for symbolic link, or nil. 1. Number of links to file. 2. File uid. 3. File gid. 4. Last access time, as a list of two integers. First integer has high-order 16 bits of time, second has low 16 bits. 5. Last modification time, likewise. 6. Creation time, likewise. 7. Size in bytes. 8. File modes, as a string of nine letters or dashes as in ls -l. _f_o_r_w_a_r_d-_c_h_a_r Move dot right ARG characters (left if ARG negative). On reaching end of buffer, stop and signal error. _b_a_c_k_w_a_r_d-_c_h_a_r Move dot left ARG characters (right if ARG negative). On reaching end of buffer, stop and signal error. _f_o_r_w_a_r_d-_l_i_n_e Move dot forward past ARG newlines. If ARG is zero, position after previous newline. If ARG is negative, position after -ARG'th newline before that one. If scan reaches end of buffer, stop there without error; value is count of lines left to move. _b_e_g_i_n_n_i_n_g-_o_f-_l_i_n_e Move dot to beginning of current line. With argument ARG not nil or 1, move forward ARG - 1 lines first. If scan reaches end of buffer, stop there without error. _e_n_d-_o_f-_l_i_n_e Move dot to beginning of current line. With argument ARG not nil or 1, move forward ARG - 1 lines first. If scan reaches end of buffer, stop there without error. May 13, 1985 - 24 - _d_e_l_e_t_e-_c_h_a_r Delete the following ARG characters (previous, with negative arg). Optional second arg KILLFLAG non-nil means kill instead (save in kill ring). Interactively, ARG is the prefix arg, and kill if ARG was explicitly specd. _d_e_l_e_t_e-_b_a_c_k_w_a_r_d-_c_h_a_r Delete the previous ARG characters (following, with negative ARG). Optional second arg KILLFLAG non-nil means kill instead (save in kill ring). Interactively, ARG is the prefix arg, and kill if ARG was explicitly specd. _s_e_l_f-_i_n_s_e_r_t-_c_o_m_m_a_n_d Insert this character. _n_e_w_l_i_n_e Insert a newline. With arg, insert that many newlines. _u_p_c_a_s_e One arg, a character or string. Convert it to upper case and return that. _d_o_w_n_c_a_s_e One arg, a character or string. Convert it to lower case and return that. _c_a_p_i_t_a_l_i_z_e One arg, a character or string. Convert it to capitalized form and return that. This means that each word's first character is upper case and the rest is lower case. _u_p_c_a_s_e-_r_e_g_i_o_n Convert the region to upper case. In programs, wants two arguments. These arguments specify the starting and ending character numbers of the region to operate on. When used as a command, the text between dot and the mark is operated on. _d_o_w_n_c_a_s_e-_r_e_g_i_o_n Convert the region to lower case. In programs, wants two arguments. These arguments specify the starting and ending character numbers of the region to operate on. When used as a command, the text between dot and the mark is operated on. May 13, 1985 - 25 - _c_a_p_i_t_a_l_i_z_e-_r_e_g_i_o_n Convert the region to upper case. In programs, wants two arguments. These arguments specify the starting and ending character numbers of the region to operate on. When used as a command, the text between dot and the mark is operated on. Capitalized form means each word's first character is upper case and the rest of it is lower case. _u_p_c_a_s_e-_w_o_r_d Convert following word (or ARG words) to upper case, moving over. With negative argument, convert previous words but do not move. _d_o_w_n_c_a_s_e-_w_o_r_d Convert following word (or ARG words) to lower case, moving over. With negative argument, convert previous words but do not move. _c_a_p_i_t_a_l_i_z_e-_w_o_r_d Capitalize the following word (or ARG words), moving over. This gives the word(s) a first character in upper case and the rest lower case. With negative argument, capitalize previous words but do not move. _c_u_r_r_e_n_t-_c_o_l_u_m_n Return the horizontal position of dot. The left margin is column 0. Ignores finite width of screen, _i_n_d_e_n_t-_t_o Indent from dot with tabs and spaces until COLUMN is reached. Always do at least MIN spaces even if that goes past COLUMN; by default, MIN is zero. _c_u_r_r_e_n_t-_i_n_d_e_n_t_a_t_i_o_n Return the indentation of the current line. This is the horizontal position of the character following any initial whitespace. _m_o_v_e-_t_o-_c_o_l_u_m_n May 13, 1985 - 26 - Move dot to column COLUMN in the current line. Does not change the text, only dot. Ignores finite width of screen. _v_e_r_t_i_c_a_l-_m_o_t_i_o_n Move to start of screen line LINES lines down. If LINES is negative, this is moving up. Sets dot to position found; this may be start of line or just the start of a continuation line. Returns number of lines moved; may be closer to zero than LINES if end of buffer was reached. _l_o_o_k_i_n_g-_a_t t if text after dot matches regular expression PAT. _s_t_r_i_n_g-_m_a_t_c_h Return index of start of first match for REGEXP in STRING, or nil. If third arg START is non-nil, start search at that index in STRING. _s_c_a_n-_b_u_f_f_e_r Scan from character number FROM for COUNT occurrences of character C. Returns the character number of the position after the character found. If not found, returns char number of beginning or end of buffer. _s_k_i_p-_c_h_a_r_s-_f_o_r_w_a_r_d Move dot forward, stopping before a char not in CHARS, or at position LIM. CHARS is like the inside of a [...] in a regular expression except that ] is never special and quotes ^, - or . Thus, with arg "a-zA-Z", this skips letters stopping before first nonletter. With arg "^a-zA-Z", skips nonletters stopping before first letter. _s_k_i_p-_c_h_a_r_s-_b_a_c_k_w_a_r_d Move dot backward, stopping after a char not in CHARS, or at position LIM. See skip-chars-forward for details. _s_e_a_r_c_h-_b_a_c_k_w_a_r_d May 13, 1985 - 27 - Search backward from dot for STRING. Set dot to the beginning of the occurrence found, and return t. An optional second argument bounds the search; it is a buffer position. The match found must not extend before that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, position at limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. _s_e_a_r_c_h-_f_o_r_w_a_r_d Search forward from dot for STRING. Set dot to the end of the occurrence found, and return t. An optional second argument bounds the search; it is a buffer position. The match found must not extend before that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. _w_o_r_d-_s_e_a_r_c_h-_b_a_c_k_w_a_r_d Search backward from dot for STRING, ignoring differences in punctuation. Set dot to the beginning of the occurrence found, and return t. An optional second argument bounds the search; it is a buffer position. The match found must not extend before that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. _w_o_r_d-_s_e_a_r_c_h-_f_o_r_w_a_r_d Search forward from dot for STRING, ignoring differences in punctuation. Set dot to the end of the occurrence found, and return t. An optional second argument bounds the search; it is a buffer position. The match found must not extend before that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. _r_e-_s_e_a_r_c_h-_b_a_c_k_w_a_r_d Search backward from dot for regular expression REGEXP. Set dot to the beginning of the occurrence found, and return t. An optional second argument bounds the search; it is a buffer position. The match found must not extend before that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. May 13, 1985 - 28 - _r_e-_s_e_a_r_c_h-_f_o_r_w_a_r_d Search forward from dot for regular expression REGEXP. Set dot to the end of the occurrence found, and return t. An optional second argument bounds the search; it is a buffer position. The match found must not extend before that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. _r_e_p_l_a_c_e-_m_a_t_c_h Replace text matched by last search with NEWTEXT. If second arg FIXEDCASE is non-nil, do not alter case of replacement text. Otherwise convert to all caps or cap initials, like replaced text. If third arg LITERAL is non-nil, insert NEWTEXT literally. Otherwise treat in NEWTEXT as "substitute original matched text" and as "substitute match for .) number ". Leaves dot at end of replacement text. _m_a_t_c_h-_b_e_g_i_n_n_i_n_g Return the character number of start of text matched by last regexp searched for. ARG, a number, specifies which parenthesized expression in the last regexp. Zero means the entire text matched by the whole regexp. _m_a_t_c_h-_e_n_d Return the character number of end of text matched by last regexp searched for. ARG, a number, specifies which parenthesized expression in the last regexp. Zero means the entire text matched by the whole regexp. _m_a_t_c_h-_d_a_t_a Return list containing all info on what the last search matched. _s_t_o_r_e-_m_a_t_c_h-_d_a_t_a Set internal data on last search match from elements of LIST. LIST should have been created by calling match-data previously. _r_e_g_i_o_n-_a_r_o_u_n_d-_m_a_t_c_h Put dot and the mark around the text matched by part of last regexp searched for. ARG, a number (the prefix arg, in interactive use) specifies which parenthesized expression in the last regexp. Zero means the entire text matched by the whole regexp. May 13, 1985 - 29 - _r_e_g_e_x_p-_q_u_o_t_e Return a regexp string which matches exactly STRING and nothing else. _u_n_d_o-_b_o_u_n_d_a_r_y Mark a boundary between units of undo. An undo command will stop at this point, but another undo command will undo to the previous boundary. _u_n_d_o-_m_o_r_e Undo back N undo-boundaries beyond what was already undone recently. Call undo-start to get ready to undo recent changes, then call undo-more one or more times to undo them. _u_n_d_o-_s_t_a_r_t Move undo-pointer to front of undo records. The next call to undo-more will undo the most recently made change. _c_o_n_s Create a new cons, give it CAR and CDR as components, and return it. _l_i_s_t Return a newly created list whose elements are the arguments (any number). _m_a_k_e-_l_i_s_t Return a newly created list of length LENGTH, with each element being INIT. _m_a_k_e-_v_e_c_t_o_r Return a newly created vector of length LENGTH, with each element being INIT. _v_e_c_t_o_r Return a newly created vector with our arguments (any number) as its elements. _m_a_k_e-_s_y_m_b_o_l Return a newly allocated uninterned symbol whose name is NAME. Its value and function definition are void, and its property list is NIL. May 13, 1985 - 30 - _m_a_k_e-_m_a_r_k_e_r Return a newly allocated marker which does not point at any place. _m_a_k_e-_s_t_r_i_n_g Return a newly created string of length LENGTH, with every element being INIT. Both LENGTH and INIT must be numbers. _p_u_r_e_c_o_p_y Make a copy of OBJECT in pure storage. Recursively copies contents of vectors and cons cells. Does not copy symbols. _g_a_r_b_a_g_e-_c_o_l_l_e_c_t Reclaim storage for Lisp objects no longer needed. Returns info on amount of space in use: ((USED-CONSES . FREE-CONSES) (USED-SYMS . FREE-SYMS) (USED-MARKERS . FREE-MARKERS) USED-STRING-CHARS USED-VECTOR-SLOTS) Garbage collection happens automatically if you cons more than gc-cons-threshold bytes of Lisp data since previous garbage collection. _e_q T if the two args are the same Lisp object. _n_u_l_l T if OBJECT is nil. _c_o_n_s_p T if OBJECT is a cons cell.. _a_t_o_m T if OBJECT is not a cons cell. This includes nil. _l_i_s_t_p T if OBJECT is a list. This includes nil. May 13, 1985 - 31 - _n_l_i_s_t_p T if OBJECT is not a list. Lists include nil. _i_n_t_e_g_e_r_p T if OBJECT is a number. _n_a_t_n_u_m_p T if OBJECT is a nonnegative number. _s_y_m_b_o_l_p T if OBJECT is a symbol. _v_e_c_t_o_r_p T if OBJECT is a vector. _s_t_r_i_n_g_p T if OBJECT is a string. _a_r_r_a_y_p T if OBJECT is an array (string or vector). _s_e_q_u_e_n_c_e_p T if OBJECT is a sequence (list of array). _b_u_f_f_e_r_p T if OBJECT is an editor buffer. _m_a_r_k_e_r_p T if OBJECT is a marker (editor pointer). _i_n_t_e_g_e_r-_o_r-_m_a_r_k_e_r-_p T if OBJECT is an integer or a marker (editor pointer). May 13, 1985 - 32 - _s_u_b_r_p T if OBJECT is a build-in function. _c_h_a_r-_o_r-_s_t_r_i_n_g-_p T if OBJECT is a character (a number) or a string. _c_a_r Returns the car of the specified cons cell. _c_d_r Returns the cdr of the specified cons cell. _s_e_t_c_a_r Set the car of CONSCELL to be NEWCAR. Returns NEWCAR. _s_e_t_c_d_r Set the cdr of CONSCELL to be NEWCDR. Returns NEWCDR. _b_o_u_n_d_p T if SYMBOL's value is not void. _f_b_o_u_n_d_p T if SYMBOL's function definition is not void. _m_a_k_u_n_b_o_u_n_d Make SYMBOL's value be void. _f_m_a_k_u_n_b_o_u_n_d Make SYMBOL's function definition be void. _s_y_m_b_o_l-_f_u_n_c_t_i_o_n Return SYMBOL's function definition. May 13, 1985 - 33 - _s_y_m_b_o_l-_p_l_i_s_t Return SYMBOL's property list. _s_y_m_b_o_l-_n_a_m_e Return SYMBOL's name, a string. _f_s_e_t Set SYMBOL's function definition to NEWVAL, and return NEWVAL. _s_e_t_p_l_i_s_t Set SYMBOL's property list to NEWVAL, and return NEWVAL. _s_y_m_b_o_l-_v_a_l_u_e Return SYMBOL's value. _d_e_f_a_u_l_t-_v_a_l_u_e Return SYMBOL's default value. This is the value that is seen in buffers that do not have their own values for this variable. _s_e_t Set SYMBOL's value to NEWVAL, and return NEWVAL. _s_e_t-_d_e_f_a_u_l_t Set SYMBOL's default value. This is the value that is seen in buffers that do not have their own values for this variable. _m_a_k_e-_v_a_r_i_a_b_l_e-_b_u_f_f_e_r-_l_o_c_a_l Make VARIABLE have a separate value for each buffer. The value you see with symbol-value at any time is the value for the current buffer. There is also a default value which is seen in any buffer which has not yet set its own value. The function default-value gets the default value and set-default sets it. Using set or setq to set the variable causes it to have a separate value for the current buffer if it was previously using the default value. May 13, 1985 - 34 - _m_a_k_e-_l_o_c_a_l-_v_a_r_i_a_b_l_e Make VARIABLE have a separate value in the current buffer. _k_i_l_l-_l_o_c_a_l-_v_a_r_i_a_b_l_e Make VARIABLE no longer have a separate value in the current buffer. >From now on the default value will apply in this buffer. _a_r_e_f Return the element of ARRAY at index INDEX. ARRAY may be a vector or a string. INDEX starts at 0. _a_s_e_t Store into the element of ARRAY at index INDEX the value NEWVAL. ARRAY may be a vector or a string. INDEX starts at 0. = T if two args, both numbers, are equal. < T if first arg is less than second arg. Both must be numbers. > T if first arg is greater than second arg. Both must be numbers. <= T if first arg is less than or equal to second arg. Both must be numbers. >= T if first arg is greater than or equal to second arg. Both must be numbers. /= T if first arg is not equal to second arg. Both must be numbers. May 13, 1985 - 35 - _z_e_r_o_p T if NUMBER is zero. _i_n_t-_t_o-_s_t_r_i_n_g Convert INT to a string by printing it in decimal, with minus sign if negative. _s_t_r_i_n_g-_t_o-_i_n_t Convert STRING to an integer by parsing it as a decimal number. Optional second arg FLAG non-nil means also convert "yes" to 1, "no" to 0. + Return sum of any number of numbers. - Negate number or subtract numbers. With one arg, negates it. With more than one arg, subtracts all but the first from the first. * Returns product of any number of numbers. / Returns first argument divided by rest of arguments. % Returns remainder of first arg divided by second. _m_a_x Return largest of all the arguments (which must be numbers.) _m_i_n Return smallest of all the arguments (which must be numbers.) May 13, 1985 - 36 - _l_o_g_a_n_d Return bitwise and of all the arguments (numbers). _l_o_g_i_o_r Return bitwise or of all the arguments (numbers). _l_o_g_x_o_r Return bitwise exclusive-or of all the arguments (numbers). _a_s_h Return VALUE with its bits shifted left by COUNT. If COUNT is negative, shifting is actually to the right. In this case, the sign bit is duplicated. _l_s_h Return VALUE with its bits shifted left by COUNT. If COUNT is negative, shifting is actually to the right. In this case, zeros are shifted in on the left. _1+ Return NUMBER plus one. _1- Return NUMBER minus one. _l_o_g_n_o_t Return the bitwise complement of ARG. _d_o_c_u_m_e_n_t_a_t_i_o_n Return the documentation string of FUNCTION. _S_n_a_r_f-_d_o_c_u_m_e_n_t_a_t_i_o_n May 13, 1985 - 37 - Used during Emacs initialization, before dumping runnable Emacs, to find pointers to doc strings stored in etc/DOCSTR... and record them in function definitions. One arg, FILENAME, a string which does not include a directory. The file is found in ../etc now; found in the exec-directory when doc strings are referred to later in the dumped Emacs. _c_h_a_r-_t_o-_s_t_r_i_n_g Convert arg CHAR to a string containing that character. _s_t_r_i_n_g-_t_o-_c_h_a_r Convert arg STRING to a character, the first character of that string. _d_o_t Return value of dot, as an integer. Beginning of buffer is position 1. _d_o_t-_m_a_r_k_e_r Return value of dot, as a marker object. _g_o_t_o-_c_h_a_r One arg, a number. Set dot to that number. Beginning of buffer is position 1. _m_a_r_k Return this buffer's mark value as integer, or nil if no mark. _m_a_r_k-_m_a_r_k_e_r Return this buffer's mark, as a marker object, or nil if no mark. Watch out! Moving this marker changes the buffer's mark. _s_e_t-_m_a_r_k Set this buffer's mark to POS; Argument is character position, or nil to clear out the mark. May 13, 1985 - 38 - _s_a_v_e-_e_x_c_u_r_s_i_o_n Save dot (and mark), execute BODY, then restore dot and mark. Executes BODY just like PROGN. Dot and mark values are restored even in case of abnormal exit (throw or error). _b_a_u_d-_r_a_t_e Return the output baud rate of the terminal. _b_u_f_f_e_r-_s_i_z_e Return the number of characters in the current buffer. _d_o_t-_m_i_n Return the minimum permissible value of dot in the current buffer. This is 1, unless a clipping restriction is in effect. _d_o_t-_m_i_n-_m_a_r_k_e_r Return a marker to the beginning of the currently visible part of the buffer. This is the beginning, unless a clipping restriction is in effect. _d_o_t-_m_a_x Return the minimum permissible value of dot in the current buffer. This is 1 plus the value of (buffer-size), unless a clipping restriction is in effect, in which case it is less. _d_o_t-_m_a_x-_m_a_r_k_e_r Return a marker to the end of the currently visible part of the buffer. This is the actual end, unless a clipping restriction is in effect. _f_o_l_l_o_w_i_n_g-_c_h_a_r Return the character following dot, as a number. _p_r_e_c_e_d_i_n_g-_c_h_a_r Return the character preceding dot, as a number. May 13, 1985 - 39 - _b_o_b_p Return T if dot is at the beginning of the buffer. _e_o_b_p Return T if dot is at the end of the buffer. _b_o_l_p Return T if dot is at the beginning of a line. _e_o_l_p Return T if dot is at the end of a line. _c_h_a_r-_a_f_t_e_r One arg, POS, a number. Return the character in the current buffer at position POS. If POS is out of range, the value is NIL. _u_s_e_r-_l_o_g_i_n-_n_a_m_e Return the name under which user logged in, as a string. _u_s_e_r-_f_u_l_l-_n_a_m_e Return the full name of the user logged in, as a string. _s_y_s_t_e_m-_n_a_m_e Return the name of the machine you are running on, as a string. _c_u_r_r_e_n_t-_t_i_m_e-_s_t_r_i_n_g Return the current time, as a human-readable string. _i_n_s_e_r_t Any number of args, strings or chars. Insert them after dot, moving dot forward. _b_u_f_f_e_r-_s_u_b_s_t_r_i_n_g May 13, 1985 - 40 - Return the contents of part of the current buffer as a string. The two arguments specify the start and end, as character numbers. _b_u_f_f_e_r-_s_t_r_i_n_g Return the contents of the current buffer as a string. _r_e_g_i_o_n-_t_o-_s_t_r_i_n_g Return the contents of the region as a string _i_n_s_e_r_t-_b_u_f_f_e_r-_s_u_b_s_t_r_i_n_g Insert before dot a substring of the contents buffer BUFFER. BUFFER may be a buffer or a buffer name. Arguments START and END are character numbers specifying the substring. They default to the beginning and the end of BUFFER. _s_u_b_s_t-_c_h_a_r-_i_n-_r_e_g_i_o_n >From START to END, replace FROMCHAR with TOCHAR each time it occurs. _d_e_l_e_t_e-_r_e_g_i_o_n Delete the text between dot and mark. When called from a program, expects two arguments, character numbers specifying the stretch to be deleted. _w_i_d_e_n Remove restrictions from current buffer, allowing full text to be seen and edited. _n_a_r_r_o_w-_t_o-_r_e_g_i_o_n Restrict editing in current buffer to text between present values of dot and mark. Called interactively, takes two arguments, character numbers that specify the stretch to restrict to. _s_a_v_e-_r_e_s_t_r_i_c_t_i_o_n May 13, 1985 - 41 - Execute the body, undoing at the end any changes to current buffer's restrictions. Changes to restrictions are made by narrow-to-region or by widen. Thus, the restrictions are the same after this function as they were before it. The value returned is that returned by the last form in the body. This function can be confused if, within the body, you widen and then make changes outside the area within the saved restrictions. _m_e_s_s_a_g_e Print a one-line message at the bottom of the screen. The first argument is a control string. It may contain %s or %d or %c to print successive following arguments. %s means print an argument as a string, %d means print as number in decimal, %c means print a number as a single character. The argument used by %s must be a string or a symbol; the argument used by %d or %c must be a number. _f_o_r_m_a_t Format a string out of a control-string and arguments. The first argument is a control string. It, and subsequent arguments substituted into it, become the value, which is a string. It may contain %s or %d or %c to substitute successive following arguments. %s means print an argument as a string, %d means print as number in decimal, %c means print a number as a single character. The argument used by %s must be a string or a symbol; the argument used by %d or %c must be a number. _c_h_a_r-_e_q_u_a_l T if args (both characters (numbers)) match. May ignore case. Case is ignored if the current buffer specifies to do so. _g_e_t_e_n_v One arg VAR, a string. Return the value of environment variable VAR, as a string. _c_a_l_l-_i_n_t_e_r_a_c_t_i_v_e_l_y Call FUNCTION, reading args from the terminal. if the interactive calling specs of FUNCTION request one. The function contains a specification of how to do the argument reading. In the case of user-defined functions, this is specified by placing a call to the function interactive at the top level of the function body. See interactive. May 13, 1985 - 42 - _p_r_e_f_i_x-_n_u_m_e_r_i_c-_v_a_l_u_e Return numeric meaning of raw prefix argument. A raw prefix argument is what you get from (interactive "P"). _o_r Eval args until one of them yields non-NIL, then return that value. The remaining args are not evalled at all. If all args return NIL, return NIL. _a_n_d Eval args until one of them yields NIL, then return NIL. The remaining args are not evalled at all. If no arg yields NIL, return the last arg's value. _i_f (if C T E...) if C yields non-NIL do T, else do E... Returns the value of T or the value of the last of the E's. There may be no E's; then if C yields NIL, the value is NIL. _c_o_n_d (cond CLAUSES...) tries each clause until one succeeds. Each clause looks like (C BODY...). C is evaluated and, if the value is non-nil, this clause succeeds: then the expressions in BODY are evaluated and the last one's value is the value of the cond expression. If a clause looks like (C), C's value if non-nil is returned from cond. If no clause succeeds, cond returns nil. _p_r_o_g_n Eval arguments in sequence, and return the value of the last one. _p_r_o_g_1 Eval arguments in sequence, then return the FIRST arg's value. This value is saved during the evaluation of the remaining args, whose values are discarded. _p_r_o_g_2 May 13, 1985 - 43 - Eval arguments in sequence, then return the SECOND arg's value. This value is saved during the evaluation of the remaining args, whose values are discarded. _s_e_t_q (setq SYM VAL SYM VAL ...) sets each SYM to the value of its VAL. The SYMs are not evaluated. Thus (setq x y) sets x to the value of y. Each SYM is set before the next VAL is computed. _q_u_o_t_e Return the argument, without evaluating it. (quote x) yields x. _f_u_n_c_t_i_o_n Quote a function object. Equivalent to the quote function in the interpreter, but causes the compiler to compile the argument as a function if it is not a symbol. _i_n_t_e_r_a_c_t_i_v_e-_p Return t if function in which this appears was called interactively. Also, input must be coming from the terminal. _d_e_f_u_n (defun NAME ARGLIST [DOCSTRING] BODY...) defines NAME as a function. The definition is (lambda ARGLIST [DOCSTRING] BODY...). See also the function interactive . _d_e_f_m_a_c_r_o (defmacro NAME ARGLIST [DOCSTRING] BODY...) defines NAME as a macro. The definition is (macro lambda ARGLIST [DOCSTRING] BODY...). When the macro is called, as in (NAME ARGS...), the function (lambda ARGLIST BODY...) is applied to the list ARGS... as it appears in the expression, and the result should be a form to be evaluated instead of the original. _d_e_f_v_a_r May 13, 1985 - 44 - (defvar SYMBOL INITVALUE DOCSTRING) defines SYMBOL as an advertised variable. INITVALUE is evaluated, and used to set SYMBOL, only if SYMBOL's value is void. INITVALUE and DOCSTRING are optional. If DOCSTRING starts with *, this variable is identified as a user option. If INITVALUE is missing, SYMBOL's value is not set. _d_e_f_c_o_n_s_t (defconst SYMBOL INITVALUE DOCSTRING) defines SYMBOL as an advertised constant. The intent is that programs do not change this value (but users may). Always sets the value of SYMBOL to the result of evalling INITVALUE. DOCSTRING is optional. If DOCSTRING starts with *, this variable is identified as a user option. _l_e_t* (let* VARLIST BODY...) binds variables according to VARLIST then executes BODY. The value of the last form in BODY is returned. Each element of VARLIST is a symbol (which is bound to NIL) or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM). Each VALUEFORM can refer to the symbols already bound by this VARLIST. _l_e_t (let VARLIST BODY...) binds variables according to VARLIST then executes BODY. The value of the last form in BODY is returned. Each element of VARLIST is a symbol (which is bound to NIL) or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM). All the VALUEFORMs are evalled before any symbols are bound. _w_h_i_l_e (while TEST BODY...) if TEST yields non-NIL, execute the BODY forms and repeat. _m_a_c_r_o_e_x_p_a_n_d If FORM is a macro call, expand it. If the result of expansion is another macro call, expand it, etc. Return the ultimate expansion. _c_a_t_c_h (catch TAG BODY...) perform BODY allowing nonlocal exits using (throw TAG). TAG is evalled to get the tag to use. throw to that tag exits this catch. Then the BODY is executed. If no throw happens, the value of the last BODY form is returned from catch. If a throw happens, it specifies the value to return from catch. May 13, 1985 - 45 - _t_h_r_o_w (throw TAG VALUE): throw to the catch for TAG and return VALUE from it. Both TAG and VALUE are evalled. _u_n_w_i_n_d-_p_r_o_t_e_c_t (unwind-protect BODYFORM UNWINDFORMS...) do BODYFORM, protecting with UNWINDFORMS. If BODYFORM completes normally, its value is returned after executing the UNWINDFORMS. If BODYFORM exits nonlocally, the UNWINDFORMS are executed anyway. _c_o_n_d_i_t_i_o_n-_c_a_s_e Regain control when an error is signaled. (condition-case VAR BODYFORM HANDLERS...) executes BODYFORM and returns its value if no error happens. Each element of HANDLERS looks like (CONDITIONLIST BODY...) CONDITIONLIST is a list of condition names. The handler applies if the error has any of those condition names. When this is so, control returns to the condition-case and the handler BODY... is executed with VAR bound to (SIGNALED-CONDITIONS . SIGNAL-DATA). The value of the last BODY form is returned from the condition-case. See SIGNAL for more info. _s_i_g_n_a_l Signal an error. Args are SIGNAL-NAME, and associated DATA. A signal name is a symbol with an error-conditions property that is a list of condition names. DATA can be anything. A handlers for any of those names will get to handle this signal. The symbol error should always be one of them. _f_u_n_c_t_i_o_n-_t_y_p_e Return a symbol indicating what type of function the argument is. It may be lambda, subr or autoload. _c_o_m_m_a_n_d_p T if FUNCTION makes provisions for interactive calling. This means it contains a description for how to read arguments to give it. The value is nil for an invalid function or a symbol with no function definition. _a_u_t_o_l_o_a_d May 13, 1985 - 46 - Define FUNCTION to autoload from FILE. FUNCTION is a symbol; FILE is a file name string to pass to load. Third arg DOCSTRING is documentation for the function. Fourth arg INTERACTIVE if non-nil says function can be called interactively. Third and fourth args give info about the real definition. They default to nil. _e_v_a_l Evaluate FORM and return its value. _a_p_p_l_y Call FUNCTION with arguments being the elements of ARGS. _f_u_n_c_a_l_l Call first argument as a function, passing remaining arguments to it. Thus, (funcall 'cons 'x 'y) returns (x . y). _g_l_o_b_a_l-_v_a_l_u_e Return the global value of VARIABLE, even if other bindings of it exist currently. Normal evaluation of VARIABLE would get the innermost binding. _g_l_o_b_a_l-_s_e_t Set the global binding of VARIABLE to VALUE, ignoring other bindings. Normal setting of VARIABLE with set would set the innermost binding. _b_a_c_k_t_r_a_c_e-_d_e_b_u_g Set the debug-on-exit flag of eval frame LEVEL levels down to FLAG. The debugger is entered when that frame exits, if the flag is non-nil. _b_a_c_k_t_r_a_c_e Print a trace of Lisp function calls currently active. Output stream used is value of standard-output. _i_d_e_n_t_i_t_y Return the argument unchanged. May 13, 1985 - 47 - _r_a_n_d_o_m Return a pseudo-random number. _l_e_n_g_t_h Return the length of vector, list or string SEQUENCE. _s_t_r_i_n_g-_e_q_u_a_l T if two strings have identical contents. Symbols are also allowed; their print names are used instead. _s_t_r_i_n_g-_l_e_s_s_p T if first arg string is less than second in lexicographic order. Symbols are also allowed; their print names are used instead. _a_p_p_e_n_d Concatenate arguments and make the result a list. The result is a list whose elements are the elements of all the arguments. Each argument may be a list, vector or string. _c_o_n_c_a_t Concatenate arguments and make the result a string. The result is a list whose elements are the elements of all the arguments. Each argument may be a list, vector or string. However, if any element of an argument is not a number, an error results. _v_c_o_n_c_a_t Concatenate arguments and make the result a vector. The result is a list whose elements are the elements of all the arguments. Each argument may be a list, vector or string. _c_o_p_y-_s_e_q_u_e_n_c_e Return a copy of a list, vector or string. _s_u_b_s_t_r_i_n_g Return a substring of STRING, starting at index FROM and reaching until TO. TO may be nil or omitted; then the substring runs to the end of STRING. May 13, 1985 - 48 - _n_t_h_c_d_r Takes cdr N times on LIST, returns the result. _n_t_h Returns the Nth element of LIST. _e_l_t Returns element of SEQUENCE at index N. _m_e_m_q Returns non-nil if ELT is an element of LIST. Comparison done with EQ. The value is actually the tail of LIST whose car is ELT. _a_s_s_q Returns non-nil if ELT is the car of an element of LIST. Comparison done with eq. The value is actually the element of LIST whose car is ELT. _a_s_s_o_c Returns non-nil if ELT is the car of an element of LIST. Comparison done with equal. The value is actually the element of LIST whose car is ELT. _r_a_s_s_q Returns non-nil if ELT is the cdr of an element of LIST. Comparison done with EQ. The value is actually the element of LIST whose cdr is ELT. _d_e_l_q Deletes by side effect any occurrences of ELT as a member of LIST. The modified LIST is returned. If the first member of LIST is ELT, there is no way to remove it by side effect; therefore, write (setq foo (delq element foo)) to be sure of changing foo. _n_r_e_v_e_r_s_e Reverses LIST by modifying cdr pointers. Returns the beginning of the reversed list. May 13, 1985 - 49 - _r_e_v_e_r_s_e Reverses LIST, copying. Returns the beginning of the reversed list. _s_o_r_t Sort LIST, comparing elements using PREDICATE. Returns the sorted list. LIST is modified by side effects. PREDICATE is called with two elements of LIST, and should return T if the first element is "less" than the second. _g_e_t Return the value of SYMBOL's PROPNAME property. This is the last VALUE stored with (put SYMBOL PROPNAME VALUE). _p_u_t Store SYMBOL's PROPNAME property with value VALUE. It can be retrieved with (get SYMBOL PROPNAME). _e_q_u_a_l T if two Lisp objects have similar structure and contents. They must have the same data type. Conses are compared by comparing the cars and the cdrs. Vectors and strings are compared element by element. Numbers are compared by value. Symbols must match exactly. _f_i_l_l_a_r_r_a_y Store each element of ARRAY with ITEM. ARRAY is a vector or string. _n_c_o_n_c Concatenate any number of lists by altering them. Only the last argument is not altered, and need not be a list. _m_a_p_c_o_n_c_a_t Apply FN to each element of SEQ, and concat the results as strings. In between each pair of results, stick in SEP. Thus, " " as SEP results in spaces between the values return by FN. May 13, 1985 - 50 - _m_a_p_c_a_r Apply FUNCTION to each element of LIST, and make a list of the results. THe result is a list just as long as LIST. _y-_o_r-_n-_p Ask user a y or n question. Return t if answer is y. No confirmation of the answer is requested; a single character is enough. _y_e_s-_o_r-_n_o-_p Ask user a yes or no question. Return t if answer is yes. The user must confirm the answer with a newline, and can rub it out if not confirmed. _w_r_i_t_e-_c_h_a_r Output character CHAR to stream STREAM. STREAM defaults to the value of standard-output (which see). _w_i_t_h-_o_u_t_p_u_t-_t_o-_t_e_m_p-_b_u_f_f_e_r Binding standard-output to buffer named BUFNAME, execute BODY then display the buffer. The buffer is cleared out initially, and marked as unmodified when done. All output done by BODY is inserted in that buffer by default. It is displayed in another window, but not selected. The value of the last form in BODY is returned. _t_e_r_p_r_i Output a newline to STREAM (or value of standard-output). _p_r_i_n_1 Output the printed representation of OBJECT, any Lisp object. Quoting characters are used, to make output that read can handle whenever this is possible. Output stream is STREAM, or value of standard-output (which see). _p_r_i_n_c Output the printed representation of OBJECT, any Lisp object. No quoting characters are used; no delimiters are printed around the contents of strings. Output stream is STREAM, or value of standard-output (which see). May 13, 1985 - 51 - _p_r_i_n_t Output the printed representation of OBJECT, with newline before and space after. Quoting characters are used, to make output that read can handle whenever this is possible. Output stream is STREAM, or value of standard-output (which see). _r_e_a_d-_c_h_a_r Read a character from the command input (keyboard or macro). It is returned as a number. _g_e_t-_f_i_l_e-_c_h_a_r Don't use this yourself. _l_o_a_d Execute a file of Lisp code named FILE. First tries FILE with .elc appended, then tries with .el, then tries FILE unmodified. Searches directories in load-path. If optional second arg MISSING-OK is non-nil, report no error if FILE doesn't exist. Print messages at start and end of loading unless optional third arg NOMESSAGE is non-nil. Return t if file exists. _e_v_a_l-_c_u_r_r_e_n_t-_b_u_f_f_e_r Execute the current buffer as Lisp code. Programs can pass argument PRINTFLAG which controls printing of output: nil means discard it; anything else is stream for print. _e_v_a_l-_r_e_g_i_o_n Execute the region as Lisp code. When called from programs, expects two arguments, giving starting and ending indices in the current buffer of the text to be executed. Programs can pass third argument PRINTFLAG which controls printing of output: nil means discard it; anything else is stream for print. _r_e_a_d May 13, 1985 - 52 - Read one Lisp expression as text from STREAM, return as Lisp object. If STREAM is nil, use the value of standard-input (which see). STREAM or standard-input may be: a buffer (read from dot and advance it) a marker (read from where it points and advance it) a function (call it with no arguments for each character) t (read text line using minibuffer and use it). _i_n_t_e_r_n Return the symbol whose name is STRING. A second optional argument specifies the obarray to use; it defaults to the value of obarray. _i_n_t_e_r_n-_s_o_f_t Return the symbol whose name is STRING, or nil if none exists yet. A second optional argument specifies the obarray to use; it defaults to the value of obarray. _m_a_p_a_t_o_m_s Call FUNCTION on every symbol in OBARRAY. OBARRAY defaults to the value of obarray. _m_a_k_e-_a_b_b_r_e_v-_t_a_b_l_e Create a new, empty abbrev table object. _c_l_e_a_r-_a_b_b_r_e_v-_t_a_b_l_e Undefine all abbrevs in abbrev table TABLE, leaving it empty. _d_e_f_i_n_e-_a_b_b_r_e_v Define an abbrev in TABLE named NAME, to expand to EXPANSION or call HOOK. NAME and EXPANSION are strings. HOOK is a function or nil. To undefine an abbrev, define it with EXPANSION = nil _d_e_f_i_n_e-_g_l_o_b_a_l-_a_b_b_r_e_v Define ABBREV as a global abbreviation for EXPANSION. May 13, 1985 - 53 - _d_e_f_i_n_e-_m_o_d_e-_a_b_b_r_e_v Define ABBREV as a mode-specific abbreviation for EXPANSION. _a_b_b_r_e_v-_s_y_m_b_o_l Return the symbol representing abbrev named ABBREV. Value is nil if that abbrev is not defined. Optional second arg TABLE is abbrev table to look it up in. Default is try buffer's mode-specific abbrev table, then global table. _a_b_b_r_e_v-_e_x_p_a_n_s_i_o_n Return the string that ABBREV expands into in the current buffer. Optionally specify an abbrev table; then ABBREV is looked up in that table only. _e_x_p_a_n_d-_a_b_b_r_e_v Expand the abbrev before dot, if it is an abbrev. Returns t if expansion took place. _u_n_e_x_p_a_n_d-_a_b_b_r_e_v Undo the expansion of the last abbrev that expanded. _l_a_s_t-_a_b_b_r_e_v-_e_x_p_a_n_s_i_o_n Return expansion of last abbrev expanded, or nil. _i_n_s_e_r_t-_a_b_b_r_e_v-_t_a_b_l_e-_d_e_s_c_r_i_p_t_i_o_n Insert before dot a description of abbrev table named NAME. NAME is a symbol whose value is an abbrev table. If 2nd arg READABLE is non-nil, a readable description is inserted. Otherwise description is an expression, a call to define-abbrev-table which would define NAME exactly as it is currently defined. _d_e_f_i_n_e-_a_b_b_r_e_v-_t_a_b_l_e Define TABNAME (a symbol) as an abbrev table name. Define abbrevs in it according to DEFINITIONS, a list of elements of the form (ABBREVNAME EXPANSION HOOK USECOUNT). May 13, 1985 - 54 - _s_y_n_t_a_x-_t_a_b_l_e-_p Return t if ARG is a syntax table. Any vector of 256 elements will do. _s_y_n_t_a_x-_t_a_b_l_e Return the current syntax table. This is the one specified by the current buffer. _s_t_a_n_d_a_r_d-_s_y_n_t_a_x-_t_a_b_l_e Return the standard syntax table. This is the one used for new buffers. _m_a_k_e-_s_y_n_t_a_x-_t_a_b_l_e Construct a new syntax table and return it. It is a copy of the standard syntax table's current contents. _s_e_t-_s_y_n_t_a_x-_t_a_b_l_e Select a new syntax table for the current buffer. One argument, a syntax table. _c_h_a_r-_s_y_n_t_a_x Return the syntax code of CHAR, described by a character. For example, if CHAR is a word constituent, ?w is returned. The characters that correspond to various syntax codes are listed in the documentation of modify-syntax-entry. _d_e_s_c_r_i_b_e-_s_y_n_t_a_x Describe the syntax specifications in the syntax table. The descriptions are inserted in a buffer, which is selected so you can see it. _f_o_r_w_a_r_d-_w_o_r_d Move dot forward ARG words (backward if ARG is negative). Normally returns t. If an edge of the buffer is reached, dot is left there and nil is returned. May 13, 1985 - 55 - _s_c_a_n-_l_i_s_t_s Scan from character number FROM by COUNT lists. Returns the character number of the position thus found. If DEPTH is nonzero, paren depth begins counting from that value, only places where the depth in parentheses becomes zero are candidates for stopping; COUNT such places are counted. Thus, a positive value for DEPTH means go out levels. Comments are ignored if parse-sexp-ignore-comments is non-nil. If the beginning or end of (the visible part of) the buffer is reached and the depth is wrong, an error is signaled. If the depth is right but the count is not used up, nil is returned. _s_c_a_n-_s_e_x_p_s Scan from character number FROM by COUNT balanced expressions. Returns the character number of the position thus found. Comments are ignored if parse-sexp-ignore-comments is non-nil. If the beginning or end of (the visible part of) the buffer is reached in the middle of a parenthetical grouping, an error is signaled. If the beginning or end is reached between groupings but before count is used up, nil is returned. _b_a_c_k_w_a_r_d-_p_r_e_f_i_x-_c_h_a_r_s Move dot backward over any number of chars with syntax "prefix". _f_i_n_d-_l_i_n_e-_c_o_m_m_e_n_t Find the first comment-beginning after dot and on the same line as dot. Value is the character number of the comment-starter, or nil if there is none. _f_i_n_d-_l_i_n_e-_c_o_m_m_e_n_t-_b_o_d_y Find the first comment-beginning after dot and on the same line as dot. Value is the character number after the comment-starter, or nil if there is none. _m_l-_d_e_f_u_n Define mocklisp functions May 13, 1985 - 56 - _m_l-_i_f if for mocklisp programs _m_l-_w_h_i_l_e while for mocklisp programs _m_l-_n_a_r_g_s # arguments to this mocklisp function _m_l-_a_r_g Argument #N to this mocklisp function. _m_l-_i_n_t_e_r_a_c_t_i_v_e true if this mocklisp function was called interactively. _m_l-_p_r_o_v_i_d_e-_p_r_e_f_i_x-_a_r_g_u_m_e_n_t Evaluate second argument, using first argument as prefix arg value. _m_l-_p_r_e_f_i_x-_a_r_g_u_m_e_n_t-_l_o_o_p _m_l-_s_u_b_s_t_r Return a substring of STRING, starting at index FROM and of length LENGTH. If either FROM or LENGTH is negative, the length of STRING is added to it. _i_n_s_e_r_t-_s_t_r_i_n_g Insert the arguments (all strings) into the buffer, moving dot forward. Any argument that is a number is converted to a string by printing it in decimal. _b_y_t_e-_c_o_d_e May 13, 1985 - 57 - _p_r_o_c_e_s_s_p Return t if OBJECT is a process. _g_e_t-_p_r_o_c_e_s_s Return the process named NAME, or nil if there is none. _g_e_t-_b_u_f_f_e_r-_p_r_o_c_e_s_s Return the (or, a) process associated with BUFFER. BUFFER may be a buffer or the name of one. _d_e_l_e_t_e-_p_r_o_c_e_s_s Delete PROCESS: kill it and forget about it immediately. PROCESS may be a process or the name of one, or a buffer name. _p_r_o_c_e_s_s-_s_t_a_t_u_s Return the status of PROCESS: a symbol, one of these: run -- for a process that is running. stop -- for a process stopped but continuable. exit -- for a process that has exited. signal -- for a process that has got a fatal signal. command -- for a command channel opened to Emacs by another process. external -- for an i/o channel opened to Emacs by another process. _p_r_o_c_e_s_s-_i_d Return the process id of PROCESS. This is the pid of the Unix process which PROCESS uses or talks to. _p_r_o_c_e_s_s-_n_a_m_e Return the name of PROCESS, as a string. This is the name of the program invoked in PROCESS, possibly modified to make it unique among process names. _p_r_o_c_e_s_s-_c_o_m_m_a_n_d Return the command that was executed to start PROCESS. This is a list of strings, the first string being the program executed and the rest of the strings being the arguments given to it. For a non-child channel, this is nil. May 13, 1985 - 58 - _s_e_t-_p_r_o_c_e_s_s-_b_u_f_f_e_r Set buffer associated with PROCESS to BUFFER. _p_r_o_c_e_s_s-_b_u_f_f_e_r Return the buffer PROCESS is associated with. Output from PROCESS is inserted in this buffer unless PROCESS has a filter. _p_r_o_c_e_s_s-_m_a_r_k Return the marker for the end of the last output from PROCESS. _s_e_t-_p_r_o_c_e_s_s-_f_i_l_t_e_r Give PROCESS the filter function FILTER; nil means no filter. When a process has a filter, each time it does output the entire string of output is passed to the filter. The filter gets two arguments: the process and the string of output. If the process has a filter, its buffer is not used for output. _p_r_o_c_e_s_s-_f_i_l_t_e_r Returns the filter function of PROCESS; nil if none. See set-process-filter for more info on filter functions. _s_e_t-_p_r_o_c_e_s_s-_s_e_n_t_i_n_e_l Give PROCESS the sentinel SENTINEL; nil for none. The sentinel is called as a function when the process changes state. It gets two arguments: the process, and a string describing the change. _p_r_o_c_e_s_s-_s_e_n_t_i_n_e_l Return the sentinel of PROCESS; nil if none. See set-process-sentinel for more info on sentinels. _p_r_o_c_e_s_s-_k_i_l_l-_w_i_t_h_o_u_t-_q_u_e_r_y Say no query needed if this process is running when Emacs is exited. _l_i_s_t-_p_r_o_c_e_s_s_e_s May 13, 1985 - 59 - Display a list of all processes and comm channels. First two columns are S for subprocess, C for command channel, or X for external I/O channel. (Any processes listed as Exited or Signaled are actually eliminated after the listing is made.) _s_t_a_r_t-_p_r_o_c_e_s_s Start a program in a subprocess. Return the process object for it. First arg is name for process. It is modified if nec to make it unique. Second arg is buffer to associate with the process (or buffer name). Process output goes at end of that buffer, unless you specify an output stream or filter function to handle the output. Third arg is program file name. It is searched for as in the shell. Remaining arguments are strings to give program as arguments. _s_e_n_d-_r_e_g_i_o_n Send current contents of region as input to PROCESS. PROCESS may be a process name. Called from program, takes three arguments, PROCESS, START and END. _s_e_n_d-_s_t_r_i_n_g Send PROCESS the contents of STRING as input. PROCESS may be a process name. _i_n_t_e_r_r_u_p_t-_p_r_o_c_e_s_s Interrupt process PROCESS. May be process or name of one. Nil or no arg means current buffer's process. Second arg CURRENT-GROUP non-nil means send signal to the current process-group of the process's controlling terminal rather than to the process's own process group. If the process is a shell, this means interrupt current subjob rather than the shell. _k_i_l_l-_p_r_o_c_e_s_s Kill process PROCESS. May be process or name of one. See function interrupt-process for more details on usage. _q_u_i_t-_p_r_o_c_e_s_s Send QUIT signal to process PROCESS. May be process or name of one. See function interrupt-process for more details on usage. May 13, 1985 - 60 - _s_t_o_p-_p_r_o_c_e_s_s Stop process PROCESS. May be process or name of one. See function interrupt-process for more details on usage. _c_o_n_t_i_n_u_e-_p_r_o_c_e_s_s Continue process PROCESS. May be process or name of one. See function interrupt-process for more details on usage. _p_r_o_c_e_s_s-_s_e_n_d-_e_o_f Make PROCESS see end-of-file in its input. Eof comes after any text already sent to it. Nil or no arg means current buffer's process. _c_a_l_l-_p_r_o_c_e_s_s Call PROGRAM in separate process. Program's input comes from file INFILE (nil means /dev/null). Insert output in BUFFER before dot; t means current buffer; nil for BUFFER means discard it; 0 means discard and don't wait. Fourth arg DISPLAY non-nil means redisplay buffer as output is inserted. Remaining arguments are strings passed as command arguments to PROGRAM. This function waits for PROGRAM to terminate; if you quit, the process is killed. _c_a_l_l-_p_r_o_c_e_s_s-_r_e_g_i_o_n Send text from START to END to a process running PROGRAM. Delete it if DELETE is non-nil. Put output in BUFFER, before dot. nil => discard it, t => current buffer. Sixth arg DISPLAY non-nil means redisplay buffer as output is inserted. Remaining args are passed to PROGRAM at startup as command args. This function normally waits for the process to terminate; if you quit, the process is killed. _o_p_e_n-_l_i_n_e Insert a newline and leave dot before it. With arg, inserts that many newlines. _s_p_l_i_t-_l_i_n_e Split current line, moving portion beyond dot vertically down. May 13, 1985 - 61 - _q_u_o_t_e_d-_i_n_s_e_r_t Read next input character and insert it. Useful for inserting control characters. _d_e_l_e_t_e-_i_n_d_e_n_t_a_t_i_o_n Join this line to previous and fix up whitespace at join. With argument, join this line to following line. _d_e_l_e_t_e-_h_o_r_i_z_o_n_t_a_l-_s_p_a_c_e Delete all spaces and tabs around dot. _j_u_s_t-_o_n_e-_s_p_a_c_e Delete all spaces and tabs around dot, leaving one space. _d_e_l_e_t_e-_b_l_a_n_k-_l_i_n_e_s On blank line, delete all surrounding blank lines, leaving just one. On isolated blank line, delete that one. On nonblank line, delete all blank lines that follow it. _b_a_c_k-_t_o-_i_n_d_e_n_t_a_t_i_o_n Move dot to the first non-whitespace character on this line. _n_e_w_l_i_n_e-_a_n_d-_i_n_d_e_n_t Insert a newline, then indent according to mode, like Tab. _b_a_c_k_w_a_r_d-_d_e_l_e_t_e-_c_h_a_r-_u_n_t_a_b_i_f_y Delete characters backward, changing tabs into spaces. Delete ARG chars, and kill (save in kill ring) if KILLP is non-nil. Interactively, ARG is the prefix arg (default 1) and KILLP is t if prefix arg is was specified. _z_a_p-_t_o-_c_h_a_r Kill up to (but not incl) ARG'th occurrence of CHAR. Goes backward if ARG is negative; goes to end of buffer if CHAR not found. May 13, 1985 - 62 - _b_e_g_i_n_n_i_n_g-_o_f-_b_u_f_f_e_r Move dot to the beginning of the buffer; leave mark at previous position. With arg N, put dot N/10 of the way from the true beginning. _e_n_d-_o_f-_b_u_f_f_e_r Move dot to the end of the buffer; leave mark at previous position. With arg N, put dot N/10 of the way from the true end. _m_a_r_k-_b_e_g_i_n_n_i_n_g-_o_f-_b_u_f_f_e_r Set mark at the beginning of the buffer. _m_a_r_k-_e_n_d-_o_f-_b_u_f_f_e_r Set mark at the end of the buffer. _m_a_r_k-_w_h_o_l_e-_b_u_f_f_e_r Put dot at beginning and mark at end of buffer. _c_o_u_n_t-_l_i_n_e_s Return number of newlines between START and END. _u_p_c_a_s_e-_c_h_a_r Uppercasify ARG chars starting from dot. _f_u_n_d_a_m_e_n_t_a_l-_m_o_d_e Major mode not specialized for anything in particular. Other major modes are defined by comparison with this one. _e_v_a_l-_e_x_p_r_e_s_s_i_o_n Evaluate EXPRESSION and print value in minibuffer. Value is also consed on to front of variable values 's value. _r_e_p_e_a_t-_c_o_m_p_l_e_x-_c_o_m_m_a_n_d May 13, 1985 - 63 - Repeat last complex command, or ARGth from last. A complex command is one which prompted for and read arguments via the interactive calling mechanism. Prefix args don't count. No ARG counts as arg of 1, meaning most recent command. _g_o_t_o-_l_i_n_e Goto line ARG, counting from line 1 at beginning of buffer. _u_n_d_o Undo some previous changes. Repeat this command to undo more changes. A numeric argument serves as a repeat count. _s_h_e_l_l-_c_o_m_m_a_n_d Execute string COMMAND in inferior shell; display output, if any. Optional second arg non-nil (prefix arg, if interactive) means insert output in current buffer after dot (leave mark after it). _s_h_e_l_l-_c_o_m_m_a_n_d-_o_n-_r_e_g_i_o_n Execute string COMMAND in inferior shell with region as input. Normally display output (if any) in temp buffer; Prefix arg means replace the region with it. Noninteractive args are START, END, COMMAND, FLAG. _u_n_i_v_e_r_s_a_l-_a_r_g_u_m_e_n_t Begin a numeric argument for the following command. Digits or minus sign following this command make up the numeric argument. If no digits or minus sign follow, this command by itself provides 4 as argument. Used more than once, this command multiplies the argument by 4 each time. _d_i_g_i_t-_a_r_g_u_m_e_n_t Part of the numeric argument for the next command. _n_e_g_a_t_i_v_e-_a_r_g_u_m_e_n_t Begin a negative numeric argument for the next command. May 13, 1985 - 64 - _f_o_r_w_a_r_d-_t_o-_i_n_d_e_n_t_a_t_i_o_n Move forward ARG lines and position at first nonblank character. _b_a_c_k_w_a_r_d-_t_o-_i_n_d_e_n_t_a_t_i_o_n Move backward ARG lines and position at first nonblank character. _k_i_l_l-_l_i_n_e Kill the rest of the current line; before a newline, kill the newline. With prefix argument, kill that many lines from dot. Negative arguments kill lines backward. When calling from a program, nil means "no arg", a number counts as a prefix arg. _k_i_l_l-_r_e_g_i_o_n Kill between point and mark. The text is deleted but saved in the kill ring. The command yank can retrieve it from there. This is the primitive for programs to kill text (as opposed to deleting it). Supply two arguments, character numbers indicating the stretch of text to be killed. Any command that calls this function is a "kill command". If the previous command was also a kill command, the text killed this time appends to the text killed last time to make one entry in the kill ring. _k_i_l_l-_r_i_n_g-_s_a_v_e Save the region on the kill ring but don't kill it. _a_p_p_e_n_d-_n_e_x_t-_k_i_l_l Cause following command, if kill, to append to previous kill. _r_o_t_a_t_e-_y_a_n_k-_p_o_i_n_t_e_r Rotate the yanking point in the kill ring. _y_a_n_k-_p_o_p May 13, 1985 - 65 - Replace just-yanked stretch of killed-text with a different stretch. This command is allowed only immediately after a yank or a yank-pop. At such a time, the region contains a stretch of reinserted previously-killed text. yank-pop deletes that text and inserts in its place a different stretch of killed text. With no argument, the previous kill is inserted. With argument n, the n'th previous kill is inserted. If n is negative, this is a more recent kill. The sequence of kills wraps around, so that after the oldest one comes the newest one. _y_a_n_k Reinsert the last stretch of killed text. More precisely, reinsert the stretch of killed text most recently killed OR yanked. With just C-U as argument, same but put dot in front (and mark at end). With argument n, reinsert the nth most recently killed stretch of killed text. See also the command yank-pop. _i_n_s_e_r_t-_b_u_f_f_e_r Insert after dot the contents of BUFFER. Puts mark after the inserted text. BUFFER may be a buffer or a buffer name. _a_p_p_e_n_d-_t_o-_b_u_f_f_e_r Append to specified buffer the text of the region. It is inserted into that buffer before its dot. When calling from a program, give three arguments: a buffer or the name of one, and two character numbers specifying the portion of the current buffer to be copied. _p_r_e_p_e_n_d-_t_o-_b_u_f_f_e_r Prepend to specified buffer the text of the region. It is inserted into that buffer after its dot. When calling from a program, give three arguments: a buffer or the name of one, and two character numbers specifying the portion of the current buffer to be copied. _c_o_p_y-_t_o-_b_u_f_f_e_r May 13, 1985 - 66 - Copy to specified buffer the text of the region. It is inserted into that buffer, replacing existing text there. When calling from a program, give three arguments: a buffer or the name of one, and two character numbers specifying the portion of the current buffer to be copied. _s_e_t-_m_a_r_k-_c_o_m_m_a_n_d Set mark at where dot is, or jump to mark. With no argument, set mark, and push previous mark on mark ring. With argument, jump to mark, and pop into mark off the mark ring. _p_u_s_h-_m_a_r_k Set mark at location (dot, by default) and push old mark on mark ring. _p_o_p-_m_a_r_k Pop off mark ring into the buffer's actual mark. Does not set dot. Does nothing if mark ring is empty. _e_x_c_h_a_n_g_e-_d_o_t-_a_n_d-_m_a_r_k Put the mark where dot is now, and dot where the mark is now. _n_e_x_t-_l_i_n_e Move cursor vertically down. If there is no character in the next line exactly under the current column, the cursor is positioned after the character in that line which spans this column, or at the end of the line if it is not long enough. If there is no line in the buffer after this one, a newline character is inserted to create a line and the cursor moves to that line. The command set-goal-column can be used to create a semipermanent goal column which this command always moves to. Then it does not try to move vertically. _p_r_e_v_i_o_u_s-_l_i_n_e May 13, 1985 - 67 - Move cursor vertically down. If there is no character in the next line exactly under the current column, the cursor is positioned after the character in that line which spans this column, or at the end of the line if it is not long enough. The command set-goal-column can be used to create a semipermanent goal column which this command always moves to. Then it does not try to move vertically. _s_e_t-_g_o_a_l-_c_o_l_u_m_n Set the current horizontal position as a goal for next-line and previous-line. Those commands will move to this position in the line moved to rather than trying to keep the same horizontal position. set-goal-column with a non-nil argument clears out the goal column so that next-line and previous-line resume vertical motion. _t_r_a_n_s_p_o_s_e-_c_h_a_r_s Interchange characters around dot, moving forward one character. With prefix arg ARG, effect is to take character before dot and drag it forward past ARG other characters (backward if ARG negative). If no argument and at end of line, the previous two chars are exchanged. _t_r_a_n_s_p_o_s_e-_w_o_r_d_s Interchange words around dot, leaving dot at end of them. With prefix arg ARG, effect is to take word before or around dot and drag it forward past ARG other words (backward if ARG negative). If ARG is zero, the words around or after dot and around or after mark are interchanged. _t_r_a_n_s_p_o_s_e-_s_e_x_p_s Like transpose-words but applies to sexps. Does not work on a sexp that dot is in the middle of if it is a list or string. _t_r_a_n_s_p_o_s_e-_l_i_n_e_s Exchange current line and previous line, leaving dot after both. With argument ARG, takes previous line and moves it past ARG lines. With argument 0, interchanges line dot is in with line mark is in. _i_n_d_e_n_t-_f_o_r-_c_o_m_m_e_n_t Indent this line's comment to comment column, or insert an empty comment. May 13, 1985 - 68 - _s_e_t-_c_o_m_m_e_n_t-_c_o_l_u_m_n Set the comment column based on dot. With no arg, set the comment column to the current column. With just minus as arg, kill any comment on this line. With any other arg, set comment column to indentation of the previous comment and then align or create a comment on this line at that column. _k_i_l_l-_c_o_m_m_e_n_t Kill the comment on this line, if any. With argument, kill comments on that many lines starting with this one. _f_o_r_w_a_r_d-_t_o-_w_o_r_d Move forward until encountering the beginning of a word. With argument, do this that many times. _b_a_c_k_w_a_r_d-_t_o-_w_o_r_d Move backward until encountering the end of a word. With argument, do this that many times. _b_a_c_k_w_a_r_d-_w_o_r_d Move backward until encountering the end of a word. With argument, do this that many times. _m_a_r_k-_w_o_r_d Set mark arg words away from dot. _k_i_l_l-_w_o_r_d Kill characters forward until encountering the end of a word. With argument, do this that many times. _b_a_c_k_w_a_r_d-_k_i_l_l-_w_o_r_d Kill characters backward until encountering the end of a word. With argument, do this that many times. _i_n_d_e_n_t-_n_e_w-_c_o_m_m_e_n_t-_l_i_n_e Break line at dot and indent, continuing comment if presently within one. May 13, 1985 - 69 - _a_u_t_o-_f_i_l_l-_m_o_d_e Toggle auto-fill mode. With arg, turn auto-fill mode on iff arg is positive. In auto-fill mode, inserting a space at a column beyond fill-column automatically breaks the line at a previous space. _s_e_t-_m_i_n_o_r-_m_o_d_e Set status of minor mode, for mode-line display. FUNCTION-SYMBOL is the function that turns the mode on or off. PRETTY-STRING is a string to show in the mode line. ON-STATE is t if mode should be on, nil if it should be off. Returns ON-STATE. _s_e_t-_f_i_l_l-_c_o_l_u_m_n Set fill-column to current column, or to argument if given. fill-column's value is separate for each buffer. _s_e_t-_s_e_l_e_c_t_i_v_e-_d_i_s_p_l_a_y Set selective-display to ARG; clear it if no arg. When selective-display is a number > 0, lines whose indentation is >= selective-display are not displayed. selective-display's value is separate for each buffer. _o_v_e_r_w_r_i_t_e-_m_o_d_e Toggle overwrite mode. With arg, turn overwrite mode on iff arg is positive. In overwrite mode, printing characters typed in replace existing text on a one-for-one basis, rather than pushing it to the right. _b_l_i_n_k-_m_a_t_c_h_i_n_g-_o_p_e_n Move cursor momentarily to the beginning of the sexp before dot. _e_r_r_o_r Signal an error, making error message by passing all args to format. _h_e_l_p-_c_o_m_m_a_n_d Give help. Invoked by help character at top level. May 13, 1985 - 70 - _h_e_l_p-_w_i_t_h-_t_u_t_o_r_i_a_l Select the Emacs learn-by-doing tutorial. _d_e_s_c_r_i_b_e-_k_e_y-_b_r_i_e_f_l_y Print the name of the function KEY invokes. KEY is a string. _d_e_s_c_r_i_b_e-_k_e_y Display documentation of the function KEY invokes. KEY is a string. _d_e_s_c_r_i_b_e-_m_o_d_e Display documentation of current major mode. _d_e_s_c_r_i_b_e-_d_i_s_t_r_i_b_u_t_i_o_n Display info on how to obtain the latest version of GNU Emacs. _d_e_s_c_r_i_b_e-_c_o_p_y_i_n_g Display info on how you may redistribute copies of GNU Emacs. _v_i_e_w-_e_m_a_c_s-_n_e_w_s Display info on recent changes to Emacs. _v_i_e_w-_l_o_s_s_a_g_e Display last 100 input keystrokes. _h_e_l_p-_f_o_r-_h_e_l_p Give help for the help command. _d_e_s_c_r_i_b_e-_f_u_n_c_t_i_o_n Display the full documentation of FUNCTION (a symbol). _d_e_s_c_r_i_b_e-_v_a_r_i_a_b_l_e Display the full documentation of VARIABLE (a symbol). May 13, 1985 - 71 - _c_o_m_m_a_n_d-_a_p_r_o_p_o_s Like apropos but lists only symbols that are names of commands (interactively callable functions). _s_u_p_p_r_e_s_s-_k_e_y_m_a_p Make MAP override all buffer-modifying commands to be undefined. Works by knowing which commands are normally buffer-modifying. Normally also makes digits set numeric arg, but optional second arg NODIGITS non-nil prevents this. _p_w_d Show the current default directory. _c_d Make DIR become the current buffer's default directory. _f_i_n_d-_f_i_l_e Edit file FILENAME. Switch to a buffer visiting file FILENAME, creating one if none already exists. _f_i_n_d-_f_i_l_e-_o_t_h_e_r-_w_i_n_d_o_w Edit file FILENAME, in another window. May create a new window, or reuse an existing one; see the function display-buffer. _f_i_n_d-_f_i_l_e-_r_e_a_d-_o_n_l_y Edit file FILENAME but don't save without confirmation. Like find-file but marks buffer as read-only. _f_i_n_d-_f_i_l_e-_n_o_s_e_l_e_c_t Read file FILENAME into a buffer and return the buffer. If a buffer exists visiting FILENAME, return that one, but verify that the file has not changed since visited or saved. The buffer is not selected, just returned to the caller. May 13, 1985 - 72 - _f_i_n_d-_a_l_t_e_r_n_a_t_e-_f_i_l_e Find file FILENAME, select its buffer, kill previous buffer. If the current buffer now contains an empty file that you just visited (presumably by mistake), use this command to visit the file you really want. _s_e_t-_a_u_t_o-_m_o_d_e Select major mode appropriate for current buffer. May base decision on visited file name (See variable auto-mode-list) or on buffer contents (-*- line or local variables spec). _s_e_t-_v_i_s_i_t_e_d-_f_i_l_e-_n_a_m_e Change name of file visited in current buffer to FILENAME. The next time the buffer is saved it will go in the newly specified file. nil or empty string as argument means make buffer not be visiting any file. _w_r_i_t_e-_f_i_l_e Write current buffer into file FILENAME. Makes buffer visit that file, and marks it not modified. _b_a_c_k_u_p-_b_u_f_f_e_r Make a backup of the disk file visited by the current buffer. This is done before saving the buffer the first time. _f_i_l_e-_n_l_i_n_k_s Return number of names file FILENAME has. _s_a_v_e-_b_u_f_f_e_r Save the current buffer in its visited file, if it has been modified. _s_a_v_e-_s_o_m_e-_b_u_f_f_e_r_s Save some modified file-visiting buffers. Asks user about each one. With argument, saves all with no questions. _n_o_t-_m_o_d_i_f_i_e_d Mark current buffer as unmodified, not needing to be saved. May 13, 1985 - 73 - _t_o_g_g_l_e-_r_e_a_d-_o_n_l_y Change whether this buffer is visiting its file read-only. _i_n_s_e_r_t-_f_i_l_e Insert contents of file FILENAME into buffer after dot. Set mark after the inserted text. _a_p_p_e_n_d-_t_o-_f_i_l_e Append the contents of the region to the end of file FILENAME. When called from a function, expects three arguments, START, END and FILENAME. START and END are buffer positions saying what text to write. _r_e_v_e_r_t-_b_u_f_f_e_r Replace the buffer text with the text of the visited file on disk. This undoes all changes since the file was visited or saved. If latest auto-save file is more recent than the visited file, asks user whether to use that instead, unless a non-nil argument is given. If revert-buffer-function's value is non-nil, it is called to do the work. _k_i_l_l-_s_o_m_e-_b_u_f_f_e_r_s For each buffer, ask whether to kill it. _a_u_t_o-_s_a_v_e-_m_o_d_e Toggle auto-saving of contents of current buffer. With arg, turn auto-saving on if arg is positive, else off. _m_a_k_e-_a_u_t_o-_s_a_v_e-_f_i_l_e-_n_a_m_e Return file name to use for auto-saves of current buffer. Does not consider auto-save-visited-filename; that is checked before calling this function. This is a separate function so your .emacs file or site-init.el can redefine t. _l_i_s_t-_d_i_r_e_c_t_o_r_y May 13, 1985 - 74 - Display a list of files in or matching DIRNAME, a la `ls'. DIRNAME is globbed by the shell if necessary. Prefix arg (second arg if noninteractive) means supply -l switch to `ls'. Actions controlled by variables list-directory-brief-switches and list-directory-verbose-switches. _s_a_v_e-_b_u_f_f_e_r_s-_k_i_l_l-_e_m_a_c_s Offer to save each buffer, then kill this Emacs fork. _s_p_l_i_t-_w_i_n_d_o_w-_v_e_r_t_i_c_a_l_l_y Split current window into two windows, one above the other. This window becomes the uppermost of the two, and gets ARG lines. No arg means split equally. _s_p_l_i_t-_w_i_n_d_o_w-_h_o_r_i_z_o_n_t_a_l_l_y Split current window into two windows side by side. This window becomes the leftmost of the two, and gets ARG columns. No arg means split equally. _e_n_l_a_r_g_e-_w_i_n_d_o_w-_h_o_r_i_z_o_n_t_a_l_l_y Make current window ARG columns wider. _s_h_r_i_n_k-_w_i_n_d_o_w-_h_o_r_i_z_o_n_t_a_l_l_y Make current window ARG columns narrower. _i_n_d_e_n_t-_a_c_c_o_r_d_i_n_g-_t_o-_m_o_d_e Indent line in proper way for current major mode. _i_n_d_e_n_t-_f_o_r-_t_a_b-_c_o_m_m_a_n_d Indent line in proper way for current major mode. _i_n_d_e_n_t-_r_i_g_i_d_l_y Indent all lines starting in the region sideways by ARG columns. Called from a program, takes three arguments, START, END and ARG. May 13, 1985 - 75 - _i_n_d_e_n_t-_r_e_g_i_o_n Indent each nonblank line in the region. With no argument, indent each line with Tab. With argument COLUMN, indent each line to that column. Called from a program, takes three args: START, END and COLUMN. _i_n_d_e_n_t-_r_e_l_a_t_i_v_e Space out to under next indent point in previous nonblank line. An indent point is a non-whitespace character following whitespace. If the previous nonblank line has no indent points beyond the column dot starts at, tab-to-tab-stop is done instead. _e_d_i_t-_t_a_b-_s_t_o_p_s Edit the tab stops used by tab-to-tab-stop. Creates a buffer *Tab Stops* containing text describing the tab stops. A colon indicates a column where there is a tab stop. You can add or remove colons and then do C-X C-S to make changes take effect. _e_d_i_t-_t_a_b-_s_t_o_p_s-_n_o_t_e-_c_h_a_n_g_e_s Put edited tab stops into effect. _t_a_b-_t_o-_t_a_b-_s_t_o_p Insert spaces or tabs to next defined tab-stop column. The variable tab-stop-list is a list of columns at which there are tab stops. Use edit-tab-stops to edit them interactively. _a_d_d-_c_h_a_n_g_e-_l_o_g-_e_n_t_r_y Find change log file and add an entry for today. _o_c_c_u_r-_m_e_n_u Show menu of lines containing match for REGEXP. Enters recursive edit on text showing an entry for each matching line. User can move to an entry and then exit with C-Z to move to the line in the original buffer described by the selected entry. Abort with C-] to avoid moving in the original buffer. If REGEXP is empty then THE EXACT SAME menu is presented again, with cursor initially at the next successive entry. This is useful for stepping through located lines rapidly in order. May 13, 1985 - 76 - _b_y_t_e-_c_o_m_p_i_l_e-_f_i_l_e Compile a file of Emacs Lisp code into byte code. Argument is input file name; output file name is made by appending a "c" to the end. _b_y_t_e-_r_e_c_o_m_p_i_l_e-_d_i_r_e_c_t_o_r_y Recompile every .el file in DIRECTORY that needs recompilation. This is if a .elc file exists but is older than the .el file. _c_o_m_p_a_r_e-_w_i_n_d_o_w_s Compare text in current window with text in next window. Compares the text starting at dot in each window, moving over text in each one as fas as they match. _c_o_m_p_i_l_e Compile the program including the current buffer. Default: run make. Runs COMMAND, a shell command, in a separate process asynchronously with output going to the buffer *compilation*. You can then use the command next-error to find the next error message and move to the source code that caused it. _g_r_e_p Run grep, with user-specified args, and collect output in a buffer. While grep runs asynchronously, you can use the next-error command to find the text that grep hits refer to. _d_e_b_u_g Enter debugger. Returns if user says "continue". Arguments are mainly for use when this is called from the internals of the evaluator. You may call with no args, or you may pass nil as the first arg and any other args you like. In that case, the list of args after the first will be printed into the backtrace buffer. _c_a_n_c_e_l-_d_e_b_u_g-_o_n-_e_n_t_r_y Undoes effect of debug-on-entry on FUNCTION. May 13, 1985 - 77 - _d_e_b_u_g-_o_n-_e_n_t_r_y Request FUNCTION to invoke debugger each time it is called. If the user continues, FUNCTION's execution proceeds. Works by modifying the definition of FUNCTION, which must be written in Lisp, not predefined. _d_i_r_e_d "Edit" directory DIRNAME. Delete some files in it. Dired displays a list of files in DIRNAME. You can move around in it with the usual commands. You can mark files for deletion with C-D and then delete them by typing `x'. Type `h' after entering dired for more info. _d_i_r_e_d-_o_t_h_e_r-_w_i_n_d_o_w "Edit" directory DIRNAME in other window. Like dired command but displays dired buffer in other window. _d_i_r_e_d-_n_o_s_e_l_e_c_t Find or create a dired buffer, return it, don't select it. Call like dired. _d_i_s_s_o_c_i_a_t_e_d-_p_r_e_s_s Dissociate the text of the current buffer. Output goes in buffer named *Dissociation*, which is redisplayed each time text is added to it. Every so often the user must say whether to continue. If ARG is positive, require ARG words of continuity. If ARG is negative, require -ARG chars of continuity. Default is 2. _i_n_f_o Enter Info documentation browser. _l_e_d_i_t-_m_o_d_e May 13, 1985 - 78 - Major mode for editing text and stuffing it to a Lisp job. Like Lisp mode, plus these special commands: M-C-d -- record defun at or after dot for later transmission to Lisp job. M-C-r -- record region for later transmission to Lisp job. C-x z -- transfer to Lisp job and transmit saved text. M-C-c -- transfer to Liszt (Lisp compiler) job and transmit saved text. To make Lisp mode automatically change to Ledit mode, do (setq lisp-mode-hook 'ledit-from-lisp-mode) _l_p_r-_b_u_f_f_e_r Print contents of buffer as with Unix command `lpr'. _p_r_i_n_t-_b_u_f_f_e_r Print contents of buffer as with Unix command `lpr -p'. _a_p_p_e_n_d-_k_b_d-_m_a_c_r_o Append kbd macro NAME in file FILE, as Lisp code to define the macro. Use load to load the file. Third argument KEYS non-nil means also record the keys it is on. (This is the prefix argument, when calling interactively.) _k_b_d-_m_a_c_r_o-_q_u_e_r_y Query user during kbd macro execution. With prefix argument, enters recursive edit, reading keyboard commands even within a kbd macro. You can give different commands each time the macro executes. Without prefix argument, reads a character. Your options are: Space -- execute the rest of the macro. Delete -- skip the rest of the macro; start next repetition. C-d -- skip rest of the macro and don't repeat it any more. C-r -- enter a recursive edit, then on exit ask again for a character C-l -- redisplay screen and ask again. _w_r_i_t_e-_k_b_d-_m_a_c_r_o Save kbd macro NAME in file FILE, as Lisp code to define the macro. Use load to load the file. Third argument KEYS non-nil means also record the keys it is on. (This is the prefix argument, when calling interactively.) Fourth argument APPENDFLAG non-nil meams append to FILE's existing contents. May 13, 1985 - 79 - _m_a_n_u_a_l-_e_n_t_r_y Display Unix manual entry for TOPIC. _e_n_a_b_l_e-_c_o_m_m_a_n_d Allow COMMAND to be executed without special confirmation from now on. The user's emacs.profile file is altered so that this will apply to future sessions. _d_i_s_a_b_l_e-_c_o_m_m_a_n_d Require special confirmation to execute COMMAND from now on. The user's emacs.profile file is altered so that this will apply to future sessions. _l_i_s_t-_o_p_t_i_o_n_s Display a list of Emacs user options, with values and documentation. _e_d_i_t-_o_p_t_i_o_n_s Edit a list of Emacs user option values. Selects a buffer containing such a list, in which there are commands to set the option values. Type C-H m in that buffer for a list of commands. _o_u_t_l_i_n_e-_m_o_d_e Set up Emacs for editing an outline, doing selective hiding of text. _c_l_e_a_r-_r_e_c_t_a_n_g_l_e Blank out rectangle with corners at dot and mark. The text previously in the region is overwritten by the blanks. _d_e_l_e_t_e-_r_e_c_t_a_n_g_l_e Delete (don't save) text in rectangle with dot and mark as corners. The same range of columns is deleted in each line starting with the line where the region begins and ending with the line where the region ends. _d_e_l_e_t_e-_e_x_t_r_a_c_t-_r_e_c_t_a_n_g_l_e May 13, 1985 - 80 - Return and delete contents of rectangle with corners at START and END. Value is list of strings, one for each line of the rectangle. _e_x_t_r_a_c_t-_r_e_c_t_a_n_g_l_e Return contents of rectangle with corners at START and END. Value is list of strings, one for each line of the rectangle. _i_n_s_e_r_t-_r_e_c_t_a_n_g_l_e Insert text of RECTANGLE with upper left corner at dot. RECTANGLE's first line is inserted at dot, its second line is inserted at a point vertically under dot, etc. RECTANGLE should be a list of strings. _k_i_l_l-_r_e_c_t_a_n_g_l_e Delete rectangle with corners at dot and mark; save as last killed one. Calling from program, supply two args START and END, buffer positions. But in programs you might prefer to use delete-extract-rectangle. _o_p_e_n-_r_e_c_t_a_n_g_l_e Blank out rectangle with corners at dot and mark, shifting text right. The text previously in the region is not overwritten by the blanks, but insted winds up to the right of the rectangle. _y_a_n_k-_r_e_c_t_a_n_g_l_e Yank the last killed rectangle with upper left corner at dot. _r_m_a_i_l Read (or delete or answer) your mail. _m_a_i_l-_o_t_h_e_r-_w_i_n_d_o_w Like mail command but displays in other window. _m_a_i_l May 13, 1985 - 81 - Edit a message to be sent. Argument means resume editing (don't erase). Returns with message buffer seleted; value t if message freshly initialized. While editing message, type C-z C-z to send the message and exit. Various special commands starting with C-z are available in sendmail mode to move to message header fields. Type C-z? for a list of them. If mail-self-blind is non-nil, a bcc to yourself is inserted when the message is initialized. If mail-setup-hook is bound, its value is called with no arguments after the message is initialized. It can add more default fields. When calling from a program, the second through fifth arguments TO, SUBJECT, CC and IN-REPLY-TO specify if non-nil the initial contents of those header fields. These arguments should not have final newlines. The sixth argument REPLYBUFFER is a buffer whose contents should be yanked if the user types C-Z y. _s_h_e_l_l Run an inferior shell, with I/O through buffer *shell*. If buffer exists but shell process is not running, make new shell. The buffer is put in shell-mode, giving commands for sending input and controlling the subjobs of the shell. See shell-mode. _s_p_e_l_l-_b_u_f_f_e_r Check spelling of every word in the buffer. For each incorrect word, you are asked for the correct spelling and then put into a query-replace to fix some or all occurrences. If you do not want to change a word, just give the same word as its "correct" spelling; then the query replace is skipped. _s_p_e_l_l-_w_o_r_d Check spelling of word at or after dot. If it is not correct, ask user for the correct spelling and query-replace the entire buffer to substitute it. _s_p_e_l_l-_s_t_r_i_n_g Check spelling of string supplied as argument. _u_n_t_a_b_i_f_y May 13, 1985 - 82 - Convert all tabs in region to multiple spaces, preserving columns. The variable tab-width controls the action. _t_a_b_i_f_y Convert multiple spaces in region to tabs when possible. A group of spaces is partially replaced by tabs when this can be done without changing the column they end at. The variable tab-width controls the action. _f_i_n_d-_t_a_g Find next tag (in current tag table) whose name contains TAGNAME. Selects the buffer that the tag is contained in and puts dot at its definition. If TAGNAME is a null string, the expression in the buffer around or before dot is used as the tag name. If second arg NEXT is non-nil (interactively, with prefix arg), searches for the next tag in the tag table that matches the tagname used in the previous find-tag. See documentation of variable tags-file-name. _f_i_n_d-_t_a_g-_o_t_h_e_r-_w_i_n_d_o_w Find tag (in current tag table) whose name contains TAGNAME. Selects the buffer that the tag is contained in and puts dot at its definition. If TAGNAME is a null string, the expression in the buffer around or before dot is used as the tag name. If second arg NEXT is non-nil (interactively, with prefix arg), searches for the next tag in the tag table that matches the tagname used in the previous find-tag. See documentation of variable tags-file-name. _l_i_s_t-_t_a_g_s Display list of tags in file FILE. _n_e_x_t-_f_i_l_e Select next file among files in current tag table. Non-nil argument (prefix arg, if interactive) initializes to the beginning of the list of files in the tag table. May 13, 1985 - 83 - _t_a_g_s-_a_p_r_o_p_o_s Display list of all tags in tag table that contain STRING. _t_a_g_s-_l_o_o_p-_c_o_n_t_i_n_u_e Continue last tags-search or tags-query-replace command. Used noninteractively with non-nil argument to begin such a command. See variable tags-loop-form. _t_a_g-_t_a_b_l_e-_f_i_l_e_s Return a list of files in the current tag table. _t_a_g_s-_q_u_e_r_y-_r_e_p_l_a_c_e Query-replace FROM with TO through all files listed in tag table. If you exit (C-G or ESC), you can resume the query-replace with the command tags-loop-continue. See documentation of variable tags-file-name. _t_a_g_s-_s_e_a_r_c_h Search through all files listed in tag table for match for REGEXP. Stops when a match is found. To continue searching for next match, use command tags-loop-continue. See documentation of variable tags-file-name. _d_i_s_p_l_a_y-_t_i_m_e Display current time and load level in mode line of each buffer. Updates automatically every minute. _u_n_d_e_r_l_i_n_e-_r_e_g_i_o_n Underline all nonblank characters in the region. Works by overstriking underscores. Called from program, takes two arguments START and END which specify the range to operate on. _u_n_u_n_d_e_r_l_i_n_e-_r_e_g_i_o_n Remove allunderlining (overstruck underscores) in the region. Called from program, takes two arguments START and END which specify the range to operate on. May 13, 1985 - 84 - _i_s_e_a_r_c_h-_f_o_r_w_a_r_d Do incremental search forward. As you type characters, they add to the search string and are found. Type Delete to cancel characters from end of search string. Type ESC to exit, leaving dot at location found. Type C-S to search again forward, C-R to search again backward. Type C-W to yank word from buffer onto end of search string and search for it. Type C-Y to yank rest of line onto end of search string, etc. Type C-Q to quote control character to search for it. Other control and meta characters terminate the search and are then executed normally. C-G while searching or when search has failed cancels input back to what has been found successfully. C-G when search is successful aborts and moves dot to starting point. _i_s_e_a_r_c_h-_f_o_r_w_a_r_d-_r_e_g_e_x_p Do incremental search forward for regular expression. Like ordinary incremental search except that your input is treated as a regexp. See isearch-forward for more info. _i_s_e_a_r_c_h-_b_a_c_k_w_a_r_d Do incremental search backward. See isearch-forward for more information. _i_s_e_a_r_c_h-_b_a_c_k_w_a_r_d-_r_e_g_e_x_p Do incremental search backward for regular expression. Like ordinary incremental search except that your input is treated as a regexp. See isearch-forward for more info. _q_u_e_r_y-_r_e_p_l_a_c_e Replace some occurrences of FROM-STRING with TO-STRING. As each match is found, the user must type a character saying what to do with it. Type Help char within query-replace for directions. Preserves case in each replacement if case-replace and case-fold-search are non-nil and FROM-STRING has no uppercase letters. Third arg DELIMITED non-nil means replace only matches surrounded by word boundaries. Interactively, this is the prefix arg. _q_u_e_r_y-_r_e_p_l_a_c_e-_r_e_g_e_x_p May 13, 1985 - 85 - Replace some things after dot matching REGEXP with TO-STRING. As each match is found, the user must type a character saying what to do with it. Type Help char within query-replace for directions. Preserves case in each replacement if case-replace and case-fold-search are non-nil and REGEXP has no uppercase letters. Third arg DELIMITED non-nil means replace only matches surrounded by word boundaries. In TO-STRING, means insert what matched REGEXP, and means insert what matched th .) in REGEXP. _r_e_p_l_a_c_e-_s_t_r_i_n_g Replace occurrences of FROM-STRING with TO-STRING. Preserve case in each match if case-replace and case-fold-search are non-nil and FROM-STRING has no uppercase letters. Third arg DELIMITED non-nil means replace only matches surrounded by word boundaries. _r_e_p_l_a_c_e-_r_e_g_e_x_p Replace things after dot matching REGEXP with TO-STRING. Preserve case in each match if case-replace and case-fold-search are non-nil and REGEXP has no uppercase letters. Third arg DELIMITED non-nil means replace only matches surrounded by word boundaries. In TO-STRING, means insert what matched REGEXP, and means insert what matched th .) in REGEXP. _f_o_r_w_a_r_d-_s_e_x_p Move forward across one balanced expression. With argument, do this that many times. _b_a_c_k_w_a_r_d-_s_e_x_p Move backward across one balanced expression. With argument, do this that many times. _m_a_r_k-_s_e_x_p Set mark ARG sexps from dot. _f_o_r_w_a_r_d-_l_i_s_t May 13, 1985 - 86 - Move forward across one balanced group of parentheses. With argument, do this that many times. _b_a_c_k_w_a_r_d-_l_i_s_t Move backward across one balanced group of parentheses. With argument, do this that many times. _d_o_w_n-_l_i_s_t Move forward down one level of parentheses. With argument, do this that many times. A negative argument means move backward but still go down a level. _b_a_c_k_w_a_r_d-_u_p-_l_i_s_t Move backward out of one level of parentheses. With argument, do this that many times. A negative argument means move forward but still to a less deep spot. _u_p-_l_i_s_t Move forward out of one level of parentheses. With argument, do this that many times. A negative argument means move backward but still to a less deep spot. _k_i_l_l-_s_e_x_p Kill the syntactic expression following the cursor. With argument, kill that many expressions after (or before) the cursor. _b_a_c_k_w_a_r_d-_k_i_l_l-_s_e_x_p Kill the syntactic expression preceding the cursor. With argument, kill that many expressions before (or after) the cursor. _e_v_a_l-_l_a_s_t-_s_e_x_p Evaluate sexp before point; print value in minibuffer. With argument, print output into current buffer. _e_v_a_l-_d_e_f_u_n May 13, 1985 - 87 - Evaluate defun that dot is in or before. Print value in minibuffer. With argument, insert value in current buffer after the defun. _b_e_g_i_n_n_i_n_g-_o_f-_d_e_f_u_n Move backward to next beginning-of-defun. With argument, do this that many times. Returns t unless search stops due to end of buffer. _e_n_d-_o_f-_d_e_f_u_n Move forward to next end of defun. An end of a defun is found by moving forward from the beginning of one. _m_a_r_k-_d_e_f_u_n Put mark at end of defun, dot at beginning. _i_n_s_e_r_t-_p_a_r_e_n_t_h_e_s_e_s Put parentheses around next ARG sexps. Leave dot after open-paren. No argument is equivalent to zero: just insert () and leave dot between. _m_o_v_e-_p_a_s_t-_c_l_o_s_e-_a_n_d-_r_e_i_n_d_e_n_t Move past next ), delete indentation before it, then indent after it. _f_o_r_w_a_r_d-_p_a_g_e Move forward to page boundary. With arg, repeat, or go back if negative. A page boundary is any line whose beginning matches the regexp page-delimiter. _b_a_c_k_w_a_r_d-_p_a_g_e Move backward to page boundary. With arg, repeat, or go fwd if negative. A page boundary is any line whose beginning matches the regexp page-delimiter. _m_a_r_k-_p_a_g_e Put mark at end of page, dot at beginning. May 13, 1985 - 88 - _n_a_r_r_o_w-_t_o-_p_a_g_e Make text outside current page invisible. _c_o_u_n_t-_l_i_n_e_s-_p_a_g_e Report number of lines on current page, and how many are before or after dot. _w_h_a_t-_p_a_g_e Print page and line number of dot. _g_e_t-_r_e_g_i_s_t_e_r Return contents of Emacs register named CHAR, or nil if none. _s_e_t-_r_e_g_i_s_t_e_r Set contents of Emacs register named CHAR to VALUE. _d_o_t-_t_o-_r_e_g_i_s_t_e_r Store current location of dot in a register. Argument is a character, naming the register. _r_e_g_i_s_t_e_r-_t_o-_d_o_t Move dot to location stored in a register. Argument is a character, naming the register. _v_i_e_w-_r_e_g_i_s_t_e_r Display what is contained in register named REGISTER. REGISTER is a character. _i_n_s_e_r_t-_r_e_g_i_s_t_e_r Insert contents of register REG. REG is a character. Normally puts dot before and mark after the inserted text. If optional second arg is non-nil, puts mark before and dot after. Interactively, second arg is non-nil if prefix arg is supplied. _c_o_p_y-_t_o-_r_e_g_i_s_t_e_r May 13, 1985 - 89 - Copy region into register REG. With prefix arg, delete as well. Called from program, takes four args: REG, START, END and DELETE-FLAG. START and END are buffer positions indicating what to copy. _a_p_p_e_n_d-_t_o-_r_e_g_i_s_t_e_r Append region to text in register REG. With prefix arg, delete as well. Called from program, takes four args: REG, START, END and DELETE-FLAG. START and END are buffer positions indicating what to append. _p_r_e_p_e_n_d-_t_o-_r_e_g_i_s_t_e_r Prepend region to text in register REG. With prefix arg, delete as well. Called from program, takes four args: REG, START, END and DELETE-FLAG. START and END are buffer positions indicating what to prepend. _c_o_p_y-_r_e_c_t_a_n_g_l_e-_t_o-_r_e_g_i_s_t_e_r Copy rectangular region into register REG. With prefix arg, delete as well. Called from program, takes four args: REG, START, END and DELETE-FLAG. START and END are buffer positions giving two corners of rectangle. _f_o_r_w_a_r_d-_p_a_r_a_g_r_a_p_h Move forward to end of paragraph. With arg, do it arg times. A line which paragraph-start matches either separates paragraphs (if paragraph-separate matches it also) or is the first line of a paragraph. A paragraph end is the beginning of a line which is not part of the paragraph to which the end of the previous line belongs, or the end of the buffer. _b_a_c_k_w_a_r_d-_p_a_r_a_g_r_a_p_h Move backward to start of paragraph. With arg, do it arg times. A paragraph start is the beginning of a line which is a first-line-of-paragraph or which is ordinary text and follows a paragraph-separating line; except: if the first real line of a paragraph is preceded by a blank line, the paragraph starts at that blank line. See forward-paragraph for more information. May 13, 1985 - 90 - _m_a_r_k-_p_a_r_a_g_r_a_p_h Put point at beginning of this paragraph, mark at end. _k_i_l_l-_p_a_r_a_g_r_a_p_h Kill to end of paragraph. _b_a_c_k_w_a_r_d-_k_i_l_l-_p_a_r_a_g_r_a_p_h Kill back to start of paragraph. _t_r_a_n_s_p_o_s_e-_p_a_r_a_g_r_a_p_h_s Interchange this (or next) paragraph with previous one. _f_o_r_w_a_r_d-_s_e_n_t_e_n_c_e Move forward to next sentence-end. With argument, repeat. With negative argument, move backward repeatedly to sentence-beginning. Sentence ends are identified by the value of sentence-end treated as a regular expression. Also, every paragraph boundary terminates sentences as well. _b_a_c_k_w_a_r_d-_s_e_n_t_e_n_c_e Move backward to start of sentence. With arg, do it arg times. See forward-sentence for more information. _k_i_l_l-_s_e_n_t_e_n_c_e Kill from dot to end of sentence. With arg, repeat, or backward if negative arg. _b_a_c_k_w_a_r_d-_k_i_l_l-_s_e_n_t_e_n_c_e Kill back from dot to start of sentence. With arg, repeat, or forward if negative arg. _m_a_r_k-_e_n_d-_o_f-_s_e_n_t_e_n_c_e Put mark at end of sentence. Arg works as in forward-sentence. May 13, 1985 - 91 - _t_r_a_n_s_p_o_s_e-_s_e_n_t_e_n_c_e_s Interchange this (next) and previous sentence. _l_i_s_p-_m_o_d_e Major mode for editing Lisp code. Commands: Delete converts tabs to spaces as it moves back. Tab indents for Lisp; with argument, shifts rest of expression rigidly with the current line. Meta-Control-Q does Tab on each line starting within following expression. Meta-Control-X evaluates the largest Lisp expression around or after dot. Blank lines separate paragraphs. Semicolons start comments. _l_i_s_p-_i_n_t_e_r_a_c_t_i_o_n-_m_o_d_e Major mode for typing and evaluating Lisp forms. Like Lisp mode except that Linefeed evals the Lisp expression before dot, and prints its value into the buffer, advancing dot. Commands: Delete converts tabs to spaces as it moves back. Tab indents for Lisp; with argument, shifts rest of expression rigidly with the current line. Meta-Control-Q does Tab on each line starting within following expression. Meta-Control-X evaluates the largest Lisp expression around or after dot. Paragraphs are separated only by blank lines. Semicolons start comments. _e_v_a_l-_p_r_i_n_t-_l_a_s_t-_s_e_x_p Evaluate sexp before point; print value into current buffer. _l_i_s_p-_i_n_d_e_n_t-_l_i_n_e Indent current line as Lisp code. With argument, indent any additional lines of the same expression rigidly along with this one. _c_a_l_c_u_l_a_t_e-_l_i_s_p-_i_n_d_e_n_t Return appropriate indentation for current line as Lisp code. In usual case returns an integer: the column to indent to. Can instead return a list, whose car is the column to indent to. This means that following lines at the same level of indentation should not necessarily be indented the same way. The second element of the list is the buffer position of the start of the containing expression. May 13, 1985 - 92 - _i_n_d_e_n_t-_s_e_x_p Indent each line of the list starting just after dot. _i_n_d_e_n_t-_c_o_d_e-_r_i_g_i_d_l_y Indent all lines of code, starting in the region, sideways by ARG columns. Does not affect lines starting inside comments or strings, assuming that the start of the region is not inside them. Called from a program, takes three arguments, START, END and ARG. _t_e_x_t-_m_o_d_e Major mode for editing text intended for humans to read. Tab is tab-to-tab-stop. (Set tab stops with edit-tab-stops.) Meta-s is center-line. Meta-S is center-paragraph. _i_n_d_e_n_t_e_d-_t_e_x_t-_m_o_d_e Major mode for editing indented text intended for humans to read. Tab runs indent-relative, indent under previous line. Meta-s is center-line. Meta-S is center-paragraph. _c_e_n_t_e_r-_p_a_r_a_g_r_a_p_h Center each line in the paragraph at or after dot. See center-line for more info. _c_e_n_t_e_r-_r_e_g_i_o_n Center each line starting in the region. See center-line for more info. _c_e_n_t_e_r-_l_i_n_e Center the line dot is on. This means adjusting its indentation to match the distance between the end of the text and fill-column. _s_e_t-_f_i_l_l-_p_r_e_f_i_x Set the fill-prefix to the current line up to dot. Filling expects lines to start with the fill prefix and reinserts the fill prefix in each resulting line. May 13, 1985 - 93 - _f_i_l_l-_r_e_g_i_o_n-_a_s-_p_a_r_a_g_r_a_p_h Fill region as one paragraph: break lines to fit fill-column. Prefix arg means justify too. >From program, pass args FROM, TO and JUSTIFY-FLAG. _f_i_l_l-_p_a_r_a_g_r_a_p_h Fill paragraph at or after dot. Prefix arg means justify as well. _f_i_l_l-_r_e_g_i_o_n Fill each of the paragraphs in the region. Prefix arg (non-nil third arg, if called from program) means justify as well. _j_u_s_t_i_f_y-_c_u_r_r_e_n_t-_l_i_n_e Add spaces to line dot is in, so it ends at fill-column. _c-_m_o_d_e Major mode for editing C code. Expression and list commands understand all C brackets. Tab indents for C code. Meta-Control-Q indents all lines within following bracket-grouping. Comments are delimited with /* ... */. Paragraphs are separated by blank lines only. Meta-Control-H puts mark at end of C function and dot before it. Delete converts tabs to spaces as it moves back. Variables controlling indentation style: c-auto-newline Non-nil means automatically newline before and after braces, and after colons and semicolons, inserted in C code. c-indent-level Number of columns for each nesting level in C code. c-brace-offset Offset of indentation of braces relative to containing nesting level. c-argdecl-indent Indentation level of declarations of C function arguments. c-label-offset Offset of C label lines and case statements relative to usual indentation. _e_l_e_c_t_r_i_c-_c-_b_r_a_c_e Insert character and correct line's indentation. May 13, 1985 - 94 - _e_l_e_c_t_r_i_c-_c-_s_e_m_i Insert character and correct line's indentation. _e_l_e_c_t_r_i_c-_c-_t_e_r_m_i_n_a_t_o_r Insert character and correct line's indentation. _c-_i_n_d_e_n_t-_l_i_n_e Indent current line as C code. Argument means shift any additional lines of grouping rigidly with thls line. _c_a_l_c_u_l_a_t_e-_c-_i_n_d_e_n_t Return appropriate indentation for current line as C code. In usual case returns an integer: the column to indent to. Returns nil if line starts inside a string, t if in a comment. _m_a_r_k-_c-_f_u_n_c_t_i_o_n Put mark at end of C function, dot at beginning. _i_n_d_e_n_t-_c-_e_x_p Indent each line of the C grouping following dot. _k_e_e_p-_l_i_n_e_s Delete lines not containing matches for REGEXP. Applies to lines after dot. _f_l_u_s_h-_l_i_n_e_s Delete lines containing matches for REGEXP. Applies to lines after dot. _h_o_w-_m_a_n_y Print number of matches for REGEXP following dot. _o_c_c_u_r May 13, 1985 - 95 - Show all lines containing of REGEXP following dot. Display each line with NLINES lines before and after. NLINES defaults to 0. Interactively it is the prefix arg. _a_b_b_r_e_v-_m_o_d_e Toggle abbrev mode. With arg, turn abbrev mode on iff arg is positive. In abbrev mode, inserting an abbreviation causes it to expand and be replaced by its expansion. _k_i_l_l-_a_l_l-_a_b_b_r_e_v_s Undefine all defined abbrevs. _i_n_s_e_r_t-_a_b_b_r_e_v_s Insert after dot a description of all defined abbrevs. Mark is set after the inserted text. _l_i_s_t-_a_b_b_r_e_v_s Display a list of all defined abbrevs. _e_d_i_t-_a_b_b_r_e_v_s Alter abbrev definitions by editing a list of them. Selects a buffer containing a list of abbrev definitions. You can edit them and type C-X C-S to redefine abbrevs according to your editing. Buffer contains a header line for each abbrev table, which is the abbrev table name in parentheses. This is followed by one line per abbrev in that table: NAME USECOUNT EXPANSION HOOK where NAME and EXPANSION are strings with quotes, USECOUNT is an integer, and HOOK is any valid function or may be omitted (it is usually omitted). _e_d_i_t-_a_b_b_r_e_v_s-_r_e_d_e_f_i_n_e Redefine abbrevs according to current buffer contents _d_e_f_i_n_e-_a_b_b_r_e_v_s May 13, 1985 - 96 - Define abbrevs according to current visible buffer contents. See documentation of edit-abbrevs for info on the format of the text you must have in the buffer. With argument, eliminate all abbrev definitions except the ones defined from the buffer now. _r_e_a_d-_a_b_b_r_e_v-_f_i_l_e Read abbrev definitions from file written with write-abbrev-file. _q_u_i_e_t_l_y-_r_e_a_d-_a_b_b_r_e_v-_f_i_l_e Read abbrev definitions from file written with write-abbrev-file. _w_r_i_t_e-_a_b_b_r_e_v-_f_i_l_e Write all abbrev definitions to file of Lisp code. The file can be loaded to define the same abbrevs. _a_d_d-_m_o_d_e-_a_b_b_r_e_v Define mode-specific abbrev for last word(s) before dot. Argument is how many words before dot form the expansion; or zero means the region is the expansion. Reads the abbreviation in the minibuffer. _a_d_d-_g_l_o_b_a_l-_a_b_b_r_e_v Define global (all modes) abbrev for last word(s) before dot. Argument is how many words before dot form the expansion; or zero means the region is the expansion. Reads the abbreviation in the minibuffer. _i_n_v_e_r_s_e-_a_d_d-_m_o_d_e-_a_b_b_r_e_v Define last word before dot as a mode-specific abbrev. With argument N, defines the Nth word before dot. Reads the expansion in the minibuffer. Expands the abbreviation after defining it. _i_n_v_e_r_s_e-_a_d_d-_g_l_o_b_a_l-_a_b_b_r_e_v Define last word before dot as a global (mode-independent) abbrev. With argument N, defines the Nth word before dot. Reads the expansion in the minibuffer. Expands the abbreviation after defining it. May 13, 1985 - 97 - _a_b_b_r_e_v-_p_r_e_f_i_x-_m_a_r_k Mark current dot as the beginning of an abbrev. Abbrev to be expanded starts here rather than at beginning of word. This way, you can expand an abbrev with a prefix: insert the prefix, use this command, then insert the abbrev. _e_x_p_a_n_d-_r_e_g_i_o_n-_a_b_b_r_e_v_s For abbrev occurrence in the region, offer to expand it. The user is asked to type y or n for each occurrence. _B_u_f_f_e_r-_m_e_n_u-_m_o_d_e Major mode for editing a list of buffers. Each line describes one of the buffers in Emacs. Letters do not insert themselves; instead, they are commands. m -- mark buffer to be displayed. q or C-Z -- select buffer of line dot is on. Also show buffers marked with m in other windows. 1 -- select that buffer in full-screen window. 2 -- select that buffer in one window, together with buffer selected before this one in another window. ~ -- clear modified-flag on that buffer. s -- mark that buffer to be saved. d or k or C-D or C-K -- mark that buffer to be killed. x -- kill or save marked buffers. u -- remove all kinds of marks from current line. Delete -- back up a line and remove marks. _B_u_f_f_e_r-_m_e_n_u-_n_a_m_e Return name of buffer described by this line of buffer menu. _b_u_f_f_e_r-_m_e_n_u Make a menu of buffers so you can save, kill or select them. With argument, show only buffers that are visiting files. Type ? after invocation to get help on commands available within. _B_u_f_f_e_r-_m_e_n_u-_m_a_r_k Mark buffer on this line for being displayed by q command. _B_u_f_f_e_r-_m_e_n_u-_u_n_m_a_r_k Cancel all requested operations on buffer on this line. May 13, 1985 - 98 - _B_u_f_f_e_r-_m_e_n_u-_b_a_c_k_u_p-_u_n_m_a_r_k Move up and cancel all requested operations on buffer on line above. _B_u_f_f_e_r-_m_e_n_u-_k_i_l_l Mark buffer on this line to be killed by x command. _B_u_f_f_e_r-_m_e_n_u-_s_a_v_e Mark buffer on this line to be saved by x command. _B_u_f_f_e_r-_m_e_n_u-_n_o_t-_m_o_d_i_f_i_e_d Mark buffer on this line as unmodified (no changes to save). _B_u_f_f_e_r-_m_e_n_u-_s_e_l_e_c_t Select this line's buffer; also display buffers marked with >. _e_m_a_c_s-_v_e_r_s_i_o_n May 13, 1985 From bbanerje Tue May 14 10:12:19 1985 Received: by sjuvax.UUCP (4.12/4.7) id AA26247; Tue, 14 May 85 10:12:14 edt Date: Tue, 14 May 85 10:12:14 edt From: bbanerje (B. Banerjee) Message-Id: <8505141412.AA26247@sjuvax.UUCP> To: mendenha Subject: Emacs Key mappings Status: R Emacs command summary, Tue May 14. C- set-mark-command C-q quoted-insert C-a beginning-of-line C-r isearch-backward C-b backward-char C-s isearch-forward C-c exit-recursive-edit C-t transpose-chars C-d delete-char C-u universal-argument C-e end-of-line C-v scroll-up C-f forward-char C-w kill-region C-h help-command C-x Control-X-prefix C-i indent-for-tab-command C-y yank C-j newline-and-indent C-z suspend-emacs C-k kill-line ESC ESC-prefix C-l recenter C-] abort-recursive-edit C-m newline C-_ undo C-n next-line .. ~ self-insert-command C-o open-line C-? delete-backward-char C-p previous-line C-x C-a add-mode-abbrev C-x 4 ctl-x-4-prefix C-x C-b list-buffers C-x 5 split-window-horizontally C-x C-c save-buffers-kill-emacs C-x ; set-comment-column C-x C-d list-directory C-x < scroll-left C-x C-e eval-last-sexp C-x = what-cursor-position C-x C-f find-file C-x > scroll-right C-x C-h add-mode-abbrev C-x [ backward-page C-x C-i indent-rigidly C-x ] forward-page C-x C-l downcase-region C-x ^ enlarge-window C-x C-n set-goal-column C-x a append-to-buffer C-x C-o delete-blank-lines C-x b switch-to-buffer C-x C-p mark-page C-x d dired C-x C-q toggle-read-only C-x e call-last-kbd-macro C-x C-r find-file-read-only C-x f set-fill-column C-x C-s save-buffer C-x g insert-register C-x C-t transpose-lines C-x h mark-whole-buffer C-x C-u upcase-region C-x i insert-file C-x C-v find-alternate-file C-x j register-to-dot C-x C-w write-file C-x k kill-buffer C-x C-x exchange-dot-and-mark C-x l count-lines-page C-x C-z suspend-emacs C-x m mail C-x ESC repeat-complex-command C-x n narrow-to-region C-x $ set-selective-display C-x o other-window C-x ( start-kbd-macro C-x p narrow-to-page C-x ) end-kbd-macro C-x r copy-rectangle-to-register C-x + add-global-abbrev C-x s save-some-buffers C-x - add-global-abbrev C-x u undo C-x . set-fill-prefix C-x w widen C-x / dot-to-register C-x x copy-to-register C-x 0 delete-window C-x { shrink-window-horizontally C-x 1 delete-other-windows C-x } enlarge-window-horizontally C-x 2 split-window-vertically C-x C-? backward-kill-sentence ESC C-@ mark-sexp ESC = count-lines-region ESC C-a beginning-of-defun ESC > end-of-buffer ESC C-b backward-sexp ESC mark-word ESC C-c exit-recursive-edit ESC [ backward-paragraph ESC C-d down-list ESC \ delete-horizontal-space ESC C-e end-of-defun ESC ] forward-paragraph ESC C-f forward-sexp ESC ^ delete-indentation ESC C-h mark-defun ESC a backward-sentence ESC C-j indent-new-comment-line ESC b backward-word ESC C-k kill-sexp ESC c capitalize-word ESC C-n forward-list ESC d kill-word ESC C-o split-line ESC e forward-sentence ESC C-p backward-list ESC f forward-word ESC C-s isearch-forward-regexp ESC g fill-region ESC C-t transpose-sexps ESC h mark-paragraph ESC C-u backward-up-list ESC j indent-new-comment-line ESC C-v scroll-other-window ESC k kill-sentence ESC C-w append-next-kill ESC l downcase-word ESC ESC eval-expression ESC m back-to-indentation ESC C-\ indent-region ESC q fill-paragraph ESC just-one-space ESC r move-to-screen-line ESC ! shell-command ESC t transpose-words ESC % query-replace ESC u upcase-word ESC ' abbrev-prefix-mark ESC v scroll-down ESC ( insert-parentheses ESC w kill-ring-save ESC ) move-past-close-and-reindent ESC x execute-extended-command ESC , tags-loop-continue ESC y yank-pop ESC - negative-argument ESC z zap-to-char ESC . find-tag ESC | shell-command-on-region ESC 0 .. ESC 9 digit-argument ESC ~ not-modified ESC ; indent-for-comment ESC C-? backward-kill-word ESC < beginning-of-buffer C-x 4 C-f find-file-other-window C-x 4 d dired-other-window C-x 4 . find-tag-other-window C-x 4 f find-file-other-window C-x 4 b pop-to-buffer C-x 4 m mail-other-window Local Bindings for Lisp Interaction Mode: C-i lisp-indent-line C-j eval-print-last-sexp C-? backward-delete-char-untabify ESC ?? ESC C-q indent-sexp ESC C-x eval-defun From bbanerje Thu Apr 25 16:24:26 1985 Received: by sjuvax.UUCP (4.12/4.7) id AA08928; Thu, 25 Apr 85 16:24:02 est Date: Thu, 25 Apr 85 16:24:02 est From: bbanerje (B. Banerjee) Message-Id: <8504252124.AA08928@sjuvax.UUCP> To: mendenha Subject: Emacs & Lisp Status: R From: neves@uwai.UUCP Newsgroups: net.emacs,net.lang.lisp Subject: Lisp and GNU Emacs ** Interacting with Lisp in GNU Emacs. ** bugs to David Neves GNU Emacs has a complete Lisp interpreter embedded in it. You can play with it by typing an s-expression in the *scratch* buffer and then hitting a linefeed (ctrl-j). However it will often be the case some other Lisp is needed (for example Franz Lisp). This note is to illustrate one way of debugging Lisp code by quickly going between the code in an Emacs buffer and the Lisp interpreter. (There is also Ledit mode but I do not know how to use it.) Preliminaries. 1. Enter Emacs 2. Start up a shell buffer by doing Meta-X shell (to see the things you can do in a shell buffer type ctrl-h m) 3. When you see the unix prompt (%) type lisp to enter Franz. 4. load your lisp file into Franz. (load "foo.l") 5. load your lisp file into Emacs (with ctrl-x ctrl-f foo.l ) To send a function from Emacs to Franz. 1. Mark the Lisp function (by executing Meta-Ctrl-d, ie. ). 2. Send the region to the lisp process by doing Meta-X send-region shell 3. To go back to the shell (Lisp) buffer do a ctrl-x b That's it. One could write two functions to automate steps 1, 2, and 3. (defun mark-send nil "mark the current defun and send it to the shell buffer" (interactive) (save-excursion (mark-defun) (exchange-dot-and-mark) ;send a carriage return (beginning-of-line) ;after the (next-line 1) ;defun for Franz (send-region "shell" (mark) (dot)))) (defun mark-send-go nil "mark the current defun, send it to shell buffer, goto shell buffer" (interactive) (mark-send) (switch-to-buffer "*shell*")) It is possible to put these functions on a key (or several keys). For example, let us put mark-send on Meta-Ctrl-x and mark-send-go on Meta-Ctrl-z so that we can call them when in Lisp-Mode. After doing this we send a defun to lisp by moving the cursor to it and hitting Meta-Ctrl-x. If we wanted to go back to the shell buffer we would hit Meta-Ctrl-z. (define-key lisp-mode-map "\e\^x" 'mark-send) (define-key lisp-mode-map "\e\^z" 'mark-send-go) If using these functions quite often you might want to place the functions and the define-keys in your .emacs file (which is loaded automatically when emacs is called). You can also execute functions directly: e.g. by typing Meta- (mark-send-go) . -- David Neves Computer Sciences Department University of Wisconsin-Madison Usenet: {allegra,heurikon,ihnp4,seismo,uwm-evax}!uwvax!neves Arpanet: neves@uwvax