xref: /386bsd/usr/local/lib/emacs/19.25/etc/DOC (revision a2142627)
1Fredraw-frame
2Clear frame FRAME and output again what is supposed to appear on it.
3
4(redraw-frame FRAME)Fredraw-frame
5Clear frame FRAME and output again what is supposed to appear on it.
6
7(redraw-frame FRAME)Fredraw-display
8Clear and redisplay all visible frames.
9
10(redraw-display)Fopen-termscript
11Start writing all terminal output to FILE as well as the terminal.
12FILE = nil means just close any termscript file currently open.
13
14(open-termscript FILE)Fsend-string-to-terminal
15Send STRING to the terminal without alteration.
16Control characters in STRING will have terminal-dependent effects.
17
18(send-string-to-terminal STR)Fding
19Beep, or flash the screen.
20Also, unless an argument is given,
21terminate any keyboard macro currently executing.
22
23(ding &optional ARG)Fsleep-for
24Pause, without updating display, for SECONDS seconds.
25SECONDS may be a floating-point value, meaning that you can wait for a
26fraction of a second.  Optional second arg MILLISECONDS specifies an
27additional wait period, in milliseconds; this may be useful if your
28Emacs was built without floating point support.
29(Not all operating systems support waiting for a fraction of a second.)
30
31(sleep-for SECONDS &optional MILLISECONDS)Fsit-for
32Perform redisplay, then wait for SECONDS seconds or until input is available.
33SECONDS may be a floating-point value, meaning that you can wait for a
34fraction of a second.  Optional second arg MILLISECONDS specifies an
35additional wait period, in milliseconds; this may be useful if your
36Emacs was built without floating point support.
37(Not all operating systems support waiting for a fraction of a second.)
38Optional third arg non-nil means don't redisplay, just wait for input.
39Redisplay is preempted as always if input arrives, and does not happen
40if input is available before it starts.
41Value is t if waited the full time with no input arriving.
42
43(sit-for SECONDS &optional MILLISECONDS NODISP)Vbaud-rate
44The output baud rate of the terminal.
45On most systems, changing this value will affect the amount of padding
46and the other strategic decisions made during redisplay.Vinverse-video
47*Non-nil means invert the entire frame display.
48This means everything is in inverse video which otherwise would not be.Vvisible-bell
49*Non-nil means try to flash the frame to represent a bell.Vno-redraw-on-reenter
50*Non-nil means no need to redraw entire frame after suspending.
51A non-nil value is useful if the terminal can automatically preserve
52Emacs's frame display when you reenter Emacs.
53It is up to you to set this variable if your terminal can do that.Vwindow-system
54A symbol naming the window-system under which Emacs is running
55(such as `x'), or nil if emacs is running on an ordinary terminal.Vwindow-system-version
56The version number of the window system in use.
57For X windows, this is 10 or 11.Vcursor-in-echo-area
58Non-nil means put cursor in minibuffer, at end of any message there.Vglyph-table
59Table defining how to output a glyph code to the frame.
60If not nil, this is a vector indexed by glyph code to define the glyph.
61Each element can be:
62 integer: a glyph code which this glyph is an alias for.
63 string: output this glyph using that string (not impl. in X windows).
64 nil: this glyph mod 256 is char code to output,
65    and this glyph / 256 is face code for X windows (see `face-id').Vstandard-display-table
66Display table to use for buffers that specify none.
67See `buffer-display-table' for more information.Fframep
68Return non-nil if OBJECT is a frame.
69Value is t for a termcap frame (a character-only terminal),
70`x' for an Emacs frame that is really an X window.
71Also see `live-frame-p'.
72
73(framep OBJECT)Fframe-live-p
74Return non-nil if OBJECT is a frame which has not been deleted.
75Value is nil if OBJECT is not a live frame.  If object is a live
76frame, the return value indicates what sort of output device it is
77displayed on.  Value is t for a termcap frame (a character-only
78terminal), `x' for an Emacs frame being displayed in an X window.
79
80(frame-live-p OBJECT)Fselect-frame
81Select the frame FRAME.
82Subsequent editing commands apply to its selected window.
83The selection of FRAME lasts until the next time the user does
84something to select a different frame, or until the next time this
85function is called.
86
87(select-frame FRAME &optional NO-ENTER)Fhandle-switch-frame
88Handle a switch-frame event EVENT.
89Switch-frame events are usually bound to this function.
90A switch-frame event tells Emacs that the window manager has requested
91that the user's events be directed to the frame mentioned in the event.
92This function selects the selected window of the frame of EVENT.
93
94If EVENT is frame object, handle it as if it were a switch-frame event
95to that frame.
96
97(handle-switch-frame FRAME &optional NO-ENTER)Fselected-frame
98Return the frame that is now selected.
99
100(selected-frame)Fwindow-frame
101Return the frame object that window WINDOW is on.
102
103(window-frame WINDOW)Fframe-first-window
104Returns the topmost, leftmost window of FRAME.
105If omitted, FRAME defaults to the currently selected frame.
106
107(frame-first-window &optional FRAME)Fframe-root-window
108Returns the root-window of FRAME.
109If omitted, FRAME defaults to the currently selected frame.
110
111(frame-root-window &optional FRAME)Fframe-selected-window
112Return the selected window of frame object FRAME.
113If omitted, FRAME defaults to the currently selected frame.
114
115(frame-selected-window &optional FRAME)Fset-frame-selected-window
116Set the selected window of frame object FRAME to WINDOW.
117If FRAME is nil, the selected frame is used.
118If FRAME is the selected frame, this makes WINDOW the selected window.
119
120(set-frame-selected-window FRAME WINDOW)Fframe-list
121Return a list of all frames.
122
123(frame-list)Fnext-frame
124Return the next frame in the frame list after FRAME.
125By default, skip minibuffer-only frames.
126If omitted, FRAME defaults to the selected frame.
127If optional argument MINIFRAME is nil, exclude minibuffer-only frames.
128If MINIFRAME is a window, include only frames using that window for their
129minibuffer.
130If MINIFRAME is `visible', include all visible frames.
131Otherwise, include all frames.
132
133(next-frame &optional FRAME MINIFRAME)Fprevious-frame
134Return the previous frame in the frame list before FRAME.
135By default, skip minibuffer-only frames.
136If omitted, FRAME defaults to the selected frame.
137If optional argument MINIFRAME is nil, exclude minibuffer-only frames.
138If MINIFRAME is a window, include only frames using that window for their
139minibuffer.
140If MINIFRAME is `visible', include all visible frames.
141Otherwise, include all frames.
142
143(previous-frame &optional FRAME MINIFRAME)Fdelete-frame
144Delete FRAME, permanently eliminating it from use.
145If omitted, FRAME defaults to the selected frame.
146A frame may not be deleted if its minibuffer is used by other frames.
147Normally, you may not delete a frame if all other frames are invisible,
148but if the second optional argument FORCE is non-nil, you may do so.
149
150(delete-frame &optional FRAME FORCE)Fmouse-position
151Return a list (FRAME X . Y) giving the current mouse frame and position.
152The position is given in character cells, where (0, 0) is the
153upper-left corner.
154If Emacs is running on a mouseless terminal or hasn't been programmed
155to read the mouse position, it returns the selected frame for FRAME
156and nil for X and Y.
157
158(mouse-position)Fmouse-pixel-position
159Return a list (FRAME X . Y) giving the current mouse frame and position.
160The position is given in pixel units, where (0, 0) is the
161upper-left corner.
162If Emacs is running on a mouseless terminal or hasn't been programmed
163to read the mouse position, it returns the selected frame for FRAME
164and nil for X and Y.
165
166(mouse-pixel-position)Fset-mouse-position
167Move the mouse pointer to the center of character cell (X,Y) in FRAME.
168WARNING:  If you use this under X windows,
169you should call `unfocus-frame' afterwards.
170
171(set-mouse-position FRAME X Y)Fset-mouse-pixel-position
172Move the mouse pointer to pixel position (X,Y) in FRAME.
173WARNING:  If you use this under X windows,
174you should call `unfocus-frame' afterwards.
175
176(set-mouse-pixel-position FRAME X Y)Fmake-frame-visible
177Make the frame FRAME visible (assuming it is an X-window).
178If omitted, FRAME defaults to the currently selected frame.
179
180(make-frame-visible &optional FRAME)Fmake-frame-invisible
181Make the frame FRAME invisible (assuming it is an X-window).
182If omitted, FRAME defaults to the currently selected frame.
183Normally you may not make FRAME invisible if all other frames are invisible,
184but if the second optional argument FORCE is non-nil, you may do so.
185
186(make-frame-invisible &optional FRAME FORCE)Ficonify-frame
187Make the frame FRAME into an icon.
188If omitted, FRAME defaults to the currently selected frame.
189
190(iconify-frame &optional FRAME)Fframe-visible-p
191Return t if FRAME is now "visible" (actually in use for display).
192A frame that is not "visible" is not updated and, if it works through
193a window system, it may not show at all.
194Return the symbol `icon' if frame is visible only as an icon.
195
196(frame-visible-p FRAME)Fvisible-frame-list
197Return a list of all frames now "visible" (being updated).
198
199(visible-frame-list)Fraise-frame
200Bring FRAME to the front, so it occludes any frames it overlaps.
201If FRAME is invisible, make it visible.
202If Emacs is displaying on an ordinary terminal or some other device which
203doesn't support multiple overlapping frames, this function does nothing.
204
205(raise-frame FRAME)Flower-frame
206Send FRAME to the back, so it is occluded by any frames that overlap it.
207If Emacs is displaying on an ordinary terminal or some other device which
208doesn't support multiple overlapping frames, this function does nothing.
209
210(lower-frame FRAME)Fredirect-frame-focus
211Arrange for keystrokes typed at FRAME to be sent to FOCUS-FRAME.
212In other words, switch-frame events caused by events in FRAME will
213request a switch to FOCUS-FRAME, and `last-event-frame' will be
214FOCUS-FRAME after reading an event typed at FRAME.
215
216If FOCUS-FRAME is omitted or nil, any existing redirection is
217cancelled, and the frame again receives its own keystrokes.
218
219Focus redirection is useful for temporarily redirecting keystrokes to
220a surrogate minibuffer frame when a frame doesn't have its own
221minibuffer window.
222
223A frame's focus redirection can be changed by select-frame.  If frame
224FOO is selected, and then a different frame BAR is selected, any
225frames redirecting their focus to FOO are shifted to redirect their
226focus to BAR.  This allows focus redirection to work properly when the
227user switches from one frame to another using `select-window'.
228
229This means that a frame whose focus is redirected to itself is treated
230differently from a frame whose focus is redirected to nil; the former
231is affected by select-frame, while the latter is not.
232
233The redirection lasts until `redirect-frame-focus' is called to change it.
234
235(redirect-frame-focus FRAME &optional FOCUS-FRAME)Fframe-focus
236Return the frame to which FRAME's keystrokes are currently being sent.
237This returns nil if FRAME's focus is not redirected.
238See `redirect-frame-focus'.
239
240(frame-focus FRAME)Fframe-parameters
241Return the parameters-alist of frame FRAME.
242It is a list of elements of the form (PARM . VALUE), where PARM is a symbol.
243The meaningful PARMs depend on the kind of frame.
244If FRAME is omitted, return information on the currently selected frame.
245
246(frame-parameters &optional FRAME)Fmodify-frame-parameters
247Modify the parameters of frame FRAME according to ALIST.
248ALIST is an alist of parameters to change and their new values.
249Each element of ALIST has the form (PARM . VALUE), where PARM is a symbol.
250The meaningful PARMs depend on the kind of frame; undefined PARMs are ignored.
251
252(modify-frame-parameters FRAME ALIST)Fframe-char-height
253Height in pixels of a line in the font in frame FRAME.
254If FRAME is omitted, the selected frame is used.
255For a terminal frame, the value is always 1.
256
257(frame-char-height &optional FRAME)Fframe-char-width
258Width in pixels of characters in the font in frame FRAME.
259If FRAME is omitted, the selected frame is used.
260The width is the same for all characters, because
261currently Emacs supports only fixed-width fonts.
262For a terminal screen, the value is always 1.
263
264(frame-char-width &optional FRAME)Fframe-pixel-height
265Return a FRAME's height in pixels.
266For a terminal frame, the result really gives the height in characters.
267If FRAME is omitted, the selected frame is used.
268
269(frame-pixel-height &optional FRAME)Fframe-pixel-width
270Return FRAME's width in pixels.
271For a terminal frame, the result really gives the width in characters.
272If FRAME is omitted, the selected frame is used.
273
274(frame-pixel-width &optional FRAME)Fset-frame-height
275Specify that the frame FRAME has LINES lines.
276Optional third arg non-nil means that redisplay should use LINES lines
277but that the idea of the actual height of the frame should not be changed.
278
279(set-frame-height FRAME ROWS &optional PRETEND)Fset-frame-width
280Specify that the frame FRAME has COLS columns.
281Optional third arg non-nil means that redisplay should use COLS columns
282but that the idea of the actual width of the frame should not be changed.
283
284(set-frame-width FRAME COLS &optional PRETEND)Fset-frame-size
285Sets size of FRAME to COLS by ROWS, measured in characters.
286
287(set-frame-size FRAME COLS ROWS)Fset-frame-position
288Sets position of FRAME in pixels to XOFFSET by YOFFSET.
289This is actually the position of the upper left corner of the frame.
290Negative values for XOFFSET or YOFFSET are interpreted relative to
291the rightmost or bottommost possible position (that stays within the screen).
292
293(set-frame-position FRAME XOFFSET YOFFSET)Vterminal-frame
294The initial frame-object, which represents Emacs's stdout.Vemacs-iconified
295Non-nil if all of emacs is iconified and frame updates are not needed.Vdefault-minibuffer-frame
296Minibufferless frames use this frame's minibuffer.
297
298Emacs cannot create minibufferless frames unless this is set to an
299appropriate surrogate.
300
301Emacs consults this variable only when creating minibufferless
302frames; once the frame is created, it sticks with its assigned
303minibuffer, no matter what this variable is set to.  This means that
304this variable doesn't necessarily say anything meaningful about the
305current set of frames, or where the minibuffer is currently being
306displayed.Vdefault-frame-alist
307Alist of default values for frame creation.
308These may be set in your init file, like this:
309  (setq default-frame-alist '((width . 80) (height . 55)))
310These override values given in window system configuration data, like
311X Windows' defaults database.
312For values specific to the first Emacs frame, see `initial-frame-alist'.
313For values specific to the separate minibuffer frame, see
314`minibuffer-frame-alist'.Fframe-height
315Return number of lines available for display on FRAME.
316If FRAME is omitted, describe the currently selected frame.
317
318(frame-height &optional FRAME)Fframe-width
319Return number of columns available for display on FRAME.
320If FRAME is omitted, describe the currently selected frame.
321
322(frame-width &optional FRAME)Fset-screen-height
323Tell redisplay that the screen has LINES lines.
324Optional second arg non-nil means that redisplay should use LINES lines
325but that the idea of the actual height of the screen should not be changed.
326
327(set-screen-height LINES &optional PRETEND)Fset-screen-width
328Tell redisplay that the screen has COLS columns.
329Optional second arg non-nil means that redisplay should use COLS columns
330but that the idea of the actual width of the screen should not be changed.
331
332(set-screen-width COLS &optional PRETEND)Vterminal-frame
333The initial frame-object, which represents Emacs's stdout.Vglobal-mode-string
334String (or mode line construct) included (normally) in `mode-line-format'.Voverlay-arrow-position
335Marker for where to display an arrow on top of the buffer text.
336This must be the beginning of a line in order to work.
337See also `overlay-arrow-string'.Voverlay-arrow-string
338String to display as an arrow.  See also `overlay-arrow-position'.Vscroll-step
339*The number of lines to try scrolling a window by when point moves out.
340If that fails to bring point back on frame, point is centered instead.
341If this is zero, point is always centered after it moves off frame.Vdebug-end-pos
342Don't askVtruncate-partial-width-windows
343*Non-nil means truncate lines in all windows less than full frame wide.Vmode-line-inverse-video
344*Non-nil means use inverse video for the mode line.Vline-number-display-limit
345*Maximum buffer size for which line number should be displayed.Vhighlight-nonselected-windows
346*Non-nil means highlight region even in nonselected windows.Fwindowp
347Returns t if OBJ is a window.
348
349(windowp OBJ)Fwindow-live-p
350Returns t if OBJ is a window which is currently visible.
351
352(window-live-p OBJ)Fselected-window
353Return the window that the cursor now appears in and commands apply to.
354
355(selected-window)Fminibuffer-window
356Return the window used now for minibuffers.
357If the optional argument FRAME is specified, return the minibuffer window
358used by that frame.
359
360(minibuffer-window &optional FRAME)Fwindow-minibuffer-p
361Returns non-nil if WINDOW is a minibuffer window.
362
363(window-minibuffer-p &optional WINDOW)Fpos-visible-in-window-p
364Return t if position POS is currently on the frame in WINDOW.
365Returns nil if that position is scrolled vertically out of view.
366POS defaults to point; WINDOW, to the selected window.
367
368(pos-visible-in-window-p &optional POS WINDOW)Fwindow-buffer
369Return the buffer that WINDOW is displaying.
370
371(window-buffer &optional WINDOW)Fwindow-height
372Return the number of lines in WINDOW (including its mode line).
373
374(window-height &optional WINDOW)Fwindow-width
375Return the number of display columns in WINDOW.
376This is the width that is usable columns available for text in WINDOW.
377If you want to find out how many columns WINDOW takes up,
378use  (let ((edges (window-edges))) (- (nth 2 edges) (nth 0 edges))).
379
380(window-width &optional WINDOW)Fwindow-hscroll
381Return the number of columns by which WINDOW is scrolled from left margin.
382
383(window-hscroll &optional WINDOW)Fset-window-hscroll
384Set number of columns WINDOW is scrolled from left margin to NCOL.
385NCOL should be zero or positive.
386
387(set-window-hscroll WINDOW NCOL)Fwindow-edges
388Return a list of the edge coordinates of WINDOW.
389(LEFT TOP RIGHT BOTTOM), all relative to 0, 0 at top left corner of frame.
390RIGHT is one more than the rightmost column used by WINDOW,
391and BOTTOM is one more than the bottommost row used by WINDOW
392 and its mode-line.
393
394(window-edges &optional WINDOW)Fcoordinates-in-window-p
395Return non-nil if COORDINATES are in WINDOW.
396COORDINATES is a cons of the form (X . Y), X and Y being distances
397measured in characters from the upper-left corner of the frame.
398(0 .  0) denotes the character in the upper left corner of the
399frame.
400If COORDINATES are in the text portion of WINDOW,
401   the coordinates relative to the window are returned.
402If they are in the mode line of WINDOW, `mode-line' is returned.
403If they are on the border between WINDOW and its right sibling,
404   `vertical-line' is returned.
405
406(coordinates-in-window-p COORDINATES WINDOW)Fwindow-at
407Return window containing coordinates X and Y on FRAME.
408If omitted, FRAME defaults to the currently selected frame.
409The top left corner of the frame is considered to be row 0,
410column 0.
411
412(window-at X Y &optional FRAME)Fwindow-point
413Return current value of point in WINDOW.
414For a nonselected window, this is the value point would have
415if that window were selected.
416
417Note that, when WINDOW is the selected window and its buffer
418is also currently selected, the value returned is the same as (point).
419It would be more strictly correct to return the `top-level' value
420of point, outside of any save-excursion forms.
421But that is hard to define.
422
423(window-point &optional WINDOW)Fwindow-start
424Return position at which display currently starts in WINDOW.
425
426(window-start &optional WINDOW)Fwindow-end
427Return position at which display currently ends in WINDOW.
428
429(window-end &optional WINDOW)Fset-window-point
430Make point value in WINDOW be at position POS in WINDOW's buffer.
431
432(set-window-point WINDOW POS)Fset-window-start
433Make display in WINDOW start at position POS in WINDOW's buffer.
434Optional third arg NOFORCE non-nil inhibits next redisplay
435from overriding motion of point in order to display at this exact start.
436
437(set-window-start WINDOW POS &optional NOFORCE)Fwindow-dedicated-p
438Return WINDOW's dedicated object, usually t or nil.
439See also `set-window-dedicated-p'.
440
441(window-dedicated-p WINDOW)Fset-window-dedicated-p
442Control whether WINDOW is dedicated to the buffer it displays.
443If it is dedicated, Emacs will not automatically change
444which buffer appears in it.
445The second argument is the new value for the dedication flag;
446non-nil means yes.
447
448(set-window-dedicated-p WINDOW ARG)Fwindow-display-table
449Return the display-table that WINDOW is using.
450
451(window-display-table &optional WINDOW)Fset-window-display-table
452Set WINDOW's display-table to TABLE.
453
454(set-window-display-table WINDOW TABLE)Fdelete-window
455Remove WINDOW from the display.  Default is selected window.
456
457(delete-window &optional WINDOW)Fnext-window
458Return next window after WINDOW in canonical ordering of windows.
459If omitted, WINDOW defaults to the selected window.
460
461Optional second arg MINIBUF t means count the minibuffer window even
462if not active.  MINIBUF nil or omitted means count the minibuffer iff
463it is active.  MINIBUF neither t nor nil means not to count the
464minibuffer even if it is active.
465
466Several frames may share a single minibuffer; if the minibuffer
467counts, all windows on all frames that share that minibuffer count
468too.  This means that next-window may be used to iterate through the
469set of windows even when the minibuffer is on another frame.  If the
470minibuffer does not count, only windows from WINDOW's frame count.
471
472Optional third arg ALL-FRAMES t means include windows on all frames.
473ALL-FRAMES nil or omitted means cycle within the frames as specified
474above.  ALL-FRAMES = `visible' means include windows on all visible frames.
475Anything else means restrict to WINDOW's frame.
476
477If you use consistent values for MINIBUF and ALL-FRAMES, you can use
478`next-window' to iterate through the entire cycle of acceptable
479windows, eventually ending up back at the window you started with.
480`previous-window' traverses the same cycle, in the reverse order.
481
482(next-window &optional WINDOW MINIBUF ALL-FRAMES)Fprevious-window
483Return the window preceeding WINDOW in canonical ordering of windows.
484If omitted, WINDOW defaults to the selected window.
485
486Optional second arg MINIBUF t means count the minibuffer window even
487if not active.  MINIBUF nil or omitted means count the minibuffer iff
488it is active.  MINIBUF neither t nor nil means not to count the
489minibuffer even if it is active.
490
491Several frames may share a single minibuffer; if the minibuffer
492counts, all windows on all frames that share that minibuffer count
493too.  This means that previous-window may be used to iterate through
494the set of windows even when the minibuffer is on another frame.  If
495the minibuffer does not count, only windows from WINDOW's frame
496count.
497
498Optional third arg ALL-FRAMES t means include windows on all frames.
499ALL-FRAMES nil or omitted means cycle within the frames as specified
500above.  ALL-FRAMES = `visible' means include windows on all visible frames.
501Anything else means restrict to WINDOW's frame.
502
503If you use consistent values for MINIBUF and ALL-FRAMES, you can use
504`previous-window' to iterate through the entire cycle of acceptable
505windows, eventually ending up back at the window you started with.
506`next-window' traverses the same cycle, in the reverse order.
507
508(previous-window &optional WINDOW MINIBUF ALL-FRAMES)Fother-window
509Select the ARG'th different window on this frame.
510All windows on current frame are arranged in a cyclic order.
511This command selects the window ARG steps away in that order.
512A negative ARG moves in the opposite order.  If the optional second
513argument ALL_FRAMES is non-nil, cycle through all frames.
514
515(other-window N &optional ALL-FRAMES)Fget-lru-window
516Return the window least recently selected or used for display.
517If optional argument FRAME is `visible', search all visible frames.
518If FRAME is t, search all frames.
519If FRAME is nil, search only the selected frame.
520If FRAME is a frame, search only that frame.
521
522(get-lru-window &optional FRAME)Fget-largest-window
523Return the largest window in area.
524If optional argument FRAME is `visible', search all visible frames.
525If FRAME is t, search all frames.
526If FRAME is nil, search only the selected frame.
527If FRAME is a frame, search only that frame.
528
529(get-largest-window &optional FRAME)Fget-buffer-window
530Return a window currently displaying BUFFER, or nil if none.
531If optional argument FRAME is `visible', search all visible frames.
532If FRAME is t, search all frames.
533If FRAME is nil, search only the selected frame.
534If FRAME is a frame, search only that frame.
535
536(get-buffer-window BUFFER &optional FRAME)Fdelete-other-windows
537Make WINDOW (or the selected window) fill its frame.
538Only the frame WINDOW is on is affected.
539This function tries to reduce display jumps
540by keeping the text previously visible in WINDOW
541in the same place on the frame.  Doing this depends on
542the value of (window-start WINDOW), so if calling this function
543in a program gives strange scrolling, make sure the window-start
544value is reasonable when this function is called.
545
546(delete-other-windows &optional WINDOW)Fdelete-windows-on
547Delete all windows showing BUFFER.
548Optional second argument FRAME controls which frames are affected.
549If nil or omitted, delete all windows showing BUFFER in any frame.
550If t, delete only windows showing BUFFER in the selected frame.
551If `visible', delete all windows showing BUFFER in any visible frame.
552If a frame, delete only windows showing BUFFER in that frame.
553
554(delete-windows-on BUFFER &optional FRAME)Freplace-buffer-in-windows
555Replace BUFFER with some other buffer in all windows showing it.
556
557(replace-buffer-in-windows BUFFER)Fset-window-buffer
558Make WINDOW display BUFFER as its contents.
559BUFFER can be a buffer or buffer name.
560
561(set-window-buffer WINDOW BUFFER)Fselect-window
562Select WINDOW.  Most editing will apply to WINDOW's buffer.
563The main editor command loop selects the buffer of the selected window
564before each command.
565
566(select-window WINDOW)Fdisplay-buffer
567Make BUFFER appear in some window but don't select it.
568BUFFER can be a buffer or a buffer name.
569If BUFFER is shown already in some window, just use that one,
570unless the window is the selected window and the optional second
571argument NOT-THIS-WINDOW is non-nil (interactively, with prefix arg).
572If `pop-up-frames' is non-nil, make a new frame if no window shows BUFFER.
573Returns the window displaying BUFFER.
574
575(display-buffer BUFFER &optional NOT-THIS-WINDOW)Fsplit-window
576Split WINDOW, putting SIZE lines in the first of the pair.
577WINDOW defaults to selected one and SIZE to half its size.
578If optional third arg HOR-FLAG is non-nil, split side by side
579and put SIZE columns in the first of the pair.
580
581(split-window &optional WINDOW CHSIZE HORFLAG)Fenlarge-window
582Make current window ARG lines bigger.
583From program, optional second arg non-nil means grow sideways ARG columns.
584
585(enlarge-window N &optional SIDE)Fshrink-window
586Make current window ARG lines smaller.
587From program, optional second arg non-nil means shrink sideways ARG columns.
588
589(shrink-window N &optional SIDE)Fscroll-up
590Scroll text of current window upward ARG lines; or near full screen if no ARG.
591A near full screen is `next-screen-context-lines' less than a full screen.
592Negative ARG means scroll downward.
593When calling from a program, supply a number as argument or nil.
594
595(scroll-up &optional N)Fscroll-down
596Scroll text of current window downward ARG lines; or near full screen if no ARG.
597A near full screen is `next-screen-context-lines' less than a full screen.
598Negative ARG means scroll upward.
599When calling from a program, supply a number as argument or nil.
600
601(scroll-down &optional N)Fscroll-other-window
602Scroll next window upward ARG lines; or near full screen if no ARG.
603The next window is the one below the current one; or the one at the top
604if the current one is at the bottom.  Negative ARG means scroll downward.
605When calling from a program, supply a number as argument or nil.
606
607If in the minibuffer, `minibuffer-scroll-window' if non-nil
608specifies the window to scroll.
609If `other-window-scroll-buffer' is non-nil, scroll the window
610showing that buffer, popping the buffer up if necessary.
611
612(scroll-other-window &optional N)Fscroll-left
613Scroll selected window display ARG columns left.
614Default for ARG is window width minus 2.
615
616(scroll-left &optional ARG)Fscroll-right
617Scroll selected window display ARG columns right.
618Default for ARG is window width minus 2.
619
620(scroll-right &optional ARG)Frecenter
621Center point in window and redisplay frame.  With ARG, put point on line ARG.
622The desired position of point is always relative to the current window.
623Just C-u as prefix means put point in the center of the window.
624No arg (i.e., it is nil) erases the entire frame and then
625redraws with point in the center of the current window.
626
627(recenter &optional N)Fmove-to-window-line
628Position point relative to window.
629With no argument, position text at center of window.
630An argument specifies frame line; zero means top of window,
631negative means relative to bottom of window.
632
633(move-to-window-line ARG)Fwindow-configuration-p
634T if OBJECT is a window-configration object.
635
636(window-configuration-p OBJ)Fset-window-configuration
637Set the configuration of windows and buffers as specified by CONFIGURATION.
638CONFIGURATION must be a value previously returned
639by `current-window-configuration' (which see).
640
641(set-window-configuration CONFIGURATION)Fcurrent-window-configuration
642Return an object representing the current window configuration of FRAME.
643If FRAME is nil or omitted, use the selected frame.
644This describes the number of windows, their sizes and current buffers,
645and for each displayed buffer, where display starts, and the positions of
646point and mark.  An exception is made for point in the current buffer:
647its value is -not- saved.
648This also records the currently selected frame, and FRAME's focus
649redirection (see `redirect-frame-focus').
650
651(current-window-configuration &optional FRAME)Fsave-window-excursion
652Execute body, preserving window sizes and contents.
653Restores which buffer appears in which window, where display starts,
654as well as the current buffer.
655Does not restore the value of point in current buffer.Vtemp-buffer-show-function
656Non-nil means call as function to display a help buffer.
657Used by `with-output-to-temp-buffer'.Vdisplay-buffer-function
658If non-nil, function to call to handle `display-buffer'.
659It will receive two args, the buffer and a flag which if non-nil means
660 that the currently selected window is not acceptable.
661Commands such as `switch-to-buffer-other-window' and `find-file-other-window'
662work using this function.Vminibuffer-scroll-window
663Non-nil means it is the window that C-M-v in minibuffer should scroll.Vother-window-scroll-buffer
664If non-nil, this is a buffer and \[scroll-other-window] should scroll its window.Vpop-up-frames
665*Non-nil means `display-buffer' should make a separate frame.Vpop-up-frame-function
666Function to call to handle automatic new frame creation.
667It is called with no arguments and should return a newly created frame.
668
669A typical value might be `(lambda () (new-frame pop-up-frame-alist))'
670where `pop-up-frame-alist' would hold the default frame parameters.Vspecial-display-buffer-names
671*List of buffer names that should have their own special frames.
672Displaying a buffer whose name is in this list makes a special frame for it
673using `special-display-function'.  See also `special-display-regexps'.Vspecial-display-regexps
674*List of regexps saying which buffers should have their own special frames.
675If a buffer name matches one of these regexps, it gets its own frame.
676Displaying a buffer whose name is in this list makes a special frame for it
677using `special-display-function'.  See also `special-display-buffer-names'.Vspecial-display-function
678Function to call to make a new frame for a special buffer.
679It is called with one argument, the buffer,
680and should return a window displaying that buffer.
681The default value makes a separate frame for the buffer,
682using `special-display-alist' to specify the frame parameters.
683
684A buffer is special if its is listed in `special-display-buffer-names'
685or matches a regexp in `special-display-regexps'.Vpop-up-windows
686*Non-nil means display-buffer should make new windows.Vnext-screen-context-lines
687*Number of lines of continuity when scrolling by screenfuls.Vsplit-height-threshold
688*display-buffer would prefer to split the largest window if this large.
689If there is only one window, it is split regardless of this value.Vwindow-min-height
690*Delete any window less than this tall (including its mode line).Vwindow-min-width
691*Delete any window less than this wide.Vsystem-uses-terminfo
692Non-nil means the system uses terminfo rather than termcap.
693This variable can be used by terminal emulator packages.Fx-get-resource
694Return the value of ATTRIBUTE, of class CLASS, from the X defaults database.
695This uses `NAME.ATTRIBUTE' as the key and `Emacs.CLASS' as the
696class, where INSTANCE is the name under which Emacs was invoked, or
697the name specified by the `-name' or `-rn' command-line arguments.
698
699The optional arguments COMPONENT and SUBCLASS add to the key and the
700class, respectively.  You must specify both of them or neither.
701If you specify them, the key is `NAME.COMPONENT.ATTRIBUTE'
702and the class is `Emacs.CLASS.SUBCLASS'.
703
704(x-get-resource ATTRIBUTE CLASS &optional COMPONENT SUBCLASS)Fx-get-default
705Get X default ATTRIBUTE from the system, or nil if no default.
706Value is a string (when not nil) and ATTRIBUTE is also a string.
707The defaults are specified in the file `~/.Xdefaults'.
708
709(x-get-default ARG)Fx-parse-geometry
710Parse an X-style geometry string STRING.
711Returns an alist of the form ((top . TOP), (left . LEFT) ... ).
712The properties returned may include `top', `left', `height', and `width'.
713The value of `left' or `top' may be an integer or `-'.
714`-' means "minus zero".
715
716(x-parse-geometry STRING)Fx-create-frame
717Make a new X window, which is called a "frame" in Emacs terms.
718Return an Emacs frame object representing the X window.
719ALIST is an alist of frame parameters.
720If the parameters specify that the frame should not have a minibuffer,
721and do not specify a specific minibuffer window to use,
722then `default-minibuffer-frame' must be a frame whose minibuffer can
723be shared by the new frame.
724
725(x-create-frame PARMS)Ffocus-frame
726Set the focus on FRAME.
727
728(focus-frame FRAME)Funfocus-frame
729If a frame has been focused, release it.
730
731(unfocus-frame)Fx-list-fonts
732Return a list of the names of available fonts matching PATTERN.
733If optional arguments FACE and FRAME are specified, return only fonts
734the same size as FACE on FRAME.
735
736PATTERN is a string, perhaps with wildcard characters;
737  the * character matches any substring, and
738  the ? character matches any single character.
739  PATTERN is case-insensitive.
740FACE is a face name - a symbol.
741
742The return value is a list of strings, suitable as arguments to
743set-face-font.
744
745Fonts Emacs can't use (i.e. proportional fonts) may or may not be excluded
746even if they match PATTERN and FACE.
747
748(x-list-fonts PATTERN &optional FACE FRAME)Fx-color-defined-p
749Return t if the current X display supports the color named COLOR.
750
751(x-color-defined-p COLOR)Fx-display-color-p
752Return t if the X screen currently in use supports color.
753
754(x-display-color-p)Fx-display-pixel-width
755Returns the width in pixels of the display FRAME is on.
756
757(x-display-pixel-width &optional FRAME)Fx-display-pixel-height
758Returns the height in pixels of the display FRAME is on.
759
760(x-display-pixel-height &optional FRAME)Fx-display-planes
761Returns the number of bitplanes of the display FRAME is on.
762
763(x-display-planes &optional FRAME)Fx-display-color-cells
764Returns the number of color cells of the display FRAME is on.
765
766(x-display-color-cells &optional FRAME)Fx-server-max-request-size
767Returns the maximum request size of the X server FRAME is using.
768
769(x-server-max-request-size &optional FRAME)Fx-server-vendor
770Returns the vendor ID string of the X server FRAME is on.
771
772(x-server-vendor &optional FRAME)Fx-server-version
773Returns the version numbers of the X server in use.
774The value is a list of three integers: the major and minor
775version numbers of the X Protocol in use, and the vendor-specific release
776number.  See also the variable `x-server-vendor'.
777
778(x-server-version &optional FRAME)Fx-display-screens
779Returns the number of screens on the X server FRAME is on.
780
781(x-display-screens &optional FRAME)Fx-display-mm-height
782Returns the height in millimeters of the X screen FRAME is on.
783
784(x-display-mm-height &optional FRAME)Fx-display-mm-width
785Returns the width in millimeters of the X screen FRAME is on.
786
787(x-display-mm-width &optional FRAME)Fx-display-backing-store
788Returns an indication of whether the X screen FRAME is on does backing store.
789The value may be `always', `when-mapped', or `not-useful'.
790
791(x-display-backing-store &optional FRAME)Fx-display-visual-class
792Returns the visual class of the display `screen' is on.
793The value is one of the symbols `static-gray', `gray-scale',
794`static-color', `pseudo-color', `true-color', or `direct-color'.
795
796(x-display-visual-class &optional SCREEN)Fx-display-save-under
797Returns t if the X screen FRAME is on supports the save-under feature.
798
799(x-display-save-under &optional FRAME)Fx-draw-rectangle
800Draw a rectangle on FRAME between coordinates specified by
801numbers X0, Y0, X1, Y1 in the cursor pixel.
802
803(x-draw-rectangle FRAME X0 Y0 X1 Y1)Fx-erase-rectangle
804Draw a rectangle drawn on FRAME between coordinates
805X0, Y0, X1, Y1 in the regular background-pixel.
806
807(x-erase-rectangle FRAME X0 Y0 X1 Y1)Fx-contour-region
808Highlight the region between point and the character under the mouse
809selected frame.
810
811(x-contour-region EVENT)Fx-uncontour-region
812Erase any highlighting of the region between point and the character
813at X, Y on the selected frame.
814
815(x-uncontour-region EVENT)Fx-select-region
816
817
818(x-select-region EVENT)Fx-horizontal-line
819
820
821(x-horizontal-line EVENT)Fx-track-pointer
822Track the pointer.
823
824(x-track-pointer)Fx-track-pointer
825Draw rectangle around character under mouse pointer, if there is one.
826
827(x-track-pointer EVENT)Fx-store-cut-buffer
828Store contents of STRING into the cut buffer of the X window system.
829
830(x-store-cut-buffer STRING)Fx-get-cut-buffer
831Return contents of cut buffer of the X window system, as a string.
832
833(x-get-cut-buffer)Fx-rebind-key
834Rebind X keysym KEYSYM, with MODIFIERS, to generate NEWSTRING.
835KEYSYM is a string which conforms to the X keysym definitions found
836in X11/keysymdef.h, sans the initial XK_. MODIFIERS is nil or a
837list of strings specifying modifier keys such as Control_L, which must
838also be depressed for NEWSTRING to appear.
839
840(x-rebind-key X-KEYSYM MODIFIERS NEWSTRING)Fx-rebind-keys
841Rebind KEYCODE to list of strings STRINGS.
842STRINGS should be a list of 16 elements, one for each shift combination.
843nil as element means don't change.
844See the documentation of `x-rebind-key' for more information.
845
846(x-rebind-keys KEYCODE STRINGS)Fx-open-connection
847Open a connection to an X server.
848DISPLAY is the name of the display to connect to.
849Optional second arg XRM_STRING is a string of resources in xrdb format.
850
851(x-open-connection DISPLAY &optional XRM-STRING)Fx-close-current-connection
852Close the connection to the current X server.
853
854(x-close-current-connection)Fx-synchronize
855If ON is non-nil, report X errors as soon as the erring request is made.
856If ON is nil, allow buffering of requests.
857Turning on synchronization prohibits the Xlib routines from buffering
858requests and seriously degrades performance, but makes debugging much
859easier.
860
861(x-synchronize ON)Vmouse-buffer-offset
862The buffer offset of the character under the pointer.Vx-pointer-shape
863The shape of the pointer when over text.
864Changing the value does not affect existing frames
865unless you set the mouse color.Vx-resource-name
866The name Emacs uses to look up X resources; for internal use only.
867`x-get-resource' uses this as the first component of the instance name
868when requesting resource values.
869Emacs initially sets `x-resource-name' to the name under which Emacs
870was invoked, or to the value specified with the `-name' or `-rn'
871switches, if present.Vx-nontext-pointer-shape
872The shape of the pointer when not over text.
873This variable takes effect when you create a new frame
874or when you set the mouse color.Vx-mode-pointer-shape
875The shape of the pointer when over the mode line.
876This variable takes effect when you create a new frame
877or when you set the mouse color.Vx-sensitive-text-pointer-shape
878The shape of the pointer when over mouse-sensitive text.
879This variable takes effect when you create a new frame
880or when you set the mouse color.Vx-cursor-fore-pixel
881A string indicating the foreground color of the cursor box.Vmouse-grabbed
882Non-nil if a mouse button is currently depressed.Vx-no-window-manager
883t if no X window manager is in use.Fframe-face-alist
884
885
886(frame-face-alist FRAME)Fset-frame-face-alist
887
888
889(set-frame-face-alist FRAME VALUE)Fmake-face-internal
890Create face number FACE-ID on all frames.
891
892(make-face-internal FACE-ID)Fset-face-attribute-internal
893
894
895(set-face-attribute-internal FACE-ID ATTR-NAME ATTR-VALUE FRAME)Finternal-next-face-id
896
897
898(internal-next-face-id)Vregion-face
899Face number to use to highlight the region
900The region is highlighted with this face
901when Transient Mark mode is enabled and the mark is active.Fx-popup-menu
902Pop up a deck-of-cards menu and return user's selection.
903POSITION is a position specification.  This is either a mouse button event
904or a list ((XOFFSET YOFFSET) WINDOW)
905where XOFFSET and YOFFSET are positions in pixels from the top left
906corner of WINDOW's frame.  (WINDOW may be a frame object instead of a window.)
907This controls the position of the center of the first line
908in the first pane of the menu, not the top left of the menu as a whole.
909If POSITION is t, it means to use the current mouse position.
910
911MENU is a specifier for a menu.  For the simplest case, MENU is a keymap.
912The menu items come from key bindings that have a menu string as well as
913a definition; actually, the "definition" in such a key binding looks like
914(STRING . REAL-DEFINITION).  To give the menu a title, put a string into
915the keymap as a top-level element.
916
917You can also use a list of keymaps as MENU.
918  Then each keymap makes a separate pane.
919When MENU is a keymap or a list of keymaps, the return value
920is a list of events.
921
922Alternatively, you can specify a menu of multiple panes
923  with a list of the form (TITLE PANE1 PANE2...),
924where each pane is a list of form (TITLE ITEM1 ITEM2...).
925Each ITEM is normally a cons cell (STRING . VALUE);
926but a string can appear as an item--that makes a nonselectable line
927in the menu.
928With this form of menu, the return value is VALUE from the chosen item.
929
930If POSITION is nil, don't display the menu at all, just precalculate the
931cached information about equivalent key sequences.
932
933(x-popup-menu POSITION MENU)Fx-popup-dialog
934Pop up a dialog box and return user's selection.
935POSITION specifies which frame to use.
936This is normally a mouse button event or a window or frame.
937If POSITION is t, it means to use the frame the mouse is on.
938The dialog box appears in the middle of the specified frame.
939
940CONTENTS specifies the alternatives to display in the dialog box.
941It is a list of the form (TITLE ITEM1 ITEM2...).
942Each ITEM is a cons cell (STRING . VALUE).
943The return value is VALUE from the chosen item.
944
945An ITEM may also be just a string--that makes a nonselectable item.
946An ITEM may also be nil--that means to put all preceding items
947on the left of the dialog box and all following items on the right.
948(By default, approximately half appear on each side.)
949
950(x-popup-dialog POSITION CONTENTS)Fx-own-selection-internal
951Assert an X selection of the given TYPE with the given VALUE.
952TYPE is a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD'.
953(Those are literal upper-case symbol names, since that's what X expects.)
954VALUE is typically a string, or a cons of two markers, but may be
955anything that the functions on `selection-converter-alist' know about.
956
957(x-own-selection-internal SELECTION-NAME SELECTION-VALUE)Fx-get-selection-internal
958Return text selected from some X window.
959SELECTION is a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD'.
960(Those are literal upper-case symbol names, since that's what X expects.)
961TYPE is the type of data desired, typically `STRING'.
962
963(x-get-selection-internal SELECTION-SYMBOL TARGET-TYPE)Fx-disown-selection-internal
964If we own the selection SELECTION, disown it.
965Disowning it means there is no such selection.
966
967(x-disown-selection-internal SELECTION &optional TIME)Fx-selection-owner-p
968Whether the current Emacs process owns the given X Selection.
969The arg should be the name of the selection in question, typically one of
970the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'.
971(Those are literal upper-case symbol names, since that's what X expects.)
972For convenience, the symbol nil is the same as `PRIMARY',
973and t is the same as `SECONDARY'.)
974
975(x-selection-owner-p &optional SELECTION)Fx-selection-exists-p
976Whether there is an owner for the given X Selection.
977The arg should be the name of the selection in question, typically one of
978the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'.
979(Those are literal upper-case symbol names, since that's what X expects.)
980For convenience, the symbol nil is the same as `PRIMARY',
981and t is the same as `SECONDARY'.)
982
983(x-selection-exists-p &optional SELECTION)Fx-get-cut-buffer-internal
984Returns the value of the named cut buffer (typically CUT_BUFFER0).
985
986(x-get-cut-buffer-internal BUFFER)Fx-store-cut-buffer-internal
987Sets the value of the named cut buffer (typically CUT_BUFFER0).
988
989(x-store-cut-buffer-internal BUFFER STRING)Fx-rotate-cut-buffers-internal
990Rotate the values of the cut buffers by the given number of steps;
991positive means move values forward, negative means backward.
992
993(x-rotate-cut-buffers-internal N)Vselection-converter-alist
994An alist associating X Windows selection-types with functions.
995These functions are called to convert the selection, with three args:
996the name of the selection (typically `PRIMARY', `SECONDARY', or `CLIPBOARD');
997a desired type to which the selection should be converted;
998and the local selection value (whatever was given to `x-own-selection').
999
1000The function should return the value to send to the X server
1001(typically a string).  A return value of nil
1002means that the conversion could not be done.
1003A return value which is the symbol `NULL'
1004means that a side-effect was executed,
1005and there is no meaningful selection value.Vx-lost-selection-hooks
1006A list of functions to be called when Emacs loses an X selection.
1007(This happens when some other X client makes its own selection
1008or when a Lisp program explicitly clears the selection.)
1009The functions are called with one argument, the selection type
1010(a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD'.)Vx-sent-selection-hooks
1011A list of functions to be called when Emacs answers a selection request.
1012The functions are called with four arguments:
1013  - the selection name (typically `PRIMARY', `SECONDARY', or `CLIPBOARD');
1014  - the selection-type which Emacs was asked to convert the
1015    selection into before sending (for example, `STRING' or `LENGTH');
1016  - a flag indicating success or failure for responding to the request.
1017We might have failed (and declined the request) for any number of reasons,
1018including being asked for a selection that we no longer own, or being asked
1019to convert into a type that we don't know about or that is inappropriate.
1020This hook doesn't let you change the behavior of Emacs's selection replies,
1021it merely informs you that they have happened.Vx-selection-timeout
1022Number of milliseconds to wait for a selection reply.
1023If the selection owner doens't reply in this time, we give up.
1024A value of 0 means wait as long as necessary.  This is initialized from the
1025"*selectionTimeout" resource.Finvocation-name
1026Return the program name that was used to run Emacs.
1027Any directory names are omitted.
1028
1029(invocation-name)Finvocation-directory
1030Return the directory name in which the Emacs executable was located
1031
1032(invocation-directory)Fkill-emacs
1033Exit the Emacs job and kill it.
1034If ARG is an integer, return ARG as the exit program code.
1035If ARG is a  string, stuff it as keyboard input.
1036
1037The value of `kill-emacs-hook', if not void,
1038is a list of functions (of no args),
1039all of which are called before Emacs is actually killed.
1040
1041(kill-emacs &optional ARG)Fdump-emacs-data
1042Dump current state of Emacs into data file FILENAME.
1043This function exists on systems that use HAVE_SHM.
1044
1045(dump-emacs-data INTONAME)Fdump-emacs
1046Dump current state of Emacs into executable file FILENAME.
1047Take symbols from SYMFILE (presumably the file you executed to run Emacs).
1048This is used in the file `loadup.el' when building Emacs.
1049
1050Bind `command-line-processed' to nil before dumping,
1051if you want the dumped Emacs to process its command line
1052and announce itself normally when it is run.
1053
1054(dump-emacs INTONAME SYMNAME)Vcommand-line-args
1055Args passed by shell to Emacs, as a list of strings.Vsystem-type
1056Value is symbol indicating type of operating system you are using.Vsystem-configuration
1057Value is string indicating configuration Emacs was built for.Vnoninteractive
1058Non-nil means Emacs is running without interactive terminal.Vkill-emacs-hook
1059Hook to be run whenever kill-emacs is called.
1060Since kill-emacs may be invoked when the terminal is disconnected (or
1061in other similar situations), functions placed on this hook should not
1062expect to be able to interact with the user.Vemacs-priority
1063Priority for Emacs to run at.
1064This value is effective only if set before Emacs is dumped,
1065and only if the Emacs executable is installed with setuid to permit
1066it to change priority.  (Emacs sets its uid back to the real uid.)
1067Currently, you need to define SET_EMACS_PRIORITY in `config.h'
1068before you compile Emacs, to enable the code for this feature.Vinvocation-name
1069The program name that was used to run Emacs.
1070Any directory names are omitted.Vinvocation-directory
1071The directory in which the Emacs executable was found, to run it.
1072The value is nil if that directory's name is not known.Vinstallation-directory
1073A directory within which to look for the `lib-src' and `etc' directories.
1074This is non-nil when we can't find those directories in their standard
1075installed locations, but we can find them
1076near where the Emacs executable was found.Frecursive-edit
1077Invoke the editor command loop recursively.
1078To get out of the recursive edit, a command can do `(throw 'exit nil)';
1079that tells this function to return.
1080Alternately, `(throw 'exit t)' makes this function signal an error.
1081This function is called by the editor initialization to begin editing.
1082
1083(recursive-edit)Ftop-level
1084Exit all recursive editing levels.
1085
1086(top-level)Fexit-recursive-edit
1087Exit from the innermost recursive edit or minibuffer.
1088
1089(exit-recursive-edit)Fabort-recursive-edit
1090Abort the command that requested this recursive edit or minibuffer input.
1091
1092(abort-recursive-edit)Ftrack-mouse
1093Evaluate BODY with mouse movement events enabled.
1094Within a `track-mouse' form, mouse motion generates input events that
1095you can read with `read-event'.
1096Normally, mouse motion is ignored.Fread-key-sequence
1097Read a sequence of keystrokes and return as a string or vector.
1098The sequence is sufficient to specify a non-prefix command in the
1099current local and global maps.
1100
1101First arg PROMPT is a prompt string.  If nil, do not prompt specially.
1102Second (optional) arg CONTINUE-ECHO, if non-nil, means this key echos
1103as a continuation of the previous key.
1104
1105A C-g typed while in this function is treated like any other character,
1106and `quit-flag' is not set.
1107
1108If the key sequence starts with a mouse click, then the sequence is read
1109using the keymaps of the buffer of the window clicked in, not the buffer
1110of the selected window as normal.
1111
1112`read-key-sequence' drops unbound button-down events, since you normally
1113only care about the click or drag events which follow them.  If a drag
1114or multi-click event is unbound, but the corresponding click event would
1115be bound, `read-key-sequence' turns the event into a click event at the
1116drag's starting position.  This means that you don't have to distinguish
1117between click and drag, double, or triple events unless you want to.
1118
1119`read-key-sequence' prefixes mouse events on mode lines, the vertical
1120lines separating windows, and scroll bars with imaginary keys
1121`mode-line', `vertical-line', and `vertical-scroll-bar'.
1122
1123If the user switches frames in the middle of a key sequence, the
1124frame-switch event is put off until after the current key sequence.
1125
1126`read-key-sequence' checks `function-key-map' for function key
1127sequences, where they wouldn't conflict with ordinary bindings.  See
1128`function-key-map' for more details.
1129
1130(read-key-sequence PROMPT &optional CONTINUE-ECHO)Fcommand-execute
1131Execute CMD as an editor command.
1132CMD must be a symbol that satisfies the `commandp' predicate.
1133Optional second arg RECORD-FLAG non-nil
1134means unconditionally put this command in `command-history'.
1135Otherwise, that is done only if an arg is read using the minibuffer.
1136
1137(command-execute CMD &optional RECORD)Fexecute-extended-command
1138Read function name, then read its arguments and call it.
1139
1140(execute-extended-command PREFIXARG)Finput-pending-p
1141T if command input is currently available with no waiting.
1142Actually, the value is nil only if we can be sure that no input is available.
1143
1144(input-pending-p)Frecent-keys
1145Return vector of last 100 events, not counting those from keyboard macros.
1146
1147(recent-keys)Fthis-command-keys
1148Return the key sequence that invoked this command.
1149The value is a string or a vector.
1150
1151(this-command-keys)Frecursion-depth
1152Return the current depth in recursive edits.
1153
1154(recursion-depth)Fopen-dribble-file
1155Start writing all keyboard characters to a dribble file called FILE.
1156If FILE is nil, close any open dribble file.
1157
1158(open-dribble-file FILE)Fdiscard-input
1159Discard the contents of the terminal input buffer.
1160Also cancel any kbd macro being defined.
1161
1162(discard-input)Fsuspend-emacs
1163Stop Emacs and return to superior process.  You can resume later.
1164If `cannot-suspend' is non-nil, or if the system doesn't support job
1165control, run a subshell instead.
1166
1167If optional arg STUFFSTRING is non-nil, its characters are stuffed
1168to be read as terminal input by Emacs's parent, after suspension.
1169
1170Before suspending, call the functions in `suspend-hook' with no args.
1171If any of them returns nil, don't call the rest and don't suspend.
1172Otherwise, suspend normally and after resumption run the normal hook
1173`suspend-resume-hook' if that is bound and non-nil.
1174
1175Some operating systems cannot stop the Emacs process and resume it later.
1176On such systems, Emacs starts a subshell instead of suspending.
1177
1178(suspend-emacs &optional STUFFSTRING)Fset-input-mode
1179Set mode of reading keyboard input.
1180First arg INTERRUPT non-nil means use input interrupts;
1181 nil means use CBREAK mode.
1182Second arg FLOW non-nil means use ^S/^Q flow control for output to terminal
1183 (no effect except in CBREAK mode).
1184Third arg META t means accept 8-bit input (for a Meta key).
1185 META nil means ignore the top bit, on the assumption it is parity.
1186 Otherwise, accept 8-bit input and don't use the top bit for Meta.
1187Optional fourth arg QUIT if non-nil specifies character to use for quitting.
1188See also `current-input-mode'.
1189
1190(set-input-mode INTERRUPT FLOW META &optional QUIT)Fcurrent-input-mode
1191Return information about the way Emacs currently reads keyboard input.
1192The value is a list of the form (INTERRUPT FLOW META QUIT), where
1193  INTERRUPT is non-nil if Emacs is using interrupt-driven input; if
1194    nil, Emacs is using CBREAK mode.
1195  FLOW is non-nil if Emacs uses ^S/^Q flow control for output to the
1196    terminal; this does not apply if Emacs uses interrupt-driven input.
1197  META is t if accepting 8-bit input with 8th bit as Meta flag.
1198    META nil means ignoring the top bit, on the assumption it is parity.
1199    META is neither t nor nil if accepting 8-bit input and using
1200    all 8 bits as the character code.
1201  QUIT is the character Emacs currently uses to quit.
1202The elements of this list correspond to the arguments of
1203`set-input-mode'.
1204
1205(current-input-mode)Vlast-command-char
1206Last input event that was part of a command.Vlast-command-event
1207Last input event that was part of a command.Vlast-nonmenu-event
1208Last input event in a command, except for mouse menu events.
1209Mouse menus give back keys that don't look like mouse events;
1210this variable holds the actual mouse event that led to the menu,
1211so that you can determine whether the command was run by mouse or not.Vlast-input-char
1212Last input event.Vlast-input-event
1213Last input event.Vunread-command-events
1214List of objects to be read as next command input events.Vunread-command-char
1215If not -1, an object to be read as next command input event.Vmeta-prefix-char
1216Meta-prefix character code.  Meta-foo as command input
1217turns into this character followed by foo.Vlast-command
1218The last command executed.  Normally a symbol with a function definition,
1219but can be whatever was found in the keymap, or whatever the variable
1220`this-command' was set to by that command.Vthis-command
1221The command now being executed.
1222The command can set this variable; whatever is put here
1223will be in `last-command' during the following command.Vauto-save-interval
1224*Number of keyboard input characters between auto-saves.
1225Zero means disable autosaving due to number of characters typed.Vauto-save-timeout
1226*Number of seconds idle time before auto-save.
1227Zero or nil means disable auto-saving due to idleness.
1228After auto-saving due to this many seconds of idle time,
1229Emacs also does a garbage collection if that seems to be warranted.Vecho-keystrokes
1230*Nonzero means echo unfinished commands after this many seconds of pause.Vpolling-period
1231*Interval between polling for input during Lisp execution.
1232The reason for polling is to make C-g work to stop a running program.
1233Polling is needed only when using X windows and SIGIO does not work.
1234Polling is automatically disabled in all other cases.Vdouble-click-time
1235*Maximum time between mouse clicks to make a double-click.
1236Measured in milliseconds.  nil means disable double-click recognition;
1237t means double-clicks have no time limit and are detected
1238by position only.Vnum-input-keys
1239*Number of complete keys read from the keyboard so far.Vlast-event-frame
1240*The frame in which the most recently read event occurred.
1241If the last event came from a keyboard macro, this is set to `macro'.Vhelp-char
1242Character to recognize as meaning Help.
1243When it is read, do `(eval help-form)', and display result if it's a string.
1244If the value of `help-form' is nil, this char can be read normally.Vhelp-form
1245Form to execute when character `help-char' is read.
1246If the form returns a string, that string is displayed.
1247If `help-form' is nil, the help char is not recognized.Vprefix-help-command
1248Command to run when `help-char' character follows a prefix key.
1249This command is used only when there is no actual binding
1250for that character after that prefix key.Vtop-level
1251Form to evaluate when Emacs starts up.
1252Useful to set before you dump a modified Emacs.Vkeyboard-translate-table
1253String used as translate table for keyboard input, or nil.
1254Each character is looked up in this string and the contents used instead.
1255If string is of length N, character codes N and up are untranslated.Vkey-translation-map
1256Keymap of key translations that can override keymaps.
1257This keymap works like `function-key-map', but comes after that,
1258and applies even for keys that have ordinary bindings.Vcannot-suspend
1259Non-nil means to always spawn a subshell instead of suspending,
1260even if the operating system has support for stopping a process.Vmenu-prompting
1261Non-nil means prompt with menus when appropriate.
1262This is done when reading from a keymap that has a prompt string,
1263for elements that have prompt strings.
1264The menu is displayed on the screen
1265if X menus were enabled at configuration
1266time and the previous event was a mouse click prefix key.
1267Otherwise, menu prompting uses the echo area.Vmenu-prompt-more-char
1268Character to see next line of menu prompt.
1269Type this character while in a menu prompt to rotate around the lines of it.Vextra-keyboard-modifiers
1270A mask of additional modifier keys to use with every keyboard character.
1271Emacs applies the modifiers of the character stored here to each keyboard
1272character it reads.  For example, after evaluating the expression
1273    (setq extra-keyboard-modifiers ?C-x)
1274all input characters will have the control modifier applied to them.
1275
1276Note that the character ?C-@, equivalent to the integer zero, does
1277not count as a control character; rather, it counts as a character
1278with no modifiers; thus, setting `extra-keyboard-modifiers' to zero
1279cancels any modification.Vdeactivate-mark
1280If an editing command sets this to t, deactivate the mark afterward.
1281The command loop sets this to nil before each command,
1282and tests the value when the command returns.
1283Buffer modification stores t in this variable.Vcommand-hook-internal
1284Temporary storage of pre-command-hook or post-command-hook.Vpre-command-hook
1285Normal hook run before each command is executed.
1286While the hook is run, its value is temporarily set to nil
1287to avoid an unbreakable infinite loop if a hook function gets an error.
1288As a result, a hook function cannot straightforwardly alter the value of
1289`pre-command-hook'.  See the Emacs Lisp manual for a way of
1290implementing hook functions that alter the set of hook functions.Vpost-command-hook
1291Normal hook run after each command is executed.
1292While the hook is run, its value is temporarily set to nil
1293to avoid an unbreakable infinite loop if a hook function gets an error.
1294As a result, a hook function cannot straightforwardly alter the value of
1295`post-command-hook'.  See the Emacs Lisp manual for a way of
1296implementing hook functions that alter the set of hook functions.Vlucid-menu-bar-dirty-flag
1297t means menu bar, specified Lucid style, needs to be recomputed.Vmenu-bar-final-items
1298List of menu bar items to move to the end of the menu bar.
1299The elements of the list are event types that may have menu bar bindings.Voverriding-local-map
1300Keymap that overrides all other local keymaps.
1301If this variable is non-nil, it is used as a keymap instead of the
1302buffer's local map, and the minor mode keymaps and text property keymaps.Vtrack-mouse
1303*Non-nil means generate motion events for mouse motion.Vsystem-key-alist
1304Alist of system-specific X windows key symbols.
1305Each element should have the form (N . SYMBOL) where N is the
1306numeric keysym code (sans the "system-specific" bit 1<<28)
1307and SYMBOL is its name.Fstart-kbd-macro
1308Record subsequent keyboard input, defining a keyboard macro.
1309The commands are recorded even as they are executed.
1310Use \[end-kbd-macro] to finish recording and make the macro available.
1311Use \[name-last-kbd-macro] to give it a permanent name.
1312Non-nil arg (prefix arg) means append to last macro defined;
1313 This begins by re-executing that macro as if you typed it again.
1314
1315(start-kbd-macro APPEND)Fend-kbd-macro
1316Finish defining a keyboard macro.
1317The definition was started by \[start-kbd-macro].
1318The macro is now available for use via \[call-last-kbd-macro],
1319or it can be given a name with \[name-last-kbd-macro] and then invoked
1320under that name.
1321
1322With numeric arg, repeat macro now that many times,
1323counting the definition just completed as the first repetition.
1324An argument of zero means repeat until error.
1325
1326(end-kbd-macro &optional ARG)Fcall-last-kbd-macro
1327Call the last keyboard macro that you defined with \[start-kbd-macro].
1328
1329A prefix argument serves as a repeat count.  Zero means repeat until error.
1330
1331To make a macro permanent so you can call it even after
1332defining others, use \[name-last-kbd-macro].
1333
1334(call-last-kbd-macro &optional PREFIX)Fexecute-kbd-macro
1335Execute MACRO as string of editor command characters.
1336If MACRO is a symbol, its function definition is used.
1337COUNT is a repeat count, or nil for once, or 0 for infinite loop.
1338
1339(execute-kbd-macro MACRO &optional PREFIXARG)Vdefining-kbd-macro
1340Non-nil while a keyboard macro is being defined.  Don't set this!Vexecuting-macro
1341Currently executing keyboard macro (a string); nil if none executing.Vexecuting-kbd-macro
1342Currently executing keyboard macro (a string); nil if none executing.Vlast-kbd-macro
1343Last kbd macro defined, as a string; nil if none defined.Fmake-keymap
1344Construct and return a new keymap, of the form (keymap VECTOR . ALIST).
1345VECTOR is a vector which holds the bindings for the ASCII
1346characters.  ALIST is an assoc-list which holds bindings for function keys,
1347mouse events, and any other things that appear in the input stream.
1348All entries in it are initially nil, meaning "command undefined".
1349
1350The optional arg STRING supplies a menu name for the keymap
1351in case you use it as a menu with `x-popup-menu'.
1352
1353(make-keymap &optional STRING)Fmake-sparse-keymap
1354Construct and return a new sparse-keymap list.
1355Its car is `keymap' and its cdr is an alist of (CHAR . DEFINITION),
1356which binds the character CHAR to DEFINITION, or (SYMBOL . DEFINITION),
1357which binds the function key or mouse event SYMBOL to DEFINITION.
1358Initially the alist is nil.
1359
1360The optional arg STRING supplies a menu name for the keymap
1361in case you use it as a menu with `x-popup-menu'.
1362
1363(make-sparse-keymap &optional STRING)Fkeymapp
1364Return t if ARG is a keymap.
1365
1366A keymap is a list (keymap . ALIST),
1367or a symbol whose function definition is itself a keymap.
1368ALIST elements look like (CHAR . DEFN) or (SYMBOL . DEFN);
1369a vector of densely packed bindings for small character codes
1370is also allowed as an element.
1371
1372(keymapp OBJECT)Fcopy-keymap
1373Return a copy of the keymap KEYMAP.
1374The copy starts out with the same definitions of KEYMAP,
1375but changing either the copy or KEYMAP does not affect the other.
1376Any key definitions that are subkeymaps are recursively copied.
1377However, a key definition which is a symbol whose definition is a keymap
1378is not copied.
1379
1380(copy-keymap KEYMAP)Fdefine-key
1381Args KEYMAP, KEY, DEF.  Define key sequence KEY, in KEYMAP, as DEF.
1382KEYMAP is a keymap.  KEY is a string or a vector of symbols and characters
1383meaning a sequence of keystrokes and events.
1384Non-ASCII characters with codes above 127 (such as ISO Latin-1)
1385can be included if you use a vector.
1386DEF is anything that can be a key's definition:
1387 nil (means key is undefined in this keymap),
1388 a command (a Lisp function suitable for interactive calling)
1389 a string (treated as a keyboard macro),
1390 a keymap (to define a prefix key),
1391 a symbol.  When the key is looked up, the symbol will stand for its
1392    function definition, which should at that time be one of the above,
1393    or another symbol whose function definition is used, etc.
1394 a cons (STRING . DEFN), meaning that DEFN is the definition
1395    (DEFN should be a valid definition in its own right),
1396 or a cons (KEYMAP . CHAR), meaning use definition of CHAR in map KEYMAP.
1397
1398If KEYMAP is a sparse keymap, the pair binding KEY to DEF is added at
1399the front of KEYMAP.
1400
1401(define-key KEYMAP KEY DEF)Flookup-key
1402In keymap KEYMAP, look up key sequence KEY.  Return the definition.
1403nil means undefined.  See doc of `define-key' for kinds of definitions.
1404
1405A number as value means KEY is "too long";
1406that is, characters or symbols in it except for the last one
1407fail to be a valid sequence of prefix characters in KEYMAP.
1408The number is how many characters at the front of KEY
1409it takes to reach a non-prefix command.
1410
1411Normally, `lookup-key' ignores bindings for t, which act as default
1412bindings, used when nothing else in the keymap applies; this makes it
1413useable as a general function for probing keymaps.  However, if the
1414third optional argument ACCEPT-DEFAULT is non-nil, `lookup-key' will
1415recognize the default bindings, just as `read-key-sequence' does.
1416
1417(lookup-key KEYMAP KEY &optional ACCEPT-DEFAULT)Fkey-binding
1418Return the binding for command KEY in current keymaps.
1419KEY is a string or vector, a sequence of keystrokes.
1420The binding is probably a symbol with a function definition.
1421
1422Normally, `key-binding' ignores bindings for t, which act as default
1423bindings, used when nothing else in the keymap applies; this makes it
1424usable as a general function for probing keymaps.  However, if the
1425optional second argument ACCEPT-DEFAULT is non-nil, `key-binding' does
1426recognize the default bindings, just as `read-key-sequence' does.
1427
1428(key-binding KEY &optional ACCEPT-DEFAULT)Flocal-key-binding
1429Return the binding for command KEYS in current local keymap only.
1430KEYS is a string, a sequence of keystrokes.
1431The binding is probably a symbol with a function definition.
1432
1433If optional argument ACCEPT-DEFAULT is non-nil, recognize default
1434bindings; see the description of `lookup-key' for more details about this.
1435
1436(local-key-binding KEYS &optional ACCEPT-DEFAULT)Fglobal-key-binding
1437Return the binding for command KEYS in current global keymap only.
1438KEYS is a string, a sequence of keystrokes.
1439The binding is probably a symbol with a function definition.
1440This function's return values are the same as those of lookup-key
1441(which see).
1442
1443If optional argument ACCEPT-DEFAULT is non-nil, recognize default
1444bindings; see the description of `lookup-key' for more details about this.
1445
1446(global-key-binding KEYS &optional ACCEPT-DEFAULT)Fminor-mode-key-binding
1447Find the visible minor mode bindings of KEY.
1448Return an alist of pairs (MODENAME . BINDING), where MODENAME is the
1449the symbol which names the minor mode binding KEY, and BINDING is
1450KEY's definition in that mode.  In particular, if KEY has no
1451minor-mode bindings, return nil.  If the first binding is a
1452non-prefix, all subsequent bindings will be omitted, since they would
1453be ignored.  Similarly, the list doesn't include non-prefix bindings
1454that come after prefix bindings.
1455
1456If optional argument ACCEPT-DEFAULT is non-nil, recognize default
1457bindings; see the description of `lookup-key' for more details about this.
1458
1459(minor-mode-key-binding KEY &optional ACCEPT-DEFAULT)Fglobal-set-key
1460Give KEY a global binding as COMMAND.
1461COMMAND is a symbol naming an interactively-callable function.
1462KEY is a key sequence (a string or vector of characters or event types).
1463Non-ASCII characters with codes above 127 (such as ISO Latin-1)
1464can be included if you use a vector.
1465Note that if KEY has a local binding in the current buffer
1466that local binding will continue to shadow any global binding.
1467
1468(global-set-key KEYS FUNCTION)Flocal-set-key
1469Give KEY a local binding as COMMAND.
1470COMMAND is a symbol naming an interactively-callable function.
1471KEY is a key sequence (a string or vector of characters or event types).
1472Non-ASCII characters with codes above 127 (such as ISO Latin-1)
1473can be included if you use a vector.
1474The binding goes in the current buffer's local map,
1475which in most cases is shared with all other buffers in the same major mode.
1476
1477(local-set-key KEYS FUNCTION)Fglobal-unset-key
1478Remove global binding of KEY.
1479KEY is a string representing a sequence of keystrokes.
1480
1481(global-unset-key KEYS)Flocal-unset-key
1482Remove local binding of KEY.
1483KEY is a string representing a sequence of keystrokes.
1484
1485(local-unset-key KEYS)Fdefine-prefix-command
1486Define COMMAND as a prefix command.  COMMAND should be a symbol.
1487A new sparse keymap is stored as COMMAND's function definition and its value.
1488If a second optional argument MAPVAR is given, the map is stored as
1489its value instead of as COMMAND's value; but COMMAND is still defined
1490as a function.
1491
1492(define-prefix-command NAME &optional MAPVAR)Fuse-global-map
1493Select KEYMAP as the global keymap.
1494
1495(use-global-map KEYMAP)Fuse-local-map
1496Select KEYMAP as the local keymap.
1497If KEYMAP is nil, that means no local keymap.
1498
1499(use-local-map KEYMAP)Fcurrent-local-map
1500Return current buffer's local keymap, or nil if it has none.
1501
1502(current-local-map)Fcurrent-global-map
1503Return the current global keymap.
1504
1505(current-global-map)Fcurrent-minor-mode-maps
1506Return a list of keymaps for the minor modes of the current buffer.
1507
1508(current-minor-mode-maps)Faccessible-keymaps
1509Find all keymaps accessible via prefix characters from KEYMAP.
1510Returns a list of elements of the form (KEYS . MAP), where the sequence
1511KEYS starting from KEYMAP gets you to MAP.  These elements are ordered
1512so that the KEYS increase in length.  The first element is ("" . KEYMAP).
1513An optional argument PREFIX, if non-nil, should be a key sequence;
1514then the value includes only maps for prefixes that start with PREFIX.
1515
1516(accessible-keymaps STARTMAP &optional PREFIX)Fkey-description
1517Return a pretty description of key-sequence KEYS.
1518Control characters turn into "C-foo" sequences, meta into "M-foo"
1519spaces are put between sequence elements, etc.
1520
1521(key-description KEYS)Fsingle-key-description
1522Return a pretty description of command character KEY.
1523Control characters turn into C-whatever, etc.
1524
1525(single-key-description KEY)Ftext-char-description
1526Return a pretty description of file-character CHAR.
1527Control characters turn into "^char", etc.
1528
1529(text-char-description CHR)Fwhere-is-internal
1530Return list of keys that invoke DEFINITION.
1531If KEYMAP is non-nil, search only KEYMAP and the global keymap.
1532If KEYMAP is nil, search all the currently active keymaps.
1533
1534If optional 3rd arg FIRSTONLY is non-nil, return the first key sequence found,
1535rather than a list of all possible key sequences.
1536If FIRSTONLY is t, avoid key sequences which use non-ASCII
1537keys and therefore may not be usable on ASCII terminals.  If FIRSTONLY
1538is the symbol `non-ascii', return the first binding found, no matter
1539what its components.
1540
1541If optional 4th arg NOINDIRECT is non-nil, don't follow indirections
1542to other keymaps or slots.  This makes it possible to search for an
1543indirect definition itself.
1544
1545(where-is-internal DEFINITION &optional KEYMAP FIRSTONLY NOINDIRECT)Fdescribe-bindings
1546Show a list of all defined keys, and their definitions.
1547The list is put in a buffer, which is displayed.
1548An optional argument PREFIX, if non-nil, should be a key sequence;
1549then we display only bindings that start with that prefix.
1550
1551(describe-bindings &optional PREFIX)Fdescribe-vector
1552Insert a description of contents of VECTOR.
1553This is text showing the elements of vector matched against indices.
1554
1555(describe-vector VECTOR)Fapropos-internal
1556Show all symbols whose names contain match for REGEXP.
1557If optional 2nd arg PRED is non-nil, (funcall PRED SYM) is done
1558for each symbol and a symbol is mentioned only if that returns non-nil.
1559Return list of symbols found.
1560
1561(apropos-internal STRING &optional PRED)Vminibuffer-local-map
1562Default keymap to use when reading from the minibuffer.Vminibuffer-local-ns-map
1563Local keymap for the minibuffer when spaces are not allowed.Vminibuffer-local-completion-map
1564Local keymap for minibuffer input with completion.Vminibuffer-local-must-match-map
1565Local keymap for minibuffer input with completion, for exact match.Vminor-mode-map-alist
1566Alist of keymaps to use for minor modes.
1567Each element looks like (VARIABLE . KEYMAP); KEYMAP is used to read
1568key sequences and look up bindings iff VARIABLE's value is non-nil.
1569If two active keymaps bind the same key, the keymap appearing earlier
1570in the list takes precedence.Vfunction-key-map
1571Keymap mapping ASCII function key sequences onto their preferred forms.
1572This allows Emacs to recognize function keys sent from ASCII
1573terminals at any point in a key sequence.
1574
1575The read-key-sequence function replaces subsequences bound by
1576function-key-map with their bindings.  When the current local and global
1577keymaps have no binding for the current key sequence but
1578function-key-map binds a suffix of the sequence to a vector or string,
1579read-key-sequence replaces the matching suffix with its binding, and
1580continues with the new sequence.
1581
1582For example, suppose function-key-map binds `ESC O P' to [f1].
1583Typing `ESC O P' to read-key-sequence would return [f1].  Typing
1584`C-x ESC O P' would return [?\C-x f1].  If [f1] were a prefix
1585key, typing `ESC O P x' would return [f1 x].Fbuffer-list
1586Return a list of all existing live buffers.
1587
1588(buffer-list)Fget-buffer
1589Return the buffer named NAME (a string).
1590If there is no live buffer named NAME, return nil.
1591NAME may also be a buffer; if so, the value is that buffer.
1592
1593(get-buffer NAME)Fget-file-buffer
1594Return the buffer visiting file FILENAME (a string).
1595The buffer's `buffer-file-name' must match exactly the expansion of FILENAME.
1596If there is no such live buffer, return nil.
1597
1598(get-file-buffer FILENAME)Fget-buffer-create
1599Return the buffer named NAME, or create such a buffer and return it.
1600A new buffer is created if there is no live buffer named NAME.
1601If NAME starts with a space, the new buffer does not keep undo information.
1602If NAME is a buffer instead of a string, then it is the value returned.
1603The value is never nil.
1604
1605(get-buffer-create NAME)Fgenerate-new-buffer-name
1606Return a string that is the name of no existing buffer based on NAME.
1607If there is no live buffer named NAME, then return NAME.
1608Otherwise modify name by appending `<NUMBER>', incrementing NUMBER
1609until an unused name is found, and then return that name.
1610Optional second argument IGNORE specifies a name that is okay to use
1611(if it is in the sequence to be tried)
1612even if a buffer with that name exists.
1613
1614(generate-new-buffer-name NAME &optional IGNORE)Fbuffer-name
1615Return the name of BUFFER, as a string.
1616With no argument or nil as argument, return the name of the current buffer.
1617
1618(buffer-name &optional BUFFER)Fbuffer-file-name
1619Return name of file BUFFER is visiting, or nil if none.
1620No argument or nil as argument means use the current buffer.
1621
1622(buffer-file-name &optional BUFFER)Fbuffer-local-variables
1623Return an alist of variables that are buffer-local in BUFFER.
1624Most elements look like (SYMBOL . VALUE), describing one variable.
1625For a symbol that is locally unbound, just the symbol appears in the value.
1626Note that storing new VALUEs in these elements doesn't change the variables.
1627No argument or nil as argument means use current buffer as BUFFER.
1628
1629(buffer-local-variables &optional BUFFER)Fbuffer-modified-p
1630Return t if BUFFER was modified since its file was last read or saved.
1631No argument or nil as argument means use current buffer as BUFFER.
1632
1633(buffer-modified-p &optional BUFFER)Fset-buffer-modified-p
1634Mark current buffer as modified or unmodified according to FLAG.
1635A non-nil FLAG means mark the buffer modified.
1636
1637(set-buffer-modified-p FLAG)Fbuffer-modified-tick
1638Return BUFFER's tick counter, incremented for each change in text.
1639Each buffer has a tick counter which is incremented each time the text in
1640that buffer is changed.  It wraps around occasionally.
1641No argument or nil as argument means use current buffer as BUFFER.
1642
1643(buffer-modified-tick &optional BUFFER)Frename-buffer
1644Change current buffer's name to NEWNAME (a string).
1645If second arg UNIQUE is nil or omitted, it is an error if a
1646buffer named NEWNAME already exists.
1647If UNIQUE is non-nil, come up with a new name using
1648`generate-new-buffer-name'.
1649Interactively, you can set UNIQUE with a prefix argument.
1650We return the name we actually gave the buffer.
1651This does not change the name of the visited file (if any).
1652
1653(rename-buffer NAME &optional UNIQUE)Fother-buffer
1654Return most recently selected buffer other than BUFFER.
1655Buffers not visible in windows are preferred to visible buffers,
1656unless optional second argument VISIBLE-OK is non-nil.
1657If no other buffer exists, the buffer `*scratch*' is returned.
1658If BUFFER is omitted or nil, some interesting buffer is returned.
1659
1660(other-buffer &optional BUFFER VISIBLE-OK)Fbuffer-disable-undo
1661Make BUFFER stop keeping undo information.
1662No argument or nil as argument means do this for the current buffer.
1663
1664(buffer-disable-undo &optional BUFFER)Fbuffer-enable-undo
1665Start keeping undo information for buffer BUFFER.
1666No argument or nil as argument means do this for the current buffer.
1667
1668(buffer-enable-undo &optional BUFFER)Vkill-buffer-hook
1669Hook to be run (by `run-hooks', which see) when a buffer is killed.
1670The buffer being killed will be current while the hook is running.
1671See `kill-buffer'.Fkill-buffer
1672Kill the buffer BUFFER.
1673The argument may be a buffer or may be the name of a buffer.
1674An argument of nil means kill the current buffer.
1675
1676Value is t if the buffer is actually killed, nil if user says no.
1677
1678The value of `kill-buffer-hook' (which may be local to that buffer),
1679if not void, is a list of functions to be called, with no arguments,
1680before the buffer is actually killed.  The buffer to be killed is current
1681when the hook functions are called.
1682
1683Any processes that have this buffer as the `process-buffer' are killed
1684with `delete-process'.
1685
1686(kill-buffer BUFNAME)Fswitch-to-buffer
1687Select buffer BUFFER in the current window.
1688BUFFER may be a buffer or a buffer name.
1689Optional second arg NORECORD non-nil means
1690do not put this buffer at the front of the list of recently selected ones.
1691
1692WARNING: This is NOT the way to work on another buffer temporarily
1693within a Lisp program!  Use `set-buffer' instead.  That avoids messing with
1694the window-buffer correspondences.
1695
1696(switch-to-buffer BUFNAME &optional NORECORD)Fpop-to-buffer
1697Select buffer BUFFER in some window, preferably a different one.
1698If BUFFER is nil, then some other buffer is chosen.
1699If `pop-up-windows' is non-nil, windows can be split to do this.
1700If optional second arg OTHER-WINDOW is non-nil, insist on finding another
1701window even if BUFFER is already visible in the selected window.
1702
1703(pop-to-buffer BUFNAME &optional OTHER)Fcurrent-buffer
1704Return the current buffer as a Lisp object.
1705
1706(current-buffer)Fset-buffer
1707Make the buffer BUFFER current for editing operations.
1708BUFFER may be a buffer or the name of an existing buffer.
1709See also `save-excursion' when you want to make a buffer current temporarily.
1710This function does not display the buffer, so its effect ends
1711when the current command terminates.
1712Use `switch-to-buffer' or `pop-to-buffer' to switch buffers permanently.
1713
1714(set-buffer BUFNAME)Fbarf-if-buffer-read-only
1715Signal a `buffer-read-only' error if the current buffer is read-only.
1716
1717(barf-if-buffer-read-only)Fbury-buffer
1718Put BUFFER at the end of the list of all buffers.
1719There it is the least likely candidate for `other-buffer' to return;
1720thus, the least likely buffer for \[switch-to-buffer] to select by default.
1721If BUFFER is nil or omitted, bury the current buffer.
1722Also, if BUFFER is nil or omitted, remove the current buffer from the
1723selected window if it is displayed there.
1724
1725(bury-buffer &optional BUF)Ferase-buffer
1726Delete the entire contents of the current buffer.
1727Any narrowing restriction in effect (see `narrow-to-region') is removed,
1728so the buffer is truly empty after this.
1729
1730(erase-buffer)Flist-buffers
1731Display a list of names of existing buffers.
1732The list is displayed in a buffer named `*Buffer List*'.
1733Note that buffers with names starting with spaces are omitted.
1734Non-null optional arg FILES-ONLY means mention only file buffers.
1735
1736The M column contains a * for buffers that are modified.
1737The R column contains a % for buffers that are read-only.
1738
1739(list-buffers &optional FILES)Fkill-all-local-variables
1740Switch to Fundamental mode by killing current buffer's local variables.
1741Most local variable bindings are eliminated so that the default values
1742become effective once more.  Also, the syntax table is set from
1743`standard-syntax-table', the local keymap is set to nil,
1744and the abbrev table from `fundamental-mode-abbrev-table'.
1745This function also forces redisplay of the mode line.
1746
1747Every function to select a new major mode starts by
1748calling this function.
1749
1750As a special exception, local variables whose names have
1751a non-nil `permanent-local' property are not eliminated by this function.
1752
1753The first thing this function does is run
1754the normal hook `change-major-mode-hook'.
1755
1756(kill-all-local-variables)Foverlayp
1757Return t if OBJECT is an overlay.
1758
1759(overlayp OBJECT)Fmake-overlay
1760Create a new overlay with range BEG to END in BUFFER.
1761If omitted, BUFFER defaults to the current buffer.
1762BEG and END may be integers or markers.
1763
1764(make-overlay BEG END &optional BUFFER)Fmove-overlay
1765Set the endpoints of OVERLAY to BEG and END in BUFFER.
1766If BUFFER is omitted, leave OVERLAY in the same buffer it inhabits now.
1767If BUFFER is omitted, and OVERLAY is in no buffer, put it in the current
1768buffer.
1769
1770(move-overlay OVERLAY BEG END &optional BUFFER)Fdelete-overlay
1771Delete the overlay OVERLAY from its buffer.
1772
1773(delete-overlay OVERLAY)Foverlay-start
1774Return the position at which OVERLAY starts.
1775
1776(overlay-start OVERLAY)Foverlay-end
1777Return the position at which OVERLAY ends.
1778
1779(overlay-end OVERLAY)Foverlay-buffer
1780Return the buffer OVERLAY belongs to.
1781
1782(overlay-buffer OVERLAY)Foverlay-properties
1783Return a list of the properties on OVERLAY.
1784This is a copy of OVERLAY's plist; modifying its conses has no effect on
1785OVERLAY.
1786
1787(overlay-properties OVERLAY)Foverlays-at
1788Return a list of the overlays that contain position POS.
1789
1790(overlays-at POS)Fnext-overlay-change
1791Return the next position after POS where an overlay starts or ends.
1792If there are no more overlay boundaries after POS, return (point-max).
1793
1794(next-overlay-change POS)Foverlay-lists
1795Return a pair of lists giving all the overlays of the current buffer.
1796The car has all the overlays before the overlay center;
1797the cdr has all the overlays after the overlay center.
1798Recentering overlays moves overlays between these lists.
1799The lists you get are copies, so that changing them has no effect.
1800However, the overlays you get are the real objects that the buffer uses.
1801
1802(overlay-lists)Foverlay-recenter
1803Recenter the overlays of the current buffer around position POS.
1804
1805(overlay-recenter POS)Foverlay-get
1806Get the property of overlay OVERLAY with property name NAME.
1807
1808(overlay-get OVERLAY PROP)Foverlay-put
1809Set one property of overlay OVERLAY: give property PROP value VALUE.
1810
1811(overlay-put OVERLAY PROP VALUE)Vdefault-mode-line-format
1812Default value of `mode-line-format' for buffers that don't override it.
1813This is the same as (default-value 'mode-line-format).Vdefault-abbrev-mode
1814Default value of `abbrev-mode' for buffers that do not override it.
1815This is the same as (default-value 'abbrev-mode).Vdefault-ctl-arrow
1816Default value of `ctl-arrow' for buffers that do not override it.
1817This is the same as (default-value 'ctl-arrow).Vdefault-truncate-lines
1818Default value of `truncate-lines' for buffers that do not override it.
1819This is the same as (default-value 'truncate-lines).Vdefault-fill-column
1820Default value of `fill-column' for buffers that do not override it.
1821This is the same as (default-value 'fill-column).Vdefault-left-margin
1822Default value of `left-margin' for buffers that do not override it.
1823This is the same as (default-value 'left-margin).Vdefault-tab-width
1824Default value of `tab-width' for buffers that do not override it.
1825This is the same as (default-value 'tab-width).Vdefault-case-fold-search
1826Default value of `case-fold-search' for buffers that don't override it.
1827This is the same as (default-value 'case-fold-search).Vdefault-buffer-file-type
1828Default file type for buffers that do not override it.
1829This is the same as (default-value 'buffer-file-type).
1830The file type is nil for text, t for binary.Vmode-line-format
1831Template for displaying mode line for current buffer.
1832Each buffer has its own value of this variable.
1833Value may be a string, a symbol or a list or cons cell.
1834For a symbol, its value is used (but it is ignored if t or nil).
1835 A string appearing directly as the value of a symbol is processed verbatim
1836 in that the %-constructs below are not recognized.
1837For a list whose car is a symbol, the symbol's value is taken,
1838 and if that is non-nil, the cadr of the list is processed recursively.
1839 Otherwise, the caddr of the list (if there is one) is processed.
1840For a list whose car is a string or list, each element is processed
1841 recursively and the results are effectively concatenated.
1842For a list whose car is an integer, the cdr of the list is processed
1843  and padded (if the number is positive) or truncated (if negative)
1844  to the width specified by that number.
1845A string is printed verbatim in the mode line except for %-constructs:
1846  (%-constructs are allowed when the string is the entire mode-line-format
1847   or when it is found in a cons-cell or a list)
1848  %b -- print buffer name.      %f -- print visited file name.
1849  %* -- print *, % or hyphen.   %m -- print value of mode-name (obsolete).
1850  %s -- print process status.   %l -- print the current line number.
1851  %p -- print percent of buffer above top of window, or Top, Bot or All.
1852  %P -- print percent of buffer above bottom of window, perhaps plus Top,
1853        or print Bottom or All.
1854  %n -- print Narrow if appropriate.
1855  %t -- print T if files is text, B if binary.
1856  %[ -- print one [ for each recursive editing level.  %] similar.
1857  %% -- print %.   %- -- print infinitely many dashes.
1858Decimal digits after the % specify field width to which to pad.Vdefault-major-mode
1859*Major mode for new buffers.  Defaults to `fundamental-mode'.
1860nil here means use current buffer's major mode.Vmajor-mode
1861Symbol for current buffer's major mode.Vmode-name
1862Pretty name of current buffer's major mode (a string).Vabbrev-mode
1863Non-nil turns on automatic expansion of abbrevs as they are inserted.
1864Automatically becomes buffer-local when set in any fashion.Vcase-fold-search
1865*Non-nil if searches should ignore case.
1866Automatically becomes buffer-local when set in any fashion.Vfill-column
1867*Column beyond which automatic line-wrapping should happen.
1868Automatically becomes buffer-local when set in any fashion.Vleft-margin
1869*Column for the default indent-line-function to indent to.
1870Linefeed indents to this column in Fundamental mode.
1871Automatically becomes buffer-local when set in any fashion.Vtab-width
1872*Distance between tab stops (for display of tab characters), in columns.
1873Automatically becomes buffer-local when set in any fashion.Vctl-arrow
1874*Non-nil means display control chars with uparrow.
1875Nil means use backslash and octal digits.
1876Automatically becomes buffer-local when set in any fashion.
1877This variable does not apply to characters whose display is specified
1878in the current display table (if there is one).Vtruncate-lines
1879*Non-nil means do not display continuation lines;
1880give each line of text one screen line.
1881Automatically becomes buffer-local when set in any fashion.
1882
1883Note that this is overridden by the variable
1884`truncate-partial-width-windows' if that variable is non-nil
1885and this buffer is not full-frame width.Vbuffer-file-type
1886*If visited file is text, nil; otherwise, t.Vdefault-directory
1887Name of default directory of current buffer.  Should end with slash.
1888Each buffer has its own value of this variable.Vauto-fill-function
1889Function called (if non-nil) to perform auto-fill.
1890It is called after self-inserting a space at a column beyond `fill-column'.
1891Each buffer has its own value of this variable.
1892NOTE: This variable is not an ordinary hook;
1893It may not be a list of functions.Vbuffer-file-name
1894Name of file visited in current buffer, or nil if not visiting a file.
1895Each buffer has its own value of this variable.Vbuffer-auto-save-file-name
1896Name of file for auto-saving current buffer,
1897or nil if buffer should not be auto-saved.
1898Each buffer has its own value of this variable.Vbuffer-read-only
1899Non-nil if this buffer is read-only.
1900Each buffer has its own value of this variable.Vbuffer-backed-up
1901Non-nil if this buffer's file has been backed up.
1902Backing up is done before the first time the file is saved.
1903Each buffer has its own value of this variable.Vbuffer-saved-size
1904Length of current buffer when last read in, saved or auto-saved.
19050 initially.
1906Each buffer has its own value of this variable.Vselective-display
1907Non-nil enables selective display:
1908Integer N as value means display only lines
1909 that start with less than n columns of space.
1910A value of t means, after a ^M, all the rest of the line is invisible.
1911 Then ^M's in the file are written into files as newlines.
1912
1913Automatically becomes buffer-local when set in any fashion.Vselective-display-ellipses
1914t means display ... on previous line when a line is invisible.
1915Automatically becomes buffer-local when set in any fashion.Voverwrite-mode
1916Non-nil if self-insertion should replace existing text.
1917If non-nil and not `overwrite-mode-binary', self-insertion still
1918inserts at the end of a line, and inserts when point is before a tab,
1919until the tab is filled in.
1920If `overwrite-mode-binary', self-insertion replaces newlines and tabs too.
1921Automatically becomes buffer-local when set in any fashion.Vbuffer-display-table
1922Display table that controls display of the contents of current buffer.
1923Automatically becomes buffer-local when set in any fashion.
1924The display table is a vector created with `make-display-table'.
1925The first 256 elements control how to display each possible text character.
1926Each value should be a vector of characters or nil;
1927nil means display the character in the default fashion.
1928The remaining five elements control the display of
1929  the end of a truncated screen line (element 256, a single character);
1930  the end of a continued line (element 257, a single character);
1931  the escape character used to display character codes in octal
1932    (element 258, a single character);
1933  the character used as an arrow for control characters (element 259,
1934    a single character);
1935  the decoration indicating the presence of invisible lines (element 260,
1936    a vector of characters).
1937If this variable is nil, the value of `standard-display-table' is used.
1938Each window can have its own, overriding display table.Vbefore-change-function
1939Function to call before each text change.
1940Two arguments are passed to the function: the positions of
1941the beginning and end of the range of old text to be changed.
1942(For an insertion, the beginning and end are at the same place.)
1943No information is given about the length of the text after the change.
1944
1945Buffer changes made while executing the `before-change-function'
1946don't call any before-change or after-change functions.
1947That's because these variables are temporarily set to nil.
1948As a result, a hook function cannot straightforwardly alter the value of
1949these variables.  See the Emacs Lisp manual for a way of
1950accomplishing an equivalent result by using other variables.Vafter-change-function
1951Function to call after each text change.
1952Three arguments are passed to the function: the positions of
1953the beginning and end of the range of changed text,
1954and the length of the pre-change text replaced by that range.
1955(For an insertion, the pre-change length is zero;
1956for a deletion, that length is the number of characters deleted,
1957and the post-change beginning and end are at the same place.)
1958
1959Buffer changes made while executing the `after-change-function'
1960don't call any before-change or after-change functions.
1961That's because these variables are temporarily set to nil.
1962As a result, a hook function cannot straightforwardly alter the value of
1963these variables.  See the Emacs Lisp manual for a way of
1964accomplishing an equivalent result by using other variables.Vbefore-change-functions
1965List of functions to call before each text change.
1966Two arguments are passed to each function: the positions of
1967the beginning and end of the range of old text to be changed.
1968(For an insertion, the beginning and end are at the same place.)
1969No information is given about the length of the text after the change.
1970
1971Buffer changes made while executing the `before-change-functions'
1972don't call any before-change or after-change functions.
1973That's because these variables are temporarily set to nil.
1974As a result, a hook function cannot straightforwardly alter the value of
1975these variables.  See the Emacs Lisp manual for a way of
1976accomplishing an equivalent result by using other variables.Vafter-change-functions
1977List of function to call after each text change.
1978Three arguments are passed to each function: the positions of
1979the beginning and end of the range of changed text,
1980and the length of the pre-change text replaced by that range.
1981(For an insertion, the pre-change length is zero;
1982for a deletion, that length is the number of characters deleted,
1983and the post-change beginning and end are at the same place.)
1984
1985Buffer changes made while executing the `after-change-functions'
1986don't call any before-change or after-change functions.
1987That's because these variables are temporarily set to nil.
1988As a result, a hook function cannot straightforwardly alter the value of
1989these variables.  See the Emacs Lisp manual for a way of
1990accomplishing an equivalent result by using other variables.Vfirst-change-hook
1991A list of functions to call before changing a buffer which is unmodified.
1992The functions are run using the `run-hooks' function.Vbuffer-undo-list
1993List of undo entries in current buffer.
1994Recent changes come first; older changes follow newer.
1995
1996An entry (START . END) represents an insertion which begins at
1997position START and ends at position END.
1998
1999An entry (TEXT . POSITION) represents the deletion of the string TEXT
2000from (abs POSITION).  If POSITION is positive, point was at the front
2001of the text being deleted; if negative, point was at the end.
2002
2003An entry (t HIGHWORD LOWWORD) indicates that the buffer had been
2004previously unmodified.  HIGHWORD and LOWWORD are the high and low
200516-bit words of the buffer's modification count at the time.  If the
2006modification count of the most recent save is different, this entry is
2007obsolete.
2008
2009An entry (nil PROP VAL BEG . END) indicates that a text property
2010was modified between BEG and END.  PROP is the property name,
2011and VAL is the old value.
2012
2013An entry of the form POSITION indicates that point was at the buffer
2014location given by the integer.  Undoing an entry of this form places
2015point at POSITION.
2016
2017nil marks undo boundaries.  The undo command treats the changes
2018between two undo boundaries as a single step to be undone.
2019
2020If the value of the variable is t, undo information is not recorded.Vmark-active
2021Non-nil means the mark and region are currently active in this buffer.
2022Automatically local in all buffers.Vtransient-mark-mode
2023*Non-nil means deactivate the mark when the buffer contents change.Vinhibit-read-only
2024*Non-nil means disregard read-only status of buffers or characters.
2025If the value is t, disregard `buffer-read-only' and all `read-only'
2026text properties.  If the value is a list, disregard `buffer-read-only'
2027and disregard a `read-only' text property if the property value
2028is a member of the list.Vkill-buffer-query-functions
2029List of functions called with no args to query before killing a buffer.Flock-buffer
2030Lock FILE, if current buffer is modified.
2031FILE defaults to current buffer's visited file,
2032or else nothing is done if current buffer isn't visiting a file.
2033
2034(lock-buffer &optional FN)Funlock-buffer
2035Unlock the file visited in the current buffer,
2036if it should normally be locked.
2037
2038(unlock-buffer)Ffile-locked-p
2039Return nil if the FILENAME is not locked,
2040t if it is locked by you, else a string of the name of the locker.
2041
2042(file-locked-p &optional FN)Fmarker-buffer
2043Return the buffer that MARKER points into, or nil if none.
2044Returns nil if MARKER points into a dead buffer.
2045
2046(marker-buffer MARKER)Fmarker-position
2047Return the position MARKER points at, as a character number.
2048
2049(marker-position MARKER)Fset-marker
2050Position MARKER before character number NUMBER in BUFFER.
2051BUFFER defaults to the current buffer.
2052If NUMBER is nil, makes marker point nowhere.
2053Then it no longer slows down editing in any buffer.
2054Returns MARKER.
2055
2056(set-marker MARKER POS &optional BUFFER)Fcopy-marker
2057Return a new marker pointing at the same place as MARKER.
2058If argument is a number, makes a new marker pointing
2059at that position in the current buffer.
2060
2061(copy-marker MARKER)Ftext-properties-at
2062Return the list of properties held by the character at POSITION
2063in optional argument OBJECT, a string or buffer.  If nil, OBJECT
2064defaults to the current buffer.
2065If POSITION is at the end of OBJECT, the value is nil.
2066
2067(text-properties-at POS &optional OBJECT)Fget-text-property
2068Return the value of position POS's property PROP, in OBJECT.
2069OBJECT is optional and defaults to the current buffer.
2070If POSITION is at the end of OBJECT, the value is nil.
2071
2072(get-text-property POS PROP &optional OBJECT)Fget-char-property
2073Return the value of position POS's property PROP, in OBJECT.
2074OBJECT is optional and defaults to the current buffer.
2075If POS is at the end of OBJECT, the value is nil.
2076If OBJECT is a buffer, then overlay properties are considered as well as
2077text properties.
2078If OBJECT is a window, then that window's buffer is used, but window-specific
2079overlays are considered only if they are associated with OBJECT.
2080
2081(get-char-property POS PROP &optional OBJECT)Fnext-property-change
2082Return the position of next property change.
2083Scans characters forward from POS in OBJECT till it finds
2084a change in some text property, then returns the position of the change.
2085The optional second argument OBJECT is the string or buffer to scan.
2086Return nil if the property is constant all the way to the end of OBJECT.
2087If the value is non-nil, it is a position greater than POS, never equal.
2088
2089If the optional third argument LIMIT is non-nil, don't search
2090past position LIMIT; return LIMIT if nothing is found before LIMIT.
2091
2092(next-property-change POS &optional OBJECT LIMIT)Fnext-single-property-change
2093Return the position of next property change for a specific property.
2094Scans characters forward from POS till it finds
2095a change in the PROP property, then returns the position of the change.
2096The optional third argument OBJECT is the string or buffer to scan.
2097The property values are compared with `eq'.
2098Return nil if the property is constant all the way to the end of OBJECT.
2099If the value is non-nil, it is a position greater than POS, never equal.
2100
2101If the optional fourth argument LIMIT is non-nil, don't search
2102past position LIMIT; return LIMIT if nothing is found before LIMIT.
2103
2104(next-single-property-change POS PROP &optional OBJECT LIMIT)Fprevious-property-change
2105Return the position of previous property change.
2106Scans characters backwards from POS in OBJECT till it finds
2107a change in some text property, then returns the position of the change.
2108The optional second argument OBJECT is the string or buffer to scan.
2109Return nil if the property is constant all the way to the start of OBJECT.
2110If the value is non-nil, it is a position less than POS, never equal.
2111
2112If the optional third argument LIMIT is non-nil, don't search
2113back past position LIMIT; return LIMIT if nothing is found until LIMIT.
2114
2115(previous-property-change POS &optional OBJECT LIMIT)Fprevious-single-property-change
2116Return the position of previous property change for a specific property.
2117Scans characters backward from POS till it finds
2118a change in the PROP property, then returns the position of the change.
2119The optional third argument OBJECT is the string or buffer to scan.
2120The property values are compared with `eq'.
2121Return nil if the property is constant all the way to the start of OBJECT.
2122If the value is non-nil, it is a position less than POS, never equal.
2123
2124If the optional fourth argument LIMIT is non-nil, don't search
2125back past position LIMIT; return LIMIT if nothing is found until LIMIT.
2126
2127(previous-single-property-change POS PROP &optional OBJECT LIMIT)Fadd-text-properties
2128Add properties to the text from START to END.
2129The third argument PROPS is a property list
2130specifying the property values to add.
2131The optional fourth argument, OBJECT,
2132is the string or buffer containing the text.
2133Return t if any property value actually changed, nil otherwise.
2134
2135(add-text-properties START END PROPERTIES &optional OBJECT)Fput-text-property
2136Set one property of the text from START to END.
2137The third and fourth arguments PROP and VALUE
2138specify the property to add.
2139The optional fifth argument, OBJECT,
2140is the string or buffer containing the text.
2141
2142(put-text-property START END PROP VALUE &optional OBJECT)Fset-text-properties
2143Completely replace properties of text from START to END.
2144The third argument PROPS is the new property list.
2145The optional fourth argument, OBJECT,
2146is the string or buffer containing the text.
2147
2148(set-text-properties START END PROPS &optional OBJECT)Fremove-text-properties
2149Remove some properties from text from START to END.
2150The third argument PROPS is a property list
2151whose property names specify the properties to remove.
2152(The values stored in PROPS are ignored.)
2153The optional fourth argument, OBJECT,
2154is the string or buffer containing the text.
2155Return t if any property was actually removed, nil otherwise.
2156
2157(remove-text-properties START END PROPS &optional OBJECT)Ftext-property-any
2158Check text from START to END to see if PROP is ever `eq' to VALUE.
2159If so, return the position of the first character whose PROP is `eq'
2160to VALUE.  Otherwise return nil.
2161The optional fifth argument, OBJECT, is the string or buffer
2162containing the text.
2163
2164(text-property-any START END PROP VALUE &optional OBJECT)Ftext-property-not-all
2165Check text from START to END to see if PROP is ever not `eq' to VALUE.
2166If so, return the position of the first character whose PROP is not
2167`eq' to VALUE.  Otherwise, return nil.
2168The optional fifth argument, OBJECT, is the string or buffer
2169containing the text.
2170
2171(text-property-not-all START END PROP VALUE &optional OBJECT)Ferase-text-properties
2172Remove all properties from the text from START to END.
2173The optional third argument, OBJECT,
2174is the string or buffer containing the text.
2175
2176(erase-text-properties START END &optional OBJECT)Vinterval-balance-threshold
2177Threshold for rebalancing interval trees, expressed as the
2178percentage by which the left interval tree should not differ from the right.Vinhibit-point-motion-hooks
2179If non-nil, don't call the text property values of
2180`point-left' and `point-entered'.Fread-from-minibuffer
2181Read a string from the minibuffer, prompting with string PROMPT.
2182If optional second arg INITIAL-CONTENTS is non-nil, it is a string
2183  to be inserted into the minibuffer before reading input.
2184  If INITIAL-CONTENTS is (STRING . POSITION), the initial input
2185  is STRING, but point is placed POSITION characters into the string.
2186Third arg KEYMAP is a keymap to use whilst reading;
2187  if omitted or nil, the default is `minibuffer-local-map'.
2188If fourth arg READ is non-nil, then interpret the result as a lisp object
2189  and return that object:
2190  in other words, do `(car (read-from-string INPUT-STRING))'
2191Fifth arg HIST, if non-nil, specifies a history list
2192  and optionally the initial position in the list.
2193  It can be a symbol, which is the history list variable to use,
2194  or it can be a cons cell (HISTVAR . HISTPOS).
2195  In that case, HISTVAR is the history list variable to use,
2196  and HISTPOS is the initial position (the position in the list
2197  which INITIAL-CONTENTS corresponds to).
2198  Positions are counted starting from 1 at the beginning of the list.
2199
2200(read-from-minibuffer PROMPT &optional INITIAL-CONTENTS KEYMAP READ HIST)Fread-minibuffer
2201Return a Lisp object read using the minibuffer.
2202Prompt with PROMPT.  If non-nil, optional second arg INITIAL-CONTENTS
2203is a string to insert in the minibuffer before reading.
2204
2205(read-minibuffer PROMPT &optional INITIAL-CONTENTS)Feval-minibuffer
2206Return value of Lisp expression read using the minibuffer.
2207Prompt with PROMPT.  If non-nil, optional second arg INITIAL-CONTENTS
2208is a string to insert in the minibuffer before reading.
2209
2210(eval-minibuffer PROMPT &optional INITIAL-CONTENTS)Fread-string
2211Read a string from the minibuffer, prompting with string PROMPT.
2212If non-nil second arg INITIAL-INPUT is a string to insert before reading.
2213
2214(read-string PROMPT &optional INITIAL-INPUT)Fread-no-blanks-input
2215Args PROMPT and INIT, strings.  Read a string from the terminal, not allowing blanks.
2216Prompt with PROMPT, and provide INIT as an initial value of the input string.
2217
2218(read-no-blanks-input PROMPT &optional INIT)Fread-command
2219One arg PROMPT, a string.  Read the name of a command and return as a symbol.
2220Prompts with PROMPT.
2221
2222(read-command PROMPT)Fread-function
2223One arg PROMPT, a string.  Read the name of a function and return as a symbol.
2224Prompts with PROMPT.
2225
2226(read-function PROMPT)Fread-variable
2227One arg PROMPT, a string.  Read the name of a user variable and return
2228it as a symbol.  Prompts with PROMPT.
2229A user variable is one whose documentation starts with a `*' character.
2230
2231(read-variable PROMPT)Fread-buffer
2232One arg PROMPT, a string.  Read the name of a buffer and return as a string.
2233Prompts with PROMPT.
2234Optional second arg is value to return if user enters an empty line.
2235If optional third arg REQUIRE-MATCH is non-nil, only existing buffer names are allowed.
2236
2237(read-buffer PROMPT &optional DEF REQUIRE-MATCH)Ftry-completion
2238Return common substring of all completions of STRING in ALIST.
2239Each car of each element of ALIST is tested to see if it begins with STRING.
2240All that match are compared together; the longest initial sequence
2241common to all matches is returned as a string.
2242If there is no match at all, nil is returned.
2243For an exact match, t is returned.
2244
2245ALIST can be an obarray instead of an alist.
2246Then the print names of all symbols in the obarray are the possible matches.
2247
2248ALIST can also be a function to do the completion itself.
2249It receives three arguments: the values STRING, PREDICATE and nil.
2250Whatever it returns becomes the value of `try-completion'.
2251
2252If optional third argument PREDICATE is non-nil,
2253it is used to test each possible match.
2254The match is a candidate only if PREDICATE returns non-nil.
2255The argument given to PREDICATE is the alist element or the symbol from the obarray.
2256
2257(try-completion STRING ALIST &optional PRED)Fall-completions
2258Search for partial matches to STRING in ALIST.
2259Each car of each element of ALIST is tested to see if it begins with STRING.
2260The value is a list of all the strings from ALIST that match.
2261ALIST can be an obarray instead of an alist.
2262Then the print names of all symbols in the obarray are the possible matches.
2263
2264ALIST can also be a function to do the completion itself.
2265It receives three arguments: the values STRING, PREDICATE and t.
2266Whatever it returns becomes the value of `all-completion'.
2267
2268If optional third argument PREDICATE is non-nil,
2269it is used to test each possible match.
2270The match is a candidate only if PREDICATE returns non-nil.
2271The argument given to PREDICATE is the alist element or the symbol from the obarray.
2272
2273(all-completions STRING ALIST &optional PRED)Fcompleting-read
2274Read a string in the minibuffer, with completion.
2275Args: PROMPT, TABLE, PREDICATE, REQUIRE-MATCH, INITIAL-INPUT, HIST.
2276PROMPT is a string to prompt with; normally it ends in a colon and a space.
2277TABLE is an alist whose elements' cars are strings, or an obarray.
2278PREDICATE limits completion to a subset of TABLE.
2279See `try-completion' for more details on completion, TABLE, and PREDICATE.
2280If REQUIRE-MATCH is non-nil, the user is not allowed to exit unless
2281 the input is (or completes to) an element of TABLE.
2282 If it is also not t, Return does not exit if it does non-null completion.
2283If INITIAL-INPUT is non-nil, insert it in the minibuffer initially.
2284  If it is (STRING . POSITION), the initial input
2285  is STRING, but point is placed POSITION characters into the string.
2286HIST, if non-nil, specifies a history list
2287  and optionally the initial position in the list.
2288  It can be a symbol, which is the history list variable to use,
2289  or it can be a cons cell (HISTVAR . HISTPOS).
2290  In that case, HISTVAR is the history list variable to use,
2291  and HISTPOS is the initial position (the position in the list
2292  which INITIAL-CONTENTS corresponds to).
2293  Positions are counted starting from 1 at the beginning of the list.
2294Completion ignores case if the ambient value of
2295  `completion-ignore-case' is non-nil.
2296
2297(completing-read PROMPT TABLE &optional PRED REQUIRE-MATCH INIT HIST)Fminibuffer-complete
2298Complete the minibuffer contents as far as possible.
2299Return nil if there is no valid completion, else t.
2300If no characters can be completed, display a list of possible completions.
2301If you repeat this command after it displayed such a list,
2302scroll the window of possible completions.
2303
2304(minibuffer-complete)Fminibuffer-complete-and-exit
2305Complete the minibuffer contents, and maybe exit.
2306Exit if the name is valid with no completion needed.
2307If name was completed to a valid match,
2308a repetition of this command will exit.
2309
2310(minibuffer-complete-and-exit)Fminibuffer-complete-word
2311Complete the minibuffer contents at most a single word.
2312After one word is completed as much as possible, a space or hyphen
2313is added, provided that matches some possible completion.
2314Return nil if there is no valid completion, else t.
2315
2316(minibuffer-complete-word)Fdisplay-completion-list
2317Display the list of completions, COMPLETIONS, using `standard-output'.
2318Each element may be just a symbol or string
2319or may be a list of two strings to be printed as if concatenated.
2320`standard-output' must be a buffer.
2321At the end, run the normal hook `completion-setup-hook'.
2322It can find the completion buffer in `standard-output'.
2323
2324(display-completion-list COMPLETIONS)Fminibuffer-completion-help
2325Display a list of possible completions of the current minibuffer contents.
2326
2327(minibuffer-completion-help)Fself-insert-and-exit
2328Terminate minibuffer input.
2329
2330(self-insert-and-exit)Fexit-minibuffer
2331Terminate this minibuffer argument.
2332
2333(exit-minibuffer)Fminibuffer-depth
2334Return current depth of activations of minibuffer, a nonnegative integer.
2335
2336(minibuffer-depth)Fminibuffer-prompt
2337Return the prompt string of the currently-active minibuffer.
2338If no minibuffer is active, return nil.
2339
2340(minibuffer-prompt)Fminibuffer-prompt-width
2341Return the display width of the minibuffer prompt.
2342
2343(minibuffer-prompt-width)Vminibuffer-setup-hook
2344Normal hook run just after entry to minibuffer.Vminibuffer-exit-hook
2345Normal hook run just after exit from minibuffer.Vcompletion-auto-help
2346*Non-nil means automatically provide help for invalid completion input.Vcompletion-ignore-case
2347Non-nil means don't consider case significant in completion.Venable-recursive-minibuffers
2348*Non-nil means to allow minibuffer commands while in the minibuffer.
2349More precisely, this variable makes a difference when the minibuffer window
2350is the selected window.  If you are in some other window, minibuffer commands
2351are allowed even if a minibuffer is active.Vminibuffer-completion-table
2352Alist or obarray used for completion in the minibuffer.
2353This becomes the ALIST argument to `try-completion' and `all-completion'.
2354
2355The value may alternatively be a function, which is given three arguments:
2356  STRING, the current buffer contents;
2357  PREDICATE, the predicate for filtering possible matches;
2358  CODE, which says what kind of things to do.
2359CODE can be nil, t or `lambda'.
2360nil means to return the best completion of STRING, or nil if there is none.
2361t means to return a list of all possible completions of STRING.
2362`lambda' means to return t if STRING is a valid completion as it stands.Vminibuffer-completion-predicate
2363Within call to `completing-read', this holds the PREDICATE argument.Vminibuffer-completion-confirm
2364Non-nil => demand confirmation of completion before exiting minibuffer.Vminibuffer-help-form
2365Value that `help-form' takes on inside the minibuffer.Vminibuffer-history-variable
2366History list symbol to add minibuffer values to.
2367Each minibuffer output is added with
2368  (set minibuffer-history-variable
2369       (cons STRING (symbol-value minibuffer-history-variable)))Vminibuffer-history-position
2370Current position of redoing in the history list.Vminibuffer-auto-raise
2371*Non-nil means entering the minibuffer raises the minibuffer's frame.Vcompletion-regexp-list
2372List of regexps that should restrict possible completions.Ffind-file-name-handler
2373Return FILENAME's handler function for OPERATION, if it has one.
2374Otherwise, return nil.
2375A file name is handled if one of the regular expressions in
2376`file-name-handler-alist' matches it.
2377
2378If OPERATION equals `inhibit-file-name-operation', then we ignore
2379any handlers that are members of `inhibit-file-name-handlers',
2380but we still do run any other handlers.  This lets handlers
2381use the standard functions without calling themselves recursively.
2382
2383(find-file-name-handler FILENAME OPERATION)Ffile-name-directory
2384Return the directory component in file name NAME.
2385Return nil if NAME does not include a directory.
2386Otherwise return a directory spec.
2387Given a Unix syntax file name, returns a string ending in slash;
2388on VMS, perhaps instead a string ending in `:', `]' or `>'.
2389
2390(file-name-directory FILE)Ffile-name-nondirectory
2391Return file name NAME sans its directory.
2392For example, in a Unix-syntax file name,
2393this is everything after the last slash,
2394or the entire name if it contains no slash.
2395
2396(file-name-nondirectory FILE)Funhandled-file-name-directory
2397Return a directly usable directory name somehow associated with FILENAME.
2398A `directly usable' directory name is one that may be used without the
2399intervention of any file handler.
2400If FILENAME is a directly usable file itself, return
2401(file-name-directory FILENAME).
2402The `call-process' and `start-process' functions use this function to
2403get a current directory to run processes in.
2404
2405(unhandled-file-name-directory FILENAME)Ffile-name-as-directory
2406Return a string representing file FILENAME interpreted as a directory.
2407This operation exists because a directory is also a file, but its name as
2408a directory is different from its name as a file.
2409The result can be used as the value of `default-directory'
2410or passed as second argument to `expand-file-name'.
2411For a Unix-syntax file name, just appends a slash.
2412On VMS, converts "[X]FOO.DIR" to "[X.FOO]", etc.
2413
2414(file-name-as-directory FILE)Fdirectory-file-name
2415Returns the file name of the directory named DIR.
2416This is the name of the file that holds the data for the directory DIR.
2417This operation exists because a directory is also a file, but its name as
2418a directory is different from its name as a file.
2419In Unix-syntax, this function just removes the final slash.
2420On VMS, given a VMS-syntax directory name such as "[X.Y]",
2421it returns a file name such as "[X]Y.DIR.1".
2422
2423(directory-file-name DIRECTORY)Fmake-temp-name
2424Generate temporary file name (string) starting with PREFIX (a string).
2425The Emacs process number forms part of the result,
2426so there is no danger of generating a name being used by another process.
2427
2428(make-temp-name PREFIX)Fexpand-file-name
2429Convert FILENAME to absolute, and canonicalize it.
2430Second arg DEFAULT is directory to start with if FILENAME is relative
2431 (does not start with slash); if DEFAULT is nil or missing,
2432the current buffer's value of default-directory is used.
2433Path components that are `.' are removed, and
2434path components followed by `..' are removed, along with the `..' itself;
2435note that these simplifications are done without checking the resulting
2436paths in the file system.
2437An initial `~/' expands to your home directory.
2438An initial `~USER/' expands to USER's home directory.
2439See also the function `substitute-in-file-name'.
2440
2441(expand-file-name NAME &optional DEFAULT)Fsubstitute-in-file-name
2442Substitute environment variables referred to in FILENAME.
2443`$FOO' where FOO is an environment variable name means to substitute
2444the value of that variable.  The variable name should be terminated
2445with a character not a letter, digit or underscore; otherwise, enclose
2446the entire variable name in braces.
2447If `/~' appears, all of FILENAME through that `/' is discarded.
2448
2449On VMS, `$' substitution is not done; this function does little and only
2450duplicates what `expand-file-name' does.
2451
2452(substitute-in-file-name STRING)Fcopy-file
2453Copy FILE to NEWNAME.  Both args must be strings.
2454Signals a `file-already-exists' error if file NEWNAME already exists,
2455unless a third argument OK-IF-ALREADY-EXISTS is supplied and non-nil.
2456A number as third arg means request confirmation if NEWNAME already exists.
2457This is what happens in interactive use with M-x.
2458Fourth arg KEEP-TIME non-nil means give the new file the same
2459last-modified time as the old one.  (This works on only some systems.)
2460A prefix arg makes KEEP-TIME non-nil.
2461
2462(copy-file FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS KEEP-DATE)Fmake-directory-internal
2463Create a directory.  One argument, a file name string.
2464
2465(make-directory-internal DIRNAME)Fdelete-directory
2466Delete a directory.  One argument, a file name or directory name string.
2467
2468(delete-directory DIRNAME)Fdelete-file
2469Delete specified file.  One argument, a file name string.
2470If file has multiple names, it continues to exist with the other names.
2471
2472(delete-file FILENAME)Frename-file
2473Rename FILE as NEWNAME.  Both args strings.
2474If file has names other than FILE, it continues to have those names.
2475Signals a `file-already-exists' error if a file NEWNAME already exists
2476unless optional third argument OK-IF-ALREADY-EXISTS is non-nil.
2477A number as third arg means request confirmation if NEWNAME already exists.
2478This is what happens in interactive use with M-x.
2479
2480(rename-file FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS)Fadd-name-to-file
2481Give FILE additional name NEWNAME.  Both args strings.
2482Signals a `file-already-exists' error if a file NEWNAME already exists
2483unless optional third argument OK-IF-ALREADY-EXISTS is non-nil.
2484A number as third arg means request confirmation if NEWNAME already exists.
2485This is what happens in interactive use with M-x.
2486
2487(add-name-to-file FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS)Fmake-symbolic-link
2488Make a symbolic link to FILENAME, named LINKNAME.  Both args strings.
2489Signals a `file-already-exists' error if a file NEWNAME already exists
2490unless optional third argument OK-IF-ALREADY-EXISTS is non-nil.
2491A number as third arg means request confirmation if NEWNAME already exists.
2492This happens for interactive use with M-x.
2493
2494(make-symbolic-link FILENAME LINKNAME &optional OK-IF-ALREADY-EXISTS)Fdefine-logical-name
2495Define the job-wide logical name NAME to have the value STRING.
2496If STRING is nil or a null string, the logical name NAME is deleted.
2497
2498(define-logical-name VARNAME STRING)Fsysnetunam
2499Open a network connection to PATH using LOGIN as the login string.
2500
2501(sysnetunam PATH LOGIN)Ffile-name-absolute-p
2502Return t if file FILENAME specifies an absolute path name.
2503On Unix, this is a name starting with a `/' or a `~'.
2504
2505(file-name-absolute-p FILENAME)Ffile-exists-p
2506Return t if file FILENAME exists.  (This does not mean you can read it.)
2507See also `file-readable-p' and `file-attributes'.
2508
2509(file-exists-p FILENAME)Ffile-executable-p
2510Return t if FILENAME can be executed by you.
2511For a directory, this means you can access files in that directory.
2512
2513(file-executable-p FILENAME)Ffile-readable-p
2514Return t if file FILENAME exists and you can read it.
2515See also `file-exists-p' and `file-attributes'.
2516
2517(file-readable-p FILENAME)Ffile-symlink-p
2518Return non-nil if file FILENAME is the name of a symbolic link.
2519The value is the name of the file to which it is linked.
2520Otherwise returns nil.
2521
2522(file-symlink-p FILENAME)Ffile-writable-p
2523Return t if file FILENAME can be written or created by you.
2524
2525(file-writable-p FILENAME)Ffile-directory-p
2526Return t if file FILENAME is the name of a directory as a file.
2527A directory name spec may be given instead; then the value is t
2528if the directory so specified exists and really is a directory.
2529
2530(file-directory-p FILENAME)Ffile-accessible-directory-p
2531Return t if file FILENAME is the name of a directory as a file,
2532and files in that directory can be opened by you.  In order to use a
2533directory as a buffer's current directory, this predicate must return true.
2534A directory name spec may be given instead; then the value is t
2535if the directory so specified exists and really is a readable and
2536searchable directory.
2537
2538(file-accessible-directory-p FILENAME)Ffile-modes
2539Return mode bits of FILE, as an integer.
2540
2541(file-modes FILENAME)Fset-file-modes
2542Set mode bits of FILE to MODE (an integer).
2543Only the 12 low bits of MODE are used.
2544
2545(set-file-modes FILENAME MODE)Fset-default-file-modes
2546Set the file permission bits for newly created files.
2547The argument MODE should be an integer; only the low 9 bits are used.
2548This setting is inherited by subprocesses.
2549
2550(set-default-file-modes MODE)Fdefault-file-modes
2551Return the default file protection for created files.
2552The value is an integer.
2553
2554(default-file-modes)Funix-sync
2555Tell Unix to finish all pending disk updates.
2556
2557(unix-sync)Ffile-newer-than-file-p
2558Return t if file FILE1 is newer than file FILE2.
2559If FILE1 does not exist, the answer is nil;
2560otherwise, if FILE2 does not exist, the answer is t.
2561
2562(file-newer-than-file-p FILE1 FILE2)Finsert-file-contents
2563Insert contents of file FILENAME after point.
2564Returns list of absolute file name and length of data inserted.
2565If second argument VISIT is non-nil, the buffer's visited filename
2566and last save file modtime are set, and it is marked unmodified.
2567If visiting and the file does not exist, visiting is completed
2568before the error is signaled.
2569
2570The optional third and fourth arguments BEG and END
2571specify what portion of the file to insert.
2572If VISIT is non-nil, BEG and END must be nil.
2573If optional fifth argument REPLACE is non-nil,
2574it means replace the current buffer contents (in the accessible portion)
2575with the file contents.  This is better than simply deleting and inserting
2576the whole thing because (1) it preserves some marker positions
2577and (2) it puts less data in the undo list.
2578
2579(insert-file-contents FILENAME &optional VISIT BEG END REPLACE)Fwrite-region
2580Write current region into specified file.
2581When called from a program, takes three arguments:
2582START, END and FILENAME.  START and END are buffer positions.
2583Optional fourth argument APPEND if non-nil means
2584  append to existing file contents (if any).
2585Optional fifth argument VISIT if t means
2586  set the last-save-file-modtime of buffer to this file's modtime
2587  and mark buffer not modified.
2588If VISIT is a string, it is a second file name;
2589  the output goes to FILENAME, but the buffer is marked as visiting VISIT.
2590  VISIT is also the file name to lock and unlock for clash detection.
2591If VISIT is neither t nor nil nor a string,
2592  that means do not print the "Wrote file" message.
2593Kludgy feature: if START is a string, then that string is written
2594to the file, instead of any buffer contents, and END is ignored.
2595
2596(write-region START END FILENAME &optional APPEND VISIT)Fcar-less-than-car
2597Return t if (car A) is numerically less than (car B).
2598
2599(car-less-than-car A B)Fverify-visited-file-modtime
2600Return t if last mod time of BUF's visited file matches what BUF records.
2601This means that the file has not been changed since it was visited or saved.
2602
2603(verify-visited-file-modtime BUF)Fclear-visited-file-modtime
2604Clear out records of last mod time of visited file.
2605Next attempt to save will certainly not complain of a discrepancy.
2606
2607(clear-visited-file-modtime)Fvisited-file-modtime
2608Return the current buffer's recorded visited file modification time.
2609The value is a list of the form (HIGH . LOW), like the time values
2610that `file-attributes' returns.
2611
2612(visited-file-modtime)Fset-visited-file-modtime
2613Update buffer's recorded modification time from the visited file's time.
2614Useful if the buffer was not read from the file normally
2615or if the file itself has been changed for some known benign reason.
2616An argument specifies the modification time value to use
2617(instead of that of the visited file), in the form of a list
2618(HIGH . LOW) or (HIGH LOW).
2619
2620(set-visited-file-modtime &optional TIME-LIST)Fdo-auto-save
2621Auto-save all buffers that need it.
2622This is all buffers that have auto-saving enabled
2623and are changed since last auto-saved.
2624Auto-saving writes the buffer into a file
2625so that your editing is not lost if the system crashes.
2626This file is not the file you visited; that changes only when you save.
2627Normally we run the normal hook `auto-save-hook' before saving.
2628
2629Non-nil first argument means do not print any message if successful.
2630Non-nil second argument means save only current buffer.
2631
2632(do-auto-save &optional NO-MESSAGE CURRENT-ONLY)Fset-buffer-auto-saved
2633Mark current buffer as auto-saved with its current text.
2634No auto-save file will be written until the buffer changes again.
2635
2636(set-buffer-auto-saved)Fclear-buffer-auto-save-failure
2637Clear any record of a recent auto-save failure in the current buffer.
2638
2639(clear-buffer-auto-save-failure)Frecent-auto-save-p
2640Return t if buffer has been auto-saved since last read in or saved.
2641
2642(recent-auto-save-p)Fread-file-name-internal
2643Internal subroutine for read-file-name.  Do not call this.
2644
2645(read-file-name-internal STRING DIR ACTION)Fread-file-name
2646Read file name, prompting with PROMPT and completing in directory DIR.
2647Value is not expanded---you must call `expand-file-name' yourself.
2648Default name to DEFAULT if user enters a null string.
2649 (If DEFAULT is omitted, the visited file name is used.)
2650Fourth arg MUSTMATCH non-nil means require existing file's name.
2651 Non-nil and non-t means also require confirmation after completion.
2652Fifth arg INITIAL specifies text to start with.
2653DIR defaults to current buffer's directory default.
2654
2655(read-file-name PROMPT &optional DIR DEFAULT MUSTMATCH INITIAL)Vinsert-default-directory
2656*Non-nil means when reading a filename start with default dir in minibuffer.Vvms-stmlf-recfm
2657*Non-nil means write new files with record format `stmlf'.
2658nil means use format `var'.  This variable is meaningful only on VMS.Vfile-name-handler-alist
2659*Alist of elements (REGEXP . HANDLER) for file names handled specially.
2660If a file name matches REGEXP, then all I/O on that file is done by calling
2661HANDLER.
2662
2663The first argument given to HANDLER is the name of the I/O primitive
2664to be handled; the remaining arguments are the arguments that were
2665passed to that primitive.  For example, if you do
2666    (file-exists-p FILENAME)
2667and FILENAME is handled by HANDLER, then HANDLER is called like this:
2668    (funcall HANDLER 'file-exists-p FILENAME)
2669The function `find-file-name-handler' checks this list for a handler
2670for its argument.Vafter-insert-file-functions
2671A list of functions to be called at the end of `insert-file-contents'.
2672Each is passed one argument, the number of bytes inserted.  It should return
2673the new byte count, and leave point the same.  If `insert-file-contents' is
2674intercepted by a handler from `file-name-handler-alist', that handler is
2675responsible for calling the after-insert-file-functions if appropriate.Vwrite-region-annotate-functions
2676A list of functions to be called at the start of `write-region'.
2677Each is passed two arguments, START and END as for `write-region'.  It should
2678return a list of pairs (POSITION . STRING) of strings to be effectively
2679inserted at the specified positions of the file being written (1 means to
2680insert before the first byte written).  The POSITIONs must be sorted into
2681increasing order.  If there are several functions in the list, the several
2682lists are merged destructively.Vinhibit-file-name-handlers
2683A list of file name handlers that temporarily should not be used.
2684This applies only to the operation `inhibit-file-name-operation'.Vinhibit-file-name-operation
2685The operation for which `inhibit-file-name-handlers' is applicable.Vauto-save-list-file-name
2686File name in which we write a list of all auto save file names.Fdirectory-files
2687Return a list of names of files in DIRECTORY.
2688There are three optional arguments:
2689If FULL is non-nil, absolute pathnames of the files are returned.
2690If MATCH is non-nil, only pathnames containing that regexp are returned.
2691If NOSORT is non-nil, the list is not sorted--its order is unpredictable.
2692 NOSORT is useful if you plan to sort the result yourself.
2693
2694(directory-files DIRNAME &optional FULL MATCH NOSORT)Ffile-name-completion
2695Complete file name FILE in directory DIR.
2696Returns the longest string
2697common to all filenames in DIR that start with FILE.
2698If there is only one and FILE matches it exactly, returns t.
2699Returns nil if DIR contains no name starting with FILE.
2700
2701(file-name-completion FILE DIRNAME)Ffile-name-all-completions
2702Return a list of all completions of file name FILE in directory DIR.
2703These are all file names in directory DIR which begin with FILE.
2704
2705(file-name-all-completions FILE DIRNAME)Ffile-name-all-versions
2706Return a list of all versions of file name FILE in directory DIR.
2707
2708(file-name-all-versions FILE DIRNAME)Ffile-version-limit
2709Return the maximum number of versions allowed for FILE.
2710Returns nil if the file cannot be opened or if there is no version limit.
2711
2712(file-version-limit FILENAME)Ffile-attributes
2713Return a list of attributes of file FILENAME.
2714Value is nil if specified file cannot be opened.
2715Otherwise, list elements are:
2716 0. t for directory, string (name linked to) for symbolic link, or nil.
2717 1. Number of links to file.
2718 2. File uid.
2719 3. File gid.
2720 4. Last access time, as a list of two integers.
2721  First integer has high-order 16 bits of time, second has low 16 bits.
2722 5. Last modification time, likewise.
2723 6. Last status change time, likewise.
2724 7. Size in bytes (-1, if number is out of range).
2725 8. File modes, as a string of ten letters or dashes as in ls -l.
2726 9. t iff file's gid would change if file were deleted and recreated.
272710. inode number.
272811. Device number.
2729
2730If file does not exist, returns nil.
2731
2732(file-attributes FILENAME)Vcompletion-ignored-extensions
2733*Completion ignores filenames ending in any string in this list.
2734This variable does not affect lists of possible completions,
2735but does affect the commands that actually do completions.Fforward-char
2736Move point right ARG characters (left if ARG negative).
2737On reaching end of buffer, stop and signal error.
2738
2739(forward-char &optional N)Fbackward-char
2740Move point left ARG characters (right if ARG negative).
2741On attempt to pass beginning or end of buffer, stop and signal error.
2742
2743(backward-char &optional N)Fforward-line
2744Move ARG lines forward (backward if ARG is negative).
2745Precisely, if point is on line I, move to the start of line I + ARG.
2746If there isn't room, go as far as possible (no error).
2747Returns the count of lines left to move.  If moving forward,
2748that is ARG - number of lines moved; if backward, ARG + number moved.
2749With positive ARG, a non-empty line at the end counts as one line
2750  successfully moved (for the return value).
2751
2752(forward-line &optional N)Fbeginning-of-line
2753Move point to beginning of current line.
2754With argument ARG not nil or 1, move forward ARG - 1 lines first.
2755If scan reaches end of buffer, stop there without error.
2756
2757(beginning-of-line &optional N)Fend-of-line
2758Move point to end of current line.
2759With argument ARG not nil or 1, move forward ARG - 1 lines first.
2760If scan reaches end of buffer, stop there without error.
2761
2762(end-of-line &optional N)Fdelete-char
2763Delete the following ARG characters (previous, with negative arg).
2764Optional second arg KILLFLAG non-nil means kill instead (save in kill ring).
2765Interactively, ARG is the prefix arg, and KILLFLAG is set if
2766ARG was explicitly specified.
2767
2768(delete-char N &optional KILLFLAG)Fdelete-backward-char
2769Delete the previous ARG characters (following, with negative ARG).
2770Optional second arg KILLFLAG non-nil means kill instead (save in kill ring).
2771Interactively, ARG is the prefix arg, and KILLFLAG is set if
2772ARG was explicitly specified.
2773
2774(delete-backward-char N &optional KILLFLAG)Fself-insert-command
2775Insert the character you type.
2776Whichever character you type to run this command is inserted.
2777
2778(self-insert-command ARG)Fnewline
2779Insert a newline.  With arg, insert that many newlines.
2780In Auto Fill mode, if no numeric arg, break the preceding line if it's long.
2781
2782(newline &optional ARG1)Vblink-paren-function
2783Function called, if non-nil, whenever a close parenthesis is inserted.
2784More precisely, a char with closeparen syntax is self-inserted.Fcase-table-p
2785Return t iff ARG is a case table.
2786See `set-case-table' for more information on these data structures.
2787
2788(case-table-p TABLE)Fcurrent-case-table
2789Return the case table of the current buffer.
2790
2791(current-case-table)Fstandard-case-table
2792Return the standard case table.
2793This is the one used for new buffers.
2794
2795(standard-case-table)Fset-case-table
2796Select a new case table for the current buffer.
2797A case table is a list (DOWNCASE UPCASE CANONICALIZE EQUIVALENCES)
2798 where each element is either nil or a string of length 256.
2799DOWNCASE maps each character to its lower-case equivalent.
2800UPCASE maps each character to its upper-case equivalent;
2801 if lower and upper case characters are in 1-1 correspondence,
2802 you may use nil and the upcase table will be deduced from DOWNCASE.
2803CANONICALIZE maps each character to a canonical equivalent;
2804 any two characters that are related by case-conversion have the same
2805 canonical equivalent character; it may be nil, in which case it is
2806 deduced from DOWNCASE and UPCASE.
2807EQUIVALENCES is a map that cyclicly permutes each equivalence class
2808 (of characters with the same canonical equivalent); it may be nil,
2809 in which case it is deduced from CANONICALIZE.
2810
2811(set-case-table TABLE)Fset-standard-case-table
2812Select a new standard case table for new buffers.
2813See `set-case-table' for more info on case tables.
2814
2815(set-standard-case-table TABLE)Vascii-downcase-table
2816String mapping ASCII characters to lowercase equivalents.Vascii-upcase-table
2817String mapping ASCII characters to uppercase equivalents.Fupcase
2818Convert argument to upper case and return that.
2819The argument may be a character or string.  The result has the same type.
2820The argument object is not altered.  See also `capitalize'.
2821
2822(upcase OBJ)Fdowncase
2823Convert argument to lower case and return that.
2824The argument may be a character or string.  The result has the same type.
2825The argument object is not altered.
2826
2827(downcase OBJ)Fcapitalize
2828Convert argument to capitalized form and return that.
2829This means that each word's first character is upper case
2830and the rest is lower case.
2831The argument may be a character or string.  The result has the same type.
2832The argument object is not altered.
2833
2834(capitalize OBJ)Fupcase-region
2835Convert the region to upper case.  In programs, wants two arguments.
2836These arguments specify the starting and ending character numbers of
2837the region to operate on.  When used as a command, the text between
2838point and the mark is operated on.
2839See also `capitalize-region'.
2840
2841(upcase-region B E)Fdowncase-region
2842Convert the region to lower case.  In programs, wants two arguments.
2843These arguments specify the starting and ending character numbers of
2844the region to operate on.  When used as a command, the text between
2845point and the mark is operated on.
2846
2847(downcase-region B E)Fcapitalize-region
2848Convert the region to capitalized form.
2849Capitalized form means each word's first character is upper case
2850and the rest of it is lower case.
2851In programs, give two arguments, the starting and ending
2852character positions to operate on.
2853
2854(capitalize-region B E)Fupcase-word
2855Convert following word (or ARG words) to upper case, moving over.
2856With negative argument, convert previous words but do not move.
2857See also `capitalize-word'.
2858
2859(upcase-word ARG)Fdowncase-word
2860Convert following word (or ARG words) to lower case, moving over.
2861With negative argument, convert previous words but do not move.
2862
2863(downcase-word ARG)Fcapitalize-word
2864Capitalize the following word (or ARG words), moving over.
2865This gives the word(s) a first character in upper case
2866and the rest lower case.
2867With negative argument, capitalize previous words but do not move.
2868
2869(capitalize-word ARG)Fcurrent-column
2870Return the horizontal position of point.  Beginning of line is column 0.
2871This is calculated by adding together the widths of all the displayed
2872representations of the character between the start of the previous line
2873and point.  (eg control characters will have a width of 2 or 4, tabs
2874will have a variable width)
2875Ignores finite width of frame, which means that this function may return
2876values greater than (frame-width).
2877Whether the line is visible (if `selective-display' is t) has no effect;
2878however, ^M is treated as end of line when `selective-display' is t.
2879
2880(current-column)Findent-to
2881Indent from point with tabs and spaces until COLUMN is reached.
2882Optional second argument MIN says always do at least MIN spaces
2883even if that goes past COLUMN; by default, MIN is zero.
2884
2885(indent-to COL &optional MINIMUM)Fcurrent-indentation
2886Return the indentation of the current line.
2887This is the horizontal position of the character
2888following any initial whitespace.
2889
2890(current-indentation)Fmove-to-column
2891Move point to column COLUMN in the current line.
2892The column of a character is calculated by adding together the widths
2893as displayed of the previous characters in the line.
2894This function ignores line-continuation;
2895there is no upper limit on the column number a character can have
2896and horizontal scrolling has no effect.
2897
2898If specified column is within a character, point goes after that character.
2899If it's past end of line, point goes to end of line.
2900
2901A non-nil second (optional) argument FORCE means, if the line
2902is too short to reach column COLUMN then add spaces/tabs to get there,
2903and if COLUMN is in the middle of a tab character, change it to spaces.
2904
2905(move-to-column COLUMN &optional FORCE)Fcompute-motion
2906Scan through the current buffer, calculating screen position.
2907Scan the current buffer forward from offset FROM,
2908assuming it is at position FROMPOS--a cons of the form (HPOS . VPOS)--
2909to position TO or position TOPOS--another cons of the form (HPOS . VPOS)--
2910and return the ending buffer position and screen location.
2911
2912There are three additional arguments:
2913
2914WIDTH is the number of columns available to display text;
2915this affects handling of continuation lines.
2916This is usually the value returned by `window-width', less one (to allow
2917for the continuation glyph).
2918
2919OFFSETS is either nil or a cons cell (HSCROLL . TAB-OFFSET).
2920HSCROLL is the number of columns not being displayed at the left
2921margin; this is usually taken from a window's hscroll member.
2922TAB-OFFSET is the number of columns of the first tab that aren't
2923being displayed, perhaps because the line was continued within it.
2924If OFFSETS is nil, HSCROLL and TAB-OFFSET are assumed to be zero.
2925
2926WINDOW is the window to operate on.  Currently this is used only to
2927find the display table.  It does not matter what buffer WINDOW displays;
2928`compute-motion' always operates on the current buffer.
2929
2930The value is a list of five elements:
2931  (POS HPOS VPOS PREVHPOS CONTIN)
2932POS is the buffer position where the scan stopped.
2933VPOS is the vertical position where the scan stopped.
2934HPOS is the horizontal position where the scan stopped.
2935
2936PREVHPOS is the horizontal position one character back from POS.
2937CONTIN is t if a line was continued after (or within) the previous character.
2938
2939For example, to find the buffer position of column COL of line LINE
2940of a certain window, pass the window's starting location as FROM
2941and the window's upper-left coordinates as FROMPOS.
2942Pass the buffer's (point-max) as TO, to limit the scan to the end of the
2943visible section of the buffer, and pass LINE and COL as TOPOS.
2944
2945(compute-motion FROM FROMPOS TO TOPOS WIDTH OFFSETS WINDOW)Fvertical-motion
2946Move to start of screen line LINES lines down.
2947If LINES is negative, this is moving up.
2948
2949The optional second argument WINDOW specifies the window to use for
2950parameters such as width, horizontal scrolling, and so on.
2951the default is the selected window.
2952It does not matter what buffer is displayed in WINDOW.
2953`vertical-motion' always uses the current buffer.
2954
2955Sets point to position found; this may be start of line
2956or just the start of a continuation line.
2957Returns number of lines moved; may be closer to zero than LINES
2958if beginning or end of buffer was reached.
2959
2960(vertical-motion LINES &optional WINDOW)Vindent-tabs-mode
2961*Indentation can insert tabs if this is non-nil.
2962Setting this variable automatically makes it local to the current buffer.Flooking-at
2963Return t if text after point matches regular expression PAT.
2964This function modifies the match data that `match-beginning',
2965`match-end' and `match-data' access; save and restore the match
2966data if you want to preserve them.
2967
2968(looking-at STRING)Fstring-match
2969Return index of start of first match for REGEXP in STRING, or nil.
2970If third arg START is non-nil, start search at that index in STRING.
2971For index of first char beyond the match, do (match-end 0).
2972`match-end' and `match-beginning' also give indices of substrings
2973matched by parenthesis constructs in the pattern.
2974
2975(string-match REGEXP STRING &optional START)Fskip-chars-forward
2976Move point forward, stopping before a char not in STRING, or at pos LIM.
2977STRING is like the inside of a `[...]' in a regular expression
2978except that `]' is never special and `\' quotes `^', `-' or `\'.
2979Thus, with arg "a-zA-Z", this skips letters stopping before first nonletter.
2980With arg "^a-zA-Z", skips nonletters stopping before first letter.
2981Returns the distance traveled, either zero or positive.
2982
2983(skip-chars-forward STRING &optional LIM)Fskip-chars-backward
2984Move point backward, stopping after a char not in STRING, or at pos LIM.
2985See `skip-chars-forward' for details.
2986Returns the distance traveled, either zero or negative.
2987
2988(skip-chars-backward STRING &optional LIM)Fskip-syntax-forward
2989Move point forward across chars in specified syntax classes.
2990SYNTAX is a string of syntax code characters.
2991Stop before a char whose syntax is not in SYNTAX, or at position LIM.
2992If SYNTAX starts with ^, skip characters whose syntax is NOT in SYNTAX.
2993This function returns the distance traveled, either zero or positive.
2994
2995(skip-syntax-forward SYNTAX &optional LIM)Fskip-syntax-backward
2996Move point backward across chars in specified syntax classes.
2997SYNTAX is a string of syntax code characters.
2998Stop on reaching a char whose syntax is not in SYNTAX, or at position LIM.
2999If SYNTAX starts with ^, skip characters whose syntax is NOT in SYNTAX.
3000This function returns the distance traveled, either zero or negative.
3001
3002(skip-syntax-backward SYNTAX &optional LIM)Fsearch-backward
3003Search backward from point for STRING.
3004Set point to the beginning of the occurrence found, and return point.
3005An optional second argument bounds the search; it is a buffer position.
3006The match found must not extend before that position.
3007Optional third argument, if t, means if fail just return nil (no error).
3008 If not nil and not t, position at limit of search and return nil.
3009Optional fourth argument is repeat count--search for successive occurrences.
3010See also the functions `match-beginning', `match-end' and `replace-match'.
3011
3012(search-backward STRING &optional BOUND NOERROR COUNT)Fsearch-forward
3013Search forward from point for STRING.
3014Set point to the end of the occurrence found, and return point.
3015An optional second argument bounds the search; it is a buffer position.
3016The match found must not extend after that position.  nil is equivalent
3017  to (point-max).
3018Optional third argument, if t, means if fail just return nil (no error).
3019  If not nil and not t, move to limit of search and return nil.
3020Optional fourth argument is repeat count--search for successive occurrences.
3021See also the functions `match-beginning', `match-end' and `replace-match'.
3022
3023(search-forward STRING &optional BOUND NOERROR COUNT)Fword-search-backward
3024Search backward from point for STRING, ignoring differences in punctuation.
3025Set point to the beginning of the occurrence found, and return point.
3026An optional second argument bounds the search; it is a buffer position.
3027The match found must not extend before that position.
3028Optional third argument, if t, means if fail just return nil (no error).
3029  If not nil and not t, move to limit of search and return nil.
3030Optional fourth argument is repeat count--search for successive occurrences.
3031
3032(word-search-backward STRING &optional BOUND NOERROR COUNT)Fword-search-forward
3033Search forward from point for STRING, ignoring differences in punctuation.
3034Set point to the end of the occurrence found, and return point.
3035An optional second argument bounds the search; it is a buffer position.
3036The match found must not extend after that position.
3037Optional third argument, if t, means if fail just return nil (no error).
3038  If not nil and not t, move to limit of search and return nil.
3039Optional fourth argument is repeat count--search for successive occurrences.
3040
3041(word-search-forward STRING &optional BOUND NOERROR COUNT)Fre-search-backward
3042Search backward from point for match for regular expression REGEXP.
3043Set point to the beginning of the match, and return point.
3044The match found is the one starting last in the buffer
3045and yet ending before the origin of the search.
3046An optional second argument bounds the search; it is a buffer position.
3047The match found must start at or after that position.
3048Optional third argument, if t, means if fail just return nil (no error).
3049  If not nil and not t, move to limit of search and return nil.
3050Optional fourth argument is repeat count--search for successive occurrences.
3051See also the functions `match-beginning', `match-end' and `replace-match'.
3052
3053(re-search-backward REGEXP &optional BOUND NOERROR COUNT)Fre-search-forward
3054Search forward from point for regular expression REGEXP.
3055Set point to the end of the occurrence found, and return point.
3056An optional second argument bounds the search; it is a buffer position.
3057The match found must not extend after that position.
3058Optional third argument, if t, means if fail just return nil (no error).
3059  If not nil and not t, move to limit of search and return nil.
3060Optional fourth argument is repeat count--search for successive occurrences.
3061See also the functions `match-beginning', `match-end' and `replace-match'.
3062
3063(re-search-forward REGEXP &optional BOUND NOERROR COUNT)Freplace-match
3064Replace text matched by last search with NEWTEXT.
3065If second arg FIXEDCASE is non-nil, do not alter case of replacement text.
3066Otherwise maybe capitalize the whole text, or maybe just word initials,
3067based on the replaced text.
3068If the replaced text has only capital letters
3069and has at least one multiletter word, convert NEWTEXT to all caps.
3070If the replaced text has at least one word starting with a capital letter,
3071then capitalize each word in NEWTEXT.
3072
3073If third arg LITERAL is non-nil, insert NEWTEXT literally.
3074Otherwise treat `\' as special:
3075  `\&' in NEWTEXT means substitute original matched text.
3076  `\N' means substitute what matched the Nth `\(...\)'.
3077       If Nth parens didn't match, substitute nothing.
3078  `\\' means insert one `\'.
3079FIXEDCASE and LITERAL are optional arguments.
3080Leaves point at end of replacement text.
3081
3082(replace-match NEWTEXT &optional FIXEDCASE LITERAL)Fmatch-beginning
3083Return position of start of text matched by last search.
3084NUM specifies which parenthesized expression in the last regexp.
3085 Value is nil if NUMth pair didn't match, or there were less than NUM pairs.
3086Zero means the entire text matched by the whole regexp or whole string.
3087
3088(match-beginning NUM)Fmatch-end
3089Return position of end of text matched by last search.
3090ARG, a number, specifies which parenthesized expression in the last regexp.
3091 Value is nil if ARGth pair didn't match, or there were less than ARG pairs.
3092Zero means the entire text matched by the whole regexp or whole string.
3093
3094(match-end NUM)Fmatch-data
3095Return a list containing all info on what the last search matched.
3096Element 2N is `(match-beginning N)'; element 2N + 1 is `(match-end N)'.
3097All the elements are markers or nil (nil if the Nth pair didn't match)
3098if the last match was on a buffer; integers or nil if a string was matched.
3099Use `store-match-data' to reinstate the data in this list.
3100
3101(match-data)Fstore-match-data
3102Set internal data on last search match from elements of LIST.
3103LIST should have been created by calling `match-data' previously.
3104
3105(store-match-data LIST)Fregexp-quote
3106Return a regexp string which matches exactly STRING and nothing else.
3107
3108(regexp-quote STR)Fundo-boundary
3109Mark a boundary between units of undo.
3110An undo command will stop at this point,
3111but another undo command will undo to the previous boundary.
3112
3113(undo-boundary)Fprimitive-undo
3114Undo N records from the front of the list LIST.
3115Return what remains of the list.
3116
3117(primitive-undo N LIST)Fcons
3118Create a new cons, give it CAR and CDR as components, and return it.
3119
3120(cons CAR CDR)Flist
3121Return a newly created list with specified arguments as elements.
3122Any number of arguments, even zero arguments, are allowed.Fmake-list
3123Return a newly created list of length LENGTH, with each element being INIT.
3124
3125(make-list LENGTH INIT)Fmake-vector
3126Return a newly created vector of length LENGTH, with each element being INIT.
3127See also the function `vector'.
3128
3129(make-vector LENGTH INIT)Fvector
3130Return a newly created vector with specified arguments as elements.
3131Any number of arguments, even zero arguments, are allowed.Fmake-byte-code
3132Create a byte-code object with specified arguments as elements.
3133The arguments should be the arglist, bytecode-string, constant vector,
3134stack size, (optional) doc string, and (optional) interactive spec.
3135The first four arguments are required; at most six have any
3136significance.Fmake-symbol
3137Return a newly allocated uninterned symbol whose name is NAME.
3138Its value and function definition are void, and its property list is nil.
3139
3140(make-symbol STR)Fmake-marker
3141Return a newly allocated marker which does not point at any place.
3142
3143(make-marker)Fmake-string
3144Return a newly created string of length LENGTH, with each element being INIT.
3145Both LENGTH and INIT must be numbers.
3146
3147(make-string LENGTH INIT)Fpurecopy
3148Make a copy of OBJECT in pure storage.
3149Recursively copies contents of vectors and cons cells.
3150Does not copy symbols.
3151
3152(purecopy OBJ)Fgarbage-collect
3153Reclaim storage for Lisp objects no longer needed.
3154Returns info on amount of space in use:
3155 ((USED-CONSES . FREE-CONSES) (USED-SYMS . FREE-SYMS)
3156  (USED-MARKERS . FREE-MARKERS) USED-STRING-CHARS USED-VECTOR-SLOTS
3157  (USED-FLOATS . FREE-FLOATS))
3158Garbage collection happens automatically if you cons more than
3159`gc-cons-threshold' bytes of Lisp data since previous garbage collection.
3160
3161(garbage-collect)Fmemory-limit
3162Return the address of the last byte Emacs has allocated, divided by 1024.
3163This may be helpful in debugging Emacs's memory usage.
3164We divide the value by 1024 to make sure it fits in a Lisp integer.
3165
3166(memory-limit)Vgc-cons-threshold
3167*Number of bytes of consing between garbage collections.
3168Garbage collection can happen automatically once this many bytes have been
3169allocated since the last garbage collection.  All data types count.
3170
3171Garbage collection happens automatically only when `eval' is called.
3172
3173By binding this temporarily to a large number, you can effectively
3174prevent garbage collection during a part of the program.Vpure-bytes-used
3175Number of bytes of sharable Lisp data allocated so far.Vdata-bytes-used
3176Number of bytes of unshared memory allocated in this session.Vdata-bytes-free
3177Number of bytes of unshared memory remaining available in this session.Vpurify-flag
3178Non-nil means loading Lisp code in order to dump an executable.
3179This means that certain objects should be allocated in shared (pure) space.Vundo-limit
3180Keep no more undo information once it exceeds this size.
3181This limit is applied when garbage collection happens.
3182The size is counted as the number of bytes occupied,
3183which includes both saved text and other data.Vundo-strong-limit
3184Don't keep more than this much size of undo information.
3185A command which pushes past this size is itself forgotten.
3186This limit is applied when garbage collection happens.
3187The size is counted as the number of bytes occupied,
3188which includes both saved text and other data.Feq
3189T if the two args are the same Lisp object.
3190
3191(eq OBJ1 OBJ2)Fnull
3192T if OBJECT is nil.
3193
3194(null OBJ)Fconsp
3195T if OBJECT is a cons cell.
3196
3197(consp OBJ)Fatom
3198T if OBJECT is not a cons cell.  This includes nil.
3199
3200(atom OBJ)Flistp
3201T if OBJECT is a list.  This includes nil.
3202
3203(listp OBJ)Fnlistp
3204T if OBJECT is not a list.  Lists include nil.
3205
3206(nlistp OBJ)Fsymbolp
3207T if OBJECT is a symbol.
3208
3209(symbolp OBJ)Fvectorp
3210T if OBJECT is a vector.
3211
3212(vectorp OBJ)Fstringp
3213T if OBJECT is a string.
3214
3215(stringp OBJ)Farrayp
3216T if OBJECT is an array (string or vector).
3217
3218(arrayp OBJ)Fsequencep
3219T if OBJECT is a sequence (list or array).
3220
3221(sequencep OBJ)Fbufferp
3222T if OBJECT is an editor buffer.
3223
3224(bufferp OBJ)Fmarkerp
3225T if OBJECT is a marker (editor pointer).
3226
3227(markerp OBJ)Fsubrp
3228T if OBJECT is a built-in function.
3229
3230(subrp OBJ)Fbyte-code-function-p
3231T if OBJECT is a byte-compiled function object.
3232
3233(byte-code-function-p OBJ)Fchar-or-string-p
3234T if OBJECT is a character (an integer) or a string.
3235
3236(char-or-string-p OBJ)Fintegerp
3237T if OBJECT is an integer.
3238
3239(integerp OBJ)Finteger-or-marker-p
3240T if OBJECT is an integer or a marker (editor pointer).
3241
3242(integer-or-marker-p OBJ)Fnatnump
3243T if OBJECT is a nonnegative integer.
3244
3245(natnump OBJ)Fnumberp
3246T if OBJECT is a number (floating point or integer).
3247
3248(numberp OBJ)Fnumber-or-marker-p
3249T if OBJECT is a number or a marker.
3250
3251(number-or-marker-p OBJ)Ffloatp
3252T if OBJECT is a floating point number.
3253
3254(floatp OBJ)Fcar
3255Return the car of CONSCELL.  If arg is nil, return nil.
3256Error if arg is not nil and not a cons cell.  See also `car-safe'.
3257
3258(car LIST)Fcar-safe
3259Return the car of OBJECT if it is a cons cell, or else nil.
3260
3261(car-safe OBJECT)Fcdr
3262Return the cdr of CONSCELL.  If arg is nil, return nil.
3263Error if arg is not nil and not a cons cell.  See also `cdr-safe'.
3264
3265(cdr LIST)Fcdr-safe
3266Return the cdr of OBJECT if it is a cons cell, or else  nil.
3267
3268(cdr-safe OBJECT)Fsetcar
3269Set the car of CONSCELL to be NEWCAR.  Returns NEWCAR.
3270
3271(setcar CELL NEWCAR)Fsetcdr
3272Set the cdr of CONSCELL to be NEWCDR.  Returns NEWCDR.
3273
3274(setcdr CELL NEWCDR)Fboundp
3275T if SYMBOL's value is not void.
3276
3277(boundp SYM)Ffboundp
3278T if SYMBOL's function definition is not void.
3279
3280(fboundp SYM)Fmakunbound
3281Make SYMBOL's value be void.
3282
3283(makunbound SYM)Ffmakunbound
3284Make SYMBOL's function definition be void.
3285
3286(fmakunbound SYM)Fsymbol-function
3287Return SYMBOL's function definition.  Error if that is void.
3288
3289(symbol-function SYMBOL)Fsymbol-plist
3290Return SYMBOL's property list.
3291
3292(symbol-plist SYM)Fsymbol-name
3293Return SYMBOL's name, a string.
3294
3295(symbol-name SYM)Ffset
3296Set SYMBOL's function definition to NEWVAL, and return NEWVAL.
3297
3298(fset SYM NEWDEF)Fdefalias
3299Set SYMBOL's function definition to NEWVAL, and return NEWVAL.
3300Associates the function with the current load file, if any.
3301
3302(defalias SYM NEWDEF)Fdefine-function
3303Set SYMBOL's function definition to NEWVAL, and return NEWVAL.
3304Associates the function with the current load file, if any.
3305
3306(define-function SYM NEWDEF)Fsetplist
3307Set SYMBOL's property list to NEWVAL, and return NEWVAL.
3308
3309(setplist SYM NEWPLIST)Fsymbol-value
3310Return SYMBOL's value.  Error if that is void.
3311
3312(symbol-value SYM)Fset
3313Set SYMBOL's value to NEWVAL, and return NEWVAL.
3314
3315(set SYM NEWVAL)Fdefault-boundp
3316Return T if SYMBOL has a non-void default value.
3317This is the value that is seen in buffers that do not have their own values
3318for this variable.
3319
3320(default-boundp SYM)Fdefault-value
3321Return SYMBOL's default value.
3322This is the value that is seen in buffers that do not have their own values
3323for this variable.  The default value is meaningful for variables with
3324local bindings in certain buffers.
3325
3326(default-value SYM)Fset-default
3327Set SYMBOL's default value to VAL.  SYMBOL and VAL are evaluated.
3328The default value is seen in buffers that do not have their own values
3329for this variable.
3330
3331(set-default SYM VALUE)Fsetq-default
3332Set the default value of variable VAR to VALUE.
3333VAR, the variable name, is literal (not evaluated);
3334VALUE is an expression and it is evaluated.
3335The default value of a variable is seen in buffers
3336that do not have their own values for the variable.
3337
3338More generally, you can use multiple variables and values, as in
3339  (setq-default SYM VALUE SYM VALUE...)
3340This sets each SYM's default value to the corresponding VALUE.
3341The VALUE for the Nth SYM can refer to the new default values
3342of previous SYMs.Fmake-variable-buffer-local
3343Make VARIABLE have a separate value for each buffer.
3344At any time, the value for the current buffer is in effect.
3345There is also a default value which is seen in any buffer which has not yet
3346set its own value.
3347Using `set' or `setq' to set the variable causes it to have a separate value
3348for the current buffer if it was previously using the default value.
3349The function `default-value' gets the default value and `set-default' sets it.
3350
3351(make-variable-buffer-local SYM)Fmake-local-variable
3352Make VARIABLE have a separate value in the current buffer.
3353Other buffers will continue to share a common default value.
3354(The buffer-local value of VARIABLE starts out as the same value
3355VARIABLE previously had.  If VARIABLE was void, it remains void.)
3356See also `make-variable-buffer-local'.
3357
3358If the variable is already arranged to become local when set,
3359this function causes a local value to exist for this buffer,
3360just as if the variable were set.
3361
3362(make-local-variable SYM)Fkill-local-variable
3363Make VARIABLE no longer have a separate value in the current buffer.
3364From now on the default value will apply in this buffer.
3365
3366(kill-local-variable SYM)Findirect-function
3367Return the function at the end of OBJECT's function chain.
3368If OBJECT is a symbol, follow all function indirections and return the final
3369function binding.
3370If OBJECT is not a symbol, just return it.
3371Signal a void-function error if the final symbol is unbound.
3372Signal a cyclic-function-indirection error if there is a loop in the
3373function chain of symbols.
3374
3375(indirect-function OBJECT)Faref
3376Return the element of ARRAY at index INDEX.
3377ARRAY may be a vector or a string, or a byte-code object.  INDEX starts at 0.
3378
3379(aref ARRAY IDX)Faset
3380Store into the element of ARRAY at index IDX the value NEWELT.
3381ARRAY may be a vector or a string.  IDX starts at 0.
3382
3383(aset ARRAY IDX NEWELT)F=
3384T if two args, both numbers or markers, are equal.
3385
3386(= NUM1 NUM2)F<
3387T if first arg is less than second arg.  Both must be numbers or markers.
3388
3389(< NUM1 NUM2)F>
3390T if first arg is greater than second arg.  Both must be numbers or markers.
3391
3392(> NUM1 NUM2)F<=
3393T if first arg is less than or equal to second arg.
3394Both must be numbers or markers.
3395
3396(<= NUM1 NUM2)F>=
3397T if first arg is greater than or equal to second arg.
3398Both must be numbers or markers.
3399
3400(>= NUM1 NUM2)F/=
3401T if first arg is not equal to second arg.  Both must be numbers or markers.
3402
3403(/= NUM1 NUM2)Fzerop
3404T if NUMBER is zero.
3405
3406(zerop NUM)Fnumber-to-string
3407Convert NUM to a string by printing it in decimal.
3408Uses a minus sign if negative.
3409NUM may be an integer or a floating point number.
3410
3411(number-to-string NUM)Fstring-to-number
3412Convert STRING to a number by parsing it as a decimal number.
3413This parses both integers and floating point numbers.
3414It ignores leading spaces and tabs.
3415
3416(string-to-number STR)F+
3417Return sum of any number of arguments, which are numbers or markers.F-
3418Negate number or subtract numbers or markers.
3419With one arg, negates it.  With more than one arg,
3420subtracts all but the first from the first.F*
3421Returns product of any number of arguments, which are numbers or markers.F/
3422Returns first argument divided by all the remaining arguments.
3423The arguments must be numbers or markers.F%
3424Returns remainder of first arg divided by second.
3425Both must be integers or markers.
3426
3427(% NUM1 NUM2)Fmod
3428Returns X modulo Y.
3429The result falls between zero (inclusive) and Y (exclusive).
3430Both X and Y must be numbers or markers.
3431
3432(mod NUM1 NUM2)Fmax
3433Return largest of all the arguments (which must be numbers or markers).
3434The value is always a number; markers are converted to numbers.Fmin
3435Return smallest of all the arguments (which must be numbers or markers).
3436The value is always a number; markers are converted to numbers.Flogand
3437Return bitwise-and of all the arguments.
3438Arguments may be integers, or markers converted to integers.Flogior
3439Return bitwise-or of all the arguments.
3440Arguments may be integers, or markers converted to integers.Flogxor
3441Return bitwise-exclusive-or of all the arguments.
3442Arguments may be integers, or markers converted to integers.Fash
3443Return VALUE with its bits shifted left by COUNT.
3444If COUNT is negative, shifting is actually to the right.
3445In this case, the sign bit is duplicated.
3446
3447(ash NUM1 NUM2)Flsh
3448Return VALUE with its bits shifted left by COUNT.
3449If COUNT is negative, shifting is actually to the right.
3450In this case,  zeros are shifted in on the left.
3451
3452(lsh NUM1 NUM2)F1+
3453Return NUMBER plus one.  NUMBER may be a number or a marker.
3454Markers are converted to integers.
3455
3456(1+ NUM)F1-
3457Return NUMBER minus one.  NUMBER may be a number or a marker.
3458Markers are converted to integers.
3459
3460(1- NUM)Flognot
3461Return the bitwise complement of ARG.  ARG must be an integer.
3462
3463(lognot NUM)Fdocumentation
3464Return the documentation string of FUNCTION.
3465Unless a non-nil second argument is given, the
3466string is passed through `substitute-command-keys'.
3467
3468(documentation FUNCTION &optional RAW)Fdocumentation-property
3469Return the documentation string that is SYMBOL's PROP property.
3470This is like `get', but it can refer to strings stored in the
3471`etc/DOC' file; and if the value is a string, it is passed through
3472`substitute-command-keys'.  A non-nil third argument avoids this
3473translation.
3474
3475(documentation-property SYM PROP &optional RAW)FSnarf-documentation
3476Used during Emacs initialization, before dumping runnable Emacs,
3477to find pointers to doc strings stored in `etc/DOC...' and
3478record them in function definitions.
3479One arg, FILENAME, a string which does not include a directory.
3480The file is found in `../etc' now; found in the `data-directory'
3481when doc strings are referred to later in the dumped Emacs.
3482
3483(Snarf-documentation FILENAME)Fsubstitute-command-keys
3484Substitute key descriptions for command names in STRING.
3485Return a new string which is STRING with substrings of the form \=\[COMMAND]
3486replaced by either:  a keystroke sequence that will invoke COMMAND,
3487or "M-x COMMAND" if COMMAND is not on any keys.
3488Substrings of the form \=\{MAPVAR} are replaced by summaries
3489(made by describe-bindings) of the value of MAPVAR, taken as a keymap.
3490Substrings of the form \=\<MAPVAR> specify to use the value of MAPVAR
3491as the keymap for future \=\[COMMAND] substrings.
3492\=\= quotes the following character and is discarded;
3493thus, \=\=\=\= puts \=\= into the output, and \=\=\=\[ puts \=\[ into the output.
3494
3495(substitute-command-keys STR)Vinternal-doc-file-name
3496Name of file containing documentation strings of built-in symbols.Fchar-to-string
3497Convert arg CHAR to a one-character string containing that character.
3498
3499(char-to-string N)Fstring-to-char
3500Convert arg STRING to a character, the first character of that string.
3501
3502(string-to-char STR)Fpoint
3503Return value of point, as an integer.
3504Beginning of buffer is position (point-min)
3505
3506(point)Fpoint-marker
3507Return value of point, as a marker object.
3508
3509(point-marker)Fgoto-char
3510Set point to POSITION, a number or marker.
3511Beginning of buffer is position (point-min), end is (point-max).
3512
3513(goto-char N)Fregion-beginning
3514Return position of beginning of region, as an integer.
3515
3516(region-beginning)Fregion-end
3517Return position of end of region, as an integer.
3518
3519(region-end)Fmark
3520Return this buffer's mark value as integer, or nil if no mark.
3521If you are using this in an editing command, you are most likely making
3522a mistake; see the documentation of `set-mark'.
3523
3524(mark)Fmark-marker
3525Return this buffer's mark, as a marker object.
3526Watch out!  Moving this marker changes the mark position.
3527If you set the marker not to point anywhere, the buffer will have no mark.
3528
3529(mark-marker)Fset-mark
3530Set this buffer's mark to POS.  Don't use this function!
3531That is to say, don't use this function unless you want
3532the user to see that the mark has moved, and you want the previous
3533mark position to be lost.
3534
3535Normally, when a new mark is set, the old one should go on the stack.
3536This is why most applications should use push-mark, not set-mark.
3537
3538Novice programmers often try to use the mark for the wrong purposes.
3539The mark saves a location for the user's convenience.
3540Most editing commands should not alter the mark.
3541To remember a location for internal use in the Lisp program,
3542store it in a Lisp variable.  Example:
3543
3544   (let ((beg (point))) (forward-line 1) (delete-region beg (point))).
3545
3546(set-mark POS)Fsave-excursion
3547Save point, mark, and current buffer; execute BODY; restore those things.
3548Executes BODY just like `progn'.
3549The values of point, mark and the current buffer are restored
3550even in case of abnormal exit (throw or error).
3551The state of activation of the mark is also restored.Fbuffer-size
3552Return the number of characters in the current buffer.
3553
3554(buffer-size)Fpoint-min
3555Return the minimum permissible value of point in the current buffer.
3556This is 1, unless narrowing (a buffer restriction) is in effect.
3557
3558(point-min)Fpoint-min-marker
3559Return a marker to the minimum permissible value of point in this buffer.
3560This is the beginning, unless narrowing (a buffer restriction) is in effect.
3561
3562(point-min-marker)Fpoint-max
3563Return the maximum permissible value of point in the current buffer.
3564This is (1+ (buffer-size)), unless narrowing (a buffer restriction)
3565is in effect, in which case it is less.
3566
3567(point-max)Fpoint-max-marker
3568Return a marker to the maximum permissible value of point in this buffer.
3569This is (1+ (buffer-size)), unless narrowing (a buffer restriction)
3570is in effect, in which case it is less.
3571
3572(point-max-marker)Ffollowing-char
3573Return the character following point, as a number.
3574At the end of the buffer or accessible region, return 0.
3575
3576(following-char)Fpreceding-char
3577Return the character preceding point, as a number.
3578At the beginning of the buffer or accessible region, return 0.
3579
3580(preceding-char)Fbobp
3581Return T if point is at the beginning of the buffer.
3582If the buffer is narrowed, this means the beginning of the narrowed part.
3583
3584(bobp)Feobp
3585Return T if point is at the end of the buffer.
3586If the buffer is narrowed, this means the end of the narrowed part.
3587
3588(eobp)Fbolp
3589Return T if point is at the beginning of a line.
3590
3591(bolp)Feolp
3592Return T if point is at the end of a line.
3593`End of a line' includes point being at the end of the buffer.
3594
3595(eolp)Fchar-after
3596Return character in current buffer at position POS.
3597POS is an integer or a buffer pointer.
3598If POS is out of range, the value is nil.
3599
3600(char-after POS)Fuser-login-name
3601Return the name under which the user logged in, as a string.
3602This is based on the effective uid, not the real uid.
3603Also, if the environment variable LOGNAME or USER is set,
3604that determines the value of this function.
3605
3606(user-login-name)Fuser-real-login-name
3607Return the name of the user's real uid, as a string.
3608This ignores the environment variables LOGNAME and USER, so it differs from
3609`user-login-name' when running under `su'.
3610
3611(user-real-login-name)Fuser-uid
3612Return the effective uid of Emacs, as an integer.
3613
3614(user-uid)Fuser-real-uid
3615Return the real uid of Emacs, as an integer.
3616
3617(user-real-uid)Fuser-full-name
3618Return the full name of the user logged in, as a string.
3619
3620(user-full-name)Fsystem-name
3621Return the name of the machine you are running on, as a string.
3622
3623(system-name)Femacs-pid
3624Return the process ID of Emacs, as an integer.
3625
3626(emacs-pid)Fcurrent-time
3627Return the current time, as the number of seconds since 12:00 AM January 1970.
3628The time is returned as a list of three integers.  The first has the
3629most significant 16 bits of the seconds, while the second has the
3630least significant 16 bits.  The third integer gives the microsecond
3631count.
3632
3633The microsecond count is zero on systems that do not provide
3634resolution finer than a second.
3635
3636(current-time)Fcurrent-time-string
3637Return the current time, as a human-readable string.
3638Programs can use this function to decode a time,
3639since the number of columns in each field is fixed.
3640The format is `Sun Sep 16 01:03:52 1973'.
3641If an argument is given, it specifies a time to format
3642instead of the current time.  The argument should have the form:
3643  (HIGH . LOW)
3644or the form:
3645  (HIGH LOW . IGNORED).
3646Thus, you can use times obtained from `current-time'
3647and from `file-attributes'.
3648
3649(current-time-string &optional SPECIFIED-TIME)Fcurrent-time-zone
3650Return the offset and name for the local time zone.
3651This returns a list of the form (OFFSET NAME).
3652OFFSET is an integer number of seconds ahead of UTC (east of Greenwich).
3653    A negative value means west of Greenwich.
3654NAME is a string giving the name of the time zone.
3655If an argument is given, it specifies when the time zone offset is determined
3656instead of using the current time.  The argument should have the form:
3657  (HIGH . LOW)
3658or the form:
3659  (HIGH LOW . IGNORED).
3660Thus, you can use times obtained from `current-time'
3661and from `file-attributes'.
3662
3663Some operating systems cannot provide all this information to Emacs;
3664in this case, `current-time-zone' returns a list containing nil for
3665the data it can't find.
3666
3667(current-time-zone &optional SPECIFIED-TIME)Finsert
3668Insert the arguments, either strings or characters, at point.
3669Point moves forward so that it ends up after the inserted text.
3670Any other markers at the point of insertion remain before the text.Finsert-and-inherit
3671Insert the arguments at point, inheriting properties from adjoining text.
3672Point moves forward so that it ends up after the inserted text.
3673Any other markers at the point of insertion remain before the text.Finsert-before-markers
3674Insert strings or characters at point, relocating markers after the text.
3675Point moves forward so that it ends up after the inserted text.
3676Any other markers at the point of insertion also end up after the text.Finsert-before-markers-and-inherit
3677Insert text at point, relocating markers and inheriting properties.
3678Point moves forward so that it ends up after the inserted text.
3679Any other markers at the point of insertion also end up after the text.Finsert-char
3680Insert COUNT (second arg) copies of CHAR (first arg).
3681Point and all markers are affected as in the function `insert'.
3682Both arguments are required.
3683
3684(insert-char CHR COUNT)Fbuffer-substring
3685Return the contents of part of the current buffer as a string.
3686The two arguments START and END are character positions;
3687they can be in either order.
3688
3689(buffer-substring B E)Fbuffer-string
3690Return the contents of the current buffer as a string.
3691
3692(buffer-string)Finsert-buffer-substring
3693Insert before point a substring of the contents of buffer BUFFER.
3694BUFFER may be a buffer or a buffer name.
3695Arguments START and END are character numbers specifying the substring.
3696They default to the beginning and the end of BUFFER.
3697
3698(insert-buffer-substring BUF &optional B E)Fcompare-buffer-substrings
3699Compare two substrings of two buffers; return result as number.
3700the value is -N if first string is less after N-1 chars,
3701+N if first string is greater after N-1 chars, or 0 if strings match.
3702Each substring is represented as three arguments: BUFFER, START and END.
3703That makes six args in all, three for each substring.
3704
3705The value of `case-fold-search' in the current buffer
3706determines whether case is significant or ignored.
3707
3708(compare-buffer-substrings BUFFER1 START1 END1 BUFFER2 START2 END2)Fsubst-char-in-region
3709From START to END, replace FROMCHAR with TOCHAR each time it occurs.
3710If optional arg NOUNDO is non-nil, don't record this change for undo
3711and don't mark the buffer as really changed.
3712
3713(subst-char-in-region START END FROMCHAR TOCHAR &optional NOUNDO)Ftranslate-region
3714From START to END, translate characters according to TABLE.
3715TABLE is a string; the Nth character in it is the mapping
3716for the character with code N.  Returns the number of characters changed.
3717
3718(translate-region START END TABLE)Fdelete-region
3719Delete the text between point and mark.
3720When called from a program, expects two arguments,
3721positions (integers or markers) specifying the stretch to be deleted.
3722
3723(delete-region B E)Fwiden
3724Remove restrictions (narrowing) from current buffer.
3725This allows the buffer's full text to be seen and edited.
3726
3727(widen)Fnarrow-to-region
3728Restrict editing in this buffer to the current region.
3729The rest of the text becomes temporarily invisible and untouchable
3730but is not deleted; if you save the buffer in a file, the invisible
3731text is included in the file.  \[widen] makes all visible again.
3732See also `save-restriction'.
3733
3734When calling from a program, pass two arguments; positions (integers
3735or markers) bounding the text that should remain visible.
3736
3737(narrow-to-region B E)Fsave-restriction
3738Execute BODY, saving and restoring current buffer's restrictions.
3739The buffer's restrictions make parts of the beginning and end invisible.
3740(They are set up with `narrow-to-region' and eliminated with `widen'.)
3741This special form, `save-restriction', saves the current buffer's restrictions
3742when it is entered, and restores them when it is exited.
3743So any `narrow-to-region' within BODY lasts only until the end of the form.
3744The old restrictions settings are restored
3745even in case of abnormal exit (throw or error).
3746
3747The value returned is the value of the last form in BODY.
3748
3749`save-restriction' can get confused if, within the BODY, you widen
3750and then make changes outside the area within the saved restrictions.
3751
3752Note: if you are using both `save-excursion' and `save-restriction',
3753use `save-excursion' outermost:
3754    (save-excursion (save-restriction ...))Fmessage
3755Print a one-line message at the bottom of the screen.
3756The first argument is a control string.
3757It may contain %s or %d or %c to print successive following arguments.
3758%s means print an argument as a string, %d means print as number in decimal,
3759%c means print a number as a single character.
3760The argument used by %s must be a string or a symbol;
3761the argument used by %d or %c must be a number.
3762If the first argument is nil, clear any existing message; let the
3763minibuffer contents show.Fformat
3764Format a string out of a control-string and arguments.
3765The first argument is a control string.
3766The other arguments are substituted into it to make the result, a string.
3767It may contain %-sequences meaning to substitute the next argument.
3768%s means print a string argument.  Actually, prints any object, with `princ'.
3769%d means print as number in decimal (%o octal, %x hex).
3770%c means print a number as a single character.
3771%S means print any object as an s-expression (using prin1).
3772  The argument used for %d, %o, %x or %c must be a number.
3773Use %% to put a single % into the output.Fchar-equal
3774Return t if two characters match, optionally ignoring case.
3775Both arguments must be characters (i.e. integers).
3776Case is ignored if `case-fold-search' is non-nil in the current buffer.
3777
3778(char-equal C1 C2)Ftranspose-regions
3779Transpose region START1 to END1 with START2 to END2.
3780The regions may not be overlapping, because the size of the buffer is
3781never changed in a transposition.
3782
3783Optional fifth arg LEAVE_MARKERS, if non-nil, means don't transpose
3784any markers that happen to be located in the regions.
3785
3786Transposing beyond buffer boundaries is an error.
3787
3788(transpose-regions STARTR1 ENDR1 STARTR2 ENDR2 &optional LEAVE-MARKERS)Finteractive
3789Specify a way of parsing arguments for interactive use of a function.
3790For example, write
3791  (defun foo (arg) "Doc string" (interactive "p") ...use arg...)
3792to make ARG be the prefix argument when `foo' is called as a command.
3793The "call" to `interactive' is actually a declaration rather than a function;
3794 it tells `call-interactively' how to read arguments
3795 to pass to the function.
3796When actually called, `interactive' just returns nil.
3797
3798The argument of `interactive' is usually a string containing a code letter
3799 followed by a prompt.  (Some code letters do not use I/O to get
3800 the argument and do not need prompts.)  To prompt for multiple arguments,
3801 give a code letter, its prompt, a newline, and another code letter, etc.
3802 Prompts are passed to format, and may use % escapes to print the
3803 arguments that have already been read.
3804If the argument is not a string, it is evaluated to get a list of
3805 arguments to pass to the function.
3806Just `(interactive)' means pass no args when calling interactively.
3807
3808Code letters available are:
3809a -- Function name: symbol with a function definition.
3810b -- Name of existing buffer.
3811B -- Name of buffer, possibly nonexistent.
3812c -- Character.
3813C -- Command name: symbol with interactive function definition.
3814d -- Value of point as number.  Does not do I/O.
3815D -- Directory name.
3816e -- Parametrized event (i.e., one that's a list) that invoked this command.
3817     If used more than once, the Nth `e' returns the Nth parameterized event.
3818     This skips events that are integers or symbols.
3819f -- Existing file name.
3820F -- Possibly nonexistent file name.
3821k -- Key sequence (string).
3822m -- Value of mark as number.  Does not do I/O.
3823n -- Number read using minibuffer.
3824N -- Prefix arg converted to number, or if none, do like code `n'.
3825p -- Prefix arg converted to number.  Does not do I/O.
3826P -- Prefix arg in raw form.  Does not do I/O.
3827r -- Region: point and mark as 2 numeric args, smallest first.  Does no I/O.
3828s -- Any string.
3829S -- Any symbol.
3830v -- Variable name: symbol that is user-variable-p.
3831x -- Lisp expression read but not evaluated.
3832X -- Lisp expression read and evaluated.
3833In addition, if the string begins with `*'
3834 then an error is signaled if the buffer is read-only.
3835 This happens before reading any arguments.
3836If the string begins with `@', then Emacs searches the key sequence
3837 which invoked the command for its first mouse click (or any other
3838 event which specifies a window), and selects that window before
3839 reading any arguments.  You may use both `@' and `*'; they are
3840 processed in the order that they appear.
3841
3842(interactive ARGS)Fcall-interactively
3843Call FUNCTION, reading args according to its interactive calling specs.
3844The function contains a specification of how to do the argument reading.
3845In the case of user-defined functions, this is specified by placing a call
3846to the function `interactive' at the top level of the function body.
3847See `interactive'.
3848
3849Optional second arg RECORD-FLAG non-nil
3850means unconditionally put this command in the command-history.
3851Otherwise, this is done only if an arg is read using the minibuffer.
3852
3853(call-interactively FUNCTION &optional RECORD)Fprefix-numeric-value
3854Return numeric meaning of raw prefix argument ARG.
3855A raw prefix argument is what you get from `(interactive "P")'.
3856Its numeric meaning is what you would get from `(interactive "p")'.
3857
3858(prefix-numeric-value RAW)Vprefix-arg
3859The value of the prefix argument for the next editing command.
3860It may be a number, or the symbol `-' for just a minus sign as arg,
3861or a list whose car is a number for just one or more C-U's
3862or nil if no argument has been specified.
3863
3864You cannot examine this variable to find the argument for this command
3865since it has been set to nil by the time you can look.
3866Instead, you should use the variable `current-prefix-arg', although
3867normally commands can get this prefix argument with (interactive "P").Vcurrent-prefix-arg
3868The value of the prefix argument for this editing command.
3869It may be a number, or the symbol `-' for just a minus sign as arg,
3870or a list whose car is a number for just one or more C-U's
3871or nil if no argument has been specified.
3872This is what `(interactive "P")' returns.Vcommand-history
3873List of recent commands that read arguments from terminal.
3874Each command is represented as a form to evaluate.Vcommand-debug-status
3875Debugging status of current interactive command.
3876Bound each time `call-interactively' is called;
3877may be set by the debugger as a reminder for itself.Vmark-even-if-inactive
3878*Non-nil means you can use the mark even when inactive.
3879This option makes a difference in Transient Mark mode.
3880When the option is non-nil, deactivation of the mark
3881turns off region highlighting, but commands that use the mark
3882behave as if the mark were still active.For
3883Eval args until one of them yields non-nil, then return that value.
3884The remaining args are not evalled at all.
3885If all args return nil, return nil.Fand
3886Eval args until one of them yields nil, then return nil.
3887The remaining args are not evalled at all.
3888If no arg yields nil, return the last arg's value.Fif
3889(if COND THEN ELSE...): if COND yields non-nil, do THEN, else do ELSE...
3890Returns the value of THEN or the value of the last of the ELSE's.
3891THEN must be one expression, but ELSE... can be zero or more expressions.
3892If COND yields nil, and there are no ELSE's, the value is nil.Fcond
3893(cond CLAUSES...): try each clause until one succeeds.
3894Each clause looks like (CONDITION BODY...).  CONDITION is evaluated
3895and, if the value is non-nil, this clause succeeds:
3896then the expressions in BODY are evaluated and the last one's
3897value is the value of the cond-form.
3898If no clause succeeds, cond returns nil.
3899If a clause has one element, as in (CONDITION),
3900CONDITION's value if non-nil is returned from the cond-form.Fprogn
3901(progn BODY...): eval BODY forms sequentially and return value of last one.Fprog1
3902(prog1 FIRST BODY...): eval FIRST and BODY sequentially; value from FIRST.
3903The value of FIRST is saved during the evaluation of the remaining args,
3904whose values are discarded.Fprog2
3905(prog1 X Y BODY...): eval X, Y and BODY sequentially; value from Y.
3906The value of Y is saved during the evaluation of the remaining args,
3907whose values are discarded.Fsetq
3908(setq SYM VAL SYM VAL ...): set each SYM to the value of its VAL.
3909The symbols SYM are variables; they are literal (not evaluated).
3910The values VAL are expressions; they are evaluated.
3911Thus, (setq x (1+ y)) sets `x' to the value of `(1+ y)'.
3912The second VAL is not computed until after the first SYM is set, and so on;
3913each VAL can use the new value of variables set earlier in the `setq'.
3914The return value of the `setq' form is the value of the last VAL.Fquote
3915Return the argument, without evaluating it.  `(quote x)' yields `x'.Ffunction
3916Like `quote', but preferred for objects which are functions.
3917In byte compilation, `function' causes its argument to be compiled.
3918`quote' cannot do that.Finteractive-p
3919Return t if function in which this appears was called interactively.
3920This means that the function was called with call-interactively (which
3921includes being called as the binding of a key)
3922and input is currently coming from the keyboard (not in keyboard macro).
3923
3924(interactive-p)Fdefun
3925(defun NAME ARGLIST [DOCSTRING] BODY...): define NAME as a function.
3926The definition is (lambda ARGLIST [DOCSTRING] BODY...).
3927See also the function `interactive'.Fdefmacro
3928(defmacro NAME ARGLIST [DOCSTRING] BODY...): define NAME as a macro.
3929The definition is (macro lambda ARGLIST [DOCSTRING] BODY...).
3930When the macro is called, as in (NAME ARGS...),
3931the function (lambda ARGLIST BODY...) is applied to
3932the list ARGS... as it appears in the expression,
3933and the result should be a form to be evaluated instead of the original.Fdefvar
3934(defvar SYMBOL INITVALUE DOCSTRING): define SYMBOL as a variable.
3935You are not required to define a variable in order to use it,
3936but the definition can supply documentation and an initial value
3937in a way that tags can recognize.
3938
3939INITVALUE is evaluated, and used to set SYMBOL, only if SYMBOL's value is void.
3940If SYMBOL is buffer-local, its default value is what is set;
3941 buffer-local values are not affected.
3942INITVALUE and DOCSTRING are optional.
3943If DOCSTRING starts with *, this variable is identified as a user option.
3944 This means that M-x set-variable and M-x edit-options recognize it.
3945If INITVALUE is missing, SYMBOL's value is not set.Fdefconst
3946(defconst SYMBOL INITVALUE DOCSTRING): define SYMBOL as a constant variable.
3947The intent is that programs do not change this value, but users may.
3948Always sets the value of SYMBOL to the result of evalling INITVALUE.
3949If SYMBOL is buffer-local, its default value is what is set;
3950 buffer-local values are not affected.
3951DOCSTRING is optional.
3952If DOCSTRING starts with *, this variable is identified as a user option.
3953 This means that M-x set-variable and M-x edit-options recognize it.
3954
3955Note: do not use `defconst' for user options in libraries that are not
3956normally loaded, since it is useful for users to be able to specify
3957their own values for such variables before loading the library.
3958Since `defconst' unconditionally assigns the variable,
3959it would override the user's choice.Fuser-variable-p
3960Returns t if VARIABLE is intended to be set and modified by users.
3961(The alternative is a variable used internally in a Lisp program.)
3962Determined by whether the first character of the documentation
3963for the variable is "*"
3964
3965(user-variable-p VARIABLE)Flet*
3966(let* VARLIST BODY...): bind variables according to VARLIST then eval BODY.
3967The value of the last form in BODY is returned.
3968Each element of VARLIST is a symbol (which is bound to nil)
3969or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM).
3970Each VALUEFORM can refer to the symbols already bound by this VARLIST.Flet
3971(let VARLIST BODY...): bind variables according to VARLIST then eval BODY.
3972The value of the last form in BODY is returned.
3973Each element of VARLIST is a symbol (which is bound to nil)
3974or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM).
3975All the VALUEFORMs are evalled before any symbols are bound.Fwhile
3976(while TEST BODY...): if TEST yields non-nil, eval BODY... and repeat.
3977The order of execution is thus TEST, BODY, TEST, BODY and so on
3978until TEST returns nil.Fmacroexpand
3979Return result of expanding macros at top level of FORM.
3980If FORM is not a macro call, it is returned unchanged.
3981Otherwise, the macro is expanded and the expansion is considered
3982in place of FORM.  When a non-macro-call results, it is returned.
3983
3984The second optional arg ENVIRONMENT species an environment of macro
3985definitions to shadow the loaded ones for use in file byte-compilation.
3986
3987(macroexpand FORM &optional ENV)Fcatch
3988(catch TAG BODY...): eval BODY allowing nonlocal exits using `throw'.
3989TAG is evalled to get the tag to use.  Then the BODY is executed.
3990Within BODY, (throw TAG) with same tag exits BODY and exits this `catch'.
3991If no throw happens, `catch' returns the value of the last BODY form.
3992If a throw happens, it specifies the value to return from `catch'.Fthrow
3993(throw TAG VALUE): throw to the catch for TAG and return VALUE from it.
3994Both TAG and VALUE are evalled.
3995
3996(throw TAG VAL)Funwind-protect
3997Do BODYFORM, protecting with UNWINDFORMS.
3998Usage looks like (unwind-protect BODYFORM UNWINDFORMS...).
3999If BODYFORM completes normally, its value is returned
4000after executing the UNWINDFORMS.
4001If BODYFORM exits nonlocally, the UNWINDFORMS are executed anyway.Fcondition-case
4002Regain control when an error is signaled.
4003Usage looks like (condition-case VAR BODYFORM HANDLERS...).
4004executes BODYFORM and returns its value if no error happens.
4005Each element of HANDLERS looks like (CONDITION-NAME BODY...)
4006where the BODY is made of Lisp expressions.
4007
4008A handler is applicable to an error
4009if CONDITION-NAME is one of the error's condition names.
4010If an error happens, the first applicable handler is run.
4011
4012The car of a handler may be a list of condition names
4013instead of a single condition name.
4014
4015When a handler handles an error,
4016control returns to the condition-case and the handler BODY... is executed
4017with VAR bound to (SIGNALED-CONDITIONS . SIGNAL-DATA).
4018VAR may be nil; then you do not get access to the signal information.
4019
4020The value of the last BODY form is returned from the condition-case.
4021See also the function `signal' for more info.Fsignal
4022Signal an error.  Args are ERROR-SYMBOL and associated DATA.
4023This function does not return.
4024
4025An error symbol is a symbol with an `error-conditions' property
4026that is a list of condition names.
4027A handler for any of those names will get to handle this signal.
4028The symbol `error' should normally be one of them.
4029
4030DATA should be a list.  Its elements are printed as part of the error message.
4031If the signal is handled, DATA is made available to the handler.
4032See also the function `condition-case'.
4033
4034(signal ERROR-SYMBOL DATA)Fcommandp
4035T if FUNCTION makes provisions for interactive calling.
4036This means it contains a description for how to read arguments to give it.
4037The value is nil for an invalid function or a symbol with no function
4038definition.
4039
4040Interactively callable functions include strings and vectors (treated
4041as keyboard macros), lambda-expressions that contain a top-level call
4042to `interactive', autoload definitions made by `autoload' with non-nil
4043fourth argument, and some of the built-in functions of Lisp.
4044
4045Also, a symbol satisfies `commandp' if its function definition does so.
4046
4047(commandp FUNCTION)Fautoload
4048Define FUNCTION to autoload from FILE.
4049FUNCTION is a symbol; FILE is a file name string to pass to `load'.
4050Third arg DOCSTRING is documentation for the function.
4051Fourth arg INTERACTIVE if non-nil says function can be called interactively.
4052Fifth arg TYPE indicates the type of the object:
4053   nil or omitted says FUNCTION is a function,
4054   `keymap' says FUNCTION is really a keymap, and
4055   `macro' or t says FUNCTION is really a macro.
4056Third through fifth args give info about the real definition.
4057They default to nil.
4058If FUNCTION is already defined other than as an autoload,
4059this does nothing and returns nil.
4060
4061(autoload FUNCTION FILE &optional DOCSTRING INTERACTIVE TYPE)Feval
4062Evaluate FORM and return its value.
4063
4064(eval FORM)Fapply
4065Call FUNCTION with our remaining args, using our last arg as list of args.
4066Thus, (apply '+ 1 2 '(3 4)) returns 10.Ffuncall
4067Call first argument as a function, passing remaining arguments to it.
4068Thus, (funcall 'cons 'x 'y) returns (x . y).Fbacktrace-debug
4069Set the debug-on-exit flag of eval frame LEVEL levels down to FLAG.
4070The debugger is entered when that frame exits, if the flag is non-nil.
4071
4072(backtrace-debug LEVEL FLAG)Fbacktrace
4073Print a trace of Lisp function calls currently active.
4074Output stream used is value of `standard-output'.
4075
4076(backtrace)Fbacktrace-frame
4077Return the function and arguments N frames up from current execution point.
4078If that frame has not evaluated the arguments yet (or is a special form),
4079the value is (nil FUNCTION ARG-FORMS...).
4080If that frame has evaluated its arguments and called its function already,
4081the value is (t FUNCTION ARG-VALUES...).
4082A &rest arg is represented as the tail of the list ARG-VALUES.
4083FUNCTION is whatever was supplied as car of evaluated list,
4084or a lambda expression for macro calls.
4085If N is more than the number of frames, the value is nil.
4086
4087(backtrace-frame NFRAMES)Vmax-specpdl-size
4088Limit on number of Lisp variable bindings & unwind-protects before error.Vmax-lisp-eval-depth
4089Limit on depth in `eval', `apply' and `funcall' before error.
4090This limit is to catch infinite recursions for you before they cause
4091actual stack overflow in C, which would be fatal for Emacs.
4092You can safely make it considerably larger than its default value,
4093if that proves inconveniently small.Vquit-flag
4094Non-nil causes `eval' to abort, unless `inhibit-quit' is non-nil.
4095Typing C-g sets `quit-flag' non-nil, regardless of `inhibit-quit'.Vinhibit-quit
4096Non-nil inhibits C-g quitting from happening immediately.
4097Note that `quit-flag' will still be set by typing C-g,
4098so a quit will be signalled as soon as `inhibit-quit' is nil.
4099To prevent this happening, set `quit-flag' to nil
4100before making `inhibit-quit' nil.Vstack-trace-on-error
4101*Non-nil means automatically display a backtrace buffer
4102after any error that is handled by the editor command loop.
4103If the value is a list, an error only means to display a backtrace
4104if one of its condition symbols appears in the list.Vdebug-on-error
4105*Non-nil means enter debugger if an error is signaled.
4106Does not apply to errors handled by `condition-case'.
4107If the value is a list, an error only means to enter the debugger
4108if one of its condition symbols appears in the list.
4109See also variable `debug-on-quit'.Vdebug-on-quit
4110*Non-nil means enter debugger if quit is signaled (C-g, for example).
4111Does not apply if quit is handled by a `condition-case'.Vdebug-on-next-call
4112Non-nil means enter debugger before next `eval', `apply' or `funcall'.Vdebugger
4113Function to call to invoke debugger.
4114If due to frame exit, args are `exit' and the value being returned;
4115 this function's value will be returned instead of that.
4116If due to error, args are `error' and a list of the args to `signal'.
4117If due to `apply' or `funcall' entry, one arg, `lambda'.
4118If due to `eval' entry, one arg, t.Vmocklisp-arguments
4119While in a mocklisp function, the list of its unevaluated args.Vrun-hooks
4120Set to the function `run-hooks', if that function has been defined.
4121Otherwise, nil (in a bare Emacs without preloaded Lisp code).Facos
4122Return the inverse cosine of ARG.
4123
4124(acos ARG)Fasin
4125Return the inverse sine of ARG.
4126
4127(asin ARG)Fatan
4128Return the inverse tangent of ARG.
4129
4130(atan ARG)Fcos
4131Return the cosine of ARG.
4132
4133(cos ARG)Fsin
4134Return the sine of ARG.
4135
4136(sin ARG)Ftan
4137Return the tangent of ARG.
4138
4139(tan ARG)Fbessel-j0
4140Return the bessel function j0 of ARG.
4141
4142(bessel-j0 ARG)Fbessel-j1
4143Return the bessel function j1 of ARG.
4144
4145(bessel-j1 ARG)Fbessel-jn
4146Return the order N bessel function output jn of ARG.
4147The first arg (the order) is truncated to an integer.
4148
4149(bessel-jn ARG1 ARG2)Fbessel-y0
4150Return the bessel function y0 of ARG.
4151
4152(bessel-y0 ARG)Fbessel-y1
4153Return the bessel function y1 of ARG.
4154
4155(bessel-y1 ARG)Fbessel-yn
4156Return the order N bessel function output yn of ARG.
4157The first arg (the order) is truncated to an integer.
4158
4159(bessel-yn ARG1 ARG2)Ferf
4160Return the mathematical error function of ARG.
4161
4162(erf ARG)Ferfc
4163Return the complementary error function of ARG.
4164
4165(erfc ARG)Flog-gamma
4166Return the log gamma of ARG.
4167
4168(log-gamma ARG)Fcube-root
4169Return the cube root of ARG.
4170
4171(cube-root ARG)Fexp
4172Return the exponential base e of ARG.
4173
4174(exp ARG)Fexpt
4175Return the exponential X ** Y.
4176
4177(expt ARG1 ARG2)Flog
4178Return the natural logarithm of ARG.
4179If second optional argument BASE is given, return log ARG using that base.
4180
4181(log ARG &optional BASE)Flog10
4182Return the logarithm base 10 of ARG.
4183
4184(log10 ARG)Fsqrt
4185Return the square root of ARG.
4186
4187(sqrt ARG)Facosh
4188Return the inverse hyperbolic cosine of ARG.
4189
4190(acosh ARG)Fasinh
4191Return the inverse hyperbolic sine of ARG.
4192
4193(asinh ARG)Fatanh
4194Return the inverse hyperbolic tangent of ARG.
4195
4196(atanh ARG)Fcosh
4197Return the hyperbolic cosine of ARG.
4198
4199(cosh ARG)Fsinh
4200Return the hyperbolic sine of ARG.
4201
4202(sinh ARG)Ftanh
4203Return the hyperbolic tangent of ARG.
4204
4205(tanh ARG)Fabs
4206Return the absolute value of ARG.
4207
4208(abs ARG)Ffloat
4209Return the floating point number equal to ARG.
4210
4211(float ARG)Flogb
4212Returns largest integer <= the base 2 log of the magnitude of ARG.
4213This is the same as the exponent of a float.
4214
4215(logb ARG)Fceiling
4216Return the smallest integer no less than ARG.  (Round toward +inf.)
4217
4218(ceiling ARG)Ffloor
4219Return the largest integer no greater than ARG.  (Round towards -inf.)
4220With optional DIVISOR, return the largest integer no greater than ARG/DIVISOR.
4221
4222(floor ARG &optional DIVISOR)Fround
4223Return the nearest integer to ARG.
4224
4225(round ARG)Ftruncate
4226Truncate a floating point number to an int.
4227Rounds the value toward zero.
4228
4229(truncate ARG)Ffceiling
4230Return the smallest integer no less than ARG, as a float.
4231(Round toward +inf.)
4232
4233(fceiling ARG)Fffloor
4234Return the largest integer no greater than ARG, as a float.
4235(Round towards -inf.)
4236
4237(ffloor ARG)Ffround
4238Return the nearest integer to ARG, as a float.
4239
4240(fround ARG)Fftruncate
4241Truncate a floating point number to an integral float value.
4242Rounds the value toward zero.
4243
4244(ftruncate ARG)Fidentity
4245Return the argument unchanged.
4246
4247(identity ARG)Frandom
4248Return a pseudo-random number.
4249On most systems all integers representable in Lisp are equally likely.
4250  This is 24 bits' worth.
4251With argument N, return random number in interval [0,N).
4252With argument t, set the random number seed from the current time and pid.
4253
4254(random &optional LIMIT)Flength
4255Return the length of vector, list or string SEQUENCE.
4256A byte-code function object is also allowed.
4257
4258(length OBJ)Fstring-equal
4259T if two strings have identical contents.
4260Case is significant.
4261Symbols are also allowed; their print names are used instead.
4262
4263(string-equal S1 S2)Fstring-lessp
4264T if first arg string is less than second in lexicographic order.
4265Case is significant.
4266Symbols are also allowed; their print names are used instead.
4267
4268(string-lessp S1 S2)Fappend
4269Concatenate all the arguments and make the result a list.
4270The result is a list whose elements are the elements of all the arguments.
4271Each argument may be a list, vector or string.
4272The last argument is not copied, just used as the tail of the new list.Fconcat
4273Concatenate all the arguments and make the result a string.
4274The result is a string whose elements are the elements of all the arguments.
4275Each argument may be a string, a list of characters (integers),
4276or a vector of characters (integers).Fvconcat
4277Concatenate all the arguments and make the result a vector.
4278The result is a vector whose elements are the elements of all the arguments.
4279Each argument may be a list, vector or string.Fcopy-sequence
4280Return a copy of a list, vector or string.
4281The elements of a list or vector are not copied; they are shared
4282with the original.
4283
4284(copy-sequence ARG)Fcopy-alist
4285Return a copy of ALIST.
4286This is an alist which represents the same mapping from objects to objects,
4287but does not share the alist structure with ALIST.
4288The objects mapped (cars and cdrs of elements of the alist)
4289are shared, however.
4290Elements of ALIST that are not conses are also shared.
4291
4292(copy-alist ALIST)Fsubstring
4293Return a substring of STRING, starting at index FROM and ending before TO.
4294TO may be nil or omitted; then the substring runs to the end of STRING.
4295If FROM or TO is negative, it counts from the end.
4296
4297(substring STRING FROM &optional TO)Fnthcdr
4298Take cdr N times on LIST, returns the result.
4299
4300(nthcdr N LIST)Fnth
4301Return the Nth element of LIST.
4302N counts from zero.  If LIST is not that long, nil is returned.
4303
4304(nth N LIST)Felt
4305Return element of SEQUENCE at index N.
4306
4307(elt SEQ N)Fmember
4308Return non-nil if ELT is an element of LIST.  Comparison done with `equal'.
4309The value is actually the tail of LIST whose car is ELT.
4310
4311(member ELT LIST)Fmemq
4312Return non-nil if ELT is an element of LIST.  Comparison done with EQ.
4313The value is actually the tail of LIST whose car is ELT.
4314
4315(memq ELT LIST)Fassq
4316Return non-nil if KEY is `eq' to the car of an element of LIST.
4317The value is actually the element of LIST whose car is KEY.
4318Elements of LIST that are not conses are ignored.
4319
4320(assq KEY LIST)Fassoc
4321Return non-nil if KEY is `equal' to the car of an element of LIST.
4322The value is actually the element of LIST whose car is KEY.
4323
4324(assoc KEY LIST)Frassq
4325Return non-nil if ELT is `eq' to the cdr of an element of LIST.
4326The value is actually the element of LIST whose cdr is ELT.
4327
4328(rassq KEY LIST)Fdelq
4329Delete by side effect any occurrences of ELT as a member of LIST.
4330The modified LIST is returned.  Comparison is done with `eq'.
4331If the first member of LIST is ELT, there is no way to remove it by side effect;
4332therefore, write `(setq foo (delq element foo))'
4333to be sure of changing the value of `foo'.
4334
4335(delq ELT LIST)Fdelete
4336Delete by side effect any occurrences of ELT as a member of LIST.
4337The modified LIST is returned.  Comparison is done with `equal'.
4338If the first member of LIST is ELT, deleting it is not a side effect;
4339it is simply using a different list.
4340Therefore, write `(setq foo (delete element foo))'
4341to be sure of changing the value of `foo'.
4342
4343(delete ELT LIST)Fnreverse
4344Reverse LIST by modifying cdr pointers.
4345Returns the beginning of the reversed list.
4346
4347(nreverse LIST)Freverse
4348Reverse LIST, copying.  Returns the beginning of the reversed list.
4349See also the function `nreverse', which is used more often.
4350
4351(reverse LIST)Fsort
4352Sort LIST, stably, comparing elements using PREDICATE.
4353Returns the sorted list.  LIST is modified by side effects.
4354PREDICATE is called with two elements of LIST, and should return T
4355if the first element is "less" than the second.
4356
4357(sort LIST PRED)Fget
4358Return the value of SYMBOL's PROPNAME property.
4359This is the last VALUE stored with `(put SYMBOL PROPNAME VALUE)'.
4360
4361(get SYM PROP)Fput
4362Store SYMBOL's PROPNAME property with value VALUE.
4363It can be retrieved with `(get SYMBOL PROPNAME)'.
4364
4365(put SYM PROP VAL)Fequal
4366T if two Lisp objects have similar structure and contents.
4367They must have the same data type.
4368Conses are compared by comparing the cars and the cdrs.
4369Vectors and strings are compared element by element.
4370Numbers are compared by value, but integers cannot equal floats.
4371 (Use `=' if you want integers and floats to be able to be equal.)
4372Symbols must match exactly.
4373
4374(equal O1 O2)Ffillarray
4375Store each element of ARRAY with ITEM.  ARRAY is a vector or string.
4376
4377(fillarray ARRAY ITEM)Fnconc
4378Concatenate any number of lists by altering them.
4379Only the last argument is not altered, and need not be a list.Fmapconcat
4380Apply FN to each element of SEQ, and concat the results as strings.
4381In between each pair of results, stick in SEP.
4382Thus, " " as SEP results in spaces between the values returned by FN.
4383
4384(mapconcat FN SEQ SEP)Fmapcar
4385Apply FUNCTION to each element of SEQUENCE, and make a list of the results.
4386The result is a list just as long as SEQUENCE.
4387SEQUENCE may be a list, a vector or a string.
4388
4389(mapcar FN SEQ)Fy-or-n-p
4390Ask user a "y or n" question.  Return t if answer is "y".
4391Takes one argument, which is the string to display to ask the question.
4392It should end in a space; `y-or-n-p' adds `(y or n) ' to it.
4393No confirmation of the answer is requested; a single character is enough.
4394Also accepts Space to mean yes, or Delete to mean no.
4395
4396(y-or-n-p PROMPT)Fyes-or-no-p
4397Ask user a yes-or-no question.  Return t if answer is yes.
4398Takes one argument, which is the string to display to ask the question.
4399It should end in a space; `yes-or-no-p' adds `(yes or no) ' to it.
4400The user must confirm the answer with RET,
4401and can edit it until it as been confirmed.
4402
4403(yes-or-no-p PROMPT)Fload-average
4404Return list of 1 minute, 5 minute and 15 minute load averages.
4405Each of the three load averages is multiplied by 100,
4406then converted to integer.
4407If the 5-minute or 15-minute load averages are not available, return a
4408shortened list, containing only those averages which are available.
4409
4410(load-average)Ffeaturep
4411Returns t if FEATURE is present in this Emacs.
4412Use this to conditionalize execution of lisp code based on the presence or
4413absence of emacs or environment extensions.
4414Use `provide' to declare that a feature is available.
4415This function looks at the value of the variable `features'.
4416
4417(featurep FEATURE)Fprovide
4418Announce that FEATURE is a feature of the current Emacs.
4419
4420(provide FEATURE)Frequire
4421If feature FEATURE is not loaded, load it from FILENAME.
4422If FEATURE is not a member of the list `features', then the feature
4423is not loaded; so load the file FILENAME.
4424If FILENAME is omitted, the printname of FEATURE is used as the file name.
4425
4426(require FEATURE &optional FILE-NAME)Vfeatures
4427A list of symbols which are the features of the executing emacs.
4428Used by `featurep' and `require', and altered by `provide'.Fwrite-char
4429Output character CHAR to stream PRINTCHARFUN.
4430PRINTCHARFUN defaults to the value of `standard-output' (which see).
4431
4432(write-char CH &optional PRINTCHARFUN)Fwith-output-to-temp-buffer
4433Bind `standard-output' to buffer BUFNAME, eval BODY, then show that buffer.
4434The buffer is cleared out initially, and marked as unmodified when done.
4435All output done by BODY is inserted in that buffer by default.
4436The buffer is displayed in another window, but not selected.
4437The value of the last form in BODY is returned.
4438If BODY does not finish normally, the buffer BUFNAME is not displayed.
4439
4440If variable `temp-buffer-show-function' is non-nil, call it at the end
4441to get the buffer displayed.  It gets one argument, the buffer to display.Fterpri
4442Output a newline to stream PRINTCHARFUN.
4443If PRINTCHARFUN is omitted or nil, the value of `standard-output' is used.
4444
4445(terpri &optional PRINTCHARFUN)Fprin1
4446Output the printed representation of OBJECT, any Lisp object.
4447Quoting characters are printed when needed to make output that `read'
4448can handle, whenever this is possible.
4449Output stream is PRINTCHARFUN, or value of `standard-output' (which see).
4450
4451(prin1 OBJ &optional PRINTCHARFUN)Fprin1-to-string
4452Return a string containing the printed representation of OBJECT,
4453any Lisp object.  Quoting characters are used when needed to make output
4454that `read' can handle, whenever this is possible, unless the optional
4455second argument NOESCAPE is non-nil.
4456
4457(prin1-to-string OBJ &optional NOESCAPE)Fprinc
4458Output the printed representation of OBJECT, any Lisp object.
4459No quoting characters are used; no delimiters are printed around
4460the contents of strings.
4461Output stream is PRINTCHARFUN, or value of standard-output (which see).
4462
4463(princ OBJ &optional PRINTCHARFUN)Fprint
4464Output the printed representation of OBJECT, with newlines around it.
4465Quoting characters are printed when needed to make output that `read'
4466can handle, whenever this is possible.
4467Output stream is PRINTCHARFUN, or value of `standard-output' (which see).
4468
4469(print OBJ &optional PRINTCHARFUN)Fexternal-debugging-output
4470Write CHARACTER to stderr.
4471You can call print while debugging emacs, and pass it this function
4472to make it write to the debugging output.
4473
4474
4475(external-debugging-output CHARACTER)Vstandard-output
4476Output stream `print' uses by default for outputting a character.
4477This may be any function of one argument.
4478It may also be a buffer (output is inserted before point)
4479or a marker (output is inserted and the marker is advanced)
4480or the symbol t (output appears in the minibuffer line).Vfloat-output-format
4481The format descriptor string used to print floats.
4482This is a %-spec like those accepted by `printf' in C,
4483but with some restrictions.  It must start with the two characters `%.'.
4484After that comes an integer precision specification,
4485and then a letter which controls the format.
4486The letters allowed are `e', `f' and `g'.
4487Use `e' for exponential notation "DIG.DIGITSeEXPT"
4488Use `f' for decimal point notation "DIGITS.DIGITS".
4489Use `g' to choose the shorter of those two formats for the number at hand.
4490The precision in any of these cases is the number of digits following
4491the decimal point.  With `f', a precision of 0 means to omit the
4492decimal point.  0 is not allowed with `e' or `g'.
4493
4494A value of nil means to use `%.17g'.Vprint-length
4495Maximum length of list to print before abbreviating.
4496A value of nil means no limit.Vprint-level
4497Maximum depth of list nesting to print before abbreviating.
4498A value of nil means no limit.Vprint-escape-newlines
4499Non-nil means print newlines in strings as backslash-n.
4500Also print formfeeds as backslash-f.Fread-char
4501Read a character from the command input (keyboard or macro).
4502It is returned as a number.
4503If the user generates an event which is not a character (i.e. a mouse
4504click or function key event), `read-char' signals an error.  As an
4505exception, switch-frame events are put off until non-ASCII events can
4506be read.
4507If you want to read non-character events, or ignore them, call
4508`read-event' or `read-char-exclusive' instead.
4509
4510(read-char)Fread-event
4511Read an event object from the input stream.
4512
4513(read-event)Fread-char-exclusive
4514Read a character from the command input (keyboard or macro).
4515It is returned as a number.  Non character events are ignored.
4516
4517(read-char-exclusive)Fget-file-char
4518Don't use this yourself.
4519
4520(get-file-char)Fload
4521Execute a file of Lisp code named FILE.
4522First try FILE with `.elc' appended, then try with `.el',
4523 then try FILE unmodified.
4524This function searches the directories in `load-path'.
4525If optional second arg NOERROR is non-nil,
4526 report no error if FILE doesn't exist.
4527Print messages at start and end of loading unless
4528 optional third arg NOMESSAGE is non-nil.
4529If optional fourth arg NOSUFFIX is non-nil, don't try adding
4530 suffixes `.elc' or `.el' to the specified name FILE.
4531Return t if file exists.
4532
4533(load STR &optional NOERROR NOMESSAGE NOSUFFIX)Feval-buffer
4534Execute the current buffer as Lisp code.
4535Programs can pass two arguments, BUFFER and PRINTFLAG.
4536BUFFER is the buffer to evaluate (nil means use current buffer).
4537PRINTFLAG controls printing of output:
4538nil means discard it; anything else is stream for print.
4539
4540If there is no error, point does not move.  If there is an error,
4541point remains at the end of the last character read from the buffer.
4542
4543(eval-buffer &optional BUFNAME PRINTFLAG)Feval-current-buffer
4544Execute the current buffer as Lisp code.
4545Programs can pass argument PRINTFLAG which controls printing of output:
4546nil means discard it; anything else is stream for print.
4547
4548If there is no error, point does not move.  If there is an error,
4549point remains at the end of the last character read from the buffer.
4550
4551(eval-current-buffer &optional PRINTFLAG)Feval-region
4552Execute the region as Lisp code.
4553When called from programs, expects two arguments,
4554giving starting and ending indices in the current buffer
4555of the text to be executed.
4556Programs can pass third argument PRINTFLAG which controls output:
4557nil means discard it; anything else is stream for printing it.
4558
4559If there is no error, point does not move.  If there is an error,
4560point remains at the end of the last character read from the buffer.
4561
4562(eval-region B E &optional PRINTFLAG)Fread
4563Read one Lisp expression as text from STREAM, return as Lisp object.
4564If STREAM is nil, use the value of `standard-input' (which see).
4565STREAM or the value of `standard-input' may be:
4566 a buffer (read from point and advance it)
4567 a marker (read from where it points and advance it)
4568 a function (call it with no arguments for each character,
4569     call it with a char as argument to push a char back)
4570 a string (takes text from string, starting at the beginning)
4571 t (read text line using minibuffer and use it).
4572
4573(read &optional READCHARFUN)Fread-from-string
4574Read one Lisp expression which is represented as text by STRING.
4575Returns a cons: (OBJECT-READ . FINAL-STRING-INDEX).
4576START and END optionally delimit a substring of STRING from which to read;
4577 they default to 0 and (length STRING) respectively.
4578
4579(read-from-string STRING &optional START END)Fintern
4580Return the canonical symbol whose name is STRING.
4581If there is none, one is created by this function and returned.
4582A second optional argument specifies the obarray to use;
4583it defaults to the value of `obarray'.
4584
4585(intern STR &optional OBARRAY)Fintern-soft
4586Return the canonical symbol whose name is STRING, or nil if none exists.
4587A second optional argument specifies the obarray to use;
4588it defaults to the value of `obarray'.
4589
4590(intern-soft STR &optional OBARRAY)Fmapatoms
4591Call FUNCTION on every symbol in OBARRAY.
4592OBARRAY defaults to the value of `obarray'.
4593
4594(mapatoms FUNCTION &optional OBARRAY)Vobarray
4595Symbol table for use by `intern' and `read'.
4596It is a vector whose length ought to be prime for best results.
4597The vector's contents don't make sense if examined from Lisp programs;
4598to find all the symbols in an obarray, use `mapatoms'.Vvalues
4599List of values of all expressions which were read, evaluated and printed.
4600Order is reverse chronological.Vstandard-input
4601Stream for read to get input from.
4602See documentation of `read' for possible values.Vload-path
4603*List of directories to search for files to load.
4604Each element is a string (directory name) or nil (try default directory).
4605Initialized based on EMACSLOADPATH environment variable, if any,
4606otherwise to default specified by file `paths.h' when Emacs was built.Vload-in-progress
4607Non-nil iff inside of `load'.Vafter-load-alist
4608An alist of expressions to be evalled when particular files are loaded.
4609Each element looks like (FILENAME FORMS...).
4610When `load' is run and the file-name argument is FILENAME,
4611the FORMS in the corresponding element are executed at the end of loading.
4612
4613FILENAME must match exactly!  Normally FILENAME is the name of a library,
4614with no directory specified, since that is how `load' is normally called.
4615An error in FORMS does not undo the load,
4616but does prevent execution of the rest of the FORMS.Vload-history
4617Alist mapping source file names to symbols and features.
4618Each alist element is a list that starts with a file name,
4619except for one element (optional) that starts with nil and describes
4620definitions evaluated from buffers not visiting files.
4621The remaining elements of each list are symbols defined as functions
4622or variables, and cons cells `(provide . FEATURE)' and `(require . FEATURE)'.Vcurrent-load-list
4623Used for internal purposes by `load'.Fmake-abbrev-table
4624Create a new, empty abbrev table object.
4625
4626(make-abbrev-table)Fclear-abbrev-table
4627Undefine all abbrevs in abbrev table TABLE, leaving it empty.
4628
4629(clear-abbrev-table TABLE)Fdefine-abbrev
4630Define an abbrev in TABLE named NAME, to expand to EXPANSION and call HOOK.
4631NAME and EXPANSION are strings.
4632To undefine an abbrev, define it with EXPANSION = nil.
4633If HOOK is non-nil, it should be a function of no arguments;
4634it is called after EXPANSION is inserted.
4635
4636(define-abbrev TABLE NAME EXPANSION &optional HOOK COUNT)Fdefine-global-abbrev
4637Define ABBREV as a global abbreviation for EXPANSION.
4638
4639(define-global-abbrev NAME EXPANSION)Fdefine-mode-abbrev
4640Define ABBREV as a mode-specific abbreviation for EXPANSION.
4641
4642(define-mode-abbrev NAME EXPANSION)Fabbrev-symbol
4643Return the symbol representing abbrev named ABBREV.
4644This symbol's name is ABBREV, but it is not the canonical symbol of that name;
4645it is interned in an abbrev-table rather than the normal obarray.
4646The value is nil if that abbrev is not defined.
4647Optional second arg TABLE is abbrev table to look it up in.
4648The default is to try buffer's mode-specific abbrev table, then global table.
4649
4650(abbrev-symbol ABBREV &optional TABLE)Fabbrev-expansion
4651Return the string that ABBREV expands into in the current buffer.
4652Optionally specify an abbrev table as second arg;
4653then ABBREV is looked up in that table only.
4654
4655(abbrev-expansion ABBREV &optional TABLE)Fexpand-abbrev
4656Expand the abbrev before point, if there is an abbrev there.
4657Effective when explicitly called even when `abbrev-mode' is nil.
4658Returns t if expansion took place.
4659
4660(expand-abbrev)Funexpand-abbrev
4661Undo the expansion of the last abbrev that expanded.
4662This differs from ordinary undo in that other editing done since then
4663is not undone.
4664
4665(unexpand-abbrev)Finsert-abbrev-table-description
4666Insert before point a full description of abbrev table named NAME.
4667NAME is a symbol whose value is an abbrev table.
4668If optional 2nd arg HUMAN is non-nil, a human-readable description is inserted.
4669Otherwise the description is an expression,
4670a call to `define-abbrev-table', which would
4671define the abbrev table NAME exactly as it is currently defined.
4672
4673(insert-abbrev-table-description NAME &optional READABLE)Fdefine-abbrev-table
4674Define TABNAME (a symbol) as an abbrev table name.
4675Define abbrevs in it according to DEFINITIONS, which is a list of elements
4676of the form (ABBREVNAME EXPANSION HOOK USECOUNT).
4677
4678(define-abbrev-table TABNAME DEFNS)Vabbrev-table-name-list
4679List of symbols whose values are abbrev tables.Vglobal-abbrev-table
4680The abbrev table whose abbrevs affect all buffers.
4681Each buffer may also have a local abbrev table.
4682If it does, the local table overrides the global one
4683for any particular abbrev defined in both.Vfundamental-mode-abbrev-table
4684The abbrev table of mode-specific abbrevs for Fundamental Mode.Vlast-abbrev
4685The abbrev-symbol of the last abbrev expanded.  See `abbrev-symbol'.Vlast-abbrev-text
4686The exact text of the last abbrev expanded.
4687nil if the abbrev has already been unexpanded.Vlast-abbrev-location
4688The location of the start of the last abbrev expanded.Vabbrev-start-location
4689Buffer position for `expand-abbrev' to use as the start of the abbrev.
4690nil means use the word before point as the abbrev.
4691Calling `expand-abbrev' sets this to nil.Vabbrev-start-location-buffer
4692Buffer that `abbrev-start-location' has been set for.
4693Trying to expand an abbrev in any other buffer clears `abbrev-start-location'.Vlocal-abbrev-table
4694Local (mode-specific) abbrev table of current buffer.Vabbrevs-changed
4695Set non-nil by defining or altering any word abbrevs.
4696This causes `save-some-buffers' to offer to save the abbrevs.Vabbrev-all-caps
4697*Set non-nil means expand multi-word abbrevs all caps if abbrev was so.Vpre-abbrev-expand-hook
4698Function or functions to be called before abbrev expansion is done.
4699This is the first thing that `expand-abbrev' does, and so this may change
4700the current abbrev table before abbrev lookup happens.Fsyntax-table-p
4701Return t if ARG is a syntax table.
4702Any vector of 256 elements will do.
4703
4704(syntax-table-p OBJ)Fsyntax-table
4705Return the current syntax table.
4706This is the one specified by the current buffer.
4707
4708(syntax-table)Fstandard-syntax-table
4709Return the standard syntax table.
4710This is the one used for new buffers.
4711
4712(standard-syntax-table)Fcopy-syntax-table
4713Construct a new syntax table and return it.
4714It is a copy of the TABLE, which defaults to the standard syntax table.
4715
4716(copy-syntax-table &optional TABLE)Fset-syntax-table
4717Select a new syntax table for the current buffer.
4718One argument, a syntax table.
4719
4720(set-syntax-table TABLE)Fchar-syntax
4721Return the syntax code of CHAR, described by a character.
4722For example, if CHAR is a word constituent, the character `?w' is returned.
4723The characters that correspond to various syntax codes
4724are listed in the documentation of `modify-syntax-entry'.
4725
4726(char-syntax CH)Fmodify-syntax-entry
4727Set syntax for character CHAR according to string S.
4728The syntax is changed only for table TABLE, which defaults to
4729 the current buffer's syntax table.
4730The first character of S should be one of the following:
4731  Space or -  whitespace syntax.    w   word constituent.
4732  _           symbol constituent.   .   punctuation.
4733  (           open-parenthesis.     )   close-parenthesis.
4734  "           string quote.         \   escape.
4735  $           paired delimiter.     '   expression quote or prefix operator.
4736  <           comment starter.      >   comment ender.
4737  /           character-quote.      @   inherit from `standard-syntax-table'.
4738
4739Only single-character comment start and end sequences are represented thus.
4740Two-character sequences are represented as described below.
4741The second character of S is the matching parenthesis,
4742 used only if the first character is `(' or `)'.
4743Any additional characters are flags.
4744Defined flags are the characters 1, 2, 3, 4, b, and p.
4745 1 means C is the start of a two-char comment start sequence.
4746 2 means C is the second character of such a sequence.
4747 3 means C is the start of a two-char comment end sequence.
4748 4 means C is the second character of such a sequence.
4749
4750There can be up to two orthogonal comment sequences. This is to support
4751language modes such as C++.  By default, all comment sequences are of style
4752a, but you can set the comment sequence style to b (on the second character
4753of a comment-start, or the first character of a comment-end sequence) using
4754this flag:
4755 b means C is part of comment sequence b.
4756
4757 p means C is a prefix character for `backward-prefix-chars';
4758   such characters are treated as whitespace when they occur
4759   between expressions.
4760
4761(modify-syntax-entry CHAR S &optional TABLE)Fdescribe-syntax
4762Describe the syntax specifications in the syntax table.
4763The descriptions are inserted in a buffer, which is then displayed.
4764
4765(describe-syntax)Fforward-word
4766Move point forward ARG words (backward if ARG is negative).
4767Normally returns t.
4768If an edge of the buffer is reached, point is left there
4769and nil is returned.
4770
4771(forward-word COUNT)Fforward-comment
4772Move forward across up to N comments.  If N is negative, move backward.
4773Stop scanning if we find something other than a comment or whitespace.
4774Set point to where scanning stops.
4775If N comments are found as expected, with nothing except whitespace
4776between them, return t; otherwise return nil.
4777
4778(forward-comment COUNT)Fscan-lists
4779Scan from character number FROM by COUNT lists.
4780Returns the character number of the position thus found.
4781
4782If DEPTH is nonzero, paren depth begins counting from that value,
4783only places where the depth in parentheses becomes zero
4784are candidates for stopping; COUNT such places are counted.
4785Thus, a positive value for DEPTH means go out levels.
4786
4787Comments are ignored if `parse-sexp-ignore-comments' is non-nil.
4788
4789If the beginning or end of (the accessible part of) the buffer is reached
4790and the depth is wrong, an error is signaled.
4791If the depth is right but the count is not used up, nil is returned.
4792
4793(scan-lists FROM COUNT DEPTH)Fscan-sexps
4794Scan from character number FROM by COUNT balanced expressions.
4795If COUNT is negative, scan backwards.
4796Returns the character number of the position thus found.
4797
4798Comments are ignored if `parse-sexp-ignore-comments' is non-nil.
4799
4800If the beginning or end of (the accessible part of) the buffer is reached
4801in the middle of a parenthetical grouping, an error is signaled.
4802If the beginning or end is reached between groupings
4803but before count is used up, nil is returned.
4804
4805(scan-sexps FROM COUNT)Fbackward-prefix-chars
4806Move point backward over any number of chars with prefix syntax.
4807This includes chars with "quote" or "prefix" syntax (' or p).
4808
4809(backward-prefix-chars)Fparse-partial-sexp
4810Parse Lisp syntax starting at FROM until TO; return status of parse at TO.
4811Parsing stops at TO or when certain criteria are met;
4812 point is set to where parsing stops.
4813If fifth arg STATE is omitted or nil,
4814 parsing assumes that FROM is the beginning of a function.
4815Value is a list of eight elements describing final state of parsing:
4816 0. depth in parens.
4817 1. character address of start of innermost containing list; nil if none.
4818 2. character address of start of last complete sexp terminated.
4819 3. non-nil if inside a string.
4820    (it is the character that will terminate the string.)
4821 4. t if inside a comment.
4822 5. t if following a quote character.
4823 6. the minimum paren-depth encountered during this scan.
4824 7. t if in a comment of style `b'.
4825If third arg TARGETDEPTH is non-nil, parsing stops if the depth
4826in parentheses becomes equal to TARGETDEPTH.
4827Fourth arg STOPBEFORE non-nil means stop when come to
4828 any character that starts a sexp.
4829Fifth arg STATE is an eight-list like what this function returns.
4830It is used to initialize the state of the parse.  Its second and third
4831elements are ignored.
4832Sixth args COMMENTSTOP non-nil means stop at the start of a comment.
4833
4834(parse-partial-sexp FROM TO &optional TARGETDEPTH STOPBEFORE STATE COMMENTSTOP)Vparse-sexp-ignore-comments
4835Non-nil means `forward-sexp', etc., should treat comments as whitespace.Vwords-include-escapes
4836Non-nil means `forward-word', etc., should treat escape chars part of words.Fml-if
4837Mocklisp version of `if'.Fml-nargs
4838Number of arguments to currently executing mocklisp function.
4839
4840(ml-nargs)Fml-arg
4841Argument number N to currently executing mocklisp function.
4842
4843(ml-arg N &optional PROMPT)Fml-interactive
4844True if currently executing mocklisp function was called interactively.
4845
4846(ml-interactive)Fml-provide-prefix-argument
4847Evaluate second argument, using first argument as prefix arg value.Fml-prefix-argument-loop
4848Fml-substr
4849Return a substring of STRING, starting at index FROM and of length LENGTH.
4850If either FROM or LENGTH is negative, the length of STRING is added to it.
4851
4852(ml-substr STRING FROM TO)Finsert-string
4853Mocklisp-compatibility insert function.
4854Like the function `insert' except that any argument that is a number
4855is converted into a string by expressing it in decimal.Fbyte-code
4856Function used internally in byte-compiled code.
4857The first argument is a string of byte code; the second, a vector of constants;
4858the third, the maximum stack depth used in this function.
4859If the third argument is incorrect, Emacs may crash.
4860
4861(byte-code BYTESTR VECTOR MAXDEPTH)Vbyte-code-meter
4862A vector of vectors which holds a histogram of byte-code usage.
4863(aref (aref byte-code-meter 0) CODE) indicates how many times the byte
4864opcode CODE has been executed.
4865(aref (aref byte-code-meter CODE1) CODE2), where CODE1 is not 0,
4866indicates how many times the byte opcodes CODE1 and CODE2 have been
4867executed in succession.Vbyte-metering-on
4868If non-nil, keep profiling information on byte code usage.
4869The variable byte-code-meter indicates how often each byte opcode is used.
4870If a symbol has a property named `byte-code-meter' whose value is an
4871integer, it is incremented each time that symbol's function is called.Fprocessp
4872Return t if OBJECT is a process.
4873
4874(processp OBJ)Fget-process
4875Return the process named NAME, or nil if there is none.
4876
4877(get-process NAME)Fget-buffer-process
4878Return the (or, a) process associated with BUFFER.
4879BUFFER may be a buffer or the name of one.
4880
4881(get-buffer-process NAME)Fdelete-process
4882Delete PROCESS: kill it and forget about it immediately.
4883PROCESS may be a process, a buffer, the name of a process or buffer, or
4884nil, indicating the current buffer's process.
4885
4886(delete-process PROC)Fprocess-status
4887Return the status of PROCESS: a symbol, one of these:
4888run  -- for a process that is running.
4889stop -- for a process stopped but continuable.
4890exit -- for a process that has exited.
4891signal -- for a process that has got a fatal signal.
4892open -- for a network stream connection that is open.
4893closed -- for a network stream connection that is closed.
4894nil -- if arg is a process name and no such process exists.
4895PROCESS may be a process, a buffer, the name of a process or buffer, or
4896nil, indicating the current buffer's process.
4897
4898(process-status PROC)Fprocess-exit-status
4899Return the exit status of PROCESS or the signal number that killed it.
4900If PROCESS has not yet exited or died, return 0.
4901
4902(process-exit-status PROC)Fprocess-id
4903Return the process id of PROCESS.
4904This is the pid of the Unix process which PROCESS uses or talks to.
4905For a network connection, this value is nil.
4906
4907(process-id PROC)Fprocess-name
4908Return the name of PROCESS, as a string.
4909This is the name of the program invoked in PROCESS,
4910possibly modified to make it unique among process names.
4911
4912(process-name PROC)Fprocess-command
4913Return the command that was executed to start PROCESS.
4914This is a list of strings, the first string being the program executed
4915and the rest of the strings being the arguments given to it.
4916For a non-child channel, this is nil.
4917
4918(process-command PROC)Fset-process-buffer
4919Set buffer associated with PROCESS to BUFFER (a buffer, or nil).
4920
4921(set-process-buffer PROC BUFFER)Fprocess-buffer
4922Return the buffer PROCESS is associated with.
4923Output from PROCESS is inserted in this buffer
4924unless PROCESS has a filter.
4925
4926(process-buffer PROC)Fprocess-mark
4927Return the marker for the end of the last output from PROCESS.
4928
4929(process-mark PROC)Fset-process-filter
4930Give PROCESS the filter function FILTER; nil means no filter.
4931t means stop accepting output from the process.
4932When a process has a filter, each time it does output
4933the entire string of output is passed to the filter.
4934The filter gets two arguments: the process and the string of output.
4935If the process has a filter, its buffer is not used for output.
4936
4937(set-process-filter PROC FILTER)Fprocess-filter
4938Returns the filter function of PROCESS; nil if none.
4939See `set-process-filter' for more info on filter functions.
4940
4941(process-filter PROC)Fset-process-sentinel
4942Give PROCESS the sentinel SENTINEL; nil for none.
4943The sentinel is called as a function when the process changes state.
4944It gets two arguments: the process, and a string describing the change.
4945
4946(set-process-sentinel PROC SENTINEL)Fprocess-sentinel
4947Return the sentinel of PROCESS; nil if none.
4948See `set-process-sentinel' for more info on sentinels.
4949
4950(process-sentinel PROC)Fset-process-window-size
4951Tell PROCESS that it has logical window size HEIGHT and WIDTH.
4952
4953(set-process-window-size PROC HEIGHT WIDTH)Fprocess-kill-without-query
4954Say no query needed if PROCESS is running when Emacs is exited.
4955Optional second argument if non-nil says to require a query.
4956Value is t if a query was formerly required.
4957
4958(process-kill-without-query PROC &optional VALUE)Fprocess-connection
4959Return the connection type of `PROCESS'.
4960The value is `nil' for a pipe,
4961`t' or `pty' for a pty, or `stream' for a socket connection.
4962
4963(process-connection PROCESS)Flist-processes
4964Display a list of all processes.
4965(Any processes listed as Exited or Signaled are actually eliminated
4966after the listing is made.)
4967
4968(list-processes)Fprocess-list
4969Return a list of all processes.
4970
4971(process-list)Fstart-process
4972Start a program in a subprocess.  Return the process object for it.
4973Args are NAME BUFFER PROGRAM &rest PROGRAM-ARGS
4974NAME is name for process.  It is modified if necessary to make it unique.
4975BUFFER is the buffer or (buffer-name) to associate with the process.
4976 Process output goes at end of that buffer, unless you specify
4977 an output stream or filter function to handle the output.
4978 BUFFER may be also nil, meaning that this process is not associated
4979 with any buffer
4980Third arg is program file name.  It is searched for as in the shell.
4981Remaining arguments are strings to give program as arguments.Fopen-network-stream
4982Open a TCP connection for a service to a host.
4983Returns a subprocess-object to represent the connection.
4984Input and output work as for subprocesses; `delete-process' closes it.
4985Args are NAME BUFFER HOST SERVICE.
4986NAME is name for process.  It is modified if necessary to make it unique.
4987BUFFER is the buffer (or buffer-name) to associate with the process.
4988 Process output goes at end of that buffer, unless you specify
4989 an output stream or filter function to handle the output.
4990 BUFFER may be also nil, meaning that this process is not associated
4991 with any buffer
4992Third arg is name of the host to connect to, or its IP address.
4993Fourth arg SERVICE is name of the service desired, or an integer
4994 specifying a port number to connect to.
4995
4996(open-network-stream NAME BUFFER HOST SERVICE)Faccept-process-output
4997Allow any pending output from subprocesses to be read by Emacs.
4998It is read into the process' buffers or given to their filter functions.
4999Non-nil arg PROCESS means do not return until some output has been received
5000from PROCESS.
5001Non-nil second arg TIMEOUT and third arg TIMEOUT-MSECS are number of
5002seconds and microseconds to wait; return after that much time whether
5003or not there is input.
5004Return non-nil iff we received any output before the timeout expired.
5005
5006(accept-process-output &optional PROC TIMEOUT TIMEOUT-MSECS)Fwaiting-for-user-input-p
5007Returns non-nil if emacs is waiting for input from the user.
5008This is intended for use by asynchronous process output filters and sentinels.
5009
5010(waiting-for-user-input-p)Fprocess-send-region
5011Send current contents of region as input to PROCESS.
5012PROCESS may be a process, a buffer, the name of a process or buffer, or
5013nil, indicating the current buffer's process.
5014Called from program, takes three arguments, PROCESS, START and END.
5015If the region is more than 500 characters long,
5016it is sent in several bunches.  This may happen even for shorter regions.
5017Output from processes can arrive in between bunches.
5018
5019(process-send-region PROCESS START END)Fprocess-send-string
5020Send PROCESS the contents of STRING as input.
5021PROCESS may be a process, a buffer, the name of a process or buffer, or
5022nil, indicating the current buffer's process.
5023If STRING is more than 500 characters long,
5024it is sent in several bunches.  This may happen even for shorter strings.
5025Output from processes can arrive in between bunches.
5026
5027(process-send-string PROCESS STRING)Finterrupt-process
5028Interrupt process PROCESS.  May be process or name of one.
5029PROCESS may be a process, a buffer, or the name of a process or buffer.
5030nil or no arg means current buffer's process.
5031Second arg CURRENT-GROUP non-nil means send signal to
5032the current process-group of the process's controlling terminal
5033rather than to the process's own process group.
5034If the process is a shell, this means interrupt current subjob
5035rather than the shell.
5036
5037(interrupt-process &optional PROCESS CURRENT-GROUP)Fkill-process
5038Kill process PROCESS.  May be process or name of one.
5039See function `interrupt-process' for more details on usage.
5040
5041(kill-process &optional PROCESS CURRENT-GROUP)Fquit-process
5042Send QUIT signal to process PROCESS.  May be process or name of one.
5043See function `interrupt-process' for more details on usage.
5044
5045(quit-process &optional PROCESS CURRENT-GROUP)Fstop-process
5046Stop process PROCESS.  May be process or name of one.
5047See function `interrupt-process' for more details on usage.
5048
5049(stop-process &optional PROCESS CURRENT-GROUP)Fcontinue-process
5050Continue process PROCESS.  May be process or name of one.
5051See function `interrupt-process' for more details on usage.
5052
5053(continue-process &optional PROCESS CURRENT-GROUP)Fsignal-process
5054Send the process with number PID the signal with code CODE.
5055Both PID and CODE are integers.
5056
5057(signal-process PID SIG)Fprocess-send-eof
5058Make PROCESS see end-of-file in its input.
5059Eof comes after any text already sent to it.
5060PROCESS may be a process, a buffer, the name of a process or buffer, or
5061nil, indicating the current buffer's process.
5062
5063(process-send-eof &optional PROCESS)Vdelete-exited-processes
5064*Non-nil means delete processes immediately when they exit.
5065nil means don't delete them until `list-processes' is run.Vprocess-connection-type
5066Control type of device used to communicate with subprocesses.
5067Values are nil to use a pipe, or t or `pty' to use a pty.
5068The value has no effect if the system has no ptys or if all ptys are busy:
5069then a pipe is used in any case.
5070The value takes effect when `start-process' is called.Fcall-process
5071Call PROGRAM synchronously in separate process.
5072The program's input comes from file INFILE (nil means `/dev/null').
5073Insert output in BUFFER before point; t means current buffer;
5074 nil for BUFFER means discard it; 0 means discard and don't wait.
5075Fourth arg DISPLAY non-nil means redisplay buffer as output is inserted.
5076Remaining arguments are strings passed as command arguments to PROGRAM.
5077If BUFFER is 0, returns immediately with value nil.
5078Otherwise waits for PROGRAM to terminate
5079and returns a numeric exit status or a signal description string.
5080If you quit, the process is killed with SIGINT, or SIGKILL if you quit again.Fcall-process-region
5081Send text from START to END to a synchronous process running PROGRAM.
5082Delete the text if fourth arg DELETE is non-nil.
5083Insert output in BUFFER before point; t means current buffer;
5084 nil for BUFFER means discard it; 0 means discard and don't wait.
5085Sixth arg DISPLAY non-nil means redisplay buffer as output is inserted.
5086Remaining args are passed to PROGRAM at startup as command args.
5087If BUFFER is nil, returns immediately with value nil.
5088Otherwise waits for PROGRAM to terminate
5089and returns a numeric exit status or a signal description string.
5090If you quit, the process is killed with SIGINT, or SIGKILL if you quit again.Fgetenv
5091Return the value of environment variable VAR, as a string.
5092VAR should be a string.  Value is nil if VAR is undefined in the environment.
5093This function consults the variable ``process-environment'' for its value.
5094
5095(getenv VAR)Vbinary-process-input
5096*If non-nil then new subprocesses are assumed to take binary input.Vbinary-process-output
5097*If non-nil then new subprocesses are assumed to produce binary output.Vshell-file-name
5098*File name to load inferior shells from.
5099Initialized from the SHELL environment variable.Vexec-path
5100*List of directories to search programs to run in subprocesses.
5101Each element is a string (directory name) or nil (try default directory).Vexec-directory
5102Directory of architecture-dependent files that come with GNU Emacs,
5103especially executable programs intended for Emacs to invoke.Vdata-directory
5104Directory of architecture-independent files that come with GNU Emacs,
5105intended for Emacs to use.Vdoc-directory
5106Directory containing the DOC file that comes with GNU Emacs.
5107This is usually the same as data-directory.Vconfigure-info-directory
5108For internal use by the build procedure only.
5109This is the name of the directory in which the build procedure installed
5110Emacs's info files; the default value for Info-default-directory-list
5111includes this.Vprocess-environment
5112List of environment variables for subprocesses to inherit.
5113Each element should be a string of the form ENVVARNAME=VALUE.
5114The environment which Emacs inherits is placed in this variable
5115when Emacs starts.Fsun-window-init
5116One time setup for using Sun Windows with mouse.
5117Unless optional argument FORCE is non-nil, is a noop after its first call.
5118Returns a number representing the file descriptor of the open Sun Window,
5119or -1 if can not open it.
5120
5121(sun-window-init &optional FORCE)Fsit-for-millisecs
5122Like sit-for, but ARG is milliseconds.
5123Perform redisplay, then wait for ARG milliseconds or until
5124input is available.  Returns t if wait completed with no input.
5125Redisplay does not happen if input is available before it starts.
5126
5127(sit-for-millisecs N)Fsleep-for-millisecs
5128Pause, without updating display, for ARG milliseconds.
5129
5130(sleep-for-millisecs N)Fupdate-display
5131Perform redisplay.
5132
5133(update-display)Fsun-change-cursor-icon
5134Change the Sun mouse cursor icon.  ICON is a lisp vector whose 1st element
5135is the X offset of the cursor hot-point, whose 2nd element is the Y offset
5136of the cursor hot-point and whose 3rd element is the cursor pixel data
5137expressed as a string.  If ICON is nil then the original arrow cursor is used
5138
5139(sun-change-cursor-icon ICON)Fsun-set-selection
5140Set the current sunwindow selection to STRING.
5141
5142(sun-set-selection STR)Fsun-get-selection
5143Return the current sunwindows selection as a string.
5144
5145(sun-get-selection)Fsun-menu-internal
5146Set up a SunView pop-up menu and return the user's choice.
5147Arguments WINDOW, X, Y, BUTTON, and MENU.
5148*** User code should generally use sun-menu-evaluate ***
5149
5150Arguments WINDOW, X, Y, BUTTON, and MENU.
5151Put MENU up in WINDOW at position X, Y.
5152The BUTTON argument specifies the button to be released that selects an item:
5153   1 = LEFT BUTTON
5154   2 = MIDDLE BUTTON
5155   4 = RIGHT BUTTON
5156The MENU argument is a vector containing (STRING . VALUE) pairs.
5157The VALUE of the selected item is returned.
5158If the VALUE of the first pair is nil, then the first STRING will be used
5159as a menu label.
5160
5161(sun-menu-internal WINDOW X-POSITION Y-POSITION BUTTON MENU)Vonly-global-abbrevs
5162*t means user plans to use global abbrevs only.
5163Makes the commands to define mode-specific abbrevs define global ones instead.Fabbrev-mode
5164Toggle abbrev mode.
5165With argument ARG, turn abbrev mode on iff ARG is positive.
5166In abbrev mode, inserting an abbreviation causes it to expand
5167and be replaced by its expansion.Vedit-abbrevs-map
5168Keymap used in edit-abbrevs.Fkill-all-abbrevs
5169Undefine all defined abbrevs.Finsert-abbrevs
5170Insert after point a description of all defined abbrevs.
5171Mark is set after the inserted text.Flist-abbrevs
5172Display a list of all defined abbrevs.Fedit-abbrevs-mode
5173Major mode for editing the list of abbrev definitions.
5174\{edit-abbrevs-map}Fedit-abbrevs
5175Alter abbrev definitions by editing a list of them.
5176Selects a buffer containing a list of abbrev definitions.
5177You can edit them and type \<edit-abbrevs-map>\[edit-abbrevs-redefine] to redefine abbrevs
5178according to your editing.
5179Buffer contains a header line for each abbrev table,
5180 which is the abbrev table name in parentheses.
5181This is followed by one line per abbrev in that table:
5182NAME   USECOUNT   EXPANSION   HOOK
5183where NAME and EXPANSION are strings with quotes,
5184USECOUNT is an integer, and HOOK is any valid function
5185or may be omitted (it is usually omitted).Fedit-abbrevs-redefine
5186Redefine abbrevs according to current buffer contents.Fdefine-abbrevs
5187Define abbrevs according to current visible buffer contents.
5188See documentation of `edit-abbrevs' for info on the format of the
5189text you must have in the buffer.
5190With argument, eliminate all abbrev definitions except
5191the ones defined from the buffer now.Fread-abbrev-file
5192Read abbrev definitions from file written with `write-abbrev-file'.
5193Optional argument FILE is the name of the file to read;
5194it defaults to the value of `abbrev-file-name'.
5195Optional second argument QUIETLY non-nil means don't print anything.Fquietly-read-abbrev-file
5196Read abbrev definitions from file written with write-abbrev-file.
5197Optional argument FILE is the name of the file to read;
5198it defaults to the value of `abbrev-file-name'.
5199Does not print anything.Fwrite-abbrev-file
5200Write all abbrev definitions to a file of Lisp code.
5201The file written can be loaded in another session to define the same abbrevs.
5202The argument FILE is the file name to write.Fadd-mode-abbrev
5203Define mode-specific abbrev for last word(s) before point.
5204Argument is how many words before point form the expansion;
5205or zero means the region is the expansion.
5206A negative argument means to undefine the specified abbrev.
5207Reads the abbreviation in the minibuffer.
5208
5209Don't use this function in a Lisp program; use `define-abbrev' instead.Fadd-global-abbrev
5210Define global (all modes) abbrev for last word(s) before point.
5211The prefix argument specifies the number of words before point that form the
5212expansion; or zero means the region is the expansion.
5213A negative argument means to undefine the specified abbrev.
5214This command uses the minibuffer to read the abbreviation.
5215
5216Don't use this function in a Lisp program; use `define-abbrev' instead.Finverse-add-mode-abbrev
5217Define last word before point as a mode-specific abbrev.
5218With prefix argument N, defines the Nth word before point.
5219This command uses the minibuffer to read the expansion.
5220Expands the abbreviation after defining it.Finverse-add-global-abbrev
5221Define last word before point as a global (mode-independent) abbrev.
5222With prefix argument N, defines the Nth word before point.
5223This command uses the minibuffer to read the expansion.
5224Expands the abbreviation after defining it.Fabbrev-prefix-mark
5225Mark current point as the beginning of an abbrev.
5226Abbrev to be expanded starts here rather than at beginning of word.
5227This way, you can expand an abbrev with a prefix: insert the prefix,
5228use this command, then insert the abbrev.Fexpand-region-abbrevs
5229For abbrev occurrence in the region, offer to expand it.
5230The user is asked to type y or n for each occurrence.
5231A prefix argument means don't query; expand all abbrevs.
5232If called from a Lisp program, arguments are START END &optional NOQUERY.VBuffer-menu-mode-map
5233FBuffer-menu-mode
5234Major mode for editing a list of buffers.
5235Each line describes one of the buffers in Emacs.
5236Letters do not insert themselves; instead, they are commands.
5237\<Buffer-menu-mode-map>
5238\[Buffer-menu-mouse-select] -- select buffer you click on, in place of the buffer menu.
5239\[Buffer-menu-this-window] -- select current line's buffer in place of the buffer menu.
5240\[Buffer-menu-other-window] -- select that buffer in another window,
5241  so the buffer menu buffer remains visible in its window.
5242\[Buffer-menu-switch-other-window] -- make another window display that buffer.
5243\[Buffer-menu-mark] -- mark current line's buffer to be displayed.
5244\[Buffer-menu-select] -- select current line's buffer.
5245  Also show buffers marked with m, in other windows.
5246\[Buffer-menu-1-window] -- select that buffer in full-frame window.
5247\[Buffer-menu-2-window] -- select that buffer in one window,
5248  together with buffer selected before this one in another window.
5249\[Buffer-menu-visit-tags-table] -- visit-tags-table this buffer.
5250\[Buffer-menu-not-modified] -- clear modified-flag on that buffer.
5251\[Buffer-menu-save] -- mark that buffer to be saved, and move down.
5252\[Buffer-menu-delete] -- mark that buffer to be deleted, and move down.
5253\[Buffer-menu-delete-backwards] -- mark that buffer to be deleted, and move up.
5254\[Buffer-menu-execute] -- delete or save marked buffers.
5255\[Buffer-menu-unmark] -- remove all kinds of marks from current line.
5256  With prefix argument, also move up one line.
5257\[Buffer-menu-backup-unmark] -- back up a line and remove marks.
5258\[Buffer-menu-toggle-read-only] -- toggle read-only status of buffer on this line.FBuffer-menu-buffer
5259Return buffer described by this line of buffer menu.Fbuffer-menu
5260Make a menu of buffers so you can save, delete or select them.
5261With argument, show only buffers that are visiting files.
5262Type ? after invocation to get help on commands available.
5263Type q immediately to make the buffer menu go away and to restore
5264previous window configuration.FBuffer-menu-quit
5265Quit the buffer menu.FBuffer-menu-mark
5266Mark buffer on this line for being displayed by \<Buffer-menu-mode-map>\[Buffer-menu-select] command.FBuffer-menu-unmark
5267Cancel all requested operations on buffer on this line and move down.
5268Optional ARG means move up.FBuffer-menu-backup-unmark
5269Move up and cancel all requested operations on buffer on line above.FBuffer-menu-delete
5270Mark buffer on this line to be deleted by \<Buffer-menu-mode-map>\[Buffer-menu-execute] command.FBuffer-menu-delete-backwards
5271Mark buffer on this line to be deleted by \<Buffer-menu-mode-map>\[Buffer-menu-execute] command
5272and then move up one lineFBuffer-menu-save
5273Mark buffer on this line to be saved by \<Buffer-menu-mode-map>\[Buffer-menu-execute] command.FBuffer-menu-not-modified
5274Mark buffer on this line as unmodified (no changes to save).FBuffer-menu-execute
5275Save and/or delete buffers marked with \<Buffer-menu-mode-map>\[Buffer-menu-save] or \<Buffer-menu-mode-map>\[Buffer-menu-delete] commands.FBuffer-menu-select
5276Select this line's buffer; also display buffers marked with `>'.
5277You can mark buffers with the \<Buffer-menu-mode-map>\[Buffer-menu-mark] command.FBuffer-menu-visit-tags-table
5278Visit the tags table in the buffer on this line.  See `visit-tags-table'.FBuffer-menu-1-window
5279Select this line's buffer, alone, in full frame.FBuffer-menu-mouse-select
5280Select the buffer whose line you click on.FBuffer-menu-this-window
5281Select this line's buffer in this window.FBuffer-menu-other-window
5282Select this line's buffer in other window, leaving buffer menu visible.FBuffer-menu-switch-other-window
5283Make the other window select this line's buffer.
5284The current window remains selected.FBuffer-menu-2-window
5285Select this line's buffer, with previous buffer in second window.FBuffer-menu-toggle-read-only
5286Toggle read-only status of buffer on this line, perhaps via version control.Fdefsubst
5287Define an inline function.  The syntax is just like that of `defun'.Fmake-obsolete
5288Make the byte-compiler warn that FUNCTION is obsolete.
5289The warning will say that NEW should be used instead.
5290If NEW is a string, that is the `use instead' message.Fmake-obsolete-variable
5291Make the byte-compiler warn that VARIABLE is obsolete,
5292and NEW should be used instead.  If NEW is a string, then that is the
5293`use instead' message.Fdont-compile
5294Like `progn', but the body always runs interpreted (not compiled).
5295If you think you need this, you're probably making a mistake somewhere.Feval-when-compile
5296Like `progn', but evaluates the body at compile time.
5297The result of the body appears to the compiler as a quoted constant.Feval-and-compile
5298Like `progn', but evaluates the body at compile time and at load time.Vc-mode-abbrev-table
5299Abbrev table in use in C mode.Vc-mode-map
5300Keymap used in C mode.Fc-macro-expand
5301Display the result of expanding all C macros occurring in the region.
5302The expansion is entirely correct because it uses the C preprocessor.Vc-mode-syntax-table
5303Syntax table in use in C-mode buffers.Vc-indent-level
5304*Indentation of C statements with respect to containing block.Vc-brace-imaginary-offset
5305*Imagined indentation of a C open brace that actually follows a statement.Vc-brace-offset
5306*Extra indentation for braces, compared with other text in same context.Vc-argdecl-indent
5307*Indentation level of declarations of C function arguments.Vc-label-offset
5308*Offset of C label lines and case statements relative to usual indentation.Vc-continued-statement-offset
5309*Extra indent for lines not starting new statements.Vc-continued-brace-offset
5310*Extra indent for substatements that start with open-braces.
5311This is in addition to c-continued-statement-offset.Vc-auto-newline
5312*Non-nil means automatically newline before and after braces,
5313and after colons and semicolons, inserted in C code.
5314If you do not want a leading newline before braces then use:
5315  (define-key c-mode-map "{" 'electric-c-semi)Vc-tab-always-indent
5316*Non-nil means TAB in C mode should always reindent the current line,
5317regardless of where in the line point is when the TAB command is used.Fc-mode
5318Major mode for editing C code.
5319Expression and list commands understand all C brackets.
5320Tab indents for C code.
5321Comments are delimited with /* ... */.
5322Paragraphs are separated by blank lines only.
5323Delete converts tabs to spaces as it moves back.
5324\{c-mode-map}
5325Variables controlling indentation style:
5326 c-tab-always-indent
5327    Non-nil means TAB in C mode should always reindent the current line,
5328    regardless of where in the line point is when the TAB command is used.
5329 c-auto-newline
5330    Non-nil means automatically newline before and after braces,
5331    and after colons and semicolons, inserted in C code.
5332 c-indent-level
5333    Indentation of C statements within surrounding block.
5334    The surrounding block's indentation is the indentation
5335    of the line on which the open-brace appears.
5336 c-continued-statement-offset
5337    Extra indentation given to a substatement, such as the
5338    then-clause of an if or body of a while.
5339 c-continued-brace-offset
5340    Extra indentation given to a brace that starts a substatement.
5341    This is in addition to c-continued-statement-offset.
5342 c-brace-offset
5343    Extra indentation for line if it starts with an open brace.
5344 c-brace-imaginary-offset
5345    An open brace following other text is treated as if it were
5346    this far to the right of the start of its line.
5347 c-argdecl-indent
5348    Indentation level of declarations of C function arguments.
5349 c-label-offset
5350    Extra indentation for line that is a label, or case or default.
5351
5352Settings for K&R and BSD indentation styles are
5353  c-indent-level                5    8
5354  c-continued-statement-offset  5    8
5355  c-brace-offset               -5   -8
5356  c-argdecl-indent              0    8
5357  c-label-offset               -5   -8
5358
5359Turning on C mode calls the value of the variable c-mode-hook with no args,
5360if that value is non-nil.Fc-fill-paragraph
5361Like \[fill-paragraph] but handle C comments.
5362If any of the current line is a comment or within a comment,
5363fill the comment or the paragraph of it that point is in,
5364preserving the comment indentation or line-starting decorations.Felectric-c-brace
5365Insert character and correct line's indentation.Felectric-c-sharp-sign
5366Insert character and correct line's indentation.Felectric-c-semi
5367Insert character and correct line's indentation.Felectric-c-terminator
5368Insert character and correct line's indentation.Fc-indent-command
5369Indent current line as C code, or in some cases insert a tab character.
5370If `c-tab-always-indent' is non-nil (the default), always indent current line.
5371Otherwise, indent the current line only if point is at the left margin or
5372in the line's indentation; otherwise insert a tab.
5373
5374A numeric argument, regardless of its value, means indent rigidly all the
5375lines of the expression starting after point so that this line becomes
5376properly indented.  The relative indentation among the lines of the
5377expression are preserved.Fc-indent-line
5378Indent current line as C code.
5379Return the amount the indentation changed by.Fcalculate-c-indent
5380Return appropriate indentation for current line as C code.
5381In usual case returns an integer: the column to indent to.
5382Returns nil if line starts inside a string, t if in a comment.Fcalculate-c-indent-within-comment
5383Return the indentation amount for line inside a block comment.
5384Optional arg AFTER-STAR means, if lines in the comment have a leading star,
5385return the indentation of the text that would follow this star.Fc-backward-to-start-of-if
5386Move to the start of the last "unbalanced" `if'.Fc-backward-to-start-of-do
5387If point follows a `do' statement, move to beginning of it and return t.
5388Otherwise return nil and don't move point.Fc-beginning-of-statement
5389Go to the beginning of the innermost C statement.
5390With prefix arg, go back N - 1 statements.  If already at the beginning of a
5391statement then go to the beginning of the preceding one.
5392If within a string or comment, or next to a comment (only whitespace between),
5393move by sentences instead of statements.Fc-end-of-statement
5394Go to the end of the innermost C statement.
5395With prefix arg, go forward N - 1 statements.
5396Move forward to end of the next statement if already at end.
5397If within a string or comment, move by sentences instead of statements.Fmark-c-function
5398Put mark at end of C function, point at beginning.Findent-c-exp
5399Indent each line of the C grouping following point.Fset-c-style
5400Set C-mode variables to use one of several different indentation styles.
5401The arguments are a string representing the desired style
5402and a flag which, if non-nil, means to set the style globally.
5403(Interactively, the flag comes from the prefix argument.)
5404Available styles are GNU, K&R, BSD and Whitesmith.Vc-backslash-column
5405*Minimum column for end-of-line backslashes of macro definitions.Fc-backslash-region
5406Insert, align, or delete end-of-line backslashes on the lines in the region.
5407With no argument, inserts backslashes and aligns existing backslashes.
5408With an argument, deletes the backslashes.
5409
5410This function does not modify the last line of the region if the region ends
5411right at the start of the following line; it does not modify blank lines
5412at the start of the region.  So you can put the region around an entire macro
5413definition and conveniently use this command.Fc-up-conditional
5414Move back to the containing preprocessor conditional, leaving mark behind.
5415A prefix argument acts as a repeat count.  With a negative argument,
5416move forward to the end of the containing preprocessor conditional.
5417When going backwards, `#elif' is treated like `#else' followed by `#if'.
5418When going forwards, `#elif' is ignored.Fc-backward-conditional
5419Move back across a preprocessor conditional, leaving mark behind.
5420A prefix argument acts as a repeat count.  With a negative argument,
5421move forward across a preprocessor conditional.Fc-forward-conditional
5422Move forward across a preprocessor conditional, leaving mark behind.
5423A prefix argument acts as a repeat count.  With a negative argument,
5424move backward across a preprocessor conditional.Vdelete-auto-save-files
5425*Non-nil means delete a buffer's auto-save file when the buffer is saved.Vdirectory-abbrev-alist
5426*Alist of abbreviations for file directories.
5427A list of elements of the form (FROM . TO), each meaning to replace
5428FROM with TO when it appears in a directory name.  This replacement is
5429done when setting up the default directory of a newly visited file.
5430*Every* FROM string should start with `^'.
5431
5432Do not use `~' in the TO strings.
5433They should be ordinary absolute directory names.
5434
5435Use this feature when you have directories which you normally refer to
5436via absolute symbolic links.  Make TO the name of the link, and FROM
5437the name it is linked to.Vmake-backup-files
5438*Non-nil means make a backup of a file the first time it is saved.
5439This can be done by renaming the file or by copying.
5440
5441Renaming means that Emacs renames the existing file so that it is a
5442backup file, then writes the buffer into a new file.  Any other names
5443that the old file had will now refer to the backup file.  The new file
5444is owned by you and its group is defaulted.
5445
5446Copying means that Emacs copies the existing file into the backup
5447file, then writes the buffer on top of the existing file.  Any other
5448names that the old file had will now refer to the new (edited) file.
5449The file's owner and group are unchanged.
5450
5451The choice of renaming or copying is controlled by the variables
5452`backup-by-copying', `backup-by-copying-when-linked' and
5453`backup-by-copying-when-mismatch'.  See also `backup-inhibited'.Vbackup-inhibited
5454Non-nil means don't make a backup, regardless of the other parameters.
5455This variable is intended for use by making it local to a buffer.
5456But it is local only if you make it local.Vbackup-by-copying
5457*Non-nil means always use copying to create backup files.
5458See documentation of variable `make-backup-files'.Vbackup-by-copying-when-linked
5459*Non-nil means use copying to create backups for files with multiple names.
5460This causes the alternate names to refer to the latest version as edited.
5461This variable is relevant only if `backup-by-copying' is nil.Vbackup-by-copying-when-mismatch
5462*Non-nil means create backups by copying if this preserves owner or group.
5463Renaming may still be used (subject to control of other variables)
5464when it would not result in changing the owner or group of the file;
5465that is, for files which are owned by you and whose group matches
5466the default for a new file created there by you.
5467This variable is relevant only if `backup-by-copying' is nil.Vbackup-enable-predicate
5468Predicate that looks at a file name and decides whether to make backups.
5469Called with an absolute file name as argument, it returns t to enable backup.Vbuffer-offer-save
5470*Non-nil in a buffer means offer to save the buffer on exit
5471even if the buffer is not visiting a file.
5472Automatically local in all buffers.Vfind-file-existing-other-name
5473*Non-nil means find a file under alternative names, in existing buffers.
5474This means if any existing buffer is visiting the file you want
5475under another name, you get the existing buffer instead of a new buffer.Vfind-file-visit-truename
5476*Non-nil means visit a file under its truename.
5477The truename of a file is found by chasing all links
5478both at the file level and at the levels of the containing directories.Vbuffer-file-truename
5479The abbreviated truename of the file visited in the current buffer.
5480That is, (abbreviated-file-name (file-truename buffer-file-name)).
5481This variable is automatically local in all buffers, when non-nil.Vbuffer-file-number
5482The device number and file number of the file visited in the current buffer.
5483The value is a list of the form (FILENUM DEVNUM).
5484This pair of numbers uniquely identifies the file.
5485If the buffer is visiting a new file, the value is nil.Vfile-precious-flag
5486*Non-nil means protect against I/O errors while saving files.
5487Some modes set this non-nil in particular buffers.Vversion-control
5488*Control use of version numbers for backup files.
5489t means make numeric backup versions unconditionally.
5490nil means make them for files that have some already.
5491`never' means do not make them.Vdired-kept-versions
5492*When cleaning directory, number of versions to keep.Vtrim-versions-without-asking
5493*If t, deletes excess backup versions silently.
5494If nil, asks confirmation.  Any other value prevents any trimming.Vkept-old-versions
5495*Number of oldest versions to keep when a new numbered backup is made.Vkept-new-versions
5496*Number of newest versions to keep when a new numbered backup is made.
5497Includes the new backup.  Must be > 0Vrequire-final-newline
5498*Value of t says silently ensure a file ends in a newline when it is saved.
5499Non-nil but not t says ask user whether to add a newline when there isn't one.
5500nil means don't add newlines.Vauto-save-default
5501*Non-nil says by default do auto-saving of every file-visiting buffer.Vauto-save-visited-file-name
5502*Non-nil says auto-save a buffer in the file it is visiting, when practical.
5503Normally auto-save files are written under other names.Vsave-abbrevs
5504*Non-nil means save word abbrevs too when files are saved.
5505Loading an abbrev file sets this to t.Vfind-file-run-dired
5506*Non-nil says run dired if `find-file' is given the name of a directory.Vfind-file-not-found-hooks
5507List of functions to be called for `find-file' on nonexistent file.
5508These functions are called as soon as the error is detected.
5509`buffer-file-name' is already set up.
5510The functions are called in the order given until one of them returns non-nil.Vfind-file-hooks
5511List of functions to be called after a buffer is loaded from a file.
5512The buffer's local variables (if any) will have been processed before the
5513functions are called.Vwrite-file-hooks
5514List of functions to be called before writing out a buffer to a file.
5515If one of them returns non-nil, the file is considered already written
5516and the rest are not called.
5517These hooks are considered to pertain to the visited file.
5518So this list is cleared if you change the visited file name.
5519See also `write-contents-hooks'.
5520Don't make this variable buffer-local; instead, use `local-write-file-hooks'.Vlocal-write-file-hooks
5521Just like `write-file-hooks', except intended for per-buffer use.
5522The functions in this list are called before the ones in
5523`write-file-hooks'.Vwrite-contents-hooks
5524List of functions to be called before writing out a buffer to a file.
5525If one of them returns non-nil, the file is considered already written
5526and the rest are not called.
5527These hooks are considered to pertain to the buffer's contents,
5528not to the particular visited file; thus, `set-visited-file-name' does
5529not clear this variable, but changing the major mode does clear it.
5530See also `write-file-hooks'.Venable-local-variables
5531*Control use of local-variables lists in files you visit.
5532The value can be t, nil or something else.
5533A value of t means local-variables lists are obeyed;
5534nil means they are ignored; anything else means query.
5535
5536The command \[normal-mode] always obeys local-variables lists
5537and ignores this variable.Venable-local-eval
5538*Control processing of the "variable" `eval' in a file's local variables.
5539The value can be t, nil or something else.
5540A value of t means obey `eval' variables;
5541nil means ignore them; anything else means query.
5542
5543The command \[normal-mode] always obeys local-variables lists
5544and ignores this variable.Fpwd
5545Show the current default directory.Vcd-path
5546Value of the CDPATH environment variable, as a list.
5547Not actually set up until the first time you you use it.Fparse-colon-path
5548Explode a colon-separated list of paths into a string list.Fcd-absolute
5549Change current directory to given absolute file name DIR.Fcd
5550Make DIR become the current buffer's default directory.
5551If your environment includes a `CDPATH' variable, try each one of that
5552colon-separated list of directories when resolving a relative directory name.Fload-file
5553Load the Lisp file named FILE.Fload-library
5554Load the library named LIBRARY.
5555This is an interface to the function `load'.Ffile-local-copy
5556Copy the file FILE into a temporary file on this machine.
5557Returns the name of the local copy, or nil, if FILE is directly
5558accessible.Ffile-truename
5559Return the truename of FILENAME, which should be absolute.
5560The truename of a file name is found by chasing symbolic links
5561both at the level of the file and at the level of the directories
5562containing it, until no links are left at any level.Ffile-chase-links
5563Chase links in FILENAME until a name that is not a link.
5564Does not examine containing directories for links,
5565unlike `file-truename'.Fswitch-to-buffer-other-window
5566Select buffer BUFFER in another window.Fswitch-to-buffer-other-frame
5567Switch to buffer BUFFER in another frame.Ffind-file
5568Edit file FILENAME.
5569Switch to a buffer visiting file FILENAME,
5570creating one if none already exists.Ffind-file-other-window
5571Edit file FILENAME, in another window.
5572May create a new window, or reuse an existing one.
5573See the function `display-buffer'.Ffind-file-other-frame
5574Edit file FILENAME, in another frame.
5575May create a new frame, or reuse an existing one.
5576See the function `display-buffer'.Ffind-file-read-only
5577Edit file FILENAME but don't allow changes.
5578Like \[find-file] but marks buffer as read-only.
5579Use \[toggle-read-only] to permit editing.Ffind-file-read-only-other-window
5580Edit file FILENAME in another window but don't allow changes.
5581Like \[find-file-other-window] but marks buffer as read-only.
5582Use \[toggle-read-only] to permit editing.Ffind-file-read-only-other-frame
5583Edit file FILENAME in another frame but don't allow changes.
5584Like \[find-file-other-frame] but marks buffer as read-only.
5585Use \[toggle-read-only] to permit editing.Ffind-alternate-file
5586Find file FILENAME, select its buffer, kill previous buffer.
5587If the current buffer now contains an empty file that you just visited
5588(presumably by mistake), use this command to visit the file you really want.Fcreate-file-buffer
5589Create a suitably named buffer for visiting FILENAME, and return it.
5590FILENAME (sans directory) is used unchanged if that name is free;
5591otherwise a string <2> or <3> or ... is appended to get an unused name.Fgenerate-new-buffer
5592Create and return a buffer with a name based on NAME.
5593Choose the buffer's name using `generate-new-buffer-name'.Vautomount-dir-prefix
5594Regexp to match the automounter prefix in a directory name.Vabbreviated-home-dir
5595The user's homedir abbreviated according to `directory-abbrev-list'.Fabbreviate-file-name
5596Return a version of FILENAME shortened using `directory-abbrev-alist'.
5597This also substitutes "~" for the user's home directory.
5598Type \[describe-variable] directory-abbrev-alist RET for more information.Vfind-file-not-true-dirname-list
5599*List of logical names for which visiting shouldn't save the true dirname.
5600On VMS, when you visit a file using a logical name that searches a path,
5601you may or may not want the visited file name to record the specific
5602directory where the file was found.  If you *do not* want that, add the logical
5603name to this list as a string.Ffind-buffer-visiting
5604Return the buffer visiting file FILENAME (a string).
5605This is like `get-file-buffer', except that it checks for any buffer
5606visiting the same file, possibly under a different name.
5607If there is no such live buffer, return nil.Ffind-file-noselect
5608Read file FILENAME into a buffer and return the buffer.
5609If a buffer exists visiting FILENAME, return that one, but
5610verify that the file has not changed since visited or saved.
5611The buffer is not selected, just returned to the caller.Fafter-find-file
5612Called after finding a file and by the default revert function.
5613Sets buffer mode, parses local variables.
5614Optional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an
5615error in reading the file.  WARN non-nil means warn if there
5616exists an auto-save file more recent than the visited file.
5617NOAUTO means don't mess with auto-save mode.
5618Finishes by calling the functions in `find-file-hooks'.Fnormal-mode
5619Choose the major mode for this buffer automatically.
5620Also sets up any specified local variables of the file.
5621Uses the visited file name, the -*- line, and the local variables spec.
5622
5623This function is called automatically from `find-file'.  In that case,
5624we may set up specified local variables depending on the value of
5625`enable-local-variables': if it is t, we do; if it is nil, we don't;
5626otherwise, we query.  `enable-local-variables' is ignored if you
5627run `normal-mode' explicitly.Vauto-mode-alist
5628Alist of filename patterns vs corresponding major mode functions.
5629Each element looks like (REGEXP . FUNCTION) or (REGEXP FUNCTION).
5630Visiting a file whose name matches REGEXP causes FUNCTION to be called.
5631If the element has the form (REGEXP FUNCTION), then after calling
5632FUNCTION, we delete the suffix that matched REGEXP and search the list
5633again for another match.Vinterpreter-mode-alist
5634Alist mapping interpreter names to major modes.
5635This alist applies to files whose first line starts with `#!'.
5636Each element looks like (INTERPRETER . MODE).
5637The car of each element is compared with
5638the name of the interpreter specified in the first line.
5639If it matches, mode MODE is selected.Vinhibit-first-line-modes-regexps
5640List of regexps; if one matches a file name, don't look for `-*-'.Vuser-init-file
5641File name including directory of user's initialization file.Fset-auto-mode
5642Select major mode appropriate for current buffer.
5643This checks for a -*- mode tag in the buffer's text,
5644compares the filename against the entries in `auto-mode-alist',
5645or checks the interpreter that runs this file against
5646`interpreter-mode-alist'.
5647
5648It does not check for the `mode:' local variable in the
5649Local Variables section of the file; for that, use `hack-local-variables'.
5650
5651If `enable-local-variables' is nil, this function does not check for a
5652-*- mode tag.Fhack-local-variables
5653Parse and put into effect this buffer's local variables spec.Vignored-local-variables
5654Variables to be ignored in a file's local variable spec.Fset-visited-file-name
5655Change name of file visited in current buffer to FILENAME.
5656The next time the buffer is saved it will go in the newly specified file.
5657nil or empty string as argument means make buffer not be visiting any file.
5658Remember to delete the initial contents of the minibuffer
5659if you wish to pass an empty string as the argument.Fwrite-file
5660Write current buffer into file FILENAME.
5661Makes buffer visit that file, and marks it not modified.
5662If the buffer is already visiting a file, you can specify
5663a directory name as FILENAME, to write a file of the same
5664old name in that directory.Fbackup-buffer
5665Make a backup of the disk file visited by the current buffer, if appropriate.
5666This is normally done before saving the buffer the first time.
5667If the value is non-nil, it is the result of `file-modes' on the original
5668file; this means that the caller, after saving the buffer, should change
5669the modes of the new file to agree with the old modes.Ffile-name-sans-versions
5670Return FILENAME sans backup versions or strings.
5671This is a separate procedure so your site-init or startup file can
5672redefine it.
5673If the optional argument KEEP-BACKUP-VERSION is non-nil,
5674we do not remove backup version numbers, only true file version numbers.Fmake-backup-file-name
5675Create the non-numeric backup file name for FILE.
5676This is a separate function so you can redefine it for customization.Fbackup-file-name-p
5677Return non-nil if FILE is a backup file name (numeric or not).
5678This is a separate function so you can redefine it for customization.
5679You may need to redefine `file-name-sans-versions' as well.Fbackup-extract-version
5680Given the name of a numeric backup file, return the backup number.
5681Uses the free variable `bv-length', whose value should be
5682the index in the name where the version number begins.Ffind-backup-file-name
5683Find a file name for a backup file, and suggestions for deletions.
5684Value is a list whose car is the name for the backup file
5685 and whose cdr is a list of old versions to consider deleting now.Ffile-nlinks
5686Return number of names file FILENAME has.Ffile-relative-name
5687Convert FILENAME to be relative to DIRECTORY (default: default-directory).Fsave-buffer
5688Save current buffer in visited file if modified.  Versions described below.
5689By default, makes the previous version into a backup file
5690 if previously requested or if this is the first save.
5691With 1 or 3 \[universal-argument]'s, marks this version
5692 to become a backup when the next save is done.
5693With 2 or 3 \[universal-argument]'s,
5694 unconditionally makes the previous version into a backup file.
5695With argument of 0, never makes the previous version into a backup file.
5696
5697If a file's name is FOO, the names of its numbered backup versions are
5698 FOO.~i~ for various integers i.  A non-numbered backup file is called FOO~.
5699Numeric backups (rather than FOO~) will be made if value of
5700 `version-control' is not the atom `never' and either there are already
5701 numeric versions of the file being backed up, or `version-control' is
5702 non-nil.
5703We don't want excessive versions piling up, so there are variables
5704 `kept-old-versions', which tells Emacs how many oldest versions to keep,
5705 and `kept-new-versions', which tells how many newest versions to keep.
5706 Defaults are 2 old versions and 2 new.
5707`dired-kept-versions' controls dired's clean-directory (.) command.
5708If `trim-versions-without-asking' is nil, system will query user
5709 before trimming versions.  Otherwise it does it silently.Fdelete-auto-save-file-if-necessary
5710Delete auto-save file for current buffer if `delete-auto-save-files' is t.
5711Normally delete only if the file was written by this Emacs since
5712the last real save, but optional arg FORCE non-nil means delete anyway.Fbasic-save-buffer
5713Save the current buffer in its visited file, if it has been modified.Fsave-some-buffers
5714Save some modified file-visiting buffers.  Asks user about each one.
5715Optional argument (the prefix) non-nil means save all with no questions.
5716Optional second argument EXITING means ask about certain non-file buffers
5717 as well as about file buffers.Fnot-modified
5718Mark current buffer as unmodified, not needing to be saved.
5719With prefix arg, mark buffer as modified, so \[save-buffer] will save.Ftoggle-read-only
5720Change whether this buffer is visiting its file read-only.
5721With arg, set read-only iff arg is positive.Finsert-file
5722Insert contents of file FILENAME into buffer after point.
5723Set mark after the inserted text.
5724
5725This function is meant for the user to run interactively.
5726Don't call it from programs!  Use `insert-file-contents' instead.
5727(Its calling sequence is different; see its documentation).Fappend-to-file
5728Append the contents of the region to the end of file FILENAME.
5729When called from a function, expects three arguments,
5730START, END and FILENAME.  START and END are buffer positions
5731saying what text to write.Ffile-newest-backup
5732Return most recent backup file for FILENAME or nil if no backups exist.Frename-uniquely
5733Rename current buffer to a similar name not already taken.
5734This function is useful for creating multiple shell process buffers
5735or multiple mail buffers, etc.Fmake-directory
5736Create the directory DIR and any nonexistent parent dirs.
5737Interactively, the default choice of directory to create
5738is the current default directory for file names.
5739That is useful when you have visited a file in a nonexistint directory.
5740
5741Noninteractively, the second (optional) argument PARENTS says whether
5742to create parent directories if they don't exist.Vrevert-buffer-function
5743Function to use to revert this buffer, or nil to do the default.Vrevert-buffer-insert-file-contents-function
5744Function to use to insert contents when reverting this buffer.
5745Gets two args, first the nominal file name to use,
5746and second, t if reading the auto-save file.Frevert-buffer
5747Replace the buffer text with the text of the visited file on disk.
5748This undoes all changes since the file was visited or saved.
5749With a prefix argument, offer to revert from latest auto-save file, if
5750that is more recent than the visited file.
5751
5752When called from lisp, The first argument is IGNORE-AUTO; only offer
5753to revert from the auto-save file when this is nil.  Note that the
5754sense of this argument is the reverse of the prefix argument, for the
5755sake of backward compatibility.  IGNORE-AUTO is optional, defaulting
5756to nil.
5757
5758Optional second argument NOCONFIRM means don't ask for confirmation at
5759all.
5760
5761If the value of `revert-buffer-function' is non-nil, it is called to
5762do the work.
5763
5764The default revert function runs the hook `before-revert-hook' at the
5765beginning and `after-revert-hook' at the end.Frecover-file
5766Visit file FILE, but get contents from its last auto-save file.Fkill-some-buffers
5767For each buffer, ask whether to kill it.Fauto-save-mode
5768Toggle auto-saving of contents of current buffer.
5769With prefix argument ARG, turn auto-saving on if positive, else off.Frename-auto-save-file
5770Adjust current buffer's auto save file name for current conditions.
5771Also rename any existing auto save file, if it was made in this session.Fmake-auto-save-file-name
5772Return file name to use for auto-saves of current buffer.
5773Does not consider `auto-save-visited-file-name' as that variable is checked
5774before calling this function.  You can redefine this for customization.
5775See also `auto-save-file-name-p'.Fauto-save-file-name-p
5776Return non-nil if FILENAME can be yielded by `make-auto-save-file-name'.
5777FILENAME should lack slashes.  You can redefine this for customization.Vlist-directory-brief-switches
5778*Switches for list-directory to pass to `ls' for brief listing,Vlist-directory-verbose-switches
5779*Switches for list-directory to pass to `ls' for verbose listing,Flist-directory
5780Display a list of files in or matching DIRNAME, a la `ls'.
5781DIRNAME is globbed by the shell if necessary.
5782Prefix arg (second arg if noninteractive) means supply -l switch to `ls'.
5783Actions controlled by variables `list-directory-brief-switches'
5784and `list-directory-verbose-switches'.Vinsert-directory-program
5785Absolute or relative name of the `ls' program used by `insert-directory'.Finsert-directory
5786Insert directory listing for FILE, formatted according to SWITCHES.
5787Leaves point after the inserted text.
5788Optional third arg WILDCARD means treat FILE as shell wildcard.
5789Optional fourth arg FULL-DIRECTORY-P means file is a directory and
5790switches do not contain `d', so that a full listing is expected.
5791
5792This works by running a directory listing program
5793whose name is in the variable `insert-directory-program'.
5794If WILDCARD, it also runs the shell specified by `shell-file-name'.Vkill-emacs-query-functions
5795Functions to call with no arguments to query about killing Emacs.
5796If any of these functions returns nil, killing Emacs is cancelled.Fsave-buffers-kill-emacs
5797Offer to save each buffer, then kill this Emacs process.
5798With prefix arg, silently save all file-visiting buffers, then kill.Vfill-individual-varying-indent
5799*Controls criterion for a new paragraph in `fill-individual-paragraphs'.
5800Non-nil means changing indent doesn't end a paragraph.
5801That mode can handle paragraphs with extra indentation on the first line,
5802but it requires separator lines between paragraphs.
5803A value of nil means that any change in indentation starts a new paragraph.Vsentence-end-double-space
5804*Non-nil means a single space does not end a sentence.Fset-fill-prefix
5805Set the fill prefix to the current line up to point.
5806Filling expects lines to start with the fill prefix and
5807reinserts the fill prefix in each resulting line.Vadaptive-fill-mode
5808*Non-nil means determine a paragraph's fill prefix from its text.Vadaptive-fill-regexp
5809*Regexp to match text at start of line that constitutes indentation.
5810If Adaptive Fill mode is enabled, whatever text matches this pattern
5811on the second line of a paragraph is used as the standard indentation
5812for the paragraph.Ffill-region-as-paragraph
5813Fill region as one paragraph: break lines to fit `fill-column'.
5814Prefix arg means justify too.
5815If `sentence-end-double-space' is non-nil, then period followed by one
5816space does not end a sentence, so don't break a line there.
5817From program, pass args FROM, TO and JUSTIFY-FLAG.Ffill-paragraph
5818Fill paragraph at or after point.  Prefix arg means justify as well.
5819If `sentence-end-double-space' is non-nil, then period followed by one
5820space does not end a sentence, so don't break a line there.Ffill-region
5821Fill each of the paragraphs in the region.
5822Prefix arg (non-nil third arg, if called from program) means justify as well.
5823If `sentence-end-double-space' is non-nil, then period followed by one
5824space does not end a sentence, so don't break a line there.Fjustify-current-line
5825Add spaces to line point is in, so it ends at `fill-column'.Ffill-nonuniform-paragraphs
5826Fill paragraphs within the region, allowing varying indentation within each.
5827This command divides the region into "paragraphs",
5828only at paragraph-separator lines, then fills each paragraph
5829using as the fill prefix the smallest indentation of any line
5830in the paragraph.
5831
5832When calling from a program, pass range to fill as first two arguments.
5833
5834Optional third and fourth arguments JUSTIFY-FLAG and MAIL-FLAG:
5835JUSTIFY-FLAG to justify paragraphs (prefix arg),
5836MAIL-FLAG for a mail message, i. e. don't fill header lines.Ffill-individual-paragraphs
5837Fill paragraphs of uniform indentation within the region.
5838This command divides the region into "paragraphs",
5839treating every change in indentation level as a paragraph boundary,
5840then fills each paragraph using its indentation level as the fill prefix.
5841
5842When calling from a program, pass range to fill as first two arguments.
5843
5844Optional third and fourth arguments JUSTIFY-FLAG and MAIL-FLAG:
5845JUSTIFY-FLAG to justify paragraphs (prefix arg),
5846MAIL-FLAG for a mail message, i. e. don't fill header lines.Vpi
5847The value of Pi (3.1415926...)Ve
5848The value of e (2.7182818...)Vdegrees-to-radians
5849Degrees to radian conversion constantVradians-to-degrees
5850Radian to degree conversion constantFdegrees-to-radians
5851Convert ARG from degrees to radians.Fradians-to-degrees
5852Convert ARG from radians to degrees.Vframe-creation-function
5853Window-system dependent function to call to create a new frame.
5854The window system startup file should set this to its frame creation
5855function, which should take an alist of parameters as its argument.Vinitial-frame-alist
5856Alist of frame parameters for creating the initial X window frame.
5857You can set this in your `.emacs' file; for example,
5858 (setq initial-frame-alist '((top . 1) (left . 1) (width . 80) (height . 55)))
5859If the value calls for a frame without a minibuffer, and you do not create a
5860minibuffer frame on your own, one is created according to
5861`minibuffer-frame-alist'.
5862Parameters specified here supersede the values given in
5863`default-frame-alist'.Vminibuffer-frame-alist
5864Alist of frame parameters for initially creating a minibuffer frame.
5865You can set this in your `.emacs' file; for example,
5866 (setq minibuffer-frame-alist
5867   '((top . 1) (left . 1) (width . 80) (height . 2)))
5868Parameters specified here supersede the values given in
5869`default-frame-alist'.Vpop-up-frame-alist
5870Alist of frame parameters used when creating pop-up frames.
5871Pop-up frames are used for completions, help, and the like.
5872This variable can be set in your init file, like this:
5873  (setq pop-up-frame-alist '((width . 80) (height . 20)))
5874These supersede the values given in `default-frame-alist'.Vspecial-display-frame-alist
5875*Alist of frame parameters used when creating special frames.
5876Special frames are used for buffers whose names are in
5877`special-display-buffer-names' and for buffers whose names match
5878one of the regular expressions in `special-display-regexps'.
5879This variable can be set in your init file, like this:
5880  (setq special-display-frame-alist '((width . 80) (height . 20)))
5881These supersede the values given in `default-frame-alist'.Fnext-multiframe-window
5882Select the next window, regardless of which frame it is on.Fprevious-multiframe-window
5883Select the previous window, regardless of which frame it is on.Fmake-frame
5884Create a new frame, displaying the current buffer.
5885
5886Optional argument PARAMETERS is an alist of parameters for the new
5887frame.  Specifically, PARAMETERS is a list of pairs, each having one
5888of the following forms:
5889
5890(name . STRING)	- The frame should be named STRING.
5891
5892(height . NUMBER) - The frame should be NUMBER text lines high.  If
5893	this parameter is present, the width parameter must also be
5894	given.
5895
5896(width . NUMBER) - The frame should be NUMBER characters in width.
5897	If this parameter is present, the height parameter must also
5898	be given.
5899
5900(minibuffer . t) - the frame should have a minibuffer
5901(minibuffer . nil) - the frame should have no minibuffer
5902(minibuffer . only) - the frame should contain only a minibuffer
5903(minibuffer . WINDOW) - the frame should use WINDOW as its minibuffer window.Ffiltered-frame-list
5904Return a list of all live frames which satisfy PREDICATE.Fminibuffer-frame-list
5905Return a list of all frames with their own minibuffers.Fframe-remove-geometry-params
5906Return the parameter list PARAM-LIST, but with geometry specs removed.
5907This deletes all bindings in PARAM-LIST for `top', `left', `width',
5908`height', `user-size' and `user-position' parameters.
5909Emacs uses this to avoid overriding explicit moves and resizings from
5910the user during startup.Fother-frame
5911Select the ARG'th different visible frame, and raise it.
5912All frames are arranged in a cyclic order.
5913This command selects the frame ARG steps away in that order.
5914A negative ARG moves in the opposite order.Fcurrent-frame-configuration
5915Return a list describing the positions and states of all frames.
5916Its car is `frame-configuration'.
5917Each element of the cdr is a list of the form (FRAME ALIST WINDOW-CONFIG),
5918where
5919  FRAME is a frame object,
5920  ALIST is an association list specifying some of FRAME's parameters, and
5921  WINDOW-CONFIG is a window configuration object for FRAME.Fset-frame-configuration
5922Restore the frames to the state described by CONFIGURATION.
5923Each frame listed in CONFIGURATION has its position, size, window
5924configuration, and other parameters set as specified in CONFIGURATION.
5925Ordinarily, this function deletes all existing frames not
5926listed in CONFIGURATION.  But if optional second argument NODELETE
5927is given and non-nil, the unwanted frames are iconified instead.Fframe-configuration-p
5928Return non-nil if OBJECT seems to be a frame configuration.
5929Any list whose car is `frame-configuration' is assumed to be a frame
5930configuration.Fframe-height
5931Return number of lines available for display on FRAME.
5932If FRAME is omitted, describe the currently selected frame.Fframe-width
5933Return number of columns available for display on FRAME.
5934If FRAME is omitted, describe the currently selected frame.Fset-default-font
5935Set the font of the selected frame to FONT.
5936When called interactively, prompt for the name of the font to use.Fset-background-color
5937Set the background color of the selected frame to COLOR.
5938When called interactively, prompt for the name of the color to use.Fset-foreground-color
5939Set the foreground color of the selected frame to COLOR.
5940When called interactively, prompt for the name of the color to use.Fset-cursor-color
5941Set the text cursor color of the selected frame to COLOR.
5942When called interactively, prompt for the name of the color to use.Fset-mouse-color
5943Set the color of the mouse pointer of the selected frame to COLOR.
5944When called interactively, prompt for the name of the color to use.Fset-border-color
5945Set the color of the border of the selected frame to COLOR.
5946When called interactively, prompt for the name of the color to use.Fauto-raise-mode
5947Toggle whether or not the selected frame should auto-raise.
5948With arg, turn auto-raise mode on if and only if arg is positive.Fauto-lower-mode
5949Toggle whether or not the selected frame should auto-lower.
5950With arg, turn auto-lower mode on if and only if arg is positive.Ftoggle-scroll-bar
5951Toggle whether or not the selected frame has vertical scroll bars.
5952With arg, turn vertical scroll bars on if and only if arg is positive.Ftoggle-horizontal-scroll-bar
5953Toggle whether or not the selected frame has horizontal scroll bars.
5954With arg, turn horizontal scroll bars on if and only if arg is positive.
5955Horizontal scroll bars aren't implemented yet.Fset-screen-width
5956Obsolete function to change the size of the screen to COLS columns.
5957Optional second arg non-nil means that redisplay should use COLS columns
5958but that the idea of the actual width of the frame should not be changed.
5959This function is provided only for compatibility with Emacs 18; new code
5960should use `set-frame-width instead'.Fset-screen-height
5961Obsolete function to change the height of the screen to LINES lines.
5962Optional second arg non-nil means that redisplay should use LINES lines
5963but that the idea of the actual height of the screen should not be changed.
5964This function is provided only for compatibility with Emacs 18; new code
5965should use `set-frame-width' instead.Vctl-x-5-map
5966Keymap for frame commands.Fclipboard-yank
5967Reinsert the last stretch of killed text, or the clipboard contents.Fclipboard-kill-ring-save
5968Copy region to kill ring, and save in the X clipboard.Fclipboard-kill-region
5969Kill the region, and save it in the X clipboard.Fmenu-bar-enable-clipboard
5970Make the menu bar CUT, PASTE and COPY items use the clipboard.Fkill-this-buffer
5971Kills the current buffer.Vyank-menu-length
5972*Maximum length of an item in the menu for \[mouse-menu-choose-yank].Fmouse-menu-choose-yank
5973Pop up a menu of the kill-ring for selection with the mouse.
5974The kill-ring-yank-pointer is moved to the selected element.
5975A subsequent \[yank] yanks the choice just selected.Vcomplex-buffers-menu-p
5976*Non-nil says, offer a choice of actions after you pick a buffer.
5977This applies to the Buffers menu from the menu bar.Vbuffers-menu-max-size
5978*Maximum number of entries which may appear on the Buffers menu.
5979If this is 10, then only the ten most-recently-selected buffers are shown.
5980If this is nil, then all buffers are shown.
5981A large number or nil slows down menu responsiveness.Fmenu-bar-mode
5982Toggle display of a menu bar on each frame.
5983This command applies to all frames that exist and frames to be
5984created in the future.
5985With a numeric argument, if the argument is negative,
5986turn off menu bars; otherwise, turn on menu bars.Vmouse-yank-at-point
5987*If non-nil, mouse yank commands yank at point instead of at click.Fmouse-delete-window
5988Delete the window you click on.
5989This must be bound to a mouse click.Fmouse-select-window
5990Select the window clicked on; don't move point.Fmouse-tear-off-window
5991Delete the window clicked on, and create a new frame displaying its buffer.Fmouse-delete-other-windows
5992Delete all window except the one you click on.Fmouse-split-window-vertically
5993Select Emacs window mouse is on, then split it vertically in half.
5994The window is split at the line clicked on.
5995This command must be bound to a mouse click.Fmouse-split-window-horizontally
5996Select Emacs window mouse is on, then split it horizontally in half.
5997The window is split at the column clicked on.
5998This command must be bound to a mouse click.Fmouse-set-point
5999Move point to the position clicked on with the mouse.
6000This should be bound to a mouse click event type.Fmouse-set-region
6001Set the region to the text dragged over, and copy to kill ring.
6002This should be bound to a mouse drag event.Vmouse-scroll-delay
6003*The pause between scroll steps caused by mouse drags, in seconds.
6004If you drag the mouse beyond the edge of a window, Emacs scrolls the
6005window to bring the text beyond that edge into view, with a delay of
6006this many seconds between scroll steps.  Scrolling stops when you move
6007the mouse back into the window, or release the button.
6008This variable's value may be non-integral.
6009Setting this to zero causes Emacs to scroll as fast as it can.Fmouse-scroll-subr
6010Scroll the selected window JUMP lines at a time, until new input arrives.
6011If OVERLAY is an overlay, let it stretch from START to the far edge of
6012the newly visible text.
6013Upon exit, point is at the far edge of the newly visible text.Fmouse-drag-region
6014Set the region to the text that the mouse is dragged over.
6015Highlight the drag area as you move the mouse.
6016This must be bound to a button-down mouse event.
6017In Transient Mark mode, the highlighting remains once you
6018release the mouse button.  Otherwise, it does not.Fmouse-skip-word
6019Skip over word, over whitespace, or over identical punctuation.
6020If DIR is positive skip forward; if negative, skip backward.Fmouse-set-mark
6021Set mark at the position clicked on with the mouse.
6022Display cursor at that position for a second.
6023This must be bound to a mouse click.Fmouse-kill
6024Kill the region between point and the mouse click.
6025The text is saved in the kill ring, as with \[kill-region].Fmouse-yank-at-click
6026Insert the last stretch of killed text at the position clicked on.
6027Also move point to one end of the text thus inserted (normally the end).
6028Prefix arguments are interpreted as with \[yank].
6029If `mouse-yank-at-point' is non-nil, insert at point
6030regardless of where you click.Fmouse-kill-ring-save
6031Copy the region between point and the mouse click in the kill ring.
6032This does not delete the region; it acts like \[kill-ring-save].Fmouse-save-then-kill
6033Save text to point in kill ring; the second time, kill the text.
6034If the text between point and the mouse is the same as what's
6035at the front of the kill ring, this deletes the text.
6036Otherwise, it adds the text to the kill ring, like \[kill-ring-save],
6037which prepares for a second click to delete the text.
6038
6039If you have selected words or lines, this command extends the
6040selection through the word or line clicked on.  If you do this
6041again in a different position, it extends the selection again.
6042If you do this twice in the same position, the selection is killed.Fmouse-start-secondary
6043Set one end of the secondary selection to the position clicked on.
6044Use \[mouse-secondary-save-then-kill] to set the other end
6045and complete the secondary selection.Fmouse-set-secondary
6046Set the secondary selection to the text that the mouse is dragged over.
6047This must be bound to a mouse drag event.Fmouse-drag-secondary
6048Set the secondary selection to the text that the mouse is dragged over.
6049Highlight the drag area as you move the mouse.
6050This must be bound to a button-down mouse event.Fmouse-yank-secondary
6051Insert the secondary selection at the position clicked on.
6052Move point to the end of the inserted text.
6053If `mouse-yank-at-point' is non-nil, insert at point
6054regardless of where you click.Fmouse-kill-secondary
6055Kill the text in the secondary selection.
6056This is intended more as a keyboard command than as a mouse command
6057but it can work as either one.
6058
6059The current buffer (in case of keyboard use), or the buffer clicked on,
6060must be the one that the secondary selection is in.  This requirement
6061is to prevent accidents.Fmouse-secondary-save-then-kill
6062Save text to point in kill ring; the second time, kill the text.
6063You must use this in a buffer where you have recently done \[mouse-start-secondary].
6064If the text between where you did \[mouse-start-secondary] and where
6065you use this command matches the text at the front of the kill ring,
6066this command deletes the text.
6067Otherwise, it adds the text to the kill ring, like \[kill-ring-save],
6068which prepares for a second click with this command to delete the text.
6069
6070If you have already made a secondary selection in that buffer,
6071this command extends or retracts the selection to where you click.
6072If you do this again in a different position, it extends or retracts
6073again.  If you do this twice in the same position, it kills the selection.Fmouse-buffer-menu
6074Pop up a menu of buffers for selection with the mouse.
6075This switches buffers in the window that you clicked on,
6076and selects that window.Fmouse-choose-completion
6077Click on an alternative in the `*Completions*' buffer to choose it.Vx-fixed-font-alist
6078X fonts suitable for use in Emacs.Fmouse-set-font
6079Select an emacs font from a list of known good fontsFx-get-selection
6080Return the value of an X Windows selection.
6081The argument TYPE (default `PRIMARY') says which selection,
6082and the argument DATA-TYPE (default `STRING') says how to convert the data.Fx-get-clipboard
6083Return text pasted to the clipboard.Fx-set-selection
6084Make an X Windows selection of type TYPE and value DATA.
6085The argument TYPE (default `PRIMARY') says which selection,
6086and DATA specifies the contents.  DATA may be a string,
6087a symbol, an integer (or a cons of two integers or list of two integers),
6088or a cons of two markers pointing to the same buffer.
6089In the last case, the selection is considered to be the text
6090between the markers.
6091The data may also be a vector of valid non-vector selection values.Fx-get-cut-buffer
6092Returns the value of one of the 8 X server cut-buffers.  Optional arg
6093WHICH-ONE should be a number from 0 to 7, defaulting to 0.
6094Cut buffers are considered obsolete; you should use selections instead.Fx-set-cut-buffer
6095Store STRING into the X server's primary cut buffer.
6096If PUSH is non-nil, also rotate the cut buffers:
6097this means the previous value of the primary cut buffer moves the second
6098cut buffer, and the second to the third, and so on (there are 8 buffers.)
6099Cut buffers are considered obsolete; you should use selections instead.Fxselect-convert-to-class
6100EmacsFxselect-convert-to-name
6101emacsFscroll-bar-event-ratio
6102Given a scroll bar event EVENT, return the scroll bar position as a ratio.
6103The value is a cons cell (PORTION . WHOLE) containing two integers
6104whose ratio gives the event's vertical position in the scroll bar, with 0
6105referring to the top and 1 to the bottom.Fscroll-bar-scale
6106Given a pair (NUM . DENOM) and WHOLE, return (/ (* NUM WHOLE) DENOM).
6107This is handy for scaling a position on a scroll bar into real units,
6108like buffer positions.  If SCROLL-BAR-POS is the (PORTION . WHOLE) pair
6109from a scroll bar event, then (scroll-bar-scale SCROLL-BAR-POS
6110(buffer-size)) is the position in the current buffer corresponding to
6111that scroll bar position.Fscroll-bar-mode
6112Toggle display of vertical scroll bars on each frame.
6113This command applies to all frames that exist and frames to be
6114created in the future.
6115With a numeric argument, if the argument is negative,
6116turn off scroll bars; otherwise, turn on scroll bars.Fscroll-bar-set-window-start
6117Set the window start according to where the scroll bar is dragged.
6118EVENT should be a scroll bar click or drag event.Fscroll-bar-drag
6119Scroll the window by dragging the scroll bar slider.
6120If you click outside the slider, the window scrolls to bring the slider there.Fscroll-bar-scroll-down
6121Scroll the window's top line down to the location of the scroll bar click.
6122EVENT should be a scroll bar click.Fscroll-bar-scroll-up
6123Scroll the line next to the scroll bar click to the top of the window.
6124EVENT should be a scroll bar click.Vhelp-map
6125Keymap for characters following the Help key.Fhelp-with-tutorial
6126Select the Emacs learn-by-doing tutorial.Fdescribe-key-briefly
6127Print the name of the function KEY invokes.  KEY is a string.Fprint-help-return-message
6128Display or return message saying how to restore windows after help command.
6129Computes a message and applies the optional argument FUNCTION to it.
6130If FUNCTION is nil, applies `message' to it, thus printing it.Fdescribe-key
6131Display documentation of the function invoked by KEY.  KEY is a string.Fdescribe-mode
6132Display documentation of current major mode and minor modes.
6133For this to work correctly for a minor mode, the mode's indicator variable
6134(listed in `minor-mode-alist') must also be a function whose documentation
6135describes the minor mode.Fdescribe-distribution
6136Display info on how to obtain the latest version of GNU Emacs.Fdescribe-copying
6137Display info on how you may redistribute copies of GNU Emacs.Fdescribe-project
6138Display info on the GNU project.Fdescribe-no-warranty
6139Display info on all the kinds of warranty Emacs does NOT have.Fdescribe-prefix-bindings
6140Describe the bindings of the prefix used to reach this command.
6141The prefix described consists of all but the last event
6142of the key sequence that ran this command.Fview-emacs-news
6143Display info on recent changes to Emacs.Fview-lossage
6144Display last 100 input keystrokes.Fhelp-for-help
6145You have typed \[help-command], the help character.  Type a Help option:
6146(Use \<help-map>\[scroll-up] or \[scroll-down] to scroll through this text.
6147Type \<help-map>\[help-quit] to exit the Help command.)
6148
6149a  command-apropos.  Give a substring, and see a list of commands
6150	(functions interactively callable) that contain
6151	that substring.  See also the  apropos  command.
6152b  describe-bindings.  Display table of all key bindings.
6153c  describe-key-briefly.  Type a command key sequence;
6154	it prints the function name that sequence runs.
6155f  describe-function.  Type a function name and get documentation of it.
6156C-f Info-goto-emacs-command-node.  Type a function name;
6157	it takes you to the Info node for that command.
6158i  info. The  info  documentation reader.
6159k  describe-key.  Type a command key sequence;
6160	it displays the full documentation.
6161C-k Info-goto-emacs-key-command-node.  Type a command key sequence;
6162	it takes you to the Info node for the command bound to that key.
6163l  view-lossage.  Shows last 100 characters you typed.
6164m  describe-mode.  Print documentation of current major mode,
6165	which describes the commands peculiar to it.
6166n  view-emacs-news.  Shows emacs news file.
6167p  finder-by-keyword. Find packages matching a given topic keyword.
6168s  describe-syntax.  Display contents of syntax table, plus explanations
6169t  help-with-tutorial.  Select the Emacs learn-by-doing tutorial.
6170v  describe-variable.  Type name of a variable;
6171	it displays the variable's documentation and value.
6172w  where-is.  Type command name; it prints which keystrokes
6173	invoke that command.
6174C-c print Emacs copying permission (General Public License).
6175C-d print Emacs ordering information.
6176C-n print news of recent Emacs changes.
6177C-p print information about the GNU project.
6178C-w print information on absence of warranty for GNU Emacs.Fdescribe-function
6179Display the full documentation of FUNCTION (a symbol).Fdescribe-variable
6180Display the full documentation of VARIABLE (a symbol).
6181Returns the documentation as a string, also.Fwhere-is
6182Print message listing key sequences that invoke specified command.
6183Argument is a command definition, usually a symbol with a function definition.Fcommand-apropos
6184Like apropos but lists only symbols that are names of commands
6185(interactively callable functions).  Argument REGEXP is a regular expression
6186that is matched against command symbol names.  Returns list of symbols and
6187documentation found.Flocate-library
6188Show the full path name of Emacs library LIBRARY.
6189This command searches the directories in `load-path' like `M-x load-library'
6190to find the file that `M-x load-library RET LIBRARY RET' would load.
6191Optional second arg NOSUFFIX non-nil means don't add suffixes `.elc' or `.el'
6192to the specified name LIBRARY (a la calling `load' instead of `load-library').Vindent-line-function
6193Function to indent current line.Findent-according-to-mode
6194Indent line in proper way for current major mode.Findent-for-tab-command
6195Indent line in proper way for current major mode.Findent-rigidly
6196Indent all lines starting in the region sideways by ARG columns.
6197Called from a program, takes three arguments, START, END and ARG.Vindent-region-function
6198Function which is short cut to indent region using indent-according-to-mode.
6199A value of nil means really run indent-according-to-mode on each line.Findent-region
6200Indent each nonblank line in the region.
6201With no argument, indent each line using `indent-according-to-mode',
6202or use `indent-region-function' to do the whole region if that's non-nil.
6203If there is a fill prefix, make each line start with the fill prefix.
6204With argument COLUMN, indent each line to that column.
6205Called from a program, takes three args: START, END and COLUMN.Findent-relative-maybe
6206Indent a new line like previous nonblank line.Findent-relative
6207Space out to under next indent point in previous nonblank line.
6208An indent point is a non-whitespace character following whitespace.
6209If the previous nonblank line has no indent points beyond the
6210column point starts at, `tab-to-tab-stop' is done instead.Vtab-stop-list
6211*List of tab stop positions used by `tab-to-tab-stops'.Vedit-tab-stops-map
6212Keymap used in `edit-tab-stops'.Vedit-tab-stops-buffer
6213Buffer whose tab stops are being edited--in case
6214the variable `tab-stop-list' is local in that buffer.Fedit-tab-stops
6215Edit the tab stops used by `tab-to-tab-stop'.
6216Creates a buffer *Tab Stops* containing text describing the tab stops.
6217A colon indicates a column where there is a tab stop.
6218You can add or remove colons and then do \<edit-tab-stops-map>\[edit-tab-stops-note-changes] to make changes take effect.Fedit-tab-stops-note-changes
6219Put edited tab stops into effect.Ftab-to-tab-stop
6220Insert spaces or tabs to next defined tab-stop column.
6221The variable `tab-stop-list' is a list of columns at which there are tab stops.
6222Use \[edit-tab-stops] to edit them interactively.Fmove-to-tab-stop
6223Move point to next defined tab-stop column.
6224The variable `tab-stop-list' is a list of columns at which there are tab stops.
6225Use \[edit-tab-stops] to edit them interactively.Vsearch-exit-option
6226*Non-nil means random control characters terminate incremental search.Vsearch-slow-window-lines
6227*Number of lines in slow search display windows.
6228These are the short windows used during incremental search on slow terminals.
6229Negative means put the slow search window at the top (normally it's at bottom)
6230and the value is minus the number of lines.Vsearch-slow-speed
6231*Highest terminal speed at which to use "slow" style incremental search.
6232This is the style where a one-line window is created to show the line
6233that the search has reached.Vsearch-upper-case
6234*If non-nil, upper case chars disable case fold searching.
6235That is, upper and lower case chars must match exactly.
6236This applies no matter where the chars come from, but does not
6237apply to chars in regexps that are prefixed with `\'.
6238If this value is `not-yanks', yanked text is always downcased.Vsearch-nonincremental-instead
6239*If non-nil, do a nonincremental search instead if exiting immediately.
6240Actually, `isearch-edit-string' is called to let you enter the search
6241string, and RET terminates editing and does a nonincremental search.Vsearch-whitespace-regexp
6242*If non-nil, regular expression to match a sequence of whitespace chars.
6243You might want to use something like "[ \t\r\n]+" instead.Vsearch-highlight
6244*Non-nil means incremental search highlights the current match.Visearch-mode-hook
6245Function(s) to call after starting up an incremental search.Visearch-mode-end-hook
6246Function(s) to call after terminating an incremental search.Vsearch-ring
6247List of search string sequences.Vregexp-search-ring
6248List of regular expression search string sequences.Vsearch-ring-max
6249*Maximum length of search ring before oldest elements are thrown away.Vregexp-search-ring-max
6250*Maximum length of regexp search ring before oldest elements are thrown away.Vsearch-ring-yank-pointer
6251Index in `search-ring' of last string reused.
6252nil if none yet.Vregexp-search-ring-yank-pointer
6253Index in `regexp-search-ring' of last string reused.
6254nil if none yet.Vsearch-ring-update
6255*Non-nil if advancing or retreating in the search ring should cause search.
6256Default value, nil, means edit the string instead.Visearch-mode-map
6257Keymap for isearch-mode.Vminibuffer-local-isearch-map
6258Keymap for editing isearch strings in the minibuffer.Fisearch-forward
6259Do incremental search forward.
6260With a prefix argument, do an incremental regular expression search instead.
6261\<isearch-mode-map>
6262As you type characters, they add to the search string and are found.
6263The following non-printing keys are bound in `isearch-mode-map'.
6264
6265Type \[isearch-delete-char] to cancel characters from end of search string.
6266Type \[isearch-exit] to exit, leaving point at location found.
6267Type LFD (C-j) to match end of line.
6268Type \[isearch-repeat-forward] to search again forward, \[isearch-repeat-backward] to search again backward.
6269Type \[isearch-yank-word] to yank word from buffer onto end of search string and search for it.
6270Type \[isearch-yank-line] to yank rest of line onto end of search string and search for it.
6271Type \[isearch-quote-char] to quote control character to search for it.
6272\[isearch-abort] while searching or when search has failed cancels input back to what has
6273 been found successfully.
6274\[isearch-abort] when search is successful aborts and moves point to starting point.
6275
6276Also supported is a search ring of the previous 16 search strings.
6277Type \[isearch-ring-advance] to search for the next item in the search ring.
6278Type \[isearch-ring-retreat] to search for the previous item in the search ring.
6279Type \[isearch-complete] to complete the search string using the search ring.
6280
6281The above keys, bound in `isearch-mode-map', are often controlled by
6282 options; do M-x apropos on search-.* to find them.
6283Other control and meta characters terminate the search
6284 and are then executed normally (depending on `search-exit-option').
6285
6286If this function is called non-interactively, it does not return to
6287the calling function until the search is done.Fisearch-forward-regexp
6288Do incremental search forward for regular expression.
6289With a prefix argument, do a regular string search instead.
6290Like ordinary incremental search except that your input
6291is treated as a regexp.  See \[isearch-forward] for more info.Fisearch-backward
6292Do incremental search backward.
6293With a prefix argument, do a regular expression search instead.
6294See \[isearch-forward] for more information.Fisearch-backward-regexp
6295Do incremental search backward for regular expression.
6296With a prefix argument, do a regular string search instead.
6297Like ordinary incremental search except that your input
6298is treated as a regexp.  See \[isearch-forward] for more info.Fisearch-mode
6299Start isearch minor mode.  Called by isearch-forward, etc.Fisearch-exit
6300Exit search normally.
6301However, if this is the first command after starting incremental
6302search and `search-nonincremental-instead' is non-nil, do a
6303nonincremental search instead via `isearch-edit-string'.Fisearch-edit-string
6304Edit the search string in the minibuffer.
6305The following additional command keys are active while editing.
6306\<minibuffer-local-isearch-map>
6307\[exit-minibuffer] to resume incremental searching with the edited string.
6308\[isearch-nonincremental-exit-minibuffer] to do one nonincremental search.
6309\[isearch-forward-exit-minibuffer] to resume isearching forward.
6310\[isearch-reverse-exit-minibuffer] to resume isearching backward.
6311\[isearch-ring-advance-edit] to replace the search string with the next item in the search ring.
6312\[isearch-ring-retreat-edit] to replace the search string with the previous item in the search ring.
6313\[isearch-complete-edit] to complete the search string using the search ring.
6314\<isearch-mode-map>
6315If first char entered is \[isearch-yank-word], then do word search instead.Fisearch-abort
6316Abort incremental search mode if searching is successful, signalling quit.
6317Otherwise, revert to previous successful search and continue searching.
6318Use `isearch-exit' to quit without signalling.Fisearch-repeat-forward
6319Repeat incremental search forwards.Fisearch-repeat-backward
6320Repeat incremental search backwards.Fisearch-toggle-regexp
6321Toggle regexp searching on or off.Fisearch-toggle-case-fold
6322Toggle case folding in searching on or off.Fisearch-delete-char
6323Discard last input item and move point back.
6324If no previous match was done, just beep.Fisearch-yank-kill
6325Pull string from kill ring into search string.Fisearch-yank-word
6326Pull next word from buffer into search string.Fisearch-yank-line
6327Pull rest of line from buffer into search string.Fisearch-*-char
6328Handle * and ? specially in regexps.Fisearch-|-char
6329If in regexp search, jump to the barrier.Fisearch-other-meta-char
6330Exit the search normally and reread this key sequence.
6331But only if `search-exit-option' is non-nil, the default.
6332If it is the symbol `edit', the search string is edited in the minibuffer
6333and the meta character is unread so that it applies to editing the string.Fisearch-quote-char
6334Quote special characters for incremental search.Fisearch-return-char
6335Convert return into newline for incremental search.
6336Obsolete.Fisearch-printing-char
6337Add this ordinary printing character to the search string and search.Fisearch-whitespace-chars
6338Match all whitespace chars, if in regexp mode.
6339If you want to search for just a space, type C-q SPC.Fisearch-ring-advance
6340Advance to the next search string in the ring.Fisearch-ring-retreat
6341Retreat to the previous search string in the ring.Fisearch-ring-advance-edit
6342Insert the next element of the search history into the minibuffer.Fisearch-ring-retreat-edit
6343Inserts the previous element of the search history into the minibuffer.Fisearch-complete
6344Complete the search string from the strings on the search ring.
6345The completed string is then editable in the minibuffer.
6346If there is no completion possible, say so and continue searching.Fisearch-complete-edit
6347Same as `isearch-complete' except in the minibuffer.Fisearch-no-upper-case-p
6348Return t if there are no upper case chars in STRING.
6349If REGEXP-FLAG is non-nil, disregard letters preceeded by `\' (but not `\\')
6350since they have special meaning in a regexp.Vlisp-mode-syntax-table
6351Vemacs-lisp-mode-syntax-table
6352Vlisp-mode-abbrev-table
6353Vshared-lisp-mode-map
6354Keymap for commands shared by all sorts of Lisp modes.Vemacs-lisp-mode-map
6355Keymap for Emacs Lisp mode.
6356All commands in shared-lisp-mode-map are inherited by this map.Femacs-lisp-mode
6357Major mode for editing Lisp code to run in Emacs.
6358Commands:
6359Delete converts tabs to spaces as it moves back.
6360Blank lines separate paragraphs.  Semicolons start comments.
6361\{emacs-lisp-mode-map}
6362Entry to this mode calls the value of `emacs-lisp-mode-hook'
6363if that value is non-nil.Vlisp-mode-map
6364Keymap for ordinary Lisp mode.
6365All commands in `shared-lisp-mode-map' are inherited by this map.Flisp-mode
6366Major mode for editing Lisp code for Lisps other than GNU Emacs Lisp.
6367Commands:
6368Delete converts tabs to spaces as it moves back.
6369Blank lines separate paragraphs.  Semicolons start comments.
6370\{lisp-mode-map}
6371Note that `run-lisp' may be used either to start an inferior Lisp job
6372or to switch back to an existing one.
6373
6374Entry to this mode calls the value of `lisp-mode-hook'
6375if that value is non-nil.Flisp-eval-defun
6376Send the current defun to the Lisp process made by \[run-lisp].Vlisp-interaction-mode-map
6377Keymap for Lisp Interaction moe.
6378All commands in `shared-lisp-mode-map' are inherited by this map.Flisp-interaction-mode
6379Major mode for typing and evaluating Lisp forms.
6380Like Lisp mode except that \[eval-print-last-sexp] evals the Lisp expression
6381before point, and prints its value into the buffer, advancing point.
6382
6383Commands:
6384Delete converts tabs to spaces as it moves back.
6385Paragraphs are separated only by blank lines.
6386Semicolons start comments.
6387\{lisp-interaction-mode-map}
6388Entry to this mode calls the value of `lisp-interaction-mode-hook'
6389if that value is non-nil.Feval-print-last-sexp
6390Evaluate sexp before point; print value into current buffer.Feval-last-sexp
6391Evaluate sexp before point; print value in minibuffer.
6392With argument, print output into current buffer.Feval-defun
6393Evaluate defun that point is in or before.
6394Print value in minibuffer.
6395With argument, insert value in current buffer after the defun.Vlisp-indent-offset
6396Vlisp-indent-function
6397Flisp-indent-line
6398Indent current line as Lisp code.
6399With argument, indent any additional lines of the same expression
6400rigidly along with this one.Fcalculate-lisp-indent
6401Return appropriate indentation for current line as Lisp code.
6402In usual case returns an integer: the column to indent to.
6403Can instead return a list, whose car is the column to indent to.
6404This means that following lines at the same level of indentation
6405should not necessarily be indented the same way.
6406The second element of the list is the buffer position
6407of the start of the containing expression.Vlisp-body-indent
6408Number of columns to indent the second line of a `(def...)' form.Findent-sexp
6409Indent each line of the list starting just after point.
6410If optional arg ENDPOS is given, indent each line, stopping when
6411ENDPOS is encountered.Flisp-fill-paragraph
6412Like \[fill-paragraph], but handle Emacs Lisp comments.
6413If any of the current line is a comment, fill the comment or the
6414paragraph of it that point is in, preserving the comment's indentation
6415and initial semicolons.Findent-code-rigidly
6416Indent all lines of code, starting in the region, sideways by ARG columns.
6417Does not affect lines starting inside comments or strings, assuming that
6418the start of the region is not inside them.
6419
6420Called from a program, takes args START, END, COLUMNS and NOCHANGE-REGEXP.
6421The last is a regexp which, if matched at the beginning of a line,
6422means don't indent that line.Vdefun-prompt-regexp
6423*Non-nil => regexp to ignore, before the character that starts a defun.
6424This is only necessary if the opening paren or brace is not in column 0.
6425See `beginning-of-defun'.Vparens-require-spaces
6426Non-nil => `insert-parentheses' should insert whitespace as needed.Fforward-sexp
6427Move forward across one balanced expression (sexp).
6428With argument, do it that many times.  Negative arg -N means
6429move backward across N balanced expressions.Fbackward-sexp
6430Move backward across one balanced expression (sexp).
6431With argument, do it that many times.  Negative arg -N means
6432move forward across N balanced expressions.Fmark-sexp
6433Set mark ARG sexps from point.
6434The place mark goes is the same place \[forward-sexp] would
6435move to with the same argument.Fforward-list
6436Move forward across one balanced group of parentheses.
6437With argument, do it that many times.
6438Negative arg -N means move backward across N groups of parentheses.Fbackward-list
6439Move backward across one balanced group of parentheses.
6440With argument, do it that many times.
6441Negative arg -N means move forward across N groups of parentheses.Fdown-list
6442Move forward down one level of parentheses.
6443With argument, do this that many times.
6444A negative argument means move backward but still go down a level.
6445In Lisp programs, an argument is required.Fbackward-up-list
6446Move backward out of one level of parentheses.
6447With argument, do this that many times.
6448A negative argument means move forward but still to a less deep spot.
6449In Lisp programs, an argument is required.Fup-list
6450Move forward out of one level of parentheses.
6451With argument, do this that many times.
6452A negative argument means move backward but still to a less deep spot.
6453In Lisp programs, an argument is required.Fkill-sexp
6454Kill the sexp (balanced expression) following the cursor.
6455With argument, kill that many sexps after the cursor.
6456Negative arg -N means kill N sexps before the cursor.Fbackward-kill-sexp
6457Kill the sexp (balanced expression) preceding the cursor.
6458With argument, kill that many sexps before the cursor.
6459Negative arg -N means kill N sexps after the cursor.Fbeginning-of-defun
6460Move backward to the beginning of a defun.
6461With argument, do it that many times.  Negative arg -N
6462means move forward to Nth following beginning of defun.
6463Returns t unless search stops due to beginning or end of buffer.
6464
6465Normally a defun starts when there is an char with open-parenthesis
6466syntax at the beginning of a line.  If `defun-prompt-regexp' is
6467non-nil, then a string which matches that regexp may precede the
6468open-parenthesis, and point ends up at the beginning of the line.Fbeginning-of-defun-raw
6469Move point to the character that starts a defun.
6470This is identical to beginning-of-defun, except that point does not move
6471to the beginning of the line when `defun-prompt-regexp' is non-nil.Fend-of-defun
6472Move forward to next end of defun.  With argument, do it that many times.
6473Negative argument -N means move back to Nth preceding end of defun.
6474
6475An end of a defun occurs right after the close-parenthesis that matches
6476the open-parenthesis that starts a defun; see `beginning-of-defun'.Fmark-defun
6477Put mark at end of this defun, point at beginning.
6478The defun marked is the one that contains point or follows point.Finsert-parentheses
6479Put parentheses around next ARG sexps.  Leave point after open-paren.
6480No argument is equivalent to zero: just insert `()' and leave point between.
6481If `parens-require-spaces' is non-nil, this command also inserts a space
6482before and after, depending on the surrounding characters.Fmove-past-close-and-reindent
6483Move past next `)', delete indentation before it, then indent after it.Flisp-complete-symbol
6484Perform completion on Lisp symbol preceding point.
6485Compare that symbol against the known Lisp symbols.
6486
6487The context determines which symbols are considered.
6488If the symbol starts just after an open-parenthesis, only symbols
6489with function definitions are considered.  Otherwise, all symbols with
6490function definitions, values or properties are considered.Vminor-mode-alist
6491Alist saying how to show minor modes in the mode line.
6492Each element looks like (VARIABLE STRING);
6493STRING is included in the mode line iff VARIABLE's value is non-nil.
6494
6495Actually, STRING need not be a string; any possible mode-line element
6496is okay.  See `mode-line-format'.Fprompt-for-change-log-name
6497Prompt for a change log name.Ffind-change-log
6498Find a change log file for \[add-change-log-entry] and return the name.
6499Optional arg FILE-NAME is a name to try first.
6500If FILE-NAME is nil, use the value of `change-log-default-name' if non-nil.
6501Failing that, use "ChangeLog" in the current directory.
6502If the file does not exist in the named directory, successive parent
6503directories are tried.
6504
6505Once a file is found, `change-log-default-name' is set locally in the
6506current buffer to the complete file name.Fadd-change-log-entry
6507Find change log file and add an entry for today.
6508Optional arg (interactive prefix) non-nil means prompt for user name and site.
6509Second arg is file name of change log.  If nil, uses `change-log-default-name'.
6510Third arg OTHER-WINDOW non-nil means visit in other window.
6511Fourth arg NEW-ENTRY non-nil means always create a new entry at the front;
6512never append to an existing entry.Fadd-change-log-entry-other-window
6513Find change log file in other window and add an entry for today.
6514Optional arg (interactive prefix) non-nil means prompt for user name and site.
6515Second arg is file name of change log.  If nil, uses `change-log-default-name'.Fchange-log-mode
6516Major mode for editing change logs; like Indented Text Mode.
6517Prevents numeric backups and sets `left-margin' to 8 and `fill-column' to 74.
6518New log entries are usually made with \[add-change-log-entry] or \[add-change-log-entry-other-window].
6519Each entry behaves as a paragraph, and the entries for one day as a page.
6520Runs `change-log-mode-hook'.Fadd-log-current-defun
6521Return name of function definition point is in, or nil.
6522
6523Understands C, Lisp, LaTeX ("functions" are chapters, sections, ...),
6524Texinfo (@node titles), and Fortran.
6525
6526Other modes are handled by a heuristic that looks in the 10K before
6527point for uppercase headings starting in the first column or
6528identifiers followed by `:' or `=', see variable
6529`add-log-current-defun-header-regexp'.
6530
6531Has a preference of looking backwards.Vad-start-advice-on-load
6532*Non-nil will start Advice magic when this file gets loaded.
6533Also see function `ad-start-advice'.Vad-activate-on-definition
6534*Non-nil means automatic advice activation at function definition.
6535Set this variable to t if you want to enable forward advice (which is
6536automatic advice activation of a previously undefined function at the
6537point the function gets defined/loaded/autoloaded).  The value of this
6538variable takes effect only during the execution of `ad-start-advice'.
6539If non-nil it will enable definition hooks regardless of the value
6540of `ad-enable-definition-hooks'.Vad-redefinition-action
6541*Defines what to do with redefinitions during de/activation.
6542Redefinition occurs if a previously activated function that already has an
6543original definition associated with it gets redefined and then de/activated.
6544In such a case we can either accept the current definition as the new
6545original definition, discard the current definition and replace it with the
6546old original, or keep it and raise an error.  The values `accept', `discard',
6547`error' or `warn' govern what will be done.  `warn' is just like `accept' but
6548it additionally prints a warning message.  All other values will be
6549interpreted as `error'.Vad-definition-hooks
6550*List of hooks to be run after a function definition.
6551The variable `ad-defined-function' will be bound to the name of
6552the currently defined function when the hook function is run.Vad-enable-definition-hooks
6553*Non-nil will enable hooks to be run on function definition.
6554Setting this variable is a noop unless the value of
6555`ad-activate-on-definition' (which see) is nil.Fad-add-advice
6556Adds a piece of ADVICE to FUNCTION's list of advices in CLASS.
6557If FUNCTION already has one or more pieces of advice of the specified
6558CLASS then POSITION determines where the new piece will go.  The value
6559of POSITION can either be `first', `last' or a number where 0 corresponds
6560to `first'.  Numbers outside the range will be mapped to the closest
6561extreme position.  If there was already a piece of ADVICE with the same
6562name, then the position argument will be ignored and the old advice
6563will be overwritten with the new one.
6564    If the FUNCTION was not advised already, then its advice info will be
6565initialized.  Redefining a piece of advice whose name is part of the cache-id
6566will clear the cache.Fdefadvice
6567Defines a piece of advice for FUNCTION (a symbol).
6568The syntax of `defadvice' is as follows:
6569
6570  (defadvice FUNCTION (CLASS NAME [POSITION] [ARGLIST] FLAG...)
6571    [DOCSTRING] [INTERACTIVE-FORM]
6572    BODY... )
6573
6574FUNCTION ::= Name of the function to be advised.
6575CLASS ::= `before' | `around' | `after' | `activation' | `deactivation'.
6576NAME ::= Non-nil symbol that names this piece of advice.
6577POSITION ::= `first' | `last' | NUMBER. Optional, defaults to `first',
6578    see also `ad-add-advice'.
6579ARGLIST ::= An optional argument list to be used for the advised function
6580    instead of the argument list of the original.  The first one found in
6581    before/around/after-advices will be used.
6582FLAG ::= `protect'|`disable'|`activate'|`compile'|`preactivate'|`freeze'.
6583    All flags can be specified with unambiguous initial substrings.
6584DOCSTRING ::= Optional documentation for this piece of advice.
6585INTERACTIVE-FORM ::= Optional interactive form to be used for the advised
6586    function.  The first one found in before/around/after-advices will be used.
6587BODY ::= Any s-expression.
6588
6589Semantics of the various flags:
6590`protect': The piece of advice will be protected against non-local exits in
6591any code that precedes it.  If any around-advice of a function is protected
6592then automatically all around-advices will be protected (the complete onion).
6593
6594`activate': All advice of FUNCTION will be activated immediately if
6595FUNCTION has been properly defined prior to this application of `defadvice'.
6596
6597`compile': In conjunction with `activate' specifies that the resulting
6598advised function should be compiled.
6599
6600`disable': The defined advice will be disabled, hence, it will not be used
6601during activation until somebody enables it.
6602
6603`preactivate': Preactivates the advised FUNCTION at macro-expansion/compile
6604time.  This generates a compiled advised definition according to the current
6605advice state that will be used during activation if appropriate.  Only use
6606this if the `defadvice' gets actually compiled.
6607
6608`freeze': Expands the `defadvice' into a redefining `defun/defmacro' according
6609to the current advice state.  No other advice information will be saved.
6610Frozen advices cannot be undone, they behave like a hard redefinition of
6611the advised function.  `freeze' implies `activate' and `preactivate'.  The
6612documentation of the advised function can be dumped onto the `DOC' file
6613during preloading.
6614
6615Look at the file `advice.el' for comprehensive documentation.Fad-start-advice
6616Redefines some primitives to start the advice magic.
6617If `ad-activate-on-definition' is t then advice information will
6618automatically get activated whenever an advised function gets defined or
6619redefined.  This will enable goodies such as forward advice and
6620automatically enable function definition hooks.  If its value is nil but
6621the value of `ad-enable-definition-hooks' is t then definition hooks
6622will be enabled without having automatic advice activation, otherwise
6623function definition hooks will be disabled too.  If definition hooks are
6624enabled then functions stored in `ad-definition-hooks' are run whenever
6625a function gets defined or redefined.Vappt-issue-message
6626*Non-nil means check for appointments in the diary buffer.
6627To be detected, the diary entry must have the time
6628as the first thing on a line.Vappt-message-warning-time
6629*Time in minutes before an appointment that the warning begins.Vappt-audible
6630*Non-nil means beep to indicate appointment.Vappt-visible
6631*Non-nil means display appointment message in echo area.Vappt-display-mode-line
6632*Non-nil means display minutes to appointment and time on the mode line.Vappt-msg-window
6633*Non-nil means display appointment message in another window.Vappt-display-duration
6634*The number of seconds an appointment message is displayed.Vappt-display-diary
6635*Non-nil means to display the next days diary on the screen.
6636This will occur at midnight when the appointment list is updated.Fapropos
6637Show all symbols whose names contain matches for REGEXP.
6638If optional argument DO-ALL is non-nil (prefix argument if interactive),
6639or if `apropos-do-all' is non-nil, does more (time-consuming) work such as
6640showing key bindings.  Optional argument PRED is called with each symbol, and
6641if it returns nil, the symbol is not shown.
6642
6643Returns list of symbols and documentation found.Fsuper-apropos
6644Show symbols whose names/documentation contain matches for REGEXP.
6645If optional argument DO-ALL is non-nil (prefix argument if interactive),
6646or if `apropos-do-all' is non-nil, does more (time-consuming) work such as
6647showing key bindings and documentation that is not stored in the documentation
6648file.
6649
6650Returns list of symbols and documentation found.Fasm-mode
6651Major mode for editing typical assembler code.
6652Features a private abbrev table and the following bindings:
6653
6654\[asm-colon]	outdent a preceding label, tab to next tab stop.
6655\[tab-to-tab-stop]	tab to next tab stop.
6656\[asm-newline]	newline, then tab to next tab stop.
6657\[asm-comment]	smart placement of assembler comments.
6658
6659The character used for making comments is set by the variable
6660`asm-comment-char' (which defaults to `?;').
6661
6662Alternatively, you may set this variable in `asm-set-comment-hook', which is
6663called near the beginning of mode initialization.
6664
6665Turning on Asm mode runs the hook `asm-mode-hook' at the end of initialization.
6666
6667Special commands:
6668\{asm-mode-map}
6669Fupdate-file-autoloads
6670Update the autoloads for FILE in `generated-autoload-file'
6671(which FILE might bind in its local variables).Fupdate-autoloads-here
6672Update sections of the current buffer generated by \[update-file-autoloads].Fupdate-directory-autoloads
6673Run \[update-file-autoloads] on each .el file in DIR.Fbatch-update-autoloads
6674Update the autoloads for the files or directories on the command line.
6675Runs \[update-file-autoloads] on files and \[update-directory-autoloads]
6676on directories.  Must be used only with -batch, and kills Emacs on completion.
6677Each file will be processed even if an error occurred previously.
6678For example, invoke `emacs -batch -f batch-update-autoloads *.el'.Fawk-mode
6679Major mode for editing AWK code.
6680This is much like C mode except for the syntax of comments.  It uses
6681the same keymap as C mode and has the same variables for customizing
6682indentation.  It has its own abbrev table and its own syntax table.
6683
6684Turning on AWK mode calls the value of the variable `awk-mode-hook'
6685with no args, if that value is non-nil.Fbackquote
6686Argument STRUCTURE describes a template to build.
6687
6688The whole structure acts as if it were quoted except for certain
6689places where expressions are evaluated and inserted or spliced in.
6690
6691For example:
6692
6693b                 => (ba bb bc)		; assume b has this value
6694(` (a b c))       => (a b c)		; backquote acts like quote
6695(` (a (, b) c))   => (a (ba bb bc) c)	; insert the value of b
6696(` (a (,@ b) c))  => (a ba bb bc c)	; splice in the value of b
6697
6698Vectors work just like lists.  Nested backquotes are permitted.Fbibtex-mode
6699Major mode for editing bibtex files.
6700
6701\{bibtex-mode-map}
6702
6703A command such as \[bibtex-Book] will outline the fields for a BibTeX book entry.
6704
6705The optional fields start with the string OPT, and thus ignored by BibTeX.
6706The OPT string may be removed from a field with \[bibtex-remove-OPT].
6707\[bibtex-kill-optional-field] kills the current optional field entirely.
6708\[bibtex-remove-double-quotes] removes the double-quotes around the text of
6709the current field.  \[bibtex-empty-field] replaces the text of the current
6710field with the default "".
6711
6712The command \[bibtex-clean-entry] cleans the current entry, i.e. (i) removes
6713double-quotes from entirely numerical fields, (ii) removes OPT from all
6714non-empty optional fields, (iii) removes all empty optional fields, and (iv)
6715checks that no non-optional fields are empty.
6716
6717Use \[bibtex-find-text] to position the dot at the end of the current field.
6718Use \[bibtex-next-field] to move to end of the next field.
6719
6720The following may be of interest as well:
6721
6722  Functions:
6723    find-bibtex-duplicates
6724    find-bibtex-entry-location
6725    hide-bibtex-entry-bodies
6726    sort-bibtex-entries
6727    validate-bibtex-buffer
6728
6729  Variables:
6730    bibtex-clean-entry-zap-empty-opts
6731    bibtex-entry-field-alist
6732    bibtex-include-OPTannote
6733    bibtex-include-OPTcrossref
6734    bibtex-include-OPTkey
6735    bibtex-maintain-sorted-entries
6736    bibtex-mode-user-optional-fields
6737
6738Fields:
6739    address
6740           Publisher's address
6741    annote
6742           Long annotation used for annotated bibliographies (begins sentence)
6743    author
6744           Name(s) of author(s), in BibTeX name format
6745    booktitle
6746           Book title when the thing being referenced isn't the whole book.
6747           For book entries, the title field should be used instead.
6748    chapter
6749           Chapter number
6750    crossref
6751	   The database key of the entry being cross referenced.
6752    edition
6753           Edition of a book (e.g., "second")
6754    editor
6755           Name(s) of editor(s), in BibTeX name format.
6756           If there is also an author field, then the editor field should be
6757           for the book or collection that the work appears in
6758    howpublished
6759            How something strange has been published (begins sentence)
6760    institution
6761           Sponsoring institution
6762    journal
6763           Journal name (macros are provided for many)
6764    key
6765           Alphabetizing and labeling key (needed when no author or editor)
6766    month
6767           Month (macros are provided)
6768    note
6769           To help the reader find a reference (begins sentence)
6770    number
6771           Number of a journal or technical report
6772    organization
6773           Organization (sponsoring a conference)
6774    pages
6775           Page number or numbers (use `--' to separate a range)
6776    publisher
6777           Publisher name
6778    school
6779           School name (for theses)
6780    series
6781           The name of a series or set of books.
6782           An individual book will will also have it's own title
6783    title
6784           The title of the thing being referenced
6785    type
6786           Type of a technical report (e.g., "Research Note") to be used
6787           instead of the default "Technical Report"
6788    volume
6789           Volume of a journal or multivolume work
6790    year
6791           Year---should contain only numerals
6792---------------------------------------------------------
6793Entry to this mode calls the value of bibtex-mode-hook if that value is
6794non-nil.Fblackbox
6795Play blackbox.  Optional prefix argument is the number of balls;
6796the default is 4.
6797
6798What is blackbox?
6799
6800Blackbox is a game of hide and seek played on an 8 by 8 grid (the
6801Blackbox).  Your opponent (Emacs, in this case) has hidden several
6802balls (usually 4) within this box.  By shooting rays into the box and
6803observing where they emerge it is possible to deduce the positions of
6804the hidden balls.  The fewer rays you use to find the balls, the lower
6805your score.
6806
6807Overview of play:
6808
6809\<blackbox-mode-map>To play blackbox, type \[blackbox].  An optional prefix argument
6810specifies the number of balls to be hidden in the box; the default is
6811four.
6812
6813The cursor can be moved around the box with the standard cursor
6814movement keys.
6815
6816To shoot a ray, move the cursor to the edge of the box and press SPC.
6817The result will be determined and the playfield updated.
6818
6819You may place or remove balls in the box by moving the cursor into the
6820box and pressing \[bb-romp].
6821
6822When you think the configuration of balls you have placed is correct,
6823press \[bb-done].  You will be informed whether you are correct or
6824not, and be given your score.  Your score is the number of letters and
6825numbers around the outside of the box plus five for each incorrectly
6826placed ball.  If you placed any balls incorrectly, they will be
6827indicated with `x', and their actual positions indicated with `o'.
6828
6829Details:
6830
6831There are three possible outcomes for each ray you send into the box:
6832
6833	Detour: the ray is deflected and emerges somewhere other than
6834		where you sent it in.  On the playfield, detours are
6835		denoted by matching pairs of numbers -- one where the
6836		ray went in, and the other where it came out.
6837
6838	Reflection: the ray is reflected and emerges in the same place
6839		it was sent in.  On the playfield, reflections are
6840		denoted by the letter `R'.
6841
6842	Hit:	the ray strikes a ball directly and is absorbed.  It does
6843		not emerge from the box.  On the playfield, hits are
6844		denoted by the letter `H'.
6845
6846The rules for how balls deflect rays are simple and are best shown by
6847example.
6848
6849As a ray approaches a ball it is deflected ninety degrees.  Rays can
6850be deflected multiple times.  In the diagrams below, the dashes
6851represent empty box locations and the letter `O' represents a ball.
6852The entrance and exit points of each ray are marked with numbers as
6853described under "Detour" above.  Note that the entrance and exit
6854points are always interchangeable.  `*' denotes the path taken by the
6855ray.
6856
6857Note carefully the relative positions of the ball and the ninety
6858degree deflection it causes.
6859
6860    1
6861  - * - - - - - -         - - - - - - - -         - - - - - - - -
6862  - * - - - - - -         - - - - - - - -         - - - - - - - -
68631 * * - - - - - -         - - - - - - - -         - O - - - - O -
6864  - - O - - - - -         - - O - - - - -         - - * * * * - -
6865  - - - - - - - -         - - - * * * * * 2     3 * * * - - * - -
6866  - - - - - - - -         - - - * - - - -         - - - O - * - -
6867  - - - - - - - -         - - - * - - - -         - - - - * * - -
6868  - - - - - - - -         - - - * - - - -         - - - - * - O -
6869                                2                         3
6870
6871As mentioned above, a reflection occurs when a ray emerges from the same point
6872it was sent in.  This can happen in several ways:
6873
6874
6875  - - - - - - - -         - - - - - - - -          - - - - - - - -
6876  - - - - O - - -         - - O - O - - -          - - - - - - - -
6877R * * * * - - - -         - - - * - - - -          O - - - - - - -
6878  - - - - O - - -         - - - * - - - -        R - - - - - - - -
6879  - - - - - - - -         - - - * - - - -          - - - - - - - -
6880  - - - - - - - -         - - - * - - - -          - - - - - - - -
6881  - - - - - - - -       R * * * * - - - -          - - - - - - - -
6882  - - - - - - - -         - - - - O - - -          - - - - - - - -
6883
6884In the first example, the ray is deflected downwards by the upper
6885ball, then left by the lower ball, and finally retraces its path to
6886its point of origin.  The second example is similar.  The third
6887example is a bit anomalous but can be rationalized by realizing the
6888ray never gets a chance to get into the box.  Alternatively, the ray
6889can be thought of as being deflected downwards and immediately
6890emerging from the box.
6891
6892A hit occurs when a ray runs straight into a ball:
6893
6894  - - - - - - - -         - - - - - - - -          - - - - - - - -
6895  - - - - - - - -         - - - - - - - -          - - - - O - - -
6896  - - - - - - - -         - - - - O - - -        H * * * * - - - -
6897  - - - - - - - -       H * * * * O - - -          - - - * - - - -
6898  - - - - - - - -         - - - - O - - -          - - - O - - - -
6899H * * * O - - - -         - - - - - - - -          - - - - - - - -
6900  - - - - - - - -         - - - - - - - -          - - - - - - - -
6901  - - - - - - - -         - - - - - - - -          - - - - - - - -
6902
6903Be sure to compare the second example of a hit with the first example of
6904a reflection.Vbookmark-map
6905Keymap containing bindings to bookmark functions.
6906It is not bound to any key by default: to bind it
6907so that you have a bookmark prefix, just use `global-set-key' and bind a
6908key of your choice to `bookmark-map'.  All interactive bookmark
6909functions have a binding in this keymap.Fbookmark-set
6910Set a bookmark named NAME inside a file.
6911With prefix arg, will not overwrite a bookmark that has the same name
6912as NAME if such a bookmark already exists, but instead will "push"
6913the new bookmark onto the bookmark alist.  Thus the most recently set
6914bookmark with name NAME would be the one in effect at any given time,
6915but the others are still there, should you decide to delete the most
6916recent one.
6917
6918To yank words from the text of the buffer and use them as part of the
6919bookmark name, type C-w while setting a bookmark.  Successive C-w's
6920yank successive words.
6921
6922Typing C-v inserts the name of the current file being visited. Typing
6923C-u inserts the name of the last bookmark used in the buffer (as an
6924aid in using a single bookmark name to track your progress through a
6925large file).  If no bookmark was used, then C-u behaves like C-v and
6926inserts the name of the file being visited.
6927
6928Use \[bookmark-delete] to remove bookmarks (you give it a name,
6929and it removes only the first instance of a bookmark with that name from
6930the list of bookmarks.)Fbookmark-jump
6931Jump to bookmark BOOKMARK (a point in some file).
6932You may have a problem using this function if the value of variable
6933`bookmark-alist' is nil.  If that happens, you need to load in some
6934bookmarks.  See help on function `bookmark-load' for more about
6935this.
6936
6937If the file pointed to by BOOKMARK no longer exists, you will be asked
6938if you wish to give the bookmark a new location, and bookmark-jump
6939will then jump to the new location, as well as recording it in place
6940of the old one in the permanent bookmark record.Fbookmark-relocate
6941Relocate BOOKMARK -- prompts for a filename, and makes an already
6942existing bookmark point to that file, instead of the one it used to
6943point at.  Useful when a file has been renamed after a bookmark was
6944set in it.Fbookmark-locate
6945Insert the name of the file associated with BOOKMARK.
6946Optional second arg NO-INSERTION means merely return the filename as a
6947string.Fbookmark-rename
6948Change the name of OLD-BOOKMARK to NEWNAME.
6949If called from keyboard, prompts for OLD-BOOKMARK and NEWNAME.
6950If called from menubar, OLD-BOOKMARK is selected from a menu, and
6951prompts for NEWNAME.
6952If called from Lisp, prompts for NEWNAME if only OLD-BOOKMARK was
6953passed as an argument.  If called with two strings, then no prompting
6954is done.  You must pass at least OLD-BOOKMARK when calling from Lisp.
6955
6956While you are entering the new name, consecutive C-w's insert
6957consectutive words from the text of the buffer into the new bookmark
6958name, and C-v inserts the name of the file.Fbookmark-insert
6959Insert the text of the file pointed to by bookmark BOOKMARK.
6960You may have a problem using this function if the value of variable
6961`bookmark-alist' is nil.  If that happens, you need to load in some
6962bookmarks.  See help on function `bookmark-load' for more about
6963this.Fbookmark-delete
6964Delete the bookmark named NAME from the bookmark list.
6965Removes only the first instance of a bookmark with that name.  If
6966there are one or more other bookmarks with the same name, they will
6967not be deleted.  Defaults to the "current" bookmark (that is, the
6968one most recently used in this file, if any).Fbookmark-write
6969Write bookmarks to a file (for which the user will be prompted
6970interactively).  Don't use this in Lisp programs; use bookmark-save
6971instead.Fbookmark-save
6972Save currently defined bookmarks.
6973Saves by default in the file defined by the variable
6974`bookmark-file'.  With a prefix arg, save it in file FILE.
6975
6976If you are calling this from Lisp, the two arguments are PREFIX-ARG
6977and FILE, and if you just want it to write to the default file, then
6978pass no arguments.  Or pass in nil and FILE, and it will save in FILE
6979instead.  If you pass in one argument, and it is non-nil, then the
6980user will be interactively queried for a file to save in.
6981
6982When you want to load in the bookmarks from a file, use
6983`bookmark-load', \[bookmark-load].  That function will prompt you
6984for a file, defaulting to the file defined by variable
6985`bookmark-file'.Fbookmark-load
6986Load bookmarks from FILE (which must be in bookmark format).
6987Appends loaded bookmarks to the front of the list of bookmarks.  If
6988optional second argument REVERT is non-nil, existing bookmarks are
6989destroyed.  Optional third arg NO-MSG means don't display any messages
6990while loading.
6991
6992If you load a file that doesn't contain a proper bookmark alist, you
6993will corrupt Emacs's bookmark list.  Generally, you should only load
6994in files that were created with the bookmark functions in the first
6995place.  Your own personal bookmark file, `~/.emacs-bkmrks', is
6996maintained automatically by Emacs; you shouldn't need to load it
6997explicitly.Flist-bookmarks
6998Display a list of existing bookmarks.
6999The list is displayed in a buffer named `*Bookmark List*'.
7000The leftmost column displays a D if the bookmark is flagged for
7001deletion, or > if it is flagged for displaying.Fbookmark-menu-bar-insert
7002Insert the text of the file pointed to by bookmark BOOKMARK.
7003You may have a problem using this function if the value of variable
7004`bookmark-alist' is nil.  If that happens, you need to load in some
7005bookmarks.  See help on function `bookmark-load' for more about
7006this.Fbookmark-menu-bar-jump
7007Jump to bookmark BOOKMARK (a point in some file).
7008You may have a problem using this function if the value of variable
7009`bookmark-alist' is nil.  If that happens, you need to load in some
7010bookmarks.  See help on function `bookmark-load' for more about
7011this.Fbookmark-menu-bar-locate
7012Insert the name of the  file associated with BOOKMARK.
7013(This is not the same as the contents of that file).Fbookmark-menu-bar-rename
7014Change the name of OLD-BOOKMARK to NEWNAME.
7015If called from keyboard, prompts for OLD-BOOKMARK and NEWNAME.
7016If called from menubar, OLD-BOOKMARK is selected from a menu, and
7017prompts for NEWNAME.
7018If called from Lisp, prompts for NEWNAME if only OLD-BOOKMARK was
7019passed as an argument.  If called with two strings, then no prompting
7020is done.  You must pass at least OLD-BOOKMARK when calling from Lisp.
7021
7022While you are entering the new name, consecutive C-w's insert
7023consectutive words from the text of the buffer into the new bookmark
7024name, and C-v inserts the name of the file.Fbookmark-menu-bar-delete
7025Delete the bookmark named NAME from the bookmark list.
7026Removes only the first instance of a bookmark with that name.  If
7027there are one or more other bookmarks with the same name, they will
7028not be deleted.  Defaults to the "current" bookmark (that is, the
7029one most recently used in this file, if any).Fbyte-recompile-directory
7030Recompile every `.el' file in DIRECTORY that needs recompilation.
7031This is if a `.elc' file exists but is older than the `.el' file.
7032Files in subdirectories of DIRECTORY are processed also.
7033
7034If the `.elc' file does not exist, normally the `.el' file is *not* compiled.
7035But a prefix argument (optional second arg) means ask user,
7036for each such `.el' file, whether to compile it.  Prefix argument 0 means
7037don't ask and compile the file anyway.
7038
7039A nonzero prefix argument also means ask about each subdirectory.Fbyte-compile-file
7040Compile a file of Lisp code named FILENAME into a file of byte code.
7041The output file's name is made by appending `c' to the end of FILENAME.
7042With prefix arg (noninteractively: 2nd arg), load the file after compiling.Fcompile-defun
7043Compile and evaluate the current top-level form.
7044Print the result in the minibuffer.
7045With argument, insert value in current buffer after the form.Fbyte-compile
7046If FORM is a symbol, byte-compile its function definition.
7047If FORM is a lambda or a macro, byte-compile it as a function.Fdisplay-call-tree
7048Display a call graph of a specified file.
7049This lists which functions have been called, what functions called
7050them, and what functions they call.  The list includes all functions
7051whose definitions have been compiled in this Emacs session, as well as
7052all functions called by those functions.
7053
7054The call graph does not include macros, inline functions, or
7055primitives that the byte-code interpreter knows about directly (eq,
7056cons, etc.).
7057
7058The call tree also lists those functions which are not known to be called
7059(that is, to which no calls have been compiled), and which cannot be
7060invoked interactively.Fbatch-byte-compile
7061Run `byte-compile-file' on the files remaining on the command line.
7062Use this from the command line, with `-batch';
7063it won't work in an interactive Emacs.
7064Each file is processed even if an error occurred previously.
7065For example, invoke "emacs -batch -f batch-byte-compile $emacs/ ~/*.el"Fbatch-byte-recompile-directory
7066Runs `byte-recompile-directory' on the dirs remaining on the command line.
7067Must be used only with `-batch', and kills Emacs on completion.
7068For example, invoke `emacs -batch -f batch-byte-recompile-directory .'.Vcalendar-week-start-day
7069*The day of the week on which a week in the calendar begins.
70700 means Sunday (default), 1 means Monday, and so on.Vview-diary-entries-initially
7071*Non-nil means display current date's diary entries on entry.
7072The diary is displayed in another window when the calendar is first displayed,
7073if the current date is visible.  The number of days of diary entries displayed
7074is governed by the variable `number-of-diary-entries'.Vnumber-of-diary-entries
7075*Specifies how many days of diary entries are to be displayed initially.
7076This variable affects the diary display when the command M-x diary is used,
7077or if the value of the variable `view-diary-entries-initially' is t.  For
7078example, if the default value 1 is used, then only the current day's diary
7079entries will be displayed.  If the value 2 is used, then both the current
7080day's and the next day's entries will be displayed.
7081
7082The value can also be a vector such as [0 2 2 2 2 4 1]; this value
7083says to display no diary entries on Sunday, the display the entries
7084for the current date and the day after on Monday through Thursday,
7085display Friday through Monday's entries on Friday, and display only
7086Saturday's entries on Saturday.
7087
7088This variable does not affect the diary display with the `d' command
7089from the calendar; in that case, the prefix argument controls the
7090number of days of diary entries displayed.Vmark-diary-entries-in-calendar
7091*Non-nil means mark dates with diary entries, in the calendar window.
7092The marking symbol is specified by the variable `diary-entry-marker'.Vview-calendar-holidays-initially
7093*Non-nil means display holidays for current three month period on entry.
7094The holidays are displayed in another window when the calendar is first
7095displayed.Vmark-holidays-in-calendar
7096*Non-nil means mark dates of holidays in the calendar window.
7097The marking symbol is specified by the variable `calendar-holiday-marker'.Vall-hebrew-calendar-holidays
7098*If nil, show only major holidays from the Hebrew calendar.
7099This means only those Jewish holidays that appear on secular calendars.
7100
7101If t, show all the holidays that would appear in a complete Hebrew calendar.Vall-christian-calendar-holidays
7102*If nil, show only major holidays from the Christian calendar.
7103This means only those Christian holidays that appear on secular calendars.
7104
7105If t, show all the holidays that would appear in a complete Christian
7106calendar.Vall-islamic-calendar-holidays
7107*If nil, show only major holidays from the Islamic calendar.
7108This means only those Islamic holidays that appear on secular calendars.
7109
7110If t, show all the holidays that would appear in a complete Islamic
7111calendar.Vcalendar-load-hook
7112*List of functions to be called after the calendar is first loaded.
7113This is the place to add key bindings to `calendar-mode-map'.Vinitial-calendar-window-hook
7114*List of functions to be called when the calendar window is first opened.
7115The functions invoked are called after the calendar window is opened, but
7116once opened is never called again.  Leaving the calendar with the `q' command
7117and reentering it will cause these functions to be called again.Vtoday-visible-calendar-hook
7118*List of functions called whenever the current date is visible.
7119This can be used, for example, to replace today's date with asterisks; a
7120function `calendar-star-date' is included for this purpose:
7121    (setq today-visible-calendar-hook 'calendar-star-date)
7122It can also be used to mark the current date with calendar-today-marker;
7123a function is also provided for this:
7124    (setq today-visible-calendar-hook 'calendar-mark-today)
7125
7126The corresponding variable `today-invisible-calendar-hook' is the list of
7127functions called when the calendar function was called when the current
7128date is not visible in the window.
7129
7130Other than the use of the provided functions, the changing of any
7131characters in the calendar buffer by the hooks may cause the failure of the
7132functions that move by days and weeks.Vtoday-invisible-calendar-hook
7133*List of functions called whenever the current date is not visible.
7134
7135The corresponding variable `today-visible-calendar-hook' is the list of
7136functions called when the calendar function was called when the current
7137date is visible in the window.
7138
7139Other than the use of the provided functions, the changing of any
7140characters in the calendar buffer by the hooks may cause the failure of the
7141functions that move by days and weeks.Vdiary-file
7142*Name of the file in which one's personal diary of dates is kept.
7143
7144The file's entries are lines in any of the forms
7145
7146            MONTH/DAY
7147            MONTH/DAY/YEAR
7148            MONTHNAME DAY
7149            MONTHNAME DAY, YEAR
7150            DAYNAME
7151
7152at the beginning of the line; the remainder of the line is the diary entry
7153string for that date.  MONTH and DAY are one or two digit numbers, YEAR is
7154a number and may be written in full or abbreviated to the final two digits.
7155If the date does not contain a year, it is generic and applies to any year.
7156DAYNAME entries apply to any date on which is on that day of the week.
7157MONTHNAME and DAYNAME can be spelled in full, abbreviated to three
7158characters (with or without a period), capitalized or not.  Any of DAY,
7159MONTH, or MONTHNAME, YEAR can be `*' which matches any day, month, or year,
7160respectively.
7161
7162The European style (in which the day precedes the month) can be used
7163instead, if you execute `european-calendar' when in the calendar, or set
7164`european-calendar-style' to t in your .emacs file.  The European forms are
7165
7166            DAY/MONTH
7167            DAY/MONTH/YEAR
7168            DAY MONTHNAME
7169            DAY MONTHNAME YEAR
7170            DAYNAME
7171
7172To revert to the default American style from the European style, execute
7173`american-calendar' in the calendar.
7174
7175A diary entry can be preceded by a diary-nonmarking-symbol (ordinarily `&')
7176to make that entry nonmarking--that is, it will not be marked on dates in
7177the calendar window but will appear in a diary window.
7178
7179Multiline diary entries are made by indenting lines after the first with
7180either a TAB or one or more spaces.
7181
7182Lines not in one the above formats are ignored.  Here are some sample diary
7183entries (in the default American style):
7184
7185     12/22/1988 Twentieth wedding anniversary!!
7186     &1/1. Happy New Year!
7187     10/22 Ruth's birthday.
7188     21: Payday
7189     Tuesday--weekly meeting with grad students at 10am
7190              Supowit, Shen, Bitner, and Kapoor to attend.
7191     1/13/89 Friday the thirteenth!!
7192     &thu 4pm squash game with Lloyd.
7193     mar 16 Dad's birthday
7194     April 15, 1989 Income tax due.
7195     &* 15 time cards due.
7196
7197If the first line of a diary entry consists only of the date or day name with
7198no trailing blanks or punctuation, then that line is not displayed in the
7199diary window; only the continuation lines is shown.  For example, the
7200single diary entry
7201
7202     02/11/1989
7203      Bill Blattner visits Princeton today
7204      2pm Cognitive Studies Committee meeting
7205      2:30-5:30 Lizzie at Lawrenceville for `Group Initiative'
7206      4:00pm Jamie Tappenden
7207      7:30pm Dinner at George and Ed's for Alan Ryan
7208      7:30-10:00pm dance at Stewart Country Day School
7209
7210will appear in the diary window without the date line at the beginning.  This
7211facility allows the diary window to look neater, but can cause confusion if
7212used with more than one day's entries displayed.
7213
7214Diary entries can be based on Lisp sexps.  For example, the diary entry
7215
7216      %%(diary-block 11 1 1990 11 10 1990) Vacation
7217
7218causes the diary entry "Vacation" to appear from November 1 through November
721910, 1990.  Other functions available are `diary-float', `diary-anniversary',
7220`diary-cyclic', `diary-day-of-year', `diary-iso-date', `diary-french-date',
7221`diary-hebrew-date', `diary-islamic-date', `diary-mayan-date',
7222`diary-yahrzeit', `diary-sunrise-sunset', `diary-phases-of-moon',
7223`diary-parasha', `diary-omer', `diary-rosh-hodesh', and
7224`diary-sabbath-candles'.  See the documentation for the function
7225`list-sexp-diary-entries' for more details.
7226
7227Diary entries based on the Hebrew and/or the Islamic calendar are also
7228possible, but because these are somewhat slow, they are ignored
7229unless you set the `nongregorian-diary-listing-hook' and the
7230`nongregorian-diary-marking-hook' appropriately.  See the documentation
7231for these functions for details.
7232
7233Diary files can contain directives to include the contents of other files; for
7234details, see the documentation for the variable `list-diary-entries-hook'.Vdiary-nonmarking-symbol
7235*Symbol indicating that a diary entry is not to be marked in the calendar.Vhebrew-diary-entry-symbol
7236*Symbol indicating a diary entry according to the Hebrew calendar.Vislamic-diary-entry-symbol
7237*Symbol indicating a diary entry according to the Islamic calendar.Vdiary-include-string
7238*The string indicating inclusion of another file of diary entries.
7239See the documentation for the function `include-other-diary-files'.Vsexp-diary-entry-symbol
7240*The string used to indicate a sexp diary entry in diary-file.
7241See the documentation for the function `list-sexp-diary-entries'.Vabbreviated-calendar-year
7242*Interpret a two-digit year DD in a diary entry as either 19DD or 20DD.
7243For the Gregorian calendar; similarly for the Hebrew and Islamic calendars.
7244If this variable is nil, years must be written in full.Veuropean-calendar-style
7245*Use the European style of dates in the diary and in any displays.
7246If this variable is t, a date 1/2/1990 would be interpreted as February 1,
72471990.  The accepted European date styles are
7248
7249            DAY/MONTH
7250            DAY/MONTH/YEAR
7251            DAY MONTHNAME
7252            DAY MONTHNAME YEAR
7253            DAYNAME
7254
7255Names can be capitalized or not, written in full, or abbreviated to three
7256characters with or without a period.Vamerican-date-diary-pattern
7257*List of pseudo-patterns describing the American patterns of date used.
7258See the documentation of diary-date-forms for an explanation.Veuropean-date-diary-pattern
7259*List of pseudo-patterns describing the European patterns of date used.
7260See the documentation of diary-date-forms for an explanation.Veuropean-calendar-display-form
7261*Pseudo-pattern governing the way a date appears in the European style.
7262See the documentation of calendar-date-display-form for an explanation.Vamerican-calendar-display-form
7263*Pseudo-pattern governing the way a date appears in the American style.
7264See the documentation of calendar-date-display-form for an explanation.Vprint-diary-entries-hook
7265*List of functions called after a temporary diary buffer is prepared.
7266The buffer shows only the diary entries currently visible in the diary
7267buffer.  The default just does the printing.  Other uses might include, for
7268example, rearranging the lines into order by day and time, saving the buffer
7269instead of deleting it, or changing the function used to do the printing.Vlist-diary-entries-hook
7270*List of functions called after diary file is culled for relevant entries.
7271It is to be used for diary entries that are not found in the diary file.
7272
7273A function `include-other-diary-files' is provided for use as the value of
7274this hook.  This function enables you to use shared diary files together
7275with your own.  The files included are specified in the diary-file by lines
7276of the form
7277
7278        #include "filename"
7279
7280This is recursive; that is, #include directives in files thus included are
7281obeyed.  You can change the "#include" to some other string by changing
7282the variable `diary-include-string'.  When you use `include-other-diary-files'
7283as part of the list-diary-entries-hook, you will probably also want to use the
7284function `mark-included-diary-files' as part of the mark-diary-entries-hook.
7285
7286For example, you could use
7287
7288     (setq list-diary-entries-hook
7289       '(include-other-diary-files sort-diary-entries))
7290     (setq diary-display-hook 'fancy-diary-display)
7291
7292in your .emacs file to cause the fancy diary buffer to be displayed with
7293diary entries from various included files, each day's entries sorted into
7294lexicographic order.Vdiary-hook
7295*List of functions called after the display of the diary.
7296Can be used for appointment notification.Vdiary-display-hook
7297*List of functions that handle the display of the diary.
7298If nil (the default), `simple-diary-display' is used.  Use `ignore' for no
7299diary display.
7300
7301Ordinarily, this just displays the diary buffer (with holidays indicated in
7302the mode line), if there are any relevant entries.  At the time these
7303functions are called, the variable `diary-entries-list' is a list, in order
7304by date, of all relevant diary entries in the form of ((MONTH DAY YEAR)
7305STRING), where string is the diary entry for the given date.  This can be
7306used, for example, a different buffer for display (perhaps combined with
7307holidays), or produce hard copy output.
7308
7309A function `fancy-diary-display' is provided as an alternative
7310choice for this hook; this function prepares a special noneditable diary
7311buffer with the relevant diary entries that has neat day-by-day arrangement
7312with headings.  The fancy diary buffer will show the holidays unless the
7313variable `holidays-in-diary-buffer' is set to nil.  Ordinarily, the fancy
7314diary buffer will not show days for which there are no diary entries, even
7315if that day is a holiday; if you want such days to be shown in the fancy
7316diary buffer, set the variable `diary-list-include-blanks' to t.Vnongregorian-diary-listing-hook
7317*List of functions called for listing diary file and included files.
7318As the files are processed for diary entries, these functions are used to cull
7319relevant entries.  You can use either or both of `list-hebrew-diary-entries'
7320and `list-islamic-diary-entries'.  The documentation for these functions
7321describes the style of such diary entries.Vmark-diary-entries-hook
7322*List of functions called after marking diary entries in the calendar.
7323
7324A function `mark-included-diary-files' is also provided for use as the
7325mark-diary-entries-hook; it enables you to use shared diary files together
7326with your own.  The files included are specified in the diary-file by lines
7327of the form
7328        #include "filename"
7329This is recursive; that is, #include directives in files thus included are
7330obeyed.  You can change the "#include" to some other string by changing the
7331variable `diary-include-string'.  When you use `mark-included-diary-files' as
7332part of the mark-diary-entries-hook, you will probably also want to use the
7333function `include-other-diary-files' as part of the list-diary-entries-hook.Vnongregorian-diary-marking-hook
7334*List of functions called for marking diary file and included files.
7335As the files are processed for diary entries, these functions are used to cull
7336relevant entries.  You can use either or both of `mark-hebrew-diary-entries'
7337and `mark-islamic-diary-entries'.  The documentation for these functions
7338describes the style of such diary entries.Vdiary-list-include-blanks
7339*If nil, do not include days with no diary entry in the list of diary entries.
7340Such days will then not be shown in the the fancy diary buffer, even if they
7341are holidays.Vholidays-in-diary-buffer
7342*Non-nil means include holidays in the diary display.
7343The holidays appear in the mode line of the diary buffer, or in the
7344fancy diary buffer next to the date.  This slows down the diary functions
7345somewhat; setting it to nil makes the diary display faster.Vgeneral-holidays
7346*General holidays.  Default value is for the United States.
7347See the documentation for `calendar-holidays' for details.Vlocal-holidays
7348*Local holidays.
7349See the documentation for `calendar-holidays' for details.Vother-holidays
7350*User defined holidays.
7351See the documentation for `calendar-holidays' for details.Vhebrew-holidays
7352*Jewish holidays.
7353See the documentation for `calendar-holidays' for details.Vchristian-holidays
7354*Christian holidays.
7355See the documentation for `calendar-holidays' for details.Vislamic-holidays
7356*Islamic holidays.
7357See the documentation for `calendar-holidays' for details.Vsolar-holidays
7358*Sun-related holidays.
7359See the documentation for `calendar-holidays' for details.Fcalendar
7360Display a three-month calendar in another window.
7361The three months appear side by side, with the current month in the middle
7362surrounded by the previous and next months.  The cursor is put on today's date.
7363
7364If called with an optional prefix argument, prompts for month and year.
7365
7366This function is suitable for execution in a .emacs file; appropriate setting
7367of the variable `view-diary-entries-initially' will cause the diary entries for
7368the current date to be displayed in another window.  The value of the variable
7369`number-of-diary-entries' controls the number of days of diary entries
7370displayed upon initial display of the calendar.
7371
7372An optional prefix argument ARG causes the calendar displayed to be ARG
7373months in the future if ARG is positive or in the past if ARG is negative;
7374in this case the cursor goes on the first day of the month.
7375
7376Once in the calendar window, future or past months can be moved into view.
7377Arbitrary months can be displayed, or the calendar can be scrolled forward
7378or backward.
7379
7380The cursor can be moved forward or backward by one day, one week, one month,
7381or one year.  All of these commands take prefix arguments which, when negative,
7382cause movement in the opposite direction.  For convenience, the digit keys
7383and the minus sign are automatically prefixes.  The window is replotted as
7384necessary to display the desired date.
7385
7386Diary entries can be marked on the calendar or displayed in another window.
7387
7388Use M-x describe-mode for details of the key bindings in the calendar window.
7389
7390The Gregorian calendar is assumed.
7391
7392After loading the calendar, the hooks given by the variable
7393`calendar-load-hook' are run.  This the place to add key bindings to the
7394calendar-mode-map.
7395
7396After preparing the calendar window initially, the hooks given by the variable
7397`initial-calendar-window-hook' are run.
7398
7399The hooks given by the variable `today-visible-calendar-hook' are run
7400everytime the calendar window gets scrolled, if the current date is visible
7401in the window.  If it is not visible, the hooks given by the variable
7402`today-invisible-calendar-hook' are run.  Thus, for example, setting
7403`today-visible-calendar-hook' to 'calendar-star-date will cause today's date
7404to be replaced by asterisks to highlight it whenever it is in the window.Flist-yahrzeit-dates
7405List Yahrzeit dates for *Gregorian* DEATH-DATE from START-YEAR to END-YEAR.
7406When called interactively from the calendar window, the date of death is taken
7407from the cursor position.Fdescribe-buffer-case-table
7408Describe the case table of the current buffer.Fset-case-syntax-delims
7409Make characters L and R a matching pair of non-case-converting delimiters.
7410This sets the entries for L and R in TABLE, which is a string
7411that will be used as the downcase part of a case table.
7412It also modifies `standard-syntax-table' to
7413indicate left and right delimiters.Fset-case-syntax-pair
7414Make characters UC and LC a pair of inter-case-converting letters.
7415This sets the entries for characters UC and LC in TABLE, which is a string
7416that will be used as the downcase part of a case table.
7417It also modifies `standard-syntax-table' to give them the syntax of
7418word constituents.Fset-case-syntax
7419Make characters C case-invariant with syntax SYNTAX.
7420This sets the entries for character C in TABLE, which is a string
7421that will be used as the downcase part of a case table.
7422It also modifies `standard-syntax-table'.
7423SYNTAX should be " ", "w", "." or "_".Frepeat-matching-complex-command
7424Edit and re-evaluate complex command with name matching PATTERN.
7425Matching occurrences are displayed, most recent first, until you select
7426a form for evaluation.  If PATTERN is empty (or nil), every form in the
7427command history is offered.  The form is placed in the minibuffer for
7428editing and the result is evaluated.Flist-command-history
7429List history of commands typed to minibuffer.
7430The number of commands listed is controlled by `list-command-history-max'.
7431Calls value of `list-command-history-filter' (if non-nil) on each history
7432element to judge if that element should be excluded from the list.
7433
7434The buffer is left in Command History mode.Fcommand-history-mode
7435Major mode for examining commands from `command-history'.
7436The number of commands listed is controlled by `list-command-history-max'.
7437The command history is filtered by `list-command-history-filter' if non-nil.
7438Use \<command-history-map>\[command-history-repeat] to repeat the command on the current line.
7439
7440Otherwise much like Emacs-Lisp Mode except that there is no self-insertion
7441and digits provide prefix arguments.  Tab does not indent.
7442\{command-history-map}
7443Calls the value of `command-history-hook' if that is non-nil.
7444The Command History listing is recomputed each time this mode is invoked.Fmake-comint
7445Make a comint process NAME in a buffer, running PROGRAM.
7446The name of the buffer is made by surrounding NAME with `*'s.
7447If there is already a running process in that buffer, it is not restarted.
7448Optional third arg STARTFILE is the name of a file to send the contents of to
7449the process.  Any more args are arguments to PROGRAM.Fcomint-run
7450Run PROGRAM in a comint buffer and switch to it.
7451The buffer name is made by surrounding the file name of PROGRAM with `*'s.
7452The file name is used to make a symbol name, such as `comint-sh-hook', and any
7453hooks on this symbol are run in the buffer.
7454See `make-comint' and `comint-exec'.Fcompare-windows
7455Compare text in current window with text in next window.
7456Compares the text starting at point in each window,
7457moving over text in each one as far as they match.
7458
7459A prefix arg means ignore changes in whitespace.
7460The variable `compare-windows-whitespace' controls how whitespace is skipped.
7461If `compare-ignore-case' is non-nil, changes in case are also ignored.Vcompilation-mode-hook
7462*List of hook functions run by `compilation-mode' (see `run-hooks').Vcompilation-window-height
7463*Number of lines in a compilation window.  If nil, use Emacs default.Vcompilation-buffer-name-function
7464Function to compute the name of a compilation buffer.
7465The function receives one argument, the name of the major mode of the
7466compilation buffer.  It should return a string.
7467nil means compute the name with `(concat "*" (downcase major-mode) "*")'.Vcompilation-finish-function
7468*Function to call when a compilation process finishes.
7469It is called with two arguments: the compilation buffer, and a string
7470describing how the process finished.Vcompilation-search-path
7471*List of directories to search for source files named in error messages.
7472Elements should be directory names, not file names of directories.
7473nil as an element means to try the default directory.Fcompile
7474Compile the program including the current buffer.  Default: run `make'.
7475Runs COMMAND, a shell command, in a separate process asynchronously
7476with output going to the buffer `*compilation*'.
7477
7478You can then use the command \[next-error] to find the next error message
7479and move to the source code that caused it.
7480
7481To run more than one compilation at once, start one and rename the
7482`*compilation*' buffer to some other name with \[rename-buffer].
7483Then start the next one.
7484
7485The name used for the buffer is actually whatever is returned by
7486the function in `compilation-buffer-name-function', so you can set that
7487to a function that generates a unique name.Fgrep
7488Run grep, with user-specified args, and collect output in a buffer.
7489While grep runs asynchronously, you can use the \[next-error] command
7490to find the text that grep hits refer to.
7491
7492This command uses a special history list for its arguments, so you can
7493easily repeat a grep command.Fcompilation-minor-mode
7494Toggle compilation minor mode.
7495With arg, turn compilation mode on if and only if arg is positive.
7496See `compilation-mode'.Fnext-error
7497Visit next compilation error message and corresponding source code.
7498This operates on the output from the \[compile] command.
7499If all preparsed error messages have been processed,
7500the error message buffer is checked for new ones.
7501
7502A prefix arg specifies how many error messages to move;
7503negative means move back to previous error messages.
7504Just C-u as a prefix means reparse the error message buffer
7505and start at the first error.
7506
7507\[next-error] normally applies to the most recent compilation started,
7508but as long as you are in the middle of parsing errors from one compilation
7509output buffer, you stay with that compilation output buffer.
7510
7511Use \[next-error] in a compilation output buffer to switch to
7512processing errors from that compilation.
7513
7514See variables `compilation-parse-errors-function' and
7515`compilation-error-regexp-alist' for customization ideas.Fcookie
7516Return a random phrase from PHRASE-FILE.  When the phrase file
7517is read in, display STARTMSG at beginning of load, ENDMSG at end.Fcookie-insert
7518Insert random phrases from PHRASE-FILE; COUNT of them.  When the phrase file
7519is read in, display STARTMSG at beginning of load, ENDMSG at end.Fcookie-snarf
7520Reads in the PHRASE-FILE, returns it as a vector of strings.
7521Emit STARTMSG and ENDMSG before and after.  Caches the result; second
7522and subsequent calls on the same file won't go to disk.Fshuffle-vector
7523Randomly permute the elements of VECTOR (all permutations equally likely)Fc++-mode
7524Major mode for editing C++ code.  Very much like editing C code.
7525Expression and list commands understand all C++ brackets.
7526Tab at left margin indents for C++ code
7527Comments are delimited with /* ... */ {or with // ... <newline>}
7528Paragraphs are separated by blank lines only.
7529Delete converts tabs to spaces as it moves back.
7530\{c++-mode-map}
7531Variables controlling indentation style:
7532 c-tab-always-indent
7533    Non-nil means TAB in C mode should always reindent the current line,
7534    regardless of where in the line point is when the TAB command is used.
7535    Default is t.
7536 c-auto-newline
7537    Non-nil means automatically newline before and after braces,
7538    and after colons and semicolons, inserted in C code.
7539 c-indent-level
7540    Indentation of C statements within surrounding block.
7541    The surrounding block's indentation is the indentation
7542    of the line on which the open-brace appears.
7543 c-continued-statement-offset
7544    Extra indentation given to a substatement, such as the
7545    then-clause of an if or body of a while.
7546 c-continued-brace-offset
7547    Extra indentation given to a brace that starts a substatement.
7548    This is in addition to c-continued-statement-offset.
7549 c-brace-offset
7550    Extra indentation for line if it starts with an open brace.
7551 c-brace-imaginary-offset
7552    An open brace following other text is treated as if it were
7553    this far to the right of the start of its line.
7554 c-argdecl-indent
7555    Indentation level of declarations of C function arguments.
7556 c-label-offset
7557    Extra indentation for line that is a label, or case or ``default:'', or
7558    ``public:'' or ``private:'', or ``protected:''.
7559 c++-electric-colon
7560    If non-nil at invocation of c++-mode (t is the default) colon electricly
7561    indents.
7562 c++-empty-arglist-indent
7563    If non-nil, a function declaration or invocation which ends a line with a
7564    left paren is indented this many extra spaces, instead of flush with the
7565    left paren.
7566 c++-friend-offset
7567    Offset of C++ friend declarations relative to member declarations.
7568 c++-member-init-indent
7569    Indentation level of member initializations in function declarations,
7570    if they are on a separate line beginning with a colon.
7571 c++-continued-member-init-offset
7572    Extra indentation for continuation lines of member initializations; NIL
7573    means to align with previous initializations rather than with the colon.
7574
7575Settings for K&R, BSD, and Stroustrup indentation styles are
7576  c-indent-level                5    8    4
7577  c-continued-statement-offset  5    8    4
7578  c-continued-brace-offset                0
7579  c-brace-offset               -5   -8    0
7580  c-brace-imaginary-offset                0
7581  c-argdecl-indent              0    8    4
7582  c-label-offset               -5   -8   -4
7583  c++-empty-arglist-indent                4
7584  c++-friend-offset                       0
7585
7586Turning on C++ mode calls the value of the variable `c++-mode-hook' with
7587no args if that value is non-nil.Fdabbrev-expand
7588Expand previous word "dynamically".
7589Expands to the most recent, preceding word for which this is a prefix.
7590If no suitable preceding word is found, words following point are considered.
7591
7592If `case-fold-search' and `case-replace' are non-nil (usually true)
7593then the substituted word may be case-adjusted to match the abbreviation
7594that you had typed.  This takes place if the substituted word, as found,
7595is all lower case, or if it is at the beginning of a sentence and only
7596its first letter was upper case.
7597
7598A positive prefix arg N says to take the Nth backward DISTINCT
7599possibility.  A negative argument says search forward.  The variable
7600`dabbrev-backward-only' may be used to limit the direction of search to
7601backward if set non-nil.
7602
7603If the cursor has not moved from the end of the previous expansion and
7604no argument is given, replace the previously-made expansion
7605with the next possible expansion not yet tried.Fdebug
7606Enter debugger.  To return, type \<debugger-mode-map>`\[debugger-continue]'.
7607Arguments are mainly for use when this is called from the internals
7608of the evaluator.
7609
7610You may call with no args, or you may pass nil as the first arg and
7611any other args you like.  In that case, the list of args after the
7612first will be printed into the backtrace buffer.Fdebug-on-entry
7613Request FUNCTION to invoke debugger each time it is called.
7614If you tell the debugger to continue, FUNCTION's execution proceeds.
7615This works by modifying the definition of FUNCTION,
7616which must be written in Lisp, not predefined.
7617Use \[cancel-debug-on-entry] to cancel the effect of this command.
7618Redefining FUNCTION also cancels it.Fcancel-debug-on-entry
7619Undo effect of \[debug-on-entry] on FUNCTION.
7620If argument is nil or an empty string, cancel for all functions.Fdelete-selection-mode
7621Toggle Delete Selection mode.
7622When ON, typed text replaces the selection if the selection is active.
7623When OFF, typed text is just inserted at point.Fdefine-derived-mode
7624Create a new mode as a variant of an existing mode.
7625
7626The arguments to this command are as follow:
7627
7628PARENT:    the name of the command for the parent mode (ie. text-mode).
7629CHILD:     the name of the command for the derived mode.
7630NAME:      a string which will appear in the status line (ie. "Hypertext")
7631DOCSTRING: an optional documentation string--if you do not supply one,
7632           the function will attempt to invent something useful.
7633BODY:      forms to execute just before running the
7634           hooks for the new mode.
7635
7636Here is how you could define LaTeX-Thesis mode as a variant of LaTeX mode:
7637
7638  (define-derived-mode LaTeX-thesis-mode LaTeX-mode "LaTeX-Thesis")
7639
7640You could then make new key bindings for `LaTeX-thesis-mode-map'
7641without changing regular LaTeX mode.  In this example, BODY is empty,
7642and DOCSTRING is generated by default.
7643
7644On a more complicated level, the following command uses sgml-mode as
7645the parent, and then sets the variable `case-fold-search' to nil:
7646
7647  (define-derived-mode article-mode sgml-mode "Article"
7648    "Major mode for editing technical articles."
7649    (setq case-fold-search nil))
7650
7651Note that if the documentation string had been left out, it would have
7652been generated automatically, with a reference to the keymap.Fderived-mode-init-mode-variables
7653Initialise variables for a new mode.
7654Right now, if they don't already exist, set up a blank keymap, an
7655empty syntax table, and an empty abbrev table -- these will be merged
7656the first time the mode is used.Fdiary
7657Generate the diary window for ARG days starting with the current date.
7658If no argument is provided, the number of days of diary entries is governed
7659by the variable `number-of-diary-entries'.  This function is suitable for
7660execution in a `.emacs' file.Fdiff
7661Find and display the differences between OLD and NEW files.
7662Interactively the current buffer's file name is the default for NEW
7663and a backup file for NEW is the default for OLD.
7664With prefix arg, prompt for diff switches.Fdiff-backup
7665Diff this file with its backup file or vice versa.
7666Uses the latest backup, if there are several numerical backups.
7667If this file is a backup, diff it with its original.
7668The backup file is the first file given to `diff'.Vdired-listing-switches
7669*Switches passed to `ls' for dired.  MUST contain the `l' option.
7670May contain all other options that don't contradict `-l';
7671may contain even `F', `b', `i' and `s'.  See also the variable
7672`dired-ls-F-marks-symlinks' concerning the `F' switch.Vdired-chown-program
7673Name of chown command (usually `chown' or `/etc/chown').Vdired-ls-F-marks-symlinks
7674*Informs dired about how `ls -lF' marks symbolic links.
7675Set this to t if `insert-directory-program' with `-lF' marks the symbolic link
7676itself with a trailing @ (usually the case under Ultrix).
7677
7678Example: if `ln -s foo bar; ls -F bar' gives `bar -> foo', set it to
7679nil (the default), if it gives `bar@ -> foo', set it to t.
7680
7681Dired checks if there is really a @ appended.  Thus, if you have a
7682marking `ls' program on one host and a non-marking on another host, and
7683don't care about symbolic links which really end in a @, you can
7684always set this variable to t.Vdired-trivial-filenames
7685*Regexp of files to skip when finding first file of a directory.
7686A value of nil means move to the subdir line.
7687A value of t means move to first file.Vdired-keep-marker-rename
7688*Controls marking of renamed files.
7689If t, files keep their previous marks when they are renamed.
7690If a character, renamed files (whether previously marked or not)
7691are afterward marked with that character.Vdired-keep-marker-copy
7692*Controls marking of copied files.
7693If t, copied files are marked if and as the corresponding original files were.
7694If a character, copied files are unconditionally marked with that character.Vdired-keep-marker-hardlink
7695*Controls marking of newly made hard links.
7696If t, they are marked if and as the files linked to were marked.
7697If a character, new links are unconditionally marked with that character.Vdired-keep-marker-symlink
7698*Controls marking of newly made symbolic links.
7699If t, they are marked if and as the files linked to were marked.
7700If a character, new links are unconditionally marked with that character.Vdired-dwim-target
7701*If non-nil, dired tries to guess a default target directory.
7702This means: if there is a dired buffer displayed in the next window,
7703use its current subdir, instead of the current subdir of this dired buffer.
7704
7705The target is used in the prompt for file copy, rename etc.Vdired-copy-preserve-time
7706*If non-nil, Dired preserves the last-modified time in a file copy.
7707(This works on only some systems.)Fdired
7708"Edit" directory DIRNAME--delete, rename, print, etc. some files in it.
7709Optional second argument SWITCHES specifies the `ls' options used.
7710(Interactively, use a prefix argument to be able to specify SWITCHES.)
7711Dired displays a list of files in DIRNAME (which may also have
7712shell wildcards appended to select certain files).  If DIRNAME is a cons,
7713its first element is taken as the directory name and the resr as an explicit
7714list of files to make directory entries for.
7715\<dired-mode-map>You can move around in it with the usual commands.
7716You can flag files for deletion with \[dired-flag-file-deletion] and then
7717delete them by typing \[dired-do-flagged-delete].
7718Type \[describe-mode] after entering dired for more info.
7719
7720If DIRNAME is already in a dired buffer, that buffer is used without refresh.Fdired-other-window
7721"Edit" directory DIRNAME.  Like `dired' but selects in another window.Fdired-other-frame
7722"Edit" directory DIRNAME.  Like `dired' but makes a new frame.Fdired-noselect
7723Like `dired' but returns the dired buffer as value, does not select it.Fdired-diff
7724Compare file at point with file FILE using `diff'.
7725FILE defaults to the file at the mark.
7726The prompted-for file is the first file given to `diff'.
7727With prefix arg, prompt for second argument SWITCHES,
7728 which is options for `diff'.Fdired-backup-diff
7729Diff this file with its backup file or vice versa.
7730Uses the latest backup, if there are several numerical backups.
7731If this file is a backup, diff it with its original.
7732The backup file is the first file given to `diff'.
7733With prefix arg, prompt for argument SWITCHES which is options for `diff'.Fdired-do-chmod
7734Change the mode of the marked (or next ARG) files.
7735This calls chmod, thus symbolic modes like `g+w' are allowed.Fdired-do-chgrp
7736Change the group of the marked (or next ARG) files.Fdired-do-chown
7737Change the owner of the marked (or next ARG) files.Fdired-do-print
7738Print the marked (or next ARG) files.
7739Uses the shell command coming from variables `lpr-command' and
7740`lpr-switches' as default.Fdired-do-shell-command
7741Run a shell command COMMAND on the marked files.
7742If no files are marked or a specific numeric prefix arg is given,
7743the next ARG files are used.  Just \[universal-argument] means the current file.
7744The prompt mentions the file(s) or the marker, as appropriate.
7745
7746If there is output, it goes to a separate buffer.
7747
7748Normally the command is run on each file individually.
7749However, if there is a `*' in the command then it is run
7750just once with the entire file list substituted there.
7751
7752No automatic redisplay of dired buffers is attempted, as there's no
7753telling what files the command may have changed.  Type
7754\[dired-do-redisplay] to redisplay the marked files.
7755
7756The shell command has the top level directory as working directory, so
7757output files usually are created there instead of in a subdir.Fdired-do-kill-lines
7758Kill all marked lines (not the files).
7759With a prefix argument, kill that many lines starting with the current line.
7760(A negative argument kills lines before the current line.)
7761To kill an entire subdirectory, go to its directory header line
7762and use this command with a prefix argument (the value does not matter).Fdired-do-compress
7763Compress or uncompress marked (or next ARG) files.Fdired-do-byte-compile
7764Byte compile marked (or next ARG) Emacs Lisp files.Fdired-do-load
7765Load the marked (or next ARG) Emacs Lisp files.Fdired-do-redisplay
7766Redisplay all marked (or next ARG) files.
7767If on a subdir line, redisplay that subdirectory.  In that case,
7768a prefix arg lets you edit the `ls' switches used for the new listing.Fdired-string-replace-match
7769Replace first match of REGEXP in STRING with NEWTEXT.
7770If it does not match, nil is returned instead of the new string.
7771Optional arg LITERAL means to take NEWTEXT literally.
7772Optional arg GLOBAL means to replace all matches.Fdired-create-directory
7773Create a directory called DIRECTORY.Fdired-do-copy
7774Copy all marked (or next ARG) files, or copy the current file.
7775This normally preserves the last-modified date when copying.
7776When operating on just the current file, you specify the new name.
7777When operating on multiple or marked files, you specify a directory
7778and new symbolic links are made in that directory
7779with the same names that the files currently have.Fdired-do-symlink
7780Make symbolic links to current file or all marked (or next ARG) files.
7781When operating on just the current file, you specify the new name.
7782When operating on multiple or marked files, you specify a directory
7783and new symbolic links are made in that directory
7784with the same names that the files currently have.Fdired-do-hardlink
7785Add names (hard links) current file or all marked (or next ARG) files.
7786When operating on just the current file, you specify the new name.
7787When operating on multiple or marked files, you specify a directory
7788and new hard links are made in that directory
7789with the same names that the files currently have.Fdired-do-rename
7790Rename current file or all marked (or next ARG) files.
7791When renaming just the current file, you specify the new name.
7792When renaming multiple or marked files, you specify a directory.Fdired-do-rename-regexp
7793Rename marked files containing REGEXP to NEWNAME.
7794As each match is found, the user must type a character saying
7795  what to do with it.  For directions, type \[help-command] at that time.
7796NEWNAME may contain \=\<n> or \& as in `query-replace-regexp'.
7797REGEXP defaults to the last regexp used.
7798With a zero prefix arg, renaming by regexp affects the complete
7799  pathname - usually only the non-directory part of file names is used
7800  and changed.Fdired-do-copy-regexp
7801Copy all marked files containing REGEXP to NEWNAME.
7802See function `dired-rename-regexp' for more info.Fdired-do-hardlink-regexp
7803Hardlink all marked files containing REGEXP to NEWNAME.
7804See function `dired-rename-regexp' for more info.Fdired-do-symlink-regexp
7805Symlink all marked files containing REGEXP to NEWNAME.
7806See function `dired-rename-regexp' for more info.Fdired-upcase
7807Rename all marked (or next ARG) files to upper case.Fdired-downcase
7808Rename all marked (or next ARG) files to lower case.Fdired-maybe-insert-subdir
7809Insert this subdirectory into the same dired buffer.
7810If it is already present, just move to it (type \[dired-do-redisplay] to refresh),
7811  else inserts it at its natural place (as `ls -lR' would have done).
7812With a prefix arg, you may edit the ls switches used for this listing.
7813  You can add `R' to the switches to expand the whole tree starting at
7814  this subdirectory.
7815This function takes some pains to conform to `ls -lR' output.Fdired-prev-subdir
7816Go to previous subdirectory, regardless of level.
7817When called interactively and not on a subdir line, go to this subdir's line.Fdired-goto-subdir
7818Go to end of header line of DIR in this dired buffer.
7819Return value of point on success, otherwise return nil.
7820The next char is either \n, or \r if DIR is hidden.Fdired-mark-subdir-files
7821Mark all files except `.' and `..'.Fdired-kill-subdir
7822Remove all lines of current subdirectory.
7823Lower levels are unaffected.Fdired-tree-up
7824Go up ARG levels in the dired tree.Fdired-tree-down
7825Go down in the dired tree.Fdired-hide-subdir
7826Hide or unhide the current subdirectory and move to next directory.
7827Optional prefix arg is a repeat factor.
7828Use \[dired-hide-all] to (un)hide all directories.Fdired-hide-all
7829Hide all subdirectories, leaving only their header lines.
7830If there is already something hidden, make everything visible again.
7831Use \[dired-hide-subdir] to (un)hide a particular subdirectory.Fdired-jump
7832Jump to dired buffer corresponding to current buffer.
7833If in a file, dired the current directory and move to file's line.
7834If in dired already, pop up a level and goto old directory's line.
7835In case the proper dired file line cannot be found, refresh the dired
7836buffer and try again.Fdisassemble
7837Print disassembled code for OBJECT in (optional) BUFFER.
7838OBJECT can be a symbol defined as a function, or a function itself
7839(a lambda expression or a compiled-function object).
7840If OBJECT is not already compiled, we compile it, but do not
7841redefine OBJECT if it is a symbol.Fdescribe-current-display-table
7842Describe the display table in use in the selected window and buffer.Fmake-display-table
7843Return a new, empty display table.Fstandard-display-8bit
7844Display characters in the range L to H literally.Fstandard-display-default
7845Display characters in the range L to H using the default notation.Fstandard-display-ascii
7846Display character C using string S.
7847S is usually a terminal-dependent escape sequence.
7848This function is meaningless for an X frame.Fstandard-display-g1
7849Display character C as character SC in the g1 character set.
7850This function assumes that your terminal uses the SO/SI characters;
7851it is meaningless for an X frame.Fstandard-display-graphic
7852Display character C as character GC in graphics character set.
7853This function assumes VT100-compatible escapes; it is meaningless for an
7854X frame.Fstandard-display-underline
7855Display character C as character UC plus underlining.Fstandard-display-european
7856Toggle display of European characters encoded with ISO 8859.
7857When enabled, characters in the range of 160 to 255 display not
7858as octal escapes, but as accented characters.
7859With prefix argument, enable European character display iff arg is positive.Fdissociated-press
7860Dissociate the text of the current buffer.
7861Output goes in buffer named *Dissociation*,
7862which is redisplayed each time text is added to it.
7863Every so often the user must say whether to continue.
7864If ARG is positive, require ARG chars of continuity.
7865If ARG is negative, require -ARG words of continuity.
7866Default is 2.Fdoctor
7867Switch to *doctor* buffer and start giving psychotherapy.Fdouble-mode
7868Toggle double mode.
7869With prefix arg, turn double mode on iff arg is positive.
7870
7871When double mode is on, some keys will insert will insert different
7872strings when pressed twice.  See variable `double-map' for details.Fdunnet
7873Switch to *dungeon* buffer and start game.Feasy-menu-define
7874Define a menu bar submenu in maps MAPS, according to MENU.
7875The arguments SYMBOL and DOC are ignored; they are present for
7876compatibility only.  SYMBOL is not evaluated.  In other Emacs versions
7877these arguments may be used as a variable to hold the menu data, and a
7878doc string for that variable.
7879
7880The first element of MENU must be a string.  It is the menu bar item name.
7881The rest of the elements are menu items.
7882
7883A menu item is usually a vector of three elements:  [NAME CALLBACK ENABLE]
7884
7885NAME is a string--the menu item name.
7886
7887CALLBACK is a command to run when the item is chosen,
7888or a list to evaluate when the item is chosen.
7889
7890ENABLE is a symbol; if its value is non-nil, the item is enabled
7891for selection.
7892
7893A menu item can be a string.  Then that string appears in the menu as
7894unselectable text.  A string consisting solely of hyphens is displayed
7895as a solid horizontal line.
7896
7897A menu item can be a list.  It is treated as a submenu.
7898The first element should be the submenu name.  That's used as the
7899menu item in the top-level menu.  The cdr of the submenu list
7900is a list of menu items, as above.Felectric-buffer-list
7901Pops up a buffer describing the set of Emacs buffers.
7902Vaguely like ITS lunar select buffer; combining typeoutoid buffer
7903listing with menuoid buffer selection.
7904
7905If the very next character typed is a space then the buffer list
7906window disappears.  Otherwise, one may move around in the buffer list
7907window, marking buffers to be selected, saved or deleted.
7908
7909To exit and select a new buffer, type a space when the cursor is on
7910the appropriate line of the buffer-list window.  Other commands are
7911much like those of buffer-menu-mode.
7912
7913Calls value of `electric-buffer-menu-mode-hook' on entry if non-nil.
7914
7915\{electric-buffer-menu-mode-map}FElectric-command-history-redo-expression
7916Edit current history line in minibuffer and execute result.
7917With prefix arg NOCONFIRM, execute current line as-is without editing.Fdef-edebug-spec
7918Set the edebug-form-spec property of SYMBOL according to SPEC.
7919Both SYMBOL and SPEC are unevaluated. The SPEC can be 0, t, a symbol
7920(naming a function), or a list.Fedebug-eval-top-level-form
7921Evaluate a top level form, such as a defun or defmacro.
7922This is like `eval-defun', but the code is always instrumented for Edebug.
7923Print its name in the minibuffer and leave point where it is,
7924or if an error occurs, leave point after it with mark at the original
7925point.Fediff-patch-file
7926Run Ediff by patching FILE-TP-PATCH.Fediff-files
7927Run Ediff on a pair files, FILE-A and FILE-B.Fediff-buffers
7928Run Ediff on a pair of buffers, BUFFER-A and BUFFER-B.Fediff-patch-buffer
7929Run Ediff by patching BUFFER-NAME.Fvc-ediff
7930Run ediff on version REV of the current buffer in another window.
7931If the current buffer is named `F', the version is named `F.~REV~'.
7932If `F.~REV~' already exists, it is used instead of being re-created.Frcs-ediff
7933Run Ediff on the current buffer, comparing it with previous RCS revision.
7934With prefix argument, prompts for revision name.Fediff-files-remote
7935Run Ediff on remote files, FILE-A and FILE-B.Vedmacro-eight-bits
7936*Non-nil if edit-kbd-macro should leave 8-bit characters intact.
7937Default nil means to write characters above \177 in octal notation.Fedit-kbd-macro
7938Edit a keyboard macro.
7939At the prompt, type any key sequence which is bound to a keyboard macro.
7940Or, type `C-x e' or RET to edit the last keyboard macro, `C-h l' to edit
7941the last 100 keystrokes as a keyboard macro, or `M-x' to edit a macro by
7942its command name.
7943With a prefix argument, format the macro in a more concise way.Fedit-last-kbd-macro
7944Edit the most recently defined keyboard macro.Fedit-named-kbd-macro
7945Edit a keyboard macro which has been given a name by `name-last-kbd-macro'.Fread-kbd-macro
7946Read the region as a keyboard macro definition.
7947The region is interpreted as spelled-out keystrokes, e.g., "M-x abc RET".
7948See documentation for `edmacro-mode' for details.
7949Leading/trailing "C-x (" and "C-x )" in the text are allowed and ignored.
7950The resulting macro is installed as the "current" keyboard macro.
7951
7952In Lisp, may also be called with a single STRING argument in which case
7953the result is returned rather than being installed as the current macro.
7954The result will be a string if possible, otherwise an event vector.
7955Second argument NEED-VECTOR means to return an event vector always.Fformat-kbd-macro
7956Return the keyboard macro MACRO as a human-readable string.
7957This string is suitable for passing to `read-kbd-macro'.
7958Second argument VERBOSE means to put one command per line with comments.
7959If VERBOSE is `1', put everything on one line.  If VERBOSE is omitted
7960or nil, use a compact 80-column format.Finsert-kbd-macro
7961Insert in buffer the definition of kbd macro NAME, as Lisp code.
7962Optional second arg KEYS means also record the keys it is on
7963(this is the prefix argument, when calling interactively).
7964
7965This Lisp code will, when executed, define the kbd macro with the same
7966definition it has now.  If you say to record the keys, the Lisp code
7967will also rebind those keys to the macro.  Only global key bindings
7968are recorded since executing this Lisp code always makes global
7969bindings.
7970
7971To save a kbd macro, visit a file of Lisp code such as your `~/.emacs',
7972use this command, and then save the file.Fedt-emulation-on
7973Emulate DEC's EDT editor.
7974Note that many keys are rebound; including nearly all keypad keys.
7975Use \[edt-emulation-off] to undo all rebindings except the keypad keys.Freport-emacs-bug
7976Report a bug in GNU Emacs.
7977Prompts for bug subject.  Leaves you in a mail buffer.Femerge-files
7978Run Emerge on two files.Femerge-files-with-ancestor
7979Run Emerge on two files, giving another file as the ancestor.Femerge-buffers
7980Run Emerge on two buffers.Femerge-buffers-with-ancestor
7981Run Emerge on two buffers, giving another buffer as the ancestor.Femerge-revisions
7982Emerge two RCS revisions of a file.Femerge-revisions-with-ancestor
7983Emerge two RCS revisions of a file, with another revision as ancestor.Fsetenv
7984Set the value of the environment variable named VARIABLE to VALUE.
7985VARIABLE should be a string.  VALUE is optional; if not provided or is
7986`nil', the environment variable VARIABLE will be removed.
7987This function works by modifying `process-environment'.Vtags-file-name
7988*File name of tags table.
7989To switch to a new tags table, setting this variable is sufficient.
7990If you set this variable, do not also set `tags-table-list'.
7991Use the `etags' program to make a tags table file.Vtags-table-list
7992*List of file names of tags tables to search.
7993An element that is a directory means the file "TAGS" in that directory.
7994To switch to a new list of tags tables, setting this variable is sufficient.
7995If you set this variable, do not also set `tags-file-name'.
7996Use the `etags' program to make a tags table file.Vtags-add-tables
7997*Control whether to add a new tags table to the current list.
7998t means do; nil means don't (always start a new list).
7999Any other value means ask the user whether to add a new tags table
8000to the current list (as opposed to starting a new list).Vfind-tag-hook
8001*Hook to be run by \[find-tag] after finding a tag.  See `run-hooks'.
8002The value in the buffer in which \[find-tag] is done is used,
8003not the value in the buffer \[find-tag] goes to.Vfind-tag-default-function
8004*A function of no arguments used by \[find-tag] to pick a default tag.
8005If nil, and the symbol that is the value of `major-mode'
8006has a `find-tag-default-function' property (see `put'), that is used.
8007Otherwise, `find-tag-default' is used.Fvisit-tags-table
8008Tell tags commands to use tags table file FILE.
8009FILE should be the name of a file created with the `etags' program.
8010A directory name is ok too; it means file TAGS in that directory.
8011
8012Normally \[visit-tags-table] sets the global value of `tags-file-name'.
8013With a prefix arg, set the buffer-local value instead.
8014When you find a tag with \[find-tag], the buffer it finds the tag
8015in is given a local value of this variable which is the name of the tags
8016file the tag was in.Ftags-table-files
8017Return a list of files in the current tags table.
8018Assumes the tags table is the current buffer.
8019File names returned are absolute.Ffind-tag-noselect
8020Find tag (in current tags table) whose name contains TAGNAME.
8021Returns the buffer containing the tag's definition and moves its point there,
8022but does not select the buffer.
8023The default for TAGNAME is the expression in the buffer near point.
8024
8025If second arg NEXT-P is t (interactively, with prefix arg), search for
8026another tag that matches the last tagname or regexp used.  When there are
8027multiple matches for a tag, more exact matches are found first.  If NEXT-P
8028is the atom `-' (interactively, with prefix arg that is a negative number
8029or just \[negative-argument]), pop back to the previous tag gone to.
8030
8031If third arg REGEXP-P is non-nil, treat TAGNAME as a regexp.
8032
8033See documentation of variable `tags-file-name'.Ffind-tag
8034Find tag (in current tags table) whose name contains TAGNAME.
8035Select the buffer containing the tag's definition, and move point there.
8036The default for TAGNAME is the expression in the buffer around or before point.
8037
8038If second arg NEXT-P is t (interactively, with prefix arg), search for
8039another tag that matches the last tagname or regexp used.  When there are
8040multiple matches for a tag, more exact matches are found first.  If NEXT-P
8041is the atom `-' (interactively, with prefix arg that is a negative number
8042or just \[negative-argument]), pop back to the previous tag gone to.
8043
8044See documentation of variable `tags-file-name'.Ffind-tag-other-window
8045Find tag (in current tags table) whose name contains TAGNAME.
8046Select the buffer containing the tag's definition in another window, and
8047move point there.  The default for TAGNAME is the expression in the buffer
8048around or before point.
8049
8050If second arg NEXT-P is t (interactively, with prefix arg), search for
8051another tag that matches the last tagname or regexp used.  When there are
8052multiple matches for a tag, more exact matches are found first.  If NEXT-P
8053is negative (interactively, with prefix arg that is a negative number or
8054just \[negative-argument]), pop back to the previous tag gone to.
8055
8056See documentation of variable `tags-file-name'.Ffind-tag-other-frame
8057Find tag (in current tags table) whose name contains TAGNAME.
8058Select the buffer containing the tag's definition in another frame, and
8059move point there.  The default for TAGNAME is the expression in the buffer
8060around or before point.
8061
8062If second arg NEXT-P is t (interactively, with prefix arg), search for
8063another tag that matches the last tagname or regexp used.  When there are
8064multiple matches for a tag, more exact matches are found first.  If NEXT-P
8065is negative (interactively, with prefix arg that is a negative number or
8066just \[negative-argument]), pop back to the previous tag gone to.
8067
8068See documentation of variable `tags-file-name'.Ffind-tag-regexp
8069Find tag (in current tags table) whose name matches REGEXP.
8070Select the buffer containing the tag's definition and move point there.
8071
8072If second arg NEXT-P is t (interactively, with prefix arg), search for
8073another tag that matches the last tagname or regexp used.  When there are
8074multiple matches for a tag, more exact matches are found first.  If NEXT-P
8075is negative (interactively, with prefix arg that is a negative number or
8076just \[negative-argument]), pop back to the previous tag gone to.
8077
8078If third arg OTHER-WINDOW is non-nil, select the buffer in another window.
8079
8080See documentation of variable `tags-file-name'.Fnext-file
8081Select next file among files in current tags table.
8082
8083A first argument of t (prefix arg, if interactive) initializes to the
8084beginning of the list of files in the tags table.  If the argument is
8085neither nil nor t, it is evalled to initialize the list of files.
8086
8087Non-nil second argument NOVISIT means use a temporary buffer
8088 to save time and avoid uninteresting warnings.
8089
8090Value is nil if the file was already visited;
8091if the file was newly read in, the value is the filename.Ftags-loop-continue
8092Continue last \[tags-search] or \[tags-query-replace] command.
8093Used noninteractively with non-nil argument to begin such a command (the
8094argument is passed to `next-file', which see).
8095Two variables control the processing we do on each file:
8096the value of `tags-loop-scan' is a form to be executed on each file
8097to see if it is interesting (it returns non-nil if so)
8098and `tags-loop-operate' is a form to execute to operate on an interesting file
8099If the latter returns non-nil, we exit; otherwise we scan the next file.Ftags-search
8100Search through all files listed in tags table for match for REGEXP.
8101Stops when a match is found.
8102To continue searching for next match, use command \[tags-loop-continue].
8103
8104See documentation of variable `tags-file-name'.Ftags-query-replace
8105Query-replace-regexp FROM with TO through all files listed in tags table.
8106Third arg DELIMITED (prefix arg) means replace only word-delimited matches.
8107If you exit (\[keyboard-quit] or ESC), you can resume the query-replace
8108with the command \[tags-loop-continue].
8109
8110See documentation of variable `tags-file-name'.Flist-tags
8111Display list of tags in file FILE.
8112FILE should not contain a directory specification.Ftags-apropos
8113Display list of all tags in tags table REGEXP matches.Fselect-tags-table
8114Select a tags table file from a menu of those you have already used.
8115The list of tags tables to select from is stored in `tags-table-file-list';
8116see the doc of that variable if you want to add names to the list.Fcomplete-tag
8117Perform tags completion on the text around point.
8118Completes to the set of names listed in the current tags table.
8119The string to complete is chosen in the same way as the default
8120for \[find-tag] (which see).Vfind-ls-option
8121*Option to `find' to produce an `ls -l'-type listing.Vfind-grep-options
8122*Option to grep to be as silent as possible.
8123On Berkeley systems, this is `-s', for others it seems impossible to
8124suppress all output, so `-l' is used to print nothing more than the
8125file name.Ffind-dired
8126Run `find' and go into dired-mode on a buffer of the output.
8127The command run (after changing into DIR) is
8128
8129    find . \( ARGS \) -lsFfind-name-dired
8130Search DIR recursively for files matching the globbing pattern PATTERN,
8131and run dired on those files.
8132PATTERN is a shell wildcard (not an Emacs regexp) and need not be quoted.
8133The command run (after changing into DIR) is
8134
8135    find . -name 'PATTERN' -lsFfind-grep-dired
8136Find files in DIR containing a regexp ARG and start Dired on output.
8137The command run (after changing into DIR) is
8138
8139    find . -exec grep -s ARG {} \; -ls
8140
8141Thus ARG can also contain additional grep options.Fenable-flow-control
8142Toggle flow control handling.
8143When handling is enabled, user can type C-s as C-\, and C-q as C-^.
8144With arg, enable flow control mode if arg is positive, otherwise disable.Fenable-flow-control-on
8145Enable flow control if using one of a specified set of terminal types.
8146Use `(enable-flow-control-on "vt100" "h19")' to enable flow control
8147on VT-100 and H19 terminals.  When flow control is enabled,
8148you must type C-\ to get the effect of a C-s, and type C-^
8149to get the effect of a C-q.Vfont-lock-mode-hook
8150Function or functions to run on entry to Font Lock mode.Ffont-lock-mode
8151Toggle Font Lock mode.
8152With arg, turn Font Lock mode on if and only if arg is positive.
8153
8154When Font Lock mode is enabled, text is fontified as you type it:
8155
8156 - comments are displayed in `font-lock-comment-face';
8157     (That is a variable whose value should be a face name.)
8158 - strings are displayed in `font-lock-string-face';
8159 - documentation strings are displayed in `font-lock-doc-string-face';
8160 - function and variable names in their defining forms are displayed
8161   in `font-lock-function-name-face';
8162 - and certain other expressions are displayed in other faces
8163   according to the value of the variable `font-lock-keywords'.
8164
8165When you turn Font Lock mode on/off, the buffer is fontified/defontified.
8166To fontify a buffer without having newly typed text become fontified, you
8167can use \[font-lock-fontify-buffer].Fforms-mode
8168Major mode to visit files in a field-structured manner using a form.
8169
8170Commands:                        Equivalent keys in read-only mode:
8171 TAB            forms-next-field          TAB
8172 \C-c TAB       forms-next-field
8173 \C-c <         forms-first-record         <
8174 \C-c >         forms-last-record          >
8175 \C-c ?         describe-mode              ?
8176 \C-c \C-k      forms-delete-record
8177 \C-c \C-q      forms-toggle-read-only     q
8178 \C-c \C-o      forms-insert-record
8179 \C-c \C-l      forms-jump-record          l
8180 \C-c \C-n      forms-next-record          n
8181 \C-c \C-p      forms-prev-record          p
8182 \C-c \C-s      forms-search               s
8183 \C-c \C-x      forms-exit                 x
8184Fforms-find-file
8185Visit a file in Forms mode.Fforms-find-file-other-window
8186Visit a file in Forms mode in other window.Vfortran-tab-mode-default
8187*Default tabbing/carriage control style for empty files in Fortran mode.
8188A value of t specifies tab-digit style of continuation control.
8189A value of nil specifies that continuation lines are marked
8190with a character in column 6.Ffortran-mode
8191Major mode for editing Fortran code.
8192\[fortran-indent-line] indents the current Fortran line correctly.
8193DO statements must not share a common CONTINUE.
8194
8195Type ;? or ;\[help-command] to display a list of built-in abbrevs for Fortran keywords.
8196
8197Key definitions:
8198\{fortran-mode-map}
8199
8200Variables controlling indentation style and extra features:
8201
8202 comment-start
8203    Normally nil in Fortran mode.  If you want to use comments
8204    starting with `!', set this to the string "!".
8205 fortran-do-indent
8206    Extra indentation within do blocks.  (default 3)
8207 fortran-if-indent
8208    Extra indentation within if blocks.  (default 3)
8209 fortran-structure-indent
8210    Extra indentation within structure, union, map and interface blocks.
8211    (default 3)
8212 fortran-continuation-indent
8213    Extra indentation applied to continuation statements.  (default 5)
8214 fortran-comment-line-extra-indent
8215    Amount of extra indentation for text within full-line comments. (default 0)
8216 fortran-comment-indent-style
8217    nil    means don't change indentation of text in full-line comments,
8218    fixed  means indent that text at `fortran-comment-line-extra-indent' beyond
8219           the value of `fortran-minimum-statement-indent-fixed' (for fixed
8220           format continuation style) or `fortran-minimum-statement-indent-tab'
8221           (for TAB format continuation style).
8222    relative  means indent at `fortran-comment-line-extra-indent' beyond the
8223 	      indentation for a line of code.
8224    (default 'fixed)
8225 fortran-comment-indent-char
8226    Single-character string to be inserted instead of space for
8227    full-line comment indentation.  (default " ")
8228 fortran-minimum-statement-indent-fixed
8229    Minimum indentation for Fortran statements in fixed format mode. (def.6)
8230 fortran-minimum-statement-indent-tab
8231    Minimum indentation for Fortran statements in TAB format mode. (default 9)
8232 fortran-line-number-indent
8233    Maximum indentation for line numbers.  A line number will get
8234    less than this much indentation if necessary to avoid reaching
8235    column 5.  (default 1)
8236 fortran-check-all-num-for-matching-do
8237    Non-nil causes all numbered lines to be treated as possible "continue"
8238    statements.  (default nil)
8239 fortran-blink-matching-if
8240    From a Fortran ENDIF statement, blink the matching IF statement.
8241    Also, from an ENDDO statement, blink on matching DO [WHILE] statement.
8242    (default nil)
8243 fortran-continuation-string
8244    Single-character string to be inserted in column 5 of a continuation
8245    line.  (default "$")
8246 fortran-comment-region
8247    String inserted by \[fortran-comment-region] at start of each line in
8248    region.  (default "c$$$")
8249 fortran-electric-line-number
8250    Non-nil causes line number digits to be moved to the correct column
8251    as typed.  (default t)
8252 fortran-break-before-delimiters
8253    Non-nil causes `fortran-do-auto-fill' breaks lines before delimiters.
8254    (default t)
8255 fortran-startup-message
8256    Set to nil to inhibit message first time Fortran mode is used.
8257
8258Turning on Fortran mode calls the value of the variable `fortran-mode-hook'
8259with no args, if that value is non-nil.Fgnus
8260Read network news.
8261If optional argument CONFIRM is non-nil, ask NNTP server.Fgnus-post-news
8262Begin editing a new USENET news article to be posted.
8263Type \[describe-mode] once editing the article to get a list of commands.Fgomoku
8264Start a Gomoku game between you and Emacs.
8265If a game is in progress, this command allow you to resume it.
8266If optional arguments N and M are given, an N by M board is used.
8267
8268You and Emacs play in turn by marking a free square.  You mark it with X
8269and Emacs marks it with O. The winner is the first to get five contiguous
8270marks horizontally, vertically or in diagonal.
8271
8272You play by moving the cursor over the square you choose and hitting
8273\<gomoku-mode-map>\[gomoku-human-plays].
8274Use \[describe-mode] for more info.Fset-gosmacs-bindings
8275Rebind some keys globally to make GNU Emacs resemble Gosling Emacs.
8276Use \[set-gnu-bindings] to restore previous global bindings.Fgdb
8277Run gdb on program FILE in buffer *gud-FILE*.
8278The directory containing FILE becomes the initial working directory
8279and source-file directory for your debugger.Fsdb
8280Run sdb on program FILE in buffer *gud-FILE*.
8281The directory containing FILE becomes the initial working directory
8282and source-file directory for your debugger.Fdbx
8283Run dbx on program FILE in buffer *gud-FILE*.
8284The directory containing FILE becomes the initial working directory
8285and source-file directory for your debugger.Fxdb
8286Run xdb on program FILE in buffer *gud-FILE*.
8287The directory containing FILE becomes the initial working directory
8288and source-file directory for your debugger.
8289
8290You can set the variable 'gud-xdb-directories' to a list of program source
8291directories if your program contains sources from more than one directory.Fperldb
8292Run perldb on program FILE in buffer *gud-FILE*.
8293The directory containing FILE becomes the initial working directory
8294and source-file directory for your debugger.Fhanoi
8295Towers of Hanoi diversion.  Argument is number of rings.Vthree-step-help
8296*Non-nil means give more info about Help command in three steps.
8297The three steps are simple prompt, prompt with all options,
8298and window listing and describing the options.
8299A value of nil means skip the middle step, so that
8300\[help-command] \[help-command] gives the window that lists the options.FHelper-describe-bindings
8301Describe local key bindings of current mode.FHelper-help
8302Provide help for current mode.Fhexl-mode
8303\<hexl-mode-map>
8304A major mode for editing binary files in hex dump format.
8305
8306This function automatically converts a buffer into the hexl format
8307using the function `hexlify-buffer'.
8308
8309Each line in the buffer has an "address" (displayed in hexadecimal)
8310representing the offset into the file that the characters on this line
8311are at and 16 characters from the file (displayed as hexadecimal
8312values grouped every 16 bits) and as their ASCII values.
8313
8314If any of the characters (displayed as ASCII characters) are
8315unprintable (control or meta characters) they will be replaced as
8316periods.
8317
8318If `hexl-mode' is invoked with an argument the buffer is assumed to be
8319in hexl format.
8320
8321A sample format:
8322
8323  HEX ADDR: 0001 0203 0405 0607 0809 0a0b 0c0d 0e0f     ASCII-TEXT
8324  --------  ---- ---- ---- ---- ---- ---- ---- ----  ----------------
8325  00000000: 5468 6973 2069 7320 6865 786c 2d6d 6f64  This is hexl-mod
8326  00000010: 652e 2020 4561 6368 206c 696e 6520 7265  e.  Each line re
8327  00000020: 7072 6573 656e 7473 2031 3620 6279 7465  presents 16 byte
8328  00000030: 7320 6173 2068 6578 6164 6563 696d 616c  s as hexadecimal
8329  00000040: 2041 5343 4949 0a61 6e64 2070 7269 6e74   ASCII.and print
8330  00000050: 6162 6c65 2041 5343 4949 2063 6861 7261  able ASCII chara
8331  00000060: 6374 6572 732e 2020 416e 7920 636f 6e74  cters.  Any cont
8332  00000070: 726f 6c20 6f72 206e 6f6e 2d41 5343 4949  rol or non-ASCII
8333  00000080: 2063 6861 7261 6374 6572 730a 6172 6520   characters.are
8334  00000090: 6469 7370 6c61 7965 6420 6173 2070 6572  displayed as per
8335  000000a0: 696f 6473 2069 6e20 7468 6520 7072 696e  iods in the prin
8336  000000b0: 7461 626c 6520 6368 6172 6163 7465 7220  table character
8337  000000c0: 7265 6769 6f6e 2e0a                      region..
8338
8339Movement is as simple as movement in a normal emacs text buffer.  Most
8340cursor movement bindings are the same (ie. Use \[hexl-backward-char], \[hexl-forward-char], \[hexl-next-line], and \[hexl-previous-line]
8341to move the cursor left, right, down, and up).
8342
8343Advanced cursor movement commands (ala \[hexl-beginning-of-line], \[hexl-end-of-line], \[hexl-beginning-of-buffer], and \[hexl-end-of-buffer]) are
8344also supported.
8345
8346There are several ways to change text in hexl mode:
8347
8348ASCII characters (character between space (0x20) and tilde (0x7E)) are
8349bound to self-insert so you can simply type the character and it will
8350insert itself (actually overstrike) into the buffer.
8351
8352\[hexl-quoted-insert] followed by another keystroke allows you to insert the key even if
8353it isn't bound to self-insert.  An octal number can be supplied in place
8354of another key to insert the octal number's ASCII representation.
8355
8356\[hexl-insert-hex-char] will insert a given hexadecimal value (if it is between 0 and 0xFF)
8357into the buffer at the current point.
8358
8359\[hexl-insert-octal-char] will insert a given octal value (if it is between 0 and 0377)
8360into the buffer at the current point.
8361
8362\[hexl-insert-decimal-char] will insert a given decimal value (if it is between 0 and 255)
8363into the buffer at the current point.
8364
8365\[hexl-mode-exit] will exit hexl-mode.
8366
8367Note: saving the file with any of the usual Emacs commands
8368will actually convert it back to binary format while saving.
8369
8370You can use \[hexl-find-file] to visit a file in hexl-mode.
8371
8372\[describe-bindings] for advanced commands.Fhexl-find-file
8373Edit file FILENAME in hexl-mode.
8374Switch to a buffer visiting file FILENAME, creating one in none exists.Fhexlify-buffer
8375Convert a binary buffer to hexl formatFhide-ifdef-mode
8376Toggle Hide-Ifdef mode.  This is a minor mode, albeit a large one.
8377With ARG, turn Hide-Ifdef mode on iff arg is positive.
8378In Hide-Ifdef mode, code within #ifdef constructs that the C preprocessor
8379would eliminate may be hidden from view.  Several variables affect
8380how the hiding is done:
8381
8382hide-ifdef-env
8383	An association list of defined and undefined symbols for the
8384	current buffer.  Initially, the global value of `hide-ifdef-env'
8385	is used.
8386
8387hide-ifdef-define-alist
8388	An association list of defined symbol lists.
8389        Use `hide-ifdef-set-define-alist' to save the current `hide-ifdef-env'
8390        and `hide-ifdef-use-define-alist' to set the current `hide-ifdef-env'
8391        from one of the lists in `hide-ifdef-define-alist'.
8392
8393hide-ifdef-lines
8394	Set to non-nil to not show #if, #ifdef, #ifndef, #else, and
8395	#endif lines when hiding.
8396
8397hide-ifdef-initially
8398	Indicates whether `hide-ifdefs' should be called when Hide-Ifdef mode
8399	is activated.
8400
8401hide-ifdef-read-only
8402	Set to non-nil if you want to make buffers read only while hiding.
8403	After `show-ifdefs', read-only status is restored to previous value.
8404
8405\{hide-ifdef-mode-map}Vhide-ifdef-initially
8406*Non-nil if `hide-ifdefs' should be called when Hide-Ifdef mode
8407is first activated.Vhide-ifdef-read-only
8408*Set to non-nil if you want buffer to be read-only while hiding text.Vhide-ifdef-lines
8409*Set to t if you don't want to see the #ifX, #else, and #endif lines.Vhippie-expand-try-functions-list
8410The list of expansion functions tried in order by `hippie-expand'.
8411To change the behavior of `hippie-expand', remove, change the order of,
8412or insert functions in this list.Vhippie-expand-verbose
8413*Non-nil makes `hippie-expand' output which function it is trying.Vhippie-expand-max-buffers
8414*The maximum number of buffers (apart from the current) searched.
8415If nil, all buffers are searched.Vhippie-expand-ignore-buffers
8416*A list specifying which buffers not to search (if not current).
8417Can contain both regexps matching buffer names (as strings) and major modes
8418(as atoms)Fhippie-expand
8419Try to expand text before point, using multiple methods.
8420The expansion functions in `hippie-expand-try-functions-list' are
8421tried in order, until a possible expansion is found.  Repeated
8422application of `hippie-expand' inserts successively possible
8423expansions.
8424With a positive numeric argument, jumps directly to the ARG next
8425function in this list.  With a negative argument or just \[universal-argument],
8426undoes the expansion.Fmake-hippie-expand-function
8427Construct a function similar to `hippie-expand'.
8428Make it use the expansion functions in TRY-LIST.  An optional second
8429argument VERBOSE non-nil makes the function verbose.Ficomplete-prime-session
8430Prep emacs v 19 for more finely-grained minibuffer completion-feedback.
8431
8432You can inhibit icomplete after loading by setting icomplete-inhibit
8433non-nil.  Set the var back to nil to re-enable icomplete.Fielm
8434Interactively evaluate Emacs Lisp expressions.
8435Switches to the buffer *ielm*, or creates it if it does not exist.Fimenu
8436Jump to a place in the buffer chosen using a buffer menu or mouse menu.
8437See `imenu-choose-buffer-index' for more information.Vinferior-lisp-filter-regexp
8438*What not to save on inferior Lisp's input history.
8439Input matching this regexp is not saved on the input history in Inferior Lisp
8440mode.  Default is whitespace followed by 0 or 1 single-letter colon-keyword
8441(as in :a, :c, etc.)Vinferior-lisp-program
8442*Program name for invoking an inferior Lisp with for Inferior Lisp mode.Vinferior-lisp-load-command
8443*Format-string for building a Lisp expression to load a file.
8444This format string should use `%s' to substitute a file name
8445and should result in a Lisp expression that will command the inferior Lisp
8446to load that file.  The default works acceptably on most Lisps.
8447The string "(progn (load \"%s\" :verbose nil :print t) (values))\
8448"
8449produces cosmetically superior output for this application,
8450but it works only in Common Lisp.Vinferior-lisp-prompt
8451Regexp to recognise prompts in the Inferior Lisp mode.
8452Defaults to "^[^> \n]*>+:? *", which works pretty good for Lucid, kcl,
8453and franz.  This variable is used to initialize `comint-prompt-regexp' in the
8454Inferior Lisp buffer.
8455
8456More precise choices:
8457Lucid Common Lisp: "^\(>\|\(->\)+\) *"
8458franz: "^\(->\|<[0-9]*>:\) *"
8459kcl: "^>+ *"
8460
8461This is a fine thing to set in your .emacs file.Vinferior-lisp-mode-hook
8462*Hook for customising Inferior Lisp mode.Finferior-lisp
8463Run an inferior Lisp process, input and output via buffer `*inferior-lisp*'.
8464If there is a process already running in `*inferior-lisp*', just switch
8465to that buffer.
8466With argument, allows you to edit the command line (default is value
8467of `inferior-lisp-program').  Runs the hooks from
8468`inferior-lisp-mode-hook' (after the `comint-mode-hook' is run).
8469(Type \[describe-mode] in the process buffer for a list of commands.)Finfo
8470Enter Info, the documentation browser.
8471Optional argument FILE specifies the file to examine;
8472the default is the top-level directory of Info.
8473
8474In interactive use, a prefix argument directs this command
8475to read a file name from the minibuffer.Finfo-standalone
8476Run Emacs as a standalone Info reader.
8477Usage:  emacs -f info-standalone [filename]
8478In standalone mode, \<Info-mode-map>\[Info-exit] exits Emacs itself.FInfo-goto-emacs-command-node
8479Go to the Info node in the Emacs manual for command COMMAND.
8480The command is found by looking up in Emacs manual's Command Index.FInfo-goto-emacs-key-command-node
8481Go to the Info node in the Emacs manual the command bound to KEY, a string.
8482Interactively, if the binding is execute-extended-command, a command is read.
8483The command is found by looking up in Emacs manual's Command Index.FInfo-tagify
8484Create or update Info-file tag table in current buffer.FInfo-split
8485Split an info file into an indirect file plus bounded-size subfiles.
8486Each subfile will be up to 50,000 characters plus one node.
8487
8488To use this command, first visit a large Info file that has a tag
8489table.  The buffer is modified into a (small) indirect info file which
8490should be saved in place of the original visited file.
8491
8492The subfiles are written in the same directory the original file is
8493in, with names generated by appending `-' and a number to the original
8494file name.  The indirect file still functions as an Info file, but it
8495contains just the tag table and a directory of subfiles.FInfo-validate
8496Check current buffer for validity as an Info file.
8497Check that every node pointer points to an existing node.Fbatch-info-validate
8498Runs `Info-validate' on the files remaining on the command line.
8499Must be used only with -batch, and kills Emacs on completion.
8500Each file will be processed even if an error occurred previously.
8501For example, invoke "emacs -batch -f batch-info-validate $info/ ~/*.info"Fiso-accents-mode
8502Toggle ISO Accents mode, in which accents modify the following letter.
8503This permits easy insertion of accented characters according to ISO-8859-1.
8504When Iso-accents mode is enabled, accent character keys
8505(`, ', ", ^, / and ~) do not self-insert; instead, they modify the following
8506letter key so that it inserts an ISO accented letter.
8507
8508The variable `iso-accents-enable' specifies the list of characters to
8509enable as accents.  If you don't need all of them, remove the ones you
8510don't need from that list.
8511
8512Special combinations: ~c gives a c with cedilla,
8513~d gives a d with dash.
8514"s gives German sharp s.
8515/a gives a with ring.
8516/e gives an a-e ligature.
8517~< and ~> give guillemets.
8518
8519With an argument, a positive argument enables ISO Accents mode,
8520and a negative argument disables it.Vispell-dictionary-alist
8521An alist of dictionaries and their associated parameters.
8522
8523Each element of this list is also a list:
8524
8525    (DICTIONARY-NAME
8526        CASECHARS NOT-CASECHARS OTHERCHARS MANY-OTHERCHARS-P
8527        ISPELL-ARGS EXTENDED-CHARACTER-MODE)
8528
8529DICTIONARY-NAME is a possible value of variable ispell-dictionary, nil
8530means the default dictionary.
8531
8532CASECHARS is a regular expression of valid characters that comprise a
8533word.
8534
8535NOT-CASECHARS is the opposite regexp of CASECHARS.
8536
8537OTHERCHARS is a regular expression of other characters that are valid
8538in word constructs.  Otherchars cannot be adjacent to each other in a
8539word, nor can they begin or end a word.  This implies we can't check
8540"Stevens'" as a correct possessive and other correct formations.
8541
8542Hint: regexp syntax requires the hyphen to be declared first here.
8543
8544MANY-OTHERCHARS-P is non-nil if many otherchars are to be allowed in a
8545word instead of only one.
8546
8547ISPELL-ARGS is a list of additional arguments passed to the ispell
8548subprocess.
8549
8550EXTENDED-CHARACTER-MODE should be used when dictionaries are used which
8551have been configured in ispell's parse.y.  (For example, umlauts
8552can be encoded as \"a, a\", "a, ...)  Defaults are ~tex and ~nroff
8553in english.  This has the same effect as the command-line `-T' option.
8554The buffer Major Mode controls ispell's parsing in tex or nroff mode,
8555but the dictionary can control the extended character mode.
8556Both defaults can be overruled in a buffer-local fashion. See
8557ispell-parsing-keyword for details on this.
8558
8559Note that the CASECHARS and OTHERCHARS slots of the alist should
8560contain the same character set as casechars and otherchars in the
8561language.aff file (e.g., english.aff).Fispell-word
8562Check spelling of word under or before the cursor.
8563If word not found in dictionary, display possible corrections in a window
8564and let user select.
8565  If optional argument FOLLOWING is non-nil or if ispell-following-word
8566is non-nil when called interactively, then the following word
8567(rather than preceding) will be checked when the cursor is not over a word.
8568  When the optional argument QUIETLY is non-nil or ispell-quietly is non-nil
8569when called interactively, non-corrective messages are suppressed.
8570
8571  Word syntax described by ispell-dictionary-alist (which see).
8572
8573This will check or reload the dictionary.  Use \[ispell-change-dictionary]
8574or \[ispell-region] to update the ispell process.Fispell-pdict-save
8575Check to see if the personal dictionary has been modified.
8576  If so, ask if it needs to be saved.Fispell-help
8577This gives a list of the options available when a misspelling is encountered.
8578
8579Selections are:
8580
8581DIGIT: Replace the word with a digit offered in the *Choices* buffer.
8582' ':   Accept word this time.
8583'i':   Accept word and insert into private dictionary.
8584'a':   Accept word for this session.
8585'A':   Accept word and place in `buffer-local dictionary'.
8586'r':   Replace word with typed-in value.  Rechecked.
8587'R':   Replace word with typed-in value. Query-replaced in buffer. Rechecked.
8588'?':   Show these commands.
8589'x':   Exit spelling buffer.  Move cursor to original point.
8590'X':   Exit spelling buffer.  Leaves cursor at the current point, and permits
8591        the aborted check to be completed later.
8592'q':   Quit spelling session (Kills ispell process).
8593'l':   Look up typed-in replacement in alternate dictionary.  Wildcards okay.
8594'u':   Like 'i', but the word is lower-cased first.
8595'm':   Like 'i', but allows one to include dictionary completion information.
8596'C-l':  redraws screen
8597'C-r':  recursive edit
8598'C-z':  suspend emacsFispell-kill-ispell
8599Kill current ispell process (so that you may start a fresh one).
8600With NO-ERROR, just return non-nil if there was no ispell running.Fispell-change-dictionary
8601Change ispell-dictionary (q.v.) and kill old ispell process.
8602A new one will be started as soon as necessary.
8603
8604By just answering RET you can find out what the current dictionary is.
8605
8606With prefix argument, set the default directory.Fispell-region
8607Interactively check a region for spelling errors.Fispell-buffer
8608Check the current buffer for spelling errors interactively.Fispell-complete-word
8609Look up word before or under point in dictionary (see lookup-words command)
8610and try to complete it.  If optional INTERIOR-FRAG is non-nil then the word
8611may be a character sequence inside of a word.
8612
8613Standard ispell choices are then available.Fispell-complete-word-interior-frag
8614Runs `ispell-complete-word' assuming that the word is a character sequence
8615inside of a word.Fispell-message
8616Check the spelling of a mail message or news post.
8617Don't check spelling of message headers except the Subject field.
8618Don't check included messages.
8619
8620To abort spell checking of a message REGION and send the message anyway,
8621use the 'x' or 'q' command.  (Any subsequent regions will be checked.)
8622The 'X' command aborts the message send so that you can edit the buffer.
8623
8624To spell-check whenever a message is sent, include the appropriate lines
8625in your .emacs file:
8626   (add-hook 'news-inews-hook 'ispell-message)
8627   (add-hook 'mail-send-hook  'ispell-message)
8628   (add-hook 'mh-before-send-letter-hook 'ispell-message)
8629
8630Or you can bind the function C-c i in gnus or mail by setting
8631news-reply-mode-hook or mail-mode-hook to the following lambda expression:
8632   (function (lambda () (local-set-key "\C-ci" 'ispell-message)))Vledit-save-files
8633*Non-nil means Ledit should save files before transferring to Lisp.Vledit-go-to-lisp-string
8634*Shell commands to execute to resume Lisp job.Vledit-go-to-liszt-string
8635*Shell commands to execute to resume Lisp compiler job.Fledit-mode
8636\<ledit-mode-map>Major mode for editing text and stuffing it to a Lisp job.
8637Like Lisp mode, plus these special commands:
8638  \[ledit-save-defun]	-- record defun at or after point
8639	   for later transmission to Lisp job.
8640  \[ledit-save-region] -- record region for later transmission to Lisp job.
8641  \[ledit-go-to-lisp] -- transfer to Lisp job and transmit saved text.
8642  \[ledit-go-to-liszt] -- transfer to Liszt (Lisp compiler) job
8643	   and transmit saved text.
8644\{ledit-mode-map}
8645To make Lisp mode automatically change to Ledit mode,
8646do (setq lisp-mode-hook 'ledit-from-lisp-mode)Flife
8647Run Conway's Life simulation.
8648The starting pattern is randomly selected.  Prefix arg (optional first
8649arg non-nil from a program) is the number of seconds to sleep between
8650generations (this defaults to 1).Funload-feature
8651Unload the library that provided FEATURE, restoring all its autoloads.
8652If the feature is required by any other loaded code, and optional FORCE
8653is nil, raise an error.Vlpr-switches
8654*List of strings to pass as extra switch args to `lpr' when it is invoked.Vlpr-command
8655*Shell command for printing a fileFlpr-buffer
8656Print buffer contents as with Unix command `lpr'.
8657`lpr-switches' is a list of extra switches (strings) to pass to lpr.Fprint-buffer
8658Print buffer contents as with Unix command `lpr -p'.
8659`lpr-switches' is a list of extra switches (strings) to pass to lpr.Flpr-region
8660Print region contents as with Unix command `lpr'.
8661`lpr-switches' is a list of extra switches (strings) to pass to lpr.Fprint-region
8662Print region contents as with Unix command `lpr -p'.
8663`lpr-switches' is a list of extra switches (strings) to pass to lpr.Fphases-of-moon
8664Display the quarters of the moon for last month, this month, and next month.
8665If called with an optional prefix argument, prompts for month and year.
8666
8667This function is suitable for execution in a .emacs file.Fname-last-kbd-macro
8668Assign a name to the last keyboard macro defined.
8669Argument SYMBOL is the name to define.
8670The symbol's function definition becomes the keyboard macro string.
8671Such a "function" cannot be called from Lisp, but it is a valid editor command.Finsert-kbd-macro
8672Insert in buffer the definition of kbd macro NAME, as Lisp code.
8673Optional second arg KEYS means also record the keys it is on
8674(this is the prefix argument, when calling interactively).
8675
8676This Lisp code will, when executed, define the kbd macro with the same
8677definition it has now.  If you say to record the keys, the Lisp code
8678will also rebind those keys to the macro.  Only global key bindings
8679are recorded since executing this Lisp code always makes global
8680bindings.
8681
8682To save a kbd macro, visit a file of Lisp code such as your `~/.emacs',
8683use this command, and then save the file.Fkbd-macro-query
8684Query user during kbd macro execution.
8685  With prefix argument, enters recursive edit, reading keyboard
8686commands even within a kbd macro.  You can give different commands
8687each time the macro executes.
8688  Without prefix argument, asks whether to continue running the macro.
8689Your options are: \<query-replace-map>
8690\[act]	Finish this iteration normally and continue with the next.
8691\[skip]	Skip the rest of this iteration, and start the next.
8692\[exit]	Stop the macro entirely right now.
8693\[recenter]	Redisplay the screen, then ask again.
8694\[edit]	Enter recursive edit; ask again when you exit from that.Fapply-macro-to-region-lines
8695For each complete line between point and mark, move to the beginning
8696of the line, and run the last keyboard macro.
8697
8698When called from lisp, this function takes two arguments TOP and
8699BOTTOM, describing the current region.  TOP must be before BOTTOM.
8700The optional third argument MACRO specifies a keyboard macro to
8701execute.
8702
8703This is useful for quoting or unquoting included text, adding and
8704removing comments, or producing tables where the entries are regular.
8705
8706For example, in Usenet articles, sections of text quoted from another
8707author are indented, or have each line start with `>'.  To quote a
8708section of text, define a keyboard macro which inserts `>', put point
8709and mark at opposite ends of the quoted section, and use
8710`\[apply-macro-to-region-lines]' to mark the entire section.
8711
8712Suppose you wanted to build a keyword table in C where each entry
8713looked like this:
8714
8715    { "foo", foo_data, foo_function },
8716    { "bar", bar_data, bar_function },
8717    { "baz", baz_data, baz_function },
8718
8719You could enter the names in this format:
8720
8721    foo
8722    bar
8723    baz
8724
8725and write a macro to massage a word into a table entry:
8726
8727    \C-x (
8728       \M-d { "\C-y", \C-y_data, \C-y_function },
8729    \C-x )
8730
8731and then select the region of un-tablified names and use
8732`\[apply-macro-to-region-lines]' to build the table from the names.
8733Fmail-extract-address-components
8734Given an RFC-822 ADDRESS, extract full name and canonical address.
8735Returns a list of the form (FULL-NAME CANONICAL-ADDRESS).
8736If no name can be extracted, FULL-NAME will be nil.
8737ADDRESS may be a string or a buffer.  If it is a buffer, the visible
8738 (narrowed) portion of the buffer will be interpreted as the address.
8739 (This feature exists so that the clever caller might be able to avoid
8740 consing a string.)
8741If ADDRESS contains more than one RFC-822 address, only the first is
8742 returned.  Some day this function may be extended to extract multiple
8743 addresses, or perhaps return the position at which parsing stopped.Fwhat-domain
8744Convert mail domain to country tit corresponds to.Vmail-use-rfc822
8745*If non-nil, use a full, hairy RFC822 parser on mail addresses.
8746Otherwise, (the default) use a smaller, somewhat faster, and
8747often correct parser.Fmail-fetch-field
8748Return the value of the header field FIELD-NAME.
8749The buffer is expected to be narrowed to just the headers of the message.
8750If second arg LAST is non-nil, use the last such field if there are several.
8751If third arg ALL is non-nil, concatenate all such fields with commas between.Fbuild-mail-abbrevs
8752Read mail aliases from `~/.mailrc' file and set `mail-abbrevs'.Fdefine-mail-abbrev
8753Define NAME as a mail-abbrev that translates to DEFINITION.
8754If DEFINITION contains multiple addresses, separate them with commas.Fdefine-mail-alias
8755Define NAME as a mail alias that translates to DEFINITION.
8756This means that sending a message to NAME will actually send to DEFINITION.
8757DEFINITION can be one or more mail addresses separated by commas.Fmakefile-mode
8758Major mode for editing Makefiles.
8759Calling this function invokes the function(s) "makefile-mode-hook" before
8760doing anything else.
8761
8762\{makefile-mode-map}
8763
8764In the browser, use the following keys:
8765
8766\{makefile-browser-map}
8767
8768makefile-mode can be configured by modifying the following
8769variables:
8770
8771makefile-mode-name:
8772    The "pretty name" of makefile-mode, as it
8773    appears in the modeline.
8774
8775makefile-browser-buffer-name:
8776    Name of the macro- and target browser buffer.
8777
8778makefile-target-colon:
8779    The string that gets appended to all target names
8780    inserted by makefile-insert-target.
8781    ":" or "::" are quite common values.
8782
8783makefile-macro-assign:
8784   The string that gets appended to all macro names
8785   inserted by makefile-insert-macro.
8786   The normal value should be " = ", since this is what
8787   standard make expects. However, newer makes such as dmake
8788   allow a larger variety of different macro assignments, so you
8789   might prefer to use " += " or " := " .
8790
8791makefile-tab-after-target-colon:
8792   If you want a TAB (instead of a space) to be appended after the
8793   target colon, then set this to a non-nil value.
8794
8795makefile-browser-leftmost-column:
8796   Number of blanks to the left of the browser selection mark.
8797
8798makefile-browser-cursor-column:
8799   Column in which the cursor is positioned when it moves
8800   up or down in the browser.
8801
8802makefile-browser-selected-mark:
8803   String used to mark selected entries in the browser.
8804
8805makefile-browser-unselected-mark:
8806   String used to mark unselected entries in the browser.
8807
8808makefile-browser-auto-advance-after-selection-p:
8809   If this variable is set to a non-nil value the cursor
8810   will automagically advance to the next line after an item
8811   has been selected in the browser.
8812
8813makefile-pickup-everything-picks-up-filenames-p:
8814   If this variable is set to a non-nil value then
8815   makefile-pickup-everything also picks up filenames as targets
8816   (i.e. it calls makefile-find-filenames-as-targets), otherwise
8817   filenames are omitted.
8818
8819makefile-cleanup-continuations-p:
8820   If this variable is set to a non-nil value then makefile-mode
8821   will assure that no line in the file ends with a backslash
8822   (the continuation character) followed by any whitespace.
8823   This is done by silently removing the trailing whitespace, leaving
8824   the backslash itself intact.
8825   IMPORTANT: Please note that enabling this option causes makefile-mode
8826   to MODIFY A FILE WITHOUT YOUR CONFIRMATION when 'it seems necessary'.
8827
8828makefile-browser-hook:
8829   A function or list of functions to be called just before the
8830   browser is entered. This is executed in the makefile buffer.
8831
8832makefile-special-targets-list:
8833   List of special targets. You will be offered to complete
8834   on one of those in the minibuffer whenever you enter a "."
8835   at the beginning of a line in makefile-mode.Fmake-command-summary
8836Make a summary of current key bindings in the buffer *Summary*.
8837Previous contents of that buffer are killed first.Fmanual-entry
8838Get a Un*x manual page and put it in a buffer.
8839This command is the top-level command in the man package.  It runs a Un*x
8840command to retrieve and clean a manpage in the background and places the
8841results in a Man mode (manpage browsing) buffer.  See variable
8842`Man-notify' for what happens when the buffer is ready.
8843Normally, if a buffer already exists for this man page, it will display
8844immediately; either a prefix argument or a nil value to `Man-reuse-okay-p'
8845overrides this and forces the man page to be regenerated.Fmap-y-or-n-p
8846Ask a series of boolean questions.
8847Takes args PROMPTER ACTOR LIST, and optional args HELP and ACTION-ALIST.
8848
8849LIST is a list of objects, or a function of no arguments to return the next
8850object or nil.
8851
8852If PROMPTER is a string, the prompt is (format PROMPTER OBJECT).  If not
8853a string, PROMPTER is a function of one arg (an object from LIST), which
8854returns a string to be used as the prompt for that object.  If the return
8855value is not a string, it is eval'd to get the answer; it may be nil to
8856ignore the object, t to act on the object without asking the user, or a
8857form to do a more complex prompt.
8858
8859ACTOR is a function of one arg (an object from LIST),
8860which gets called with each object that the user answers `yes' for.
8861
8862If HELP is given, it is a list (OBJECT OBJECTS ACTION),
8863where OBJECT is a string giving the singular noun for an elt of LIST;
8864OBJECTS is the plural noun for elts of LIST, and ACTION is a transitive
8865verb describing ACTOR.  The default is ("object" "objects" "act on").
8866
8867At the prompts, the user may enter y, Y, or SPC to act on that object;
8868n, N, or DEL to skip that object; ! to act on all following objects;
8869ESC or q to exit (skip all following objects); . (period) to act on the
8870current object and then exit; or \[help-command] to get help.
8871
8872If ACTION-ALIST is given, it is an alist (KEY FUNCTION HELP) of extra keys
8873that will be accepted.  KEY is a character; FUNCTION is a function of one
8874arg (an object from LIST); HELP is a string.  When the user hits KEY,
8875FUNCTION is called.  If it returns non-nil, the object is considered
8876"acted upon", and the next object from LIST is processed.  If it returns
8877nil, the prompt is repeated for the same object.
8878
8879Final optional argument NO-CURSOR-IN-ECHO-AREA non-nil says not to set
8880`cursor-in-echo-area' while prompting.
8881
8882This function uses `query-replace-map' to define the standard responses,
8883but not all of the responses which `query-replace' understands
8884are meaningful here.
8885
8886Returns the number of actions taken.Fmh-smail
8887Compose and send mail with the MH mail system.
8888This function is an entry point to mh-e, the Emacs front end
8889to the MH mail system.Fmh-smail-other-window
8890Compose and send mail in other window with the MH mail system.
8891This function is an entry point to mh-e, the Emacs front end
8892to the MH mail system.Fmh-letter-mode
8893Mode for composing letters in mh-e.\<mh-letter-mode-map>
8894When you have finished composing, type \[mh-send-letter] to send the letter.
8895
8896\{mh-letter-mode-map}
8897
8898Variables controlling this mode (defaults in parentheses):
8899
8900 mh-delete-yanked-msg-window (nil)
8901    If non-nil, \[mh-yank-cur-msg] will delete any windows displaying
8902    the yanked message.
8903
8904 mh-yank-from-start-of-msg (t)
8905    If non-nil, \[mh-yank-cur-msg] will include the entire message.
8906    If `body', just yank the body (no header).
8907    If nil, only the portion of the message following the point will be yanked.
8908    If there is a region, this variable is ignored.
8909
8910 mh-signature-file-name ("~/.signature")
8911    File to be inserted into message by \[mh-insert-signature].
8912
8913Upon invoking mh-letter-mode, text-mode-hook and mh-letter-mode-hook are
8914invoked with no args, if those values are non-nil.Fmh-rmail
8915Inc(orporate) new mail with MH, or, with arg, scan an MH mail folder.
8916This function is an entry point to mh-e, the Emacs front end
8917to the MH mail system.Fconvert-mocklisp-buffer
8918Convert buffer of Mocklisp code to real Lisp that GNU Emacs can run.Fmodula-2-mode
8919This is a mode intended to support program development in Modula-2.
8920All control constructs of Modula-2 can be reached by typing C-c
8921followed by the first character of the construct.
8922\<m2-mode-map>
8923  \[m2-begin] begin         \[m2-case] case
8924  \[m2-definition] definition    \[m2-else] else
8925  \[m2-for] for           \[m2-header] header
8926  \[m2-if] if            \[m2-module] module
8927  \[m2-loop] loop          \[m2-or] or
8928  \[m2-procedure] procedure     Control-c Control-w with
8929  \[m2-record] record        \[m2-stdio] stdio
8930  \[m2-type] type          \[m2-until] until
8931  \[m2-var] var           \[m2-while] while
8932  \[m2-export] export        \[m2-import] import
8933  \[m2-begin-comment] begin-comment \[m2-end-comment] end-comment
8934  \[suspend-emacs] suspend Emacs     \[m2-toggle] toggle
8935  \[m2-compile] compile           \[m2-next-error] next-error
8936  \[m2-link] link
8937
8938   `m2-indent' controls the number of spaces for each indentation.
8939   `m2-compile-command' holds the command to compile a Modula-2 program.
8940   `m2-link-command' holds the command to link a Modula-2 program.Fmpuz
8941Multiplication puzzle with GNU Emacs.Fenable-command
8942Allow COMMAND to be executed without special confirmation from now on.
8943The user's .emacs file is altered so that this will apply
8944to future sessions.Fdisable-command
8945Require special confirmation to execute COMMAND from now on.
8946The user's .emacs file is altered so that this will apply
8947to future sessions.Fnroff-mode
8948Major mode for editing text intended for nroff to format.
8949\{nroff-mode-map}
8950Turning on Nroff mode runs `text-mode-hook', then `nroff-mode-hook'.
8951Also, try `nroff-electric-mode', for automatically inserting
8952closing requests for requests that are used in matched pairs.Flist-options
8953Display a list of Emacs user options, with values and documentation.Fedit-options
8954Edit a list of Emacs user option values.
8955Selects a buffer containing such a list,
8956in which there are commands to set the option values.
8957Type \[describe-mode] in that buffer for a list of commands.Foutline-mode
8958Set major mode for editing outlines with selective display.
8959Headings are lines which start with asterisks: one for major headings,
8960two for subheadings, etc.  Lines not starting with asterisks are body lines.
8961
8962Body text or subheadings under a heading can be made temporarily
8963invisible, or visible again.  Invisible lines are attached to the end
8964of the heading, so they move with it, if the line is killed and yanked
8965back.  A heading with text hidden under it is marked with an ellipsis (...).
8966
8967Commands:\<outline-mode-map>
8968\[outline-next-visible-heading]   outline-next-visible-heading      move by visible headings
8969\[outline-previous-visible-heading]   outline-previous-visible-heading
8970\[outline-forward-same-level]   outline-forward-same-level        similar but skip subheadings
8971\[outline-backward-same-level]   outline-backward-same-level
8972\[outline-up-heading]   outline-up-heading		    move from subheading to heading
8973
8974\[hide-body]	make all text invisible (not headings).
8975\[show-all]	make everything in buffer visible.
8976
8977The remaining commands are used when point is on a heading line.
8978They apply to some of the body or subheadings of that heading.
8979\[hide-subtree]   hide-subtree	make body and subheadings invisible.
8980\[show-subtree]   show-subtree	make body and subheadings visible.
8981\[show-children]   show-children	make direct subheadings visible.
8982		 No effect on body, or subheadings 2 or more levels down.
8983		 With arg N, affects subheadings N levels down.
8984\[hide-entry]	   make immediately following body invisible.
8985\[show-entry]	   make it visible.
8986\[hide-leaves]	   make body under heading and under its subheadings invisible.
8987		     The subheadings remain visible.
8988\[show-branches]  make all subheadings at all levels visible.
8989
8990The variable `outline-regexp' can be changed to control what is a heading.
8991A line is a heading if `outline-regexp' matches something at the
8992beginning of the line.  The longer the match, the deeper the level.
8993
8994Turning on outline mode calls the value of `text-mode-hook' and then of
8995`outline-mode-hook', if they are non-nil.Foutline-minor-mode
8996Toggle Outline minor mode.
8997With arg, turn Outline minor mode on if arg is positive, off otherwise.
8998See the command `outline-mode' for more information on this mode.Fpascal-mode
8999Major mode for editing Pascal code. \<pascal-mode-map>
9000TAB indents for Pascal code.  Delete converts tabs to spaces as it moves back.
9001
9002\[pascal-complete-word] completes the word around current point with respect to position in code
9003\[pascal-show-completions] shows all possible completions at this point.
9004
9005Other useful functions are:
9006
9007\[pascal-mark-defun]	- Mark function.
9008\[pascal-insert-block]	- insert begin ... end;
9009\[pascal-star-comment]	- insert (* ... *)
9010\[pascal-comment-area]	- Put marked area in a comment, fixing nested comments.
9011\[pascal-uncomment-area]	- Uncomment an area commented with \[pascal-comment-area].
9012\[pascal-beg-of-defun]	- Move to beginning of current function.
9013\[pascal-end-of-defun]	- Move to end of current function.
9014\[pascal-goto-defun]	- Goto function prompted for in the minibuffer.
9015\[pascal-outline]	- Enter pascal-outline-mode (see also pascal-outline).
9016
9017Variables controlling indentation/edit style:
9018
9019 pascal-indent-level      (default 3)
9020    Indentation of Pascal statements with respect to containing block.
9021 pascal-case-indent       (default 2)
9022    Indentation for case statements.
9023 pascal-auto-newline      (default nil)
9024    Non-nil means automatically newline after simcolons and the punctation mark
9025    after an end.
9026 pascal-tab-always-indent (defualt t)
9027    Non-nil means TAB in Pascal mode should always reindent the current line,
9028    regardless of where in the line point is when the TAB command is used.
9029 pascal-auto-endcomments  (default t)
9030    Non-nil means a comment { ... } is set after the ends which ends cases and
9031    functions. The name of the function or case will be set between the braces.
9032
9033See also the user variables pascal-type-keywords, pascal-start-keywords and
9034pascal-separator-keywords.
9035
9036Turning on Pascal mode calls the value of the variable pascal-mode-hook with
9037no args, if that value is non-nil.Fperl-mode
9038Major mode for editing Perl code.
9039Expression and list commands understand all Perl brackets.
9040Tab indents for Perl code.
9041Comments are delimited with # ... \n.
9042Paragraphs are separated by blank lines only.
9043Delete converts tabs to spaces as it moves back.
9044\{perl-mode-map}
9045Variables controlling indentation style:
9046 perl-tab-always-indent
9047    Non-nil means TAB in Perl mode should always indent the current line,
9048    regardless of where in the line point is when the TAB command is used.
9049 perl-tab-to-comment
9050    Non-nil means that for lines which don't need indenting, TAB will
9051    either delete an empty comment, indent an existing comment, move
9052    to end-of-line, or if at end-of-line already, create a new comment.
9053 perl-nochange
9054    Lines starting with this regular expression are not auto-indented.
9055 perl-indent-level
9056    Indentation of Perl statements within surrounding block.
9057    The surrounding block's indentation is the indentation
9058    of the line on which the open-brace appears.
9059 perl-continued-statement-offset
9060    Extra indentation given to a substatement, such as the
9061    then-clause of an if or body of a while.
9062 perl-continued-brace-offset
9063    Extra indentation given to a brace that starts a substatement.
9064    This is in addition to `perl-continued-statement-offset'.
9065 perl-brace-offset
9066    Extra indentation for line if it starts with an open brace.
9067 perl-brace-imaginary-offset
9068    An open brace following other text is treated as if it were
9069    this far to the right of the start of its line.
9070 perl-label-offset
9071    Extra indentation for line that is a label.
9072
9073Various indentation styles:       K&R  BSD  BLK  GNU  LW
9074  perl-indent-level                5    8    0    2    4
9075  perl-continued-statement-offset  5    8    4    2    4
9076  perl-continued-brace-offset      0    0    0    0   -4
9077  perl-brace-offset               -5   -8    0    0    0
9078  perl-brace-imaginary-offset      0    0    4    0    0
9079  perl-label-offset               -5   -8   -2   -2   -2
9080
9081Turning on Perl mode runs the normal hook `perl-mode-hook'.Fpicture-mode
9082Switch to Picture mode, in which a quarter-plane screen model is used.
9083Printing characters replace instead of inserting themselves with motion
9084afterwards settable by these commands:
9085  C-c <	  Move left after insertion.
9086  C-c >	  Move right after insertion.
9087  C-c ^	  Move up after insertion.
9088  C-c .	  Move down after insertion.
9089  C-c `	  Move northwest (nw) after insertion.
9090  C-c '	  Move northeast (ne) after insertion.
9091  C-c /	  Move southwest (sw) after insertion.
9092  C-c \   Move southeast (se) after insertion.
9093The current direction is displayed in the mode line.  The initial
9094direction is right.  Whitespace is inserted and tabs are changed to
9095spaces when required by movement.  You can move around in the buffer
9096with these commands:
9097  \[picture-move-down]	  Move vertically to SAME column in previous line.
9098  \[picture-move-up]	  Move vertically to SAME column in next line.
9099  \[picture-end-of-line]	  Move to column following last non-whitespace character.
9100  \[picture-forward-column]	  Move right inserting spaces if required.
9101  \[picture-backward-column]	  Move left changing tabs to spaces if required.
9102  C-c C-f Move in direction of current picture motion.
9103  C-c C-b Move in opposite direction of current picture motion.
9104  Return  Move to beginning of next line.
9105You can edit tabular text with these commands:
9106  M-Tab	  Move to column beneath (or at) next interesting character.
9107	    `Indents' relative to a previous line.
9108  Tab	  Move to next stop in tab stop list.
9109  C-c Tab Set tab stops according to context of this line.
9110	    With ARG resets tab stops to default (global) value.
9111	    See also documentation of variable	picture-tab-chars
9112	    which defines "interesting character".  You can manually
9113	    change the tab stop list with command \[edit-tab-stops].
9114You can manipulate text with these commands:
9115  C-d	  Clear (replace) ARG columns after point without moving.
9116  C-c C-d Delete char at point - the command normally assigned to C-d.
9117  \[picture-backward-clear-column]  Clear (replace) ARG columns before point, moving back over them.
9118  \[picture-clear-line]	  Clear ARG lines, advancing over them.	 The cleared
9119	    text is saved in the kill ring.
9120  \[picture-open-line]	  Open blank line(s) beneath current line.
9121You can manipulate rectangles with these commands:
9122  C-c C-k Clear (or kill) a rectangle and save it.
9123  C-c C-w Like C-c C-k except rectangle is saved in named register.
9124  C-c C-y Overlay (or insert) currently saved rectangle at point.
9125  C-c C-x Like C-c C-y except rectangle is taken from named register.
9126  \[copy-rectangle-to-register]   Copies a rectangle to a register.
9127  \[advertised-undo]   Can undo effects of rectangle overlay commands
9128	    commands if invoked soon enough.
9129You can return to the previous mode with:
9130  C-c C-c Which also strips trailing whitespace from every line.
9131	    Stripping is suppressed by supplying an argument.
9132
9133Entry to this mode calls the value of  picture-mode-hook  if non-nil.
9134
9135Note that Picture mode commands will work outside of Picture mode, but
9136they are not defaultly assigned to keys.Fprolog-mode
9137Major mode for editing Prolog code for Prologs.
9138Blank lines and `%%...' separate paragraphs.  `%'s start comments.
9139Commands:
9140\{prolog-mode-map}
9141Entry to this mode calls the value of `prolog-mode-hook'
9142if that value is non-nil.Frun-prolog
9143Run an inferior Prolog process, input and output via buffer *prolog*.Fremote-compile
9144Compile the the current buffer's directory on HOST.  Log in as USER.
9145See \[compile].Fdelete-rectangle
9146Delete (don't save) text in rectangle with point and mark as corners.
9147The same range of columns is deleted in each line starting with the line
9148where the region begins and ending with the line where the region ends.Fdelete-extract-rectangle
9149Delete contents of rectangle and return it as a list of strings.
9150Arguments START and END are the corners of the rectangle.
9151The value is list of strings, one for each line of the rectangle.Fextract-rectangle
9152Return contents of rectangle with corners at START and END.
9153Value is list of strings, one for each line of the rectangle.Fkill-rectangle
9154Delete rectangle with corners at point and mark; save as last killed one.
9155Calling from program, supply two args START and END, buffer positions.
9156But in programs you might prefer to use `delete-extract-rectangle'.Fyank-rectangle
9157Yank the last killed rectangle with upper left corner at point.Finsert-rectangle
9158Insert text of RECTANGLE with upper left corner at point.
9159RECTANGLE's first line is inserted at point, its second
9160line is inserted at a point vertically under point, etc.
9161RECTANGLE should be a list of strings.
9162After this command, the mark is at the upper left corner
9163and point is at the lower right corner.Fopen-rectangle
9164Blank out rectangle with corners at point and mark, shifting text right.
9165The text previously in the region is not overwritten by the blanks,
9166but instead winds up to the right of the rectangle.Fstring-rectangle
9167Insert STRING on each line of the region-rectangle, shifting text right.
9168The left edge of the rectangle specifies the column for insertion.
9169This command does not delete or overwrite any existing text.
9170
9171Called from a program, takes three args; START, END and STRING.Fclear-rectangle
9172Blank out rectangle with corners at point and mark.
9173The text previously in the region is overwritten by the blanks.
9174When called from a program, requires two args which specify the corners.Freposition-window
9175Make the current definition and/or comment visible.
9176Further invocations move it to the top of the window or toggle the
9177visibility of comments that precede it.
9178  Point is left unchanged unless prefix ARG is supplied.
9179  If the definition is fully onscreen, it is moved to the top of the
9180window.  If it is partly offscreen, the window is scrolled to get the
9181definition (or as much as will fit) onscreen, unless point is in a comment
9182which is also partly offscreen, in which case the scrolling attempts to get
9183as much of the comment onscreen as possible.
9184  Initially `reposition-window' attempts to make both the definition and
9185preceding comments visible.  Further invocations toggle the visibility of
9186the comment lines.
9187  If ARG is non-nil, point may move in order to make the whole defun
9188visible (if only part could otherwise be made so), to make the defun line
9189visible (if point is in code and it could not be made so, or if only
9190comments, including the first comment line, are visible), or to make the
9191first comment line visible (if point is in a comment).Fresume-suspend-hook
9192Clear out the file used for transmitting args when Emacs resumes.Fring-p
9193Returns t if X is a ring; nil otherwise.Fmake-ring
9194Make a ring that can contain SIZE elements.Vrlogin-program
9195*Name of program to invoke rloginVrlogin-explicit-args
9196*List of arguments to pass to rlogin on the command line.Vrlogin-mode-hook
9197*Hooks to run after setting current buffer to rlogin-mode.Vrlogin-process-connection-type
9198*If non-`nil', use a pty for the local rlogin process.
9199If `nil', use a pipe (if pipes are supported on the local system).
9200
9201Generally it is better not to waste ptys on systems which have a static
9202number of them.  On the other hand, some implementations of `rlogin' assume
9203a pty is being used, and errors will result from using a pipe instead.Vrlogin-initially-track-cwd
9204*If non-`nil', do remote directory tracking via ange-ftp right away.
9205If `nil', you can still enable directory tracking by doing
9206`M-x dirtrack-toggle'.Vrlogin-password-paranoia
9207*If non-`nil', query user for a password in the minibuffer when a Password: prompt appears.
9208It's also possible to selectively enter passwords without echoing them in
9209the minibuffer using the command `rlogin-password' explicitly.Frlogin
9210Open a network login connection to HOST via the `rlogin' program.
9211Input is sent line-at-a-time to the remote connection.
9212
9213Communication with the remote host is recorded in a buffer *rlogin-HOST*,
9214where HOST is the first word in the string ARGS.  If a prefix argument is
9215given and the buffer *rlogin-HOST* already exists, a new buffer with a
9216different connection will be made.
9217
9218The variable `rlogin-program' contains the name of the actual program to
9219run.  It can be a relative or absolute path.
9220
9221The variable `rlogin-explicit-args' is a list of arguments to give to
9222the rlogin when starting.  They are added after any arguments given in ARGS.Vrmail-dont-reply-to-names
9223*A regexp specifying names to prune of reply to messages.
9224A value of nil means exclude your own name only.Vrmail-default-dont-reply-to-names
9225A regular expression specifying part of the value of the default value of
9226the variable `rmail-dont-reply-to-names', for when the user does not set
9227`rmail-dont-reply-to-names' explicitly.  (The other part of the default
9228value is the user's name.)
9229It is useful to set this variable in the site customization file.Vrmail-ignored-headers
9230*Regexp to match Header fields that rmail should normally hide.Vrmail-highlighted-headers
9231*Regexp to match Header fields that rmail should normally highlight.Vrmail-delete-after-output
9232*Non-nil means automatically delete a message that is copied to a file.Vrmail-primary-inbox-list
9233*List of files which are inboxes for user's primary mail file `~/RMAIL'.
9234`nil' means the default, which is ("/usr/spool/mail/$USER")
9235(the name varies depending on the operating system,
9236and the value of the environment variable MAIL overrides it).Vrmail-mail-new-frame
9237*Non-nil means Rmail makes a new frame for composing outgoing mail.Vrmail-retry-setup-hook
9238Hook that `rmail-retry-failure' uses in place of `mail-setup-hook'.Vrmail-secondary-file-directory
9239*Directory for additional secondary Rmail files.Vrmail-secondary-file-regexp
9240*Regexp for which files are secondary Rmail files.Frmail
9241Read and edit incoming mail.
9242Moves messages into file named by `rmail-file-name' (a babyl format file)
9243 and edits that file in RMAIL Mode.
9244Type \[describe-mode] once editing that file, for a list of RMAIL commands.
9245
9246May be called with file name as argument; then performs rmail editing on
9247that file, but does not copy any new mail into the file.
9248Interactively, if you supply a prefix argument, then you
9249have a chance to specify a file name with the minibuffer.Frmail-mode
9250Rmail Mode is used by \<rmail-mode-map>\[rmail] for editing Rmail files.
9251All normal editing commands are turned off.
9252Instead, these commands are available:
9253
9254\[rmail-beginning-of-message]	Move point to front of this message (same as \[beginning-of-buffer]).
9255\[scroll-up]	Scroll to next screen of this message.
9256\[scroll-down]	Scroll to previous screen of this message.
9257\[rmail-next-undeleted-message]	Move to Next non-deleted message.
9258\[rmail-previous-undeleted-message]	Move to Previous non-deleted message.
9259\[rmail-next-message]	Move to Next message whether deleted or not.
9260\[rmail-previous-message]	Move to Previous message whether deleted or not.
9261\[rmail-first-message]	Move to the first message in Rmail file.
9262\[rmail-last-message]	Move to the last message in Rmail file.
9263\[rmail-show-message]	Jump to message specified by numeric position in file.
9264\[rmail-search]	Search for string and show message it is found in.
9265\[rmail-delete-forward]	Delete this message, move to next nondeleted.
9266\[rmail-delete-backward]	Delete this message, move to previous nondeleted.
9267\[rmail-undelete-previous-message]	Undelete message.  Tries current message, then earlier messages
9268	till a deleted message is found.
9269\[rmail-edit-current-message]	Edit the current message.  \[rmail-cease-edit] to return to Rmail.
9270\[rmail-expunge]	Expunge deleted messages.
9271\[rmail-expunge-and-save]	Expunge and save the file.
9272\[rmail-quit]       Quit Rmail: expunge, save, then switch to another buffer.
9273\[save-buffer] Save without expunging.
9274\[rmail-get-new-mail]	Move new mail from system spool directory into this file.
9275\[rmail-mail]	Mail a message (same as \[mail-other-window]).
9276\[rmail-continue]	Continue composing outgoing message started before.
9277\[rmail-reply]	Reply to this message.  Like \[rmail-mail] but initializes some fields.
9278\[rmail-retry-failure]	Send this message again.  Used on a mailer failure message.
9279\[rmail-forward]	Forward this message to another user.
9280\[rmail-output-to-rmail-file]       Output this message to an Rmail file (append it).
9281\[rmail-output]	Output this message to a Unix-format mail file (append it).
9282\[rmail-input]	Input Rmail file.  Run Rmail on that file.
9283\[rmail-add-label]	Add label to message.  It will be displayed in the mode line.
9284\[rmail-kill-label]	Kill label.  Remove a label from current message.
9285\[rmail-next-labeled-message]   Move to Next message with specified label
9286          (label defaults to last one specified).
9287          Standard labels: filed, unseen, answered, forwarded, deleted.
9288          Any other label is present only if you add it with \[rmail-add-label].
9289\[rmail-previous-labeled-message]   Move to Previous message with specified label
9290\[rmail-summary]	Show headers buffer, with a one line summary of each message.
9291\[rmail-summary-by-labels]	Summarize only messages with particular label(s).
9292\[rmail-summary-by-recipients]   Summarize only messages with particular recipient(s).
9293\[rmail-summary-by-regexp]   Summarize only messages with particular regexp(s).
9294\[rmail-summary-by-topic]   Summarize only messages with subject line regexp(s).
9295\[rmail-toggle-header]	Toggle display of complete header.Frmail-input
9296Run Rmail on file FILENAME.Frot13-other-window
9297Display current buffer in rot 13 in another window.Vresize-minibuffer-mode
9298*If non-`nil', resize the minibuffer so its entire contents are visible.Vresize-minibuffer-window-max-height
9299*Maximum size the minibuffer window is allowed to become.
9300If less than 1 or not a number, the limit is the height of the frame in
9301which the active minibuffer window resides.Vresize-minibuffer-window-exactly
9302*If non-`nil', make minibuffer exactly the size needed to display all its contents.
9303Otherwise, the minibuffer window can temporarily increase in size but
9304never get smaller while it is active.Vresize-minibuffer-frame
9305*If non-`nil' and the active minibuffer is the sole window in its frame, allow changing the frame height.Vresize-minibuffer-frame-max-height
9306*Maximum size the minibuffer frame is allowed to become.
9307If less than 1 or not a number, there is no limit.Vresize-minibuffer-frame-exactly
9308*If non-`nil', make minibuffer frame exactly the size needed to display all its contents.
9309Otherwise, the minibuffer frame can temporarily increase in size but
9310never get smaller while it is active.Fresize-minibuffer-mode
9311Enable or disable resize-minibuffer mode.
9312A negative prefix argument disables this mode.  A positive argument or
9313argument of 0 enables it.
9314
9315When this minor mode is enabled, the minibuffer is dynamically resized to
9316contain the entire region of text put in it as you type.
9317
9318The variable `resize-minibuffer-mode' is set to t or nil depending on
9319whether this mode is active or not.
9320
9321The maximum height to which the minibuffer can grow is controlled by the
9322variable `resize-minibuffer-window-max-height'.
9323
9324The variable `resize-minibuffer-window-exactly' determines whether the
9325minibuffer window should ever be shrunk to make it no larger than needed to
9326display its contents.
9327
9328When using a window system, it is possible for a minibuffer to tbe the sole
9329window in a frame.  Since that window is already its maximum size, the only
9330way to make more text visible at once is to increase the size of the frame.
9331The variable `resize-minibuffer-frame' controls whether this should be
9332done.  The variables `resize-minibuffer-frame-max-height' and
9333`resize-minibuffer-frame-exactly' are analogous to their window
9334counterparts.Fscheme-mode
9335Major mode for editing Scheme code.
9336Editing commands are similar to those of lisp-mode.
9337
9338In addition, if an inferior Scheme process is running, some additional
9339commands will be defined, for evaluating expressions and controlling
9340the interpreter, and the state of the process will be displayed in the
9341modeline of all Scheme buffers.  The names of commands that interact
9342with the Scheme process start with "xscheme-".  For more information
9343see the documentation for xscheme-interaction-mode.
9344
9345Commands:
9346Delete converts tabs to spaces as it moves back.
9347Blank lines separate paragraphs.  Semicolons start comments.
9348\{scheme-mode-map}
9349Entry to this mode calls the value of scheme-mode-hook
9350if that value is non-nil.Fscribe-mode
9351Major mode for editing files of Scribe (a text formatter) source.
9352Scribe-mode is similar text-mode, with a few extra commands added.
9353\{scribe-mode-map}
9354
9355Interesting variables:
9356
9357scribe-fancy-paragraphs
9358  Non-nil makes Scribe mode use a different style of paragraph separation.
9359
9360scribe-electric-quote
9361  Non-nil makes insert of double quote use `` or '' depending on context.
9362
9363scribe-electric-parenthesis
9364  Non-nil makes an open-parenthesis char (one of `([<{')
9365  automatically insert its close if typed after an @Command form.Vmail-self-blind
9366Non-nil means insert BCC to self in messages to be sent.
9367This is done when the message is initialized,
9368so you can remove or alter the BCC field to override the default.Vmail-interactive
9369Non-nil means when sending a message wait for and display errors.
9370nil means let mailer mail back a message to report errors.Vmail-yank-ignored-headers
9371Delete these headers from old message when it's inserted in a reply.Vsend-mail-function
9372Function to call to send the current buffer as mail.
9373The headers are be delimited by a line which is `mail-header-separator'.Vmail-header-separator
9374*Line used to separate headers from text in messages being composed.Vmail-archive-file-name
9375*Name of file to write all outgoing messages in, or nil for none.
9376Do not use an rmail file here!  Instead, use its inbox file.Vmail-default-reply-to
9377*Address to insert as default Reply-to field of outgoing messages.Vmail-signature
9378*Text inserted at end of mail buffer when a message is initialized.
9379If t, it means to insert the contents of the file `~/.signature'.Fmail-mode
9380Major mode for editing mail to be sent.
9381Like Text Mode but with these additional commands:
9382C-c C-s  mail-send (send the message)    C-c C-c  mail-send-and-exit
9383C-c C-f  move to a header field (and create it if there isn't):
9384	 C-c C-f C-t  move to To:	C-c C-f C-s  move to Subj:
9385	 C-c C-f C-b  move to BCC:	C-c C-f C-c  move to CC:
9386	 C-c C-f C-f  move to FCC:
9387C-c C-t  move to message text.
9388C-c C-y  mail-yank-original (insert current message, in Rmail).
9389C-c C-q  mail-fill-yanked-message (fill what was yanked).
9390C-c C-v  mail-sent-via (add a sent-via field for each To or CC).Fmail
9391Edit a message to be sent.  Prefix arg means resume editing (don't erase).
9392When this function returns, the buffer `*mail*' is selected.
9393The value is t if the message was newly initialized; otherwise, nil.
9394
9395By default, the signature file `~/.signature' is inserted at the end;
9396see the variable `mail-signature'.
9397
9398\<mail-mode-map>
9399While editing message, type \[mail-send-and-exit] to send the message and exit.
9400
9401Various special commands starting with C-c are available in sendmail mode
9402to move to message header fields:
9403\{mail-mode-map}
9404
9405If `mail-self-blind' is non-nil, a BCC to yourself is inserted
9406when the message is initialized.
9407
9408If `mail-default-reply-to' is non-nil, it should be an address (a string);
9409a Reply-to: field with that address is inserted.
9410
9411If `mail-archive-file-name' is non-nil, an FCC field with that file name
9412is inserted.
9413
9414If `mail-setup-hook' is bound, its value is called with no arguments
9415after the message is initialized.  It can add more default fields.
9416
9417When calling from a program, the second through fifth arguments
9418 TO, SUBJECT, IN-REPLY-TO and CC specify if non-nil
9419 the initial contents of those header fields.
9420 These arguments should not have final newlines.
9421The sixth argument REPLYBUFFER is a buffer whose contents
9422 should be yanked if the user types C-c C-y.
9423The seventh argument ACTIONS is a list of actions to take
9424 if/when the message is sent.  Each action looks like (FUNCTION . ARGS);
9425 when the message is sent, we apply FUNCTION to ARGS.
9426 This is how Rmail arranges to mark messages `answered'.Fmail-other-window
9427Like `mail' command, but display mail buffer in another window.Fmail-other-frame
9428Like `mail' command, but display mail buffer in another frame.Fserver-start
9429Allow this Emacs process to be a server for client processes.
9430This starts a server communications subprocess through which
9431client "editors" can send your editing commands to this Emacs job.
9432To use the server, set up the program `etc/emacsclient' in the
9433Emacs distribution as your standard "editor".
9434
9435Prefix arg means just kill any existing server communications subprocess.Fsgml-mode
9436Major mode for editing SGML.
9437Makes > display the matching <.  Makes / display matching /.
9438Use \[sgml-validate] to validate your document with an SGML parser.Vshell-prompt-pattern
9439Regexp to match prompts in the inferior shell.
9440Defaults to "^[^#$%>\n]*[#$%>] *", which works pretty well.
9441This variable is used to initialise `comint-prompt-regexp' in the
9442shell buffer.
9443
9444The pattern should probably not match more than one line.  If it does,
9445shell-mode may become confused trying to distinguish prompt from input
9446on lines which don't start with a prompt.
9447
9448This is a fine thing to set in your `.emacs' file.Fshell
9449Run an inferior shell, with I/O through buffer *shell*.
9450If buffer exists but shell process is not running, make new shell.
9451If buffer exists and shell process is running, just switch to buffer `*shell*'.
9452Program used comes from variable `explicit-shell-file-name',
9453 or (if that is nil) from the ESHELL environment variable,
9454 or else from SHELL if there is no ESHELL.
9455If a file `~/.emacs_SHELLNAME' exists, it is given as initial input
9456 (Note that this may lose due to a timing error if the shell
9457  discards input when it starts up.)
9458The buffer is put in Shell mode, giving commands for sending input
9459and controlling the subjobs of the shell.  See `shell-mode'.
9460See also the variable `shell-prompt-pattern'.
9461
9462The shell file name (sans directories) is used to make a symbol name
9463such as `explicit-csh-args'.  If that symbol is a variable,
9464its value is used as a list of arguments when invoking the shell.
9465Otherwise, one argument `-i' is passed to the shell.
9466
9467(Type \[describe-mode] in the shell buffer for a list of commands.)Fdefine-skeleton
9468Define a user-configurable COMMAND that enters a statement skeleton.
9469DOCUMENTATION is that of the command, while the variable of the same name,
9470which contains the definition, has a documentation to that effect.
9471PROMPT and ELEMENT ... are as defined under `skeleton-insert'.Fskeleton-insert
9472Insert the complex statement skeleton DEFINITION describes very concisely.
9473If optional NO-NEWLINE is nil the skeleton will end on a line of its own.
9474
9475DEFINITION is made up as (PROMPT ELEMENT ...).  PROMPT may be nil if not
9476needed, a prompt-string or an expression for complex read functions.
9477
9478If ELEMENT is a string or a character it gets inserted (see also
9479`skeleton-transformation').  Other possibilities are:
9480
9481	\n	go to next line and align cursor
9482	>	indent according to major mode
9483	<	undent tab-width spaces but not beyond beginning of line
9484	_	cursor after termination
9485	&	skip next ELEMENT if previous didn't move point
9486	|	skip next ELEMENT if previous moved point
9487	-num	delete num preceding characters
9488	resume:	skipped, continue here if quit is signaled
9489	nil	skipped
9490
9491ELEMENT may itself be DEFINITION with a PROMPT.  The user is prompted
9492repeatedly for different inputs.  The DEFINITION is processed as often
9493as the user enters a non-empty string.  \[keyboard-quit] terminates
9494skeleton insertion, but continues after `resume:' and positions at `_'
9495if any.  If PROMPT in such a sub-definition contains a ".. %s .." it
9496is replaced by `skeleton-subprompt'.
9497
9498Other lisp-expressions are evaluated and the value treated as above.
9499The following local variables are available:
9500
9501	str	first time: read a string prompting with PROMPT and insert it
9502			    if PROMPT is not a string it is evaluated instead
9503		then: insert previously read string once more
9504	quit	non-nil when resume: section is entered by keyboard quit
9505	v1, v2	local variables for memorising anything you wantFpair-insert-maybe
9506Insert the character you type ARG times.
9507
9508With no ARG, if `pair' is non-nil, and if
9509`pair-on-word' is non-nil or we are not before or inside a
9510word, and if `pair-filter' returns nil, pairing is performed.
9511
9512If a match is found in `pair-alist', that is inserted, else
9513the defaults are used.  These are (), [], {}, <> and `' for the
9514symmetrical ones, and the same character twice for the others.Fdefine-skeleton
9515Define a user-configurable COMMAND that enters a statement skeleton.
9516DOCUMENTATION is that of the command, while the variable of the same name,
9517which contains the definition, has a documentation to that effect.
9518PROMPT and ELEMENT ... are as defined under `skeleton-insert'.Fskeleton-insert
9519Insert the complex statement skeleton DEFINITION describes very concisely.
9520If optional NO-NEWLINE is nil the skeleton will end on a line of its own.
9521
9522DEFINITION is made up as (PROMPT ELEMENT ...).  PROMPT may be nil if not
9523needed, a prompt-string or an expression for complex read functions.
9524
9525If ELEMENT is a string or a character it gets inserted (see also
9526`skeleton-transformation').  Other possibilities are:
9527
9528	\n	go to next line and align cursor
9529	>	indent according to major mode
9530	<	undent tab-width spaces but not beyond beginning of line
9531	_	cursor after termination
9532	&	skip next ELEMENT if previous didn't move point
9533	|	skip next ELEMENT if previous moved point
9534	-num	delete num preceding characters
9535	resume:	skipped, continue here if quit is signaled
9536	nil	skipped
9537
9538ELEMENT may itself be DEFINITION with a PROMPT.  The user is prompted
9539repeatedly for different inputs.  The DEFINITION is processed as often
9540as the user enters a non-empty string.  \[keyboard-quit] terminates
9541skeleton insertion, but continues after `resume:' and positions at `_'
9542if any.  If PROMPT in such a sub-definition contains a ".. %s .." it
9543is replaced by `skeleton-subprompt'.
9544
9545Other lisp-expressions are evaluated and the value treated as above.
9546The following local variables are available:
9547
9548	str	first time: read a string prompting with PROMPT and insert it
9549			    if PROMPT is not a string it is evaluated instead
9550		then: insert previously read string once more
9551	quit	non-nil when resume: section is entered by keyboard quit
9552	v1, v2	local variables for memorising anything you wantFpair-insert-maybe
9553Insert the character you type ARG times.
9554
9555With no ARG, if `pair' is non-nil, and if
9556`pair-on-word' is non-nil or we are not before or inside a
9557word, and if `pair-filter' returns nil, pairing is performed.
9558
9559If a match is found in `pair-alist', that is inserted, else
9560the defaults are used.  These are (), [], {}, <> and `' for the
9561symmetrical ones, and the same character twice for the others.Vcalendar-time-display-form
9562*The pseudo-pattern that governs the way a time of day is formatted.
9563
9564A pseudo-pattern is a list of expressions that can involve the keywords
9565`12-hours', `24-hours', and `minutes',  all numbers in string form,
9566and `am-pm' and `time-zone',  both alphabetic strings.
9567
9568For example, the form
9569
9570  '(24-hours ":" minutes
9571    (if time-zone " (") time-zone (if time-zone ")"))
9572
9573would give military-style times like `21:07 (UTC)'.Vcalendar-latitude
9574*Latitude of `calendar-location-name' in degrees, + north, - south.
9575For example, 40.7 for New York City.
9576It may not be a good idea to set this in advance for your site;
9577if there may be users running Emacs at your site
9578who are physically located elsewhere, they would get the wrong
9579value and might not know how to override it.Vcalendar-longitude
9580*Longitude of `calendar-location-name' in degrees, + east, - west.
9581For example, -74.0 for New York City.
9582It may not be a good idea to set this in advance for your site;
9583if there may be users running Emacs at your site
9584who are physically located elsewhere, they would get the wrong
9585value and might not know how to override it.Vcalendar-location-name
9586*Expression evaluating to name of `calendar-longitude', calendar-latitude'.
9587Default value is just the latitude, longitude pair.Fsunrise-sunset
9588Local time of sunrise and sunset for today.  Accurate to +/- 2 minutes.
9589If called with an optional prefix argument, prompt for date.
9590
9591If called with an optional double prefix argument, prompt for longitude,
9592latitude, time zone, and date, and always use standard time.
9593
9594This function is suitable for execution in a .emacs file.Fsolar-equinoxes-solstices
9595Date and time of equinoxes and solstices, if visible in the calendar window.
9596Requires floating point.Fsort-subr
9597General text sorting routine to divide buffer into records and sort them.
9598Arguments are REVERSE NEXTRECFUN ENDRECFUN &optional STARTKEYFUN ENDKEYFUN.
9599
9600We divide the accessible portion of the buffer into disjoint pieces
9601called sort records.  A portion of each sort record (perhaps all of
9602it) is designated as the sort key.  The records are rearranged in the
9603buffer in order by their sort keys.  The records may or may not be
9604contiguous.
9605
9606Usually the records are rearranged in order of ascending sort key.
9607If REVERSE is non-nil, they are rearranged in order of descending sort key.
9608
9609The next four arguments are functions to be called to move point
9610across a sort record.  They will be called many times from within sort-subr.
9611
9612NEXTRECFUN is called with point at the end of the previous record.
9613It moves point to the start of the next record.
9614It should move point to the end of the buffer if there are no more records.
9615The first record is assumed to start at the position of point when sort-subr
9616is called.
9617
9618ENDRECFUN is called with point within the record.
9619It should move point to the end of the record.
9620
9621STARTKEYFUN moves from the start of the record to the start of the key.
9622It may return either a non-nil value to be used as the key, or
9623else the key is the substring between the values of point after
9624STARTKEYFUN and ENDKEYFUN are called.  If STARTKEYFUN is nil, the key
9625starts at the beginning of the record.
9626
9627ENDKEYFUN moves from the start of the sort key to the end of the sort key.
9628ENDKEYFUN may be nil if STARTKEYFUN returns a value or if it would be the
9629same as ENDRECFUN.Fsort-lines
9630Sort lines in region alphabetically; argument means descending order.
9631Called from a program, there are three arguments:
9632REVERSE (non-nil means reverse order), BEG and END (region to sort).Fsort-paragraphs
9633Sort paragraphs in region alphabetically; argument means descending order.
9634Called from a program, there are three arguments:
9635REVERSE (non-nil means reverse order), BEG and END (region to sort).Fsort-pages
9636Sort pages in region alphabetically; argument means descending order.
9637Called from a program, there are three arguments:
9638REVERSE (non-nil means reverse order), BEG and END (region to sort).Fsort-numeric-fields
9639Sort lines in region numerically by the ARGth field of each line.
9640Fields are separated by whitespace and numbered from 1 up.
9641Specified field must contain a number in each line of the region.
9642With a negative arg, sorts by the ARGth field counted from the right.
9643Called from a program, there are three arguments:
9644FIELD, BEG and END.  BEG and END specify region to sort.Fsort-fields
9645Sort lines in region lexicographically by the ARGth field of each line.
9646Fields are separated by whitespace and numbered from 1 up.
9647With a negative arg, sorts by the ARGth field counted from the right.
9648Called from a program, there are three arguments:
9649FIELD, BEG and END.  BEG and END specify region to sort.Fsort-regexp-fields
9650Sort the region lexicographically as specified by RECORD-REGEXP and KEY.
9651RECORD-REGEXP specifies the textual units which should be sorted.
9652  For example, to sort lines RECORD-REGEXP would be "^.*$"
9653KEY specifies the part of each record (ie each match for RECORD-REGEXP)
9654  is to be used for sorting.
9655  If it is "\digit" then the digit'th "\(...\)" match field from
9656  RECORD-REGEXP is used.
9657  If it is "\&" then the whole record is used.
9658  Otherwise, it is a regular-expression for which to search within the record.
9659If a match for KEY is not found within a record then that record is ignored.
9660
9661With a negative prefix arg sorts in reverse order.
9662
9663For example: to sort lines in the region by the first word on each line
9664 starting with the letter "f",
9665 RECORD-REGEXP would be "^.*$" and KEY would be "\=\<f\w*\>"Fsort-columns
9666Sort lines in region alphabetically by a certain range of columns.
9667For the purpose of this command, the region includes
9668the entire line that point is in and the entire line the mark is in.
9669The column positions of point and mark bound the range of columns to sort on.
9670A prefix argument means sort into reverse order.
9671
9672Note that `sort-columns' rejects text that contains tabs,
9673because tabs could be split across the specified columns
9674and it doesn't know how to handle that.  Also, when possible,
9675it uses the `sort' utility program, which doesn't understand tabs.
9676Use \[untabify] to convert tabs to spaces before sorting.Freverse-region
9677Reverse the order of lines in a region.
9678From a program takes two point or marker arguments, BEG and END.Fspell-buffer
9679Check spelling of every word in the buffer.
9680For each incorrect word, you are asked for the correct spelling
9681and then put into a query-replace to fix some or all occurrences.
9682If you do not want to change a word, just give the same word
9683as its "correct" spelling; then the query replace is skipped.Fspell-word
9684Check spelling of word at or before point.
9685If it is not correct, ask user for the correct spelling
9686and `query-replace' the entire buffer to substitute it.Fspell-region
9687Like `spell-buffer' but applies only to region.
9688Used in a program, applies from START to END.
9689DESCRIPTION is an optional string naming the unit being checked:
9690for example, "word".Fspell-string
9691Check spelling of string supplied as argument.Fspook
9692Adds that special touch of class to your outgoing mail.Fsnarf-spooks
9693Return a vector containing the lines from `spook-phrases-file'.Fsc-cite-original
9694Workhorse citing function which performs the initial citation.
9695This is callable from the various mail and news readers' reply
9696function according to the agreed upon standard.  See `\[sc-describe]'
9697for more details.  `sc-cite-original' does not do any yanking of the
9698original message but it does require a few things:
9699
9700     1) The reply buffer is the current buffer.
9701
9702     2) The original message has been yanked and inserted into the
9703        reply buffer.
9704
9705     3) Verbose mail headers from the original message have been
9706        inserted into the reply buffer directly before the text of the
9707        original message.
9708
9709     4) Point is at the beginning of the verbose headers.
9710
9711     5) Mark is at the end of the body of text to be cited.
9712
9713For Emacs 19's, the region need not be active (and typically isn't
9714when this function is called.  Also, the hook `sc-pre-hook' is run
9715before, and `sc-post-hook' is run after the guts of this function.Funtabify
9716Convert all tabs in region to multiple spaces, preserving columns.
9717Called non-interactively, the region is specified by arguments
9718START and END, rather than by the position of point and mark.
9719The variable `tab-width' controls the spacing of tab stops.Ftabify
9720Convert multiple spaces in region to tabs when possible.
9721A group of spaces is partially replaced by tabs
9722when this can be done without changing the column they end at.
9723Called non-interactively, the region is specified by arguments
9724START and END, rather than by the position of point and mark.
9725The variable `tab-width' controls the spacing of tab stops.Ftar-mode
9726Major mode for viewing a tar file as a dired-like listing of its contents.
9727You can move around using the usual cursor motion commands.
9728Letters no longer insert themselves.
9729Type `e' to pull a file out of the tar file and into its own buffer;
9730or click mouse-2 on the file's line in the Tar mode buffer.
9731Type `c' to copy an entry from the tar file into another file on disk.
9732
9733If you edit a sub-file of this archive (as with the `e' command) and
9734save it with Control-x Control-s, the contents of that buffer will be
9735saved back into the tar-file buffer; in this way you can edit a file
9736inside of a tar archive without extracting it and re-archiving it.
9737
9738See also: variables `tar-update-datestamp' and `tar-anal-blocksize'.
9739\{tar-mode-map}Ftcl-mode
9740Major mode for editing tcl scripts.
9741The following keys are bound:
9742\{tcl-mode-map}
9743Ftelnet
9744Open a network login connection to host named HOST (a string).
9745Communication with HOST is recorded in a buffer *HOST-telnet*.
9746Normally input is edited in Emacs and sent a line at a time.Frsh
9747Open a network login connection to host named HOST (a string).
9748Communication with HOST is recorded in a buffer *HOST-rsh*.
9749Normally input is edited in Emacs and sent a line at a time.Fterminal-emulator
9750Under a display-terminal emulator in BUFFER, run PROGRAM on arguments ARGS.
9751ARGS is a list of argument-strings.  Remaining arguments are WIDTH and HEIGHT.
9752BUFFER's contents are made an image of the display generated by that program,
9753and any input typed when BUFFER is the current Emacs buffer is sent to that
9754program an keyboard input.
9755
9756Interactively, BUFFER defaults to "*terminal*" and PROGRAM and ARGS
9757are parsed from an input-string using your usual shell.
9758WIDTH and HEIGHT are determined from the size of the current window
9759-- WIDTH will be one less than the window's width, HEIGHT will be its height.
9760
9761To switch buffers and leave the emulator, or to give commands
9762to the emulator itself (as opposed to the program running under it),
9763type Control-^.  The following character is an emulator command.
9764Type Control-^ twice to send it to the subprogram.
9765This escape character may be changed using the variable `terminal-escape-char'.
9766
9767`Meta' characters may not currently be sent through the terminal emulator.
9768
9769Here is a list of some of the variables which control the behaviour
9770of the emulator -- see their documentation for more information:
9771terminal-escape-char, terminal-scrolling, terminal-more-processing,
9772terminal-redisplay-interval.
9773
9774This function calls the value of terminal-mode-hook if that exists
9775and is non-nil after the terminal buffer has been set up and the
9776subprocess started.
9777
9778Presently with `termcap' only; if somebody sends us code to make this
9779work with `terminfo' we will try to use it.Vtex-shell-file-name
9780*If non-nil, the shell file name to run in the subshell used to run TeX.Vtex-directory
9781*Directory in which temporary files are left.
9782You can make this `/tmp' if your TEXINPUTS has no relative directories in it
9783and you don't try to apply \[tex-region] or \[tex-buffer] when there are
9784`\input' commands with relative directories.Vtex-offer-save
9785*If non-nil, ask about saving modified buffers before \[tex-file] is run.Vtex-run-command
9786*Command used to run TeX subjob.
9787If this string contains an asterisk (`*'), that is replaced by the file name;
9788otherwise, the file name, preceded by blank, is added at the end.Vlatex-run-command
9789*Command used to run LaTeX subjob.
9790If this string contains an asterisk (`*'), that is replaced by the file name;
9791otherwise, the file name, preceded by blank, is added at the end.Vlatex-block-names
9792*User defined LaTeX block names.
9793Combined with `standard-latex-block-names' for minibuffer completion.Vslitex-run-command
9794*Command used to run SliTeX subjob.
9795If this string contains an asterisk (`*'), that is replaced by the file name;
9796otherwise, the file name, preceded by blank, is added at the end.Vtex-bibtex-command
9797*Command used by `tex-bibtex-file' to gather bibliographic data.
9798If this string contains an asterisk (`*'), that is replaced by the file name;
9799otherwise, the file name, preceded by blank, is added at the end.Vtex-dvi-print-command
9800*Command used by \[tex-print] to print a .dvi file.
9801If this string contains an asterisk (`*'), that is replaced by the file name;
9802otherwise, the file name, preceded by blank, is added at the end.Vtex-alt-dvi-print-command
9803*Command used by \[tex-print] with a prefix arg to print a .dvi file.
9804If this string contains an asterisk (`*'), that is replaced by the file name;
9805otherwise, the file name, preceded by blank, is added at the end.
9806
9807If two printers are not enough of a choice, you can set the variable
9808`tex-alt-dvi-print-command' to an expression that asks what you want;
9809for example,
9810
9811    (setq tex-alt-dvi-print-command
9812         '(format "lpr -P%s" (read-string "Use printer: ")))
9813
9814would tell \[tex-print] with a prefix argument to ask you which printer to
9815use.Vtex-dvi-view-command
9816*Command used by \[tex-view] to display a `.dvi' file.
9817If this string contains an asterisk (`*'), that is replaced by the file name;
9818otherwise, the file name, preceded by blank, is added at the end.
9819
9820This can be set conditionally so that the previewer used is suitable for the
9821window system being used.  For example,
9822
9823    (setq tex-dvi-view-command
9824          (if (eq window-system 'x) "xdvi" "dvi2tty * | cat -s"))
9825
9826would tell \[tex-view] to use xdvi under X windows and to use dvi2tty
9827otherwise.Vtex-show-queue-command
9828*Command used by \[tex-show-print-queue] to show the print queue.
9829Should show the queue(s) that \[tex-print] puts jobs on.Vtex-default-mode
9830*Mode to enter for a new file that might be either TeX or LaTeX.
9831This variable is used when it can't be determined whether the file
9832is plain TeX or LaTeX or what because the file contains no commands.
9833Normally set to either `plain-tex-mode' or `latex-mode'.Vtex-open-quote
9834*String inserted by typing \[tex-insert-quote] to open a quotation.Vtex-close-quote
9835*String inserted by typing \[tex-insert-quote] to close a quotation.Ftex-mode
9836Major mode for editing files of input for TeX, LaTeX, or SliTeX.
9837Tries to determine (by looking at the beginning of the file) whether
9838this file is for plain TeX, LaTeX, or SliTeX and calls `plain-tex-mode',
9839`latex-mode', or `slitex-mode', respectively.  If it cannot be determined,
9840such as if there are no commands in the file, the value of `tex-default-mode'
9841says which mode to use.Fplain-tex-mode
9842Major mode for editing files of input for plain TeX.
9843Makes $ and } display the characters they match.
9844Makes " insert `` when it seems to be the beginning of a quotation,
9845and '' when it appears to be the end; it inserts " only after a \.
9846
9847Use \[tex-region] to run TeX on the current region, plus a "header"
9848copied from the top of the file (containing macro definitions, etc.),
9849running TeX under a special subshell.  \[tex-buffer] does the whole buffer.
9850\[tex-file] saves the buffer and then processes the file.
9851\[tex-print] prints the .dvi file made by any of these.
9852\[tex-view] previews the .dvi file made by any of these.
9853\[tex-bibtex-file] runs bibtex on the file of the current buffer.
9854
9855Use \[validate-tex-buffer] to check buffer for paragraphs containing
9856mismatched $'s or braces.
9857
9858Special commands:
9859\{tex-mode-map}
9860
9861Mode variables:
9862tex-run-command
9863	Command string used by \[tex-region] or \[tex-buffer].
9864tex-directory
9865	Directory in which to create temporary files for TeX jobs
9866	run by \[tex-region] or \[tex-buffer].
9867tex-dvi-print-command
9868	Command string used by \[tex-print] to print a .dvi file.
9869tex-alt-dvi-print-command
9870	Alternative command string used by \[tex-print] (when given a prefix
9871	argument) to print a .dvi file.
9872tex-dvi-view-command
9873	Command string used by \[tex-view] to preview a .dvi file.
9874tex-show-queue-command
9875	Command string used by \[tex-show-print-queue] to show the print
9876	queue that \[tex-print] put your job on.
9877
9878Entering Plain-tex mode runs the hook `text-mode-hook', then the hook
9879`tex-mode-hook', and finally the hook `plain-tex-mode-hook'.  When the
9880special subshell is initiated, the hook `tex-shell-hook' is run.Flatex-mode
9881Major mode for editing files of input for LaTeX.
9882Makes $ and } display the characters they match.
9883Makes " insert `` when it seems to be the beginning of a quotation,
9884and '' when it appears to be the end; it inserts " only after a \.
9885
9886Use \[tex-region] to run LaTeX on the current region, plus the preamble
9887copied from the top of the file (containing \documentstyle, etc.),
9888running LaTeX under a special subshell.  \[tex-buffer] does the whole buffer.
9889\[tex-file] saves the buffer and then processes the file.
9890\[tex-print] prints the .dvi file made by any of these.
9891\[tex-view] previews the .dvi file made by any of these.
9892\[tex-bibtex-file] runs bibtex on the file of the current buffer.
9893
9894Use \[validate-tex-buffer] to check buffer for paragraphs containing
9895mismatched $'s or braces.
9896
9897Special commands:
9898\{tex-mode-map}
9899
9900Mode variables:
9901latex-run-command
9902	Command string used by \[tex-region] or \[tex-buffer].
9903tex-directory
9904	Directory in which to create temporary files for LaTeX jobs
9905	run by \[tex-region] or \[tex-buffer].
9906tex-dvi-print-command
9907	Command string used by \[tex-print] to print a .dvi file.
9908tex-alt-dvi-print-command
9909	Alternative command string used by \[tex-print] (when given a prefix
9910	argument) to print a .dvi file.
9911tex-dvi-view-command
9912	Command string used by \[tex-view] to preview a .dvi file.
9913tex-show-queue-command
9914	Command string used by \[tex-show-print-queue] to show the print
9915	queue that \[tex-print] put your job on.
9916
9917Entering Latex mode runs the hook `text-mode-hook', then
9918`tex-mode-hook', and finally `latex-mode-hook'.  When the special
9919subshell is initiated, `tex-shell-hook' is run.Fslitex-mode
9920Major mode for editing files of input for SliTeX.
9921Makes $ and } display the characters they match.
9922Makes " insert `` when it seems to be the beginning of a quotation,
9923and '' when it appears to be the end; it inserts " only after a \.
9924
9925Use \[tex-region] to run SliTeX on the current region, plus the preamble
9926copied from the top of the file (containing \documentstyle, etc.),
9927running SliTeX under a special subshell.  \[tex-buffer] does the whole buffer.
9928\[tex-file] saves the buffer and then processes the file.
9929\[tex-print] prints the .dvi file made by any of these.
9930\[tex-view] previews the .dvi file made by any of these.
9931\[tex-bibtex-file] runs bibtex on the file of the current buffer.
9932
9933Use \[validate-tex-buffer] to check buffer for paragraphs containing
9934mismatched $'s or braces.
9935
9936Special commands:
9937\{tex-mode-map}
9938
9939Mode variables:
9940slitex-run-command
9941	Command string used by \[tex-region] or \[tex-buffer].
9942tex-directory
9943	Directory in which to create temporary files for SliTeX jobs
9944	run by \[tex-region] or \[tex-buffer].
9945tex-dvi-print-command
9946	Command string used by \[tex-print] to print a .dvi file.
9947tex-alt-dvi-print-command
9948	Alternative command string used by \[tex-print] (when given a prefix
9949	argument) to print a .dvi file.
9950tex-dvi-view-command
9951	Command string used by \[tex-view] to preview a .dvi file.
9952tex-show-queue-command
9953	Command string used by \[tex-show-print-queue] to show the print
9954	queue that \[tex-print] put your job on.
9955
9956Entering SliTeX mode runs the hook `text-mode-hook', then the hook
9957`tex-mode-hook', then the hook `latex-mode-hook', and finally the hook
9958`slitex-mode-hook'.  When the special subshell is initiated, the hook
9959`tex-shell-hook' is run.Ftexinfo-format-buffer
9960Process the current buffer as texinfo code, into an Info file.
9961The Info file output is generated in a buffer visiting the Info file
9962names specified in the @setfilename command.
9963
9964Non-nil argument (prefix, if interactive) means don't make tag table
9965and don't split the file if large.  You can use Info-tagify and
9966Info-split to do these manually.Ftexinfo-format-region
9967Convert the current region of the Texinfo file to Info format.
9968This lets you see what that part of the file will look like in Info.
9969The command is bound to \[texinfo-format-region].  The text that is
9970converted to Info is stored in a temporary buffer.Ftexinfo-mode
9971Major mode for editing Texinfo files.
9972
9973  It has these extra commands:
9974\{texinfo-mode-map}
9975
9976  These are files that are used as input for TeX to make printed manuals
9977and also to be turned into Info files with \[makeinfo-buffer] or
9978the `makeinfo' program.  These files must be written in a very restricted and
9979modified version of TeX input format.
9980
9981  Editing commands are like text-mode except that the syntax table is
9982set up so expression commands skip Texinfo bracket groups.  To see
9983what the Info version of a region of the Texinfo file will look like,
9984use \[makeinfo-region], which runs `makeinfo' on the current region.
9985
9986  You can show the structure of a Texinfo file with \[texinfo-show-structure].
9987This command shows the structure of a Texinfo file by listing the
9988lines with the @-sign commands for @chapter, @section, and the like.
9989These lines are displayed in another window called the *Occur* window.
9990In that window, you can position the cursor over one of the lines and
9991use \[occur-mode-goto-occurrence], to jump to the corresponding spot
9992in the Texinfo file.
9993
9994  In addition, Texinfo mode provides commands that insert various
9995frequently used @-sign commands into the buffer.  You can use these
9996commands to save keystrokes.  And you can insert balanced braces with
9997\[texinfo-insert-braces] and later use the command \[up-list] to
9998move forward past the closing brace.
9999
10000Also, Texinfo mode provides functions for automatically creating or
10001updating menus and node pointers.  These functions
10002
10003  * insert the `Next', `Previous' and `Up' pointers of a node,
10004  * insert or update the menu for a section, and
10005  * create a master menu for a Texinfo source file.
10006
10007Here are the functions:
10008
10009    texinfo-update-node                \[texinfo-update-node]
10010    texinfo-every-node-update          \[texinfo-every-node-update]
10011    texinfo-sequential-node-update
10012
10013    texinfo-make-menu                  \[texinfo-make-menu]
10014    texinfo-all-menus-update           \[texinfo-all-menus-update]
10015    texinfo-master-menu
10016
10017    texinfo-indent-menu-description (column &optional region-p)
10018
10019The `texinfo-column-for-description' variable specifies the column to
10020which menu descriptions are indented.
10021
10022Passed an argument (a prefix argument, if interactive), the
10023`texinfo-update-node' and `texinfo-make-menu' functions do their jobs
10024in the region.
10025
10026To use the updating commands, you must structure your Texinfo file
10027hierarchically, such that each `@node' line, with the exception of the
10028Top node, is accompanied by some kind of section line, such as an
10029`@chapter' or `@section' line.
10030
10031If the file has a `top' node, it must be called `top' or `Top' and
10032be the first node in the file.
10033
10034Entering Texinfo mode calls the value of text-mode-hook, and then the
10035value of texinfo-mode-hook.Ftexinfo-update-node
10036Without any prefix argument, update the node in which point is located.
10037Non-nil argument (prefix, if interactive) means update the nodes in the
10038marked region.
10039
10040The functions for creating or updating nodes and menus, and their
10041keybindings, are:
10042
10043    texinfo-update-node (&optional region-p)    \[texinfo-update-node]
10044    texinfo-every-node-update ()                \[texinfo-every-node-update]
10045    texinfo-sequential-node-update (&optional region-p)
10046
10047    texinfo-make-menu (&optional region-p)      \[texinfo-make-menu]
10048    texinfo-all-menus-update ()                 \[texinfo-all-menus-update]
10049    texinfo-master-menu ()
10050
10051    texinfo-indent-menu-description (column &optional region-p)
10052
10053The `texinfo-column-for-description' variable specifies the column to
10054which menu descriptions are indented. Its default value is 32.Ftexinfo-every-node-update
10055Update every node in a Texinfo file.Ftexinfo-sequential-node-update
10056Update one node (or many) in a Texinfo file with sequential pointers.
10057
10058This function causes the `Next' or `Previous' pointer to point to the
10059immediately preceding or following node, even if it is at a higher or
10060lower hierarchical level in the document.  Continually pressing `n' or
10061`p' takes you straight through the file.
10062
10063Without any prefix argument, update the node in which point is located.
10064Non-nil argument (prefix, if interactive) means update the nodes in the
10065marked region.
10066
10067This command makes it awkward to navigate among sections and
10068subsections; it should be used only for those documents that are meant
10069to be read like a novel rather than a reference, and for which the
10070Info `g*' command is inadequate.Fforward-thing
10071Move forward to the end of the next THING.Fbounds-of-thing-at-point
10072Determine the start and end buffer locations for the THING at point,
10073where THING is an entity for which there is a either a corresponding
10074forward-THING operation, or corresponding beginning-of-THING and
10075end-of-THING operations, eg. 'word, 'sentence, 'defun.
10076  Return a cons cell '(start . end) giving the start and end positions.Fthing-at-point
10077Return the THING at point, where THING is an entity defined by
10078bounds-of-thing-at-point.Vdisplay-time-day-and-date
10079*Non-nil means \[display-time] should display day and date as well as time.Fdisplay-time
10080Display current time, load level, and mail flag in mode line of each buffer.
10081Updates automatically every minute.
10082If `display-time-day-and-date' is non-nil, the current day and date
10083are displayed as well.
10084After each update, `display-time-hook' is run with `run-hooks'.Ftime-stamp
10085Update the time stamp string in the buffer.
10086If you put a time stamp template anywhere in the first 8 lines of a file,
10087it can be updated every time you save the file.  See the top of
10088`time-stamp.el' for a sample.  The template looks like one of the following:
10089    Time-stamp: <>
10090    Time-stamp: " "
10091The time stamp is written between the brackets or quotes, resulting in
10092    Time-stamp: <93/06/18 10:26:51 gildea>
10093Only does its thing if the variable  time-stamp-active  is non-nil.
10094Typically used on  write-file-hooks  for automatic time-stamping.
10095The format of the time stamp is determined by the variable  time-stamp-format.
10096The variables time-stamp-line-limit, time-stamp-start, and time-stamp-end
10097control finding the template.Frun-at-time
10098Run a function at a time, and optionally on a regular interval.
10099Arguments are TIME, REPEAT, FUNCTION &rest ARGS.
10100TIME, a string, can be specified absolutely or relative to now.
10101TIME can also be an integer, a number of seconds.
10102REPEAT, an integer number of seconds, is the interval on which to repeat
10103the call to the function.  If REPEAT is nil, call it just once.
10104
10105Absolute times may be specified in a wide variety of formats;
10106Something of the form `HOUR:MIN:SEC TIMEZONE MONTH/DAY/YEAR', where
10107all fields are numbers, works; the format used by the Unix `date'
10108command works too.
10109
10110Relative times may be specified as a series of numbers followed by units:
10111  1 min         	denotes one minute from now.
10112  min			does too.
10113  1 min 5 sec		denotes 65 seconds from now.
10114  1 min 2 sec 3 hour 4 day 5 week 6 fortnight 7 month 8 year
10115			denotes the sum of all the given durations from now.Ftpu-edt-on
10116Turn on TPU/edt emulation.Ftpu-set-scroll-margins
10117Set scroll margins.Ftpu-set-cursor-free
10118Allow the cursor to move freely about the screen.Ftpu-set-cursor-bound
10119Constrain the cursor to the flow of the text.Ftq-create
10120Create and return a transaction queue communicating with PROCESS.
10121PROCESS should be a subprocess capable of sending and receiving
10122streams of bytes.  It may be a local process, or it may be connected
10123to a tcp server on another machine.Vtrace-buffer
10124*Trace output will by default go to that buffer.Ftrace-function
10125Traces FUNCTION with trace output going to BUFFER.
10126For every call of FUNCTION Lisp-style trace messages that display argument
10127and return values will be inserted into BUFFER. This function generates the
10128trace advice for FUNCTION and activates it together with any other advice
10129there might be!! The trace BUFFER will popup whenever FUNCTION is called.
10130Do not use this to trace functions that switch buffers or do any other
10131display oriented stuff, use `trace-function-background' instead.Ftrace-function-background
10132Traces FUNCTION with trace output going quietly to BUFFER.
10133For every call of FUNCTION Lisp-style trace messages that display argument
10134and return values will be inserted into BUFFER. This function generates the
10135trace advice for FUNCTION and activates it together with any other advice
10136there might be!! Trace output will quietly go to BUFFER without changing
10137the window or buffer configuration at all.Vtc-mode-map
10138Keymap for commands for two-column mode.Ftc-two-columns
10139Split current window vertically for two-column editing.
10140
10141When called the first time, associates a buffer with the current
10142buffer.  Both buffers are put in two-column minor mode and
10143tc-mode-hook gets called on both.  These buffers remember
10144about one another, even when renamed.
10145
10146When called again, restores the screen layout with the current buffer
10147first and the associated buffer to it's right.
10148
10149If you include long lines, i.e which will span both columns (eg.
10150source code), they should be in what will be the first column, with
10151the associated buffer having empty lines next to them.
10152
10153You have the following commands at your disposal:
10154
10155\[tc-two-columns]   Rearrange screen
10156\[tc-associate-buffer]   Reassociate buffer after changing major mode
10157\[tc-scroll-up]   Scroll both buffers up by a screenfull
10158\[tc-scroll-down]   Scroll both buffers down by a screenful
10159\[tc-scroll-line]   Scroll both buffers up by one or more lines
10160\[tc-recenter]   Recenter and realign other buffer
10161\[shrink-window-horizontally], \[enlarge-window-horizontally]   Shrink, enlarge current column
10162\[tc-associated-buffer]   Switch to associated buffer
10163\[tc-merge]   Merge both buffers
10164
10165These keybindings can be customized in your ~/.emacs by `tc-prefix'
10166and `tc-mode-map'.
10167
10168The appearance of the screen can be customized by the variables
10169`tc-window-width', `tc-beyond-fill-column',
10170`tc-mode-line-format' and `truncate-partial-width-windows'.Ftc-associate-buffer
10171Associate another buffer with this one in two-column minor mode.
10172Can also be used to associate a just previously visited file, by
10173accepting the proposed default buffer.
10174
10175See  \[tc-two-columns]  and  `two-column.el'  for further details.Ftc-split
10176Unmerge a two-column text into two buffers in two-column minor mode.
10177The text is unmerged at the cursor's column which becomes the local
10178value of `tc-window-width'.  Only lines that have the ARG same
10179preceding characters at that column get split.  The ARG preceding
10180characters without any leading whitespace become the local value for
10181`tc-separator'.  This way lines that continue across both
10182columns remain untouched in the first buffer.
10183
10184This function can be used with a prototype line, to set up things as
10185you like them.  You write the first line of each column with the
10186separator you like and then unmerge that line.  E.g.:
10187
10188First column's text    sSs  Second columns text
10189		       \___/\
10190			/    \
10191   5 character Separator      You type  M-5 \[tc-split]  with the point here
10192
10193See  \[tc-two-columns]  and  `two-column.el'  for further details.Ftc-dissociate
10194Turn off two-column minor mode in current and associated buffer.
10195If the associated buffer is unmodified and empty, it is killed.Ftc-merge
10196Merges the associated buffer with the current buffer.
10197They get merged at the column, which is the value of
10198`tc-window-width', i.e. usually at the vertical window
10199separator.  This separator gets replaced with white space.  Beyond
10200that the value of gets inserted on merged lines.  The two columns are
10201thus pasted side by side, in a single text.  If the other buffer is
10202not displayed to the left of this one, then this one becomes the left
10203column.
10204
10205If you want `tc-separator' on empty lines in the second column,
10206you should put just one space in them.  In the final result, you can strip
10207off trailing spaces with \[beginning-of-buffer] \[replace-regexp] [ SPC TAB ] + $ RET RETFtc-associated-buffer
10208Switch to associated buffer.Ftc-scroll-line
10209Scroll current window upward by ARG lines.
10210The associated window gets scrolled to the same line.Ftc-scroll-up
10211Scroll current window upward by ARG screens.
10212The associated window gets scrolled to the same line.Ftc-scroll-down
10213Scroll current window downward by ARG screens.
10214The associated window gets scrolled to the same line.Ftc-recenter
10215Center point in window.  With ARG, put point on line ARG.
10216This counts from bottom if ARG is negative.  The associated window
10217gets scrolled to the same line.Funderline-region
10218Underline all nonblank characters in the region.
10219Works by overstriking underscores.
10220Called from program, takes two arguments START and END
10221which specify the range to operate on.Fununderline-region
10222Remove all underlining (overstruck underscores) in the region.
10223Called from program, takes two arguments START and END
10224which specify the range to operate on.Fbatch-unrmail
10225Convert Rmail files to system inbox format.
10226Specify the input Rmail file names as command line arguments.
10227For each Rmail file, the corresponding output file name
10228is made by adding `.mail' at the end.
10229For example, invoke `emacs -batch -f batch-unrmail RMAIL'.Funrmail
10230Convert Rmail file FILE to system inbox format file TO-FILE.Vreplace-copying-with
10231*If non-nil, replace copying notices with this file.Fupdate-copyright
10232Update the copyright notice at the beginning of the buffer
10233to indicate the current year.  If optional arg REPLACE is given
10234(interactively, with prefix arg) replace the years in the notice
10235rather than adding the current year after them.
10236If `replace-copying-with' is set, the copying permissions following the
10237copyright are replaced as well.
10238
10239If optional third argument ASK is non-nil, the user is prompted for whether
10240or not to update the copyright.  If optional fourth argument ASK-YEAR is
10241non-nil, the user is prompted for whether or not to replace the year rather
10242than adding to it.Fask-to-update-copyright
10243If the current buffer contains a copyright notice that is out of date,
10244ask the user if it should be updated with `update-copyright' (which see).
10245Put this on write-file-hooks.Fask-user-about-lock
10246Ask user what to do when he wants to edit FILE but it is locked by USER.
10247This function has a choice of three things to do:
10248  do (signal 'buffer-file-locked (list FILE USER))
10249    to refrain from editing the file
10250  return t (grab the lock on the file)
10251  return nil (edit the file even though it is locked).
10252You can rewrite it to use any criterion you like to choose which one to do.Fask-user-about-supersession-threat
10253Ask a user who is about to modify an obsolete buffer what to do.
10254This function has two choices: it can return, in which case the modification
10255of the buffer will proceed, or it can (signal 'file-supersession (file)),
10256in which case the proposed buffer modification will not be made.
10257
10258You can rewrite this to use any criterion you like to choose which one to do.
10259The buffer in question is current when this function is called.Vvc-checkin-hook
10260*List of functions called after a checkin is done.  See `run-hooks'.Fvc-next-action
10261Do the next logical checkin or checkout operation on the current file.
10262   If the file is not already registered, this registers it for version
10263control and then retrieves a writable, locked copy for editing.
10264   If the file is registered and not locked by anyone, this checks out
10265a writable and locked file ready for editing.
10266   If the file is checked out and locked by the calling user, this
10267first checks to see if the file has changed since checkout.  If not,
10268it performs a revert.
10269   If the file has been changed, this pops up a buffer for entry
10270of a log message; when the message has been entered, it checks in the
10271resulting changes along with the log message as change commentary.  If
10272the variable `vc-keep-workfiles' is non-nil (which is its default), a
10273read-only copy of the changed file is left in place afterwards.
10274   If the file is registered and locked by someone else, you are given
10275the option to steal the lock.
10276   If you call this from within a VC dired buffer with no files marked,
10277it will operate on the file in the current line.
10278   If you call this from within a VC dired buffer, and one or more
10279files are marked, it will accept a log message and then operate on
10280each one.  The log message will be used as a comment for any register
10281or checkin operations, but ignored when doing checkouts.  Attempted
10282lock steals will raise an error.
10283
10284   For checkin, a prefix argument lets you specify the version number to use.Fvc-register
10285Register the current file into your version-control system.Fvc-diff
10286Display diffs between file versions.
10287Normally this compares the current file and buffer with the most recent
10288checked in version of that file.  This uses no arguments.
10289With a prefix argument, it reads the file name to use
10290and two version designators specifying which versions to compare.Fvc-version-other-window
10291Visit version REV of the current buffer in another window.
10292If the current buffer is named `F', the version is named `F.~REV~'.
10293If `F.~REV~' already exists, it is used instead of being re-created.Fvc-insert-headers
10294Insert headers in a file for use with your version-control system.
10295Headers desired are inserted at the start of the buffer, and are pulled from
10296the variable `vc-header-alist'.Fvc-directory
10297Show version-control status of all files under the current directory.Fvc-create-snapshot
10298Make a snapshot called NAME.
10299The snapshot is made from all registered files at or below the current
10300directory.  For each file, the version level of its latest
10301version becomes part of the named configuration.Fvc-retrieve-snapshot
10302Retrieve the snapshot called NAME.
10303This function fails if any files are locked at or below the current directory
10304Otherwise, all registered files are checked out (unlocked) at their version
10305levels in the snapshot.Fvc-print-log
10306List the change log of the current buffer in a window.Fvc-revert-buffer
10307Revert the current buffer's file back to the latest checked-in version.
10308This asks for confirmation if the buffer contents are not identical
10309to that version.Fvc-cancel-version
10310Get rid of most recently checked in version of this file.
10311A prefix argument means do not revert the buffer afterwards.Fvc-update-change-log
10312Find change log file and add entries from recent RCS logs.
10313The mark is left at the end of the text prepended to the change log.
10314With prefix arg of C-u, only find log entries for the current buffer's file.
10315With any numeric prefix arg, find log entries for all files currently visited.
10316Otherwise, find log entries for all registered files in the default directory.
10317From a program, any arguments are passed to the `rcs2log' script.Fvi-mode
10318Major mode that acts like the `vi' editor.
10319The purpose of this mode is to provide you the combined power of vi (namely,
10320the "cross product" effect of commands and repeat last changes) and Emacs.
10321
10322This command redefines nearly all keys to look like vi commands.
10323It records the previous major mode, and any vi command for input
10324(`i', `a', `s', etc.) switches back to that mode.
10325Thus, ordinary Emacs (in whatever major mode you had been using)
10326is "input" mode as far as vi is concerned.
10327
10328To get back into vi from "input" mode, you must issue this command again.
10329Therefore, it is recommended that you assign it to a key.
10330
10331Major differences between this mode and real vi :
10332
10333* Limitations and unsupported features
10334  - Search patterns with line offset (e.g. /pat/+3 or /pat/z.) are
10335    not supported.
10336  - Ex commands are not implemented; try ':' to get some hints.
10337  - No line undo (i.e. the 'U' command), but multi-undo is a standard feature.
10338
10339* Modifications
10340  - The stopping positions for some point motion commands (word boundary,
10341    pattern search) are slightly different from standard 'vi'.
10342    Also, no automatic wrap around at end of buffer for pattern searching.
10343  - Since changes are done in two steps (deletion then insertion), you need
10344    to undo twice to completely undo a change command.  But this is not needed
10345    for undoing a repeated change command.
10346  - No need to set/unset 'magic', to search for a string with regular expr
10347    in it just put a prefix arg for the search commands.  Replace cmds too.
10348  - ^R is bound to incremental backward search, so use ^L to redraw screen.
10349
10350* Extensions
10351  - Some standard (or modified) Emacs commands were integrated, such as
10352    incremental search, query replace, transpose objects, and keyboard macros.
10353  - In command state, ^X links to the 'ctl-x-map', and ESC can be linked to
10354    esc-map or set undefined.  These can give you the full power of Emacs.
10355  - See vi-com-map for those keys that are extensions to standard vi, e.g.
10356    `vi-name-last-change-or-macro', `vi-verify-spelling', `vi-locate-def',
10357    `vi-mark-region', and 'vi-quote-words'.  Some of them are quite handy.
10358  - Use \[vi-switch-mode] to switch among different modes quickly.
10359
10360Syntax table and abbrevs while in vi mode remain as they were in Emacs.Fview-file
10361View FILE in View mode, returning to previous buffer when done.
10362The usual Emacs commands are not available; instead,
10363a special set of commands (mostly letters and punctuation)
10364are defined for moving around in the buffer.
10365Space scrolls forward, Delete scrolls backward.
10366For list of all View commands, type ? or h while viewing.
10367
10368This command runs the normal hook `view-mode-hook'.Fview-file-other-window
10369View FILE in View mode in other window.
10370Return to previous buffer when done.
10371The usual Emacs commands are not available; instead,
10372a special set of commands (mostly letters and punctuation)
10373are defined for moving around in the buffer.
10374Space scrolls forward, Delete scrolls backward.
10375For list of all View commands, type ? or h while viewing.
10376
10377This command runs the normal hook `view-mode-hook'.Fview-buffer
10378View BUFFER in View mode, returning to previous buffer when done.
10379The usual Emacs commands are not available; instead,
10380a special set of commands (mostly letters and punctuation)
10381are defined for moving around in the buffer.
10382Space scrolls forward, Delete scrolls backward.
10383For list of all View commands, type ? or h while viewing.
10384
10385This command runs the normal hook `view-mode-hook'.Fview-buffer-other-window
10386View BUFFER in View mode in another window,
10387returning to original buffer when done *only* if
10388prefix argument NOT-RETURN is nil (which is the default).
10389
10390The usual Emacs commands are not available in View mode; instead,
10391a special set of commands (mostly letters and punctuation)
10392are defined for moving around in the buffer.
10393Space scrolls forward, Delete scrolls backward.
10394For list of all View commands, type ? or h while viewing.
10395
10396This command runs the normal hook `view-mode-hook'.Fview-mode
10397Major mode for viewing text but not editing it.
10398Letters do not insert themselves.  Instead these commands are provided.
10399Most commands take prefix arguments.  Commands dealing with lines
10400default to "scroll size" lines (initially size of window).
10401Search commands default to a repeat count of one.
10402M-< or <	move to beginning of buffer.
10403M-> or >	move to end of buffer.
10404C-v or Space	scroll forward lines.
10405M-v or DEL	scroll backward lines.
10406CR or LF	scroll forward one line (backward with prefix argument).
10407z		like Space except set number of lines for further
10408		   scrolling commands to scroll by.
10409C-u and Digits	provide prefix arguments.  `-' denotes negative argument.
10410=		prints the current line number.
10411g		goes to line given by prefix argument.
10412/ or M-C-s	searches forward for regular expression
10413\ or M-C-r	searches backward for regular expression.
10414n		searches forward for last regular expression.
10415p		searches backward for last regular expression.
10416C-@ or .	set the mark.
10417x		exchanges point and mark.
10418C-s or s	do forward incremental search.
10419C-r or r	do reverse incremental search.
10420@ or '		return to mark and pops mark ring.
10421		  Mark ring is pushed at start of every
10422		  successful search and when jump to line to occurs.
10423		  The mark is set on jump to buffer start or end.
10424? or h		provide help message (list of commands).
10425\[Helper-help]		provides help (list of commands or description of a command).
10426C-n		moves down lines vertically.
10427C-p		moves upward lines vertically.
10428C-l		recenters the screen.
10429q or C-c	exit view-mode and return to previous buffer.
10430
10431Entry to this mode runs the normal hook `view-mode-hook'.
10432
10433\{view-mode-map}Fvip-mode
10434Turn on VIP emulation of VI.Fwordstar-mode
10435Major mode with WordStar-like key bindings.
10436
10437BUGS:
10438 - Help menus with WordStar commands (C-j just calls help-for-help)
10439   are not implemented
10440 - Options for search and replace
10441 - Show markers (C-k h) is somewhat strange
10442 - Search and replace (C-q a) is only available in forward direction
10443
10444No key bindings beginning with ESC are installed, they will work
10445Emacs-like.
10446
10447The key bindings are:
10448
10449  C-a		backward-word
10450  C-b		fill-paragraph
10451  C-c		scroll-up-line
10452  C-d		forward-char
10453  C-e		previous-line
10454  C-f		forward-word
10455  C-g		delete-char
10456  C-h		backward-char
10457  C-i		indent-for-tab-command
10458  C-j		help-for-help
10459  C-k		ordstar-C-k-map
10460  C-l		ws-repeat-search
10461  C-n		open-line
10462  C-p		quoted-insert
10463  C-r		scroll-down-line
10464  C-s		backward-char
10465  C-t		kill-word
10466  C-u		keyboard-quit
10467  C-v		overwrite-mode
10468  C-w		scroll-down
10469  C-x		next-line
10470  C-y		kill-complete-line
10471  C-z		scroll-up
10472
10473  C-k 0		ws-set-marker-0
10474  C-k 1		ws-set-marker-1
10475  C-k 2		ws-set-marker-2
10476  C-k 3		ws-set-marker-3
10477  C-k 4		ws-set-marker-4
10478  C-k 5		ws-set-marker-5
10479  C-k 6		ws-set-marker-6
10480  C-k 7		ws-set-marker-7
10481  C-k 8		ws-set-marker-8
10482  C-k 9		ws-set-marker-9
10483  C-k b		ws-begin-block
10484  C-k c		ws-copy-block
10485  C-k d		save-buffers-kill-emacs
10486  C-k f		find-file
10487  C-k h		ws-show-markers
10488  C-k i		ws-indent-block
10489  C-k k		ws-end-block
10490  C-k p		ws-print-block
10491  C-k q		kill-emacs
10492  C-k r		insert-file
10493  C-k s		save-some-buffers
10494  C-k t		ws-mark-word
10495  C-k u		ws-exdent-block
10496  C-k C-u	keyboard-quit
10497  C-k v		ws-move-block
10498  C-k w		ws-write-block
10499  C-k x		kill-emacs
10500  C-k y		ws-delete-block
10501
10502  C-o c		center-line
10503  C-o b		switch-to-buffer
10504  C-o j		justify-current-line
10505  C-o k		kill-buffer
10506  C-o l		list-buffers
10507  C-o m		auto-fill-mode
10508  C-o r		set-fill-column
10509  C-o C-u	keyboard-quit
10510  C-o wd	delete-other-windows
10511  C-o wh	split-window-horizontally
10512  C-o wo	other-window
10513  C-o wv	split-window-vertically
10514
10515  C-q 0		ws-find-marker-0
10516  C-q 1		ws-find-marker-1
10517  C-q 2		ws-find-marker-2
10518  C-q 3		ws-find-marker-3
10519  C-q 4		ws-find-marker-4
10520  C-q 5		ws-find-marker-5
10521  C-q 6		ws-find-marker-6
10522  C-q 7		ws-find-marker-7
10523  C-q 8		ws-find-marker-8
10524  C-q 9		ws-find-marker-9
10525  C-q a		ws-query-replace
10526  C-q b		ws-to-block-begin
10527  C-q c		end-of-buffer
10528  C-q d		end-of-line
10529  C-q f		ws-search
10530  C-q k		ws-to-block-end
10531  C-q l		ws-undo
10532  C-q p		ws-last-cursorp
10533  C-q r		beginning-of-buffer
10534  C-q C-u	keyboard-quit
10535  C-q w		ws-last-error
10536  C-q y		ws-kill-eol
10537  C-q DEL	ws-kill-bol
10538Frun-scheme
10539Run an inferior Scheme process.
10540Output goes to the buffer `*scheme*'.
10541With argument, asks for a command line.Fyow
10542Return or display a random Zippy quotation.  With prefix arg, insert it.Finsert-zippyism
10543Prompt with completion for a known Zippy quotation, and insert it at point.Fpsychoanalyze-pinhead
10544Zippy goes to the analyst.Fmap-y-or-n-p
10545Ask a series of boolean questions.
10546Takes args PROMPTER ACTOR LIST, and optional args HELP and ACTION-ALIST.
10547
10548LIST is a list of objects, or a function of no arguments to return the next
10549object or nil.
10550
10551If PROMPTER is a string, the prompt is (format PROMPTER OBJECT).  If not
10552a string, PROMPTER is a function of one arg (an object from LIST), which
10553returns a string to be used as the prompt for that object.  If the return
10554value is not a string, it is eval'd to get the answer; it may be nil to
10555ignore the object, t to act on the object without asking the user, or a
10556form to do a more complex prompt.
10557
10558ACTOR is a function of one arg (an object from LIST),
10559which gets called with each object that the user answers `yes' for.
10560
10561If HELP is given, it is a list (OBJECT OBJECTS ACTION),
10562where OBJECT is a string giving the singular noun for an elt of LIST;
10563OBJECTS is the plural noun for elts of LIST, and ACTION is a transitive
10564verb describing ACTOR.  The default is ("object" "objects" "act on").
10565
10566At the prompts, the user may enter y, Y, or SPC to act on that object;
10567n, N, or DEL to skip that object; ! to act on all following objects;
10568ESC or q to exit (skip all following objects); . (period) to act on the
10569current object and then exit; or \[help-command] to get help.
10570
10571If ACTION-ALIST is given, it is an alist (KEY FUNCTION HELP) of extra keys
10572that will be accepted.  KEY is a character; FUNCTION is a function of one
10573arg (an object from LIST); HELP is a string.  When the user hits KEY,
10574FUNCTION is called.  If it returns non-nil, the object is considered
10575"acted upon", and the next object from LIST is processed.  If it returns
10576nil, the prompt is repeated for the same object.
10577
10578Final optional argument NO-CURSOR-IN-ECHO-AREA non-nil says not to set
10579`cursor-in-echo-area' while prompting.
10580
10581This function uses `query-replace-map' to define the standard responses,
10582but not all of the responses which `query-replace' understands
10583are meaningful here.
10584
10585Returns the number of actions taken.Fforward-page
10586Move forward to page boundary.  With arg, repeat, or go back if negative.
10587A page boundary is any line whose beginning matches the regexp
10588`page-delimiter'.Fbackward-page
10589Move backward to page boundary.  With arg, repeat, or go fwd if negative.
10590A page boundary is any line whose beginning matches the regexp
10591`page-delimiter'.Fmark-page
10592Put mark at end of page, point at beginning.
10593A numeric arg specifies to move forward or backward by that many pages,
10594thus marking a page other than the one point was originally in.Fnarrow-to-page
10595Make text outside current page invisible.
10596A numeric arg specifies to move forward or backward by that many pages,
10597thus showing a page other than the one point was originally in.Fcount-lines-page
10598Report number of lines on current page, and how many are before or after point.Fwhat-page
10599Print page and line number of point.Vparagraph-start
10600*Regexp for beginning of a line that starts OR separates paragraphs.
10601This regexp should match lines that separate paragraphs
10602and should also match lines that start a paragraph
10603(and are part of that paragraph).
10604The variable `paragraph-separate' specifies how to distinguish
10605lines that start paragraphs from lines that separate them.Vparagraph-separate
10606*Regexp for beginning of a line that separates paragraphs.
10607If you change this, you may have to change paragraph-start also.Vsentence-end
10608*Regexp describing the end of a sentence.
10609All paragraph boundaries also end sentences, regardless.
10610
10611In order to be recognized as the end of a sentence, the ending period,
10612question mark, or exclamation point must be followed by two spaces,
10613unless it's inside some sort of quotes or parenthesis.Vpage-delimiter
10614*Regexp describing line-beginnings that separate pages.Vparagraph-ignore-fill-prefix
10615Non-nil means the paragraph commands are not affected by `fill-prefix'.
10616This is desirable in modes where blank lines are the paragraph delimiters.Fforward-paragraph
10617Move forward to end of paragraph.
10618With arg N, do it N times; negative arg -N means move backward N paragraphs.
10619
10620A line which `paragraph-start' matches either separates paragraphs
10621(if `paragraph-separate' matches it also) or is the first line of a paragraph.
10622A paragraph end is the beginning of a line which is not part of the paragraph
10623to which the end of the previous line belongs, or the end of the buffer.Fbackward-paragraph
10624Move backward to start of paragraph.
10625With arg N, do it N times; negative arg -N means move forward N paragraphs.
10626
10627A paragraph start is the beginning of a line which is a
10628`first-line-of-paragraph' or which is ordinary text and follows a
10629paragraph-separating line; except: if the first real line of a
10630paragraph is preceded by a blank line, the paragraph starts at that
10631blank line.
10632
10633See `forward-paragraph' for more information.Fmark-paragraph
10634Put point at beginning of this paragraph, mark at end.
10635The paragraph marked is the one that contains point or follows point.Fkill-paragraph
10636Kill forward to end of paragraph.
10637With arg N, kill forward to Nth end of paragraph;
10638negative arg -N means kill backward to Nth start of paragraph.Fbackward-kill-paragraph
10639Kill back to start of paragraph.
10640With arg N, kill back to Nth start of paragraph;
10641negative arg -N means kill forward to Nth end of paragraph.Ftranspose-paragraphs
10642Interchange this (or next) paragraph with previous one.Fforward-sentence
10643Move forward to next `sentence-end'.  With argument, repeat.
10644With negative argument, move backward repeatedly to `sentence-beginning'.
10645
10646The variable `sentence-end' is a regular expression that matches ends of
10647sentences.  Also, every paragraph boundary terminates sentences as well.Fbackward-sentence
10648Move backward to start of sentence.  With arg, do it arg times.
10649See `forward-sentence' for more information.Fkill-sentence
10650Kill from point to end of sentence.
10651With arg, repeat; negative arg -N means kill back to Nth start of sentence.Fbackward-kill-sentence
10652Kill back from point to start of sentence.
10653With arg, repeat, or kill forward to Nth end of sentence if negative arg -N.Fmark-end-of-sentence
10654Put mark at end of sentence.  Arg works as in `forward-sentence'.Ftranspose-sentences
10655Interchange this (next) and previous sentence.Vregister-alist
10656Alist of elements (NAME . CONTENTS), one for each Emacs register.
10657NAME is a character (a number).  CONTENTS is a string, number,
10658frame configuration, mark or list.
10659A list of strings represents a rectangle.
10660A list of the form (file . NAME) represents the file named NAME.Fget-register
10661Return contents of Emacs register named CHAR, or nil if none.Fset-register
10662Set contents of Emacs register named CHAR to VALUE.  Returns VALUE.
10663See the documentation of the variable `register-alist' for possible VALUE.Fpoint-to-register
10664Store current location of point in register REGISTER.
10665With prefix argument, store current frame configuration.
10666Use \[jump-to-register] to go to that location or restore that configuration.
10667Argument is a character, naming the register.Fwindow-configuration-to-register
10668Store the window configuration of the selected frame in register REGISTER.
10669Use \[jump-to-register] to restore the configuration.
10670Argument is a character, naming the register.Fframe-configuration-to-register
10671Store the window configuration of all frames in register REGISTER.
10672Use \[jump-to-register] to restore the configuration.
10673Argument is a character, naming the register.Fjump-to-register
10674Move point to location stored in a register.
10675If the register contains a file name, find that file.
10676 (To put a file name in a register, you must use `set-register'.)
10677If the register contains a window configuration (one frame) or a frame
10678configuration (all frames), restore that frame or all frames accordingly.
10679First argument is a character, naming the register.
10680Optional second arg non-nil (interactively, prefix argument) says to
10681delete any existing frames that the frame configuration doesn't mention.
10682(Otherwise, these frames are iconified.)Fview-register
10683Display what is contained in register named REGISTER.
10684REGISTER is a character.Finsert-register
10685Insert contents of register REG.  REG is a character.
10686Normally puts point before and mark after the inserted text.
10687If optional second arg is non-nil, puts mark before and point after.
10688Interactively, second arg is non-nil if prefix arg is supplied.Fcopy-to-register
10689Copy region into register REG.  With prefix arg, delete as well.
10690Called from program, takes four args: REG, START, END and DELETE-FLAG.
10691START and END are buffer positions indicating what to copy.Fappend-to-register
10692Append region to text in register REG.  With prefix arg, delete as well.
10693Called from program, takes four args: REG, START, END and DELETE-FLAG.
10694START and END are buffer positions indicating what to append.Fprepend-to-register
10695Prepend region to text in register REG.  With prefix arg, delete as well.
10696Called from program, takes four args: REG, START, END and DELETE-FLAG.
10697START and END are buffer positions indicating what to prepend.Fcopy-rectangle-to-register
10698Copy rectangular region into register REG.  With prefix arg, delete as well.
10699Called from program, takes four args: REG, START, END and DELETE-FLAG.
10700START and END are buffer positions giving two corners of rectangle.Vcase-replace
10701*Non-nil means query-replace should preserve case in replacements.Fquery-replace
10702Replace some occurrences of FROM-STRING with TO-STRING.
10703As each match is found, the user must type a character saying
10704what to do with it.  For directions, type \[help-command] at that time.
10705
10706Preserves case in each replacement if `case-replace' and `case-fold-search'
10707are non-nil and FROM-STRING has no uppercase letters.
10708Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
10709only matches surrounded by word boundaries.
10710
10711To customize possible responses, change the "bindings" in `query-replace-map'.Fquery-replace-regexp
10712Replace some things after point matching REGEXP with TO-STRING.
10713As each match is found, the user must type a character saying
10714what to do with it.  For directions, type \[help-command] at that time.
10715
10716Preserves case in each replacement if `case-replace' and `case-fold-search'
10717are non-nil and REGEXP has no uppercase letters.
10718Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
10719only matches surrounded by word boundaries.
10720In TO-STRING, `\&' stands for whatever matched the whole of REGEXP,
10721and `\=\N' (where N is a digit) stands for
10722 whatever what matched the Nth `\(...\)' in REGEXP.Fmap-query-replace-regexp
10723Replace some matches for REGEXP with various strings, in rotation.
10724The second argument TO-STRINGS contains the replacement strings, separated
10725by spaces.  This command works like `query-replace-regexp' except
10726that each successive replacement uses the next successive replacement string,
10727wrapping around from the last such string to the first.
10728
10729Non-interactively, TO-STRINGS may be a list of replacement strings.
10730
10731A prefix argument N says to use each replacement string N times
10732before rotating to the next.Freplace-string
10733Replace occurrences of FROM-STRING with TO-STRING.
10734Preserve case in each match if `case-replace' and `case-fold-search'
10735are non-nil and FROM-STRING has no uppercase letters.
10736Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
10737only matches surrounded by word boundaries.
10738
10739This function is usually the wrong thing to use in a Lisp program.
10740What you probably want is a loop like this:
10741  (while (search-forward FROM-STRING nil t)
10742    (replace-match TO-STRING nil t))
10743which will run faster and will not set the mark or print anything.Freplace-regexp
10744Replace things after point matching REGEXP with TO-STRING.
10745Preserve case in each match if `case-replace' and `case-fold-search'
10746are non-nil and REGEXP has no uppercase letters.
10747Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
10748only matches surrounded by word boundaries.
10749In TO-STRING, `\&' stands for whatever matched the whole of REGEXP,
10750and `\=\N' (where N is a digit) stands for
10751 whatever what matched the Nth `\(...\)' in REGEXP.
10752
10753This function is usually the wrong thing to use in a Lisp program.
10754What you probably want is a loop like this:
10755  (while (re-search-forward REGEXP nil t)
10756    (replace-match TO-STRING nil nil))
10757which will run faster and will not set the mark or print anything.Vregexp-history
10758History list for some commands that read regular expressions.Fkeep-lines
10759Delete all lines except those containing matches for REGEXP.
10760A match split across lines preserves all the lines it lies in.
10761Applies to all lines after point.Fflush-lines
10762Delete lines containing matches for REGEXP.
10763If a match is split across lines, all the lines it lies in are deleted.
10764Applies to lines after point.Fhow-many
10765Print number of matches for REGEXP following point.Foccur-mode
10766Major mode for output from \[occur].
10767Move point to one of the occurrences in this buffer,
10768then use \[occur-mode-goto-occurrence] to go to the same occurrence
10769in the buffer that the occurrences were found in.
10770Or click \<occur-mode-map>\[occur-mode-mouse-goto] on an occurrence line.
10771\{occur-mode-map}Foccur-mode-mouse-goto
10772In Occur mode, go to the occurrence whose line you click on.Foccur-mode-goto-occurrence
10773Go to the occurrence the current line describes.Vlist-matching-lines-default-context-lines
10774*Default number of context lines to include around a `list-matching-lines'
10775match.  A negative number means to include that many lines before the match.
10776A positive number means to include that many lines both before and after.Foccur
10777Show all lines in the current buffer containing a match for REGEXP.
10778
10779If a match spreads across multiple lines, all those lines are shown.
10780
10781Each line is displayed with NLINES lines before and after, or -NLINES
10782before if NLINES is negative.
10783NLINES defaults to `list-matching-lines-default-context-lines'.
10784Interactively it is the prefix arg.
10785
10786The lines are shown in a buffer named `*Occur*'.
10787It serves as a menu to find any of the occurrences in this buffer.
10788\[describe-mode] in that buffer will explain how.Vquery-replace-help
10789Help message while in query-replaceVquery-replace-map
10790Keymap that defines the responses to questions in `query-replace'.
10791The "bindings" in this map are not commands; they are answers.
10792The valid answers include `act', `skip', `act-and-show',
10793`exit', `act-and-exit', `edit', `delete-and-edit', `recenter',
10794`automatic', `backup', and `help'.Fperform-replace
10795Subroutine of `query-replace'.  Its complexity handles interactive queries.
10796Don't use this in your own program unless you want to query and set the mark
10797just as `query-replace' does.  Instead, write a simple loop like this:
10798  (while (re-search-forward "foo[ 	]+bar" nil t)
10799    (replace-match "foobar" nil nil))
10800which will run faster and probably do exactly what you want.Vquery-replace-highlight
10801*Non-nil means to highlight words during query replacement.Fopen-line
10802Insert a newline and leave point before it.
10803If there is a fill prefix, insert the fill prefix on the new line
10804if the line would have been empty.
10805With arg N, insert N newlines.Fsplit-line
10806Split current line, moving portion beyond point vertically down.Fquoted-insert
10807Read next input character and insert it.
10808This is useful for inserting control characters.
10809You may also type up to 3 octal digits, to insert a character with that code.
10810
10811In overwrite mode, this function inserts the character anyway, and
10812does not handle octal digits specially.  This means that if you use
10813overwrite as your normal editing mode, you can use this function to
10814insert characters when necessary.
10815
10816In binary overwrite mode, this function does overwrite, and octal
10817digits are interpreted as a character code.  This is supposed to make
10818this function useful in editing binary files.Fdelete-indentation
10819Join this line to previous and fix up whitespace at join.
10820If there is a fill prefix, delete it from the beginning of this line.
10821With argument, join this line to following line.Ffixup-whitespace
10822Fixup white space between objects around point.
10823Leave one space or none, according to the context.Fdelete-horizontal-space
10824Delete all spaces and tabs around point.Fjust-one-space
10825Delete all spaces and tabs around point, leaving one space.Fdelete-blank-lines
10826On blank line, delete all surrounding blank lines, leaving just one.
10827On isolated blank line, delete that one.
10828On nonblank line, delete all blank lines that follow it.Fback-to-indentation
10829Move point to the first non-whitespace character on this line.Fnewline-and-indent
10830Insert a newline, then indent according to major mode.
10831Indentation is done using the value of `indent-line-function'.
10832In programming language modes, this is the same as TAB.
10833In some text modes, where TAB inserts a tab, this command indents to the
10834column specified by the variable `left-margin'.Freindent-then-newline-and-indent
10835Reindent current line, insert newline, then indent the new line.
10836Indentation of both lines is done according to the current major mode,
10837which means calling the current value of `indent-line-function'.
10838In programming language modes, this is the same as TAB.
10839In some text modes, where TAB inserts a tab, this indents to the
10840column specified by the variable `left-margin'.Fbackward-delete-char-untabify
10841Delete characters backward, changing tabs into spaces.
10842Delete ARG chars, and kill (save in kill ring) if KILLP is non-nil.
10843Interactively, ARG is the prefix arg (default 1)
10844and KILLP is t if prefix arg is was specified.Fzap-to-char
10845Kill up to and including ARG'th occurrence of CHAR.
10846Goes backward if ARG is negative; error if CHAR not found.Fbeginning-of-buffer
10847Move point to the beginning of the buffer; leave mark at previous position.
10848With arg N, put point N/10 of the way from the true beginning.
10849
10850Don't use this command in Lisp programs!
10851(goto-char (point-min)) is faster and avoids clobbering the mark.Fend-of-buffer
10852Move point to the end of the buffer; leave mark at previous position.
10853With arg N, put point N/10 of the way from the true end.
10854
10855Don't use this command in Lisp programs!
10856(goto-char (point-max)) is faster and avoids clobbering the mark.Fmark-whole-buffer
10857Put point at beginning and mark at end of buffer.
10858You probably should not use this function in Lisp programs;
10859it is usually a mistake for a Lisp function to use any subroutine
10860that uses or sets the mark.Fcount-lines-region
10861Print number of lines and characters in the region.Fwhat-line
10862Print the current line number (in the buffer) of point.Fcount-lines
10863Return number of lines between START and END.
10864This is usually the number of newlines between them,
10865but can be one more if START is not equal to END
10866and the greater of them is not at the start of a line.Fwhat-cursor-position
10867Print info on cursor position (on screen and within buffer).Ffundamental-mode
10868Major mode not specialized for anything in particular.
10869Other major modes are defined by comparison with this one.Vread-expression-map
10870Minibuffer keymap used for reading Lisp expressions.Feval-expression
10871Evaluate EXPRESSION and print value in minibuffer.
10872Value is also consed on to front of the variable `values'.Fedit-and-eval-command
10873Prompting with PROMPT, let user edit COMMAND and eval result.
10874COMMAND is a Lisp expression.  Let user edit that expression in
10875the minibuffer, then read and evaluate the result.Frepeat-complex-command
10876Edit and re-evaluate last complex command, or ARGth from last.
10877A complex command is one which used the minibuffer.
10878The command is placed in the minibuffer as a Lisp form for editing.
10879The result is executed, repeating the command as changed.
10880If the command has been changed or is not the most recent previous command
10881it is added to the front of the command history.
10882You can use the minibuffer history commands \<minibuffer-local-map>\[next-history-element] and \[previous-history-element]
10883to get different commands to edit and resubmit.Vminibuffer-history
10884Default minibuffer history list.
10885This is used for all minibuffer input
10886except when an alternate history list is specified.Vminibuffer-history-sexp-flag
10887Non-nil when doing history operations on `command-history'.
10888More generally, indicates that the history list being acted on
10889contains expressions rather than strings.Fprevious-matching-history-element
10890Find the previous history element that matches REGEXP.
10891(Previous history elements refer to earlier actions.)
10892With prefix argument N, search for Nth previous match.
10893If N is negative, find the next or Nth next match.Fnext-matching-history-element
10894Find the next history element that matches REGEXP.
10895(The next history element refers to a more recent action.)
10896With prefix argument N, search for Nth next match.
10897If N is negative, find the previous or Nth previous match.Fnext-history-element
10898Insert the next element of the minibuffer history into the minibuffer.Fprevious-history-element
10899Inserts the previous element of the minibuffer history into the minibuffer.Fnext-complete-history-element
10900Get next element of history which is a completion of minibuffer contents.Fprevious-complete-history-element
10901Get previous element of history which is a completion of minibuffer contents.Fgoto-line
10902Goto line ARG, counting from line 1 at beginning of buffer.Fundo
10903Undo some previous changes.
10904Repeat this command to undo more changes.
10905A numeric argument serves as a repeat count.Vpending-undo-list
10906Within a run of consecutive undo commands, list remaining to be undone.Fundo-start
10907Set `pending-undo-list' to the front of the undo list.
10908The next call to `undo-more' will undo the most recently made change.Fundo-more
10909Undo back N undo-boundaries beyond what was already undone recently.
10910Call `undo-start' to get ready to undo recent changes,
10911then call `undo-more' one or more times to undo them.Vshell-command-history
10912History list for some commands that read shell commands.Fshell-command
10913Execute string COMMAND in inferior shell; display output, if any.
10914If COMMAND ends in ampersand, execute it asynchronously.
10915
10916Optional second arg non-nil (prefix arg, if interactive)
10917means insert output in current buffer after point (leave mark after it).
10918This cannot be done asynchronously.Fshell-command-on-region
10919Execute string COMMAND in inferior shell with region as input.
10920Normally display output (if any) in temp buffer `*Shell Command Output*';
10921Prefix arg means replace the region with it.
10922Noninteractive args are START, END, COMMAND, FLAG.
10923Noninteractively FLAG means insert output in place of text from START to END,
10924and put point at the end, but don't alter the mark.
10925
10926If the output is one line, it is displayed in the echo area,
10927but it is nonetheless available in buffer `*Shell Command Output*'
10928even though that buffer is not automatically displayed.  If there is no output
10929or output is inserted in the current buffer then `*Shell Command Output*' is
10930deleted.Funiversal-argument
10931Begin a numeric argument for the following command.
10932Digits or minus sign following \[universal-argument] make up the numeric argument.
10933\[universal-argument] following the digits or minus sign ends the argument.
10934\[universal-argument] without digits or minus sign provides 4 as argument.
10935Repeating \[universal-argument] without digits or minus sign
10936 multiplies the argument by 4 each time.Fdigit-argument
10937Part of the numeric argument for the next command.
10938\[universal-argument] following digits or minus sign ends the argument.Fnegative-argument
10939Begin a negative numeric argument for the next command.
10940\[universal-argument] following digits or minus sign ends the argument.Fforward-to-indentation
10941Move forward ARG lines and position at first nonblank character.Fbackward-to-indentation
10942Move backward ARG lines and position at first nonblank character.Vkill-whole-line
10943*If non-nil, `kill-line' with no arg at beg of line kills the whole line.Fkill-line
10944Kill the rest of the current line; if no nonblanks there, kill thru newline.
10945With prefix argument, kill that many lines from point.
10946Negative arguments kill lines backward.
10947
10948When calling from a program, nil means "no arg",
10949a number counts as a prefix arg.
10950
10951If `kill-whole-line' is non-nil, then kill the whole line
10952when given no argument at the beginning of a line.Vinterprogram-cut-function
10953Function to call to make a killed region available to other programs.
10954
10955Most window systems provide some sort of facility for cutting and
10956pasting text between the windows of different programs.
10957This variable holds a function that Emacs calls whenever text
10958is put in the kill ring, to make the new kill available to other
10959programs.
10960
10961The function takes one or two arguments.
10962The first argument, TEXT, is a string containing
10963the text which should be made available.
10964The second, PUSH, if non-nil means this is a "new" kill;
10965nil means appending to an "old" kill.Vinterprogram-paste-function
10966Function to call to get text cut from other programs.
10967
10968Most window systems provide some sort of facility for cutting and
10969pasting text between the windows of different programs.
10970This variable holds a function that Emacs calls to obtain
10971text that other programs have provided for pasting.
10972
10973The function should be called with no arguments.  If the function
10974returns nil, then no other program has provided such text, and the top
10975of the Emacs kill ring should be used.  If the function returns a
10976string, that string should be put in the kill ring as the latest kill.
10977
10978Note that the function should return a string only if a program other
10979than Emacs has provided a string for pasting; if Emacs provided the
10980most recent string, the function should return nil.  If it is
10981difficult to tell whether Emacs or some other program provided the
10982current string, it is probably good enough to return nil if the string
10983is equal (according to `string=') to the last text Emacs provided.Vkill-ring
10984List of killed text sequences.
10985Since the kill ring is supposed to interact nicely with cut-and-paste
10986facilities offered by window systems, use of this variable should
10987interact nicely with `interprogram-cut-function' and
10988`interprogram-paste-function'.  The functions `kill-new',
10989`kill-append', and `current-kill' are supposed to implement this
10990interaction; you may want to use them instead of manipulating the kill
10991ring directly.Vkill-ring-max
10992*Maximum length of kill ring before oldest elements are thrown away.Vkill-ring-yank-pointer
10993The tail of the kill ring whose car is the last thing yanked.Fkill-new
10994Make STRING the latest kill in the kill ring.
10995Set the kill-ring-yank pointer to point to it.
10996If `interprogram-cut-function' is non-nil, apply it to STRING.Fkill-append
10997Append STRING to the end of the latest kill in the kill ring.
10998If BEFORE-P is non-nil, prepend STRING to the kill.
10999If `interprogram-cut-function' is set, pass the resulting kill to
11000it.Fcurrent-kill
11001Rotate the yanking point by N places, and then return that kill.
11002If N is zero, `interprogram-paste-function' is set, and calling it
11003returns a string, then that string is added to the front of the
11004kill ring and returned as the latest kill.
11005If optional arg DO-NOT-MOVE is non-nil, then don't actually move the
11006yanking point; just return the Nth kill forward.Vkill-read-only-ok
11007*Non-nil means don't signal an error for killing read-only text.Fkill-region
11008Kill between point and mark.
11009The text is deleted but saved in the kill ring.
11010The command \[yank] can retrieve it from there.
11011(If you want to kill and then yank immediately, use \[copy-region-as-kill].)
11012If the buffer is read-only, Emacs will beep and refrain from deleting
11013the text, but put the text in the kill ring anyway.  This means that
11014you can use the killing commands to copy text from a read-only buffer.
11015
11016This is the primitive for programs to kill text (as opposed to deleting it).
11017Supply two arguments, character numbers indicating the stretch of text
11018 to be killed.
11019Any command that calls this function is a "kill command".
11020If the previous command was also a kill command,
11021the text killed this time appends to the text killed last time
11022to make one entry in the kill ring.Fcopy-region-as-kill
11023Save the region as if killed, but don't kill it.
11024If `interprogram-cut-function' is non-nil, also save the text for a window
11025system cut and paste.Fkill-ring-save
11026Save the region as if killed, but don't kill it.
11027This command is similar to `copy-region-as-kill', except that it gives
11028visual feedback indicating the extent of the region being copied.
11029If `interprogram-cut-function' is non-nil, also save the text for a window
11030system cut and paste.Fappend-next-kill
11031Cause following command, if it kills, to append to previous kill.Fyank-pop
11032Replace just-yanked stretch of killed text with a different stretch.
11033This command is allowed only immediately after a `yank' or a `yank-pop'.
11034At such a time, the region contains a stretch of reinserted
11035previously-killed text.  `yank-pop' deletes that text and inserts in its
11036place a different stretch of killed text.
11037
11038With no argument, the previous kill is inserted.
11039With argument N, insert the Nth previous kill.
11040If N is negative, this is a more recent kill.
11041
11042The sequence of kills wraps around, so that after the oldest one
11043comes the newest one.Fyank
11044Reinsert the last stretch of killed text.
11045More precisely, reinsert the stretch of killed text most recently
11046killed OR yanked.  Put point at end, and set mark at beginning.
11047With just C-u as argument, same but put point at beginning (and mark at end).
11048With argument N, reinsert the Nth most recently killed stretch of killed
11049text.
11050See also the command \[yank-pop].Frotate-yank-pointer
11051Rotate the yanking point in the kill ring.
11052With argument, rotate that many kills forward (or backward, if negative).Finsert-buffer
11053Insert after point the contents of BUFFER.
11054Puts mark after the inserted text.
11055BUFFER may be a buffer or a buffer name.Fappend-to-buffer
11056Append to specified buffer the text of the region.
11057It is inserted into that buffer before its point.
11058
11059When calling from a program, give three arguments:
11060BUFFER (or buffer name), START and END.
11061START and END specify the portion of the current buffer to be copied.Fprepend-to-buffer
11062Prepend to specified buffer the text of the region.
11063It is inserted into that buffer after its point.
11064
11065When calling from a program, give three arguments:
11066BUFFER (or buffer name), START and END.
11067START and END specify the portion of the current buffer to be copied.Fcopy-to-buffer
11068Copy to specified buffer the text of the region.
11069It is inserted into that buffer, replacing existing text there.
11070
11071When calling from a program, give three arguments:
11072BUFFER (or buffer name), START and END.
11073START and END specify the portion of the current buffer to be copied.Vmark-even-if-inactive
11074*Non-nil means you can use the mark even when inactive.
11075This option makes a difference in Transient Mark mode.
11076When the option is non-nil, deactivation of the mark
11077turns off region highlighting, but commands that use the mark
11078behave as if the mark were still active.Fmark
11079Return this buffer's mark value as integer; error if mark inactive.
11080If optional argument FORCE is non-nil, access the mark value
11081even if the mark is not currently active, and return nil
11082if there is no mark at all.
11083
11084If you are using this in an editing command, you are most likely making
11085a mistake; see the documentation of `set-mark'.Fdeactivate-mark
11086Deactivate the mark by setting `mark-active' to nil.
11087(That makes a difference only in Transient Mark mode.)
11088Also runs the hook `deactivate-mark-hook'.Fset-mark
11089Set this buffer's mark to POS.  Don't use this function!
11090That is to say, don't use this function unless you want
11091the user to see that the mark has moved, and you want the previous
11092mark position to be lost.
11093
11094Normally, when a new mark is set, the old one should go on the stack.
11095This is why most applications should use push-mark, not set-mark.
11096
11097Novice Emacs Lisp programmers often try to use the mark for the wrong
11098purposes.  The mark saves a location for the user's convenience.
11099Most editing commands should not alter the mark.
11100To remember a location for internal use in the Lisp program,
11101store it in a Lisp variable.  Example:
11102
11103   (let ((beg (point))) (forward-line 1) (delete-region beg (point))).Vmark-ring
11104The list of saved former marks of the current buffer,
11105most recent first.Vmark-ring-max
11106*Maximum size of mark ring.  Start discarding off end if gets this big.Vglobal-mark-ring
11107The list of saved global marks, most recent first.Vglobal-mark-ring-max
11108*Maximum size of global mark ring.  Start discarding off end if gets this big.Fset-mark-command
11109Set mark at where point is, or jump to mark.
11110With no prefix argument, set mark, push old mark position on local mark
11111ring, and push mark on global mark ring.
11112With argument, jump to mark, and pop a new position for mark off the ring
11113(does not affect global mark ring).
11114
11115Novice Emacs Lisp programmers often try to use the mark for the wrong
11116purposes.  See the documentation of `set-mark' for more information.Fpush-mark
11117Set mark at LOCATION (point, by default) and push old mark on mark ring.
11118If the last global mark pushed was not in the current buffer,
11119also push LOCATION on the global mark ring.
11120Display `Mark set' unless the optional second arg NOMSG is non-nil.
11121In Transient Mark mode, activate mark if optional third arg ACTIVATE non-nil.
11122
11123Novice Emacs Lisp programmers often try to use the mark for the wrong
11124purposes.  See the documentation of `set-mark' for more information.
11125
11126In Transient Mark mode, this does not activate the mark.Fpop-mark
11127Pop off mark ring into the buffer's actual mark.
11128Does not set point.  Does nothing if mark ring is empty.Fexchange-point-and-mark
11129Put the mark where point is now, and point where the mark is now.
11130This command works even when the mark is not active,
11131and it reactivates the mark.Ftransient-mark-mode
11132Toggle Transient Mark mode.
11133With arg, turn Transient Mark mode on if arg is positive, off otherwise.
11134
11135In Transient Mark mode, when the mark is active, the region is highlighted.
11136Changing the buffer "deactivates" the mark.
11137So do certain other operations that set the mark
11138but whose main purpose is something else--for example,
11139incremental search, \[beginning-of-buffer], and \[end-of-buffer].Fpop-global-mark
11140Pop off global mark ring and jump to the top location.Vnext-line-add-newlines
11141*If non-nil, `next-line' inserts newline to avoid `end of buffer' error.Fnext-line
11142Move cursor vertically down ARG lines.
11143If there is no character in the target line exactly under the current column,
11144the cursor is positioned after the character in that line which spans this
11145column, or at the end of the line if it is not long enough.
11146If there is no line in the buffer after this one, behavior depends on the
11147value of next-line-add-newlines.  If non-nil, a newline character is inserted
11148to create a line and the cursor moves to that line, otherwise the cursor is
11149moved to the end of the buffer (if already at the end of the buffer, an error
11150is signaled).
11151
11152The command \[set-goal-column] can be used to create
11153a semipermanent goal column to which this command always moves.
11154Then it does not try to move vertically.  This goal column is stored
11155in `goal-column', which is nil when there is none.
11156
11157If you are thinking of using this in a Lisp program, consider
11158using `forward-line' instead.  It is usually easier to use
11159and more reliable (no dependence on goal column, etc.).Fprevious-line
11160Move cursor vertically up ARG lines.
11161If there is no character in the target line exactly over the current column,
11162the cursor is positioned after the character in that line which spans this
11163column, or at the end of the line if it is not long enough.
11164
11165The command \[set-goal-column] can be used to create
11166a semipermanent goal column to which this command always moves.
11167Then it does not try to move vertically.
11168
11169If you are thinking of using this in a Lisp program, consider using
11170`forward-line' with a negative argument instead.  It is usually easier
11171to use and more reliable (no dependence on goal column, etc.).Vtrack-eol
11172*Non-nil means vertical motion starting at end of line keeps to ends of lines.
11173This means moving to the end of each line moved onto.
11174The beginning of a blank line does not count as the end of a line.Vgoal-column
11175*Semipermanent goal column for vertical motion, as set by \[set-goal-column], or nil.Vtemporary-goal-column
11176Current goal column for vertical motion.
11177It is the column where point was
11178at the start of current run of vertical motion commands.
11179When the `track-eol' feature is doing its job, the value is 9999.Fset-goal-column
11180Set the current horizontal position as a goal for \[next-line] and \[previous-line].
11181Those commands will move to this position in the line moved to
11182rather than trying to keep the same horizontal position.
11183With a non-nil argument, clears out the goal column
11184so that \[next-line] and \[previous-line] resume vertical motion.
11185The goal column is stored in the variable `goal-column'.Vhscroll-step
11186*The number of columns to try scrolling a window by when point moves out.
11187If that fails to bring point back on frame, point is centered instead.
11188If this is zero, point is always centered after it moves off frame.Fhscroll-point-visible
11189Scrolls the selected window horizontally to make point visible.Ftranspose-chars
11190Interchange characters around point, moving forward one character.
11191With prefix arg ARG, effect is to take character before point
11192and drag it forward past ARG other characters (backward if ARG negative).
11193If no argument and at end of line, the previous two chars are exchanged.Ftranspose-words
11194Interchange words around point, leaving point at end of them.
11195With prefix arg ARG, effect is to take word before or around point
11196and drag it forward past ARG other words (backward if ARG negative).
11197If ARG is zero, the words around or after point and around or after mark
11198are interchanged.Ftranspose-sexps
11199Like \[transpose-words] but applies to sexps.
11200Does not work on a sexp that point is in the middle of
11201if it is a list or string.Ftranspose-lines
11202Exchange current line and previous line, leaving point after both.
11203With argument ARG, takes previous line and moves it past ARG lines.
11204With argument 0, interchanges line point is in with line mark is in.Vcomment-column
11205*Column to indent right-margin comments to.
11206Setting this variable automatically makes it local to the current buffer.
11207Each mode establishes a different default value for this variable; you
11208can set the value for a particular mode using that mode's hook.Vcomment-start
11209*String to insert to start a new comment, or nil if no comment syntax defined.Vcomment-start-skip
11210*Regexp to match the start of a comment plus everything up to its body.
11211If there are any \(...\) pairs, the comment delimiter text is held to begin
11212at the place matched by the close of the first pair.Vcomment-end
11213*String to insert to end a new comment.
11214Should be an empty string if comments are terminated by end-of-line.Vcomment-indent-hook
11215Obsolete variable for function to compute desired indentation for a comment.
11216This function is called with no args with point at the beginning of
11217the comment's starting delimiter.Vcomment-indent-function
11218Function to compute desired indentation for a comment.
11219This function is called with no args with point at the beginning of
11220the comment's starting delimiter.Findent-for-comment
11221Indent this line's comment to comment column, or insert an empty comment.Fset-comment-column
11222Set the comment column based on point.
11223With no arg, set the comment column to the current column.
11224With just minus as arg, kill any comment on this line.
11225With any other arg, set comment column to indentation of the previous comment
11226 and then align or create a comment on this line at that column.Fkill-comment
11227Kill the comment on this line, if any.
11228With argument, kill comments on that many lines starting with this one.Fcomment-region
11229Comment or uncomment each line in the region.
11230With just C-u prefix arg, uncomment each line in region.
11231Numeric prefix arg ARG means use ARG comment characters.
11232If ARG is negative, delete that many comment characters instead.
11233Comments are terminated on each line, even for syntax in which newline does
11234not end the comment.  Blank lines do not get comments.Fbackward-word
11235Move backward until encountering the end of a word.
11236With argument, do this that many times.
11237In programs, it is faster to call `forward-word' with negative arg.Fmark-word
11238Set mark arg words away from point.Fkill-word
11239Kill characters forward until encountering the end of a word.
11240With argument, do this that many times.Fbackward-kill-word
11241Kill characters backward until encountering the end of a word.
11242With argument, do this that many times.Fcurrent-word
11243Return the word point is on (or a nearby word) as a string.
11244If optional arg STRICT is non-nil, return nil unless point is within
11245or adjacent to a word.Vfill-prefix
11246*String for filling to insert at front of new line, or nil for none.
11247Setting this variable automatically makes it local to the current buffer.Vauto-fill-inhibit-regexp
11248*Regexp to match lines which should not be auto-filled.Fauto-fill-mode
11249Toggle auto-fill mode.
11250With arg, turn Auto-Fill mode on if and only if arg is positive.
11251In Auto-Fill mode, inserting a space at a column beyond `fill-column'
11252automatically breaks the line at a previous space.Fauto-fill-function
11253Automatically break line at a previous space, in insertion of text.Fturn-on-auto-fill
11254Unconditionally turn on Auto Fill mode.Fset-fill-column
11255Set `fill-column' to current column, or to argument if given.
11256The variable `fill-column' has a separate value for each buffer.Vcomment-multi-line
11257*Non-nil means \[indent-new-comment-line] should continue same comment
11258on new line, with no new terminator or starter.
11259This is obsolete because you might as well use \[newline-and-indent].Findent-new-comment-line
11260Break line at point and indent, continuing comment if within one.
11261This indents the body of the continued comment
11262under the previous comment line.
11263
11264This command is intended for styles where you write a comment per line,
11265starting a new comment (and terminating it if necessary) on each line.
11266If you want to continue one comment across several lines, use \[newline-and-indent].Fset-selective-display
11267Set `selective-display' to ARG; clear it if no arg.
11268When the value of `selective-display' is a number > 0,
11269lines whose indentation is >= that value are not displayed.
11270The variable `selective-display' has a separate value for each buffer.Voverwrite-mode-textual
11271The string displayed in the mode line when in overwrite mode.Voverwrite-mode-binary
11272The string displayed in the mode line when in binary overwrite mode.Foverwrite-mode
11273Toggle overwrite mode.
11274With arg, turn overwrite mode on iff arg is positive.
11275In overwrite mode, printing characters typed in replace existing text
11276on a one-for-one basis, rather than pushing it to the right.  At the
11277end of a line, such characters extend the line.  Before a tab,
11278such characters insert until the tab is filled in.
11279\[quoted-insert] still inserts characters in overwrite mode; this
11280is supposed to make it easier to insert characters when necessary.Fbinary-overwrite-mode
11281Toggle binary overwrite mode.
11282With arg, turn binary overwrite mode on iff arg is positive.
11283In binary overwrite mode, printing characters typed in replace
11284existing text.  Newlines are not treated specially, so typing at the
11285end of a line joins the line to the next, with the typed character
11286between them.  Typing before a tab character simply replaces the tab
11287with the character typed.
11288\[quoted-insert] replaces the text at the cursor, just as ordinary
11289typing characters do.
11290
11291Note that binary overwrite mode is not its own minor mode; it is a
11292specialization of overwrite-mode, entered by setting the
11293`overwrite-mode' variable to `overwrite-mode-binary'.Vline-number-mode
11294*Non-nil means display line number in mode line.Fline-number-mode
11295Toggle Line Number mode.
11296With arg, turn Line Number mode on iff arg is positive.
11297When Line Number mode is enabled, the line number appears
11298in the mode line.Vblink-matching-paren
11299*Non-nil means show matching open-paren when close-paren is inserted.Vblink-matching-paren-distance
11300*If non-nil, is maximum distance to search for matching open-paren.Fblink-matching-open
11301Move cursor momentarily to the beginning of the sexp before point.Fkeyboard-quit
11302Signal a  quit  condition.
11303During execution of Lisp code, this character causes a quit directly.
11304At top-level, as an editor command, this simply beeps.Fset-variable
11305Set VARIABLE to VALUE.  VALUE is a Lisp object.
11306When using this interactively, supply a Lisp expression for VALUE.
11307If you want VALUE to be a string, you must surround it with doublequotes.
11308
11309If VARIABLE has a `variable-interactive' property, that is used as if
11310it were the arg to `interactive' (which see) to interactively read the value.Fchoose-completion
11311Choose the completion that point is in or next to.Fcompletion-list-mode
11312Major mode for buffers showing lists of possible completions.
11313Type \<completion-list-mode-map>\[choose-completion] in the completion list to select the completion near point.
11314Use \<completion-list-mode-map>\[mouse-choose-completion] to select one with the mouse.Vcommand-line-processed
11315t once command line has been processedVinhibit-startup-message
11316*Non-nil inhibits the initial startup message.
11317This is for use in your personal init file, once you are familiar
11318with the contents of the startup message.Vinhibit-startup-echo-area-message
11319*Non-nil inhibits the initial startup echo area message.
11320Inhibition takes effect only if your `.emacs' file contains
11321a line of the form
11322 (setq inhibit-startup-echo-area-message "YOUR-USER-NAME")
11323Thus, someone else using a copy of your `.emacs' file will see
11324the startup message unless he personally acts to inhibit it.Vinhibit-default-init
11325*Non-nil inhibits loading the `default' library.Vcommand-switch-alist
11326Alist of command-line switches.
11327Elements look like (SWITCH-STRING . HANDLER-FUNCTION).
11328HANDLER-FUNCTION receives switch name as sole arg;
11329remaining command-line args are in the variable `command-line-args-left'.Vcommand-line-functions
11330List of functions to process unrecognized command-line arguments.
11331Each function should access the dynamically bound variables
11332`argi' (the current argument) and `command-line-args-left' (the remaining
11333arguments).  The function should return non-nil only if it recognizes and
11334processes `argi'.  If it does so, it may consume successive arguments by
11335altering `command-line-args-left' to remove them.Vcommand-line-default-directory
11336Default directory to use for command line arguments.
11337This is normally copied from `default-directory' when Emacs starts.Vbefore-init-hook
11338Functions to call after handling urgent options but before init files.
11339The frame system uses this to open frames to display messages while
11340Emacs loads the user's initialization file.Vafter-init-hook
11341Functions to call after loading the init file (`~/.emacs').
11342The call is not protected by a condition-case, so you can set `debug-on-error'
11343in `.emacs', and put all the actual code on `after-init-hook'.Vterm-setup-hook
11344Functions to be called after loading terminal-specific Lisp code.
11345See `run-hooks'.  This variable exists for users to set,
11346so as to override the definitions made by the terminal-specific file.
11347Emacs never sets this variable itself.Vkeyboard-type
11348The brand of keyboard you are using.
11349This variable is used to define
11350the proper function and keypad keys for use under X.  It is used in a
11351fashion analogous to the environment value TERM.Vwindow-setup-hook
11352Normal hook run to initialize window system display.
11353Emacs runs this hook after processing the command line arguments and loading
11354the user's init file.Vinitial-major-mode
11355Major mode command symbol to use for the initial *scratch* buffer.Vinit-file-user
11356Identity of user whose `.emacs' file is or was read.
11357The value is nil if no init file is being used; otherwise, it may be either
11358the null string, meaning that the init file was taken from the user that
11359originally logged in, or it may be a string containing a user's name.
11360
11361In either of the latter cases, `(concat "~" init-file-user "/")'
11362evaluates to the name of the directory where the `.emacs' file was
11363looked for.Vsite-run-file
11364File containing site-wide run-time initializations.
11365This file is loaded at run-time before `~/.emacs'.  It contains inits
11366that need to be in place for the entire site, but which, due to their
11367higher incidence of change, don't make sense to load into emacs'
11368dumped image.  Thus, the run-time load order is: 1. file described in
11369this variable, if non-nil; 2. `~/.emacs'; 3. `default.el'.Flambda
11370Return a lambda expression.
11371A call of the form (lambda ARGS DOCSTRING INTERACTIVE BODY) is
11372self-quoting; the result of evaluating the lambda expression is the
11373expression itself.  The lambda expression may then be treated as a
11374function, i. e. stored as the function value of a symbol, passed to
11375funcall or mapcar, etcetera.
11376ARGS should take the same form as an argument list for a `defun'.
11377DOCSTRING should be a string, as described for `defun'.  It may be omitted.
11378INTERACTIVE should be a call to the function `interactive', which see.
11379It may also be omitted.
11380BODY should be a list of lisp expressions.Fone-window-p
11381Returns non-nil if there is only one window.
11382Optional arg NOMINI non-nil means don't count the minibuffer
11383even if it is active.
11384
11385The optional arg ALL-FRAMES t means count windows on all frames.
11386If it is `visible', count windows on all visible frames.
11387ALL-FRAMES nil or omitted means count only the selected frame,
11388plus the minibuffer it uses (which may be on another frame).
11389If ALL-FRAMES is neither nil nor t, count only the selected frame.Fwalk-windows
11390Cycle through all visible windows, calling PROC for each one.
11391PROC is called with a window as argument.
11392Optional second arg MINIBUF t means count the minibuffer window
11393even if not active.  If MINIBUF is neither t nor nil it means
11394not to count the minibuffer even if it is active.
11395
11396Optional third arg ALL-FRAMES, if t, means include all frames.
11397ALL-FRAMES nil or omitted means cycle within the selected frame,
11398but include the minibuffer window (if MINIBUF says so) that that
11399frame uses, even if it is on another frame.
11400If ALL-FRAMES is neither nil nor t, stick strictly to the selected frame.Fminibuffer-window-active-p
11401Return t if WINDOW (a minibuffer window) is now active.Fsuppress-keymap
11402Make MAP override all normally self-inserting keys to be undefined.
11403Normally, as an exception, digits and minus-sign are set to make prefix args,
11404but optional second arg NODIGITS non-nil treats them like other chars.Vkey-substitution-in-progress
11405Used internally by substitute-key-definition.Fsubstitute-key-definition
11406Replace OLDDEF with NEWDEF for any keys in KEYMAP now defined as OLDDEF.
11407In other words, OLDDEF is replaced with NEWDEF where ever it appears.
11408If optional fourth argument OLDMAP is specified, we redefine
11409in KEYMAP as NEWDEF those chars which are defined as OLDDEF in OLDMAP.Fdefine-key-after
11410Add binding in KEYMAP for KEY => DEFINITION, right after AFTER's binding.
11411This is like `define-key' except that the binding for KEY is placed
11412just after the binding for the event AFTER, instead of at the beginning
11413of the map.
11414The order matters when the keymap is used as a menu.
11415KEY must contain just one event type--that is to say, it must be
11416a string or vector of length 1.Fkeyboard-translate
11417Translate character FROM to TO at a low level.
11418This function creates a `keyboard-translate-table' if necessary
11419and then modifies one entry in it.Vglobal-map
11420Default global keymap mapping Emacs keyboard input into commands.
11421The value is a keymap which is usually (but not necessarily) Emacs's
11422global map.Vesc-map
11423Default keymap for ESC (meta) commands.
11424The normal global definition of the character ESC indirects to this keymap.Vctl-x-map
11425Default keymap for C-x commands.
11426The normal global definition of the character C-x indirects to this keymap.Vctl-x-4-map
11427Keymap for subcommands of C-x 4Vctl-x-5-map
11428Keymap for frame commands.Flistify-key-sequence
11429Convert a key sequence to a list of events.Feventp
11430True if the argument is an event object.Fevent-modifiers
11431Returns a list of symbols representing the modifier keys in event EVENT.
11432The elements of the list may include `meta', `control',
11433`shift', `hyper', `super', `alt', `click', `double', `triple', `drag',
11434and `down'.Fevent-basic-type
11435Returns the basic type of the given event (all modifiers removed).
11436The value is an ASCII printing character (not upper case) or a symbol.Fmouse-movement-p
11437Return non-nil if OBJECT is a mouse movement event.Fevent-start
11438Return the starting position of EVENT.
11439If EVENT is a mouse press or a mouse click, this returns the location
11440of the event.
11441If EVENT is a drag, this returns the drag's starting position.
11442The return value is of the form
11443   (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP)
11444The `posn-' functions access elements of such lists.Fevent-end
11445Return the ending location of EVENT.  EVENT should be a click or drag event.
11446If EVENT is a click event, this function is the same as `event-start'.
11447The return value is of the form
11448   (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP)
11449The `posn-' functions access elements of such lists.Fevent-click-count
11450Return the multi-click count of EVENT, a click or drag event.
11451The return value is a positive integer.Fposn-window
11452Return the window in POSITION.
11453POSITION should be a list of the form
11454   (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP)
11455as returned by the `event-start' and `event-end' functions.Fposn-point
11456Return the buffer location in POSITION.
11457POSITION should be a list of the form
11458   (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP)
11459as returned by the `event-start' and `event-end' functions.Fposn-x-y
11460Return the x and y coordinates in POSITION.
11461POSITION should be a list of the form
11462   (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP)
11463as returned by the `event-start' and `event-end' functions.Fposn-col-row
11464Return the column and row in POSITION, measured in characters.
11465POSITION should be a list of the form
11466   (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP)
11467as returned by the `event-start' and `event-end' functions.
11468For a scroll-bar event, the result column is 0, and the row
11469corresponds to the vertical position of the click in the scroll bar.Fposn-timestamp
11470Return the timestamp of POSITION.
11471POSITION should be a list of the form
11472   (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP)
11473as returned by the `event-start' and `event-end' functions.Fbaud-rate
11474Obsolete function returning the value of the `baud-rate' variable.
11475Please convert your programs to use the variable `baud-rate' directly.Frun-hooks
11476Takes hook names and runs each one in turn.  Major mode functions use this.
11477Each argument should be a symbol, a hook variable.
11478These symbols are processed in the order specified.
11479If a hook symbol has a non-nil value, that value may be a function
11480or a list of functions to be called to run the hook.
11481If the value is a function, it is called with no arguments.
11482If it is a list, the elements are called, in order, with no arguments.Frun-hook-with-args
11483Run HOOK with the specified arguments ARGS.
11484HOOK should be a symbol, a hook variable.  If HOOK has a non-nil
11485value, that value may be a function or a list of functions to be
11486called to run the hook.  If the value is a function, it is called with
11487the given arguments and its return value is returned.  If it is a list
11488of functions, those functions are called, in order,
11489with the given arguments ARGS.
11490It is best not to depend on the value return by `run-hook-with-args',
11491as that may change.Vrun-hooks
11492Variable by which C primitives find the function `run-hooks'.
11493Don't change it.Fadd-hook
11494Add to the value of HOOK the function FUNCTION.
11495FUNCTION is not added if already present.
11496FUNCTION is added (if necessary) at the beginning of the hook list
11497unless the optional argument APPEND is non-nil, in which case
11498FUNCTION is added at the end.
11499
11500HOOK should be a symbol, and FUNCTION may be any valid function.  If
11501HOOK is void, it is first set to nil.  If HOOK's value is a single
11502function, it is changed to a list of functions.Fremove-hook
11503Remove from the value of HOOK the function FUNCTION.
11504HOOK should be a symbol, and FUNCTION may be any valid function.  If
11505FUNCTION isn't the value of HOOK, or, if FUNCTION doesn't appear in the
11506list of hooks to run in HOOK, then nothing is done.  See `add-hook'.Feval-after-load
11507Arrange that, if FILE is ever loaded, FORM will be run at that time.
11508This makes or adds to an entry on `after-load-alist'.
11509It does nothing if FORM is already on the list for FILE.
11510FILE should be the name of a library, with no directory name.Feval-next-after-load
11511Read the following input sexp, and run it whenever FILE is loaded.
11512This makes or adds to an entry on `after-load-alist'.
11513FILE should be the name of a library, with no directory name.Fread-quoted-char
11514Like `read-char', except that if the first character read is an octal
11515digit, we read up to two more octal digits and return the character
11516represented by the octal number consisting of those digits.
11517Optional argument PROMPT specifies a string to use to prompt the user.Fforce-mode-line-update
11518Force the mode-line of the current buffer to be redisplayed.
11519With optional non-nil ALL, force redisplay of all mode-lines.Fmomentary-string-display
11520Momentarily display STRING in the buffer at POS.
11521Display remains until next character is typed.
11522If the char is EXIT-CHAR (optional third arg, default is SPC) it is swallowed;
11523otherwise it is then available as input (as a command if nothing else).
11524Display MESSAGE (optional fourth arg) in the echo area.
11525If MESSAGE is nil, instructions to type EXIT-CHAR are displayed there.Ferror
11526Signal an error, making error message by passing all args to `format'.Fstart-process-shell-command
11527Start a program in a subprocess.  Return the process object for it.
11528Args are NAME BUFFER COMMAND &rest COMMAND-ARGS.
11529NAME is name for process.  It is modified if necessary to make it unique.
11530BUFFER is the buffer or (buffer-name) to associate with the process.
11531 Process output goes at end of that buffer, unless you specify
11532 an output stream or filter function to handle the output.
11533 BUFFER may be also nil, meaning that this process is not associated
11534 with any buffer
11535Third arg is command name, the name of a shell command.
11536Remaining arguments are the arguments for the command.
11537Wildcards and redirection are handled as usual in the shell.Fsave-match-data
11538Execute the BODY forms, restoring the global value of the match data.Fshell-quote-argument
11539Quote an argument for passing as argument to an inferior shell.Fmake-syntax-table
11540Return a new syntax table.
11541It inherits all letters and control characters from the standard
11542syntax table; other characters are copied from the standard syntax table.Vtext-mode-syntax-table
11543Syntax table used while in text mode.Vtext-mode-abbrev-table
11544Abbrev table used while in text mode.Vtext-mode-map
11545Keymap for Text mode.
11546Many other modes, such as Mail mode, Outline mode and Indented Text mode,
11547inherit all the commands defined in this map.Ftext-mode
11548Major mode for editing text intended for humans to read.
11549Special commands:
11550\{text-mode-map}
11551Turning on Text mode calls the value of the variable `text-mode-hook',
11552if that value is non-nil.Vindented-text-mode-map
11553Keymap for Indented Text mode.
11554All the commands defined in Text mode are inherited unless overridden.Findented-text-mode
11555Major mode for editing text with indented paragraphs.
11556In this mode, paragraphs are delimited only by blank lines.
11557You can thus get the benefit of adaptive filling
11558 (see the variable `adaptive-fill-mode').
11559\{indented-text-mode-map}
11560Turning on `indented-text-mode' calls the value of the variable
11561`text-mode-hook', if that value is non-nil.Fcenter-paragraph
11562Center each nonblank line in the paragraph at or after point.
11563See `center-line' for more info.Fcenter-region
11564Center each nonblank line starting in the region.
11565See `center-line' for more info.Fcenter-line
11566Center the line point is on, within the width specified by `fill-column'.
11567This means adjusting the indentation so that it equals
11568the distance between the end of the text and `fill-column'.Vvc-master-templates
11569*Where to look for version-control master files.
11570The first pair corresponding to a given back end is used as a template
11571when creating new masters.Vvc-make-backup-files
11572*If non-nil, backups of registered files are made as with other files.
11573If nil (the default), files covered by version control don't get backups.Vvc-rcs-status
11574*If non-nil, revision and locks on RCS working file displayed in modeline.
11575Otherwise, not displayed.Vvc-file-prop-obarray
11576Obarray for per-file properties.Fvc-name
11577Return the master name of a file, nil if it is not registered.Fvc-backend-deduce
11578Return the version-control type of a file, nil if it is not registered.Fvc-toggle-read-only
11579Change read-only status of current buffer, perhaps via version control.
11580If the buffer is visiting a file registered with version control,
11581then check the file in or out.  Otherwise, just change the read-only flag
11582of the buffer.Fvc-mode-line
11583Set `vc-mode' to display type of version control for FILE.
11584The value is set in the current buffer, which should be the buffer
11585visiting FILE.Fvc-file-not-found-hook
11586When file is not found, try to check it out from RCS or SCCS.
11587Returns t if checkout was successful, nil otherwise.Fcount-windows
11588Returns the number of visible windows.
11589Optional arg NO-MINI non-nil means don't count the minibuffer
11590even if it is active.Fbalance-windows
11591Makes all visible windows the same height (approximately).Vsplit-window-keep-point
11592*If non-nil, split windows keeps the original point in both children.
11593This is often more convenient for editing.
11594If nil, adjust point in each of the two windows to minimize redisplay.
11595This is convenient on slow terminals, but point can move strangely.Fsplit-window-vertically
11596Split current window into two windows, one above the other.
11597The uppermost window gets ARG lines and the other gets the rest.
11598Negative arg means select the size of the lowermost window instead.
11599With no argument, split equally or close to it.
11600Both windows display the same buffer now current.
11601
11602If the variable split-window-keep-point is non-nil, both new windows
11603will get the same value of point as the current window.  This is often
11604more convenient for editing.
11605
11606Otherwise, we chose window starts so as to minimize the amount of
11607redisplay; this is convenient on slow terminals.  The new selected
11608window is the one that the current value of point appears in.  The
11609value of point can change if the text around point is hidden by the
11610new mode line.Fsplit-window-horizontally
11611Split current window into two windows side by side.
11612This window becomes the leftmost of the two, and gets
11613ARG columns.  No arg means split equally.Fenlarge-window-horizontally
11614Make current window ARG columns wider.Fshrink-window-horizontally
11615Make current window ARG columns narrower.Fshrink-window-if-larger-than-buffer
11616Shrink the WINDOW to be as small as possible to display its contents.
11617Do nothing if the buffer contains more lines than the present window height,
11618or if some of the window's contents are scrolled out of view,
11619or if the window is not the full width of the frame,
11620or if the window is the only window of its frame.Vemacs-version
11621Version numbers of this version of Emacs.Vemacs-build-time
11622Time at which Emacs was dumped out.Femacs-version
11623Return string describing the version of Emacs that is running.
11624If optional argument HERE is non-nil, insert string at point.
11625Don't use this function in programs to choose actions according
11626to the system configuration; look at `system-configuration' instead.