View file File name : DOC Content :Sdosfns.o Fint86 Call specific MS-DOS interrupt number INTERRUPT with REGISTERS. Return the updated REGISTER vector. INTERRUPT should be an integer in the range 0 to 255. REGISTERS should be a vector produced by `make-register' and `set-register-value'. (fn INTERRUPT REGISTERS)Fmsdos-memget Read DOS memory at offset ADDRESS into VECTOR. Return the updated VECTOR. (fn ADDRESS VECTOR)Fmsdos-memput Write DOS memory at offset ADDRESS from VECTOR. (fn ADDRESS VECTOR)Fmsdos-set-keyboard Set keyboard layout according to COUNTRY-CODE. If the optional argument ALLKEYS is non-nil, the keyboard is mapped for all keys; otherwise it is only used when the ALT key is pressed. The current keyboard layout is available in dos-keyboard-code. (fn COUNTRY-CODE &optional ALLKEYS)Fmsdos-mouse-p Report whether a mouse is present. (fn)Fmsdos-mouse-init Initialize and enable mouse if available. (fn)Fmsdos-mouse-enable Enable mouse if available. (fn)Fmsdos-mouse-disable Disable mouse if available. (fn)Finsert-startup-screen Insert copy of screen contents prior to starting Emacs. Return nil if startup screen is not available. (fn)Ffile-system-info Return storage information about the file system FILENAME is on. Value is a list of floats (TOTAL FREE AVAIL), where TOTAL is the total storage of the file system, FREE is the free storage, and AVAIL is the storage available to a non-superuser. All 3 numbers are in bytes. If the underlying system call fails, value is nil. (fn FILENAME)Vdos-country-code The country code returned by Dos when Emacs was started. Usually this is the international telephone prefix.Vdos-codepage The codepage active when Emacs was started. The following are known: 437 United States 850 Multilingual (Latin I) 852 Slavic (Latin II) 857 Turkish 860 Portugal 861 Iceland 863 Canada (French) 865 Norway/DenmarkVdos-timezone-offset The current timezone offset to UTC in minutes. Implicitly modified when the TZ variable is changed.Vdos-version The (MAJOR . MINOR) Dos version (subject to modification with setver).Vdos-windows-version The (MAJOR . MINOR) Windows version for DOS session on MS-Windows.Vdos-display-scancodes Whether DOS raw keyboard events are displayed as you type. When non-nil, the keyboard scan-codes are displayed at the bottom right corner of the display (typically at the end of the mode line). The output format is: scan code:char code*modifiers.Vdos-hyper-key If set to 1, use right ALT key as hyper key. If set to 2, use right CTRL key as hyper key.Vdos-super-key If set to 1, use right ALT key as super key. If set to 2, use right CTRL key as super key.Vdos-keypad-mode Controls what key code is returned by a key in the numeric keypad. The `numlock ON' action is only taken if no modifier keys are pressed. The value is an integer constructed by adding the following bits together: 0x00 Digit key returns digit (if numlock ON) 0x01 Digit key returns kp-digit (if numlock ON) 0x02 Digit key returns M-digit (if numlock ON) 0x03 Digit key returns edit key (if numlock ON) 0x00 Grey key returns char (if numlock ON) 0x04 Grey key returns kp-key (if numlock ON) 0x00 Digit key returns digit (if numlock OFF) 0x10 Digit key returns kp-digit (if numlock OFF) 0x20 Digit key returns M-digit (if numlock OFF) 0x30 Digit key returns edit key (if numlock OFF) 0x00 Grey key returns char (if numlock OFF) 0x40 Grey key returns kp-key (if numlock OFF) 0x200 ALT-0..ALT-9 in top-row produces shifted codes.Vdos-keyboard-layout Contains the country code for the current keyboard layout. Use msdos-set-keyboard to select another keyboard layout.Vdos-decimal-point The character to produce when kp-decimal key is pressed. If non-zero, this variable contains the character to be returned when the decimal point key in the numeric keypad is pressed when Num Lock is on. If zero, the decimal point key returns the country code specific value.Smsdos.o Fmsdos-set-mouse-buttons Set the number of mouse buttons to use by Emacs. This is useful with mice that report the number of buttons inconsistently, e.g., if the number of buttons is reported as 3, but Emacs only sees 2 of them. This happens with wheeled mice on Windows 9X, for example. (fn NBUTTONS)Fmsdos-remember-default-colors Remember the screen colors of the current frame. (fn FRAME)Frecent-doskeys Return vector of last 100 keyboard input values seen in dos_rawgetc. Each input key receives two values in this vector: first the ASCII code, and then the scan code. (fn)Fmsdos-long-file-names Return non-nil if long file names are supported on MS-DOS. (fn)Fmsdos-downcase-filename Convert alphabetic characters in FILENAME to lower case and return that. When long filenames are supported, doesn't change FILENAME. If FILENAME is not a string, returns nil. The argument object is never altered--the value is a copy. (fn FILENAME)Vdos-unsupported-char-glyph Glyph to display instead of chars not supported by current codepage. This variable is used only by MS-DOS terminals.Sxterm.o Vx-use-underline-position-properties Non-nil means make use of UNDERLINE_POSITION font properties. A value of nil means ignore them. If you encounter fonts with bogus UNDERLINE_POSITION font properties, for example 7x13 on XFree prior to 4.1, set this to nil. You can also use `underline-minimum-offset' to override the font's UNDERLINE_POSITION for small font display sizes.Vx-underline-at-descent-line Non-nil means to draw the underline at the same place as the descent line. (If `line-spacing' is in effect, that moves the underline lower by that many pixels.) A value of nil means to draw the underline according to the value of the variable `x-use-underline-position-properties', which is usually at the baseline level. The default value is nil.Vx-mouse-click-focus-ignore-position Non-nil means that a mouse click to focus a frame does not move point. This variable is only used when the window manager requires that you click on a frame to select it (give it focus). In that case, a value of nil, means that the selected window and cursor position changes to reflect the mouse click position, while a non-nil value means that the selected window or cursor position is preserved.Vx-toolkit-scroll-bars Which toolkit scroll bars Emacs uses, if any. A value of nil means Emacs doesn't use toolkit scroll bars. With the X Window system, the value is a symbol describing the X toolkit. Possible values are: gtk, motif, xaw, or xaw3d. With MS Windows or Nextstep, the value is t.Vx-ctrl-keysym Which keys Emacs uses for the ctrl modifier. This should be one of the symbols `ctrl', `alt', `hyper', `meta', `super'. For example, `ctrl' means use the Ctrl_L and Ctrl_R keysyms. The default is nil, which is the same as `ctrl'.Vx-alt-keysym Which keys Emacs uses for the alt modifier. This should be one of the symbols `ctrl', `alt', `hyper', `meta', `super'. For example, `alt' means use the Alt_L and Alt_R keysyms. The default is nil, which is the same as `alt'.Vx-hyper-keysym Which keys Emacs uses for the hyper modifier. This should be one of the symbols `ctrl', `alt', `hyper', `meta', `super'. For example, `hyper' means use the Hyper_L and Hyper_R keysyms. The default is nil, which is the same as `hyper'.Vx-meta-keysym Which keys Emacs uses for the meta modifier. This should be one of the symbols `ctrl', `alt', `hyper', `meta', `super'. For example, `meta' means use the Meta_L and Meta_R keysyms. The default is nil, which is the same as `meta'.Vx-super-keysym Which keys Emacs uses for the super modifier. This should be one of the symbols `ctrl', `alt', `hyper', `meta', `super'. For example, `super' means use the Super_L and Super_R keysyms. The default is nil, which is the same as `super'.Vx-wait-for-event-timeout How long to wait for X events. Emacs will wait up to this many seconds to receive X events after making changes which affect the state of the graphical interface. Under some window managers this can take an indefinite amount of time, so it is important to limit the wait. If set to a non-float value, there will be no wait at all.Vx-keysym-table Hash table of character codes indexed by X keysym codes.Vx-frame-normalize-before-maximize Non-nil means normalize frame before maximizing. If this variable is t, Emacs first asks the window manager to give the frame its normal size, and only then the final state, whenever changing from a full-height, full-width or full-both state to the maximized one or when changing from the maximized to the full-height or full-width state. Set this variable only if your window manager cannot handle the transition between the various maximization states.Vx-gtk-use-window-move Non-nil means rely on gtk_window_move to set frame positions. If this variable is t (the default), the GTK build uses the function gtk_window_move to set or store frame positions and disables some time consuming frame position adjustments. In newer versions of GTK, Emacs always uses gtk_window_move and ignores the value of this variable.Sxfns.o Fx-wm-set-size-hint Send the size hints for frame FRAME to the window manager. If FRAME is omitted or nil, use the selected frame. Signal error if FRAME is not an X frame. (fn &optional FRAME)Fx-create-frame Make a new X window, which is called a "frame" in Emacs terms. Return an Emacs frame object. PARMS is an alist of frame parameters. If the parameters specify that the frame should not have a minibuffer, and do not specify a specific minibuffer window to use, then `default-minibuffer-frame' must be a frame whose minibuffer can be shared by the new frame. This function is an internal primitive--use `make-frame' instead. (fn PARMS)Fxw-color-defined-p Internal function called by `color-defined-p', which see. (Note that the Nextstep version of this function ignores FRAME.) (fn COLOR &optional FRAME)Fxw-color-values Internal function called by `color-values', which see. (fn COLOR &optional FRAME)Fxw-display-color-p Internal function called by `display-color-p', which see. (fn &optional TERMINAL)Fx-display-grayscale-p Return t if the X display supports shades of gray. Note that color displays do support shades of gray. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-pixel-width Return the width in pixels of the X display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the pixel width for all physical monitors associated with TERMINAL. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional TERMINAL)Fx-display-pixel-height Return the height in pixels of the X display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the pixel height for all physical monitors associated with TERMINAL. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional TERMINAL)Fx-display-planes Return the number of bitplanes of the X display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-color-cells Return the number of color cells of the X display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-server-max-request-size Return the maximum request size of the X server of display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-server-vendor Return the "vendor ID" string of the GUI software on TERMINAL. (Labeling every distributor as a "vendor" embodies the false assumption that operating systems cannot be developed and distributed noncommercially.) The optional argument TERMINAL specifies which display to ask about. For GNU and Unix systems, this queries the X server software; for MS-Windows, this queries the OS. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-server-version Return the version numbers of the GUI software on TERMINAL. The value is a list of three integers specifying the version of the GUI software in use. For GNU and Unix system, the first 2 numbers are the version of the X Protocol used on TERMINAL and the 3rd number is the distributor-specific release number. For MS-Windows, the 3 numbers report the version and the build number of the OS. See also the function `x-server-vendor'. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-screens Return the number of screens on the X server of display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-mm-height Return the height in millimeters of the X display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the height in millimeters for all physical monitors associated with TERMINAL. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional TERMINAL)Fx-display-mm-width Return the width in millimeters of the X display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the width in millimeters for all physical monitors associated with TERMINAL. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional TERMINAL)Fx-display-backing-store Return an indication of whether X display TERMINAL does backing store. The value may be `always', `when-mapped', or `not-useful'. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-visual-class Return the visual class of the X display TERMINAL. The value is one of the symbols `static-gray', `gray-scale', `static-color', `pseudo-color', `true-color', or `direct-color'. The optional argument TERMINAL specifies which display to ask about. TERMINAL should a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-save-under Return t if the X display TERMINAL supports the save-under feature. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-monitor-attributes-list Return a list of physical monitor attributes on the X display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. In addition to the standard attribute keys listed in `display-monitor-attributes-list', the following keys are contained in the attributes: source -- String describing the source from which multi-monitor information is obtained, one of "Gdk", "XRandr", "Xinerama", or "fallback" Internal use only, use `display-monitor-attributes-list' instead. (fn &optional TERMINAL)Fx-frame-geometry Return geometric attributes of FRAME. FRAME must be a live frame and defaults to the selected one. The return value is an association list of the attributes listed below. All height and width values are in pixels. `outer-position' is a cons of the outer left and top edges of FRAME relative to the origin - the position (0, 0) - of FRAME's display. `outer-size' is a cons of the outer width and height of FRAME. The outer size includes the title bar and the external borders as well as any menu and/or tool bar of frame. For a child frame the value includes FRAME's X borders, if any. `external-border-size' is a cons of the horizontal and vertical width of FRAME's external borders as supplied by the window manager. `title-bar-size' is a cons of the width and height of the title bar of FRAME as supplied by the window manager. If both of them are zero, FRAME has no title bar. If only the width is zero, Emacs was not able to retrieve the width information. `menu-bar-external', if non-nil, means the menu bar is external (never included in the inner edges of FRAME). `menu-bar-size' is a cons of the width and height of the menu bar of FRAME. `tool-bar-external', if non-nil, means the tool bar is external (never included in the inner edges of FRAME). `tool-bar-position' tells on which side the tool bar on FRAME is and can be one of `left', `top', `right' or `bottom'. If this is nil, FRAME has no tool bar. `tool-bar-size' is a cons of the width and height of the tool bar of FRAME. `internal-border-width' is the width of the internal border of FRAME. `outer-border-width' is the width of the X border of FRAME. The X border is usually only shown for frames without window manager decorations like child and tooltip frames. (fn &optional FRAME)Fx-frame-edges Return edge coordinates of FRAME. FRAME must be a live frame and defaults to the selected one. The return value is a list of the form (LEFT, TOP, RIGHT, BOTTOM). All values are in pixels relative to the origin - the position (0, 0) - of FRAME's display. If optional argument TYPE is the symbol `outer-edges', return the outer edges of FRAME. The outer edges comprise the decorations of the window manager (like the title bar or external borders) as well as any external menu or tool bar of FRAME. If optional argument TYPE is the symbol `native-edges' or nil, return the native edges of FRAME. The native edges exclude the decorations of the window manager and any external menu or tool bar of FRAME. If TYPE is the symbol `inner-edges', return the inner edges of FRAME. These edges exclude title bar, any borders, menu bar or tool bar of FRAME. (fn &optional FRAME TYPE)Fx-frame-list-z-order Return list of Emacs' frames, in Z (stacking) order. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. Return nil if TERMINAL contains no Emacs frame. As a special case, if TERMINAL is non-nil and specifies a live frame, return the child frames of that frame in Z (stacking) order. Frames are listed from topmost (first) to bottommost (last). (fn &optional TERMINAL)Fx-frame-restack Restack FRAME1 below FRAME2. This means that if both frames are visible and the display areas of these frames overlap, FRAME2 (partially) obscures FRAME1. If optional third argument ABOVE is non-nil, restack FRAME1 above FRAME2. This means that if both frames are visible and the display areas of these frames overlap, FRAME1 (partially) obscures FRAME2. This may be thought of as an atomic action performed in two steps: The first step removes FRAME1's window-step window from the display. The second step reinserts FRAME1's window below (above if ABOVE is true) that of FRAME2. Hence the position of FRAME2 in its display's Z (stacking) order relative to all other frames excluding FRAME1 remains unaltered. Some window managers may refuse to restack windows. (fn FRAME1 FRAME2 &optional ABOVE)Fx-mouse-absolute-pixel-position Return absolute position of mouse cursor in pixels. The position is returned as a cons cell (X . Y) of the coordinates of the mouse cursor position in pixels relative to a position (0, 0) of the selected frame's display. (fn)Fx-set-mouse-absolute-pixel-position Move mouse pointer to absolute pixel position (X, Y). The coordinates X and Y are interpreted in pixels relative to a position (0, 0) of the selected frame's display. (fn X Y)Fx-open-connection Open a connection to a display server. DISPLAY is the name of the display to connect to. Optional second arg XRM-STRING is a string of resources in xrdb format. If the optional third arg MUST-SUCCEED is non-nil, terminate Emacs if we can't open the connection. (In the Nextstep version, the last two arguments are currently ignored.) (fn DISPLAY &optional XRM-STRING MUST-SUCCEED)Fx-close-connection Close the connection to TERMINAL's X server. For TERMINAL, specify a terminal object, a frame or a display name (a string). If TERMINAL is nil, that stands for the selected frame's terminal. (fn TERMINAL)Fx-display-list Return the list of display names that Emacs has connections to. (fn)Fx-synchronize If ON is non-nil, report X errors as soon as the erring request is made. This function only has an effect on X Windows. With MS Windows, it is defined but does nothing. If ON is nil, allow buffering of requests. Turning on synchronization prohibits the Xlib routines from buffering requests and seriously degrades performance, but makes debugging much easier. The optional second argument TERMINAL specifies which display to act on. TERMINAL should be a terminal object, a frame or a display name (a string). If TERMINAL is omitted or nil, that stands for the selected frame's display. (fn ON &optional TERMINAL)Fx-change-window-property Change window property PROP to VALUE on the X window of FRAME. PROP must be a string. VALUE may be a string or a list of conses, numbers and/or strings. If an element in the list is a string, it is converted to an atom and the value of the atom is used. If an element is a cons, it is converted to a 32 bit number where the car is the 16 top bits and the cdr is the lower 16 bits. FRAME nil or omitted means use the selected frame. If TYPE is given and non-nil, it is the name of the type of VALUE. If TYPE is not given or nil, the type is STRING. FORMAT gives the size in bits of each element if VALUE is a list. It must be one of 8, 16 or 32. If VALUE is a string or FORMAT is nil or not given, FORMAT defaults to 8. If OUTER-P is non-nil, the property is changed for the outer X window of FRAME. Default is to change on the edit X window. (fn PROP VALUE &optional FRAME TYPE FORMAT OUTER-P)Fx-delete-window-property Remove window property PROP from X window of FRAME. FRAME nil or omitted means use the selected frame. Value is PROP. (fn PROP &optional FRAME)Fx-window-property Value is the value of window property PROP on FRAME. If FRAME is nil or omitted, use the selected frame. On X Windows, the following optional arguments are also accepted: If TYPE is nil or omitted, get the property as a string. Otherwise TYPE is the name of the atom that denotes the type expected. If SOURCE is non-nil, get the property on that window instead of from FRAME. The number 0 denotes the root window. If DELETE-P is non-nil, delete the property after retrieving it. If VECTOR-RET-P is non-nil, don't return a string but a vector of values. On MS Windows, this function accepts but ignores those optional arguments. Value is nil if FRAME hasn't a property with name PROP or if PROP has no value of TYPE (always string in the MS Windows case). (fn PROP &optional FRAME TYPE SOURCE DELETE-P VECTOR-RET-P)Fx-window-property-attributes Retrieve metadata about window property PROP on FRAME. If FRAME is nil or omitted, use the selected frame. If SOURCE is non-nil, get the property on that window instead of from FRAME. The number 0 denotes the root window. Return value is nil if FRAME hasn't a property with name PROP. Otherwise, the return value is a vector with the following fields: 0. The property type, as an integer. The symbolic name of the type can be obtained with `x-get-atom-name'. 1. The format of each element; one of 8, 16, or 32. 2. The length of the property, in number of elements. (fn PROP &optional FRAME SOURCE)Fx-show-tip Show STRING in a "tooltip" window on frame FRAME. A tooltip window is a small X window displaying a string. This is an internal function; Lisp code should call `tooltip-show'. FRAME nil or omitted means use the selected frame. PARMS is an optional list of frame parameters which can be used to change the tooltip's appearance. Automatically hide the tooltip after TIMEOUT seconds. TIMEOUT nil means use the default timeout of 5 seconds. If the list of frame parameters PARMS contains a `left' parameter, display the tooltip at that x-position. If the list of frame parameters PARMS contains no `left' but a `right' parameter, display the tooltip right-adjusted at that x-position. Otherwise display it at the x-position of the mouse, with offset DX added (default is 5 if DX isn't specified). Likewise for the y-position: If a `top' frame parameter is specified, it determines the position of the upper edge of the tooltip window. If a `bottom' parameter but no `top' frame parameter is specified, it determines the position of the lower edge of the tooltip window. Otherwise display the tooltip window at the y-position of the mouse, with offset DY added (default is -10). A tooltip's maximum size is specified by `x-max-tooltip-size'. Text larger than the specified size is clipped. (fn STRING &optional FRAME PARMS TIMEOUT DX DY)Fx-hide-tip Hide the current tooltip window, if there is any. Value is t if tooltip was open, nil otherwise. (fn)Fx-double-buffered-p Return t if FRAME is being double buffered. (fn &optional FRAME)Fx-uses-old-gtk-dialog Return t if the old Gtk+ file selection dialog is used. (fn)Fx-file-dialog Read file name, prompting with PROMPT in directory DIR. Use a file selection dialog. Select DEFAULT-FILENAME in the dialog's file selection box, if specified. If MUSTMATCH is non-nil, the returned file or directory must exist. This function is only defined on NS, MS Windows, and X Windows with the Motif or Gtk toolkits. With the Motif toolkit, ONLY-DIR-P is ignored. Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories. On Windows 7 and later, the file selection dialog "remembers" the last directory where the user selected a file, and will open that directory instead of DIR on subsequent invocations of this function with the same value of DIR as in previous invocations; this is standard Windows behavior. (fn PROMPT DIR &optional DEFAULT-FILENAME MUSTMATCH ONLY-DIR-P)Fx-file-dialog Read file name, prompting with PROMPT in directory DIR. Use a file selection dialog. Select DEFAULT-FILENAME in the dialog's file selection box, if specified. If MUSTMATCH is non-nil, the returned file or directory must exist. This function is only defined on NS, MS Windows, and X Windows with the Motif or Gtk toolkits. With the Motif toolkit, ONLY-DIR-P is ignored. Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories. On Windows 7 and later, the file selection dialog "remembers" the last directory where the user selected a file, and will open that directory instead of DIR on subsequent invocations of this function with the same value of DIR as in previous invocations; this is standard Windows behavior. (fn PROMPT DIR &optional DEFAULT-FILENAME MUSTMATCH ONLY-DIR-P)Fx-select-font Read a font using a GTK dialog. Return either a font spec (for GTK versions >= 3.2) or a string containing a GTK-style font name. FRAME is the frame on which to pop up the font chooser. If omitted or nil, it defaults to the selected frame. (fn &optional FRAME IGNORED)Fx-backspace-delete-keys-p Check if both Backspace and Delete keys are on the keyboard of FRAME. FRAME nil means use the selected frame. Value is t if we know that both keys are present, and are mapped to the usual X keysyms. Value is `lambda' if we cannot determine if both keys are present and mapped to the usual X keysyms. (fn &optional FRAME)Fx-export-frames Return image data of FRAMES in TYPE format. FRAMES should be nil (the selected frame), a frame, or a list of frames (each of which corresponds to one page). Each frame should be visible. Optional arg TYPE should be either `pdf' (default), `png', `postscript', or `svg'. Supported types are determined by the compile-time configuration of cairo. (fn &optional FRAMES TYPE)Fx-page-setup-dialog Pop up a page setup dialog. The current page setup can be obtained using `x-get-page-setup'. (fn)Fx-get-page-setup Return the value of the current page setup. The return value is an alist containing the following keys: orientation: page orientation (symbol `portrait', `landscape', `reverse-portrait', or `reverse-landscape'). width, height: page width/height in points not including margins. left-margin, right-margin, top-margin, bottom-margin: print margins, which is the parts of the page that the printer cannot print on, in points. The paper width can be obtained as the sum of width, left-margin, and right-margin values if the page orientation is `portrait' or `reverse-portrait'. Otherwise, it is the sum of width, top-margin, and bottom-margin values. Likewise, the paper height is the sum of height, top-margin, and bottom-margin values if the page orientation is `portrait' or `reverse-portrait'. Otherwise, it is the sum of height, left-margin, and right-margin values. (fn)Fx-print-frames-dialog Pop up a print dialog to print the current contents of FRAMES. FRAMES should be nil (the selected frame), a frame, or a list of frames (each of which corresponds to one page). Each frame should be visible. (fn &optional FRAMES)Vx-pointer-shape The shape of the pointer when over text. Changing the value does not affect existing frames unless you set the mouse color.Vx-nontext-pointer-shape The shape of the pointer when not over text. This variable takes effect when you create a new frame or when you set the mouse color.Vx-hourglass-pointer-shape The shape of the pointer when Emacs is busy. This variable takes effect when you create a new frame or when you set the mouse color.Vx-mode-pointer-shape The shape of the pointer when over the mode line. This variable takes effect when you create a new frame or when you set the mouse color.Vx-sensitive-text-pointer-shape The shape of the pointer when over mouse-sensitive text. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-horizontal-drag-cursor Pointer shape to use for indicating a window can be dragged horizontally. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-vertical-drag-cursor Pointer shape to use for indicating a window can be dragged vertically. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-left-edge-cursor Pointer shape indicating a left x-window edge can be dragged. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-top-left-corner-cursor Pointer shape indicating a top left x-window corner can be dragged. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-top-edge-cursor Pointer shape indicating a top x-window edge can be dragged. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-top-right-corner-cursor Pointer shape indicating a top right x-window corner can be dragged. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-right-edge-cursor Pointer shape indicating a right x-window edge can be dragged. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-bottom-right-corner-cursor Pointer shape indicating a bottom right x-window corner can be dragged. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-bottom-edge-cursor Pointer shape indicating a bottom x-window edge can be dragged. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-bottom-left-corner-cursor Pointer shape indicating a bottom left x-window corner can be dragged. This variable takes effect when you create a new frame or when you set the mouse color.Vx-cursor-fore-pixel A string indicating the foreground color of the cursor box.Vx-max-tooltip-size Maximum size for tooltips. Value is a pair (COLUMNS . ROWS). Text larger than this is clipped.Vx-no-window-manager Non-nil if no X window manager is in use. Emacs doesn't try to figure this out; this is always nil unless you set it to something else.Vx-pixel-size-width-font-regexp Regexp matching a font name whose width is the same as `PIXEL_SIZE'. Since Emacs gets width of a font matching with this regexp from PIXEL_SIZE field of the name, font finding mechanism gets faster for such a font. This is especially effective for such large fonts as Chinese, Japanese, and Korean.Vx-gtk-use-old-file-dialog Non-nil means prompt with the old GTK file selection dialog. If nil or if the file selection dialog is not available, the new GTK file chooser is used instead. To turn off all file dialogs set the variable `use-file-dialog'.Vx-gtk-show-hidden-files If non-nil, the GTK file chooser will by default show hidden files. Note that this is just the default, there is a toggle button on the file chooser to show or not show hidden files on a case by case basis.Vx-gtk-file-dialog-help-text If non-nil, the GTK file chooser will show additional help text. If more space for files in the file chooser dialog is wanted, set this to nil to turn the additional text off.Vx-gtk-use-system-tooltips If non-nil with a Gtk+ built Emacs, the Gtk+ tooltip is used. Otherwise use Emacs own tooltip implementation. When using Gtk+ tooltips, the tooltip face is not used.Vmotif-version-string Version info for LessTif/Motif.Vgtk-version-string Version info for GTK+.Vcairo-version-string Version info for cairo.Sxmenu.o Fx-menu-bar-open-internal Start key navigation of the menu bar in FRAME. This initially opens the first menu bar item and you can then navigate with the arrow keys, select a menu entry with the return key or cancel with the escape key. If FRAME has no menu bar this function does nothing. If FRAME is nil or not given, use the selected frame. (fn &optional FRAME)Fx-menu-bar-open-internal Start key navigation of the menu bar in FRAME. This initially opens the first menu bar item and you can then navigate with the arrow keys, select a menu entry with the return key or cancel with the escape key. If FRAME has no menu bar this function does nothing. If FRAME is nil or not given, use the selected frame. (fn &optional FRAME)Fmenu-or-popup-active-p Return t if a menu or popup dialog is active. (fn)Sxselect.o Fx-own-selection-internal Assert an X selection of type SELECTION and value VALUE. SELECTION is a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. (Those are literal upper-case symbol names, since that's what X expects.) VALUE is typically a string, or a cons of two markers, but may be anything that the functions on `selection-converter-alist' know about. FRAME should be a frame that should own the selection. If omitted or nil, it defaults to the selected frame. On Nextstep, FRAME is unused. (fn SELECTION VALUE &optional FRAME)Fx-get-selection-internal Return text selected from some X window. SELECTION-SYMBOL is typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. (Those are literal upper-case symbol names, since that's what X expects.) TARGET-TYPE is the type of data desired, typically `STRING'. TIME-STAMP is the time to use in the XConvertSelection call for foreign selections. If omitted, defaults to the time for the last event. TERMINAL should be a terminal object or a frame specifying the X server to query. If omitted or nil, that stands for the selected frame's display, or the first available X display. On Nextstep, TIME-STAMP and TERMINAL are unused. (fn SELECTION-SYMBOL TARGET-TYPE &optional TIME-STAMP TERMINAL)Fx-disown-selection-internal If we own the selection SELECTION, disown it. Disowning it means there is no such selection. Sets the last-change time for the selection to TIME-OBJECT (by default the time of the last event). TERMINAL should be a terminal object or a frame specifying the X server to query. If omitted or nil, that stands for the selected frame's display, or the first available X display. On Nextstep, the TIME-OBJECT and TERMINAL arguments are unused. On MS-DOS, all this does is return non-nil if we own the selection. (fn SELECTION &optional TIME-OBJECT TERMINAL)Fx-selection-owner-p Whether the current Emacs process owns the given X Selection. The arg should be the name of the selection in question, typically one of the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'. (Those are literal upper-case symbol names, since that's what X expects.) For convenience, the symbol nil is the same as `PRIMARY', and t is the same as `SECONDARY'. TERMINAL should be a terminal object or a frame specifying the X server to query. If omitted or nil, that stands for the selected frame's display, or the first available X display. On Nextstep, TERMINAL is unused. (fn &optional SELECTION TERMINAL)Fx-selection-exists-p Whether there is an owner for the given X selection. SELECTION should be the name of the selection in question, typically one of the symbols `PRIMARY', `SECONDARY', `CLIPBOARD', or `CLIPBOARD_MANAGER' (X expects these literal upper-case names.) The symbol nil is the same as `PRIMARY', and t is the same as `SECONDARY'. TERMINAL should be a terminal object or a frame specifying the X server to query. If omitted or nil, that stands for the selected frame's display, or the first available X display. On Nextstep, TERMINAL is unused. (fn &optional SELECTION TERMINAL)Fx-get-atom-name Return the X atom name for VALUE as a string. VALUE may be a number or a cons where the car is the upper 16 bits and the cdr is the lower 16 bits of a 32 bit value. Use the display for FRAME or the current frame if FRAME is not given or nil. If the value is 0 or the atom is not known, return the empty string. (fn VALUE &optional FRAME)Fx-register-dnd-atom Request that dnd events are made for ClientMessages with ATOM. ATOM can be a symbol or a string. The ATOM is interned on the display that FRAME is on. If FRAME is nil, the selected frame is used. (fn ATOM &optional FRAME)Fx-send-client-message Send a client message of MESSAGE-TYPE to window DEST on DISPLAY. For DISPLAY, specify either a frame or a display name (a string). If DISPLAY is nil, that stands for the selected frame's display. DEST may be a number, in which case it is a Window id. The value 0 may be used to send to the root window of the DISPLAY. If DEST is a cons, it is converted to a 32 bit number with the high 16 bits from the car and the lower 16 bit from the cdr. That number is then used as a window id. If DEST is a frame the event is sent to the outer window of that frame. A value of nil means the currently selected frame. If DEST is the string "PointerWindow" the event is sent to the window that contains the pointer. If DEST is the string "InputFocus" the event is sent to the window that has the input focus. FROM is the frame sending the event. Use nil for currently selected frame. MESSAGE-TYPE is the name of an Atom as a string. FORMAT must be one of 8, 16 or 32 and determines the size of the values in bits. VALUES is a list of numbers, cons and/or strings containing the values to send. If a value is a string, it is converted to an Atom and the value of the Atom is sent. If a value is a cons, it is converted to a 32 bit number with the high 16 bits from the car and the lower 16 bit from the cdr. If more values than fits into the event is given, the excessive values are ignored. (fn DISPLAY DEST FROM MESSAGE-TYPE FORMAT VALUES)Vselection-converter-alist An alist associating X Windows selection-types with functions. These functions are called to convert the selection, with three args: the name of the selection (typically `PRIMARY', `SECONDARY', or `CLIPBOARD'); a desired type to which the selection should be converted; and the local selection value (whatever was given to `x-own-selection-internal'). The function should return the value to send to the X server (typically a string). A return value of nil means that the conversion could not be done. A return value which is the symbol `NULL' means that a side-effect was executed, and there is no meaningful selection value.Vx-lost-selection-functions A list of functions to be called when Emacs loses an X selection. (This happens when some other X client makes its own selection or when a Lisp program explicitly clears the selection.) The functions are called with one argument, the selection type (a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD').Vx-sent-selection-functions A list of functions to be called when Emacs answers a selection request. The functions are called with three arguments: - the selection name (typically `PRIMARY', `SECONDARY', or `CLIPBOARD'); - the selection-type which Emacs was asked to convert the selection into before sending (for example, `STRING' or `LENGTH'); - a flag indicating success or failure for responding to the request. We might have failed (and declined the request) for any number of reasons, including being asked for a selection that we no longer own, or being asked to convert into a type that we don't know about or that is inappropriate. This hook doesn't let you change the behavior of Emacs's selection replies, it merely informs you that they have happened.Vx-select-enable-clipboard-manager Whether to enable X clipboard manager support. If non-nil, then whenever Emacs is killed or an Emacs frame is deleted while owning the X clipboard, the clipboard contents are saved to the clipboard manager if one is present.Vx-selection-timeout Number of milliseconds to wait for a selection reply. If the selection owner doesn't reply in this time, we give up. A value of 0 means wait as long as necessary. This is initialized from the "*selectionTimeout" resource.Sxrdb.o Sxsmfns.o Fhandle-save-session Handle the save_yourself event from a session manager. A session manager can tell Emacs that the window system is shutting down by sending Emacs a save_yourself message. Emacs executes this function when such an event occurs. This function then executes `emacs-session-save'. After that, this function informs the session manager that it can continue or abort shutting down the window system depending on the return value from `emacs-session-save' If the return value is non-nil the session manager is told to abort the window system shutdown. Do not call this function yourself. (fn EVENT)Vx-session-id The session id Emacs got from the session manager for this session. Changing the value does not change the session id used by Emacs. The value is nil if no session manager is running. See also `x-session-previous-id', `emacs-save-session-functions', `emacs-session-save' and `emacs-session-restore'.Vx-session-previous-id The previous session id Emacs got from session manager. If Emacs is running on a window system that has a session manager, the session manager gives Emacs a session id. It is feasible for Emacs Lisp code to use the session id to save configuration in, for example, a file with a file name based on the session id. If Emacs is running when the window system is shut down, the session manager remembers that Emacs was running and saves the session id Emacs had. When the window system is started again, the session manager restarts Emacs and hands Emacs the session id it had the last time it was running. This is now the previous session id and the value of this variable. If configuration was saved in a file as stated above, the previous session id shall be used to reconstruct the file name. The session id Emacs has while it is running is in the variable `x-session-id'. The value of this variable and `x-session-id' may be the same, depending on how the session manager works. See also `emacs-save-session-functions', `emacs-session-save' and `emacs-session-restore'.Sfringe.o Fdestroy-fringe-bitmap Destroy fringe bitmap BITMAP. If BITMAP overrides a standard fringe bitmap, the original bitmap is restored. (fn BITMAP)Fdefine-fringe-bitmap Define fringe bitmap BITMAP from BITS of size HEIGHT x WIDTH. BITMAP is a symbol identifying the new fringe bitmap. BITS is either a string or a vector of integers. HEIGHT is height of bitmap. If HEIGHT is nil, use length of BITS. WIDTH must be an integer between 1 and 16, or nil which defaults to 8. Optional fifth arg ALIGN may be one of `top', `center', or `bottom', indicating the positioning of the bitmap relative to the rows where it is used; the default is to center the bitmap. Fifth arg may also be a list (ALIGN PERIODIC) where PERIODIC non-nil specifies that the bitmap should be repeated. If BITMAP already exists, the existing definition is replaced. (fn BITMAP BITS &optional HEIGHT WIDTH ALIGN)Fset-fringe-bitmap-face Set face for fringe bitmap BITMAP to FACE. FACE is merged with the `fringe' face, so normally FACE should specify only the foreground color. If FACE is nil, reset face to default fringe face. (fn BITMAP &optional FACE)Ffringe-bitmaps-at-pos Return fringe bitmaps of row containing position POS in window WINDOW. If WINDOW is nil, use selected window. If POS is nil, use value of point in that window. Return value is a list (LEFT RIGHT OV), where LEFT is the symbol for the bitmap in the left fringe (or nil if no bitmap), RIGHT is similar for the right fringe, and OV is non-nil if there is an overlay arrow in the left fringe. Return nil if POS is not visible in WINDOW. (fn &optional POS WINDOW)Voverflow-newline-into-fringe Non-nil means that newline may flow into the right fringe. This means that display lines which are exactly as wide as the window (not counting the final newline) will only occupy one screen line, by showing (or hiding) the final newline in the right fringe; when point is at the final newline, the cursor is shown in the right fringe. If nil, also continue lines which are exactly as wide as the window.Vfringe-bitmaps List of fringe bitmap symbols.Simage.o Fimage-size Return the size of image SPEC as pair (WIDTH . HEIGHT). PIXELS non-nil means return the size in pixels, otherwise return the size in canonical character units. FRAME is the frame on which the image will be displayed. FRAME nil or omitted means use the selected frame. (fn SPEC &optional PIXELS FRAME)Fimage-mask-p Return t if image SPEC has a mask bitmap. FRAME is the frame on which the image will be displayed. FRAME nil or omitted means use the selected frame. (fn SPEC &optional FRAME)Fimage-metadata Return metadata for image SPEC. FRAME is the frame on which the image will be displayed. FRAME nil or omitted means use the selected frame. (fn SPEC &optional FRAME)Fclear-image-cache Clear the image cache. FILTER nil or a frame means clear all images in the selected frame. FILTER t means clear the image caches of all frames. Anything else, means only clear those images which refer to FILTER, which is then usually a filename. (fn &optional FILTER)Fimage-flush Flush the image with specification SPEC on frame FRAME. This removes the image from the Emacs image cache. If SPEC specifies an image file, the next redisplay of this image will read from the current contents of that file. FRAME nil or omitted means use the selected frame. FRAME t means refresh the image on all frames. (fn SPEC &optional FRAME)Fimagemagick-types Return a list of image types supported by ImageMagick. Each entry in this list is a symbol named after an ImageMagick format tag. See the ImageMagick manual for a list of ImageMagick formats and their descriptions (http://www.imagemagick.org/script/formats.php). You can also try the shell command: `identify -list format'. Note that ImageMagick recognizes many file-types that Emacs does not recognize as images, such as C. See `imagemagick-enabled-types' and `imagemagick-types-inhibit'. (fn)Fimagep Value is non-nil if SPEC is a valid image specification. (fn SPEC)Flookup-image (fn SPEC)Finit-image-library Initialize image library implementing image type TYPE. Return non-nil if TYPE is a supported image type. If image libraries are loaded dynamically (currently only the case on MS-Windows), load the library for TYPE if it is not yet loaded, using the library file(s) specified by `dynamic-library-alist'. (fn TYPE)Vimage-types List of potentially supported image types. Each element of the list is a symbol for an image type, like `jpeg' or `png'. To check whether it is really supported, use `image-type-available-p'.Vmax-image-size Maximum size of images. Emacs will not load an image into memory if its pixel width or pixel height exceeds this limit. If the value is an integer, it directly specifies the maximum image height and width, measured in pixels. If it is a floating point number, it specifies the maximum image height and width as a ratio to the frame height and width. If the value is non-numeric, there is no explicit limit on the size of images.Vcross-disabled-images Non-nil means always draw a cross over disabled images. Disabled images are those having a `:conversion disabled' property. A cross is always drawn on black & white displays.Vx-bitmap-file-path List of directories to search for window system bitmap files.Vimage-cache-eviction-delay Maximum time after which images are removed from the cache. When an image has not been displayed this many seconds, Emacs automatically removes it from the image cache. If the cache contains a large number of images, the actual eviction time may be shorter. The value can also be nil, meaning the cache is never cleared. The function `clear-image-cache' disregards this variable.Vimagemagick-render-type Integer indicating which ImageMagick rendering method to use. The options are: 0 -- the default method (pixel pushing) 1 -- a newer method ("MagickExportImagePixels") that may perform better (speed etc) in some cases, but has not been as thoroughly tested with Emacs as the default method. This method requires ImageMagick version 6.4.6 (approximately) or later.Sfontset.o Fquery-fontset Return the name of a fontset that matches PATTERN. The value is nil if there is no matching fontset. PATTERN can contain `*' or `?' as a wildcard just as X font name matching algorithm allows. If REGEXPP is non-nil, PATTERN is a regular expression. (fn PATTERN &optional REGEXPP)Fset-fontset-font Modify fontset NAME to use FONT-SPEC for TARGET characters. NAME is a fontset name (a string), nil for the fontset of FRAME, or t for the default fontset. TARGET may be a single character to use FONT-SPEC for. TARGET may be a cons (FROM . TO), where FROM and TO are characters. In that case, use FONT-SPEC for all the characters in the range between FROM and TO (inclusive). TARGET may be a script symbol. In that case, use FONT-SPEC for all the characters that belong to the script. See the variable `script-representative-chars' for the list of known scripts. TARGET may be a charset. In that case, use FONT-SPEC for all the characters in the charset. See `list-character-sets' and `list-charset-chars' for the list of character sets and their characters. TARGET may be nil. In that case, use FONT-SPEC for any character for which no font-spec is specified. FONT-SPEC may one of these: * A font-spec object made by the function `font-spec' (which see). * A cons (FAMILY . REGISTRY), where FAMILY is a font family name and REGISTRY is a font registry name. FAMILY may contain foundry name, and REGISTRY may contain encoding name. * A font name string. * nil, which explicitly specifies that there's no font for TARGET. Optional 4th argument FRAME is a frame, or nil for the selected frame, to be considered in the case that NAME is nil. Optional 5th argument ADD, if non-nil, specifies how to add FONT-SPEC to the previously set font specifications for TARGET. If it is `prepend', FONT-SPEC is prepended. If it is `append', FONT-SPEC is appended. By default, FONT-SPEC overrides the previous settings. (fn NAME TARGET FONT-SPEC &optional FRAME ADD)Fnew-fontset Create a new fontset NAME from font information in FONTLIST. FONTLIST is an alist of scripts vs the corresponding font specification list. Each element of FONTLIST has the form (SCRIPT FONT-SPEC ...), where a character of SCRIPT is displayed by a font that matches one of FONT-SPEC. SCRIPT is a symbol that appears in the first extra slot of the char-table `char-script-table'. FONT-SPEC is a vector, a cons, or a string. See the documentation of `set-fontset-font' for the meaning. (fn NAME FONTLIST)Ffontset-info Return information about a fontset FONTSET on frame FRAME. FONTSET is a fontset name string, nil for the fontset of FRAME, or t for the default fontset. FRAME nil means the selected frame. The value is a char-table whose elements have this form: ((FONT OPENED-FONT ...) ...) FONT is a name of font specified for a range of characters. OPENED-FONT is a name of a font actually opened. The char-table has one extra slot. If FONTSET is not the default fontset, the value the extra slot is a char-table containing the information about the derived fonts from the default fontset. The format is the same as above. (fn FONTSET &optional FRAME)Ffontset-font Return a font name pattern for character CH in fontset NAME. If NAME is t, find a pattern in the default fontset. If NAME is nil, find a pattern in the fontset of the selected frame. The value has the form (FAMILY . REGISTRY), where FAMILY is a font family name and REGISTRY is a font registry name. This is actually the first font name pattern for CH in the fontset or in the default fontset. If the 2nd optional arg ALL is non-nil, return a list of all font name patterns. (fn NAME CH &optional ALL)Ffontset-list Return a list of all defined fontset names. (fn)Ffontset-list-all Return a brief summary of all fontsets for debug use. (fn)Vfont-encoding-charset-alist Alist of charsets vs the charsets to determine the preferred font encoding. Each element looks like (CHARSET . ENCODING-CHARSET), where ENCODING-CHARSET is a charset registered in the variable `font-encoding-alist' as ENCODING. When a text has a property `charset' and the value is CHARSET, a font whose encoding corresponds to ENCODING-CHARSET is preferred.Vuse-default-ascent Char table of characters whose ascent values should be ignored. If an entry for a character is non-nil, the ascent value of the glyph is assumed to be specified by _MULE_DEFAULT_ASCENT property of a font. This affects how a composite character which contains such a character is displayed on screen.Vuse-default-font-for-symbols If non-nil, use the default face's font for symbols and punctuation. By default, Emacs will try to use the default face's font for displaying symbol and punctuation characters, disregarding the fontsets, if the default font can display the character. Set this to nil to make Emacs honor the fontsets instead.Vignore-relative-composition Char table of characters which are not composed relatively. If an entry for a character is non-nil, a composition sequence which contains that character is displayed so that the glyph of that character is put without considering an ascent and descent value of a previous character.Valternate-fontname-alist Alist of fontname vs list of the alternate fontnames. When a specified font name is not found, the corresponding alternate fontnames (if any) are tried instead.Vfontset-alias-alist Alist of fontset names vs the aliases.Vvertical-centering-font-regexp Regexp matching font names that require vertical centering on display. When a character is displayed with such fonts, the character is displayed at the vertical center of lines.Votf-script-alist Alist of OpenType script tags vs the corresponding script names.Sdbusbind.o Fdbus--init-bus Establish the connection to D-Bus BUS. This function is dbus internal. You almost certainly want to use `dbus-init-bus'. BUS can be either the symbol `:system' or the symbol `:session', or it can be a string denoting the address of the corresponding bus. For the system and session buses, this function is called when loading `dbus.el', there is no need to call it again. The function returns a number, which counts the connections this Emacs session has established to the BUS under the same unique name (see `dbus-get-unique-name'). It depends on the libraries Emacs is linked with, and on the environment Emacs is running. For example, if Emacs is linked with the gtk toolkit, and it runs in a GTK-aware environment like Gnome, another connection might already be established. When PRIVATE is non-nil, a new connection is established instead of reusing an existing one. It results in a new unique name at the bus. This can be used, if it is necessary to distinguish from another connection used in the same Emacs process, like the one established by GTK+. It should be used with care for at least the `:system' and `:session' buses, because other Emacs Lisp packages might already use this connection to those buses. (fn BUS &optional PRIVATE)Fdbus-get-unique-name Return the unique name of Emacs registered at D-Bus BUS. (fn BUS)Fdbus-message-internal Send a D-Bus message. This is an internal function, it shall not be used outside dbus.el. The following usages are expected: `dbus-call-method', `dbus-call-method-asynchronously': (dbus-message-internal dbus-message-type-method-call BUS SERVICE PATH INTERFACE METHOD HANDLER &optional :timeout TIMEOUT &rest ARGS) `dbus-send-signal': (dbus-message-internal dbus-message-type-signal BUS SERVICE PATH INTERFACE SIGNAL &rest ARGS) `dbus-method-return-internal': (dbus-message-internal dbus-message-type-method-return BUS SERVICE SERIAL &rest ARGS) `dbus-method-error-internal': (dbus-message-internal dbus-message-type-error BUS SERVICE SERIAL &rest ARGS) (fn &rest REST)Vdbus-compiled-version The version of D-Bus Emacs is compiled against.Vdbus-runtime-version The version of D-Bus Emacs runs with.Vdbus-message-type-invalid This value is never a valid message type.Vdbus-message-type-method-call Message type of a method call message.Vdbus-message-type-method-return Message type of a method return message.Vdbus-message-type-error Message type of an error reply message.Vdbus-message-type-signal Message type of a signal message.Vdbus-registered-objects-table Hash table of registered functions for D-Bus. There are two different uses of the hash table: for accessing registered interfaces properties, targeted by signals or method calls, and for calling handlers in case of non-blocking method call returns. In the first case, the key in the hash table is the list (TYPE BUS INTERFACE MEMBER). TYPE is one of the Lisp symbols `:method', `:signal' or `:property'. BUS is either a Lisp symbol, `:system' or `:session', or a string denoting the bus address. INTERFACE is a string which denotes a D-Bus interface, and MEMBER, also a string, is either a method, a signal or a property INTERFACE is offering. All arguments but BUS must not be nil. The value in the hash table is a list of quadruple lists ((UNAME SERVICE PATH OBJECT [RULE]) ...). SERVICE is the service name as registered, UNAME is the corresponding unique name. In case of registered methods and properties, UNAME is nil. PATH is the object path of the sending object. All of them can be nil, which means a wildcard then. OBJECT is either the handler to be called when a D-Bus message, which matches the key criteria, arrives (TYPE `:method' and `:signal'), or a cons cell containing the value of the property (TYPE `:property'). For entries of type `:signal', there is also a fifth element RULE, which keeps the match string the signal is registered with. In the second case, the key in the hash table is the list (:serial BUS SERIAL). BUS is either a Lisp symbol, `:system' or `:session', or a string denoting the bus address. SERIAL is the serial number of the non-blocking method call, a reply is expected. Both arguments must not be nil. The value in the hash table is HANDLER, the function to be called when the D-Bus reply message arrives.Vdbus-debug If non-nil, debug messages of D-Bus bindings are raised.Scygw32.o Fcygwin-convert-file-name-to-windows Convert a Cygwin file name FILE to a Windows-style file name. If ABSOLUTE-P is non-nil, return an absolute file name. For the reverse operation, see `cygwin-convert-file-name-from-windows'. (fn FILE &optional ABSOLUTE-P)Fcygwin-convert-file-name-from-windows Convert a Windows-style file name FILE to a Cygwin file name. If ABSOLUTE-P is non-nil, return an absolute file name. For the reverse operation, see `cygwin-convert-file-name-to-windows'. (fn FILE &optional ABSOLUTE-P)Snsterm.o Vns-input-file The file specified in the last NS event.Vns-working-text String for visualizing working composition sequence.Vns-input-font The font specified in the last NS event.Vns-input-fontsize The fontsize specified in the last NS event.Vns-input-line The line specified in the last NS event.Vns-input-spi-name The service name specified in the last NS event.Vns-input-spi-arg The service argument specified in the last NS event.Vns-alternate-modifier This variable describes the behavior of the alternate or option key. Set to the symbol control, meta, alt, super, or hyper means it is taken to be that key. Set to none means that the alternate / option key is not interpreted by Emacs at all, allowing it to be used at a lower level for accented character entry.Vns-right-alternate-modifier This variable describes the behavior of the right alternate or option key. Set to the symbol control, meta, alt, super, or hyper means it is taken to be that key. Set to left means be the same key as `ns-alternate-modifier'. Set to none means that the alternate / option key is not interpreted by Emacs at all, allowing it to be used at a lower level for accented character entry.Vns-command-modifier This variable describes the behavior of the command key. Set to the symbol control, meta, alt, super, or hyper means it is taken to be that key.Vns-right-command-modifier This variable describes the behavior of the right command key. Set to the symbol control, meta, alt, super, or hyper means it is taken to be that key. Set to left means be the same key as `ns-command-modifier'. Set to none means that the command / option key is not interpreted by Emacs at all, allowing it to be used at a lower level for accented character entry.Vns-control-modifier This variable describes the behavior of the control key. Set to the symbol control, meta, alt, super, or hyper means it is taken to be that key.Vns-right-control-modifier This variable describes the behavior of the right control key. Set to the symbol control, meta, alt, super, or hyper means it is taken to be that key. Set to left means be the same key as `ns-control-modifier'. Set to none means that the control / option key is not interpreted by Emacs at all, allowing it to be used at a lower level for accented character entry.Vns-function-modifier This variable describes the behavior of the function key (on laptops). Set to the symbol control, meta, alt, super, or hyper means it is taken to be that key. Set to none means that the function key is not interpreted by Emacs at all, allowing it to be used at a lower level for accented character entry.Vns-antialias-text Non-nil (the default) means to render text antialiased.Vns-use-thin-smoothing Non-nil turns on a font smoothing method that produces thinner strokes.Vns-confirm-quit Whether to confirm application quit using dialog.Vns-auto-hide-menu-bar Non-nil means that the menu bar is hidden, but appears when the mouse is near. Only works on Mac OS X 10.6 or later.Vns-use-native-fullscreen Non-nil means to use native fullscreen on Mac OS X 10.7 and later. Nil means use fullscreen the old (< 10.7) way. The old way works better with multiple monitors, but lacks tool bar. This variable is ignored on Mac OS X < 10.7. Default is t.Vns-use-fullscreen-animation Non-nil means use animation on non-native fullscreen. For native fullscreen, this does nothing. Default is nil.Vns-use-srgb-colorspace Non-nil means to use sRGB colorspace on Mac OS X 10.7 and later. Note that this does not apply to images. This variable is ignored on Mac OS X < 10.7 and GNUstep.Vns-use-mwheel-acceleration Non-nil means use macOS's standard mouse wheel acceleration. This variable is ignored on macOS < 10.7 and GNUstep. Default is t.Vns-mwheel-line-height The number of pixels touchpad scrolling considers one line. Nil or a non-number means use the default frame line height. This variable is ignored on macOS < 10.7 and GNUstep. Default is nil.Vns-use-mwheel-momentum Non-nil means mouse wheel scrolling uses momentum. This variable is ignored on macOS < 10.7 and GNUstep. Default is t.Vx-toolkit-scroll-bars Which toolkit scroll bars Emacs uses, if any. A value of nil means Emacs doesn't use toolkit scroll bars. With the X Window system, the value is a symbol describing the X toolkit. Possible values are: gtk, motif, xaw, or xaw3d. With MS Windows or Nextstep, the value is t.Vx-use-underline-position-properties Non-nil means make use of UNDERLINE_POSITION font properties. A value of nil means ignore them. If you encounter fonts with bogus UNDERLINE_POSITION font properties, for example 7x13 on XFree prior to 4.1, set this to nil.Vx-underline-at-descent-line Non-nil means to draw the underline at the same place as the descent line. (If `line-spacing' is in effect, that moves the underline lower by that many pixels.) A value of nil means to draw the underline according to the value of the variable `x-use-underline-position-properties', which is usually at the baseline level. The default value is nil.Snsfns.o Fx-create-frame Make a new Nextstep window, called a "frame" in Emacs terms. Return an Emacs frame object. PARMS is an alist of frame parameters. If the parameters specify that the frame should not have a minibuffer, and do not specify a specific minibuffer window to use, then `default-minibuffer-frame' must be a frame whose minibuffer can be shared by the new frame. This function is an internal primitive--use `make-frame' instead. (fn PARMS)Fns-frame-list-z-order Return list of Emacs' frames, in Z (stacking) order. If TERMINAL is non-nil and specifies a live frame, return the child frames of that frame in Z (stacking) order. Frames are listed from topmost (first) to bottommost (last). (fn &optional TERMINAL)Fns-frame-restack Restack FRAME1 below FRAME2. This means that if both frames are visible and the display areas of these frames overlap, FRAME2 (partially) obscures FRAME1. If optional third argument ABOVE is non-nil, restack FRAME1 above FRAME2. This means that if both frames are visible and the display areas of these frames overlap, FRAME1 (partially) obscures FRAME2. Some window managers may refuse to restack windows. (fn FRAME1 FRAME2 &optional ABOVE)Fns-popup-font-panel Pop up the font panel. (fn &optional FRAME)Fns-popup-color-panel Pop up the color panel. (fn &optional FRAME)Fns-read-file-name Use a graphical panel to read a file name, using prompt PROMPT. Optional arg DIR, if non-nil, supplies a default directory. Optional arg MUSTMATCH, if non-nil, means the returned file or directory must exist. Optional arg INIT, if non-nil, provides a default file name to use. Optional arg DIR_ONLY_P, if non-nil, means choose only directories. (fn PROMPT &optional DIR MUSTMATCH INIT DIR-ONLY-P)Fns-get-resource Return the value of the property NAME of OWNER from the defaults database. If OWNER is nil, Emacs is assumed. (fn OWNER NAME)Fns-set-resource Set property NAME of OWNER to VALUE, from the defaults database. If OWNER is nil, Emacs is assumed. If VALUE is nil, the default is removed. (fn OWNER NAME VALUE)Fx-server-max-request-size This function is a no-op. It is only present for completeness. (fn &optional TERMINAL)Fx-server-vendor Return the "vendor ID" string of Nextstep display server TERMINAL. (Labeling every distributor as a "vendor" embodies the false assumption that operating systems cannot be developed and distributed noncommercially.) The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-server-version Return the version numbers of the server of display TERMINAL. The value is a list of three integers: the major and minor version numbers of the X Protocol in use, and the distributor-specific release number. See also the function `x-server-vendor'. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-screens Return the number of screens on Nextstep display server TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. Note: "screen" here is not in Nextstep terminology but in X11's. For the number of physical monitors, use `(length (display-monitor-attributes-list TERMINAL))' instead. (fn &optional TERMINAL)Fx-display-mm-height Return the height in millimeters of the Nextstep display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the height in millimeters for all physical monitors associated with TERMINAL. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional TERMINAL)Fx-display-mm-width Return the width in millimeters of the Nextstep display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the width in millimeters for all physical monitors associated with TERMINAL. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional TERMINAL)Fx-display-backing-store Return an indication of whether the Nextstep display TERMINAL does backing store. The value may be `buffered', `retained', or `non-retained'. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-visual-class Return the visual class of the Nextstep display TERMINAL. The value is one of the symbols `static-gray', `gray-scale', `static-color', `pseudo-color', `true-color', or `direct-color'. The optional argument TERMINAL specifies which display to ask about. TERMINAL should a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-save-under Return t if TERMINAL supports the save-under feature. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-open-connection Open a connection to a display server. DISPLAY is the name of the display to connect to. Optional second arg XRM-STRING is a string of resources in xrdb format. If the optional third arg MUST-SUCCEED is non-nil, terminate Emacs if we can't open the connection. (In the Nextstep version, the last two arguments are currently ignored.) (fn DISPLAY &optional RESOURCE-STRING MUST-SUCCEED)Fx-close-connection Close the connection to TERMINAL's Nextstep display server. For TERMINAL, specify a terminal object, a frame or a display name (a string). If TERMINAL is nil, that stands for the selected frame's terminal. (fn TERMINAL)Fx-display-list Return the list of display names that Emacs has connections to. (fn)Fns-hide-others Hides all applications other than Emacs. (fn)Fns-hide-emacs If ON is non-nil, the entire Emacs application is hidden. Otherwise if Emacs is hidden, it is unhidden. If ON is equal to `activate', Emacs is unhidden and becomes the active application. (fn ON)Fns-emacs-info-panel Shows the 'Info' or 'About' panel for Emacs. (fn)Fns-font-name Determine font PostScript or family name for font NAME. NAME should be a string containing either the font name or an XLFD font descriptor. If string contains `fontset' and not `fontset-startup', it is left alone. (fn NAME)Fns-list-colors Return a list of all available colors. The optional argument FRAME is currently ignored. (fn &optional FRAME)Fns-list-services List available Nextstep services by querying NSApp. (fn)Fns-perform-service Perform Nextstep SERVICE on SEND. SEND should be either a string or nil. The return value is the result of the service, as string, or nil if there was no result. (fn SERVICE SEND)Fns-do-applescript Execute AppleScript SCRIPT and return the result. If compilation and execution are successful, the resulting script value is returned as a string, a number or, in the case of other constructs, t. In case the execution fails, an error is signaled. (fn SCRIPT)Fxw-color-defined-p Internal function called by `color-defined-p', which see. (Note that the Nextstep version of this function ignores FRAME.) (fn COLOR &optional FRAME)Fxw-color-values Internal function called by `color-values', which see. (fn COLOR &optional FRAME)Fxw-display-color-p Internal function called by `display-color-p', which see. (fn &optional TERMINAL)Fx-display-grayscale-p Return t if the Nextstep display supports shades of gray. Note that color displays do support shades of gray. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-pixel-width Return the width in pixels of the Nextstep display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the pixel width for all physical monitors associated with TERMINAL. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional TERMINAL)Fx-display-pixel-height Return the height in pixels of the Nextstep display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the pixel height for all physical monitors associated with TERMINAL. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional TERMINAL)Fns-display-monitor-attributes-list Return a list of physical monitor attributes on the X display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. In addition to the standard attribute keys listed in `display-monitor-attributes-list', the following keys are contained in the attributes: source -- String describing the source from which multi-monitor information is obtained, "NS" is always the source." Internal use only, use `display-monitor-attributes-list' instead. (fn &optional TERMINAL)Fx-display-planes Return the number of bitplanes of the Nextstep display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-color-cells Returns the number of color cells of the Nextstep display TERMINAL. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-show-tip Show STRING in a "tooltip" window on frame FRAME. A tooltip window is a small window displaying a string. This is an internal function; Lisp code should call `tooltip-show'. FRAME nil or omitted means use the selected frame. PARMS is an optional list of frame parameters which can be used to change the tooltip's appearance. Automatically hide the tooltip after TIMEOUT seconds. TIMEOUT nil means use the default timeout of 5 seconds. If the list of frame parameters PARMS contains a `left' parameter, display the tooltip at that x-position. If the list of frame parameters PARMS contains no `left' but a `right' parameter, display the tooltip right-adjusted at that x-position. Otherwise display it at the x-position of the mouse, with offset DX added (default is 5 if DX isn't specified). Likewise for the y-position: If a `top' frame parameter is specified, it determines the position of the upper edge of the tooltip window. If a `bottom' parameter but no `top' frame parameter is specified, it determines the position of the lower edge of the tooltip window. Otherwise display the tooltip window at the y-position of the mouse, with offset DY added (default is -10). A tooltip's maximum size is specified by `x-max-tooltip-size'. Text larger than the specified size is clipped. (fn STRING &optional FRAME PARMS TIMEOUT DX DY)Fx-hide-tip Hide the current tooltip window, if there is any. Value is t if tooltip was open, nil otherwise. (fn)Fns-frame-geometry Return geometric attributes of FRAME. FRAME must be a live frame and defaults to the selected one. The return value is an association list of the attributes listed below. All height and width values are in pixels. `outer-position' is a cons of the outer left and top edges of FRAME relative to the origin - the position (0, 0) - of FRAME's display. `outer-size' is a cons of the outer width and height of FRAME. The outer size includes the title bar and the external borders as well as any menu and/or tool bar of frame. `external-border-size' is a cons of the horizontal and vertical width of FRAME's external borders as supplied by the window manager. `title-bar-size' is a cons of the width and height of the title bar of FRAME as supplied by the window manager. If both of them are zero, FRAME has no title bar. If only the width is zero, Emacs was not able to retrieve the width information. `menu-bar-external', if non-nil, means the menu bar is external (never included in the inner edges of FRAME). `menu-bar-size' is a cons of the width and height of the menu bar of FRAME. `tool-bar-external', if non-nil, means the tool bar is external (never included in the inner edges of FRAME). `tool-bar-position' tells on which side the tool bar on FRAME is and can be one of `left', `top', `right' or `bottom'. If this is nil, FRAME has no tool bar. `tool-bar-size' is a cons of the width and height of the tool bar of FRAME. `internal-border-width' is the width of the internal border of FRAME. (fn &optional FRAME)Fns-frame-edges Return edge coordinates of FRAME. FRAME must be a live frame and defaults to the selected one. The return value is a list of the form (LEFT, TOP, RIGHT, BOTTOM). All values are in pixels relative to the origin - the position (0, 0) - of FRAME's display. If optional argument TYPE is the symbol `outer-edges', return the outer edges of FRAME. The outer edges comprise the decorations of the window manager (like the title bar or external borders) as well as any external menu or tool bar of FRAME. If optional argument TYPE is the symbol `native-edges' or nil, return the native edges of FRAME. The native edges exclude the decorations of the window manager and any external menu or tool bar of FRAME. If TYPE is the symbol `inner-edges', return the inner edges of FRAME. These edges exclude title bar, any borders, menu bar or tool bar of FRAME. (fn &optional FRAME TYPE)Fns-set-mouse-absolute-pixel-position Move mouse pointer to absolute pixel position (X, Y). The coordinates X and Y are interpreted in pixels relative to a position (0, 0) of the selected frame's display. (fn X Y)Fns-mouse-absolute-pixel-position Return absolute position of mouse cursor in pixels. The position is returned as a cons cell (X . Y) of the coordinates of the mouse cursor position in pixels relative to a position (0, 0) of the selected frame's terminal. (fn)Vns-icon-type-alist Alist of elements (REGEXP . IMAGE) for images of icons associated to frames. If the title of a frame matches REGEXP, then IMAGE.tiff is selected as the image of the icon representing the frame when it's miniaturized. If an element is t, then Emacs tries to select an icon based on the filetype of the visited file. The images have to be installed in a folder called English.lproj in the Emacs folder. You have to restart Emacs after installing new icons. Example: Install an icon Gnus.tiff and execute the following code (setq ns-icon-type-alist (append ns-icon-type-alist \='(("^\\*\\(Group\\*$\\|Summary \\|Article\\*$\\)" . "Gnus")))) When you miniaturize a Group, Summary or Article frame, Gnus.tiff will be used as the image of the icon representing the frame.Vns-version-string Toolkit version for NS Windowing.Snsmenu.o Fns-reset-menu Cause the NS menu to be re-calculated. (fn)Fmenu-or-popup-active-p Return t if a menu or popup dialog is active. (fn)Snsselect.o Fns-own-selection-internal Assert an X selection of type SELECTION and value VALUE. SELECTION is a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. (Those are literal upper-case symbol names, since that's what X expects.) VALUE is typically a string, or a cons of two markers, but may be anything that the functions on `selection-converter-alist' know about. (fn SELECTION VALUE)Fns-disown-selection-internal If we own the selection SELECTION, disown it. Disowning it means there is no such selection. (fn SELECTION)Fns-selection-exists-p Whether there is an owner for the given X selection. SELECTION should be the name of the selection in question, typically one of the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'. (X expects these literal upper-case names.) The symbol nil is the same as `PRIMARY', and t is the same as `SECONDARY'. (fn &optional SELECTION)Fns-selection-owner-p Whether the current Emacs process owns the given X Selection. The arg should be the name of the selection in question, typically one of the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'. (Those are literal upper-case symbol names, since that's what X expects.) For convenience, the symbol nil is the same as `PRIMARY', and t is the same as `SECONDARY'. (fn &optional SELECTION)Fns-get-selection Return text selected from some X window. SELECTION-SYMBOL is typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. (Those are literal upper-case symbol names, since that's what X expects.) TARGET-TYPE is the type of data desired, typically `STRING'. (fn SELECTION-NAME TARGET-TYPE)Vns-sent-selection-hooks A list of functions to be called when Emacs answers a selection request. The functions are called with four arguments: - the selection name (typically `PRIMARY', `SECONDARY', or `CLIPBOARD'); - the selection-type which Emacs was asked to convert the selection into before sending (for example, `STRING' or `LENGTH'); - a flag indicating success or failure for responding to the request. We might have failed (and declined the request) for any number of reasons, including being asked for a selection that we no longer own, or being asked to convert into a type that we don't know about or that is inappropriate. This hook doesn't let you change the behavior of Emacs's selection replies, it merely informs you that they have happened.Snsimage.o Snsfont.o Vns-reg-to-script Internal use: maps font registry to Unicode script.Smacfont.o Sw32.o Sw32console.o Fset-screen-color Set screen foreground and background colors. Arguments should be indices between 0 and 15, see w32console.el. (fn FOREGROUND BACKGROUND)Fget-screen-color Get color indices of the current screen foreground and background. The colors are returned as a list of 2 indices (FOREGROUND BACKGROUND). See w32console.el and `tty-defined-color-alist' for mapping of indices to colors. (fn)Fset-cursor-size Set cursor size. (fn SIZE)Vw32-use-full-screen-buffer Non-nil means make terminal frames use the full screen buffer dimensions. This is desirable when running Emacs over telnet. A value of nil means use the current console window dimensions; this may be preferable when working directly at the console with a large scroll-back buffer.Sw32fns.o Fw32-define-rgb-color Convert RGB numbers to a Windows color reference and associate with NAME. This adds or updates a named color to `w32-color-map', making it available for use. The original entry's RGB ref is returned, or nil if the entry is new. (fn RED GREEN BLUE NAME)Fw32-default-color-map Return the default color map. (fn)Fx-create-frame Make a new window, which is called a "frame" in Emacs terms. Return an Emacs frame object. PARAMETERS is an alist of frame parameters. If the parameters specify that the frame should not have a minibuffer, and do not specify a specific minibuffer window to use, then `default-minibuffer-frame' must be a frame whose minibuffer can be shared by the new frame. This function is an internal primitive--use `make-frame' instead. (fn PARAMETERS)Fxw-color-defined-p Internal function called by `color-defined-p', which see. (Note that the Nextstep version of this function ignores FRAME.) (fn COLOR &optional FRAME)Fxw-color-values Internal function called by `color-values', which see. (fn COLOR &optional FRAME)Fxw-display-color-p Internal function called by `display-color-p', which see. (fn &optional DISPLAY)Fx-display-grayscale-p Return t if DISPLAY supports shades of gray. Note that color displays do support shades of gray. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional DISPLAY)Fx-display-pixel-width Return the width in pixels of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the pixel width for all physical monitors associated with DISPLAY. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional DISPLAY)Fx-display-pixel-height Return the height in pixels of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the pixel height for all physical monitors associated with DISPLAY. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional DISPLAY)Fx-display-planes Return the number of bitplanes of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional DISPLAY)Fx-display-color-cells Return the number of color cells of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional DISPLAY)Fx-server-max-request-size Return the maximum request size of the server of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional DISPLAY)Fx-server-vendor Return the "vendor ID" string of the GUI software on TERMINAL. (Labeling every distributor as a "vendor" embodies the false assumption that operating systems cannot be developed and distributed noncommercially.) For GNU and Unix systems, this queries the X server software; for MS-Windows, this queries the OS. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-server-version Return the version numbers of the GUI software on TERMINAL. The value is a list of three integers specifying the version of the GUI software in use. For GNU and Unix system, the first 2 numbers are the version of the X Protocol used on TERMINAL and the 3rd number is the distributor-specific release number. For MS-Windows, the 3 numbers report the version and the build number of the OS. See also the function `x-server-vendor'. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional TERMINAL)Fx-display-screens Return the number of screens on the server of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional DISPLAY)Fx-display-mm-height Return the height in millimeters of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the height in millimeters for all physical monitors associated with DISPLAY. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional DISPLAY)Fx-display-mm-width Return the width in millimeters of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the width in millimeters for all physical monitors associated with TERMINAL. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional DISPLAY)Fx-display-backing-store Return an indication of whether DISPLAY does backing store. The value may be `always', `when-mapped', or `not-useful'. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional DISPLAY)Fx-display-visual-class Return the visual class of DISPLAY. The value is one of the symbols `static-gray', `gray-scale', `static-color', `pseudo-color', `true-color', or `direct-color'. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional DISPLAY)Fx-display-save-under Return t if DISPLAY supports the save-under feature. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional DISPLAY)Fw32-display-monitor-attributes-list Return a list of physical monitor attributes on the W32 display DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. Internal use only, use `display-monitor-attributes-list' instead. (fn &optional DISPLAY)Fset-message-beep Set the sound generated when the bell is rung. SOUND is `asterisk', `exclamation', `hand', `question', `ok', or `silent' to use the corresponding system sound for the bell. The `silent' sound prevents Emacs from making any sound at all. SOUND is nil to use the normal beep. (fn SOUND)Fx-open-connection Open a connection to a display server. DISPLAY is the name of the display to connect to. Optional second arg XRM-STRING is a string of resources in xrdb format. If the optional third arg MUST-SUCCEED is non-nil, terminate Emacs if we can't open the connection. (In the Nextstep version, the last two arguments are currently ignored.) (fn DISPLAY &optional XRM-STRING MUST-SUCCEED)Fx-close-connection Close the connection to DISPLAY's server. For DISPLAY, specify either a frame or a display name (a string). If DISPLAY is nil, that stands for the selected frame's display. (fn DISPLAY)Fx-display-list Return the list of display names that Emacs has connections to. (fn)Fx-synchronize If ON is non-nil, report X errors as soon as the erring request is made. This function only has an effect on X Windows. With MS Windows, it is defined but does nothing. If ON is nil, allow buffering of requests. Turning on synchronization prohibits the Xlib routines from buffering requests and seriously degrades performance, but makes debugging much easier. The optional second argument TERMINAL specifies which display to act on. TERMINAL should be a terminal object, a frame or a display name (a string). If TERMINAL is omitted or nil, that stands for the selected frame's display. (fn ON &optional DISPLAY)Fx-change-window-property Change window property PROP to VALUE on the X window of FRAME. PROP must be a string. VALUE may be a string or a list of conses, numbers and/or strings. If an element in the list is a string, it is converted to an atom and the value of the Atom is used. If an element is a cons, it is converted to a 32 bit number where the car is the 16 top bits and the cdr is the lower 16 bits. FRAME nil or omitted means use the selected frame. If TYPE is given and non-nil, it is the name of the type of VALUE. If TYPE is not given or nil, the type is STRING. FORMAT gives the size in bits of each element if VALUE is a list. It must be one of 8, 16 or 32. If VALUE is a string or FORMAT is nil or not given, FORMAT defaults to 8. If OUTER-P is non-nil, the property is changed for the outer X window of FRAME. Default is to change on the edit X window. (fn PROP VALUE &optional FRAME TYPE FORMAT OUTER-P)Fx-delete-window-property Remove window property PROP from X window of FRAME. FRAME nil or omitted means use the selected frame. Value is PROP. (fn PROP &optional FRAME)Fx-window-property Value is the value of window property PROP on FRAME. If FRAME is nil or omitted, use the selected frame. On X Windows, the following optional arguments are also accepted: If TYPE is nil or omitted, get the property as a string. Otherwise TYPE is the name of the atom that denotes the type expected. If SOURCE is non-nil, get the property on that window instead of from FRAME. The number 0 denotes the root window. If DELETE-P is non-nil, delete the property after retrieving it. If VECTOR-RET-P is non-nil, don't return a string but a vector of values. On MS Windows, this function accepts but ignores those optional arguments. Value is nil if FRAME hasn't a property with name PROP or if PROP has no value of TYPE (always string in the MS Windows case). (fn PROP &optional FRAME TYPE SOURCE DELETE-P VECTOR-RET-P)Fx-show-tip Show STRING in a "tooltip" window on frame FRAME. A tooltip window is a small window displaying a string. This is an internal function; Lisp code should call `tooltip-show'. FRAME nil or omitted means use the selected frame. PARMS is an optional list of frame parameters which can be used to change the tooltip's appearance. Automatically hide the tooltip after TIMEOUT seconds. TIMEOUT nil means use the default timeout of 5 seconds. If the list of frame parameters PARMS contains a `left' parameter, display the tooltip at that x-position. If the list of frame parameters PARMS contains no `left' but a `right' parameter, display the tooltip right-adjusted at that x-position. Otherwise display it at the x-position of the mouse, with offset DX added (default is 5 if DX isn't specified). Likewise for the y-position: If a `top' frame parameter is specified, it determines the position of the upper edge of the tooltip window. If a `bottom' parameter but no `top' frame parameter is specified, it determines the position of the lower edge of the tooltip window. Otherwise display the tooltip window at the y-position of the mouse, with offset DY added (default is -10). A tooltip's maximum size is specified by `x-max-tooltip-size'. Text larger than the specified size is clipped. (fn STRING &optional FRAME PARMS TIMEOUT DX DY)Fx-hide-tip Hide the current tooltip window, if there is any. Value is t if tooltip was open, nil otherwise. (fn)Fx-file-dialog Read file name, prompting with PROMPT in directory DIR. Use a file selection dialog. Select DEFAULT-FILENAME in the dialog's file selection box, if specified. If MUSTMATCH is non-nil, the returned file or directory must exist. This function is only defined on NS, MS Windows, and X Windows with the Motif or Gtk toolkits. With the Motif toolkit, ONLY-DIR-P is ignored. Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories. On Windows 7 and later, the file selection dialog "remembers" the last directory where the user selected a file, and will open that directory instead of DIR on subsequent invocations of this function with the same value of DIR as in previous invocations; this is standard Windows behavior. (fn PROMPT DIR &optional DEFAULT-FILENAME MUSTMATCH ONLY-DIR-P)Fsystem-move-file-to-trash Move file or directory named FILENAME to the recycle bin. (fn FILENAME)Fw32-send-sys-command Send frame a Windows WM_SYSCOMMAND message of type COMMAND. Some useful values for COMMAND are #xf030 to maximize frame (#xf020 to minimize), #xf120 to restore frame to original size, and #xf100 to activate the menubar for keyboard access. #xf140 activates the screen saver if defined. If optional parameter FRAME is not specified, use selected frame. (fn COMMAND &optional FRAME)Fw32-shell-execute Get Windows to perform OPERATION on DOCUMENT. This is a wrapper around the ShellExecute system function, which invokes the application registered to handle OPERATION for DOCUMENT. OPERATION is either nil or a string that names a supported operation. What operations can be used depends on the particular DOCUMENT and its handler application, but typically it is one of the following common operations: "open" - open DOCUMENT, which could be a file, a directory, or an executable program (application). If it is an application, that application is launched in the current buffer's default directory. Otherwise, the application associated with DOCUMENT is launched in the buffer's default directory. "opennew" - like "open", but instruct the application to open DOCUMENT in a new window. "openas" - open the "Open With" dialog for DOCUMENT. "print" - print DOCUMENT, which must be a file. "printto" - print DOCUMENT, which must be a file, to a specified printer. The printer should be provided in PARAMETERS, see below. "explore" - start the Windows Explorer on DOCUMENT. "edit" - launch an editor and open DOCUMENT for editing; which editor is launched depends on the association for the specified DOCUMENT. "find" - initiate search starting from DOCUMENT, which must specify a directory. "delete" - move DOCUMENT, a file or a directory, to Recycle Bin. "copy" - copy DOCUMENT, which must be a file or a directory, into the clipboard. "cut" - move DOCUMENT, a file or a directory, into the clipboard. "paste" - paste the file whose name is in the clipboard into DOCUMENT, which must be a directory. "pastelink" - create a shortcut in DOCUMENT (which must be a directory) the file or directory whose name is in the clipboard. "runas" - run DOCUMENT, which must be an excutable file, with elevated privileges (a.k.a. "as Administrator"). "properties" - open the property sheet dialog for DOCUMENT. nil - invoke the default OPERATION, or "open" if default is not defined or unavailable. DOCUMENT is typically the name of a document file or a URL, but can also be an executable program to run, or a directory to open in the Windows Explorer. If it is a file or a directory, it must be a local one; this function does not support remote file names. If DOCUMENT is an executable program, the optional third arg PARAMETERS can be a string containing command line parameters, separated by blanks, that will be passed to the program. Some values of OPERATION also require parameters (e.g., "printto" requires the printer address). Otherwise, PARAMETERS should be nil or unspecified. Note that double quote characters in PARAMETERS must each be enclosed in 2 additional quotes, as in """. Optional fourth argument SHOW-FLAG can be used to control how the application will be displayed when it is invoked. If SHOW-FLAG is nil or unspecified, the application is displayed as if SHOW-FLAG of 10 was specified, otherwise it is an integer between 0 and 11 representing a ShowWindow flag: 0 - start hidden 1 - start as normal-size window 3 - start in a maximized window 6 - start in a minimized window 10 - start as the application itself specifies; this is the default. (fn OPERATION DOCUMENT &optional PARAMETERS SHOW-FLAG)Fw32-register-hot-key Register KEY as a hot-key combination. Certain key combinations like Alt-Tab and Win-R are reserved for system use on Windows, and therefore are normally intercepted by the system. These key combinations can be received by registering them as hot-keys, except for Win-L which always locks the computer. On Windows 98 and ME, KEY must be a one element key definition in vector form that would be acceptable to `define-key' (e.g. [A-tab] for Alt-Tab). The meta modifier is interpreted as Alt if `w32-alt-is-meta' is t, and hyper is always interpreted as the Windows modifier keys. The return value is the hotkey-id if registered, otherwise nil. On Windows versions since NT, KEY can also be specified as [M-], [s-] or [h-] to indicate that all combinations of that key should be processed by Emacs instead of the operating system. The super and hyper modifiers are interpreted according to the current values of `w32-lwindow-modifier' and `w32-rwindow-modifier'. For instance, setting `w32-lwindow-modifier' to `super' and then calling `(register-hot-key [s-])' grabs all combinations of the left Windows key to Emacs, but leaves the right Windows key free for the operating system keyboard shortcuts. The return value is t if the call affected any key combinations, otherwise nil. (fn KEY)Fw32-unregister-hot-key Unregister KEY as a hot-key combination. (fn KEY)Fw32-registered-hot-keys Return list of registered hot-key IDs. (fn)Fw32-reconstruct-hot-key Convert hot-key ID to a lisp key combination. (fn ID)Fw32-toggle-lock-key Toggle the state of the lock key KEY. KEY can be `capslock', `kp-numlock', or `scroll'. If the optional parameter NEW-STATE is a number, then the state of KEY is set to off if the low bit of NEW-STATE is zero, otherwise on. If NEW-STATE is omitted or nil, the function toggles the state, Value is the new state of the key, or nil if the function failed to change the state. (fn KEY &optional NEW-STATE)Fw32-window-exists-p Return non-nil if a window exists with the specified CLASS and NAME. This is a direct interface to the Windows API FindWindow function. (fn CLASS NAME)Fw32-frame-geometry Return geometric attributes of FRAME. FRAME must be a live frame and defaults to the selected one. The return value is an association list of the attributes listed below. All height and width values are in pixels. `outer-position' is a cons of the outer left and top edges of FRAME relative to the origin - the position (0, 0) - of FRAME's display. `outer-size' is a cons of the outer width and height of FRAME. The outer size includes the title bar and the external borders as well as any menu and/or tool bar of frame. `external-border-size' is a cons of the horizontal and vertical width of FRAME's external borders as supplied by the window manager. `title-bar-size' is a cons of the width and height of the title bar of FRAME as supplied by the window manager. If both of them are zero, FRAME has no title bar. If only the width is zero, Emacs was not able to retrieve the width information. `menu-bar-external', if non-nil, means the menu bar is external (never included in the inner edges of FRAME). `menu-bar-size' is a cons of the width and height of the menu bar of FRAME. `tool-bar-external', if non-nil, means the tool bar is external (never included in the inner edges of FRAME). `tool-bar-position' tells on which side the tool bar on FRAME is and can be one of `left', `top', `right' or `bottom'. If this is nil, FRAME has no tool bar. `tool-bar-size' is a cons of the width and height of the tool bar of FRAME. `internal-border-width' is the width of the internal border of FRAME. (fn &optional FRAME)Fw32-frame-edges Return edge coordinates of FRAME. FRAME must be a live frame and defaults to the selected one. The return value is a list of the form (LEFT, TOP, RIGHT, BOTTOM). All values are in pixels relative to the origin - the position (0, 0) - of FRAME's display. If optional argument TYPE is the symbol `outer-edges', return the outer edges of FRAME. The outer edges comprise the decorations of the window manager (like the title bar or external borders) as well as any external menu or tool bar of FRAME. If optional argument TYPE is the symbol `native-edges' or nil, return the native edges of FRAME. The native edges exclude the decorations of the window manager and any external menu or tool bar of FRAME. If TYPE is the symbol `inner-edges', return the inner edges of FRAME. These edges exclude title bar, any borders, menu bar or tool bar of FRAME. (fn &optional FRAME TYPE)Fw32-frame-list-z-order Return list of Emacs' frames, in Z (stacking) order. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. As a special case, if DISPLAY is non-nil and specifies a live frame, return the child frames of that frame in Z (stacking) order. Frames are listed from topmost (first) to bottommost (last). (fn &optional DISPLAY)Fw32-frame-restack Restack FRAME1 below FRAME2. This means that if both frames are visible and the display areas of these frames overlap, FRAME2 (partially) obscures FRAME1. If optional third argument ABOVE is non-nil, restack FRAME1 above FRAME2. This means that if both frames are visible and the display areas of these frames overlap, FRAME1 (partially) obscures FRAME2. This may be thought of as an atomic action performed in two steps: The first step removes FRAME1's window-system window from the display. The second step reinserts FRAME1's window below (above if ABOVE is true) that of FRAME2. Hence the position of FRAME2 in its display's Z (stacking) order relative to all other frames excluding FRAME1 remains unaltered. Some window managers may refuse to restack windows. (fn FRAME1 FRAME2 &optional ABOVE)Fw32-mouse-absolute-pixel-position Return absolute position of mouse cursor in pixels. The position is returned as a cons cell (X . Y) of the coordinates of the mouse cursor position in pixels relative to a position (0, 0) of the selected frame's display. (fn)Fw32-set-mouse-absolute-pixel-position Move mouse pointer to absolute pixel position (X, Y). The coordinates X and Y are interpreted in pixels relative to a position (0, 0) of the selected frame's display. (fn X Y)Fw32-battery-status Get power status information from Windows system. The following %-sequences are provided: %L AC line status (verbose) %B Battery status (verbose) %b Battery status, empty means high, `-' means low, `!' means critical, and `+' means charging %p Battery load percentage %s Remaining time (to charge or discharge) in seconds %m Remaining time (to charge or discharge) in minutes %h Remaining time (to charge or discharge) in hours %t Remaining time (to charge or discharge) in the form `h:min' (fn)Ffile-system-info Return storage information about the file system FILENAME is on. Value is a list of floats (TOTAL FREE AVAIL), where TOTAL is the total storage of the file system, FREE is the free storage, and AVAIL is the storage available to a non-superuser. All 3 numbers are in bytes. If the underlying system call fails, value is nil. (fn FILENAME)Fdefault-printer-name Return the name of Windows default printer device. (fn)Fw32--menu-bar-in-use Return non-nil when a menu-bar menu is being used. Internal use only. (fn)Fw32-notification-notify Display an MS-Windows tray notification as specified by PARAMS. Value is the integer unique ID of the notification that can be used to remove the notification using `w32-notification-close', which see. If the function fails, the return value is nil. Tray notifications, a.k.a. "taskbar messages", are messages that inform the user about events unrelated to the current user activity, such as a significant system event, by briefly displaying informative text in a balloon from an icon in the notification area of the taskbar. Parameters in PARAMS are specified as keyword/value pairs. All the parameters are optional, but if no parameters are specified, the function will do nothing and return nil. The following parameters are supported: :icon ICON -- Display ICON in the system tray. If ICON is a string, it should specify a file name from which to load the icon; the specified file should be a .ico Windows icon file. If ICON is not a string, or if this parameter is not specified, the standard Emacs icon will be used. :tip TIP -- Use TIP as the tooltip for the notification. If TIP is a string, this is the text of a tooltip that will be shown when the mouse pointer hovers over the tray icon added by the notification. If TIP is not a string, or if this parameter is not specified, the default tooltip text is "Emacs notification". The tooltip text can be up to 127 characters long (63 on Windows versions before W2K). Longer strings will be truncated. :level LEVEL -- Notification severity level, one of `info', `warning', or `error'. If given, the value determines the icon displayed to the left of the notification title, but only if the `:title' parameter (see below) is also specified and is a string. :title TITLE -- The title of the notification. If TITLE is a string, it is displayed in a larger font immediately above the body text. The title text can be up to 63 characters long; longer text will be truncated. :body BODY -- The body of the notification. If BODY is a string, it specifies the text of the notification message. Use embedded newlines to control how the text is broken into lines. The body text can be up to 255 characters long, and will be truncated if it's longer. Note that versions of Windows before W2K support only `:icon' and `:tip'. You can pass the other parameters, but they will be ignored on those old systems. There can be at most one active notification at any given time. An active notification must be removed by calling `w32-notification-close' before a new one can be shown. (fn &rest PARAMS)Fw32-notification-close Remove the MS-Windows tray notification specified by its ID. (fn ID)Vw32-color-map An array of color name mappings for Windows.Vw32-pass-alt-to-system Non-nil if Alt key presses are passed on to Windows. When non-nil, for example, Alt pressed and released and then space will open the System menu. When nil, Emacs processes the Alt key events, and then silently swallows them.Vw32-alt-is-meta Non-nil if the Alt key is to be considered the same as the META key. When nil, Emacs will translate the Alt key to the ALT modifier, not to META.Vw32-quit-key If non-zero, the virtual key code for an alternative quit key.Vw32-pass-lwindow-to-system If non-nil, the left "Windows" key is passed on to Windows. When non-nil, the Start menu is opened by tapping the key. If you set this to nil, the left "Windows" key is processed by Emacs according to the value of `w32-lwindow-modifier', which see. Note that some combinations of the left "Windows" key with other keys are caught by Windows at low level. For example, <lwindow>-r pops up the Windows Run dialog, <lwindow>-<Pause> pops up the "System Properties" dialog, etc. On Windows 10, no "Windows" key combinations are normally handed to applications. To enable Emacs to process "Windows" key combinations, use the function `w32-register-hot-key`. For Windows 98/ME, see the doc string of `w32-phantom-key-code'.Vw32-pass-rwindow-to-system If non-nil, the right "Windows" key is passed on to Windows. When non-nil, the Start menu is opened by tapping the key. If you set this to nil, the right "Windows" key is processed by Emacs according to the value of `w32-rwindow-modifier', which see. Note that some combinations of the right "Windows" key with other keys are caught by Windows at low level. For example, <rwindow>-r pops up the Windows Run dialog, <rwindow>-<Pause> pops up the "System Properties" dialog, etc. On Windows 10, no "Windows" key combinations are normally handed to applications. To enable Emacs to process "Windows" key combinations, use the function `w32-register-hot-key`. For Windows 98/ME, see the doc string of `w32-phantom-key-code'.Vw32-phantom-key-code Virtual key code used to generate "phantom" key presses. Value is a number between 0 and 255. Phantom key presses are generated in order to stop the system from acting on "Windows" key events when `w32-pass-lwindow-to-system' or `w32-pass-rwindow-to-system' is nil. This variable is only used on Windows 98 and ME. For other Windows versions, see the documentation of the `w32-register-hot-key` function.Vw32-enable-num-lock If non-nil, the Num Lock key acts normally. Set to nil to handle Num Lock as the `kp-numlock' key.Vw32-enable-caps-lock If non-nil, the Caps Lock key acts normally. Set to nil to handle Caps Lock as the `capslock' key.Vw32-scroll-lock-modifier Modifier to use for the Scroll Lock ON state. The value can be hyper, super, meta, alt, control or shift for the respective modifier, or nil to handle Scroll Lock as the `scroll' key. Any other value will cause the Scroll Lock key to be ignored by Emacs, and it will have the same effect as in other applications.Vw32-lwindow-modifier Modifier to use for the left "Windows" key. The value can be hyper, super, meta, alt, control or shift for the respective modifier, or nil to appear as the `lwindow' key. Any other value will cause the key to be ignored. Also see the documentation of the `w32-register-hot-key` function.Vw32-rwindow-modifier Modifier to use for the right "Windows" key. The value can be hyper, super, meta, alt, control or shift for the respective modifier, or nil to appear as the `rwindow' key. Any other value will cause the key to be ignored. Also see the documentation of the `w32-register-hot-key` function.Vw32-apps-modifier Modifier to use for the "Apps" key. The value can be hyper, super, meta, alt, control or shift for the respective modifier, or nil to appear as the `apps' key. Any other value will cause the key to be ignored.Vw32-enable-synthesized-fonts Non-nil enables selection of artificially italicized and bold fonts.Vw32-enable-palette Non-nil enables Windows palette management to map colors exactly.Vw32-mouse-button-tolerance Analogue of double click interval for faking middle mouse events. The value is the minimum time in milliseconds that must elapse between left and right button down events before they are considered distinct events. If both mouse buttons are depressed within this interval, a middle mouse button down event is generated instead.Vw32-mouse-move-interval Minimum interval between mouse move events. The value is the minimum time in milliseconds that must elapse between successive mouse move (or scroll bar drag) events before they are reported as lisp events.Vw32-pass-extra-mouse-buttons-to-system If non-nil, the fourth and fifth mouse buttons are passed to Windows. Recent versions of Windows support mice with up to five buttons. Since most applications don't support these extra buttons, most mouse drivers will allow you to map them to functions at the system level. If this variable is non-nil, Emacs will pass them on, allowing the system to handle them.Vw32-pass-multimedia-buttons-to-system If non-nil, media buttons are passed to Windows. Some modern keyboards contain buttons for controlling media players, web browsers and other applications. Generally these buttons are handled on a system wide basis, but by setting this to nil they are made available to Emacs for binding. Depending on your keyboard, additional keys that may be available are: browser-back, browser-forward, browser-refresh, browser-stop, browser-search, browser-favorites, browser-home, mail, mail-reply, mail-forward, mail-send, app-1, app-2, help, find, new, open, close, save, print, undo, redo, copy, cut, paste, spell-check, correction-list, toggle-dictate-command, media-next, media-previous, media-stop, media-play-pause, media-select, media-play, media-pause, media-record, media-fast-forward, media-rewind, media-channel-up, media-channel-down, volume-mute, volume-up, volume-down, mic-volume-mute, mic-volume-down, mic-volume-up, mic-toggle, bass-down, bass-boost, bass-up, treble-down, treble-upVx-pointer-shape The shape of the pointer when over text. Changing the value does not affect existing frames unless you set the mouse color.Vx-hourglass-pointer-shape The shape of the pointer when Emacs is busy. This variable takes effect when you create a new frame or when you set the mouse color.Vx-sensitive-text-pointer-shape The shape of the pointer when over mouse-sensitive text. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-horizontal-drag-cursor Pointer shape to use for indicating a window can be dragged horizontally. This variable takes effect when you create a new frame or when you set the mouse color.Vx-window-vertical-drag-cursor Pointer shape to use for indicating a window can be dragged vertically. This variable takes effect when you create a new frame or when you set the mouse color.Vx-cursor-fore-pixel A string indicating the foreground color of the cursor box.Vx-max-tooltip-size Maximum size for tooltips. Value is a pair (COLUMNS . ROWS). Text larger than this is clipped.Vx-no-window-manager Non-nil if no window manager is in use. Emacs doesn't try to figure this out; this is always nil unless you set it to something else.Vx-pixel-size-width-font-regexp Regexp matching a font name whose width is the same as `PIXEL_SIZE'. Since Emacs gets width of a font matching with this regexp from PIXEL_SIZE field of the name, font finding mechanism gets faster for such a font. This is especially effective for such large fonts as Chinese, Japanese, and Korean.Vw32-bdf-filename-alist List of bdf fonts and their corresponding filenames.Vw32-strict-fontnames Non-nil means only use fonts that are exact matches for those requested. Default is nil, which allows old fontnames that are not XLFD compliant, and allows third-party CJK display to work by specifying false charset fields to trick Emacs into translating to Big5, SJIS etc. Setting this to t will prevent wrong fonts being selected when fontsets are automatically created.Vw32-strict-painting Non-nil means use strict rules for repainting frames. Set this to nil to get the old behavior for repainting; this should only be necessary if the default setting causes problems.Vw32-use-fallback-wm-chars-method Non-nil means use old method of processing character keys. This is intended only for debugging of the new processing method. Default is nil. This variable has effect only on NT family of systems, not on Windows 9X.Vw32-disable-new-uniscribe-apis Non-nil means don't use new Uniscribe APIs. The new APIs are used to access OTF features supported by fonts. This is intended only for debugging of the new Uniscribe-related code. Default is nil. This variable has effect only on Windows Vista and later.Vw32-tooltip-extra-pixels Number of pixels added after tooltip text. On Windows some fonts may cause the last character of a tooltip be truncated or wrapped around to the next line. Adding some extra space at the end of the toooltip works around this problem. This variable specifies the number of pixels that shall be added. The default value t means to add the width of one canonical character of the tip frame.Vw32-disable-abort-dialog Non-nil means don't display the abort dialog when aborting.Vw32-ansi-code-page The ANSI code page used by the system.Sw32heap.o Sw32inevt.o Sw32notify.o Fw32notify-add-watch Add a watch for filesystem events pertaining to FILE. This arranges for filesystem events pertaining to FILE to be reported to Emacs. Use `w32notify-rm-watch' to cancel the watch. Value is a descriptor for the added watch. If the file cannot be watched for some reason, this function signals a `file-error' error. FILTER is a list of conditions for reporting an event. It can include the following symbols: 'file-name' -- report file creation, deletion, or renaming 'directory-name' -- report directory creation, deletion, or renaming 'attributes' -- report changes in attributes 'size' -- report changes in file-size 'last-write-time' -- report changes in last-write time 'last-access-time' -- report changes in last-access time 'creation-time' -- report changes in creation time 'security-desc' -- report changes in security descriptor If FILE is a directory, and FILTER includes 'subtree', then all the subdirectories will also be watched and changes in them reported. When any event happens that satisfies the conditions specified by FILTER, Emacs will call the CALLBACK function passing it a single argument EVENT, which is of the form (DESCRIPTOR ACTION FILE) DESCRIPTOR is the same object as the one returned by this function. ACTION is the description of the event. It could be any one of the following: 'added' -- FILE was added 'removed' -- FILE was deleted 'modified' -- FILE's contents or its attributes were modified 'renamed-from' -- a file was renamed whose old name was FILE 'renamed-to' -- a file was renamed and its new name is FILE FILE is the name of the file whose event is being reported. Note that some networked filesystems, such as Samba-mounted Unix volumes, might not send notifications about file changes. In these cases, this function will return a valid descriptor, but notifications will never come in. Volumes shared from remote Windows machines do generate notifications correctly, though. (fn FILE FILTER CALLBACK)Fw32notify-rm-watch Remove an existing watch specified by its WATCH-DESCRIPTOR. WATCH-DESCRIPTOR should be an object returned by `w32notify-add-watch'. (fn WATCH-DESCRIPTOR)Fw32notify-valid-p Check a watch specified by its WATCH-DESCRIPTOR for validity. WATCH-DESCRIPTOR should be an object returned by `w32notify-add-watch'. A watch can become invalid if the directory it watches is deleted, or if the watcher thread exits abnormally for any other reason. Removing the watch by calling `w32notify-rm-watch' also makes it invalid. (fn WATCH-DESCRIPTOR)Sw32menu.o Fmenu-or-popup-active-p Return t if a menu or popup dialog is active on selected frame. (fn)Sw32proc.o Fw32-has-winsock Test for presence of the Windows socket library `winsock'. Returns non-nil if winsock support is present, nil otherwise. If the optional argument LOAD-NOW is non-nil, the winsock library is also loaded immediately if not already loaded. If winsock is loaded, the winsock local hostname is returned (since this may be different from the value of `system-name' and should supplant it), otherwise t is returned to indicate winsock support is present. (fn &optional LOAD-NOW)Fw32-unload-winsock Unload the Windows socket library `winsock' if loaded. This is provided to allow dial-up socket connections to be disconnected when no longer needed. Returns nil without unloading winsock if any socket connections still exist. (fn)Fw32-short-file-name Return the short file name version (8.3) of the full path of FILENAME. If FILENAME does not exist, return nil. All path elements in FILENAME are converted to their short names. (fn FILENAME)Fw32-long-file-name Return the long file name version of the full path of FILENAME. If FILENAME does not exist, return nil. All path elements in FILENAME are converted to their long names. (fn FILENAME)Fw32-set-process-priority Set the priority of PROCESS to PRIORITY. If PROCESS is nil, the priority of Emacs is changed, otherwise the priority of the process whose pid is PROCESS is changed. PRIORITY should be one of the symbols high, normal, or low; any other symbol will be interpreted as normal. If successful, the return value is t, otherwise nil. (fn PROCESS PRIORITY)Fw32-application-type Return the type of an MS-Windows PROGRAM. Knowing the type of an executable could be useful for formatting file names passed to it or for quoting its command-line arguments. PROGRAM should specify an executable file, including the extension. The value is one of the following: `dos' -- a DOS .com program or some other non-PE executable `cygwin' -- a Cygwin program that depends on Cygwin DLL `msys' -- an MSYS 1.x or MSYS2 program `w32-native' -- a native Windows application `unknown' -- a file that doesn't exist, or cannot be open, or whose name is not encodable in the current ANSI codepage. Note that for .bat and .cmd batch files the function returns the type of their command interpreter, as specified by the "COMSPEC" environment variable. This function returns `unknown' for programs whose file names include characters not supported by the current ANSI codepage, as such programs cannot be invoked by Emacs anyway. (fn PROGRAM)Fw32-get-locale-info Return information about the Windows locale LCID. By default, return a three letter locale code which encodes the default language as the first two characters, and the country or regional variant as the third letter. For example, ENU refers to `English (United States)', while ENC means `English (Canadian)'. If the optional argument LONGFORM is t, the long form of the locale name is returned, e.g. `English (United States)' instead; if LONGFORM is a number, it is interpreted as an LCTYPE constant and the corresponding locale information is returned. If LCID (a 16-bit number) is not a valid locale, the result is nil. (fn LCID &optional LONGFORM)Fw32-get-current-locale-id Return Windows locale id for current locale setting. This is a numerical value; use `w32-get-locale-info' to convert to a human-readable form. (fn)Fw32-get-valid-locale-ids Return list of all valid Windows locale ids. Each id is a numerical value; use `w32-get-locale-info' to convert to a human-readable form. (fn)Fw32-get-default-locale-id Return Windows locale id for default locale setting. By default, the system default locale setting is returned; if the optional parameter USERP is non-nil, the user default locale setting is returned. This is a numerical value; use `w32-get-locale-info' to convert to a human-readable form. (fn &optional USERP)Fw32-set-current-locale Make Windows locale LCID be the current locale setting for Emacs. If successful, the new locale id is returned, otherwise nil. (fn LCID)Fw32-get-valid-codepages Return list of all valid Windows codepages. (fn)Fw32-get-console-codepage Return current Windows codepage for console input. (fn)Fw32-set-console-codepage Make Windows codepage CP be the codepage for Emacs tty keyboard input. This codepage setting affects keyboard input in tty mode. If successful, the new CP is returned, otherwise nil. (fn CP)Fw32-get-console-output-codepage Return current Windows codepage for console output. (fn)Fw32-set-console-output-codepage Make Windows codepage CP be the codepage for Emacs console output. This codepage setting affects display in tty mode. If successful, the new CP is returned, otherwise nil. (fn CP)Fw32-get-codepage-charset Return charset ID corresponding to codepage CP. Returns nil if the codepage is not valid or its charset ID could not be determined. Note that this function is only guaranteed to work with ANSI codepages; most console codepages are not supported and will yield nil. (fn CP)Fw32-get-valid-keyboard-layouts Return list of Windows keyboard languages and layouts. The return value is a list of pairs of language id and layout id. (fn)Fw32-get-keyboard-layout Return current Windows keyboard language and layout. The return value is the cons of the language id and the layout id. (fn)Fw32-set-keyboard-layout Make LAYOUT be the current keyboard layout for Emacs. The keyboard layout setting affects interpretation of keyboard input. If successful, the new layout id is returned, otherwise nil. (fn LAYOUT)Vw32-quote-process-args Non-nil enables quoting of process arguments to ensure correct parsing. Because Windows does not directly pass argv arrays to child processes, programs have to reconstruct the argv array by parsing the command line string. For an argument to contain a space, it must be enclosed in double quotes or it will be parsed as multiple arguments. If the value is a character, that character will be used to escape any quote characters that appear, otherwise a suitable escape character will be chosen based on the type of the program.Vw32-start-process-show-window When nil, new child processes hide their windows. When non-nil, they show their window in the method of their choice. This variable doesn't affect GUI applications, which will never be hidden.Vw32-start-process-share-console When nil, new child processes are given a new console. When non-nil, they share the Emacs console; this has the limitation of allowing only one DOS subprocess to run at a time (whether started directly or indirectly by Emacs), and preventing Emacs from cleanly terminating the subprocess group, but may allow Emacs to interrupt a subprocess that doesn't otherwise respond to interrupts from Emacs.Vw32-start-process-inherit-error-mode When nil, new child processes revert to the default error mode. When non-nil, they inherit their error mode setting from Emacs, which stops them blocking when trying to access unmounted drives etc.Vw32-pipe-read-delay Forced delay before reading subprocess output. This is done to improve the buffering of subprocess output, by avoiding the inefficiency of frequently reading small amounts of data. If positive, the value is the number of milliseconds to sleep before reading the subprocess output. If negative, the magnitude is the number of time slices to wait (effectively boosting the priority of the child process temporarily). A value of zero disables waiting entirely.Vw32-pipe-buffer-size Size of buffer for pipes created to communicate with subprocesses. The size is in bytes, and must be non-negative. The default is zero, which lets the OS use its default size, usually 4KB (4096 bytes). Any negative value means to use the default value of zero.Vw32-downcase-file-names Non-nil means convert all-upper case file names to lower case. This applies when performing completions and file name expansion. Note that the value of this setting also affects remote file names, so you probably don't want to set to non-nil if you use case-sensitive filesystems via ange-ftp.Vw32-generate-fake-inodes Non-nil means attempt to fake realistic inode values. This works by hashing the truename of files, and should detect aliasing between long and short (8.3 DOS) names, but can have false positives because of hash collisions. Note that determining the truename of a file can be slow.Vw32-get-true-file-attributes Non-nil means determine accurate file attributes in `file-attributes'. This option controls whether to issue additional system calls to determine accurate link counts, file type, and ownership information. It is more useful for files on NTFS volumes, where hard links and file security are supported, than on volumes of the FAT family. Without these system calls, link count will always be reported as 1 and file ownership will be attributed to the current user. The default value `local' means only issue these system calls for files on local fixed drives. A value of nil means never issue them. Any other non-nil value means do this even on remote and removable drives where the performance impact may be noticeable even on modern hardware.Vw32-collate-ignore-punctuation Non-nil causes string collation functions ignore punctuation on MS-Windows. On Posix platforms, `string-collate-lessp' and `string-collate-equalp' ignore punctuation characters when they compare strings, if the locale's codeset is UTF-8, as in "en_US.UTF-8". Binding this option to a non-nil value will achieve a similar effect on MS-Windows, where locales with UTF-8 codeset are not supported. Note that setting this to non-nil will also ignore blanks and symbols in the strings. So do NOT use this option when comparing file names for equality, only when you need to sort them.Sw32reg.o Sw32select.o Fw32-set-clipboard-data This sets the clipboard data to the given text. (fn STRING &optional IGNORED)Fw32-get-clipboard-data This gets the clipboard data in text format. (fn &optional IGNORED)Fw32-selection-exists-p Whether there is an owner for the given X selection. SELECTION should be the name of the selection in question, typically one of the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'. (X expects these literal upper-case names.) The symbol nil is the same as `PRIMARY', and t is the same as `SECONDARY'. TERMINAL should be a terminal object or a frame specifying the X server to query. If omitted or nil, that stands for the selected frame's display, or the first available X display. (fn &optional SELECTION TERMINAL)Fw32-selection-targets Return a vector of data formats available in the specified SELECTION. SELECTION should be the name of the selection in question, typically one of the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'. The symbol nil is the same as `PRIMARY', and t is the same as `SECONDARY'. TERMINAL should be a terminal object or a frame specifying the X server to query. If omitted or nil, that stands for the selected frame's display, or the first available X display. This function currently ignores TERMINAL, and only returns non-nil for `CLIPBOARD'. The return value is a vector of symbols, each symbol representing a data format that is currently available in the clipboard. (fn &optional SELECTION TERMINAL)Vselection-coding-system Coding system for communicating with other programs. For MS-Windows and MS-DOS: When sending or receiving text via selection and clipboard, the text is encoded or decoded by this coding system. The default value is the current system default encoding on 9x/Me, `utf-16le-dos' (Unicode) on NT/W2K/XP, and `iso-latin-1-dos' on MS-DOS. For X Windows: When sending text via selection and clipboard, if the target data-type matches with the type of this coding system, it is used for encoding the text. Otherwise (including the case that this variable is nil), a proper coding system is used as below: data-type coding system --------- ------------- UTF8_STRING utf-8 COMPOUND_TEXT compound-text-with-extensions STRING iso-latin-1 C_STRING no-conversion When receiving text, if this coding system is non-nil, it is used for decoding regardless of the data-type. If this is nil, a proper coding system is used according to the data-type as above. See also the documentation of the variable `x-select-request-type' how to control which data-type to request for receiving text. The default value is nil.Vnext-selection-coding-system Coding system for the next communication with other programs. Usually, `selection-coding-system' is used for communicating with other programs (X Windows clients or MS Windows programs). But, if this variable is set, it is used for the next communication only. After the communication, this variable is set to nil.Sw32term.o Vx-wait-for-event-timeout How long to wait for X events. Emacs will wait up to this many seconds to receive X events after making changes which affect the state of the graphical interface. Under some window managers this can take an indefinite amount of time, so it is important to limit the wait. If set to a non-float value, there will be no wait at all.Vw32-num-mouse-buttons Number of physical mouse buttons.Vw32-swap-mouse-buttons Swap the mapping of middle and right mouse buttons. When nil, middle button is mouse-2 and right button is mouse-3.Vw32-grab-focus-on-raise Raised frame grabs input focus. When t, `raise-frame' grabs input focus as well. This fits well with the normal Windows click-to-focus policy, but might not be desirable when using a point-to-focus policy.Vw32-capslock-is-shiftlock Apply CapsLock state to non character input keys. When nil, CapsLock only affects normal character input keys.Vw32-recognize-altgr Recognize right-alt and left-ctrl as AltGr. When nil, the right-alt and left-ctrl key combination is interpreted normally.Vw32-use-visible-system-caret Flag to make the system caret visible. When this is non-nil, Emacs will indicate the position of point by using the system caret instead of drawing its own cursor. Some screen reader software does not track the system cursor properly when it is invisible, and gets confused by Emacs drawing its own cursor, so this variable is initialized to t when Emacs detects that screen reader software is running as it starts up. When this variable is set, other variables affecting the appearance of the cursor have no effect.Vx-use-underline-position-properties Non-nil means make use of UNDERLINE_POSITION font properties. A value of nil means ignore them. If you encounter fonts with bogus UNDERLINE_POSITION font properties, for example 7x13 on XFree prior to 4.1, set this to nil. You can also use `underline-minimum-offset' to override the font's UNDERLINE_POSITION for small font display sizes.Vx-underline-at-descent-line Non-nil means to draw the underline at the same place as the descent line. (If `line-spacing' is in effect, that moves the underline lower by that many pixels.) A value of nil means to draw the underline according to the value of the variable `x-use-underline-position-properties', which is usually at the baseline level. The default value is nil.Vx-toolkit-scroll-bars Which toolkit scroll bars Emacs uses, if any. A value of nil means Emacs doesn't use toolkit scroll bars. With the X Window system, the value is a symbol describing the X toolkit. Possible values are: gtk, motif, xaw, or xaw3d. With MS Windows or Nextstep, the value is t.Vw32-unicode-filenames Non-nil means use Unicode APIs when passing file names to the OS. A value of nil means file names passed to the OS APIs and returned from those APIs are encoded/decoded using the ANSI codepage specified by `file-name-coding-system'. This variable is set to non-nil by default when Emacs runs on Windows systems of the NT family, including W2K, XP, Vista, Windows 7 and Windows 8. It is set to nil on Windows 9X.Vw32-add-wrapped-menu-bar-lines Non-nil means frame resizing accounts for wrapped menu bar lines. A value of nil means frame resizing does not add the height of wrapped menu bar lines when sending a frame resize request to the Windows API. This usually means that the resulting frame height is off by the number of wrapped menu bar lines. If this is non-nil, Emacs adds the height of wrapped menu bar lines when sending frame resize requests to the Windows API.Sw32xfns.o Sw16select.o Fw16-set-clipboard-data This sets the clipboard data to the given text. (fn STRING &optional FRAME)Fw16-get-clipboard-data This gets the clipboard data in text format. (fn &optional FRAME)Fw16-selection-exists-p Whether there is an owner for the given X selection. SELECTION should be the name of the selection in question, typically one of the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'. (X expects these literal upper-case names.) The symbol nil is the same as `PRIMARY', and t is the same as `SECONDARY'. TERMINAL should be a terminal object or a frame specifying the X server to query. If omitted or nil, that stands for the selected frame's display, or the first available X display. (fn &optional SELECTION TERMINAL)Vselection-coding-system Coding system for communicating with other programs. For MS-Windows and MS-DOS: When sending or receiving text via selection and clipboard, the text is encoded or decoded by this coding system. The default value is the current system default encoding on 9x/Me, `utf-16le-dos' (Unicode) on NT/W2K/XP, and `iso-latin-1-dos' on MS-DOS. For X Windows: When sending text via selection and clipboard, if the target data-type matches with the type of this coding system, it is used for encoding the text. Otherwise (including the case that this variable is nil), a proper coding system is used as below: data-type coding system --------- ------------- UTF8_STRING utf-8 COMPOUND_TEXT compound-text-with-extensions STRING iso-latin-1 C_STRING no-conversion When receiving text, if this coding system is non-nil, it is used for decoding regardless of the data-type. If this is nil, a proper coding system is used according to the data-type as above. See also the documentation of the variable `x-select-request-type' how to control which data-type to request for receiving text. The default value is nil.Vnext-selection-coding-system Coding system for the next communication with other programs. Usually, `selection-coding-system' is used for communicating with other programs (X Windows clients or MS Windows programs). But, if this variable is set, it is used for the next communication only. After the communication, this variable is set to nil.Swidget.o Sxfont.o Sftfont.o Sxftfont.o Vxft-font-ascent-descent-override Non-nil means override the ascent and descent values for Xft font driver. This is needed with some fonts to correct vertical overlap of glyphs.Sftxfont.o Sgtkutil.o Sxsettings.o Ffont-get-system-normal-font Get the system default application font. (fn)Ffont-get-system-font Get the system default fixed width font. (fn)Ftool-bar-get-system-style Get the system tool bar style. If no system tool bar style is known, return `tool-bar-style' if set to a known style. Otherwise return image. (fn)Vfont-use-system-font Non-nil means to apply the system defined font dynamically. When this is non-nil and the system defined fixed width font changes, we update frames dynamically. If this variable is nil, Emacs ignores system font changes.Vxft-settings Font settings applied to Xft.Sxgselect.o Stermcap.o Sdispnew.o Fdump-redisplay-history Dump redisplay history to stderr. (fn)Fredraw-frame Clear frame FRAME and output again what is supposed to appear on it. If FRAME is omitted or nil, the selected frame is used. (fn &optional FRAME)Fredraw-display Clear and redisplay all visible frames. (fn)Fopen-termscript Start writing all terminal output to FILE as well as the terminal. FILE = nil means just close any termscript file currently open. (fn FILE)Fsend-string-to-terminal Send STRING to the terminal without alteration. Control characters in STRING will have terminal-dependent effects. Optional parameter TERMINAL specifies the tty terminal device to use. It may be a terminal object, a frame, or nil for the terminal used by the currently selected frame. In batch mode, STRING is sent to stdout when TERMINAL is nil. (fn STRING &optional TERMINAL)Fding Beep, or flash the screen. Also, unless an argument is given, terminate any keyboard macro currently executing. (fn &optional ARG)Fsleep-for Pause, without updating display, for SECONDS seconds. SECONDS may be a floating-point value, meaning that you can wait for a fraction of a second. Optional second arg MILLISECONDS specifies an additional wait period, in milliseconds; this is for backwards compatibility. (Not all operating systems support waiting for a fraction of a second.) (fn SECONDS &optional MILLISECONDS)Fredisplay Perform redisplay. Optional arg FORCE, if non-nil, prevents redisplay from being preempted by arriving input, even if `redisplay-dont-pause' is nil. If `redisplay-dont-pause' is non-nil (the default), redisplay is never preempted by arriving input, so FORCE does nothing. Return t if redisplay was performed, nil if redisplay was preempted immediately by pending input. (fn &optional FORCE)Fframe-or-buffer-changed-p Return non-nil if the frame and buffer state appears to have changed. VARIABLE is a variable name whose value is either nil or a state vector that will be updated to contain all frames and buffers, aside from buffers whose names start with space, along with the buffers' read-only and modified flags. This allows a fast check to see whether buffer menus might need to be recomputed. If this function returns non-nil, it updates the internal vector to reflect the current state. If VARIABLE is nil, an internal variable is used. Users should not pass nil for VARIABLE. (fn &optional VARIABLE)Finternal-show-cursor Set the cursor-visibility flag of WINDOW to SHOW. WINDOW nil means use the selected window. SHOW non-nil means show a cursor in WINDOW in the next redisplay. SHOW nil means don't show a cursor. (fn WINDOW SHOW)Finternal-show-cursor-p Value is non-nil if next redisplay will display a cursor in WINDOW. WINDOW nil or omitted means report on the selected window. (fn &optional WINDOW)Vbaud-rate The output baud rate of the terminal. On most systems, changing this value will affect the amount of padding and the other strategic decisions made during redisplay.Vinverse-video Non-nil means invert the entire frame display. This means everything is in inverse video which otherwise would not be.Vvisible-bell Non-nil means try to flash the frame to represent a bell. See also `ring-bell-function'.Vno-redraw-on-reenter Non-nil means no need to redraw entire frame after suspending. A non-nil value is useful if the terminal can automatically preserve Emacs's frame display when you reenter Emacs. It is up to you to set this variable if your terminal can do that.Vinitial-window-system Name of the window system that Emacs uses for the first frame. The value is a symbol: nil for a termcap frame (a character-only terminal), `x' for an Emacs frame that is really an X window, `w32' for an Emacs frame that is a window on MS-Windows display, `ns' for an Emacs frame on a GNUstep or Macintosh Cocoa display, `pc' for a direct-write MS-DOS frame. Use of this variable as a boolean is deprecated. Instead, use `display-graphic-p' or any of the other `display-*-p' predicates which report frame's specific UI-related capabilities.Vwindow-system Name of window system through which the selected frame is displayed. The value is a symbol: nil for a termcap frame (a character-only terminal), `x' for an Emacs frame that is really an X window, `w32' for an Emacs frame that is a window on MS-Windows display, `ns' for an Emacs frame on a GNUstep or Macintosh Cocoa display, `pc' for a direct-write MS-DOS frame. Use of this variable as a boolean is deprecated. Instead, use `display-graphic-p' or any of the other `display-*-p' predicates which report frame's specific UI-related capabilities.Vwindow-system-version The version number of the window system in use. For X windows, this is 11.Vcursor-in-echo-area Non-nil means put cursor in minibuffer, at end of any message there.Vglyph-table Table defining how to output a glyph code to the frame. If not nil, this is a vector indexed by glyph code to define the glyph. Each element can be: integer: a glyph code which this glyph is an alias for. string: output this glyph using that string (not impl. in X windows). nil: this glyph mod 524288 is the code of a character to output, and this glyph / 524288 is the face number (see `face-id') to use while outputting it.Vstandard-display-table Display table to use for buffers that specify none. It is also used for standard output and error streams. See `buffer-display-table' for more information.Vredisplay-dont-pause Nil means display update is paused when input is detected.Sframe.o Fframep Return non-nil if OBJECT is a frame. Value is: t for a termcap frame (a character-only terminal), `x' for an Emacs frame that is really an X window, `w32' for an Emacs frame that is a window on MS-Windows display, `ns' for an Emacs frame on a GNUstep or Macintosh Cocoa display, `pc' for a direct-write MS-DOS frame. See also `frame-live-p'. (fn OBJECT)Fframe-live-p Return non-nil if OBJECT is a frame which has not been deleted. Value is nil if OBJECT is not a live frame. If object is a live frame, the return value indicates what sort of terminal device it is displayed on. See the documentation of `framep' for possible return values. (fn OBJECT)Fwindow-system The name of the window system that FRAME is displaying through. The value is a symbol: nil for a termcap frame (a character-only terminal), `x' for an Emacs frame that is really an X window, `w32' for an Emacs frame that is a window on MS-Windows display, `ns' for an Emacs frame on a GNUstep or Macintosh Cocoa display, `pc' for a direct-write MS-DOS frame. FRAME defaults to the currently selected frame. Use of this function as a predicate is deprecated. Instead, use `display-graphic-p' or any of the other `display-*-p' predicates which report frame's specific UI-related capabilities. (fn &optional FRAME)Fframe-windows-min-size (fn FRAME HORIZONTAL IGNORE PIXELWISE)Fmake-terminal-frame Create an additional terminal frame, possibly on another terminal. This function takes one argument, an alist specifying frame parameters. You can create multiple frames on a single text terminal, but only one of them (the selected terminal frame) is actually displayed. In practice, generally you don't need to specify any parameters, except when you want to create a new frame on another terminal. In that case, the `tty' parameter specifies the device file to open, and the `tty-type' parameter specifies the terminal type. Example: (make-terminal-frame \='((tty . "/dev/pts/5") (tty-type . "xterm"))) Note that changing the size of one terminal frame automatically affects all frames on the same terminal device. (fn PARMS)Fselect-frame Select FRAME. Subsequent editing commands apply to its selected window. Optional argument NORECORD means to neither change the order of recently selected windows nor the buffer list. The selection of FRAME lasts until the next time the user does something to select a different frame, or until the next time this function is called. If you are using a window system, the previously selected frame may be restored as the selected frame when returning to the command loop, because it still may have the window system's input focus. On a text terminal, the next redisplay will display FRAME. This function returns FRAME, or nil if FRAME has been deleted. (fn FRAME &optional NORECORD)Fhandle-switch-frame Handle a switch-frame event EVENT. Switch-frame events are usually bound to this function. A switch-frame event tells Emacs that the window manager has requested that the user's events be directed to the frame mentioned in the event. This function selects the selected window of the frame of EVENT. If EVENT is frame object, handle it as if it were a switch-frame event to that frame. (fn EVENT)Fselected-frame Return the frame that is now selected. (fn)Fframe-list Return a list of all live frames. (fn)Fframe-parent Return the parent frame of FRAME. The parent frame of FRAME is the Emacs frame whose window-system window is the parent window of FRAME's window-system window. When such a frame exists, FRAME is considered a child frame of that frame. Return nil if FRAME has no parent frame. This means that FRAME's window-system window is either a "top-level" window (a window whose parent window is the window-system's root window) or an embedded window (a window whose parent window is owned by some other application). (fn &optional FRAME)Fframe-ancestor-p Return non-nil if ANCESTOR is an ancestor of DESCENDANT. ANCESTOR is an ancestor of DESCENDANT when it is either DESCENDANT's parent frame or it is an ancestor of DESCENDANT's parent frame. Both, ANCESTOR and DESCENDANT must be live frames and default to the selected frame. (fn ANCESTOR DESCENDANT)Fnext-frame Return the next frame in the frame list after FRAME. It considers only frames on the same terminal as FRAME. By default, skip minibuffer-only frames. If omitted, FRAME defaults to the selected frame. If optional argument MINIFRAME is nil, exclude minibuffer-only frames. If MINIFRAME is a window, include only its own frame and any frame now using that window as the minibuffer. If MINIFRAME is `visible', include all visible frames. If MINIFRAME is 0, include all visible and iconified frames. Otherwise, include all frames. (fn &optional FRAME MINIFRAME)Fprevious-frame Return the previous frame in the frame list before FRAME. It considers only frames on the same terminal as FRAME. By default, skip minibuffer-only frames. If omitted, FRAME defaults to the selected frame. If optional argument MINIFRAME is nil, exclude minibuffer-only frames. If MINIFRAME is a window, include only its own frame and any frame now using that window as the minibuffer. If MINIFRAME is `visible', include all visible frames. If MINIFRAME is 0, include all visible and iconified frames. Otherwise, include all frames. (fn &optional FRAME MINIFRAME)Flast-nonminibuffer-frame Return last non-minibuffer frame selected. (fn)Fdelete-frame Delete FRAME, permanently eliminating it from use. FRAME must be a live frame and defaults to the selected one. A frame may not be deleted if its minibuffer serves as surrogate minibuffer for another frame. Normally, you may not delete a frame if all other frames are invisible, but if the second optional argument FORCE is non-nil, you may do so. This function runs `delete-frame-functions' before actually deleting the frame, unless the frame is a tooltip. The functions are run with one argument, the frame to be deleted. (fn &optional FRAME FORCE)Fmouse-position Return a list (FRAME X . Y) giving the current mouse frame and position. The position is given in canonical character cells, where (0, 0) is the upper-left corner of the frame, X is the horizontal offset, and Y is the vertical offset, measured in units of the frame's default character size. If Emacs is running on a mouseless terminal or hasn't been programmed to read the mouse position, it returns the selected frame for FRAME and nil for X and Y. If `mouse-position-function' is non-nil, `mouse-position' calls it, passing the normal return value to that function as an argument, and returns whatever that function returns. (fn)Fmouse-pixel-position Return a list (FRAME X . Y) giving the current mouse frame and position. The position is given in pixel units, where (0, 0) is the upper-left corner of the frame, X is the horizontal offset, and Y is the vertical offset. If Emacs is running on a mouseless terminal or hasn't been programmed to read the mouse position, it returns the selected frame for FRAME and nil for X and Y. (fn)Fset-mouse-position Move the mouse pointer to the center of character cell (X,Y) in FRAME. Coordinates are relative to the frame, not a window, so the coordinates of the top left character in the frame may be nonzero due to left-hand scroll bars or the menu bar. The position is given in canonical character cells, where (0, 0) is the upper-left corner of the frame, X is the horizontal offset, and Y is the vertical offset, measured in units of the frame's default character size. This function is a no-op for an X frame that is not visible. If you have just created a frame, you must wait for it to become visible before calling this function on it, like this. (while (not (frame-visible-p frame)) (sleep-for .5)) (fn FRAME X Y)Fset-mouse-pixel-position Move the mouse pointer to pixel position (X,Y) in FRAME. The position is given in pixels, where (0, 0) is the upper-left corner of the frame, X is the horizontal offset, and Y is the vertical offset. Note, this is a no-op for an X frame that is not visible. If you have just created a frame, you must wait for it to become visible before calling this function on it, like this. (while (not (frame-visible-p frame)) (sleep-for .5)) (fn FRAME X Y)Fmake-frame-visible Make the frame FRAME visible (assuming it is an X window). If omitted, FRAME defaults to the currently selected frame. (fn &optional FRAME)Fmake-frame-invisible Make the frame FRAME invisible. If omitted, FRAME defaults to the currently selected frame. On graphical displays, invisible frames are not updated and are usually not displayed at all, even in a window system's "taskbar". Normally you may not make FRAME invisible if all other frames are invisible, but if the second optional argument FORCE is non-nil, you may do so. This function has no effect on text terminal frames. Such frames are always considered visible, whether or not they are currently being displayed in the terminal. (fn &optional FRAME FORCE)Ficonify-frame Make the frame FRAME into an icon. If omitted, FRAME defaults to the currently selected frame. If FRAME is a child frame, consult the variable `iconify-child-frame' for how to proceed. (fn &optional FRAME)Fframe-visible-p Return t if FRAME is "visible" (actually in use for display). Return the symbol `icon' if FRAME is iconified or "minimized". Return nil if FRAME was made invisible, via `make-frame-invisible'. On graphical displays, invisible frames are not updated and are usually not displayed at all, even in a window system's "taskbar". If FRAME is a text terminal frame, this always returns t. Such frames are always considered visible, whether or not they are currently being displayed on the terminal. (fn FRAME)Fvisible-frame-list Return a list of all frames now "visible" (being updated). (fn)Fraise-frame Bring FRAME to the front, so it occludes any frames it overlaps. If FRAME is invisible or iconified, make it visible. If you don't specify a frame, the selected frame is used. If Emacs is displaying on an ordinary terminal or some other device which doesn't support multiple overlapping frames, this function selects FRAME. (fn &optional FRAME)Flower-frame Send FRAME to the back, so it is occluded by any frames that overlap it. If you don't specify a frame, the selected frame is used. If Emacs is displaying on an ordinary terminal or some other device which doesn't support multiple overlapping frames, this function does nothing. (fn &optional FRAME)Fredirect-frame-focus Arrange for keystrokes typed at FRAME to be sent to FOCUS-FRAME. In other words, switch-frame events caused by events in FRAME will request a switch to FOCUS-FRAME, and `last-event-frame' will be FOCUS-FRAME after reading an event typed at FRAME. If FOCUS-FRAME is nil, any existing redirection is canceled, and the frame again receives its own keystrokes. Focus redirection is useful for temporarily redirecting keystrokes to a surrogate minibuffer frame when a frame doesn't have its own minibuffer window. A frame's focus redirection can be changed by `select-frame'. If frame FOO is selected, and then a different frame BAR is selected, any frames redirecting their focus to FOO are shifted to redirect their focus to BAR. This allows focus redirection to work properly when the user switches from one frame to another using `select-window'. This means that a frame whose focus is redirected to itself is treated differently from a frame whose focus is redirected to nil; the former is affected by `select-frame', while the latter is not. The redirection lasts until `redirect-frame-focus' is called to change it. (fn FRAME &optional FOCUS-FRAME)Fframe-focus Return the frame to which FRAME's keystrokes are currently being sent. If FRAME is omitted or nil, the selected frame is used. Return nil if FRAME's focus is not redirected. See `redirect-frame-focus'. (fn &optional FRAME)Fx-focus-frame Set the input focus to FRAME. FRAME nil means use the selected frame. Optional argument NOACTIVATE means do not activate FRAME. If there is no window system support, this function does nothing. (fn FRAME &optional NOACTIVATE)Fframe-after-make-frame Mark FRAME as made. FRAME nil means use the selected frame. Second argument MADE non-nil means functions on `window-configuration-change-hook' are called whenever the window configuration of FRAME changes. MADE nil means these functions are not called. This function is currently called by `make-frame' only and should be otherwise used with utter care to avoid that running functions on `window-configuration-change-hook' is impeded forever. (fn FRAME MADE)Fframe-parameters Return the parameters-alist of frame FRAME. It is a list of elements of the form (PARM . VALUE), where PARM is a symbol. The meaningful PARMs depend on the kind of frame. If FRAME is omitted or nil, return information on the currently selected frame. (fn &optional FRAME)Fframe-parameter Return FRAME's value for parameter PARAMETER. If FRAME is nil, describe the currently selected frame. (fn FRAME PARAMETER)Fmodify-frame-parameters Modify FRAME according to new values of its parameters in ALIST. If FRAME is nil, it defaults to the selected frame. ALIST is an alist of parameters to change and their new values. Each element of ALIST has the form (PARM . VALUE), where PARM is a symbol. Which PARMs are meaningful depends on the kind of frame. The meaningful parameters are acted upon, i.e. the frame is changed according to their new values, and are also stored in the frame's parameter list so that `frame-parameters' will return them. PARMs that are not meaningful are still stored in the frame's parameter list, but are otherwise ignored. (fn FRAME ALIST)Fframe-char-height Height in pixels of a line in the font in frame FRAME. If FRAME is omitted or nil, the selected frame is used. For a terminal frame, the value is always 1. (fn &optional FRAME)Fframe-char-width Width in pixels of characters in the font in frame FRAME. If FRAME is omitted or nil, the selected frame is used. On a graphical screen, the width is the standard width of the default font. For a terminal screen, the value is always 1. (fn &optional FRAME)Fframe-native-width Return FRAME's native width in pixels. For a terminal frame, the result really gives the width in characters. If FRAME is omitted or nil, the selected frame is used. (fn &optional FRAME)Fframe-native-height Return FRAME's native height in pixels. If FRAME is omitted or nil, the selected frame is used. The exact value of the result depends on the window-system and toolkit in use: In the Gtk+ and NS versions, it includes only any window (including the minibuffer or echo area), mode line, and header line. It does not include the tool bar or menu bar. With other graphical versions, it may also include the tool bar and the menu bar. For a text terminal, it includes the menu bar. In this case, the result is really in characters rather than pixels (i.e., is identical to `frame-height'). (fn &optional FRAME)Ftool-bar-pixel-width Return width in pixels of FRAME's tool bar. The result is greater than zero only when the tool bar is on the left or right side of FRAME. If FRAME is omitted or nil, the selected frame is used. (fn &optional FRAME)Fframe-text-cols Return width in columns of FRAME's text area. (fn &optional FRAME)Fframe-text-lines Return height in lines of FRAME's text area. (fn &optional FRAME)Fframe-total-cols Return number of total columns of FRAME. (fn &optional FRAME)Fframe-total-lines Return number of total lines of FRAME. (fn &optional FRAME)Fframe-text-width Return text area width of FRAME in pixels. (fn &optional FRAME)Fframe-text-height Return text area height of FRAME in pixels. (fn &optional FRAME)Fframe-scroll-bar-width Return scroll bar width of FRAME in pixels. (fn &optional FRAME)Fframe-scroll-bar-height Return scroll bar height of FRAME in pixels. (fn &optional FRAME)Fframe-fringe-width Return fringe width of FRAME in pixels. (fn &optional FRAME)Fframe-internal-border-width Return width of FRAME's internal border in pixels. (fn &optional FRAME)Fframe-right-divider-width Return width (in pixels) of vertical window dividers on FRAME. (fn &optional FRAME)Fframe-bottom-divider-width Return width (in pixels) of horizontal window dividers on FRAME. (fn &optional FRAME)Fset-frame-height Set text height of frame FRAME to HEIGHT lines. Optional third arg PRETEND non-nil means that redisplay should use HEIGHT lines but that the idea of the actual height of the frame should not be changed. Optional fourth argument PIXELWISE non-nil means that FRAME should be HEIGHT pixels high. Note: When `frame-resize-pixelwise' is nil, some window managers may refuse to honor a HEIGHT that is not an integer multiple of the default frame font height. (fn FRAME HEIGHT &optional PRETEND PIXELWISE)Fset-frame-width Set text width of frame FRAME to WIDTH columns. Optional third arg PRETEND non-nil means that redisplay should use WIDTH columns but that the idea of the actual width of the frame should not be changed. Optional fourth argument PIXELWISE non-nil means that FRAME should be WIDTH pixels wide. Note: When `frame-resize-pixelwise' is nil, some window managers may refuse to honor a WIDTH that is not an integer multiple of the default frame font width. (fn FRAME WIDTH &optional PRETEND PIXELWISE)Fset-frame-size Set text size of FRAME to WIDTH by HEIGHT, measured in characters. Optional argument PIXELWISE non-nil means to measure in pixels. Note: When `frame-resize-pixelwise' is nil, some window managers may refuse to honor a WIDTH that is not an integer multiple of the default frame font width or a HEIGHT that is not an integer multiple of the default frame font height. (fn FRAME WIDTH HEIGHT &optional PIXELWISE)Fframe-position Return top left corner of FRAME in pixels. FRAME must be a live frame and defaults to the selected one. The return value is a cons (x, y) of the coordinates of the top left corner of FRAME's outer frame, in pixels relative to an origin (0, 0) of FRAME's display. (fn &optional FRAME)Fset-frame-position Set position of FRAME to (X, Y). FRAME must be a live frame and defaults to the selected one. X and Y, if positive, specify the coordinate of the left and top edge of FRAME's outer frame in pixels relative to an origin (0, 0) of FRAME's display. If any of X or Y is negative, it specifies the coordinates of the right or bottom edge of the outer frame of FRAME relative to the right or bottom edge of FRAME's display. (fn FRAME X Y)Fx-get-resource Return the value of ATTRIBUTE, of class CLASS, from the X defaults database. This uses `INSTANCE.ATTRIBUTE' as the key and `Emacs.CLASS' as the class, where INSTANCE is the name under which Emacs was invoked, or the name specified by the `-name' or `-rn' command-line arguments. The optional arguments COMPONENT and SUBCLASS add to the key and the class, respectively. You must specify both of them or neither. If you specify them, the key is `INSTANCE.COMPONENT.ATTRIBUTE' and the class is `Emacs.CLASS.SUBCLASS'. (fn ATTRIBUTE CLASS &optional COMPONENT SUBCLASS)Fx-parse-geometry Parse a display geometry string STRING. Returns an alist of the form ((top . TOP), (left . LEFT) ... ). The properties returned may include `top', `left', `height', and `width'. For X, the value of `left' or `top' may be an integer, or a list (+ N) meaning N pixels relative to top/left corner, or a list (- N) meaning -N pixels relative to bottom/right corner. On Nextstep, this just calls `ns-parse-geometry'. (fn STRING)Fframe-pointer-visible-p Return t if the mouse pointer displayed on FRAME is visible. Otherwise it returns nil. FRAME omitted or nil means the selected frame. This is useful when `make-pointer-invisible' is set. (fn &optional FRAME)Vx-resource-name The name Emacs uses to look up X resources. `x-get-resource' uses this as the first component of the instance name when requesting resource values. Emacs initially sets `x-resource-name' to the name under which Emacs was invoked, or to the value specified with the `-name' or `-rn' switches, if present. It may be useful to bind this variable locally around a call to `x-get-resource'. See also the variable `x-resource-class'.Vx-resource-class The class Emacs uses to look up X resources. `x-get-resource' uses this as the first component of the instance class when requesting resource values. Emacs initially sets `x-resource-class' to "Emacs". Setting this variable permanently is not a reasonable thing to do, but binding this variable locally around a call to `x-get-resource' is a reasonable practice. See also the variable `x-resource-name'.Vframe-alpha-lower-limit The lower limit of the frame opacity (alpha transparency). The value should range from 0 (invisible) to 100 (completely opaque). You can also use a floating number between 0.0 and 1.0.Vdefault-frame-alist Alist of default values for frame creation. These may be set in your init file, like this: (setq default-frame-alist \='((width . 80) (height . 55) (menu-bar-lines . 1))) These override values given in window system configuration data, including X Windows' defaults database. For values specific to the first Emacs frame, see `initial-frame-alist'. For window-system specific values, see `window-system-default-frame-alist'. For values specific to the separate minibuffer frame, see `minibuffer-frame-alist'. The `menu-bar-lines' element of the list controls whether new frames have menu bars; `menu-bar-mode' works by altering this element. Setting this variable does not affect existing frames, only new ones.Vdefault-frame-scroll-bars Default position of vertical scroll bars on this window-system.Vscroll-bar-adjust-thumb-portion Adjust thumb for overscrolling for Gtk+ and MOTIF. Non-nil means adjust the thumb in the scroll bar so it can be dragged downwards even if the end of the buffer is shown (i.e. overscrolling). Set to nil if you want the thumb to be at the bottom when the end of the buffer is shown. Also, the thumb fills the whole scroll bar when the entire buffer is visible. In this case you can not overscroll.Vterminal-frame The initial frame-object, which represents Emacs's stdout.Vmouse-position-function If non-nil, function to transform normal value of `mouse-position'. `mouse-position' and `mouse-pixel-position' call this function, passing their usual return value as argument, and return whatever this function returns. This abnormal hook exists for the benefit of packages like `xt-mouse.el' which need to do mouse handling at the Lisp level.Vmouse-highlight If non-nil, clickable text is highlighted when mouse is over it. If the value is an integer, highlighting is only shown after moving the mouse, while keyboard input turns off the highlight even when the mouse is over the clickable text. However, the mouse shape still indicates when the mouse is over clickable text.Vmake-pointer-invisible If non-nil, make pointer invisible while typing. The pointer becomes visible again when the mouse is moved.Vfocus-in-hook Normal hook run when a frame gains input focus. The frame gaining focus is selected at the time this hook is run.Vfocus-out-hook Normal hook run when all frames lost input focus.Vmove-frame-functions Functions run after a frame was moved. The functions are run with one arg, the frame that moved.Vdelete-frame-functions Functions run before deleting a frame. The functions are run with one arg, the frame to be deleted. See `delete-frame'. Note that functions in this list may be called just before the frame is actually deleted, or some time later (or even both when an earlier function in `delete-frame-functions' (indirectly) calls `delete-frame' recursively).Vmenu-bar-mode Non-nil if Menu-Bar mode is enabled. See the command `menu-bar-mode' for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `menu-bar-mode'.Vtool-bar-mode Non-nil if Tool-Bar mode is enabled. See the command `tool-bar-mode' for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `tool-bar-mode'.Vdefault-minibuffer-frame Minibuffer-less frames by default use this frame's minibuffer. Emacs consults this variable only when creating a minibuffer-less frame and no explicit minibuffer window has been specified for that frame via the `minibuffer' frame parameter. Once such a frame has been created, setting this variable does not change that frame's previous association. This variable is local to the current terminal and cannot be buffer-local.Vfocus-follows-mouse Non-nil if window system changes focus when you move the mouse. You should set this variable to tell Emacs how your window manager handles focus, since there is no way in general for Emacs to find out automatically. There are three meaningful values: - The default nil should be used when your window manager follows a "click-to-focus" policy where you have to click the mouse inside of a frame in order for that frame to get focus. - The value t should be used when your window manager has the focus automatically follow the position of the mouse pointer but a window that gains focus is not raised automatically. - The value `auto-raise' should be used when your window manager has the focus automatically follow the position of the mouse pointer and a window that gains focus is raised automatically. If this option is non-nil, Emacs moves the mouse pointer to the frame selected by `select-frame-set-input-focus'. This function is used by a number of commands like, for example, `other-frame' and `pop-to-buffer'. If this option is nil and your focus follows mouse window manager does not autonomously move the mouse pointer to the newly selected frame, the previously selected window manager window might get reselected instead immediately. The distinction between the values t and `auto-raise' is not needed for "normal" frames because the window manager takes care of raising them. Setting this to `auto-raise' will, however, override the standard behavior of a window manager that does not automatically raise the frame that gets focus. Setting this to `auto-raise' is also necessary to automatically raise child frames which are usually left alone by the window manager. Note that this option does not distinguish "sloppy" focus (where the frame that previously had focus retains focus as long as the mouse pointer does not move into another window manager window) from "strict" focus (where a frame immediately loses focus when it's left by the mouse pointer). In order to extend a "focus follows mouse" policy to individual Emacs windows, customize the variable `mouse-autoselect-window'.Vframe-resize-pixelwise Non-nil means resize frames pixelwise. If this option is nil, resizing a frame rounds its sizes to the frame's current values of `frame-char-height' and `frame-char-width'. If this is non-nil, no rounding occurs, hence frame sizes can increase/decrease by one pixel. With some window managers you may have to set this to non-nil in order to set the size of a frame in pixels, to maximize frames or to make them fullscreen. To resize your initial frame pixelwise, set this option to a non-nil value in your init file.Vframe-inhibit-implied-resize Whether frames should be resized implicitly. If this option is nil, setting font, menu bar, tool bar, internal borders, fringes or scroll bars of a specific frame may resize the frame in order to preserve the number of columns or lines it displays. If this option is t, no such resizing is done. Note that the size of fullscreen and maximized frames, the height of fullheight frames and the width of fullwidth frames never change implicitly. The value of this option can be also be a list of frame parameters. In this case, resizing is inhibited when changing a parameter that appears in that list. The parameters currently handled by this option include `font', `font-backend', `internal-border-width', `menu-bar-lines' and `tool-bar-lines'. Changing any of the parameters `scroll-bar-width', `scroll-bar-height', `vertical-scroll-bars', `horizontal-scroll-bars', `left-fringe' and `right-fringe' is handled as if the frame contained just one live window. This means, for example, that removing vertical scroll bars on a frame containing several side by side windows will shrink the frame width by the width of one scroll bar provided this option is nil and keep it unchanged if this option is either t or a list containing `vertical-scroll-bars'. The default value is \='(tool-bar-lines) on Lucid, Motif and Windows (which means that adding/removing a tool bar does not change the frame height), nil on all other window systems including GTK+ (which means that changing any of the parameters listed above may change the size of the frame), and t otherwise (which means the frame size never changes implicitly when there's no window system support). Note that when a frame is not large enough to accommodate a change of any of the parameters listed above, Emacs may try to enlarge the frame even if this option is non-nil.Vframe-size-history History of frame size adjustments. If non-nil, list recording frame size adjustment. Adjustments are recorded only if the first element of this list is a positive number. Adding an adjustment decrements that number by one. The remaining elements are the adjustments. Each adjustment is a list of four elements `frame', `function', `sizes' and `more'. `frame' is the affected frame and `function' the invoking function. `sizes' is usually a list of four elements `old-width', `old-height', `new-width' and `new-height' representing the old and new sizes recorded/requested by `function'. `more' is a list with additional information. The function `frame--size-history' displays the value of this variable in a more readable form.Vtooltip-reuse-hidden-frame Non-nil means reuse hidden tooltip frames. When this is nil, delete a tooltip frame when hiding the associated tooltip. When this is non-nil, make the tooltip frame invisible only, so it can be reused when the next tooltip is shown. Setting this to non-nil may drastically reduce the consing overhead incurred by creating new tooltip frames. However, a value of non-nil means also that intermittent changes of faces or `default-frame-alist' are not applied when showing a tooltip in a reused frame. This variable is effective only with the X toolkit (and there only when Gtk+ tooltips are not used) and on Windows.Viconify-child-frame How to handle iconification of child frames. This variable tells Emacs how to proceed when it is asked to iconify a child frame. If it is nil, `iconify-frame' will do nothing when invoked on a child frame. If it is `iconify-top-level', Emacs will try to iconify the top level frame associated with this child frame instead. If it is `make-invisible', Emacs will try to make this child frame invisible instead. Any other value means to try iconifying the child frame. Since such an attempt is not honored by all window managers and may even lead to making the child frame unresponsive to user actions, the default is to iconify the top level frame instead.Sscroll.o Sxdisp.o Fset-buffer-redisplay Mark the current buffer for redisplay. This function may be passed to `add-variable-watcher'. (fn SYMBOL NEWVAL OP WHERE)Fline-pixel-height Return height in pixels of text line in the selected window. Value is the height in pixels of the line at point. (fn)Fwindow-text-pixel-size Return the size of the text of WINDOW's buffer in pixels. WINDOW must be a live window and defaults to the selected one. The return value is a cons of the maximum pixel-width of any text line and the maximum pixel-height of all text lines. The optional argument FROM, if non-nil, specifies the first text position and defaults to the minimum accessible position of the buffer. If FROM is t, use the minimum accessible position that starts a non-empty line. TO, if non-nil, specifies the last text position and defaults to the maximum accessible position of the buffer. If TO is t, use the maximum accessible position that ends a non-empty line. The optional argument X-LIMIT, if non-nil, specifies the maximum text width that can be returned. X-LIMIT nil or omitted, means to use the pixel-width of WINDOW's body; use this if you want to know how high WINDOW should be become in order to fit all of its buffer's text with the width of WINDOW unaltered. Use the maximum width WINDOW may assume if you intend to change WINDOW's width. In any case, text whose x-coordinate is beyond X-LIMIT is ignored. Since calculating the width of long lines can take some time, it's always a good idea to make this argument as small as possible; in particular, if the buffer contains long lines that shall be truncated anyway. The optional argument Y-LIMIT, if non-nil, specifies the maximum text height (excluding the height of the mode- or header-line, if any) that can be returned. Text lines whose y-coordinate is beyond Y-LIMIT are ignored. Since calculating the text height of a large buffer can take some time, it makes sense to specify this argument if the size of the buffer is large or unknown. Optional argument MODE-AND-HEADER-LINE nil or omitted means do not include the height of the mode- or header-line of WINDOW in the return value. If it is either the symbol `mode-line' or `header-line', include only the height of that line, if present, in the return value. If t, include the height of both, if present, in the return value. (fn &optional WINDOW FROM TO X-LIMIT Y-LIMIT MODE-AND-HEADER-LINE)Ftool-bar-height Return the number of lines occupied by the tool bar of FRAME. If FRAME is nil or omitted, use the selected frame. Optional argument PIXELWISE non-nil means return the height of the tool bar in pixels. (fn &optional FRAME PIXELWISE)Fdump-glyph-matrix Dump the current matrix of the selected window to stderr. Shows contents of glyph row structures. With non-nil parameter GLYPHS, dump glyphs as well. If GLYPHS is 1 show glyphs in short form, otherwise show glyphs in long form. Interactively, no argument means show glyphs in short form; with numeric argument, its value is passed as the GLYPHS flag. (fn &optional GLYPHS)Fdump-frame-glyph-matrix Dump the current glyph matrix of the selected frame to stderr. Only text-mode frames have frame glyph matrices. (fn)Fdump-glyph-row Dump glyph row ROW to stderr. Interactively, ROW is the prefix numeric argument and defaults to the row which displays point. Optional argument GLYPHS 0 means don't dump glyphs. GLYPHS 1 means dump glyphs in short form. GLYPHS > 1 or omitted means dump glyphs in long form. (fn ROW &optional GLYPHS)Fdump-tool-bar-row Dump glyph row ROW of the tool-bar of the current frame to stderr. Interactively, ROW is the prefix numeric argument and defaults to zero. GLYPHS 0 means don't dump glyphs. GLYPHS 1 means dump glyphs in short form. GLYPHS > 1 or omitted means dump glyphs in long form. If there's no tool-bar, or if the tool-bar is not drawn by Emacs, do nothing. (fn ROW &optional GLYPHS)Ftrace-redisplay Toggle tracing of redisplay. With ARG, turn tracing on if and only if ARG is positive. (fn &optional ARG)Ftrace-to-stderr Like `format', but print result to stderr. (fn STRING &rest OBJECTS)Fcurrent-bidi-paragraph-direction Return paragraph direction at point in BUFFER. Value is either `left-to-right' or `right-to-left'. If BUFFER is omitted or nil, it defaults to the current buffer. Paragraph direction determines how the text in the paragraph is displayed. In left-to-right paragraphs, text begins at the left margin of the window and the reading direction is generally left to right. In right-to-left paragraphs, text begins at the right margin and is read from right to left. See also `bidi-paragraph-direction'. (fn &optional BUFFER)Fbidi-find-overridden-directionality Return position between FROM and TO where directionality was overridden. This function returns the first character position in the specified region of OBJECT where there is a character whose `bidi-class' property is `L', but which was forced to display as `R' by a directional override, and likewise with characters whose `bidi-class' is `R' or `AL' that were forced to display as `L'. If no such character is found, the function returns nil. OBJECT is a Lisp string or buffer to search for overridden directionality, and defaults to the current buffer if nil or omitted. OBJECT can also be a window, in which case the function will search the buffer displayed in that window. Passing the window instead of a buffer is preferable when the buffer is displayed in some window, because this function will then be able to correctly account for window-specific overlays, which can affect the results. Strong directional characters `L', `R', and `AL' can have their intrinsic directionality overridden by directional override control characters RLO (u+202e) and LRO (u+202d). See the function `get-char-code-property' for a way to inquire about the `bidi-class' property of a character. (fn FROM TO &optional OBJECT)Fmove-point-visually Move point in the visual order in the specified DIRECTION. DIRECTION can be 1, meaning move to the right, or -1, which moves to the left. Value is the new character position of point. (fn DIRECTION)Fbidi-resolved-levels Return the resolved bidirectional levels of characters at VPOS. The resolved levels are produced by the Emacs bidi reordering engine that implements the UBA, the Unicode Bidirectional Algorithm. Please read the Unicode Standard Annex 9 (UAX#9) for background information about these levels. VPOS is the zero-based number of the current window's screen line for which to produce the resolved levels. If VPOS is nil or omitted, it defaults to the screen line of point. If the window displays a header line, VPOS of zero will report on the header line, and first line of text in the window will have VPOS of 1. Value is an array of resolved levels, indexed by glyph number. Glyphs are numbered from zero starting from the beginning of the screen line, i.e. the left edge of the window for left-to-right lines and from the right edge for right-to-left lines. The resolved levels are produced only for the window's text area; text in display margins is not included. If the selected window's display is not up-to-date, or if the specified screen line does not display text, this function returns nil. It is highly recommended to bind this function to some simple key, like F8, in order to avoid these problems. This function exists mainly for testing the correctness of the Emacs UBA implementation, in particular with the test suite. (fn &optional VPOS)Fformat-mode-line Format a string out of a mode line format specification. First arg FORMAT specifies the mode line format (see `mode-line-format' for details) to use. By default, the format is evaluated for the currently selected window. Optional second arg FACE specifies the face property to put on all characters for which no face is specified. The value nil means the default face. The value t means whatever face the window's mode line currently uses (either `mode-line' or `mode-line-inactive', depending on whether the window is the selected window or not). An integer value means the value string has no text properties. Optional third and fourth args WINDOW and BUFFER specify the window and buffer to use as the context for the formatting (defaults are the selected window and the WINDOW's buffer). (fn FORMAT &optional FACE WINDOW BUFFER)Finvisible-p Non-nil if text properties at POS cause text there to be currently invisible. POS should be a marker or a buffer position; the value of the `invisible' property at that position in the current buffer is examined. POS can also be the actual value of the `invisible' text or overlay property of the text of interest, in which case the value itself is examined. The non-nil value returned can be t for currently invisible text that is entirely hidden on display, or some other non-nil, non-t value if the text is replaced by an ellipsis. Note that whether text with `invisible' property is actually hidden on display may depend on `buffer-invisibility-spec', which see. (fn POS)Flookup-image-map Lookup in image map MAP coordinates X and Y. An image map is an alist where each element has the format (AREA ID PLIST). An AREA is specified as either a rectangle, a circle, or a polygon: A rectangle is a cons (rect . ((x0 . y0) . (x1 . y1))) specifying the pixel coordinates of the upper left and bottom right corners. A circle is a cons (circle . ((x0 . y0) . r)) specifying the center and the radius of the circle; r may be a float or integer. A polygon is a cons (poly . [x0 y0 x1 y1 ...]) where each pair in the vector describes one corner in the polygon. Returns the alist element for the first matching AREA in MAP. (fn MAP X Y)Vinhibit-message Non-nil means calls to `message' are not displayed. They are still logged to the *Messages* buffer. Do NOT set this globally to a non-nil value, as doing that will disable messages everywhere, including in I-search and other places where they are necessary. This variable is intended to be let-bound around code that needs to disable messages temporarily.Vx-stretch-cursor Non-nil means draw block cursor as wide as the glyph under it. For example, if a block cursor is over a tab, it will be drawn as wide as that tab on the display.Vshow-trailing-whitespace Non-nil means highlight trailing whitespace. The face used for trailing whitespace is `trailing-whitespace'.Vnobreak-char-display Control highlighting of non-ASCII space and hyphen chars. If the value is t, Emacs highlights non-ASCII chars which have the same appearance as an ASCII space or hyphen, using the `nobreak-space' or `nobreak-hyphen' face respectively. U+00A0 (no-break space), U+00AD (soft hyphen), U+2010 (hyphen), and U+2011 (non-breaking hyphen) are affected. Any other non-nil value means to display these characters as an escape glyph followed by an ordinary space or hyphen. A value of nil means no special handling of these characters.Vvoid-text-area-pointer The pointer shape to show in void text areas. A value of nil means to show the text pointer. Other options are `arrow', `text', `hand', `vdrag', `hdrag', `nhdrag', `modeline', and `hourglass'.Vinhibit-redisplay Non-nil means don't actually do any redisplay. This is used for internal purposes.Vglobal-mode-string String (or mode line construct) included (normally) in `mode-line-format'.Voverlay-arrow-position Marker for where to display an arrow on top of the buffer text. This must be the beginning of a line in order to work. See also `overlay-arrow-string'.Voverlay-arrow-string String to display as an arrow in non-window frames. See also `overlay-arrow-position'.Voverlay-arrow-variable-list List of variables (symbols) which hold markers for overlay arrows. The symbols on this list are examined during redisplay to determine where to display overlay arrows.Vscroll-step The number of lines to try scrolling a window by when point moves out. If that fails to bring point back on frame, point is centered instead. If this is zero, point is always centered after it moves off frame. If you want scrolling to always be a line at a time, you should set `scroll-conservatively' to a large value rather than set this to 1.Vscroll-conservatively Scroll up to this many lines, to bring point back on screen. If point moves off-screen, redisplay will scroll by up to `scroll-conservatively' lines in order to bring point just barely onto the screen again. If that cannot be done, then redisplay recenters point as usual. If the value is greater than 100, redisplay will never recenter point, but will always scroll just enough text to bring point into view, even if you move far away. A value of zero means always recenter point if it moves off screen.Vscroll-margin Number of lines of margin at the top and bottom of a window. Trigger automatic scrolling whenever point gets within this many lines of the top or bottom of the window (see info node `Auto Scrolling').Vmaximum-scroll-margin Maximum effective value of `scroll-margin'. Given as a fraction of the current window's lines. The value should be a floating point number between 0.0 and 0.5. The effective maximum is limited to (/ (1- window-lines) 2). Non-float values for this variable are ignored and the default 0.25 is used instead.Vdisplay-pixels-per-inch Pixels per inch value for non-window system displays. Value is a number or a cons (WIDTH-DPI . HEIGHT-DPI).Vdebug-end-pos Don't ask.Vtruncate-partial-width-windows Non-nil means truncate lines in windows narrower than the frame. For an integer value, truncate lines in each window narrower than the full frame width, provided the total window width in column units is less than that integer; otherwise, respect the value of `truncate-lines'. The total width of the window is as returned by `window-total-width', it includes the fringes, the continuation and truncation glyphs, the display margins (if any), and the scroll bar For any other non-nil value, truncate lines in all windows that do not span the full frame width. A value of nil means to respect the value of `truncate-lines'. If `word-wrap' is enabled, you might want to reduce this.Vline-number-display-limit Maximum buffer size for which line number should be displayed. If the buffer is bigger than this, the line number does not appear in the mode line. A value of nil means no limit.Vline-number-display-limit-width Maximum line width (in characters) for line number display. If the average length of the lines near point is bigger than this, then the line number may be omitted from the mode line.Vhighlight-nonselected-windows Non-nil means highlight region even in nonselected windows.Vmultiple-frames Non-nil if more than one frame is visible on this display. Minibuffer-only frames don't count, but iconified frames do. This variable is not guaranteed to be accurate except while processing `frame-title-format' and `icon-title-format'.Vframe-title-format Template for displaying the title bar of visible frames. (Assuming the window manager supports this feature.) This variable has the same structure as `mode-line-format', except that the %c, %C, and %l constructs are ignored. It is used only on frames for which no explicit name has been set (see `modify-frame-parameters').Vicon-title-format Template for displaying the title bar of an iconified frame. (Assuming the window manager supports this feature.) This variable has the same structure as `mode-line-format' (which see), and is used only on frames for which no explicit name has been set (see `modify-frame-parameters').Vmessage-log-max Maximum number of lines to keep in the message log buffer. If nil, disable message logging. If t, log messages but don't truncate the buffer when it becomes large.Vwindow-scroll-functions List of functions to call before redisplaying a window with scrolling. Each function is called with two arguments, the window and its new display-start position. These functions are called whenever the `window-start' marker is modified, either to point into another buffer (e.g. via `set-window-buffer') or another place in the same buffer. When each function is called, the `window-start' marker of its window argument has been already set to the new value, and the buffer which that window will display is set to be the current buffer. Note that the value of `window-end' is not valid when these functions are called. Warning: Do not use this feature to alter the way the window is scrolled. It is not designed for that, and such use probably won't work.Vredisplay-end-trigger-functions Functions called when redisplay of a window reaches the end trigger. Each function is called with two arguments, the window and the end trigger value. See `set-window-redisplay-end-trigger'.Vmouse-autoselect-window Non-nil means autoselect window with mouse pointer. If nil, do not autoselect windows. A positive number means delay autoselection by that many seconds: a window is autoselected only after the mouse has remained in that window for the duration of the delay. A negative number has a similar effect, but causes windows to be autoselected only after the mouse has stopped moving. (Because of the way Emacs compares mouse events, you will occasionally wait twice that time before the window gets selected.) Any other value means to autoselect window instantaneously when the mouse pointer enters it. Autoselection selects the minibuffer only if it is active, and never unselects the minibuffer if it is active. If you want to use the mouse to autoselect a window on another frame, make sure that (1) your window manager has focus follow the mouse and (2) the value of the option `focus-follows-mouse' matches the policy of your window manager.Vauto-resize-tool-bars Non-nil means automatically resize tool-bars. This dynamically changes the tool-bar's height to the minimum height that is needed to make all tool-bar items visible. If value is `grow-only', the tool-bar's height is only increased automatically; to decrease the tool-bar height, use \[recenter].Vauto-raise-tool-bar-buttons Non-nil means raise tool-bar buttons when the mouse moves over them.Vmake-cursor-line-fully-visible Non-nil means to scroll (recenter) cursor line if it is not fully visible.Vtool-bar-border Border below tool-bar in pixels. If an integer, use it as the height of the border. If it is one of `internal-border-width' or `border-width', use the value of the corresponding frame parameter. Otherwise, no border is added below the tool-bar.Vtool-bar-button-margin Margin around tool-bar buttons in pixels. If an integer, use that for both horizontal and vertical margins. Otherwise, value should be a pair of integers `(HORZ . VERT)' with HORZ specifying the horizontal margin, and VERT specifying the vertical margin.Vtool-bar-button-relief Relief thickness of tool-bar buttons.Vtool-bar-style Tool bar style to use. It can be one of image - show images only text - show text only both - show both, text below image both-horiz - show text to the right of the image text-image-horiz - show text to the left of the image any other - use system default or image if no system default. This variable only affects the GTK+ toolkit version of Emacs.Vtool-bar-max-label-size Maximum number of characters a label can have to be shown. The tool bar style must also show labels for this to have any effect, see `tool-bar-style'.Vfontification-functions List of functions to call to fontify regions of text. Each function is called with one argument POS. Functions must fontify a region starting at POS in the current buffer, and give fontified regions the property `fontified'.Vunibyte-display-via-language-environment Non-nil means display unibyte text according to language environment. Specifically, this means that raw bytes in the range 160-255 decimal are displayed by converting them to the equivalent multibyte characters according to the current language environment. As a result, they are displayed according to the current fontset. Note that this variable affects only how these bytes are displayed, but does not change the fact they are interpreted as raw bytes.Vmax-mini-window-height Maximum height for resizing mini-windows (the minibuffer and the echo area). If a float, it specifies a fraction of the mini-window frame's height. If an integer, it specifies a number of lines.Vresize-mini-windows How to resize mini-windows (the minibuffer and the echo area). A value of nil means don't automatically resize mini-windows. A value of t means resize them to fit the text displayed in them. A value of `grow-only', the default, means let mini-windows grow only; they return to their normal size when the minibuffer is closed, or the echo area becomes empty.Vblink-cursor-alist Alist specifying how to blink the cursor off. Each element has the form (ON-STATE . OFF-STATE). Whenever the `cursor-type' frame-parameter or variable equals ON-STATE, comparing using `equal', Emacs uses OFF-STATE to specify how to blink it off. ON-STATE and OFF-STATE are values for the `cursor-type' frame parameter. If a frame's ON-STATE has no entry in this list, the frame's other specifications determine how to blink the cursor off.Vauto-hscroll-mode Allow or disallow automatic horizontal scrolling of windows. The value `current-line' means the line displaying point in each window is automatically scrolled horizontally to make point visible. Any other non-nil value means all the lines in a window are automatically scrolled horizontally to make point visible.Vhscroll-margin How many columns away from the window edge point is allowed to get before automatic hscrolling will horizontally scroll the window.Vhscroll-step How many columns to scroll the window when point gets too close to the edge. When point is less than `hscroll-margin' columns from the window edge, automatic hscrolling will scroll the window by the amount of columns determined by this variable. If its value is a positive integer, scroll that many columns. If it's a positive floating-point number, it specifies the fraction of the window's width to scroll. If it's nil or zero, point will be centered horizontally after the scroll. Any other value, including negative numbers, are treated as if the value were zero. Automatic hscrolling always moves point outside the scroll margin, so if point was more than scroll step columns inside the margin, the window will scroll more than the value given by the scroll step. Note that the lower bound for automatic hscrolling specified by `scroll-left' and `scroll-right' overrides this variable's effect.Vmessage-truncate-lines If non-nil, messages are truncated instead of resizing the echo area. Bind this around calls to `message' to let it take effect.Vmenu-bar-update-hook Normal hook run to update the menu bar definitions. Redisplay runs this hook before it redisplays the menu bar. This is used to update menus such as Buffers, whose contents depend on various data.Vmenu-updating-frame Frame for which we are updating a menu. The enable predicate for a menu binding should check this variable.Vinhibit-menubar-update Non-nil means don't update menu bars. Internal use only.Vwrap-prefix Prefix prepended to all continuation lines at display time. The value may be a string, an image, or a stretch-glyph; it is interpreted in the same way as the value of a `display' text property. This variable is overridden by any `wrap-prefix' text or overlay property. To add a prefix to non-continuation lines, use `line-prefix'.Vline-prefix Prefix prepended to all non-continuation lines at display time. The value may be a string, an image, or a stretch-glyph; it is interpreted in the same way as the value of a `display' text property. This variable is overridden by any `line-prefix' text or overlay property. To add a prefix to continuation lines, use `wrap-prefix'.Vdisplay-line-numbers Non-nil means display line numbers. If the value is t, display the absolute number of each line of a buffer shown in a window. Absolute line numbers count from the beginning of the current narrowing, or from buffer beginning. If the value is `relative', display for each line not containing the window's point its relative number instead, i.e. the number of the line relative to the line showing the window's point. In either case, line numbers are displayed at the beginning of each non-continuation line that displays buffer text, i.e. after each newline character that comes from the buffer. The value `visual' is like `relative' but counts screen lines instead of buffer lines. In practice this means that continuation lines count as well when calculating the relative number of a line. Lisp programs can disable display of a line number of a particular buffer line by putting the `display-line-numbers-disable' text property or overlay property on the first visible character of that line.Vdisplay-line-numbers-width Minimum width of space reserved for line number display. A positive number means reserve that many columns for line numbers, even if the actual number needs less space. The default value of nil means compute the space dynamically. Any other value is treated as nil.Vdisplay-line-numbers-current-absolute Non-nil means display absolute number of current line. This variable has effect only when `display-line-numbers' is either `relative' or `visual'.Vdisplay-line-numbers-widen Non-nil means display line numbers disregarding any narrowing.Vinhibit-eval-during-redisplay Non-nil means don't eval Lisp during redisplay.Vinhibit-free-realized-faces Non-nil means don't free realized faces. Internal use only.Vinhibit-bidi-mirroring Non-nil means don't mirror characters even when bidi context requires that. Intended for use during debugging and for testing bidi display; see biditest.el in the test suite.Vinhibit-try-window-id Inhibit try_window_id display optimization.Vinhibit-try-window-reusing Inhibit try_window_reusing display optimization.Vinhibit-try-cursor-movement Inhibit try_cursor_movement display optimization.Voverline-margin Space between overline and text, in pixels. The default value is 2: the height of the overline (1 pixel) plus 1 pixel margin to the character height.Vunderline-minimum-offset Minimum distance between baseline and underline. This can improve legibility of underlined text at small font sizes, particularly when using variable `x-use-underline-position-properties' with fonts that specify an UNDERLINE_POSITION relatively close to the baseline. The default value is 1.Vdisplay-hourglass Non-nil means show an hourglass pointer, when Emacs is busy. This feature only works when on a window system that can change cursor shapes.Vhourglass-delay Seconds to wait before displaying an hourglass pointer when Emacs is busy.Vpre-redisplay-function Function run just before redisplay. It is called with one argument, which is the set of windows that are to be redisplayed. This set can be nil (meaning, only the selected window), or t (meaning all windows).Vglyphless-char-display Char-table defining glyphless characters. Each element, if non-nil, should be one of the following: an ASCII acronym string: display this string in a box `hex-code': display the hexadecimal code of a character in a box `empty-box': display as an empty box `thin-space': display as 1-pixel width space `zero-width': don't display An element may also be a cons cell (GRAPHICAL . TEXT), which specifies the display method for graphical terminals and text terminals respectively. GRAPHICAL and TEXT should each have one of the values listed above. The char-table has one extra slot to control the display of a character for which no font is found. This slot only takes effect on graphical terminals. Its value should be an ASCII acronym string, `hex-code', `empty-box', or `thin-space'. The default is `empty-box'. If a character has a non-nil entry in an active display table, the display table takes effect; in this case, Emacs does not consult `glyphless-char-display' at all.Vdebug-on-message If non-nil, debug if a message matching this regexp is displayed.Vredisplay--all-windows-cause Vredisplay--mode-lines-cause Vredisplay--inhibit-bidi Non-nil means it is not safe to attempt bidi reordering for display.Vdisplay-raw-bytes-as-hex Non-nil means display raw bytes in hexadecimal format. The default is to use octal format (200) whereas hexadecimal (x80) may be more familiar to users.Smenu.o Fmenu-bar-menu-at-x-y Return the menu-bar menu on FRAME at pixel coordinates X, Y. X and Y are frame-relative pixel coordinates, assumed to define a location within the menu bar. If FRAME is nil or omitted, it defaults to the selected frame. Value is the symbol of the menu at X/Y, or nil if the specified coordinates are not within the FRAME's menu bar. The symbol can be used to look up the menu like this: (lookup-key MAP [menu-bar SYMBOL]) where MAP is either the current global map or the current local map, since menu-bar items come from both. This function can return non-nil only on a text-terminal frame or on an X frame that doesn't use any GUI toolkit. Otherwise, Emacs does not manage the menu bar and cannot convert coordinates into menu items. (fn X Y &optional FRAME)Fx-popup-menu Pop up a deck-of-cards menu and return user's selection. POSITION is a position specification. This is either a mouse button event or a list ((XOFFSET YOFFSET) WINDOW) where XOFFSET and YOFFSET are positions in pixels from the top left corner of WINDOW. (WINDOW may be a window or a frame object.) This controls the position of the top left of the menu as a whole. If POSITION is t, it means to use the current mouse position. MENU is a specifier for a menu. For the simplest case, MENU is a keymap. The menu items come from key bindings that have a menu string as well as a definition; actually, the "definition" in such a key binding looks like (STRING . REAL-DEFINITION). To give the menu a title, put a string into the keymap as a top-level element. If REAL-DEFINITION is nil, that puts a nonselectable string in the menu. Otherwise, REAL-DEFINITION should be a valid key binding definition. You can also use a list of keymaps as MENU. Then each keymap makes a separate pane. When MENU is a keymap or a list of keymaps, the return value is the list of events corresponding to the user's choice. Note that `x-popup-menu' does not actually execute the command bound to that sequence of events. Alternatively, you can specify a menu of multiple panes with a list of the form (TITLE PANE1 PANE2...), where each pane is a list of form (TITLE ITEM1 ITEM2...). Each ITEM is normally a cons cell (STRING . VALUE); but a string can appear as an item--that makes a nonselectable line in the menu. With this form of menu, the return value is VALUE from the chosen item. If POSITION is nil, don't display the menu at all, just precalculate the cached information about equivalent key sequences. If the user gets rid of the menu without making a valid choice, for instance by clicking the mouse away from a valid choice or by typing keyboard input, then this normally results in a quit and `x-popup-menu' does not return. But if POSITION is a mouse button event (indicating that the user invoked the menu with the mouse) then no quit occurs and `x-popup-menu' returns nil. (fn POSITION MENU)Fx-popup-dialog Pop up a dialog box and return user's selection. POSITION specifies which frame to use. This is normally a mouse button event or a window or frame. If POSITION is t, it means to use the frame the mouse is on. The dialog box appears in the middle of the specified frame. CONTENTS specifies the alternatives to display in the dialog box. It is a list of the form (DIALOG ITEM1 ITEM2...). Each ITEM is a cons cell (STRING . VALUE). The return value is VALUE from the chosen item. An ITEM may also be just a string--that makes a nonselectable item. An ITEM may also be nil--that means to put all preceding items on the left of the dialog box and all following items on the right. (By default, approximately half appear on each side.) If HEADER is non-nil, the frame title for the box is "Information", otherwise it is "Question". If the user gets rid of the dialog box without making a valid choice, for instance using the window manager, then this produces a quit and `x-popup-dialog' does not return. (fn POSITION CONTENTS &optional HEADER)Swindow.o Fwindowp Return t if OBJECT is a window and nil otherwise. (fn OBJECT)Fwindow-valid-p Return t if OBJECT is a valid window and nil otherwise. A valid window is either a window that displays a buffer or an internal window. Windows that have been deleted are not valid. (fn OBJECT)Fwindow-live-p Return t if OBJECT is a live window and nil otherwise. A live window is a window that displays a buffer. Internal windows and deleted windows are not live. (fn OBJECT)Fwindow-frame Return the frame that window WINDOW is on. WINDOW must be a valid window and defaults to the selected one. (fn &optional WINDOW)Fframe-root-window Return the root window of FRAME-OR-WINDOW. If omitted, FRAME-OR-WINDOW defaults to the currently selected frame. With a frame argument, return that frame's root window. With a window argument, return the root window of that window's frame. (fn &optional FRAME-OR-WINDOW)Fminibuffer-window Return the minibuffer window for frame FRAME. If FRAME is omitted or nil, it defaults to the selected frame. (fn &optional FRAME)Fwindow-minibuffer-p Return non-nil if WINDOW is a minibuffer window. WINDOW must be a valid window and defaults to the selected one. (fn &optional WINDOW)Fframe-first-window Return the topmost, leftmost live window on FRAME-OR-WINDOW. If omitted, FRAME-OR-WINDOW defaults to the currently selected frame. Else if FRAME-OR-WINDOW denotes a valid window, return the first window of that window's frame. If FRAME-OR-WINDOW denotes a live frame, return the first window of that frame. (fn &optional FRAME-OR-WINDOW)Fframe-selected-window Return the selected window of FRAME-OR-WINDOW. If omitted, FRAME-OR-WINDOW defaults to the currently selected frame. Else if FRAME-OR-WINDOW denotes a valid window, return the selected window of that window's frame. If FRAME-OR-WINDOW denotes a live frame, return the selected window of that frame. (fn &optional FRAME-OR-WINDOW)Fset-frame-selected-window Set selected window of FRAME to WINDOW. FRAME must be a live frame and defaults to the selected one. If FRAME is the selected frame, this makes WINDOW the selected window. Optional argument NORECORD non-nil means to neither change the order of recently selected windows nor the buffer list. WINDOW must denote a live window. Return WINDOW. (fn FRAME WINDOW &optional NORECORD)Fselected-window Return the selected window. The selected window is the window in which the standard cursor for selected windows appears and to which many commands apply. (fn)Fselect-window Select WINDOW which must be a live window. Also make WINDOW's frame the selected frame and WINDOW that frame's selected window. In addition, make WINDOW's buffer current and set its buffer's value of `point' to the value of WINDOW's `window-point'. Return WINDOW. Optional second arg NORECORD non-nil means do not put this buffer at the front of the buffer list and do not make this window the most recently selected one. Also, do not mark WINDOW for redisplay unless NORECORD equals the special symbol `mark-for-redisplay'. Run `buffer-list-update-hook' unless NORECORD is non-nil. Note that applications and internal routines often select a window temporarily for various purposes; mostly, to simplify coding. As a rule, such selections should be not recorded and therefore will not pollute `buffer-list-update-hook'. Selections that "really count" are those causing a visible change in the next redisplay of WINDOW's frame and should be always recorded. So if you think of running a function each time a window gets selected put it on `buffer-list-update-hook'. Also note that the main editor command loop sets the current buffer to the buffer of the selected window before each command. (fn WINDOW &optional NORECORD)Fwindow-buffer Return the buffer displayed in window WINDOW. If WINDOW is omitted or nil, it defaults to the selected window. Return nil for an internal window or a deleted window. (fn &optional WINDOW)Fwindow-parent Return the parent window of window WINDOW. WINDOW must be a valid window and defaults to the selected one. Return nil for a window with no parent (e.g. a root window). (fn &optional WINDOW)Fwindow-top-child Return the topmost child window of window WINDOW. WINDOW must be a valid window and defaults to the selected one. Return nil if WINDOW is a live window (live windows have no children). Return nil if WINDOW is an internal window whose children form a horizontal combination. (fn &optional WINDOW)Fwindow-left-child Return the leftmost child window of window WINDOW. WINDOW must be a valid window and defaults to the selected one. Return nil if WINDOW is a live window (live windows have no children). Return nil if WINDOW is an internal window whose children form a vertical combination. (fn &optional WINDOW)Fwindow-next-sibling Return the next sibling window of window WINDOW. WINDOW must be a valid window and defaults to the selected one. Return nil if WINDOW has no next sibling. (fn &optional WINDOW)Fwindow-prev-sibling Return the previous sibling window of window WINDOW. WINDOW must be a valid window and defaults to the selected one. Return nil if WINDOW has no previous sibling. (fn &optional WINDOW)Fwindow-combination-limit Return combination limit of window WINDOW. WINDOW must be a valid window used in horizontal or vertical combination. If the return value is nil, child windows of WINDOW can be recombined with WINDOW's siblings. A return value of t means that child windows of WINDOW are never (re-)combined with WINDOW's siblings. (fn WINDOW)Fset-window-combination-limit Set combination limit of window WINDOW to LIMIT; return LIMIT. WINDOW must be a valid window used in horizontal or vertical combination. If LIMIT is nil, child windows of WINDOW can be recombined with WINDOW's siblings. LIMIT t means that child windows of WINDOW are never (re-)combined with WINDOW's siblings. Other values are reserved for future use. (fn WINDOW LIMIT)Fwindow-use-time Return the use time of window WINDOW. WINDOW must be a live window and defaults to the selected one. The window with the highest use time is the most recently selected one. The window with the lowest use time is the least recently selected one. (fn &optional WINDOW)Fwindow-pixel-width Return the width of window WINDOW in pixels. WINDOW must be a valid window and defaults to the selected one. The return value includes the fringes and margins of WINDOW as well as any vertical dividers or scroll bars belonging to WINDOW. If WINDOW is an internal window, its pixel width is the width of the screen areas spanned by its children. (fn &optional WINDOW)Fwindow-pixel-height Return the height of window WINDOW in pixels. WINDOW must be a valid window and defaults to the selected one. The return value includes the mode line and header line and the bottom divider, if any. If WINDOW is an internal window, its pixel height is the height of the screen areas spanned by its children. (fn &optional WINDOW)Fwindow-pixel-width-before-size-change Return pixel width of window WINDOW before last size changes. WINDOW must be a valid window and defaults to the selected one. The return value is the pixel width of WINDOW at the last time `window-size-change-functions' was run. It's zero if WINDOW was made after that. (fn &optional WINDOW)Fwindow-pixel-height-before-size-change Return pixel height of window WINDOW before last size changes. WINDOW must be a valid window and defaults to the selected one. The return value is the pixel height of WINDOW at the last time `window-size-change-functions' was run. It's zero if WINDOW was made after that. (fn &optional WINDOW)Fwindow-total-height Return the height of window WINDOW in lines. WINDOW must be a valid window and defaults to the selected one. The return value includes the heights of WINDOW's mode and header line and its bottom divider, if any. If WINDOW is an internal window, the total height is the height of the screen areas spanned by its children. If WINDOW's pixel height is not an integral multiple of its frame's character height, the number of lines occupied by WINDOW is rounded internally. This is done in a way such that, if WINDOW is a parent window, the sum of the total heights of all its children internally equals the total height of WINDOW. If the optional argument ROUND is `ceiling', return the smallest integer larger than WINDOW's pixel height divided by the character height of WINDOW's frame. ROUND `floor' means to return the largest integer smaller than WINDOW's pixel height divided by the character height of WINDOW's frame. Any other value of ROUND means to return the internal total height of WINDOW. (fn &optional WINDOW ROUND)Fwindow-total-width Return the total width of window WINDOW in columns. WINDOW must be a valid window and defaults to the selected one. The return value includes the widths of WINDOW's fringes, margins, scroll bars and its right divider, if any. If WINDOW is an internal window, the total width is the width of the screen areas spanned by its children. If WINDOW's pixel width is not an integral multiple of its frame's character width, the number of lines occupied by WINDOW is rounded internally. This is done in a way such that, if WINDOW is a parent window, the sum of the total widths of all its children internally equals the total width of WINDOW. If the optional argument ROUND is `ceiling', return the smallest integer larger than WINDOW's pixel width divided by the character width of WINDOW's frame. ROUND `floor' means to return the largest integer smaller than WINDOW's pixel width divided by the character width of WINDOW's frame. Any other value of ROUND means to return the internal total width of WINDOW. (fn &optional WINDOW ROUND)Fwindow-new-total Return the new total size of window WINDOW. WINDOW must be a valid window and defaults to the selected one. The new total size of WINDOW is the value set by the last call of `set-window-new-total' for WINDOW. If it is valid, it will be shortly installed as WINDOW's total height (see `window-total-height') or total width (see `window-total-width'). (fn &optional WINDOW)Fwindow-normal-size Return the normal height of window WINDOW. WINDOW must be a valid window and defaults to the selected one. If HORIZONTAL is non-nil, return the normal width of WINDOW. The normal height of a frame's root window or a window that is horizontally combined (a window that has a left or right sibling) is 1.0. The normal height of a window that is vertically combined (has a sibling above or below) is the fraction of the window's height with respect to its parent. The sum of the normal heights of all windows in a vertical combination equals 1.0. Similarly, the normal width of a frame's root window or a window that is vertically combined equals 1.0. The normal width of a window that is horizontally combined is the fraction of the window's width with respect to its parent. The sum of the normal widths of all windows in a horizontal combination equals 1.0. The normal sizes of windows are used to restore the proportional sizes of windows after they have been shrunk to their minimum sizes; for example when a frame is temporarily made very small and afterwards gets re-enlarged to its previous size. (fn &optional WINDOW HORIZONTAL)Fwindow-new-normal Return new normal size of window WINDOW. WINDOW must be a valid window and defaults to the selected one. The new normal size of WINDOW is the value set by the last call of `set-window-new-normal' for WINDOW. If valid, it will be shortly installed as WINDOW's normal size (see `window-normal-size'). (fn &optional WINDOW)Fwindow-new-pixel Return new pixel size of window WINDOW. WINDOW must be a valid window and defaults to the selected one. The new pixel size of WINDOW is the value set by the last call of `set-window-new-pixel' for WINDOW. If it is valid, it will be shortly installed as WINDOW's pixel height (see `window-pixel-height') or pixel width (see `window-pixel-width'). (fn &optional WINDOW)Fwindow-pixel-left Return left pixel edge of window WINDOW. WINDOW must be a valid window and defaults to the selected one. (fn &optional WINDOW)Fwindow-pixel-top Return top pixel edge of window WINDOW. WINDOW must be a valid window and defaults to the selected one. (fn &optional WINDOW)Fwindow-left-column Return left column of window WINDOW. This is the distance, in columns, between the left edge of WINDOW and the left edge of the frame's window area. For instance, the return value is 0 if there is no window to the left of WINDOW. WINDOW must be a valid window and defaults to the selected one. (fn &optional WINDOW)Fwindow-top-line Return top line of window WINDOW. This is the distance, in lines, between the top of WINDOW and the top of the frame's window area. For instance, the return value is 0 if there is no window above WINDOW. WINDOW must be a valid window and defaults to the selected one. (fn &optional WINDOW)Fwindow-body-height Return the height of WINDOW's text area. WINDOW must be a live window and defaults to the selected one. Optional argument PIXELWISE non-nil means return the height of WINDOW's text area in pixels. The return value does not include the mode line or header line or any horizontal divider. If PIXELWISE is nil, return the largest integer smaller than WINDOW's pixel height divided by the character height of WINDOW's frame. This means that if a line at the bottom of the text area is only partially visible, that line is not counted. (fn &optional WINDOW PIXELWISE)Fwindow-body-width Return the width of WINDOW's text area. WINDOW must be a live window and defaults to the selected one. Optional argument PIXELWISE non-nil means return the width in pixels. The return value does not include any vertical dividers, fringes or marginal areas, or scroll bars. If PIXELWISE is nil, return the largest integer smaller than WINDOW's pixel width divided by the character width of WINDOW's frame. This means that if a column at the right of the text area is only partially visible, that column is not counted. Note that the returned value includes the column reserved for the continuation glyph. (fn &optional WINDOW PIXELWISE)Fwindow-mode-line-height Return the height in pixels of WINDOW's mode-line. WINDOW must be a live window and defaults to the selected one. (fn &optional WINDOW)Fwindow-header-line-height Return the height in pixels of WINDOW's header-line. WINDOW must be a live window and defaults to the selected one. (fn &optional WINDOW)Fwindow-right-divider-width Return the width in pixels of WINDOW's right divider. WINDOW must be a live window and defaults to the selected one. (fn &optional WINDOW)Fwindow-bottom-divider-width Return the width in pixels of WINDOW's bottom divider. WINDOW must be a live window and defaults to the selected one. (fn &optional WINDOW)Fwindow-scroll-bar-width Return the width in pixels of WINDOW's vertical scrollbar. WINDOW must be a live window and defaults to the selected one. (fn &optional WINDOW)Fwindow-scroll-bar-height Return the height in pixels of WINDOW's horizontal scrollbar. WINDOW must be a live window and defaults to the selected one. (fn &optional WINDOW)Fwindow-hscroll Return the number of columns by which WINDOW is scrolled from left margin. WINDOW must be a live window and defaults to the selected one. (fn &optional WINDOW)Fset-window-hscroll Set number of columns WINDOW is scrolled from left margin to NCOL. WINDOW must be a live window and defaults to the selected one. Clip the number to a reasonable value if out of range. Return the new number. NCOL should be zero or positive. Note that if `automatic-hscrolling' is non-nil, you cannot scroll the window so that the location of point moves off-window. (fn WINDOW NCOL)Fwindow-redisplay-end-trigger Return WINDOW's redisplay end trigger value. WINDOW must be a live window and defaults to the selected one. See `set-window-redisplay-end-trigger' for more information. (fn &optional WINDOW)Fset-window-redisplay-end-trigger Set WINDOW's redisplay end trigger value to VALUE. WINDOW must be a live window and defaults to the selected one. VALUE should be a buffer position (typically a marker) or nil. If it is a buffer position, then if redisplay in WINDOW reaches a position beyond VALUE, the functions in `redisplay-end-trigger-functions' are called with two arguments: WINDOW, and the end trigger value. Afterwards the end-trigger value is reset to nil. (fn WINDOW VALUE)Fcoordinates-in-window-p Return non-nil if COORDINATES are in WINDOW. WINDOW must be a live window and defaults to the selected one. COORDINATES is a cons of the form (X . Y), X and Y being distances measured in characters from the upper-left corner of the frame. (0 . 0) denotes the character in the upper left corner of the frame. If COORDINATES are in the text portion of WINDOW, the coordinates relative to the window are returned. If they are in the bottom divider of WINDOW, `bottom-divider' is returned. If they are in the right divider of WINDOW, `right-divider' is returned. If they are in the mode line of WINDOW, `mode-line' is returned. If they are in the header line of WINDOW, `header-line' is returned. If they are in the left fringe of WINDOW, `left-fringe' is returned. If they are in the right fringe of WINDOW, `right-fringe' is returned. If they are on the border between WINDOW and its right sibling, `vertical-line' is returned. If they are in the windows's left or right marginal areas, `left-margin' or `right-margin' is returned. (fn COORDINATES WINDOW)Fwindow-at Return window containing coordinates X and Y on FRAME. FRAME must be a live frame and defaults to the selected one. The top left corner of the frame is considered to be row 0, column 0. (fn X Y &optional FRAME)Fwindow-point Return current value of point in WINDOW. WINDOW must be a live window and defaults to the selected one. For a nonselected window, this is the value point would have if that window were selected. Note that, when WINDOW is selected, the value returned is the same as that returned by `point' for WINDOW's buffer. It would be more strictly correct to return the top-level value of `point', outside of any `save-excursion' forms. But that is hard to define. (fn &optional WINDOW)Fwindow-old-point Return old value of point in WINDOW. WINDOW must be a live window and defaults to the selected one. (fn &optional WINDOW)Fwindow-start Return position at which display currently starts in WINDOW. WINDOW must be a live window and defaults to the selected one. This is updated by redisplay or by calling `set-window-start'. (fn &optional WINDOW)Fwindow-end Return position at which display currently ends in WINDOW. WINDOW must be a live window and defaults to the selected one. This is updated by redisplay, when it runs to completion. Simply changing the buffer text or setting `window-start' does not update this value. Return nil if there is no recorded value. (This can happen if the last redisplay of WINDOW was preempted, and did not finish.) If UPDATE is non-nil, compute the up-to-date position if it isn't already recorded. (fn &optional WINDOW UPDATE)Fset-window-point Make point value in WINDOW be at position POS in WINDOW's buffer. WINDOW must be a live window and defaults to the selected one. Return POS. (fn WINDOW POS)Fset-window-start Make display in WINDOW start at position POS in WINDOW's buffer. WINDOW must be a live window and defaults to the selected one. Return POS. Optional third arg NOFORCE non-nil inhibits next redisplay from overriding motion of point in order to display at this exact start. For reliable setting of WINDOW start position, make sure point is at a position that will be visible when that start is in effect, otherwise there's a chance POS will be disregarded, e.g., if point winds up in a partially-visible line. (fn WINDOW POS &optional NOFORCE)Fpos-visible-in-window-p Return non-nil if position POS is currently on the frame in WINDOW. WINDOW must be a live window and defaults to the selected one. Return nil if that position is scrolled vertically out of view. If a character is only partially visible, nil is returned, unless the optional argument PARTIALLY is non-nil. If POS is only out of view because of horizontal scrolling, return non-nil. If POS is t, it specifies either the first position displayed on the last visible screen line in WINDOW, or the end-of-buffer position, whichever comes first. POS defaults to point in WINDOW; WINDOW defaults to the selected window. If POS is visible, return t if PARTIALLY is nil; if PARTIALLY is non-nil, the return value is a list of 2 or 6 elements (X Y [RTOP RBOT ROWH VPOS]), where X and Y are the pixel coordinates relative to the top left corner of the window. The remaining elements are omitted if the character after POS is fully visible; otherwise, RTOP and RBOT are the number of pixels off-window at the top and bottom of the screen line ("row") containing POS, ROWH is the visible height of that row, and VPOS is the row number (zero-based). (fn &optional POS WINDOW PARTIALLY)Fwindow-line-height Return height in pixels of text line LINE in window WINDOW. WINDOW must be a live window and defaults to the selected one. Return height of current line if LINE is omitted or nil. Return height of header or mode line if LINE is `header-line' or `mode-line'. Otherwise, LINE is a text line number starting from 0. A negative number counts from the end of the window. Value is a list (HEIGHT VPOS YPOS OFFBOT), where HEIGHT is the height in pixels of the visible part of the line, VPOS and YPOS are the vertical position in lines and pixels of the line, relative to the top of the first text line, and OFFBOT is the number of off-window pixels at the bottom of the text line. If there are off-window pixels at the top of the (first) text line, YPOS is negative. Return nil if window display is not up-to-date. In that case, use `pos-visible-in-window-p' to obtain the information. (fn &optional LINE WINDOW)Fwindow-lines-pixel-dimensions Return pixel dimensions of WINDOW's lines. The return value is a list of the x- and y-coordinates of the lower right corner of the last character of each line. Return nil if the current glyph matrix of WINDOW is not up-to-date. Optional argument WINDOW specifies the window whose lines' dimensions shall be returned. Nil or omitted means to return the dimensions for the selected window. FIRST, if non-nil, specifies the index of the first line whose dimensions shall be returned. If FIRST is nil and BODY is non-nil, start with the first text line of WINDOW. Otherwise, start with the first line of WINDOW. LAST, if non-nil, specifies the last line whose dimensions shall be returned. If LAST is nil and BODY is non-nil, the last line is the last line of the body (text area) of WINDOW. Otherwise, last is the last line of WINDOW. INVERSE, if nil, means that the y-pixel value returned for a specific line specifies the distance in pixels from the left edge (body edge if BODY is non-nil) of WINDOW to the right edge of the last glyph of that line. INVERSE non-nil means that the y-pixel value returned for a specific line specifies the distance in pixels from the right edge of the last glyph of that line to the right edge (body edge if BODY is non-nil) of WINDOW. LEFT non-nil means to return the x- and y-coordinates of the lower left corner of the leftmost character on each line. This is the value that should be used for buffers that mostly display text from right to left. If LEFT is non-nil and INVERSE is nil, this means that the y-pixel value returned for a specific line specifies the distance in pixels from the left edge of the last (leftmost) glyph of that line to the right edge (body edge if BODY is non-nil) of WINDOW. If LEFT and INVERSE are both non-nil, the y-pixel value returned for a specific line specifies the distance in pixels from the left edge (body edge if BODY is non-nil) of WINDOW to the left edge of the last (leftmost) glyph of that line. Normally, the value of this function is not available while Emacs is busy, for example, when processing a command. It should be retrievable though when run from an idle timer with a delay of zero seconds. (fn &optional WINDOW FIRST LAST BODY INVERSE LEFT)Fwindow-dedicated-p Return non-nil when WINDOW is dedicated to its buffer. More precisely, return the value assigned by the last call of `set-window-dedicated-p' for WINDOW. Return nil if that function was never called with WINDOW as its argument, or the value set by that function was internally reset since its last call. WINDOW must be a live window and defaults to the selected one. When a window is dedicated to its buffer, `display-buffer' will refrain from displaying another buffer in it. `get-lru-window' and `get-largest-window' treat dedicated windows specially. `delete-windows-on', `replace-buffer-in-windows', `quit-window' and `kill-buffer' can delete a dedicated window and the containing frame. Functions like `set-window-buffer' may change the buffer displayed by a window, unless that window is "strongly" dedicated to its buffer, that is the value returned by `window-dedicated-p' is t. (fn &optional WINDOW)Fset-window-dedicated-p Mark WINDOW as dedicated according to FLAG. WINDOW must be a live window and defaults to the selected one. FLAG non-nil means mark WINDOW as dedicated to its buffer. FLAG nil means mark WINDOW as non-dedicated. Return FLAG. When a window is dedicated to its buffer, `display-buffer' will refrain from displaying another buffer in it. `get-lru-window' and `get-largest-window' treat dedicated windows specially. `delete-windows-on', `replace-buffer-in-windows', `quit-window', `quit-restore-window' and `kill-buffer' can delete a dedicated window and the containing frame. As a special case, if FLAG is t, mark WINDOW as "strongly" dedicated to its buffer. Functions like `set-window-buffer' may change the buffer displayed by a window, unless that window is strongly dedicated to its buffer. If and when `set-window-buffer' displays another buffer in a window, it also makes sure that the window is no more dedicated. (fn WINDOW FLAG)Fwindow-prev-buffers Return buffers previously shown in WINDOW. WINDOW must be a live window and defaults to the selected one. The return value is a list of elements (BUFFER WINDOW-START POS), where BUFFER is a buffer, WINDOW-START is the start position of the window for that buffer, and POS is a window-specific point value. (fn &optional WINDOW)Fset-window-prev-buffers Set WINDOW's previous buffers to PREV-BUFFERS. WINDOW must be a live window and defaults to the selected one. PREV-BUFFERS should be a list of elements (BUFFER WINDOW-START POS), where BUFFER is a buffer, WINDOW-START is the start position of the window for that buffer, and POS is a window-specific point value. (fn WINDOW PREV-BUFFERS)Fwindow-next-buffers Return list of buffers recently re-shown in WINDOW. WINDOW must be a live window and defaults to the selected one. (fn &optional WINDOW)Fset-window-next-buffers Set WINDOW's next buffers to NEXT-BUFFERS. WINDOW must be a live window and defaults to the selected one. NEXT-BUFFERS should be a list of buffers. (fn WINDOW NEXT-BUFFERS)Fwindow-parameters Return the parameters of WINDOW and their values. WINDOW must be a valid window and defaults to the selected one. The return value is a list of elements of the form (PARAMETER . VALUE). (fn &optional WINDOW)Fwindow-parameter Return WINDOW's value for PARAMETER. WINDOW can be any window and defaults to the selected one. (fn WINDOW PARAMETER)Fset-window-parameter Set WINDOW's value of PARAMETER to VALUE. WINDOW can be any window and defaults to the selected one. Return VALUE. (fn WINDOW PARAMETER VALUE)Fwindow-display-table Return the display-table that WINDOW is using. WINDOW must be a live window and defaults to the selected one. (fn &optional WINDOW)Fset-window-display-table Set WINDOW's display-table to TABLE. WINDOW must be a live window and defaults to the selected one. (fn WINDOW TABLE)Fnext-window Return live window after WINDOW in the cyclic ordering of windows. WINDOW must be a live window and defaults to the selected one. The optional arguments MINIBUF and ALL-FRAMES specify the set of windows to consider. MINIBUF nil or omitted means consider the minibuffer window only if the minibuffer is active. MINIBUF t means consider the minibuffer window even if the minibuffer is not active. Any other value means do not consider the minibuffer window even if the minibuffer is active. ALL-FRAMES nil or omitted means consider all windows on WINDOW's frame, plus the minibuffer window if specified by the MINIBUF argument. If the minibuffer counts, consider all windows on all frames that share that minibuffer too. The following non-nil values of ALL-FRAMES have special meanings: - t means consider all windows on all existing frames. - `visible' means consider all windows on all visible frames. - 0 (the number zero) means consider all windows on all visible and iconified frames. - A frame means consider all windows on that frame only. Anything else means consider all windows on WINDOW's frame and no others. If you use consistent values for MINIBUF and ALL-FRAMES, you can use `next-window' to iterate through the entire cycle of acceptable windows, eventually ending up back at the window you started with. `previous-window' traverses the same cycle, in the reverse order. (fn &optional WINDOW MINIBUF ALL-FRAMES)Fprevious-window Return live window before WINDOW in the cyclic ordering of windows. WINDOW must be a live window and defaults to the selected one. The optional arguments MINIBUF and ALL-FRAMES specify the set of windows to consider. MINIBUF nil or omitted means consider the minibuffer window only if the minibuffer is active. MINIBUF t means consider the minibuffer window even if the minibuffer is not active. Any other value means do not consider the minibuffer window even if the minibuffer is active. ALL-FRAMES nil or omitted means consider all windows on WINDOW's frame, plus the minibuffer window if specified by the MINIBUF argument. If the minibuffer counts, consider all windows on all frames that share that minibuffer too. The following non-nil values of ALL-FRAMES have special meanings: - t means consider all windows on all existing frames. - `visible' means consider all windows on all visible frames. - 0 (the number zero) means consider all windows on all visible and iconified frames. - A frame means consider all windows on that frame only. Anything else means consider all windows on WINDOW's frame and no others. If you use consistent values for MINIBUF and ALL-FRAMES, you can use `previous-window' to iterate through the entire cycle of acceptable windows, eventually ending up back at the window you started with. `next-window' traverses the same cycle, in the reverse order. (fn &optional WINDOW MINIBUF ALL-FRAMES)Fwindow-list Return a list of windows on FRAME, starting with WINDOW. FRAME nil or omitted means use the selected frame. WINDOW nil or omitted means use the window selected within FRAME. MINIBUF t means include the minibuffer window, even if it isn't active. MINIBUF nil or omitted means include the minibuffer window only if it's active. MINIBUF neither nil nor t means never include the minibuffer window. (fn &optional FRAME MINIBUF WINDOW)Fwindow-list-1 Return a list of all live windows. WINDOW specifies the first window to list and defaults to the selected window. Optional argument MINIBUF nil or omitted means consider the minibuffer window only if the minibuffer is active. MINIBUF t means consider the minibuffer window even if the minibuffer is not active. Any other value means do not consider the minibuffer window even if the minibuffer is active. Optional argument ALL-FRAMES nil or omitted means consider all windows on WINDOW's frame, plus the minibuffer window if specified by the MINIBUF argument. If the minibuffer counts, consider all windows on all frames that share that minibuffer too. The following non-nil values of ALL-FRAMES have special meanings: - t means consider all windows on all existing frames. - `visible' means consider all windows on all visible frames. - 0 (the number zero) means consider all windows on all visible and iconified frames. - A frame means consider all windows on that frame only. Anything else means consider all windows on WINDOW's frame and no others. If WINDOW is not on the list of windows returned, some other window will be listed first but no error is signaled. (fn &optional WINDOW MINIBUF ALL-FRAMES)Fget-buffer-window Return a window currently displaying BUFFER-OR-NAME, or nil if none. BUFFER-OR-NAME may be a buffer or a buffer name and defaults to the current buffer. The optional argument ALL-FRAMES specifies the frames to consider: - t means consider all windows on all existing frames. - `visible' means consider all windows on all visible frames. - 0 (the number zero) means consider all windows on all visible and iconified frames. - A frame means consider all windows on that frame only. Any other value of ALL-FRAMES means consider all windows on the selected frame and no others. (fn &optional BUFFER-OR-NAME ALL-FRAMES)Fdelete-other-windows-internal Make WINDOW fill its frame. Only the frame WINDOW is on is affected. WINDOW must be a valid window and defaults to the selected one. Optional argument ROOT, if non-nil, must specify an internal window such that WINDOW is in its window subtree. If this is the case, replace ROOT by WINDOW and leave alone any windows not part of ROOT's subtree. When WINDOW is live try to reduce display jumps by keeping the text previously visible in WINDOW in the same place on the frame. Doing this depends on the value of (window-start WINDOW), so if calling this function in a program gives strange scrolling, make sure the window-start value is reasonable when this function is called. (fn &optional WINDOW ROOT)Frun-window-configuration-change-hook Run `window-configuration-change-hook' for FRAME. If FRAME is omitted or nil, it defaults to the selected frame. (fn &optional FRAME)Frun-window-scroll-functions Run `window-scroll-functions' for WINDOW. If WINDOW is omitted or nil, it defaults to the selected window. (fn &optional WINDOW)Fset-window-buffer Make WINDOW display BUFFER-OR-NAME. WINDOW must be a live window and defaults to the selected one. BUFFER-OR-NAME must be a buffer or the name of an existing buffer. Optional third argument KEEP-MARGINS non-nil means that WINDOW's current display margins, fringe widths, and scroll bar settings are preserved; the default is to reset these from the local settings for BUFFER-OR-NAME or the frame defaults. Return nil. This function throws an error when WINDOW is strongly dedicated to its buffer (that is `window-dedicated-p' returns t for WINDOW) and does not already display BUFFER-OR-NAME. This function runs `window-scroll-functions' before running `window-configuration-change-hook'. (fn WINDOW BUFFER-OR-NAME &optional KEEP-MARGINS)Fforce-window-update Force all windows to be updated on next redisplay. If optional arg OBJECT is a window, force redisplay of that window only. If OBJECT is a buffer or buffer name, force redisplay of all windows displaying that buffer. (fn &optional OBJECT)Fset-window-new-pixel Set new pixel size of WINDOW to SIZE. WINDOW must be a valid window and defaults to the selected one. Return SIZE. Optional argument ADD non-nil means add SIZE to the new pixel size of WINDOW and return the sum. The new pixel size of WINDOW, if valid, will be shortly installed as WINDOW's pixel height (see `window-pixel-height') or pixel width (see `window-pixel-width'). Note: This function does not operate on any child windows of WINDOW. (fn WINDOW SIZE &optional ADD)Fset-window-new-total Set new total size of WINDOW to SIZE. WINDOW must be a valid window and defaults to the selected one. Return SIZE. Optional argument ADD non-nil means add SIZE to the new total size of WINDOW and return the sum. The new total size of WINDOW, if valid, will be shortly installed as WINDOW's total height (see `window-total-height') or total width (see `window-total-width'). Note: This function does not operate on any child windows of WINDOW. (fn WINDOW SIZE &optional ADD)Fset-window-new-normal Set new normal size of WINDOW to SIZE. WINDOW must be a valid window and defaults to the selected one. Return SIZE. The new normal size of WINDOW, if valid, will be shortly installed as WINDOW's normal size (see `window-normal-size'). Note: This function does not operate on any child windows of WINDOW. (fn WINDOW &optional SIZE)Fwindow-resize-apply Apply requested size values for window-tree of FRAME. If FRAME is omitted or nil, it defaults to the selected frame. Optional argument HORIZONTAL omitted or nil means apply requested height values. HORIZONTAL non-nil means apply requested width values. The requested size values are those set by `set-window-new-pixel' and `set-window-new-normal'. This function checks whether the requested values sum up to a valid window layout, recursively assigns the new sizes of all child windows and calculates and assigns the new start positions of these windows. Return t if the requested values have been applied correctly, nil otherwise. Note: This function does not check any of `window-fixed-size-p', `window-min-height' or `window-min-width'. All these checks have to be applied on the Elisp level. (fn &optional FRAME HORIZONTAL)Fwindow-resize-apply-total Apply requested total size values for window-tree of FRAME. If FRAME is omitted or nil, it defaults to the selected frame. This function does not assign pixel or normal size values. You should have run `window-resize-apply' before running this. Optional argument HORIZONTAL omitted or nil means apply requested height values. HORIZONTAL non-nil means apply requested width values. (fn &optional FRAME HORIZONTAL)Fsplit-window-internal Split window OLD. Second argument PIXEL-SIZE specifies the number of pixels of the new window. It must be a positive integer. Third argument SIDE nil (or `below') specifies that the new window shall be located below WINDOW. SIDE `above' means the new window shall be located above WINDOW. In both cases PIXEL-SIZE specifies the pixel height of the new window including space reserved for the mode and/or header line. SIDE t (or `right') specifies that the new window shall be located on the right side of WINDOW. SIDE `left' means the new window shall be located on the left of WINDOW. In both cases PIXEL-SIZE specifies the width of the new window including space reserved for fringes and the scrollbar or a divider column. Fourth argument NORMAL-SIZE specifies the normal size of the new window according to the SIDE argument. The new pixel and normal sizes of all involved windows must have been set correctly. See the code of `split-window' for how this is done. (fn OLD PIXEL-SIZE SIDE NORMAL-SIZE)Fdelete-window-internal Remove WINDOW from its frame. WINDOW defaults to the selected window. Return nil. Signal an error when WINDOW is the only window on its frame. (fn WINDOW)Fresize-mini-window-internal Resize minibuffer window WINDOW. (fn WINDOW)Fscroll-up Scroll text of selected window upward ARG lines. If ARG is omitted or nil, scroll upward by a near full screen. A near full screen is `next-screen-context-lines' less than a full screen. Negative ARG means scroll downward. If ARG is the atom `-', scroll downward by nearly full screen. When calling from a program, supply as argument a number, nil, or `-'. (fn &optional ARG)Fscroll-down Scroll text of selected window down ARG lines. If ARG is omitted or nil, scroll down by a near full screen. A near full screen is `next-screen-context-lines' less than a full screen. Negative ARG means scroll upward. If ARG is the atom `-', scroll upward by nearly full screen. When calling from a program, supply as argument a number, nil, or `-'. (fn &optional ARG)Fother-window-for-scrolling Return the other window for "other window scroll" commands. If `other-window-scroll-buffer' is non-nil, a window showing that buffer is used. If in the minibuffer, `minibuffer-scroll-window' if non-nil specifies the window. This takes precedence over `other-window-scroll-buffer'. (fn)Fscroll-other-window Scroll next window upward ARG lines; or near full screen if no ARG. A near full screen is `next-screen-context-lines' less than a full screen. The next window is the one below the current one; or the one at the top if the current one is at the bottom. Negative ARG means scroll downward. If ARG is the atom `-', scroll downward by nearly full screen. When calling from a program, supply as argument a number, nil, or `-'. If `other-window-scroll-buffer' is non-nil, scroll the window showing that buffer, popping the buffer up if necessary. If in the minibuffer, `minibuffer-scroll-window' if non-nil specifies the window to scroll. This takes precedence over `other-window-scroll-buffer'. (fn &optional ARG)Fscroll-left Scroll selected window display ARG columns left. Default for ARG is window width minus 2. Value is the total amount of leftward horizontal scrolling in effect after the change. If SET-MINIMUM is non-nil, the new scroll amount becomes the lower bound for automatic scrolling, i.e. automatic scrolling will not scroll a window to a column less than the value returned by this function. This happens in an interactive call. (fn &optional ARG SET-MINIMUM)Fscroll-right Scroll selected window display ARG columns right. Default for ARG is window width minus 2. Value is the total amount of leftward horizontal scrolling in effect after the change. If SET-MINIMUM is non-nil, the new scroll amount becomes the lower bound for automatic scrolling, i.e. automatic scrolling will not scroll a window to a column less than the value returned by this function. This happens in an interactive call. (fn &optional ARG SET-MINIMUM)Fminibuffer-selected-window Return window selected just before minibuffer window was selected. Return nil if the selected window is not a minibuffer window. (fn)Frecenter Center point in selected window and maybe redisplay frame. With a numeric prefix argument ARG, recenter putting point on screen line ARG relative to the selected window. If ARG is negative, it counts up from the bottom of the window. (ARG should be less than the height of the window.) If ARG is omitted or nil, then recenter with point on the middle line of the selected window; if the variable `recenter-redisplay' is non-nil, also erase the entire frame and redraw it (when `auto-resize-tool-bars' is set to `grow-only', this resets the tool-bar's height to the minimum height needed); if `recenter-redisplay' has the special value `tty', then only tty frames are redrawn. Just C-u as prefix means put point in the center of the window and redisplay normally--don't erase and redraw the frame. (fn &optional ARG)Fwindow-text-width Return the width in columns of the text display area of WINDOW. WINDOW must be a live window and defaults to the selected one. The returned width does not include dividers, scrollbars, margins, fringes, nor any partial-width columns at the right of the text area. Optional argument PIXELWISE non-nil, means to return the width in pixels. (fn &optional WINDOW PIXELWISE)Fwindow-text-height Return the height in lines of the text display area of WINDOW. WINDOW must be a live window and defaults to the selected one. The returned height does not include dividers, the mode line, any header line, nor any partial-height lines at the bottom of the text area. Optional argument PIXELWISE non-nil, means to return the height in pixels. (fn &optional WINDOW PIXELWISE)Fmove-to-window-line Position point relative to window. ARG nil means position point at center of window. Else, ARG specifies vertical position within the window; zero means top of window, negative means relative to bottom of window, -1 meaning the last fully visible display line of the window. Value is the screen line of the window point moved to, counting from the top of the window. (fn ARG)Fwindow-configuration-p Return t if OBJECT is a window-configuration object. (fn OBJECT)Fwindow-configuration-frame Return the frame that CONFIG, a window-configuration object, is about. (fn CONFIG)Fset-window-configuration Set the configuration of windows and buffers as specified by CONFIGURATION. CONFIGURATION must be a value previously returned by `current-window-configuration' (which see). If CONFIGURATION was made from a frame that is now deleted, only frame-independent values can be restored. In this case, the return value is nil. Otherwise the value is t. (fn CONFIGURATION)Fcurrent-window-configuration Return an object representing the current window configuration of FRAME. If FRAME is nil or omitted, use the selected frame. This describes the number of windows, their sizes and current buffers, and for each displayed buffer, where display starts, and the position of point. An exception is made for point in the current buffer: its value is -not- saved. This also records the currently selected frame, and FRAME's focus redirection (see `redirect-frame-focus'). The variable `window-persistent-parameters' specifies which window parameters are saved by this function. (fn &optional FRAME)Fset-window-margins Set width of marginal areas of window WINDOW. WINDOW must be a live window and defaults to the selected one. Second arg LEFT-WIDTH specifies the number of character cells to reserve for the left marginal area. Optional third arg RIGHT-WIDTH does the same for the right marginal area. A nil width parameter means no margin. Leave margins unchanged if WINDOW is not large enough to accommodate margins of the desired width. Return t if any margin was actually changed and nil otherwise. (fn WINDOW LEFT-WIDTH &optional RIGHT-WIDTH)Fwindow-margins Get width of marginal areas of window WINDOW. WINDOW must be a live window and defaults to the selected one. Value is a cons of the form (LEFT-WIDTH . RIGHT-WIDTH). If a marginal area does not exist, its width will be returned as nil. (fn &optional WINDOW)Fset-window-fringes Set the fringe widths of window WINDOW. WINDOW must be a live window and defaults to the selected one. Second arg LEFT-WIDTH specifies the number of pixels to reserve for the left fringe. Optional third arg RIGHT-WIDTH specifies the right fringe width. If a fringe width arg is nil, that means to use the frame's default fringe width. Default fringe widths can be set with the command `set-fringe-style'. If optional fourth arg OUTSIDE-MARGINS is non-nil, draw the fringes outside of the display margins. By default, fringes are drawn between display marginal areas and the text area. Leave fringes unchanged if WINDOW is not large enough to accommodate fringes of the desired width. Return t if any fringe was actually changed and nil otherwise. (fn WINDOW LEFT-WIDTH &optional RIGHT-WIDTH OUTSIDE-MARGINS)Fwindow-fringes Get width of fringes of window WINDOW. WINDOW must be a live window and defaults to the selected one. Value is a list of the form (LEFT-WIDTH RIGHT-WIDTH OUTSIDE-MARGINS). (fn &optional WINDOW)Fset-window-scroll-bars Set width and type of scroll bars of window WINDOW. WINDOW must be a live window and defaults to the selected one. Second parameter WIDTH specifies the pixel width for the vertical scroll bar. If WIDTH is nil, use the scroll bar width of WINDOW's frame. Third parameter VERTICAL-TYPE specifies the type of the vertical scroll bar: left, right, nil or t where nil means to not display a vertical scroll bar on WINDOW and t means to use WINDOW frame's vertical scroll bar type. Fourth parameter HEIGHT specifies the pixel height for the horizontal scroll bar. If HEIGHT is nil, use the scroll bar height of WINDOW's frame. Fifth parameter HORIZONTAL-TYPE specifies the type of the horizontal scroll bar: bottom, nil, or t where nil means to not display a horizontal scroll bar on WINDOW and t means to use WINDOW frame's horizontal scroll bar type. If WINDOW is not large enough to accommodate a scroll bar of the desired dimension, leave the corresponding scroll bar unchanged. Return t if scroll bars were actually changed and nil otherwise. (fn WINDOW &optional WIDTH VERTICAL-TYPE HEIGHT HORIZONTAL-TYPE)Fwindow-scroll-bars Get width and type of scroll bars of window WINDOW. WINDOW must be a live window and defaults to the selected one. Value is a list of the form (WIDTH COLUMNS VERTICAL-TYPE HEIGHT LINES HORIZONTAL-TYPE). If WIDTH or HEIGHT is nil or VERTICAL-TYPE or HORIZONTAL-TYPE is t, the window is using the frame's corresponding value. (fn &optional WINDOW)Fwindow-vscroll Return the amount by which WINDOW is scrolled vertically. This takes effect when displaying tall lines or images. If WINDOW is omitted or nil, it defaults to the selected window. Normally, value is a multiple of the canonical character height of WINDOW; optional second arg PIXELS-P means value is measured in pixels. (fn &optional WINDOW PIXELS-P)Fset-window-vscroll Set amount by which WINDOW should be scrolled vertically to VSCROLL. This takes effect when displaying tall lines or images. WINDOW nil means use the selected window. Normally, VSCROLL is a non-negative multiple of the canonical character height of WINDOW; optional third arg PIXELS-P non-nil means that VSCROLL is in pixels. If PIXELS-P is nil, VSCROLL may have to be rounded so that it corresponds to an integral number of pixels. The return value is the result of this rounding. If PIXELS-P is non-nil, the return value is VSCROLL. (fn WINDOW VSCROLL &optional PIXELS-P)Fcompare-window-configurations Compare two window configurations as regards the structure of windows. This function ignores details such as the values of point and scrolling positions. (fn X Y)Vtemp-buffer-show-function Non-nil means call as function to display a help buffer. The function is called with one argument, the buffer to be displayed. Used by `with-output-to-temp-buffer'. If this function is used, then it must do the entire job of showing the buffer; `temp-buffer-show-hook' is not run unless this function runs it.Vminibuffer-scroll-window Non-nil means it is the window that C-M-v in minibuffer should scroll.Vmode-line-in-non-selected-windows Non-nil means to use `mode-line-inactive' face in non-selected windows. If the minibuffer is active, the `minibuffer-scroll-window' mode line is displayed in the `mode-line' face.Vother-window-scroll-buffer If this is a live buffer, \[scroll-other-window] should scroll its window.Vauto-window-vscroll Non-nil means to automatically adjust `window-vscroll' to view tall lines.Vnext-screen-context-lines Number of lines of continuity when scrolling by screenfuls.Vscroll-preserve-screen-position Controls if scroll commands move point to keep its screen position unchanged. A value of nil means point does not keep its screen position except at the scroll margin or window boundary respectively. A value of t means point keeps its screen position if the scroll command moved it vertically out of the window, e.g. when scrolling by full screens. Any other value means point always keeps its screen position. Scroll commands should have the `scroll-command' property on their symbols to be controlled by this variable.Vwindow-point-insertion-type Type of marker to use for `window-point'.Vwindow-configuration-change-hook Functions to call when window configuration changes. The buffer-local value is run once per window, with the relevant window selected; while the global value is run only once for the modified frame, with the relevant frame selected.Vwindow-size-change-functions Functions called during redisplay, if window sizes have changed. The value should be a list of functions that take one argument. During the first part of redisplay, for each frame, if any of its windows have changed size since the last redisplay, or have been split or deleted, all the functions in the list are called, with the frame as argument. If redisplay decides to resize the minibuffer window, it calls these functions on behalf of that as well.Vrecenter-redisplay Non-nil means `recenter' redraws entire frame. If this option is non-nil, then the `recenter' command with a nil argument will redraw the entire frame; the special value `tty' causes the frame to be redrawn only if it is a tty frame.Vwindow-combination-resize If t, resize window combinations proportionally. If this variable is nil, splitting a window gets the entire screen space for displaying the new window from the window to split. Deleting and resizing a window preferably resizes one adjacent window only. If this variable is t, splitting a window tries to get the space proportionally from all windows in the same combination. This also allows splitting a window that is otherwise too small or of fixed size. Resizing and deleting a window proportionally resize all windows in the same combination. Other values are reserved for future use. A specific split operation may ignore the value of this variable if it is affected by a non-nil value of `window-combination-limit'.Vwindow-combination-limit If non-nil, splitting a window makes a new parent window. The following values are recognized: nil means splitting a window will create a new parent window only if the window has no parent window or the window shall become part of a combination orthogonal to the one it is part of. `window-size' means that splitting a window for displaying a buffer makes a new parent window provided `display-buffer' is supposed to explicitly set the window's size due to the presence of a `window-height' or `window-width' entry in the alist used by `display-buffer'. Otherwise, this value is handled like nil. `temp-buffer-resize' means that splitting a window for displaying a temporary buffer via `with-temp-buffer-window' makes a new parent window only if `temp-buffer-resize-mode' is enabled. Otherwise, this value is handled like nil. `temp-buffer' means that splitting a window for displaying a temporary buffer via `with-temp-buffer-window' always makes a new parent window. Otherwise, this value is handled like nil. `display-buffer' means that splitting a window for displaying a buffer always makes a new parent window. Since temporary buffers are displayed by the function `display-buffer', this value is stronger than `temp-buffer'. Splitting a window for other purpose makes a new parent window only if needed. t means that splitting a window always creates a new parent window. If all splits behave this way, each frame's window tree is a binary tree and every window but the frame's root window has exactly one sibling. The default value is `window-size'. Other values are reserved for future use.Vwindow-persistent-parameters Alist of persistent window parameters. This alist specifies which window parameters shall get saved by `current-window-configuration' and `window-state-get' and subsequently restored to their previous values by `set-window-configuration' and `window-state-put'. The car of each entry of this alist is the symbol specifying the parameter. The cdr is one of the following: nil means the parameter is neither saved by `window-state-get' nor by `current-window-configuration'. t means the parameter is saved by `current-window-configuration' and, provided its WRITABLE argument is nil, by `window-state-get'. The symbol `writable' means the parameter is saved unconditionally by both `current-window-configuration' and `window-state-get'. Do not use this value for parameters without read syntax (like windows or frames). Parameters not saved by `current-window-configuration' or `window-state-get' are left alone by `set-window-configuration' respectively are not installed by `window-state-put'.Vwindow-resize-pixelwise Non-nil means resize windows pixelwise. This currently affects the functions: `split-window', `maximize-window', `minimize-window', `fit-window-to-buffer' and `fit-frame-to-buffer', and all functions that symmetrically resize a parent window. Note that when a frame's pixel size is not a multiple of the frame's character size, at least one window may get resized pixelwise even if this option is nil.Vfast-but-imprecise-scrolling When non-nil, accelerate scrolling operations. This comes into play when scrolling rapidly over previously unfontified buffer regions. Only those portions of the buffer which are actually going to be displayed get fontified. Note that this optimization can cause the portion of the buffer displayed after a scrolling operation to be somewhat inaccurate.Scharset.o Fcharsetp Return non-nil if and only if OBJECT is a charset. (fn OBJECT)Fmap-charset-chars Call FUNCTION for all characters in CHARSET. FUNCTION is called with an argument RANGE and the optional 3rd argument ARG. RANGE is a cons (FROM . TO), where FROM and TO indicate a range of characters contained in CHARSET. The optional 4th and 5th arguments FROM-CODE and TO-CODE specify the range of code points (in CHARSET) of target characters. (fn FUNCTION CHARSET &optional ARG FROM-CODE TO-CODE)Fdefine-charset-internal For internal use only. (fn ...)Fdefine-charset-alias Define ALIAS as an alias for charset CHARSET. (fn ALIAS CHARSET)Fcharset-plist Return the property list of CHARSET. (fn CHARSET)Fset-charset-plist Set CHARSET's property list to PLIST. (fn CHARSET PLIST)Funify-charset Unify characters of CHARSET with Unicode. This means reading the relevant file and installing the table defined by CHARSET's `:unify-map' property. Optional second arg UNIFY-MAP is a file name string or a vector. It has the same meaning as the `:unify-map' attribute in the function `define-charset' (which see). Optional third argument DEUNIFY, if non-nil, means to de-unify CHARSET. (fn CHARSET &optional UNIFY-MAP DEUNIFY)Fget-unused-iso-final-char Return an unused ISO final char for a charset of DIMENSION and CHARS. DIMENSION is the number of bytes to represent a character: 1 or 2. CHARS is the number of characters in a dimension: 94 or 96. This final char is for private use, thus the range is `0' (48) .. `?' (63). If there's no unused final char for the specified kind of charset, return nil. (fn DIMENSION CHARS)Fdeclare-equiv-charset Declare an equivalent charset for ISO-2022 decoding. On decoding by an ISO-2022 base coding system, when a charset specified by DIMENSION, CHARS, and FINAL-CHAR is designated, behave as if CHARSET is designated instead. (fn DIMENSION CHARS FINAL-CHAR CHARSET)Ffind-charset-region Return a list of charsets in the region between BEG and END. BEG and END are buffer positions. Optional arg TABLE if non-nil is a translation table to look up. If the current buffer is unibyte, the returned list may contain only `ascii', `eight-bit-control', and `eight-bit-graphic'. (fn BEG END &optional TABLE)Ffind-charset-string Return a list of charsets in STR. Optional arg TABLE if non-nil is a translation table to look up. If STR is unibyte, the returned list may contain only `ascii', `eight-bit-control', and `eight-bit-graphic'. (fn STR &optional TABLE)Fdecode-char Decode the pair of CHARSET and CODE-POINT into a character. Return nil if CODE-POINT is not valid in CHARSET. CODE-POINT may be a cons (HIGHER-16-BIT-VALUE . LOWER-16-BIT-VALUE). (fn CHARSET CODE-POINT)Fencode-char Encode the character CH into a code-point of CHARSET. Return nil if CHARSET doesn't include CH. (fn CH CHARSET)Fmake-char Return a character of CHARSET whose position codes are CODEn. CODE1 through CODE4 are optional, but if you don't supply sufficient position codes, it is assumed that the minimum code in each dimension is specified. (fn CHARSET &optional CODE1 CODE2 CODE3 CODE4)Fsplit-char Return list of charset and one to four position-codes of CH. The charset is decided by the current priority order of charsets. A position-code is a byte value of each dimension of the code-point of CH in the charset. (fn CH)Fchar-charset Return the charset of highest priority that contains CH. ASCII characters are an exception: for them, this function always returns `ascii'. If optional 2nd arg RESTRICTION is non-nil, it is a list of charsets from which to find the charset. It may also be a coding system. In that case, find the charset from what supported by that coding system. (fn CH &optional RESTRICTION)Fcharset-after Return charset of a character in the current buffer at position POS. If POS is nil, it defaults to the current point. If POS is out of range, the value is nil. (fn &optional POS)Fiso-charset Return charset of ISO's specification DIMENSION, CHARS, and FINAL-CHAR. ISO 2022's designation sequence (escape sequence) distinguishes charsets by their DIMENSION, CHARS, and FINAL-CHAR, whereas Emacs distinguishes them by charset symbol. See the documentation of the function `charset-info' for the meanings of DIMENSION, CHARS, and FINAL-CHAR. (fn DIMENSION CHARS FINAL-CHAR)Fclear-charset-maps Internal use only. Clear temporary charset mapping tables. It should be called only from temacs invoked for dumping. (fn)Fcharset-priority-list Return the list of charsets ordered by priority. HIGHESTP non-nil means just return the highest priority one. (fn &optional HIGHESTP)Fset-charset-priority Assign higher priority to the charsets given as arguments. (fn &rest charsets)Fcharset-id-internal Internal use only. Return charset identification number of CHARSET. (fn &optional CHARSET)Fsort-charsets Sort charset list CHARSETS by a priority of each charset. Return the sorted list. CHARSETS is modified by side effects. See also `charset-priority-list' and `set-charset-priority'. (fn CHARSETS)Vcharset-map-path List of directories to search for charset map files.Vinhibit-load-charset-map Inhibit loading of charset maps. Used when dumping Emacs.Vcharset-list List of all charsets ever defined.Vcurrent-iso639-language ISO639 language mnemonic symbol for the current language environment. If the current language environment is for multiple languages (e.g. "Latin-1"), the value may be a list of mnemonics.Scoding.o Fcoding-system-p Return t if OBJECT is nil or a coding-system. See the documentation of `define-coding-system' for information about coding-system objects. (fn OBJECT)Fread-non-nil-coding-system Read a coding system from the minibuffer, prompting with string PROMPT. (fn PROMPT)Fread-coding-system Read a coding system from the minibuffer, prompting with string PROMPT. If the user enters null input, return second argument DEFAULT-CODING-SYSTEM. Ignores case when completing coding systems (all Emacs coding systems are lower-case). (fn PROMPT &optional DEFAULT-CODING-SYSTEM)Fcheck-coding-system Check validity of CODING-SYSTEM. If valid, return CODING-SYSTEM, else signal a `coding-system-error' error. It is valid if it is nil or a symbol defined as a coding system by the function `define-coding-system'. (fn CODING-SYSTEM)Fdetect-coding-region Detect coding system of the text in the region between START and END. Return a list of possible coding systems ordered by priority. The coding systems to try and their priorities follows what the function `coding-system-priority-list' (which see) returns. If only ASCII characters are found (except for such ISO-2022 control characters as ESC), it returns a list of single element `undecided' or its subsidiary coding system according to a detected end-of-line format. If optional argument HIGHEST is non-nil, return the coding system of highest priority. (fn START END &optional HIGHEST)Fdetect-coding-string Detect coding system of the text in STRING. Return a list of possible coding systems ordered by priority. The coding systems to try and their priorities follows what the function `coding-system-priority-list' (which see) returns. If only ASCII characters are found (except for such ISO-2022 control characters as ESC), it returns a list of single element `undecided' or its subsidiary coding system according to a detected end-of-line format. If optional argument HIGHEST is non-nil, return the coding system of highest priority. (fn STRING &optional HIGHEST)Ffind-coding-systems-region-internal Internal use only. (fn START END &optional EXCLUDE)Funencodable-char-position Return position of first un-encodable character in a region. START and END specify the region and CODING-SYSTEM specifies the encoding to check. Return nil if CODING-SYSTEM does encode the region. If optional 4th argument COUNT is non-nil, it specifies at most how many un-encodable characters to search. In this case, the value is a list of positions. If optional 5th argument STRING is non-nil, it is a string to search for un-encodable characters. In that case, START and END are indexes to the string and treated as in `substring'. (fn START END CODING-SYSTEM &optional COUNT STRING)Fcheck-coding-systems-region Check if text between START and END is encodable by CODING-SYSTEM-LIST. START and END are buffer positions specifying the region. CODING-SYSTEM-LIST is a list of coding systems to check. If all coding systems in CODING-SYSTEM-LIST can encode the region, the function returns nil. If some of the coding systems cannot encode the whole region, value is an alist, each element of which has the form (CODING-SYSTEM POS1 POS2 ...), which means that CODING-SYSTEM cannot encode the text at buffer positions POS1, POS2, ... START may be a string. In that case, check if the string is encodable, and the value contains character indices into the string instead of buffer positions. END is ignored in this case. If the current buffer (or START if it is a string) is unibyte, the value is nil. (fn START END CODING-SYSTEM-LIST)Fdecode-coding-region Decode the current region from the specified coding system. When called from a program, takes four arguments: START, END, CODING-SYSTEM, and DESTINATION. START and END are buffer positions. Optional 4th arguments DESTINATION specifies where the decoded text goes. If nil, the region between START and END is replaced by the decoded text. If buffer, the decoded text is inserted in that buffer after point (point does not move). If that buffer is unibyte, it receives the individual bytes of the internal representation of the decoded text. In those cases, the length of the decoded text is returned. If DESTINATION is t, the decoded text is returned. This function sets `last-coding-system-used' to the precise coding system used (which may be different from CODING-SYSTEM if CODING-SYSTEM is not fully specified.) (fn START END CODING-SYSTEM &optional DESTINATION)Fencode-coding-region Encode the current region by specified coding system. When called from a program, takes four arguments: START, END, CODING-SYSTEM and DESTINATION. START and END are buffer positions. Optional 4th argument DESTINATION specifies where the encoded text goes. If nil, the region between START and END is replaced by the encoded text. If buffer, the encoded text is inserted in that buffer after point (point does not move). In those cases, the length of the encoded text is returned. If DESTINATION is t, the encoded text is returned. This function sets `last-coding-system-used' to the precise coding system used (which may be different from CODING-SYSTEM if CODING-SYSTEM is not fully specified.) (fn START END CODING-SYSTEM &optional DESTINATION)Fdecode-coding-string Decode STRING which is encoded in CODING-SYSTEM, and return the result. Optional third arg NOCOPY non-nil means it is OK to return STRING itself if the decoding operation is trivial. Optional fourth arg BUFFER non-nil means that the decoded text is inserted in that buffer after point (point does not move). In this case, the return value is the length of the decoded text. If that buffer is unibyte, it receives the individual bytes of the internal representation of the decoded text. This function sets `last-coding-system-used' to the precise coding system used (which may be different from CODING-SYSTEM if CODING-SYSTEM is not fully specified.) (fn STRING CODING-SYSTEM &optional NOCOPY BUFFER)Fencode-coding-string Encode STRING to CODING-SYSTEM, and return the result. Optional third arg NOCOPY non-nil means it is OK to return STRING itself if the encoding operation is trivial. Optional fourth arg BUFFER non-nil means that the encoded text is inserted in that buffer after point (point does not move). In this case, the return value is the length of the encoded text. This function sets `last-coding-system-used' to the precise coding system used (which may be different from CODING-SYSTEM if CODING-SYSTEM is not fully specified.) (fn STRING CODING-SYSTEM &optional NOCOPY BUFFER)Fdecode-sjis-char Decode a Japanese character which has CODE in shift_jis encoding. Return the corresponding character. (fn CODE)Fencode-sjis-char Encode a Japanese character CH to shift_jis encoding. Return the corresponding code in SJIS. (fn CH)Fdecode-big5-char Decode a Big5 character which has CODE in BIG5 coding system. Return the corresponding character. (fn CODE)Fencode-big5-char Encode the Big5 character CH to BIG5 coding system. Return the corresponding character code in Big5. (fn CH)Fset-terminal-coding-system-internal Internal use only. (fn CODING-SYSTEM &optional TERMINAL)Fset-safe-terminal-coding-system-internal Internal use only. (fn CODING-SYSTEM)Fterminal-coding-system Return coding system specified for terminal output on the given terminal. TERMINAL may be a terminal object, a frame, or nil for the selected frame's terminal device. (fn &optional TERMINAL)Fset-keyboard-coding-system-internal Internal use only. (fn CODING-SYSTEM &optional TERMINAL)Fkeyboard-coding-system Return coding system specified for decoding keyboard input. (fn &optional TERMINAL)Ffind-operation-coding-system Choose a coding system for an operation based on the target name. The value names a pair of coding systems: (DECODING-SYSTEM . ENCODING-SYSTEM). DECODING-SYSTEM is the coding system to use for decoding (in case OPERATION does decoding), and ENCODING-SYSTEM is the coding system for encoding (in case OPERATION does encoding). The first argument OPERATION specifies an I/O primitive: For file I/O, `insert-file-contents' or `write-region'. For process I/O, `call-process', `call-process-region', or `start-process'. For network I/O, `open-network-stream'. The remaining arguments should be the same arguments that were passed to the primitive. Depending on which primitive, one of those arguments is selected as the TARGET. For example, if OPERATION does file I/O, whichever argument specifies the file name is TARGET. TARGET has a meaning which depends on OPERATION: For file I/O, TARGET is a file name (except for the special case below). For process I/O, TARGET is a process name. For network I/O, TARGET is a service name or a port number. This function looks up what is specified for TARGET in `file-coding-system-alist', `process-coding-system-alist', or `network-coding-system-alist' depending on OPERATION. They may specify a coding system, a cons of coding systems, or a function symbol to call. In the last case, we call the function with one argument, which is a list of all the arguments given to this function. If the function can't decide a coding system, it can return `undecided' so that the normal code-detection is performed. If OPERATION is `insert-file-contents', the argument corresponding to TARGET may be a cons (FILENAME . BUFFER). In that case, FILENAME is a file name to look up, and BUFFER is a buffer that contains the file's contents (not yet decoded). If `file-coding-system-alist' specifies a function to call for FILENAME, that function should examine the contents of BUFFER instead of reading the file. (fn OPERATION ARGUMENTS...)Fset-coding-system-priority Assign higher priority to the coding systems given as arguments. If multiple coding systems belong to the same category, all but the first one are ignored. (fn &rest coding-systems)Fcoding-system-priority-list Return a list of coding systems ordered by their priorities. The list contains a subset of coding systems; i.e. coding systems assigned to each coding category (see `coding-category-list'). HIGHESTP non-nil means just return the highest priority one. (fn &optional HIGHESTP)Fdefine-coding-system-internal For internal use only. (fn ...)Fcoding-system-put Change value in CODING-SYSTEM's property list PROP to VAL. (fn CODING-SYSTEM PROP VAL)Fdefine-coding-system-alias Define ALIAS as an alias for CODING-SYSTEM. (fn ALIAS CODING-SYSTEM)Fcoding-system-base Return the base of CODING-SYSTEM. Any alias or subsidiary coding system is not a base coding system. (fn CODING-SYSTEM)Fcoding-system-plist Return the property list of CODING-SYSTEM. (fn CODING-SYSTEM)Fcoding-system-aliases Return the list of aliases of CODING-SYSTEM. (fn CODING-SYSTEM)Fcoding-system-eol-type Return eol-type of CODING-SYSTEM. An eol-type is an integer 0, 1, 2, or a vector of coding systems. Integer values 0, 1, and 2 indicate a format of end-of-line; LF, CRLF, and CR respectively. A vector value indicates that a format of end-of-line should be detected automatically. Nth element of the vector is the subsidiary coding system whose eol-type is N. (fn CODING-SYSTEM)Vcoding-system-list List of coding systems. Do not alter the value of this variable manually. This variable should be updated by the functions `define-coding-system' and `define-coding-system-alias'.Vcoding-system-alist Alist of coding system names. Each element is one element list of coding system name. This variable is given to `completing-read' as COLLECTION argument. Do not alter the value of this variable manually. This variable should be updated by the functions `make-coding-system' and `define-coding-system-alias'.Vcoding-category-list List of coding-categories (symbols) ordered by priority. On detecting a coding system, Emacs tries code detection algorithms associated with each coding-category one by one in this order. When one algorithm agrees with a byte sequence of source text, the coding system bound to the corresponding coding-category is selected. Don't modify this variable directly, but use `set-coding-system-priority'.Vcoding-system-for-read Specify the coding system for read operations. It is useful to bind this variable with `let', but do not set it globally. If the value is a coding system, it is used for decoding on read operation. If not, an appropriate element is used from one of the coding system alists. There are three such tables: `file-coding-system-alist', `process-coding-system-alist', and `network-coding-system-alist'.Vcoding-system-for-write Specify the coding system for write operations. Programs bind this variable with `let', but you should not set it globally. If the value is a coding system, it is used for encoding of output, when writing it to a file and when sending it to a file or subprocess. If this does not specify a coding system, an appropriate element is used from one of the coding system alists. There are three such tables: `file-coding-system-alist', `process-coding-system-alist', and `network-coding-system-alist'. For output to files, if the above procedure does not specify a coding system, the value of `buffer-file-coding-system' is used.Vlast-coding-system-used Coding system used in the latest file or process I/O.Vlast-code-conversion-error Error status of the last code conversion. When an error was detected in the last code conversion, this variable is set to one of the following symbols. `insufficient-source' `inconsistent-eol' `invalid-source' `interrupted' `insufficient-memory' When no error was detected, the value doesn't change. So, to check the error status of a code conversion by this variable, you must explicitly set this variable to nil before performing code conversion.Vinhibit-eol-conversion Non-nil means always inhibit code conversion of end-of-line format. See info node `Coding Systems' and info node `Text and Binary' concerning such conversion.Vinherit-process-coding-system Non-nil means process buffer inherits coding system of process output. Bind it to t if the process output is to be treated as if it were a file read from some filesystem.Vfile-coding-system-alist Alist to decide a coding system to use for a file I/O operation. The format is ((PATTERN . VAL) ...), where PATTERN is a regular expression matching a file name, VAL is a coding system, a cons of coding systems, or a function symbol. If VAL is a coding system, it is used for both decoding and encoding the file contents. If VAL is a cons of coding systems, the car part is used for decoding, and the cdr part is used for encoding. If VAL is a function symbol, the function must return a coding system or a cons of coding systems which are used as above. The function is called with an argument that is a list of the arguments with which `find-operation-coding-system' was called. If the function can't decide a coding system, it can return `undecided' so that the normal code-detection is performed. See also the function `find-operation-coding-system' and the variable `auto-coding-alist'.Vprocess-coding-system-alist Alist to decide a coding system to use for a process I/O operation. The format is ((PATTERN . VAL) ...), where PATTERN is a regular expression matching a program name, VAL is a coding system, a cons of coding systems, or a function symbol. If VAL is a coding system, it is used for both decoding what received from the program and encoding what sent to the program. If VAL is a cons of coding systems, the car part is used for decoding, and the cdr part is used for encoding. If VAL is a function symbol, the function must return a coding system or a cons of coding systems which are used as above. See also the function `find-operation-coding-system'.Vnetwork-coding-system-alist Alist to decide a coding system to use for a network I/O operation. The format is ((PATTERN . VAL) ...), where PATTERN is a regular expression matching a network service name or is a port number to connect to, VAL is a coding system, a cons of coding systems, or a function symbol. If VAL is a coding system, it is used for both decoding what received from the network stream and encoding what sent to the network stream. If VAL is a cons of coding systems, the car part is used for decoding, and the cdr part is used for encoding. If VAL is a function symbol, the function must return a coding system or a cons of coding systems which are used as above. See also the function `find-operation-coding-system'.Vlocale-coding-system Coding system to use with system messages. Also used for decoding keyboard input on X Window system, and for encoding standard output and error streams.Veol-mnemonic-unix String displayed in mode line for UNIX-like (LF) end-of-line format.Veol-mnemonic-dos String displayed in mode line for DOS-like (CRLF) end-of-line format.Veol-mnemonic-mac String displayed in mode line for MAC-like (CR) end-of-line format.Veol-mnemonic-undecided String displayed in mode line when end-of-line format is not yet determined.Venable-character-translation Non-nil enables character translation while encoding and decoding.Vstandard-translation-table-for-decode Table for translating characters while decoding.Vstandard-translation-table-for-encode Table for translating characters while encoding.Vcharset-revision-table Alist of charsets vs revision numbers. While encoding, if a charset (car part of an element) is found, designate it with the escape sequence identifying revision (cdr part of the element).Vdefault-process-coding-system Cons of coding systems used for process I/O by default. The car part is used for decoding a process output, the cdr part is used for encoding a text to be sent to a process.Vlatin-extra-code-table Table of extra Latin codes in the range 128..159 (inclusive). This is a vector of length 256. If Nth element is non-nil, the existence of code N in a file (or output of subprocess) doesn't prevent it to be detected as a coding system of ISO 2022 variant which has a flag `accept-latin-extra-code' t (e.g. iso-latin-1) on reading a file or reading output of a subprocess. Only 128th through 159th elements have a meaning.Vselect-safe-coding-system-function Function to call to select safe coding system for encoding a text. If set, this function is called to force a user to select a proper coding system which can encode the text in the case that a default coding system used in each operation can't encode the text. The function should take care that the buffer is not modified while the coding system is being selected. The default value is `select-safe-coding-system' (which see).Vcoding-system-require-warning Internal use only. If non-nil, on writing a file, `select-safe-coding-system-function' is called even if `coding-system-for-write' is non-nil. The command `universal-coding-system-argument' binds this variable to t temporarily.Vinhibit-iso-escape-detection If non-nil, Emacs ignores ISO-2022 escape sequences during code detection. When Emacs reads text, it tries to detect how the text is encoded. This code detection is sensitive to escape sequences. If Emacs sees a valid ISO-2022 escape sequence, it assumes the text is encoded in one of the ISO2022 encodings, and decodes text by the corresponding coding system (e.g. `iso-2022-7bit'). However, there may be a case that you want to read escape sequences in a file as is. In such a case, you can set this variable to non-nil. Then the code detection will ignore any escape sequences, and no text is detected as encoded in some ISO-2022 encoding. The result is that all escape sequences become visible in a buffer. The default value is nil, and it is strongly recommended not to change it. That is because many Emacs Lisp source files that contain non-ASCII characters are encoded by the coding system `iso-2022-7bit' in Emacs's distribution, and they won't be decoded correctly on reading if you suppress escape sequence detection. The other way to read escape sequences in a file without decoding is to explicitly specify some coding system that doesn't use ISO-2022 escape sequence (e.g., `latin-1') on reading by \[universal-coding-system-argument].Vinhibit-null-byte-detection If non-nil, Emacs ignores null bytes on code detection. By default, Emacs treats it as binary data, and does not attempt to decode it. The effect is as if you specified `no-conversion' for reading that text. Set this to non-nil when a regular text happens to include null bytes. Examples are Index nodes of Info files and null-byte delimited output from GNU Find and GNU Grep. Emacs will then ignore the null bytes and decode text as usual.Vdisable-ascii-optimization If non-nil, Emacs does not optimize code decoder for ASCII files. Internal use only. Remove after the experimental optimizer becomes stable.Vtranslation-table-for-input Char table for translating self-inserting characters. This is applied to the result of input methods, not their input. See also `keyboard-translate-table'. Use of this variable for character code unification was rendered obsolete in Emacs 23.1 and later, since Unicode is now the basis of internal character representation.Scategory.o Fmake-category-set Return a newly created category-set which contains CATEGORIES. CATEGORIES is a string of category mnemonics. The value is a bool-vector which has t at the indices corresponding to those categories. (fn CATEGORIES)Fdefine-category Define CATEGORY as a category which is described by DOCSTRING. CATEGORY should be an ASCII printing character in the range ` ' to `~'. DOCSTRING is the documentation string of the category. The first line should be a terse text (preferably less than 16 characters), and the rest lines should be the full description. The category is defined only in category table TABLE, which defaults to the current buffer's category table. (fn CATEGORY DOCSTRING &optional TABLE)Fcategory-docstring Return the documentation string of CATEGORY, as defined in TABLE. TABLE should be a category table and defaults to the current buffer's category table. (fn CATEGORY &optional TABLE)Fget-unused-category Return a category which is not yet defined in TABLE. If no category remains available, return nil. The optional argument TABLE specifies which category table to modify; it defaults to the current buffer's category table. (fn &optional TABLE)Fcategory-table-p Return t if ARG is a category table. (fn ARG)Fcategory-table Return the current category table. This is the one specified by the current buffer. (fn)Fstandard-category-table Return the standard category table. This is the one used for new buffers. (fn)Fcopy-category-table Construct a new category table and return it. It is a copy of the TABLE, which defaults to the standard category table. (fn &optional TABLE)Fmake-category-table Construct a new and empty category table and return it. (fn)Fset-category-table Specify TABLE as the category table for the current buffer. Return TABLE. (fn TABLE)Fchar-category-set Return the category set of CHAR. (fn CHAR)Fcategory-set-mnemonics Return a string containing mnemonics of the categories in CATEGORY-SET. CATEGORY-SET is a bool-vector, and the categories "in" it are those that are indexes where t occurs in the bool-vector. The return value is a string containing those same categories. (fn CATEGORY-SET)Fmodify-category-entry Modify the category set of CHARACTER by adding CATEGORY to it. The category is changed only for table TABLE, which defaults to the current buffer's category table. CHARACTER can be either a single character or a cons representing the lower and upper ends of an inclusive character range to modify. CATEGORY must be a category name (a character between ` ' and `~'). Use `describe-categories' to see existing category names. If optional fourth argument RESET is non-nil, then delete CATEGORY from the category set instead of adding it. (fn CHARACTER CATEGORY &optional TABLE RESET)Vword-combining-categories List of pair (cons) of categories to determine word boundary. Emacs treats a sequence of word constituent characters as a single word (i.e. finds no word boundary between them) only if they belong to the same script. But, exceptions are allowed in the following cases. (1) The case that characters are in different scripts is controlled by the variable `word-combining-categories'. Emacs finds no word boundary between characters of different scripts if they have categories matching some element of this list. More precisely, if an element of this list is a cons of category CAT1 and CAT2, and a multibyte character C1 which has CAT1 is followed by C2 which has CAT2, there's no word boundary between C1 and C2. For instance, to tell that Han characters followed by Hiragana characters can form a single word, the element `(?C . ?H)' should be in this list. (2) The case that character are in the same script is controlled by the variable `word-separating-categories'. Emacs finds a word boundary between characters of the same script if they have categories matching some element of this list. More precisely, if an element of this list is a cons of category CAT1 and CAT2, and a multibyte character C1 which has CAT1 but not CAT2 is followed by C2 which has CAT2 but not CAT1, there's a word boundary between C1 and C2. For instance, to tell that there's a word boundary between Hiragana and Katakana (both are in the same script `kana'), the element `(?H . ?K)' should be in this list.Vword-separating-categories List of pair (cons) of categories to determine word boundary. See the documentation of the variable `word-combining-categories'.Sccl.o Fccl-program-p Return t if OBJECT is a CCL program name or a compiled CCL program code. See the documentation of `define-ccl-program' for the detail of CCL program. (fn OBJECT)Fccl-execute Execute CCL-PROGRAM with registers initialized by REGISTERS. CCL-PROGRAM is a CCL program name (symbol) or compiled code generated by `ccl-compile' (for backward compatibility. In the latter case, the execution overhead is bigger than in the former). No I/O commands should appear in CCL-PROGRAM. REGISTERS is a vector of [R0 R1 ... R7] where RN is an initial value for the Nth register. As side effect, each element of REGISTERS holds the value of the corresponding register after the execution. See the documentation of `define-ccl-program' for a definition of CCL programs. (fn CCL-PROG REG)Fccl-execute-on-string Execute CCL-PROGRAM with initial STATUS on STRING. CCL-PROGRAM is a symbol registered by `register-ccl-program', or a compiled code generated by `ccl-compile' (for backward compatibility, in this case, the execution is slower). Read buffer is set to STRING, and write buffer is allocated automatically. STATUS is a vector of [R0 R1 ... R7 IC], where R0..R7 are initial values of corresponding registers, IC is the instruction counter specifying from where to start the program. If R0..R7 are nil, they are initialized to 0. If IC is nil, it is initialized to head of the CCL program. If optional 4th arg CONTINUE is non-nil, keep IC on read operation when read buffer is exhausted, else, IC is always set to the end of CCL-PROGRAM on exit. It returns the contents of write buffer as a string, and as side effect, STATUS is updated. If the optional 5th arg UNIBYTE-P is non-nil, the returned string is a unibyte string. By default it is a multibyte string. See the documentation of `define-ccl-program' for the detail of CCL program. (fn CCL-PROGRAM STATUS STRING &optional CONTINUE UNIBYTE-P)Fregister-ccl-program Register CCL program CCL-PROG as NAME in `ccl-program-table'. CCL-PROG should be a compiled CCL program (vector), or nil. If it is nil, just reserve NAME as a CCL program name. Return index number of the registered CCL program. (fn NAME CCL-PROG)Fregister-code-conversion-map Register SYMBOL as code conversion map MAP. Return index number of the registered map. (fn SYMBOL MAP)Vcode-conversion-map-vector Vector of code conversion maps.Vfont-ccl-encoder-alist Alist of fontname patterns vs corresponding CCL program. Each element looks like (REGEXP . CCL-CODE), where CCL-CODE is a compiled CCL program. When a font whose name matches REGEXP is used for displaying a character, CCL-CODE is executed to calculate the code point in the font from the charset number and position code(s) of the character which are set in CCL registers R0, R1, and R2 before the execution. The code point in the font is set in CCL registers R1 and R2 when the execution terminated. If the font is single-byte font, the register R2 is not used.Vtranslation-hash-table-vector Vector containing all translation hash tables ever defined. Comprises pairs (SYMBOL . TABLE) where SYMBOL and TABLE were set up by calls to `define-translation-hash-table'. The vector is indexed by the table id used by CCL.Scharacter.o Fcharacterp Return non-nil if OBJECT is a character. In Emacs Lisp, characters are represented by character codes, which are non-negative integers. The function `max-char' returns the maximum character code. (fn OBJECT)Fmax-char Return the character of the maximum code. (fn)Funibyte-char-to-multibyte Convert the byte CH to multibyte character. (fn CH)Fmultibyte-char-to-unibyte Convert the multibyte character CH to a byte. If the multibyte character does not represent a byte, return -1. (fn CH)Fchar-width Return width of CHAR when displayed in the current buffer. The width is measured by how many columns it occupies on the screen. Tab is taken to occupy `tab-width' columns. (fn CHAR)Fstring-width Return width of STRING when displayed in the current buffer. Width is measured by how many columns it occupies on the screen. When calculating width of a multibyte character in STRING, only the base leading-code is considered; the validity of the following bytes is not checked. Tabs in STRING are always taken to occupy `tab-width' columns. (fn STRING)Fstring Concatenate all the argument characters and make the result a string. (fn &rest CHARACTERS)Funibyte-string Concatenate all the argument bytes and make the result a unibyte string. (fn &rest BYTES)Fchar-resolve-modifiers Resolve modifiers in the character CHAR. The value is a character with modifiers resolved into the character code. Unresolved modifiers are kept in the value. (fn CHAR)Fget-byte Return a byte value of a character at point. Optional 1st arg POSITION, if non-nil, is a position of a character to get a byte value. Optional 2nd arg STRING, if non-nil, is a string of which first character is a target to get a byte value. In this case, POSITION, if non-nil, is an index of a target character in the string. If the current buffer (or STRING) is multibyte, and the target character is not ASCII nor 8-bit character, an error is signaled. (fn &optional POSITION STRING)Vtranslation-table-vector Vector recording all translation tables ever defined. Each element is a pair (SYMBOL . TABLE) relating the table to the symbol naming it. The ID of a translation table is an index into this vector.Vauto-fill-chars A char-table for characters which invoke auto-filling. Such characters have value t in this table.Vchar-width-table A char-table for width (columns) of each character.Vprintable-chars A char-table for each printable character.Vchar-script-table Char table of script symbols. It has one extra slot whose value is a list of script symbols.Vscript-representative-chars Alist of scripts vs the representative characters. Each element is a cons (SCRIPT . CHARS). SCRIPT is a symbol representing a script or a subgroup of a script. CHARS is a list or a vector of characters. If it is a list, all characters in the list are necessary for supporting SCRIPT. If it is a vector, one of the characters in the vector is necessary. This variable is used to find a font for a specific script.Vunicode-category-table Char table of Unicode's "General Category". All Unicode characters have one of the following values (symbol): Lu, Ll, Lt, Lm, Lo, Mn, Mc, Me, Nd, Nl, No, Pc, Pd, Ps, Pe, Pi, Pf, Po, Sm, Sc, Sk, So, Zs, Zl, Zp, Cc, Cf, Cs, Co, Cn See The Unicode Standard for the meaning of those values.Schartab.o Fmake-char-table Return a newly created char-table, with purpose PURPOSE. Each element is initialized to INIT, which defaults to nil. PURPOSE should be a symbol. If it has a `char-table-extra-slots' property, the property's value should be an integer between 0 and 10 that specifies how many extra slots the char-table has. Otherwise, the char-table has no extra slot. (fn PURPOSE &optional INIT)Fchar-table-subtype Return the subtype of char-table CHAR-TABLE. The value is a symbol. (fn CHAR-TABLE)Fchar-table-parent Return the parent char-table of CHAR-TABLE. The value is either nil or another char-table. If CHAR-TABLE holds nil for a given character, then the actual applicable value is inherited from the parent char-table (or from its parents, if necessary). (fn CHAR-TABLE)Fset-char-table-parent Set the parent char-table of CHAR-TABLE to PARENT. Return PARENT. PARENT must be either nil or another char-table. (fn CHAR-TABLE PARENT)Fchar-table-extra-slot Return the value of CHAR-TABLE's extra-slot number N. (fn CHAR-TABLE N)Fset-char-table-extra-slot Set CHAR-TABLE's extra-slot number N to VALUE. (fn CHAR-TABLE N VALUE)Fchar-table-range Return the value in CHAR-TABLE for a range of characters RANGE. RANGE should be nil (for the default value), a cons of character codes (for characters in the range), or a character code. (fn CHAR-TABLE RANGE)Fset-char-table-range Set the value in CHAR-TABLE for a range of characters RANGE to VALUE. RANGE should be t (for all characters), nil (for the default value), a cons of character codes (for characters in the range), or a character code. Return VALUE. (fn CHAR-TABLE RANGE VALUE)Foptimize-char-table Optimize CHAR-TABLE. TEST is the comparison function used to decide whether two entries are equivalent and can be merged. It defaults to `equal'. (fn CHAR-TABLE &optional TEST)Fmap-char-table Call FUNCTION for each character in CHAR-TABLE that has non-nil value. FUNCTION is called with two arguments, KEY and VALUE. KEY is a character code or a cons of character codes specifying a range of characters that have the same value. VALUE is what (char-table-range CHAR-TABLE KEY) returns. (fn FUNCTION CHAR-TABLE)Funicode-property-table-internal Return a char-table for Unicode character property PROP. Use `get-unicode-property-internal' and `put-unicode-property-internal' instead of `aref' and `aset' to get and put an element value. (fn PROP)Fget-unicode-property-internal Return an element of CHAR-TABLE for character CH. CHAR-TABLE must be what returned by `unicode-property-table-internal'. (fn CHAR-TABLE CH)Fput-unicode-property-internal Set an element of CHAR-TABLE for character CH to VALUE. CHAR-TABLE must be what returned by `unicode-property-table-internal'. (fn CHAR-TABLE CH VALUE)Vchar-code-property-alist Alist of character property name vs char-table containing property values. Internal use only.Sbidi.o Scm.o Sterm.o Ftty-display-color-p Return non-nil if the tty device TERMINAL can display colors. TERMINAL can be a terminal object, a frame, or nil (meaning the selected frame's terminal). This function always returns nil if TERMINAL does not refer to a text terminal. (fn &optional TERMINAL)Ftty-display-color-cells Return the number of colors supported by the tty device TERMINAL. TERMINAL can be a terminal object, a frame, or nil (meaning the selected frame's terminal). This function always returns 0 if TERMINAL does not refer to a text terminal. (fn &optional TERMINAL)Ftty-type Return the type of the tty device that TERMINAL uses. Returns nil if TERMINAL is not on a tty device. TERMINAL can be a terminal object, a frame, or nil (meaning the selected frame's terminal). (fn &optional TERMINAL)Fcontrolling-tty-p Return non-nil if TERMINAL is the controlling tty of the Emacs process. TERMINAL can be a terminal object, a frame, or nil (meaning the selected frame's terminal). This function always returns nil if TERMINAL is not on a tty device. (fn &optional TERMINAL)Ftty-no-underline Declare that the tty used by TERMINAL does not handle underlining. This is used to override the terminfo data, for certain terminals that do not really do underlining, but say that they do. This function has no effect if used on a non-tty terminal. TERMINAL can be a terminal object, a frame or nil (meaning the selected frame's terminal). This function always returns nil if TERMINAL does not refer to a text terminal. (fn &optional TERMINAL)Ftty-top-frame Return the topmost terminal frame on TERMINAL. TERMINAL can be a terminal object, a frame or nil (meaning the selected frame's terminal). This function returns nil if TERMINAL does not refer to a text terminal. Otherwise, it returns the top-most frame on the text terminal. (fn &optional TERMINAL)Fsuspend-tty Suspend the terminal device TTY. The device is restored to its default state, and Emacs ceases all access to the tty device. Frames that use the device are not deleted, but input is not read from them and if they change, their display is not updated. TTY may be a terminal object, a frame, or nil for the terminal device of the currently selected frame. This function runs `suspend-tty-functions' after suspending the device. The functions are run with one arg, the id of the suspended terminal device. `suspend-tty' does nothing if it is called on a device that is already suspended. A suspended tty may be resumed by calling `resume-tty' on it. (fn &optional TTY)Fresume-tty Resume the previously suspended terminal device TTY. The terminal is opened and reinitialized. Frames that are on the suspended terminal are revived. It is an error to resume a terminal while another terminal is active on the same device. This function runs `resume-tty-functions' after resuming the terminal. The functions are run with one arg, the id of the resumed terminal device. `resume-tty' does nothing if it is called on a device that is not suspended. TTY may be a terminal object, a frame, or nil (meaning the selected frame's terminal). (fn &optional TTY)Fgpm-mouse-start Open a connection to Gpm. Gpm-mouse can only be activated for one tty at a time. (fn)Fgpm-mouse-stop Close a connection to Gpm. (fn)Vsystem-uses-terminfo Non-nil means the system uses terminfo rather than termcap. This variable can be used by terminal emulator packages.Vsuspend-tty-functions Functions run after suspending a tty. The functions are run with one argument, the terminal object to be suspended. See `suspend-tty'.Vresume-tty-functions Functions run after resuming a tty. The functions are run with one argument, the terminal object that was revived. See `resume-tty'.Vvisible-cursor Non-nil means to make the cursor very visible. This only has an effect when running in a text terminal. What means "very visible" is up to your terminal. It may make the cursor bigger, or it may make it blink, or it may do nothing at all.Sterminal.o Fdelete-terminal Delete TERMINAL by deleting all frames on it and closing the terminal. TERMINAL may be a terminal object, a frame, or nil (meaning the selected frame's terminal). Normally, you may not delete a display if all other displays are suspended, but if the second argument FORCE is non-nil, you may do so. (fn &optional TERMINAL FORCE)Fframe-terminal Return the terminal that FRAME is displayed on. If FRAME is nil, the selected frame is used. The terminal device is represented by its integer identifier. (fn &optional FRAME)Fterminal-live-p Return non-nil if OBJECT is a terminal which has not been deleted. Value is nil if OBJECT is not a live display terminal. If object is a live display terminal, the return value indicates what sort of output terminal it uses. See the documentation of `framep' for possible return values. (fn OBJECT)Fterminal-list Return a list of all terminal devices. (fn)Fterminal-name Return the name of the terminal device TERMINAL. It is not guaranteed that the returned value is unique among opened devices. TERMINAL may be a terminal object, a frame, or nil (meaning the selected frame's terminal). (fn &optional TERMINAL)Fterminal-parameters Return the parameter-alist of terminal TERMINAL. The value is a list of elements of the form (PARM . VALUE), where PARM is a symbol. TERMINAL can be a terminal object, a frame, or nil (meaning the selected frame's terminal). (fn &optional TERMINAL)Fterminal-parameter Return TERMINAL's value for parameter PARAMETER. TERMINAL can be a terminal object, a frame, or nil (meaning the selected frame's terminal). (fn TERMINAL PARAMETER)Fset-terminal-parameter Set TERMINAL's value for parameter PARAMETER to VALUE. Return the previous value of PARAMETER. TERMINAL can be a terminal object, a frame or nil (meaning the selected frame's terminal). (fn TERMINAL PARAMETER VALUE)Vring-bell-function Non-nil means call this function to ring the bell. The function should accept no arguments.Vdelete-terminal-functions Special hook run when a terminal is deleted. Each function is called with argument, the terminal. This may be called just before actually deleting the terminal, or some time later.Sxfaces.o Fdump-colors Dump currently allocated colors to stderr. (fn)Fclear-face-cache Clear face caches on all frames. Optional THOROUGHLY non-nil means try to free unused fonts, too. (fn &optional THOROUGHLY)Fbitmap-spec-p Value is non-nil if OBJECT is a valid bitmap specification. A bitmap specification is either a string, a file name, or a list (WIDTH HEIGHT DATA) where WIDTH is the pixel width of the bitmap, HEIGHT is its height, and DATA is a string containing the bits of the pixmap. Bits are stored row by row, each row occupies (WIDTH + 7)/8 bytes. (fn OBJECT)Fcolor-gray-p Return non-nil if COLOR is a shade of gray (or white or black). FRAME specifies the frame and thus the display for interpreting COLOR. If FRAME is nil or omitted, use the selected frame. (fn COLOR &optional FRAME)Fcolor-supported-p Return non-nil if COLOR can be displayed on FRAME. BACKGROUND-P non-nil means COLOR is used as a background. Otherwise, this function tells whether it can be used as a foreground. If FRAME is nil or omitted, use the selected frame. COLOR must be a valid color name. (fn COLOR &optional FRAME BACKGROUND-P)Fx-family-fonts Return a list of available fonts of family FAMILY on FRAME. If FAMILY is omitted or nil, list all families. Otherwise, FAMILY must be a string, possibly containing wildcards `?' and `*'. If FRAME is omitted or nil, use the selected frame. Each element of the result is a vector [FAMILY WIDTH POINT-SIZE WEIGHT SLANT FIXED-P FULL REGISTRY-AND-ENCODING]. FAMILY is the font family name. POINT-SIZE is the size of the font in 1/10 pt. WIDTH, WEIGHT, and SLANT are symbols describing the width, weight and slant of the font. These symbols are the same as for face attributes. FIXED-P is non-nil if the font is fixed-pitch. FULL is the full name of the font, and REGISTRY-AND-ENCODING is a string giving the registry and encoding of the font. The result list is sorted according to the current setting of the face font sort order. (fn &optional FAMILY FRAME)Fx-list-fonts Return a list of the names of available fonts matching PATTERN. If optional arguments FACE and FRAME are specified, return only fonts the same size as FACE on FRAME. PATTERN should be a string containing a font name in the XLFD, Fontconfig, or GTK format. A font name given in the XLFD format may contain wildcard characters: the * character matches any substring, and the ? character matches any single character. PATTERN is case-insensitive. The return value is a list of strings, suitable as arguments to `set-face-font'. Fonts Emacs can't use may or may not be excluded even if they match PATTERN and FACE. The optional fourth argument MAXIMUM sets a limit on how many fonts to match. The first MAXIMUM fonts are reported. The optional fifth argument WIDTH, if specified, is a number of columns occupied by a character of a font. In that case, return only fonts the WIDTH times as wide as FACE on FRAME. (fn PATTERN &optional FACE FRAME MAXIMUM WIDTH)Finternal-make-lisp-face Make FACE, a symbol, a Lisp face with all attributes nil. If FACE was not known as a face before, create a new one. If optional argument FRAME is specified, make a frame-local face for that frame. Otherwise operate on the global face definition. Value is a vector of face attributes. (fn FACE &optional FRAME)Finternal-lisp-face-p Return non-nil if FACE names a face. FACE should be a symbol or string. If optional second argument FRAME is non-nil, check for the existence of a frame-local face with name FACE on that frame. Otherwise check for the existence of a global face. (fn FACE &optional FRAME)Finternal-copy-lisp-face Copy face FROM to TO. If FRAME is t, copy the global face definition of FROM. Otherwise, copy the frame-local definition of FROM on FRAME. If NEW-FRAME is a frame, copy that data into the frame-local definition of TO on NEW-FRAME. If NEW-FRAME is nil, FRAME controls where the data is copied to. The value is TO. (fn FROM TO FRAME NEW-FRAME)Finternal-set-lisp-face-attribute Set attribute ATTR of FACE to VALUE. FRAME being a frame means change the face on that frame. FRAME nil means change the face of the selected frame. FRAME t means change the default for new frames. FRAME 0 means change the face on all frames, and change the default for new frames. (fn FACE ATTR VALUE &optional FRAME)Finternal-face-x-get-resource Get the value of X resource RESOURCE, class CLASS. Returned value is for the display of frame FRAME. If FRAME is not specified or nil, use selected frame. This function exists because ordinary `x-get-resource' doesn't take a frame argument. (fn RESOURCE CLASS &optional FRAME)Finternal-set-lisp-face-attribute-from-resource (fn FACE ATTR VALUE &optional FRAME)Fface-attribute-relative-p Check whether a face attribute value is relative. Specifically, this function returns t if the attribute ATTRIBUTE with the value VALUE is relative. A relative value is one that doesn't entirely override whatever is inherited from another face. For most possible attributes, the only relative value that users see is `unspecified'. However, for :height, floating point values are also relative. (fn ATTRIBUTE VALUE)Fmerge-face-attribute Return face ATTRIBUTE VALUE1 merged with VALUE2. If VALUE1 or VALUE2 are absolute (see `face-attribute-relative-p'), then the result will be absolute, otherwise it will be relative. (fn ATTRIBUTE VALUE1 VALUE2)Finternal-get-lisp-face-attribute Return face attribute KEYWORD of face SYMBOL. If SYMBOL does not name a valid Lisp face or KEYWORD isn't a valid face attribute name, signal an error. If the optional argument FRAME is given, report on face SYMBOL in that frame. If FRAME is t, report on the defaults for face SYMBOL (for new frames). If FRAME is omitted or nil, use the selected frame. (fn SYMBOL KEYWORD &optional FRAME)Finternal-lisp-face-attribute-values Return a list of valid discrete values for face attribute ATTR. Value is nil if ATTR doesn't have a discrete set of valid values. (fn ATTR)Finternal-merge-in-global-face Add attributes from frame-default definition of FACE to FACE on FRAME. Default face attributes override any local face attributes. (fn FACE FRAME)Fface-font Return the font name of face FACE, or nil if it is unspecified. The font name is, by default, for ASCII characters. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). The font default for a face is either nil, or a list of the form (bold), (italic) or (bold italic). If FRAME is omitted or nil, use the selected frame. And, in this case, if the optional third argument CHARACTER is given, return the font name used for CHARACTER. (fn FACE &optional FRAME CHARACTER)Finternal-lisp-face-equal-p True if FACE1 and FACE2 are equal. If the optional argument FRAME is given, report on FACE1 and FACE2 in that frame. If FRAME is t, report on the defaults for FACE1 and FACE2 (for new frames). If FRAME is omitted or nil, use the selected frame. (fn FACE1 FACE2 &optional FRAME)Finternal-lisp-face-empty-p True if FACE has no attribute specified. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. (fn FACE &optional FRAME)Fframe-face-alist Return an alist of frame-local faces defined on FRAME. For internal use only. (fn &optional FRAME)Fcolor-distance Return an integer distance between COLOR1 and COLOR2 on FRAME. COLOR1 and COLOR2 may be either strings containing the color name, or lists of the form (RED GREEN BLUE), each in the range 0 to 65535 inclusive. If FRAME is unspecified or nil, the current frame is used. If METRIC is specified, it should be a function that accepts two lists of the form (RED GREEN BLUE) aforementioned. (fn COLOR1 COLOR2 &optional FRAME METRIC)Fface-attributes-as-vector Return a vector of face attributes corresponding to PLIST. (fn PLIST)Fdisplay-supports-face-attributes-p Return non-nil if all the face attributes in ATTRIBUTES are supported. The optional argument DISPLAY can be a display name, a frame, or nil (meaning the selected frame's display). The definition of `supported' is somewhat heuristic, but basically means that a face containing all the attributes in ATTRIBUTES, when merged with the default face for display, can be represented in a way that's (1) different in appearance than the default face, and (2) `close in spirit' to what the attributes specify, if not exact. Point (2) implies that a `:weight black' attribute will be satisfied by any display that can display bold, and a `:foreground "yellow"' as long as it can display a yellowish color, but `:slant italic' will _not_ be satisfied by the tty display code's automatic substitution of a `dim' face for italic. (fn ATTRIBUTES &optional DISPLAY)Finternal-set-font-selection-order Set font selection order for face font selection to ORDER. ORDER must be a list of length 4 containing the symbols `:width', `:height', `:weight', and `:slant'. Face attributes appearing first in ORDER are matched first, e.g. if `:height' appears before `:weight' in ORDER, font selection first tries to find a font with a suitable height, and then tries to match the font weight. Value is ORDER. (fn ORDER)Finternal-set-alternative-font-family-alist Define alternative font families to try in face font selection. ALIST is an alist of (FAMILY ALTERNATIVE1 ALTERNATIVE2 ...) entries. Each ALTERNATIVE is tried in order if no fonts of font family FAMILY can be found. Value is ALIST. (fn ALIST)Finternal-set-alternative-font-registry-alist Define alternative font registries to try in face font selection. ALIST is an alist of (REGISTRY ALTERNATIVE1 ALTERNATIVE2 ...) entries. Each ALTERNATIVE is tried in order if no fonts of font registry REGISTRY can be found. Value is ALIST. (fn ALIST)Ftty-suppress-bold-inverse-default-colors Suppress/allow boldness of faces with inverse default colors. SUPPRESS non-nil means suppress it. This affects bold faces on TTYs whose foreground is the default background color of the display and whose background is the default foreground color. For such faces, the bold face attribute is ignored if this variable is non-nil. (fn SUPPRESS)Fx-load-color-file Create an alist of color entries from an external file. The file should define one named RGB color per line like so: R G B name where R,G,B are numbers between 0 and 255 and name is an arbitrary string. (fn FILENAME)Fdump-face (fn &optional N)Fshow-face-resources (fn)Vface-new-frame-defaults List of global face definitions (for internal use only.)Vface-default-stipple Default stipple pattern used on monochrome displays. This stipple pattern is used on monochrome displays instead of shades of gray for a face background color. See `set-face-stipple' for possible values for this variable.Vtty-defined-color-alist An alist of defined terminal colors and their RGB values. See the docstring of `tty-color-alist' for the details.Vscalable-fonts-allowed Allowed scalable fonts. A value of nil means don't allow any scalable fonts. A value of t means allow any scalable font. Otherwise, value must be a list of regular expressions. A font may be scaled if its name matches a regular expression in the list. Note that if value is nil, a scalable font might still be used, if no other font of the appropriate family and registry is available.Vface-ignored-fonts List of ignored fonts. Each element is a regular expression that matches names of fonts to ignore.Vface-remapping-alist Alist of face remappings. Each element is of the form: (FACE . REPLACEMENT), which causes display of the face FACE to use REPLACEMENT instead. REPLACEMENT is a face specification, i.e. one of the following: (1) a face name (2) a property list of attribute/value pairs, or (3) a list in which each element has the form of (1) or (2). List values for REPLACEMENT are merged to form the final face specification, with earlier entries taking precedence, in the same way as with the `face' text property. Face-name remapping cycles are suppressed; recursive references use the underlying face instead of the remapped face. So a remapping of the form: (FACE EXTRA-FACE... FACE) or: (FACE (FACE-ATTR VAL ...) FACE) causes EXTRA-FACE... or (FACE-ATTR VAL ...) to be _merged_ with the existing definition of FACE. Note that this isn't necessary for the default face, since every face inherits from the default face. If this variable is made buffer-local, the face remapping takes effect only in that buffer. For instance, the mode my-mode could define a face `my-mode-default', and then in the mode setup function, do: (set (make-local-variable \='face-remapping-alist) \='((default my-mode-default)))). Because Emacs normally only redraws screen areas when the underlying buffer contents change, you may need to call `redraw-display' after changing this variable for it to take effect.Vface-font-rescale-alist Alist of fonts vs the rescaling factors. Each element is a cons (FONT-PATTERN . RESCALE-RATIO), where FONT-PATTERN is a font-spec or a regular expression matching a font name, and RESCALE-RATIO is a floating point number to specify how much larger (or smaller) font we should use. For instance, if a face requests a font of 10 point, we actually use a font of 10 * RESCALE-RATIO point.Semacsgtkfixed.o Semacs.o Finvocation-name Return the program name that was used to run Emacs. Any directory names are omitted. (fn)Finvocation-directory Return the directory name in which the Emacs executable was located. (fn)Fkill-emacs Exit the Emacs job and kill it. If ARG is an integer, return ARG as the exit program code. If ARG is a string, stuff it as keyboard input. This function is called upon receipt of the signals SIGTERM or SIGHUP, and upon SIGINT in batch mode. The value of `kill-emacs-hook', if not void, is a list of functions (of no args), all of which are called before Emacs is actually killed. (fn &optional ARG)Fdump-emacs Dump current state of Emacs into executable file FILENAME. Take symbols from SYMFILE (presumably the file you executed to run Emacs). This is used in the file `loadup.el' when building Emacs. You must run Emacs in batch mode in order to dump it. (fn FILENAME SYMFILE)Fdaemonp Return non-nil if the current emacs process is a daemon. If the daemon was given a name argument, return that name. (fn)Fdaemon-initialized Mark the Emacs daemon as being initialized. This finishes the daemonization process by doing the other half of detaching from the parent process and its tty file descriptors. (fn)Vcommand-line-args Args passed by shell to Emacs, as a list of strings. Many arguments are deleted from the list as they are processed.Vsystem-type The value is a symbol indicating the type of operating system you are using. Special values: `gnu' compiled for a GNU Hurd system. `gnu/linux' compiled for a GNU/Linux system. `gnu/kfreebsd' compiled for a GNU system with a FreeBSD kernel. `darwin' compiled for Darwin (GNU-Darwin, macOS, ...). `ms-dos' compiled as an MS-DOS application. `windows-nt' compiled as a native W32 application. `cygwin' compiled using the Cygwin library. Anything else (in Emacs 26, the possibilities are: aix, berkeley-unix, hpux, usg-unix-v) indicates some sort of Unix system.Vsystem-configuration Value is string indicating configuration Emacs was built for.Vsystem-configuration-options String containing the configuration options Emacs was built with.Vsystem-configuration-features String listing some of the main features this Emacs was compiled with. An element of the form "FOO" generally means that HAVE_FOO was defined during the build. This is mainly intended for diagnostic purposes in bug reports. Don't rely on it for testing whether a feature you want to use is available.Vnoninteractive Non-nil means Emacs is running without interactive terminal.Vkill-emacs-hook Hook run when `kill-emacs' is called. Since `kill-emacs' may be invoked when the terminal is disconnected (or in other similar situations), functions placed on this hook should not expect to be able to interact with the user. To ask for confirmation, see `kill-emacs-query-functions' instead. Before Emacs 24.1, the hook was not run in batch mode, i.e., if `noninteractive' was non-nil.Vpath-separator String containing the character that separates directories in search paths, such as PATH and other similar environment variables.Vinvocation-name The program name that was used to run Emacs. Any directory names are omitted.Vinvocation-directory The directory in which the Emacs executable was found, to run it. The value is nil if that directory's name is not known.Vinstallation-directory A directory within which to look for the `lib-src' and `etc' directories. In an installed Emacs, this is normally nil. It is non-nil if both `lib-src' (on MS-DOS, `info') and `etc' directories are found within the variable `invocation-directory' or its parent. For example, this is the case when running an uninstalled Emacs executable from its build directory.Vsystem-messages-locale System locale for messages.Vprevious-system-messages-locale Most recently used system locale for messages.Vsystem-time-locale System locale for time.Vprevious-system-time-locale Most recently used system locale for time.Vbefore-init-time Value of `current-time' before Emacs begins initialization.Vafter-init-time Value of `current-time' after loading the init files. This is nil during initialization.Vinhibit-x-resources If non-nil, X resources, Windows Registry settings, and NS defaults are not used.Vemacs-copyright Short copyright string for this version of Emacs.Vemacs-version Version numbers of this version of Emacs. This has the form: MAJOR.MINOR[.MICRO], where MAJOR/MINOR/MICRO are integers. MICRO is only present in unreleased development versions, and is not especially meaningful. Prior to Emacs 26.1, an extra final component .BUILD is present. This is now stored separately in `emacs-build-number'.Vreport-emacs-bug-address Address of mailing list for GNU Emacs bugs.Vdynamic-library-alist Alist of dynamic libraries vs external files implementing them. Each element is a list (LIBRARY FILE...), where the car is a symbol representing a supported external library, and the rest are strings giving alternate filenames for that library. Emacs tries to load the library from the files in the order they appear on the list; if none is loaded, the running session of Emacs won't have access to that library. Note that image types `pbm' and `xbm' do not need entries in this variable because they do not depend on external libraries and are always available. Also note that this is not a generic facility for accessing external libraries; only those already known by Emacs will be loaded.Skeyboard.o Frecursive-edit Invoke the editor command loop recursively. To get out of the recursive edit, a command can throw to `exit' -- for instance (throw \='exit nil). If you throw a value other than t, `recursive-edit' returns normally to the function that called it. Throwing a t value causes `recursive-edit' to quit, so that control returns to the command loop one level up. This function is called by the editor initialization to begin editing. (fn)Fcommand-error-default-function Produce default output for unhandled error message. Default value of `command-error-function'. (fn DATA CONTEXT SIGNAL)Ftop-level Exit all recursive editing levels. This also exits all active minibuffers. (fn)Fexit-recursive-edit Exit from the innermost recursive edit or minibuffer. (fn)Fabort-recursive-edit Abort the command that requested this recursive edit or minibuffer input. (fn)Finternal--track-mouse Call BODYFUN with mouse movement events enabled. (fn BODYFUN)Fcurrent-idle-time Return the current length of Emacs idleness, or nil. The value when Emacs is idle is a list of four integers (HIGH LOW USEC PSEC) in the same style as (current-time). The value when Emacs is not idle is nil. PSEC is a multiple of the system clock resolution. (fn)Finternal-event-symbol-parse-modifiers Parse the event symbol. For internal use. (fn SYMBOL)Fevent-convert-list Convert the event description list EVENT-DESC to an event type. EVENT-DESC should contain one base event type (a character or symbol) and zero or more modifier names (control, meta, hyper, super, shift, alt, drag, down, double or triple). The base must be last. The return value is an event type (a character or symbol) which has the same base event type and all the specified modifiers. (fn EVENT-DESC)Fread-key-sequence Read a sequence of keystrokes and return as a string or vector. The sequence is sufficient to specify a non-prefix command in the current local and global maps. First arg PROMPT is a prompt string. If nil, do not prompt specially. Second (optional) arg CONTINUE-ECHO, if non-nil, means this key echos as a continuation of the previous key. The third (optional) arg DONT-DOWNCASE-LAST, if non-nil, means do not convert the last event to lower case. (Normally any upper case event is converted to lower case if the original event is undefined and the lower case equivalent is defined.) A non-nil value is appropriate for reading a key sequence to be defined. A C-g typed while in this function is treated like any other character, and `quit-flag' is not set. If the key sequence starts with a mouse click, then the sequence is read using the keymaps of the buffer of the window clicked in, not the buffer of the selected window as normal. `read-key-sequence' drops unbound button-down events, since you normally only care about the click or drag events which follow them. If a drag or multi-click event is unbound, but the corresponding click event would be bound, `read-key-sequence' turns the event into a click event at the drag's starting position. This means that you don't have to distinguish between click and drag, double, or triple events unless you want to. `read-key-sequence' prefixes mouse events on mode lines, the vertical lines separating windows, and scroll bars with imaginary keys `mode-line', `vertical-line', and `vertical-scroll-bar'. Optional fourth argument CAN-RETURN-SWITCH-FRAME non-nil means that this function will process a switch-frame event if the user switches frames before typing anything. If the user switches frames in the middle of a key sequence, or at the start of the sequence but CAN-RETURN-SWITCH-FRAME is nil, then the event will be put off until after the current key sequence. `read-key-sequence' checks `function-key-map' for function key sequences, where they wouldn't conflict with ordinary bindings. See `function-key-map' for more details. The optional fifth argument CMD-LOOP, if non-nil, means that this key sequence is being read by something that will read commands one after another. It should be nil if the caller will read just one key sequence. (fn PROMPT &optional CONTINUE-ECHO DONT-DOWNCASE-LAST CAN-RETURN-SWITCH-FRAME CMD-LOOP)Fread-key-sequence-vector Like `read-key-sequence' but always return a vector. (fn PROMPT &optional CONTINUE-ECHO DONT-DOWNCASE-LAST CAN-RETURN-SWITCH-FRAME CMD-LOOP)Finput-pending-p Return t if command input is currently available with no wait. Actually, the value is nil only if we can be sure that no input is available; if there is a doubt, the value is t. If CHECK-TIMERS is non-nil, timers that are ready to run will do so. (fn &optional CHECK-TIMERS)Frecent-keys Return vector of last few events, not counting those from keyboard macros. If INCLUDE-CMDS is non-nil, include the commands that were run, represented as events of the form (nil . COMMAND). (fn &optional INCLUDE-CMDS)Fthis-command-keys Return the key sequence that invoked this command. However, if the command has called `read-key-sequence', it returns the last key sequence that has been read. The value is a string or a vector. See also `this-command-keys-vector'. (fn)Fset--this-command-keys Set the vector to be returned by `this-command-keys'. The argument KEYS must be a string. Internal use only. (fn KEYS)Fthis-command-keys-vector Return the key sequence that invoked this command, as a vector. However, if the command has called `read-key-sequence', it returns the last key sequence that has been read. See also `this-command-keys'. (fn)Fthis-single-command-keys Return the key sequence that invoked this command. More generally, it returns the last key sequence read, either by the command loop or by `read-key-sequence'. Unlike `this-command-keys', this function's value does not include prefix arguments. The value is always a vector. (fn)Fthis-single-command-raw-keys Return the raw events that were read for this command. More generally, it returns the last key sequence read, either by the command loop or by `read-key-sequence'. Unlike `this-single-command-keys', this function's value shows the events before all translations (except for input methods). The value is always a vector. (fn)Fclear-this-command-keys Clear out the vector that `this-command-keys' returns. Also clear the record of the last 100 events, unless optional arg KEEP-RECORD is non-nil. (fn &optional KEEP-RECORD)Frecursion-depth Return the current depth in recursive edits. (fn)Fopen-dribble-file Start writing all keyboard characters to a dribble file called FILE. If FILE is nil, close any open dribble file. The file will be closed when Emacs exits. Be aware that this records ALL characters you type! This may include sensitive information such as passwords. (fn FILE)Fdiscard-input Discard the contents of the terminal input buffer. Also end any kbd macro being defined. (fn)Fsuspend-emacs Stop Emacs and return to superior process. You can resume later. If `cannot-suspend' is non-nil, or if the system doesn't support job control, run a subshell instead. If optional arg STUFFSTRING is non-nil, its characters are stuffed to be read as terminal input by Emacs's parent, after suspension. Before suspending, run the normal hook `suspend-hook'. After resumption run the normal hook `suspend-resume-hook'. Some operating systems cannot stop the Emacs process and resume it later. On such systems, Emacs starts a subshell instead of suspending. (fn &optional STUFFSTRING)Fset-input-interrupt-mode Set interrupt mode of reading keyboard input. If INTERRUPT is non-nil, Emacs will use input interrupts; otherwise Emacs uses CBREAK mode. See also `current-input-mode'. (fn INTERRUPT)Fset-output-flow-control Enable or disable ^S/^Q flow control for output to TERMINAL. If FLOW is non-nil, flow control is enabled and you cannot use C-s or C-q in key sequences. This setting only has an effect on tty terminals and only when Emacs reads input in CBREAK mode; see `set-input-interrupt-mode'. See also `current-input-mode'. (fn FLOW &optional TERMINAL)Fset-input-meta-mode Enable or disable 8-bit input on TERMINAL. If META is t, Emacs will accept 8-bit input, and interpret the 8th bit as the Meta modifier. If META is nil, Emacs will ignore the top bit, on the assumption it is parity. Otherwise, Emacs will accept and pass through 8-bit input without specially interpreting the top bit. This setting only has an effect on tty terminal devices. Optional parameter TERMINAL specifies the tty terminal device to use. It may be a terminal object, a frame, or nil for the terminal used by the currently selected frame. See also `current-input-mode'. (fn META &optional TERMINAL)Fset-quit-char Specify character used for quitting. QUIT must be an ASCII character. This function only has an effect on the controlling tty of the Emacs process. See also `current-input-mode'. (fn QUIT)Fset-input-mode Set mode of reading keyboard input. First arg INTERRUPT non-nil means use input interrupts; nil means use CBREAK mode. Second arg FLOW non-nil means use ^S/^Q flow control for output to terminal (no effect except in CBREAK mode). Third arg META t means accept 8-bit input (for a Meta key). META nil means ignore the top bit, on the assumption it is parity. Otherwise, accept 8-bit input and don't use the top bit for Meta. Optional fourth arg QUIT if non-nil specifies character to use for quitting. See also `current-input-mode'. (fn INTERRUPT FLOW META &optional QUIT)Fcurrent-input-mode Return information about the way Emacs currently reads keyboard input. The value is a list of the form (INTERRUPT FLOW META QUIT), where INTERRUPT is non-nil if Emacs is using interrupt-driven input; if nil, Emacs is using CBREAK mode. FLOW is non-nil if Emacs uses ^S/^Q flow control for output to the terminal; this does not apply if Emacs uses interrupt-driven input. META is t if accepting 8-bit input with 8th bit as Meta flag. META nil means ignoring the top bit, on the assumption it is parity. META is neither t nor nil if accepting 8-bit input and using all 8 bits as the character code. QUIT is the character Emacs currently uses to quit. The elements of this list correspond to the arguments of `set-input-mode'. (fn)Fposn-at-x-y Return position information for pixel coordinates X and Y. By default, X and Y are relative to text area of the selected window. Optional third arg FRAME-OR-WINDOW non-nil specifies frame or window. If optional fourth arg WHOLE is non-nil, X is relative to the left edge of the window. The return value is similar to a mouse click position: (WINDOW AREA-OR-POS (X . Y) TIMESTAMP OBJECT POS (COL . ROW) IMAGE (DX . DY) (WIDTH . HEIGHT)) The `posn-' functions access elements of such lists. (fn X Y &optional FRAME-OR-WINDOW WHOLE)Fposn-at-point Return position information for buffer position POS in WINDOW. POS defaults to point in WINDOW; WINDOW defaults to the selected window. Return nil if POS is not visible in WINDOW. Otherwise, the return value is similar to that returned by `event-start' for a mouse click at the upper left corner of the glyph corresponding to POS: (WINDOW AREA-OR-POS (X . Y) TIMESTAMP OBJECT POS (COL . ROW) IMAGE (DX . DY) (WIDTH . HEIGHT)) The `posn-' functions access elements of such lists. (fn &optional POS WINDOW)Vinternal--top-level-message Message displayed by `normal-top-level'.Vlast-command-event Last input event that was part of a command.Vlast-nonmenu-event Last input event in a command, except for mouse menu events. Mouse menus give back keys that don't look like mouse events; this variable holds the actual mouse event that led to the menu, so that you can determine whether the command was run by mouse or not.Vlast-input-event Last input event.Vunread-command-events List of events to be read as the command input. These events are processed first, before actual keyboard input. Events read from this list are not normally added to `this-command-keys', as they will already have been added once as they were read for the first time. An element of the form (t . EVENT) forces EVENT to be added to that list.Vunread-post-input-method-events List of events to be processed as input by input methods. These events are processed before `unread-command-events' and actual keyboard input, but are not given to `input-method-function'.Vunread-input-method-events List of events to be processed as input by input methods. These events are processed after `unread-command-events', but before actual keyboard input. If there's an active input method, the events are given to `input-method-function'.Vmeta-prefix-char Meta-prefix character code. Meta-foo as command input turns into this character followed by foo.Vlast-command The last command executed. Normally a symbol with a function definition, but can be whatever was found in the keymap, or whatever the variable `this-command' was set to by that command. The value `mode-exit' is special; it means that the previous command read an event that told it to exit, and it did so and unread that event. In other words, the present command is the event that made the previous command exit. The value `kill-region' is special; it means that the previous command was a kill command. `last-command' has a separate binding for each terminal device. See Info node `(elisp)Multiple Terminals'.Vreal-last-command Same as `last-command', but never altered by Lisp code. Taken from the previous value of `real-this-command'.Vlast-repeatable-command Last command that may be repeated. The last command executed that was not bound to an input event. This is the command `repeat' will try to repeat. Taken from a previous value of `real-this-command'.Vthis-command The command now being executed. The command can set this variable; whatever is put here will be in `last-command' during the following command.Vreal-this-command This is like `this-command', except that commands should never modify it.Vthis-command-keys-shift-translated Non-nil if the key sequence activating this command was shift-translated. Shift-translation occurs when there is no binding for the key sequence as entered, but a binding was found by changing an upper-case letter to lower-case, or a shifted function key to an unshifted one.Vthis-original-command The command bound to the current key sequence before remapping. It equals `this-command' if the original command was not remapped through any of the active keymaps. Otherwise, the value of `this-command' is the result of looking up the original command in the active keymaps.Vauto-save-interval Number of input events between auto-saves. Zero means disable autosaving due to number of characters typed.Vauto-save-timeout Number of seconds idle time before auto-save. Zero or nil means disable auto-saving due to idleness. After auto-saving due to this many seconds of idle time, Emacs also does a garbage collection if that seems to be warranted.Vecho-keystrokes Nonzero means echo unfinished commands after this many seconds of pause. The value may be integer or floating point. If the value is zero, don't echo at all.Vpolling-period Interval between polling for input during Lisp execution. The reason for polling is to make C-g work to stop a running program. Polling is needed only when using X windows and SIGIO does not work. Polling is automatically disabled in all other cases.Vdouble-click-time Maximum time between mouse clicks to make a double-click. Measured in milliseconds. The value nil means disable double-click recognition; t means double-clicks have no time limit and are detected by position only.Vdouble-click-fuzz Maximum mouse movement between clicks to make a double-click. On window-system frames, value is the number of pixels the mouse may have moved horizontally or vertically between two clicks to make a double-click. On non window-system frames, value is interpreted in units of 1/8 characters instead of pixels. This variable is also the threshold for motion of the mouse to count as a drag.Vnum-input-keys Number of complete key sequences read as input so far. This includes key sequences read from keyboard macros. The number is effectively the number of interactive command invocations.Vnum-nonmacro-input-events Number of input events read from the keyboard so far. This does not include events generated by keyboard macros.Vlast-event-frame The frame in which the most recently read event occurred. If the last event came from a keyboard macro, this is set to `macro'.Vtty-erase-char The ERASE character as set by the user with stty.Vhelp-char Character to recognize as meaning Help. When it is read, do `(eval help-form)', and display result if it's a string. If the value of `help-form' is nil, this char can be read normally.Vhelp-event-list List of input events to recognize as meaning Help. These work just like the value of `help-char' (see that).Vhelp-form Form to execute when character `help-char' is read. If the form returns a string, that string is displayed. If `help-form' is nil, the help char is not recognized.Vprefix-help-command Command to run when `help-char' character follows a prefix key. This command is used only when there is no actual binding for that character after that prefix key.Vtop-level Form to evaluate when Emacs starts up. Useful to set before you dump a modified Emacs.Vkeyboard-translate-table Translate table for local keyboard input, or nil. If non-nil, the value should be a char-table. Each character read from the keyboard is looked up in this char-table. If the value found there is non-nil, then it is used instead of the actual input character. The value can also be a string or vector, but this is considered obsolete. If it is a string or vector of length N, character codes N and up are left untranslated. In a vector, an element which is nil means "no translation". This is applied to the characters supplied to input methods, not their output. See also `translation-table-for-input'. This variable has a separate binding for each terminal. See Info node `(elisp)Multiple Terminals'.Vcannot-suspend Non-nil means to always spawn a subshell instead of suspending. (Even if the operating system has support for stopping a process.)Vmenu-prompting Non-nil means prompt with menus when appropriate. This is done when reading from a keymap that has a prompt string, for elements that have prompt strings. The menu is displayed on the screen if X menus were enabled at configuration time and the previous event was a mouse click prefix key. Otherwise, menu prompting uses the echo area.Vmenu-prompt-more-char Character to see next line of menu prompt. Type this character while in a menu prompt to rotate around the lines of it.Vextra-keyboard-modifiers A mask of additional modifier keys to use with every keyboard character. Emacs applies the modifiers of the character stored here to each keyboard character it reads. For example, after evaluating the expression (setq extra-keyboard-modifiers ?\C-x) all input characters will have the control modifier applied to them. Note that the character ?\C-@, equivalent to the integer zero, does not count as a control character; rather, it counts as a character with no modifiers; thus, setting `extra-keyboard-modifiers' to zero cancels any modification.Vdeactivate-mark If an editing command sets this to t, deactivate the mark afterward. The command loop sets this to nil before each command, and tests the value when the command returns. Buffer modification stores t in this variable.Vpre-command-hook Normal hook run before each command is executed. If an unhandled error happens in running this hook, the function in which the error occurred is unconditionally removed, since otherwise the error might happen repeatedly and make Emacs nonfunctional. See also `post-command-hook'.Vpost-command-hook Normal hook run after each command is executed. If an unhandled error happens in running this hook, the function in which the error occurred is unconditionally removed, since otherwise the error might happen repeatedly and make Emacs nonfunctional. It is a bad idea to use this hook for expensive processing. If unavoidable, wrap your code in `(while-no-input (redisplay) CODE)' to avoid making Emacs unresponsive while the user types. See also `pre-command-hook'.Vecho-area-clear-hook Normal hook run when clearing the echo area.Vlucid-menu-bar-dirty-flag Non-nil means menu bar, specified Lucid style, needs to be recomputed.Vmenu-bar-final-items List of menu bar items to move to the end of the menu bar. The elements of the list are event types that may have menu bar bindings.Vtool-bar-separator-image-expression Expression evaluating to the image spec for a tool-bar separator. This is used internally by graphical displays that do not render tool-bar separators natively. Otherwise it is unused (e.g. on GTK).Voverriding-terminal-local-map Per-terminal keymap that takes precedence over all other keymaps. This variable is intended to let commands such as `universal-argument' set up a different keymap for reading the next command. `overriding-terminal-local-map' has a separate binding for each terminal device. See Info node `(elisp)Multiple Terminals'.Voverriding-local-map Keymap that replaces (overrides) local keymaps. If this variable is non-nil, Emacs looks up key bindings in this keymap INSTEAD OF the keymap char property, minor mode maps, and the buffer's local map. Hence, the only active keymaps would be `overriding-terminal-local-map', this keymap, and `global-keymap', in order of precedence.Voverriding-local-map-menu-flag Non-nil means `overriding-local-map' applies to the menu bar. Otherwise, the menu bar continues to reflect the buffer's local map and the minor mode maps regardless of `overriding-local-map'.Vspecial-event-map Keymap defining bindings for special events to execute at low level.Vtrack-mouse Non-nil means generate motion events for mouse motion.Vsystem-key-alist Alist of system-specific X windows key symbols. Each element should have the form (N . SYMBOL) where N is the numeric keysym code (sans the "system-specific" bit 1<<28) and SYMBOL is its name. `system-key-alist' has a separate binding for each terminal device. See Info node `(elisp)Multiple Terminals'.Vlocal-function-key-map Keymap that translates key sequences to key sequences during input. This is used mainly for mapping key sequences into some preferred key events (symbols). The `read-key-sequence' function replaces any subsequence bound by `local-function-key-map' with its binding. More precisely, when the active keymaps have no binding for the current key sequence but `local-function-key-map' binds a suffix of the sequence to a vector or string, `read-key-sequence' replaces the matching suffix with its binding, and continues with the new sequence. If the binding is a function, it is called with one argument (the prompt) and its return value (a key sequence) is used. The events that come from bindings in `local-function-key-map' are not themselves looked up in `local-function-key-map'. For example, suppose `local-function-key-map' binds `ESC O P' to [f1]. Typing `ESC O P' to `read-key-sequence' would return [f1]. Typing `C-x ESC O P' would return [?\C-x f1]. If [f1] were a prefix key, typing `ESC O P x' would return [f1 x]. `local-function-key-map' has a separate binding for each terminal device. See Info node `(elisp)Multiple Terminals'. If you need to define a binding on all terminals, change `function-key-map' instead. Initially, `local-function-key-map' is an empty keymap that has `function-key-map' as its parent on all terminal devices.Vinput-decode-map Keymap that decodes input escape sequences. This is used mainly for mapping ASCII function key sequences into real Emacs function key events (symbols). The `read-key-sequence' function replaces any subsequence bound by `input-decode-map' with its binding. Contrary to `function-key-map', this map applies its rebinding regardless of the presence of an ordinary binding. So it is more like `key-translation-map' except that it applies before `function-key-map' rather than after. If the binding is a function, it is called with one argument (the prompt) and its return value (a key sequence) is used. The events that come from bindings in `input-decode-map' are not themselves looked up in `input-decode-map'.Vfunction-key-map The parent keymap of all `local-function-key-map' instances. Function key definitions that apply to all terminal devices should go here. If a mapping is defined in both the current `local-function-key-map' binding and this variable, then the local definition will take precedence.Vkey-translation-map Keymap of key translations that can override keymaps. This keymap works like `input-decode-map', but comes after `function-key-map'. Another difference is that it is global rather than terminal-local.Vdeferred-action-list List of deferred actions to be performed at a later time. The precise format isn't relevant here; we just check whether it is nil.Vdeferred-action-function Function to call to handle deferred actions, after each command. This function is called with no arguments after each command whenever `deferred-action-list' is non-nil.Vdelayed-warnings-list List of warnings to be displayed after this command. Each element must be a list (TYPE MESSAGE [LEVEL [BUFFER-NAME]]), as per the args of `display-warning' (which see). If this variable is non-nil, `delayed-warnings-hook' will be run immediately after running `post-command-hook'.Vtimer-list List of active absolute time timers in order of increasing time.Vtimer-idle-list List of active idle-time timers in order of increasing time.Vinput-method-function If non-nil, the function that implements the current input method. It's called with one argument, which must be a single-byte character that was just read. Any single-byte character is acceptable, except the DEL character, codepoint 127 decimal, 177 octal. Typically this function uses `read-event' to read additional events. When it does so, it should first bind `input-method-function' to nil so it will not be called recursively. The function should return a list of zero or more events to be used as input. If it wants to put back some events to be reconsidered, separately, by the input method, it can add them to the beginning of `unread-command-events'. The input method function can find in `input-method-previous-message' the previous echo area message. The input method function should refer to the variables `input-method-use-echo-area' and `input-method-exit-on-first-char' for guidance on what to do.Vinput-method-previous-message When `input-method-function' is called, hold the previous echo area message. This variable exists because `read-event' clears the echo area before running the input method. It is nil if there was no message.Vshow-help-function If non-nil, the function that implements the display of help. It's called with one argument, the help string to display.Vdisable-point-adjustment If non-nil, suppress point adjustment after executing a command. After a command is executed, if point moved into a region that has special properties (e.g. composition, display), Emacs adjusts point to the boundary of the region. But when a command leaves this variable at a non-nil value (e.g., with a setq), this point adjustment is suppressed. This variable is set to nil before reading a command, and is checked just after executing the command.Vglobal-disable-point-adjustment If non-nil, always suppress point adjustments. The default value is nil, in which case point adjustments are suppressed only after special commands that leave `disable-point-adjustment' (which see) at a non-nil value.Vminibuffer-message-timeout How long to display an echo-area message when the minibuffer is active. If the value is a number, it should be specified in seconds. If the value is not a number, such messages never time out.Vthrow-on-input If non-nil, any keyboard input throws to this symbol. The value of that variable is passed to `quit-flag' and later causes a peculiar kind of quitting.Vcommand-error-function Function to output error messages. Called with three arguments: - the error data, a list of the form (SIGNALED-CONDITION . SIGNAL-DATA) such as what `condition-case' would bind its variable to, - the context (a string which normally goes at the start of the message), - the Lisp function within which the error was signaled.Venable-disabled-menus-and-buttons If non-nil, don't ignore events produced by disabled menu items and tool-bar. Help functions bind this to allow help on disabled menu items and tool-bar buttons.Vselect-active-regions If non-nil, an active region automatically sets the primary selection. If the value is `only', only temporarily active regions (usually made by mouse-dragging or shift-selection) set the window selection. This takes effect only when Transient Mark mode is enabled.Vsaved-region-selection Contents of active region prior to buffer modification. If `select-active-regions' is non-nil, Emacs sets this to the text in the region before modifying the buffer. The next call to the function `deactivate-mark' uses this to set the window selection.Vselection-inhibit-update-commands List of commands which should not update the selection. Normally, if `select-active-regions' is non-nil and the mark remains active after a command (i.e. the mark was not deactivated), the Emacs command loop sets the selection to the text in the region. However, if the command is in this list, the selection is not updated.Vdebug-on-event Enter debugger on this event. When Emacs receives the special event specified by this variable, it will try to break into the debugger as soon as possible instead of processing the event normally through `special-event-map'. Currently, the only supported values for this variable are `sigusr1' and `sigusr2'.Vattempt-stack-overflow-recovery If non-nil, attempt to recover from C stack overflows. This recovery is potentially unsafe and may lead to deadlocks or data corruption, but it usually works and may preserve modified buffers that would otherwise be lost. If nil, treat stack overflow like any other kind of crash or fatal error.Vattempt-orderly-shutdown-on-fatal-signal If non-nil, attempt orderly shutdown on fatal signals. By default this variable is non-nil, and Emacs attempts to perform an orderly shutdown when it catches a fatal signal (e.g., a crash). The orderly shutdown includes an attempt to auto-save your unsaved edits and other useful cleanups. These cleanups are potentially unsafe and may lead to deadlocks or data corruption, but it usually works and may preserve data in modified buffers that would otherwise be lost. If nil, Emacs crashes immediately in response to fatal signals.Vwhile-no-input-ignore-events Ignored events from while-no-input.Smacros.o Fstart-kbd-macro Record subsequent keyboard input, defining a keyboard macro. The commands are recorded even as they are executed. Use \[end-kbd-macro] to finish recording and make the macro available. Use \[name-last-kbd-macro] to give it a permanent name. Non-nil arg (prefix arg) means append to last macro defined; this begins by re-executing that macro as if you typed it again. If optional second arg, NO-EXEC, is non-nil, do not re-execute last macro before appending to it. (fn APPEND &optional NO-EXEC)Fend-kbd-macro Finish defining a keyboard macro. The definition was started by \[start-kbd-macro]. The macro is now available for use via \[call-last-kbd-macro], or it can be given a name with \[name-last-kbd-macro] and then invoked under that name. With numeric arg, repeat macro now that many times, counting the definition just completed as the first repetition. An argument of zero means repeat until error. In Lisp, optional second arg LOOPFUNC may be a function that is called prior to each iteration of the macro. Iteration stops if LOOPFUNC returns nil. (fn &optional REPEAT LOOPFUNC)Fcancel-kbd-macro-events Cancel the events added to a keyboard macro for this command. (fn)Fstore-kbd-macro-event Store EVENT into the keyboard macro being defined. (fn EVENT)Fcall-last-kbd-macro Call the last keyboard macro that you defined with \[start-kbd-macro]. A prefix argument serves as a repeat count. Zero means repeat until error. To make a macro permanent so you can call it even after defining others, use \[name-last-kbd-macro]. In Lisp, optional second arg LOOPFUNC may be a function that is called prior to each iteration of the macro. Iteration stops if LOOPFUNC returns nil. (fn &optional PREFIX LOOPFUNC)Fexecute-kbd-macro Execute MACRO as string of editor command characters. MACRO can also be a vector of keyboard events. If MACRO is a symbol, its function definition is used. COUNT is a repeat count, or nil for once, or 0 for infinite loop. Optional third arg LOOPFUNC may be a function that is called prior to each iteration of the macro. Iteration stops if LOOPFUNC returns nil. (fn MACRO &optional COUNT LOOPFUNC)Vkbd-macro-termination-hook Normal hook run whenever a keyboard macro terminates. This is run whether the macro ends normally or prematurely due to an error.Vdefining-kbd-macro Non-nil while a keyboard macro is being defined. Don't set this! The value is the symbol `append' while appending to the definition of an existing macro.Vexecuting-kbd-macro Currently executing keyboard macro (string or vector). This is nil when not executing a keyboard macro.Vexecuting-kbd-macro-index Index in currently executing keyboard macro; undefined if none executing.Vlast-kbd-macro Last kbd macro defined, as a string or vector; nil if none defined.Skeymap.o Fmake-keymap Construct and return a new keymap, of the form (keymap CHARTABLE . ALIST). CHARTABLE is a char-table that holds the bindings for all characters without modifiers. All entries in it are initially nil, meaning "command undefined". ALIST is an assoc-list which holds bindings for function keys, mouse events, and any other things that appear in the input stream. Initially, ALIST is nil. The optional arg STRING supplies a menu name for the keymap in case you use it as a menu with `x-popup-menu'. (fn &optional STRING)Fmake-sparse-keymap Construct and return a new sparse keymap. Its car is `keymap' and its cdr is an alist of (CHAR . DEFINITION), which binds the character CHAR to DEFINITION, or (SYMBOL . DEFINITION), which binds the function key or mouse event SYMBOL to DEFINITION. Initially the alist is nil. The optional arg STRING supplies a menu name for the keymap in case you use it as a menu with `x-popup-menu'. (fn &optional STRING)Fkeymapp Return t if OBJECT is a keymap. A keymap is a list (keymap . ALIST), or a symbol whose function definition is itself a keymap. ALIST elements look like (CHAR . DEFN) or (SYMBOL . DEFN); a vector of densely packed bindings for small character codes is also allowed as an element. (fn OBJECT)Fkeymap-prompt Return the prompt-string of a keymap MAP. If non-nil, the prompt is shown in the echo-area when reading a key-sequence to be looked-up in this keymap. (fn MAP)Fkeymap-parent Return the parent keymap of KEYMAP. If KEYMAP has no parent, return nil. (fn KEYMAP)Fset-keymap-parent Modify KEYMAP to set its parent map to PARENT. Return PARENT. PARENT should be nil or another keymap. (fn KEYMAP PARENT)Fmap-keymap-internal Call FUNCTION once for each event binding in KEYMAP. FUNCTION is called with two arguments: the event that is bound, and the definition it is bound to. The event may be a character range. If KEYMAP has a parent, this function returns it without processing it. (fn FUNCTION KEYMAP)Fmap-keymap Call FUNCTION once for each event binding in KEYMAP. FUNCTION is called with two arguments: the event that is bound, and the definition it is bound to. The event may be a character range. If KEYMAP has a parent, the parent's bindings are included as well. This works recursively: if the parent has itself a parent, then the grandparent's bindings are also included and so on. (fn FUNCTION KEYMAP)Fcopy-keymap Return a copy of the keymap KEYMAP. Note that this is almost never needed. If you want a keymap that's like another yet with a few changes, you should use map inheritance rather than copying. I.e. something like: (let ((map (make-sparse-keymap))) (set-keymap-parent map <theirmap>) (define-key map ...) ...) After performing `copy-keymap', the copy starts out with the same definitions of KEYMAP, but changing either the copy or KEYMAP does not affect the other. Any key definitions that are subkeymaps are recursively copied. However, a key definition which is a symbol whose definition is a keymap is not copied. (fn KEYMAP)Fdefine-key In KEYMAP, define key sequence KEY as DEF. KEYMAP is a keymap. KEY is a string or a vector of symbols and characters, representing a sequence of keystrokes and events. Non-ASCII characters with codes above 127 (such as ISO Latin-1) can be represented by vectors. Two types of vector have special meanings: [remap COMMAND] remaps any key binding for COMMAND. [t] creates a default definition, which applies to any event with no other definition in KEYMAP. DEF is anything that can be a key's definition: nil (means key is undefined in this keymap), a command (a Lisp function suitable for interactive calling), a string (treated as a keyboard macro), a keymap (to define a prefix key), a symbol (when the key is looked up, the symbol will stand for its function definition, which should at that time be one of the above, or another symbol whose function definition is used, etc.), a cons (STRING . DEFN), meaning that DEFN is the definition (DEFN should be a valid definition in its own right), or a cons (MAP . CHAR), meaning use definition of CHAR in keymap MAP, or an extended menu item definition. (See info node `(elisp)Extended Menu Items'.) If KEYMAP is a sparse keymap with a binding for KEY, the existing binding is altered. If there is no binding for KEY, the new pair binding KEY to DEF is added at the front of KEYMAP. (fn KEYMAP KEY DEF)Fcommand-remapping Return the remapping for command COMMAND. Returns nil if COMMAND is not remapped (or not a symbol). If the optional argument POSITION is non-nil, it specifies a mouse position as returned by `event-start' and `event-end', and the remapping occurs in the keymaps associated with it. It can also be a number or marker, in which case the keymap properties at the specified buffer position instead of point are used. The KEYMAPS argument is ignored if POSITION is non-nil. If the optional argument KEYMAPS is non-nil, it should be a list of keymaps to search for command remapping. Otherwise, search for the remapping in all currently active keymaps. (fn COMMAND &optional POSITION KEYMAPS)Flookup-key In keymap KEYMAP, look up key sequence KEY. Return the definition. A value of nil means undefined. See doc of `define-key' for kinds of definitions. A number as value means KEY is "too long"; that is, characters or symbols in it except for the last one fail to be a valid sequence of prefix characters in KEYMAP. The number is how many characters at the front of KEY it takes to reach a non-prefix key. Normally, `lookup-key' ignores bindings for t, which act as default bindings, used when nothing else in the keymap applies; this makes it usable as a general function for probing keymaps. However, if the third optional argument ACCEPT-DEFAULT is non-nil, `lookup-key' will recognize the default bindings, just as `read-key-sequence' does. (fn KEYMAP KEY &optional ACCEPT-DEFAULT)Fcurrent-active-maps Return a list of the currently active keymaps. OLP if non-nil indicates that we should obey `overriding-local-map' and `overriding-terminal-local-map'. POSITION can specify a click position like in the respective argument of `key-binding'. (fn &optional OLP POSITION)Fkey-binding Return the binding for command KEY in current keymaps. KEY is a string or vector, a sequence of keystrokes. The binding is probably a symbol with a function definition. Normally, `key-binding' ignores bindings for t, which act as default bindings, used when nothing else in the keymap applies; this makes it usable as a general function for probing keymaps. However, if the optional second argument ACCEPT-DEFAULT is non-nil, `key-binding' does recognize the default bindings, just as `read-key-sequence' does. Like the normal command loop, `key-binding' will remap the command resulting from looking up KEY by looking up the command in the current keymaps. However, if the optional third argument NO-REMAP is non-nil, `key-binding' returns the unmapped command. If KEY is a key sequence initiated with the mouse, the used keymaps will depend on the clicked mouse position with regard to the buffer and possible local keymaps on strings. If the optional argument POSITION is non-nil, it specifies a mouse position as returned by `event-start' and `event-end', and the lookup occurs in the keymaps associated with it instead of KEY. It can also be a number or marker, in which case the keymap properties at the specified buffer position instead of point are used. (fn KEY &optional ACCEPT-DEFAULT NO-REMAP POSITION)Flocal-key-binding Return the binding for command KEYS in current local keymap only. KEYS is a string or vector, a sequence of keystrokes. The binding is probably a symbol with a function definition. If optional argument ACCEPT-DEFAULT is non-nil, recognize default bindings; see the description of `lookup-key' for more details about this. (fn KEYS &optional ACCEPT-DEFAULT)Fglobal-key-binding Return the binding for command KEYS in current global keymap only. KEYS is a string or vector, a sequence of keystrokes. The binding is probably a symbol with a function definition. This function's return values are the same as those of `lookup-key' (which see). If optional argument ACCEPT-DEFAULT is non-nil, recognize default bindings; see the description of `lookup-key' for more details about this. (fn KEYS &optional ACCEPT-DEFAULT)Fminor-mode-key-binding Find the visible minor mode bindings of KEY. Return an alist of pairs (MODENAME . BINDING), where MODENAME is the symbol which names the minor mode binding KEY, and BINDING is KEY's definition in that mode. In particular, if KEY has no minor-mode bindings, return nil. If the first binding is a non-prefix, all subsequent bindings will be omitted, since they would be ignored. Similarly, the list doesn't include non-prefix bindings that come after prefix bindings. If optional argument ACCEPT-DEFAULT is non-nil, recognize default bindings; see the description of `lookup-key' for more details about this. (fn KEY &optional ACCEPT-DEFAULT)Fdefine-prefix-command Define COMMAND as a prefix command. COMMAND should be a symbol. A new sparse keymap is stored as COMMAND's function definition and its value. This prepares COMMAND for use as a prefix key's binding. If a second optional argument MAPVAR is given, it should be a symbol. The map is then stored as MAPVAR's value instead of as COMMAND's value; but COMMAND is still defined as a function. The third optional argument NAME, if given, supplies a menu name string for the map. This is required to use the keymap as a menu. This function returns COMMAND. (fn COMMAND &optional MAPVAR NAME)Fuse-global-map Select KEYMAP as the global keymap. (fn KEYMAP)Fuse-local-map Select KEYMAP as the local keymap. If KEYMAP is nil, that means no local keymap. (fn KEYMAP)Fcurrent-local-map Return current buffer's local keymap, or nil if it has none. Normally the local keymap is set by the major mode with `use-local-map'. (fn)Fcurrent-global-map Return the current global keymap. (fn)Fcurrent-minor-mode-maps Return a list of keymaps for the minor modes of the current buffer. (fn)Faccessible-keymaps Find all keymaps accessible via prefix characters from KEYMAP. Returns a list of elements of the form (KEYS . MAP), where the sequence KEYS starting from KEYMAP gets you to MAP. These elements are ordered so that the KEYS increase in length. The first element is ([] . KEYMAP). An optional argument PREFIX, if non-nil, should be a key sequence; then the value includes only maps for prefixes that start with PREFIX. (fn KEYMAP &optional PREFIX)Fkey-description Return a pretty description of key-sequence KEYS. Optional arg PREFIX is the sequence of keys leading up to KEYS. For example, [?C-x ?l] is converted into the string "C-x l". For an approximate inverse of this, see `kbd'. (fn KEYS &optional PREFIX)Fsingle-key-description Return a pretty description of a character event KEY. Control characters turn into C-whatever, etc. Optional argument NO-ANGLES non-nil means don't put angle brackets around function keys and event symbols. See `text-char-description' for describing character codes. (fn KEY &optional NO-ANGLES)Ftext-char-description Return the description of CHARACTER in standard Emacs notation. CHARACTER must be a valid character code that passes the `characterp' test. Control characters turn into "^char", and characters with Meta and other modifiers signal an error, as they are not valid character codes. This differs from `single-key-description' which accepts character events, and thus doesn't enforce the `characterp' condition, turns control characters into "C-char", and uses the 2**27 bit for Meta. See Info node `(elisp)Describing Characters' for examples. (fn CHARACTER)Fwhere-is-internal Return list of keys that invoke DEFINITION. If KEYMAP is a keymap, search only KEYMAP and the global keymap. If KEYMAP is nil, search all the currently active keymaps, except for `overriding-local-map' (which is ignored). If KEYMAP is a list of keymaps, search only those keymaps. If optional 3rd arg FIRSTONLY is non-nil, return the first key sequence found, rather than a list of all possible key sequences. If FIRSTONLY is the symbol `non-ascii', return the first binding found, no matter what it is. If FIRSTONLY has another non-nil value, prefer bindings that use the modifier key specified in `where-is-preferred-modifier' (or their meta variants) and entirely reject menu bindings. If optional 4th arg NOINDIRECT is non-nil, don't extract the commands inside menu-items. This makes it possible to search for a menu-item itself. The optional 5th arg NO-REMAP alters how command remapping is handled: - If another command OTHER-COMMAND is remapped to DEFINITION, normally search for the bindings of OTHER-COMMAND and include them in the returned list. But if NO-REMAP is non-nil, include the vector [remap OTHER-COMMAND] in the returned list instead, without searching for those other bindings. - If DEFINITION is remapped to OTHER-COMMAND, normally return the bindings for OTHER-COMMAND. But if NO-REMAP is non-nil, return the bindings for DEFINITION instead, ignoring its remapping. (fn DEFINITION &optional KEYMAP FIRSTONLY NOINDIRECT NO-REMAP)Fdescribe-buffer-bindings Insert the list of all defined keys and their definitions. The list is inserted in the current buffer, while the bindings are looked up in BUFFER. The optional argument PREFIX, if non-nil, should be a key sequence; then we display only bindings that start with that prefix. The optional argument MENUS, if non-nil, says to mention menu bindings. (Ordinarily these are omitted from the output.) (fn BUFFER &optional PREFIX MENUS)Fdescribe-vector Insert a description of contents of VECTOR. This is text showing the elements of vector matched against indices. DESCRIBER is the output function used; nil means use `princ'. (fn VECTOR &optional DESCRIBER)Fapropos-internal Show all symbols whose names contain match for REGEXP. If optional 2nd arg PREDICATE is non-nil, (funcall PREDICATE SYMBOL) is done for each symbol and a symbol is mentioned only if that returns non-nil. Return list of symbols found. (fn REGEXP &optional PREDICATE)Vdefine-key-rebound-commands List of commands given new key bindings recently. This is used for internal purposes during Emacs startup; don't alter it yourself.Vminibuffer-local-map Default keymap to use when reading from the minibuffer.Vminibuffer-local-ns-map Local keymap for the minibuffer when spaces are not allowed.Vminor-mode-map-alist Alist of keymaps to use for minor modes. Each element looks like (VARIABLE . KEYMAP); KEYMAP is used to read key sequences and look up bindings if VARIABLE's value is non-nil. If two active keymaps bind the same key, the keymap appearing earlier in the list takes precedence.Vminor-mode-overriding-map-alist Alist of keymaps to use for minor modes, in current major mode. This variable is an alist just like `minor-mode-map-alist', and it is used the same way (and before `minor-mode-map-alist'); however, it is provided for major modes to bind locally.Vemulation-mode-map-alists List of keymap alists to use for emulation modes. It is intended for modes or packages using multiple minor-mode keymaps. Each element is a keymap alist just like `minor-mode-map-alist', or a symbol with a variable binding which is a keymap alist, and it is used the same way. The "active" keymaps in each alist are used before `minor-mode-map-alist' and `minor-mode-overriding-map-alist'.Vwhere-is-preferred-modifier Preferred modifier key to use for `where-is'. When a single binding is requested, `where-is' will return one that uses this modifier key if possible. If nil, or if no such binding exists, bindings using keys without modifiers (or only with meta) will be preferred.Ssysdep.o Sbuffer.o Fbuffer-live-p Return non-nil if OBJECT is a buffer which has not been killed. Value is nil if OBJECT is not a buffer or if it has been killed. (fn OBJECT)Fbuffer-list Return a list of all live buffers. If the optional arg FRAME is a frame, return the buffer list in the proper order for that frame: the buffers shown in FRAME come first, followed by the rest of the buffers. (fn &optional FRAME)Fget-buffer Return the buffer named BUFFER-OR-NAME. BUFFER-OR-NAME must be either a string or a buffer. If BUFFER-OR-NAME is a string and there is no buffer with that name, return nil. If BUFFER-OR-NAME is a buffer, return it as given. (fn BUFFER-OR-NAME)Fget-file-buffer Return the buffer visiting file FILENAME (a string). The buffer's `buffer-file-name' must match exactly the expansion of FILENAME. If there is no such live buffer, return nil. See also `find-buffer-visiting'. (fn FILENAME)Fget-buffer-create Return the buffer specified by BUFFER-OR-NAME, creating a new one if needed. If BUFFER-OR-NAME is a string and a live buffer with that name exists, return that buffer. If no such buffer exists, create a new buffer with that name and return it. If BUFFER-OR-NAME starts with a space, the new buffer does not keep undo information. If BUFFER-OR-NAME is a buffer instead of a string, return it as given, even if it is dead. The return value is never nil. (fn BUFFER-OR-NAME)Fmake-indirect-buffer Create and return an indirect buffer for buffer BASE-BUFFER, named NAME. BASE-BUFFER should be a live buffer, or the name of an existing buffer. NAME should be a string which is not the name of an existing buffer. Optional argument CLONE non-nil means preserve BASE-BUFFER's state, such as major and minor modes, in the indirect buffer. CLONE nil means the indirect buffer's state is reset to default values. (fn BASE-BUFFER NAME &optional CLONE)Fgenerate-new-buffer-name Return a string that is the name of no existing buffer based on NAME. If there is no live buffer named NAME, then return NAME. Otherwise modify name by appending `<NUMBER>', incrementing NUMBER (starting at 2) until an unused name is found, and then return that name. Optional second argument IGNORE specifies a name that is okay to use (if it is in the sequence to be tried) even if a buffer with that name exists. If NAME begins with a space (i.e., a buffer that is not normally visible to users), then if buffer NAME already exists a random number is first appended to NAME, to speed up finding a non-existent buffer. (fn NAME &optional IGNORE)Fbuffer-name Return the name of BUFFER, as a string. BUFFER defaults to the current buffer. Return nil if BUFFER has been killed. (fn &optional BUFFER)Fbuffer-file-name Return name of file BUFFER is visiting, or nil if none. No argument or nil as argument means use the current buffer. (fn &optional BUFFER)Fbuffer-base-buffer Return the base buffer of indirect buffer BUFFER. If BUFFER is not indirect, return nil. BUFFER defaults to the current buffer. (fn &optional BUFFER)Fbuffer-local-value Return the value of VARIABLE in BUFFER. If VARIABLE does not have a buffer-local binding in BUFFER, the value is the default binding of the variable. (fn VARIABLE BUFFER)Fbuffer-local-variables Return an alist of variables that are buffer-local in BUFFER. Most elements look like (SYMBOL . VALUE), describing one variable. For a symbol that is locally unbound, just the symbol appears in the value. Note that storing new VALUEs in these elements doesn't change the variables. No argument or nil as argument means use current buffer as BUFFER. (fn &optional BUFFER)Fbuffer-modified-p Return t if BUFFER was modified since its file was last read or saved. No argument or nil as argument means use current buffer as BUFFER. (fn &optional BUFFER)Fforce-mode-line-update Force redisplay of the current buffer's mode line and header line. With optional non-nil ALL, force redisplay of all mode lines and header lines. This function also forces recomputation of the menu bar menus and the frame title. (fn &optional ALL)Fset-buffer-modified-p Mark current buffer as modified or unmodified according to FLAG. A non-nil FLAG means mark the buffer modified. In addition, this function unconditionally forces redisplay of the mode lines of the windows that display the current buffer, and also locks or unlocks the file visited by the buffer, depending on whether the function's argument is non-nil, but only if both `buffer-file-name' and `buffer-file-truename' are non-nil. (fn FLAG)Frestore-buffer-modified-p Like `set-buffer-modified-p', but doesn't redisplay buffer's mode line. This function also locks and unlocks the file visited by the buffer, if both `buffer-file-truename' and `buffer-file-name' are non-nil. It is not ensured that mode lines will be updated to show the modified state of the current buffer. Use with care. (fn FLAG)Fbuffer-modified-tick Return BUFFER's tick counter, incremented for each change in text. Each buffer has a tick counter which is incremented each time the text in that buffer is changed. It wraps around occasionally. No argument or nil as argument means use current buffer as BUFFER. (fn &optional BUFFER)Fbuffer-chars-modified-tick Return BUFFER's character-change tick counter. Each buffer has a character-change tick counter, which is set to the value of the buffer's tick counter (see `buffer-modified-tick'), each time text in that buffer is inserted or deleted. By comparing the values returned by two individual calls of `buffer-chars-modified-tick', you can tell whether a character change occurred in that buffer in between these calls. No argument or nil as argument means use current buffer as BUFFER. (fn &optional BUFFER)Frename-buffer Change current buffer's name to NEWNAME (a string). If second arg UNIQUE is nil or omitted, it is an error if a buffer named NEWNAME already exists. If UNIQUE is non-nil, come up with a new name using `generate-new-buffer-name'. Interactively, you can set UNIQUE with a prefix argument. We return the name we actually gave the buffer. This does not change the name of the visited file (if any). (fn NEWNAME &optional UNIQUE)Fother-buffer Return most recently selected buffer other than BUFFER. Buffers not visible in windows are preferred to visible buffers, unless optional second argument VISIBLE-OK is non-nil. Ignore the argument BUFFER unless it denotes a live buffer. If the optional third argument FRAME specifies a live frame, then use that frame's buffer list instead of the selected frame's buffer list. The buffer is found by scanning the selected or specified frame's buffer list first, followed by the list of all buffers. If no other buffer exists, return the buffer `*scratch*' (creating it if necessary). (fn &optional BUFFER VISIBLE-OK FRAME)Fbuffer-enable-undo Start keeping undo information for buffer BUFFER. No argument or nil as argument means do this for the current buffer. (fn &optional BUFFER)Fkill-buffer Kill the buffer specified by BUFFER-OR-NAME. The argument may be a buffer or the name of an existing buffer. Argument nil or omitted means kill the current buffer. Return t if the buffer is actually killed, nil otherwise. The functions in `kill-buffer-query-functions' are called with the buffer to be killed as the current buffer. If any of them returns nil, the buffer is not killed. The hook `kill-buffer-hook' is run before the buffer is actually killed. The buffer being killed will be current while the hook is running. Functions called by any of these hooks are supposed to not change the current buffer. Any processes that have this buffer as the `process-buffer' are killed with SIGHUP. This function calls `replace-buffer-in-windows' for cleaning up all windows currently displaying the buffer to be killed. (fn &optional BUFFER-OR-NAME)Fbury-buffer-internal Move BUFFER to the end of the buffer list. (fn BUFFER)Fset-buffer-major-mode Set an appropriate major mode for BUFFER. For the *scratch* buffer, use `initial-major-mode', otherwise choose a mode according to the default value of `major-mode'. Use this function before selecting the buffer, since it may need to inspect the current buffer's major mode. (fn BUFFER)Fcurrent-buffer Return the current buffer as a Lisp object. (fn)Fset-buffer Make buffer BUFFER-OR-NAME current for editing operations. BUFFER-OR-NAME may be a buffer or the name of an existing buffer. See also `with-current-buffer' when you want to make a buffer current temporarily. This function does not display the buffer, so its effect ends when the current command terminates. Use `switch-to-buffer' or `pop-to-buffer' to switch buffers permanently. The return value is the buffer made current. (fn BUFFER-OR-NAME)Fbarf-if-buffer-read-only Signal a `buffer-read-only' error if the current buffer is read-only. If the text under POSITION (which defaults to point) has the `inhibit-read-only' text property set, the error will not be raised. (fn &optional POSITION)Ferase-buffer Delete the entire contents of the current buffer. Any narrowing restriction in effect (see `narrow-to-region') is removed, so the buffer is truly empty after this. (fn)Fbuffer-swap-text Swap the text between current buffer and BUFFER. Using this function from `save-excursion' might produce surprising results, see Info node `(elisp)Swapping Text'. (fn BUFFER)Fset-buffer-multibyte Set the multibyte flag of the current buffer to FLAG. If FLAG is t, this makes the buffer a multibyte buffer. If FLAG is nil, this makes the buffer a single-byte buffer. In these cases, the buffer contents remain unchanged as a sequence of bytes but the contents viewed as characters do change. If FLAG is `to', this makes the buffer a multibyte buffer by changing all eight-bit bytes to eight-bit characters. If the multibyte flag was really changed, undo information of the current buffer is cleared. (fn FLAG)Fkill-all-local-variables Switch to Fundamental mode by killing current buffer's local variables. Most local variable bindings are eliminated so that the default values become effective once more. Also, the syntax table is set from `standard-syntax-table', the local keymap is set to nil, and the abbrev table from `fundamental-mode-abbrev-table'. This function also forces redisplay of the mode line. Every function to select a new major mode starts by calling this function. As a special exception, local variables whose names have a non-nil `permanent-local' property are not eliminated by this function. The first thing this function does is run the normal hook `change-major-mode-hook'. (fn)Foverlayp Return t if OBJECT is an overlay. (fn OBJECT)Fmake-overlay Create a new overlay with range BEG to END in BUFFER and return it. If omitted, BUFFER defaults to the current buffer. BEG and END may be integers or markers. The fourth arg FRONT-ADVANCE, if non-nil, makes the marker for the front of the overlay advance when text is inserted there (which means the text *is not* included in the overlay). The fifth arg REAR-ADVANCE, if non-nil, makes the marker for the rear of the overlay advance when text is inserted there (which means the text *is* included in the overlay). (fn BEG END &optional BUFFER FRONT-ADVANCE REAR-ADVANCE)Fmove-overlay Set the endpoints of OVERLAY to BEG and END in BUFFER. If BUFFER is omitted, leave OVERLAY in the same buffer it inhabits now. If BUFFER is omitted, and OVERLAY is in no buffer, put it in the current buffer. (fn OVERLAY BEG END &optional BUFFER)Fdelete-overlay Delete the overlay OVERLAY from its buffer. (fn OVERLAY)Fdelete-all-overlays Delete all overlays of BUFFER. BUFFER omitted or nil means delete all overlays of the current buffer. (fn &optional BUFFER)Foverlay-start Return the position at which OVERLAY starts. (fn OVERLAY)Foverlay-end Return the position at which OVERLAY ends. (fn OVERLAY)Foverlay-buffer Return the buffer OVERLAY belongs to. Return nil if OVERLAY has been deleted. (fn OVERLAY)Foverlay-properties Return a list of the properties on OVERLAY. This is a copy of OVERLAY's plist; modifying its conses has no effect on OVERLAY. (fn OVERLAY)Foverlays-at Return a list of the overlays that contain the character at POS. If SORTED is non-nil, then sort them by decreasing priority. (fn POS &optional SORTED)Foverlays-in Return a list of the overlays that overlap the region BEG ... END. Overlap means that at least one character is contained within the overlay and also contained within the specified region. Empty overlays are included in the result if they are located at BEG, between BEG and END, or at END provided END denotes the position at the end of the buffer. (fn BEG END)Fnext-overlay-change Return the next position after POS where an overlay starts or ends. If there are no overlay boundaries from POS to (point-max), the value is (point-max). (fn POS)Fprevious-overlay-change Return the previous position before POS where an overlay starts or ends. If there are no overlay boundaries from (point-min) to POS, the value is (point-min). (fn POS)Foverlay-lists Return a pair of lists giving all the overlays of the current buffer. The car has all the overlays before the overlay center; the cdr has all the overlays after the overlay center. Recentering overlays moves overlays between these lists. The lists you get are copies, so that changing them has no effect. However, the overlays you get are the real objects that the buffer uses. (fn)Foverlay-recenter Recenter the overlays of the current buffer around position POS. That makes overlay lookup faster for positions near POS (but perhaps slower for positions far away from POS). (fn POS)Foverlay-get Get the property of overlay OVERLAY with property name PROP. (fn OVERLAY PROP)Foverlay-put Set one property of overlay OVERLAY: give property PROP value VALUE. VALUE will be returned. (fn OVERLAY PROP VALUE)Vheader-line-format Analogous to `mode-line-format', but controls the header line. The header line appears, optionally, at the top of a window; the mode line appears at the bottom.Vmode-line-format Template for displaying mode line for current buffer. The value may be nil, a string, a symbol or a list. A value of nil means don't display a mode line. For any symbol other than t or nil, the symbol's value is processed as a mode line construct. As a special exception, if that value is a string, the string is processed verbatim, without handling any %-constructs (see below). Also, unless the symbol has a non-nil `risky-local-variable' property, all properties in any strings, as well as all :eval and :propertize forms in the value, are ignored. A list whose car is a string or list is processed by processing each of the list elements recursively, as separate mode line constructs, and concatenating the results. A list of the form `(:eval FORM)' is processed by evaluating FORM and using the result as a mode line construct. Be careful--FORM should not load any files, because that can cause an infinite recursion. A list of the form `(:propertize ELT PROPS...)' is processed by processing ELT as the mode line construct, and adding the text properties PROPS to the result. A list whose car is a symbol is processed by examining the symbol's value, and, if that value is non-nil, processing the cadr of the list recursively; and if that value is nil, processing the caddr of the list recursively. A list whose car is an integer is processed by processing the cadr of the list, and padding (if the number is positive) or truncating (if negative) to the width specified by that number. A string is printed verbatim in the mode line except for %-constructs: %b -- print buffer name. %f -- print visited file name. %F -- print frame name. %* -- print %, * or hyphen. %+ -- print *, % or hyphen. %& is like %*, but ignore read-only-ness. % means buffer is read-only and * means it is modified. For a modified read-only buffer, %* gives % and %+ gives *. %s -- print process status. %l -- print the current line number. %c -- print the current column number (this makes editing slower). Columns are numbered starting from the left margin, and the leftmost column is displayed as zero. To make the column number update correctly in all cases, `column-number-mode' must be non-nil. %C -- Like %c, but the leftmost column is displayed as one. %i -- print the size of the buffer. %I -- like %i, but use k, M, G, etc., to abbreviate. %p -- print percent of buffer above top of window, or Top, Bot or All. %P -- print percent of buffer above bottom of window, perhaps plus Top, or print Bottom or All. %n -- print Narrow if appropriate. %t -- visited file is text or binary (if OS supports this distinction). %z -- print mnemonics of keyboard, terminal, and buffer coding systems. %Z -- like %z, but including the end-of-line format. %e -- print error message about full memory. %@ -- print @ or hyphen. @ means that default-directory is on a remote machine. %[ -- print one [ for each recursive editing level. %] similar. %% -- print %. %- -- print infinitely many dashes. Decimal digits after the % specify field width to which to pad.Vmajor-mode Symbol for current buffer's major mode. The default value (normally `fundamental-mode') affects new buffers. A value of nil means to use the current buffer's major mode, provided it is not marked as "special".Vmode-name Pretty name of current buffer's major mode. Usually a string, but can use any of the constructs for `mode-line-format', which see. Format with `format-mode-line' to produce a string value.Vlocal-abbrev-table Local (mode-specific) abbrev table of current buffer.Vabbrev-mode Non-nil if Abbrev mode is enabled. Use the command `abbrev-mode' to change this variable.Vcase-fold-search Non-nil if searches and matches should ignore case.Vfill-column Column beyond which automatic line-wrapping should happen. Interactively, you can set the buffer local value using \[set-fill-column].Vleft-margin Column for the default `indent-line-function' to indent to. Linefeed indents to this column in Fundamental mode.Vtab-width Distance between tab stops (for display of tab characters), in columns. NOTE: This controls the display width of a TAB character, and not the size of an indentation step. This should be an integer greater than zero.Vctl-arrow Non-nil means display control chars with uparrow. A value of nil means use backslash and octal digits. This variable does not apply to characters whose display is specified in the current display table (if there is one).Venable-multibyte-characters Non-nil means the buffer contents are regarded as multi-byte characters. Otherwise they are regarded as unibyte. This affects the display, file I/O and the behavior of various editing commands. This variable is buffer-local but you cannot set it directly; use the function `set-buffer-multibyte' to change a buffer's representation. To prevent any attempts to set it or make it buffer-local, Emacs will signal an error in those cases. See also Info node `(elisp)Text Representations'.Vbuffer-file-coding-system Coding system to be used for encoding the buffer contents on saving. This variable applies to saving the buffer, and also to `write-region' and other functions that use `write-region'. It does not apply to sending output to subprocesses, however. If this is nil, the buffer is saved without any code conversion unless some coding system is specified in `file-coding-system-alist' for the buffer file. If the text to be saved cannot be encoded as specified by this variable, an alternative encoding is selected by `select-safe-coding-system', which see. The variable `coding-system-for-write', if non-nil, overrides this variable. This variable is never applied to a way of decoding a file while reading it.Vbidi-display-reordering Non-nil means reorder bidirectional text for display in the visual order. Setting this to nil is intended for use in debugging the display code. Don't set to nil in normal sessions, as that is not supported. See also `bidi-paragraph-direction'; setting that non-nil might speed up redisplay.Vbidi-paragraph-start-re If non-nil, a regexp matching a line that starts OR separates paragraphs. The value of nil means to use empty lines as lines that start and separate paragraphs. When Emacs displays bidirectional text, it by default computes the base paragraph direction separately for each paragraph. Setting this variable changes the places where paragraph base direction is recomputed. The regexp is always matched after a newline, so it is best to anchor it by beginning it with a "^". If you change the value of this variable, be sure to change the value of `bidi-paragraph-separate-re' accordingly. For example, to have a single newline behave as a paragraph separator, set both these variables to "^". See also `bidi-paragraph-direction'.Vbidi-paragraph-separate-re If non-nil, a regexp matching a line that separates paragraphs. The value of nil means to use empty lines as paragraph separators. When Emacs displays bidirectional text, it by default computes the base paragraph direction separately for each paragraph. Setting this variable changes the places where paragraph base direction is recomputed. The regexp is always matched after a newline, so it is best to anchor it by beginning it with a "^". If you change the value of this variable, be sure to change the value of `bidi-paragraph-start-re' accordingly. For example, to have a single newline behave as a paragraph separator, set both these variables to "^". See also `bidi-paragraph-direction'.Vbidi-paragraph-direction If non-nil, forces directionality of text paragraphs in the buffer. If this is nil (the default), the direction of each paragraph is determined by the first strong directional character of its text. The values of `right-to-left' and `left-to-right' override that. Any other value is treated as nil. This variable has no effect unless the buffer's value of `bidi-display-reordering' is non-nil.Vtruncate-lines Non-nil means do not display continuation lines. Instead, give each line of text just one screen line. Note that this is overridden by the variable `truncate-partial-width-windows' if that variable is non-nil and this buffer is not full-frame width. Minibuffers set this variable to nil.Vword-wrap Non-nil means to use word-wrapping for continuation lines. When word-wrapping is on, continuation lines are wrapped at the space or tab character nearest to the right window edge. If nil, continuation lines are wrapped at the right screen edge. This variable has no effect if long lines are truncated (see `truncate-lines' and `truncate-partial-width-windows'). If you use word-wrapping, you might want to reduce the value of `truncate-partial-width-windows', since wrapping can make text readable in narrower windows. Instead of setting this variable directly, most users should use Visual Line mode. Visual Line mode, when enabled, sets `word-wrap' to t, and additionally redefines simple editing commands to act on visual lines rather than logical lines. See the documentation of `visual-line-mode'.Vdefault-directory Name of default directory of current buffer. It should be a directory name (as opposed to a directory file-name). On GNU and Unix systems, directory names end in a slash `/'. To interactively change the default directory, use command `cd'.Vauto-fill-function Function called (if non-nil) to perform auto-fill. It is called after self-inserting any character specified in the `auto-fill-chars' table. NOTE: This variable is not a hook; its value may not be a list of functions.Vbuffer-file-name Name of file visited in current buffer, or nil if not visiting a file. This should be an absolute file name.Vbuffer-file-truename Abbreviated truename of file visited in current buffer, or nil if none. The truename of a file is calculated by `file-truename' and then abbreviated with `abbreviate-file-name'.Vbuffer-auto-save-file-name Name of file for auto-saving current buffer. If it is nil, that means don't auto-save this buffer.Vbuffer-read-only Non-nil if this buffer is read-only.Vbuffer-backed-up Non-nil if this buffer's file has been backed up. Backing up is done before the first time the file is saved.Vbuffer-saved-size Length of current buffer when last read in, saved or auto-saved. 0 initially. -1 means auto-saving turned off until next real save. If you set this to -2, that means don't turn off auto-saving in this buffer if its text size shrinks. If you use `buffer-swap-text' on a buffer, you probably should set this to -2 in that buffer.Vselective-display Non-nil enables selective display. An integer N as value means display only lines that start with less than N columns of space. A value of t means that the character ^M makes itself and all the rest of the line invisible; also, when saving the buffer in a file, save the ^M as a newline. This usage is obsolete; use overlays or text properties instead.Vselective-display-ellipses Non-nil means display ... on previous line when a line is invisible.Voverwrite-mode Non-nil if self-insertion should replace existing text. The value should be one of `overwrite-mode-textual', `overwrite-mode-binary', or nil. If it is `overwrite-mode-textual', self-insertion still inserts at the end of a line, and inserts when point is before a tab, until the tab is filled in. If `overwrite-mode-binary', self-insertion replaces newlines and tabs too.Vbuffer-display-table Display table that controls display of the contents of current buffer. If this variable is nil, the value of `standard-display-table' is used. Each window can have its own, overriding display table, see `set-window-display-table' and `window-display-table'. The display table is a char-table created with `make-display-table'. A char-table is an array indexed by character codes. Normal array primitives `aref' and `aset' can be used to access elements of a char-table. Each of the char-table elements control how to display the corresponding text character: the element at index C in the table says how to display the character whose code is C. Each element should be a vector of characters or nil. The value nil means display the character in the default fashion; otherwise, the characters from the vector are delivered to the screen instead of the original character. For example, (aset buffer-display-table ?X [?Y]) tells Emacs to display a capital Y instead of each X character. In addition, a char-table has six extra slots to control the display of: the end of a truncated screen line (extra-slot 0, a single character); the end of a continued line (extra-slot 1, a single character); the escape character used to display character codes in octal (extra-slot 2, a single character); the character used as an arrow for control characters (extra-slot 3, a single character); the decoration indicating the presence of invisible lines (extra-slot 4, a vector of characters); the character used to draw the border between side-by-side windows (extra-slot 5, a single character). See also the functions `display-table-slot' and `set-display-table-slot'.Vleft-margin-width Width in columns of left marginal area for display of a buffer. A value of nil means no marginal area. Setting this variable does not take effect until a new buffer is displayed in a window. To make the change take effect, call `set-window-buffer'.Vright-margin-width Width in columns of right marginal area for display of a buffer. A value of nil means no marginal area. Setting this variable does not take effect until a new buffer is displayed in a window. To make the change take effect, call `set-window-buffer'.Vleft-fringe-width Width of this buffer's left fringe (in pixels). A value of 0 means no left fringe is shown in this buffer's window. A value of nil means to use the left fringe width from the window's frame. Setting this variable does not take effect until a new buffer is displayed in a window. To make the change take effect, call `set-window-buffer'.Vright-fringe-width Width of this buffer's right fringe (in pixels). A value of 0 means no right fringe is shown in this buffer's window. A value of nil means to use the right fringe width from the window's frame. Setting this variable does not take effect until a new buffer is displayed in a window. To make the change take effect, call `set-window-buffer'.Vfringes-outside-margins Non-nil means to display fringes outside display margins. A value of nil means to display fringes between margins and buffer text. Setting this variable does not take effect until a new buffer is displayed in a window. To make the change take effect, call `set-window-buffer'.Vscroll-bar-width Width of this buffer's vertical scroll bars in pixels. A value of nil means to use the scroll bar width from the window's frame.Vscroll-bar-height Height of this buffer's horizontal scroll bars in pixels. A value of nil means to use the scroll bar height from the window's frame.Vvertical-scroll-bar Position of this buffer's vertical scroll bar. The value takes effect whenever you tell a window to display this buffer; for instance, with `set-window-buffer' or when `display-buffer' displays it. A value of `left' or `right' means put the vertical scroll bar at that side of the window; a value of nil means don't show any vertical scroll bars. A value of t (the default) means do whatever the window's frame specifies.Vhorizontal-scroll-bar Position of this buffer's horizontal scroll bar. The value takes effect whenever you tell a window to display this buffer; for instance, with `set-window-buffer' or when `display-buffer' displays it. A value of `bottom' means put the horizontal scroll bar at the bottom of the window; a value of nil means don't show any horizontal scroll bars. A value of t (the default) means do whatever the window's frame specifies.Vindicate-empty-lines Visually indicate empty lines after the buffer end. If non-nil, a bitmap is displayed in the left fringe of a window on window-systems.Vindicate-buffer-boundaries Visually indicate buffer boundaries and scrolling. If non-nil, the first and last line of the buffer are marked in the fringe of a window on window-systems with angle bitmaps, or if the window can be scrolled, the top and bottom line of the window are marked with up and down arrow bitmaps. If value is a symbol `left' or `right', both angle and arrow bitmaps are displayed in the left or right fringe, resp. Any other value that doesn't look like an alist means display the angle bitmaps in the left fringe but no arrows. You can exercise more precise control by using an alist as the value. Each alist element (INDICATOR . POSITION) specifies where to show one of the indicators. INDICATOR is one of `top', `bottom', `up', `down', or t, which specifies the default position, and POSITION is one of `left', `right', or nil, meaning do not show this indicator. For example, ((top . left) (t . right)) places the top angle bitmap in left fringe, the bottom angle bitmap in right fringe, and both arrow bitmaps in right fringe. To show just the angle bitmaps in the left fringe, but no arrow bitmaps, use ((top . left) (bottom . left)).Vfringe-indicator-alist Mapping from logical to physical fringe indicator bitmaps. The value is an alist where each element (INDICATOR . BITMAPS) specifies the fringe bitmaps used to display a specific logical fringe indicator. INDICATOR specifies the logical indicator type which is one of the following symbols: `truncation' , `continuation', `overlay-arrow', `top', `bottom', `top-bottom', `up', `down', empty-line', or `unknown'. BITMAPS is a list of symbols (LEFT RIGHT [LEFT1 RIGHT1]) which specifies the actual bitmap shown in the left or right fringe for the logical indicator. LEFT and RIGHT are the bitmaps shown in the left and/or right fringe for the specific indicator. The LEFT1 or RIGHT1 bitmaps are used only for the `bottom' and `top-bottom' indicators when the last (only) line has no final newline. BITMAPS may also be a single symbol which is used in both left and right fringes.Vfringe-cursor-alist Mapping from logical to physical fringe cursor bitmaps. The value is an alist where each element (CURSOR . BITMAP) specifies the fringe bitmaps used to display a specific logical cursor type in the fringe. CURSOR specifies the logical cursor type which is one of the following symbols: `box' , `hollow', `bar', `hbar', or `hollow-small'. The last one is used to show a hollow cursor on narrow lines display lines where the normal hollow cursor will not fit. BITMAP is the corresponding fringe bitmap shown for the logical cursor type.Vscroll-up-aggressively How far to scroll windows upward. If you move point off the bottom, the window scrolls automatically. This variable controls how far it scrolls. The value nil, the default, means scroll to center point. A fraction means scroll to put point that fraction of the window's height from the bottom of the window. When the value is 0.0, point goes at the bottom line, which in the simple case that you moved off with C-f means scrolling just one line. 1.0 means point goes at the top, so that in that simple case, the window scrolls by a full window height. Meaningful values are between 0.0 and 1.0, inclusive.Vscroll-down-aggressively How far to scroll windows downward. If you move point off the top, the window scrolls automatically. This variable controls how far it scrolls. The value nil, the default, means scroll to center point. A fraction means scroll to put point that fraction of the window's height from the top of the window. When the value is 0.0, point goes at the top line, which in the simple case that you moved off with C-b means scrolling just one line. 1.0 means point goes at the bottom, so that in that simple case, the window scrolls by a full window height. Meaningful values are between 0.0 and 1.0, inclusive.Vbefore-change-functions List of functions to call before each text change. Two arguments are passed to each function: the positions of the beginning and end of the range of old text to be changed. (For an insertion, the beginning and end are at the same place.) No information is given about the length of the text after the change. Buffer changes made while executing the `before-change-functions' don't call any before-change or after-change functions. That's because `inhibit-modification-hooks' is temporarily set non-nil. If an unhandled error happens in running these functions, the variable's value remains nil. That prevents the error from happening repeatedly and making Emacs nonfunctional.Vafter-change-functions List of functions to call after each text change. Three arguments are passed to each function: the positions of the beginning and end of the range of changed text, and the length in chars of the pre-change text replaced by that range. (For an insertion, the pre-change length is zero; for a deletion, that length is the number of chars deleted, and the post-change beginning and end are at the same place.) Buffer changes made while executing the `after-change-functions' don't call any before-change or after-change functions. That's because `inhibit-modification-hooks' is temporarily set non-nil. If an unhandled error happens in running these functions, the variable's value remains nil. That prevents the error from happening repeatedly and making Emacs nonfunctional.Vfirst-change-hook A list of functions to call before changing a buffer which is unmodified. The functions are run using the `run-hooks' function.Vbuffer-undo-list List of undo entries in current buffer. Recent changes come first; older changes follow newer. An entry (BEG . END) represents an insertion which begins at position BEG and ends at position END. An entry (TEXT . POSITION) represents the deletion of the string TEXT from (abs POSITION). If POSITION is positive, point was at the front of the text being deleted; if negative, point was at the end. An entry (t HIGH LOW USEC PSEC) indicates that the buffer was previously unmodified; (HIGH LOW USEC PSEC) is in the same style as (current-time) and is the visited file's modification time, as of that time. If the modification time of the most recent save is different, this entry is obsolete. An entry (t . 0) means the buffer was previously unmodified but its time stamp was unknown because it was not associated with a file. An entry (t . -1) is similar, except that it means the buffer's visited file did not exist. An entry (nil PROPERTY VALUE BEG . END) indicates that a text property was modified between BEG and END. PROPERTY is the property name, and VALUE is the old value. An entry (apply FUN-NAME . ARGS) means undo the change with (apply FUN-NAME ARGS). An entry (apply DELTA BEG END FUN-NAME . ARGS) supports selective undo in the active region. BEG and END is the range affected by this entry and DELTA is the number of characters added or deleted in that range by this change. An entry (MARKER . DISTANCE) indicates that the marker MARKER was adjusted in position by the offset DISTANCE (an integer). An entry of the form POSITION indicates that point was at the buffer location given by the integer. Undoing an entry of this form places point at POSITION. Entries with value nil mark undo boundaries. The undo command treats the changes between two undo boundaries as a single step to be undone. If the value of the variable is t, undo information is not recorded.Vmark-active Non-nil means the mark and region are currently active in this buffer.Vcache-long-scans Non-nil means that Emacs should use caches in attempt to speedup buffer scans. There is no reason to set this to nil except for debugging purposes. Normally, the line-motion functions work by scanning the buffer for newlines. Columnar operations (like `move-to-column' and `compute-motion') also work by scanning the buffer, summing character widths as they go. This works well for ordinary text, but if the buffer's lines are very long (say, more than 500 characters), these motion functions will take longer to execute. Emacs may also take longer to update the display. If `cache-long-scans' is non-nil, these motion functions cache the results of their scans, and consult the cache to avoid rescanning regions of the buffer until the text is modified. The caches are most beneficial when they prevent the most searching---that is, when the buffer contains long lines and large regions of characters with the same, fixed screen width. When `cache-long-scans' is non-nil, processing short lines will become slightly slower (because of the overhead of consulting the cache), and the caches will use memory roughly proportional to the number of newlines and characters whose screen width varies. Bidirectional editing also requires buffer scans to find paragraph separators. If you have large paragraphs or no paragraph separators at all, these scans may be slow. If `cache-long-scans' is non-nil, results of these scans are cached. This doesn't help too much if paragraphs are of the reasonable (few thousands of characters) size. The caches require no explicit maintenance; their accuracy is maintained internally by the Emacs primitives. Enabling or disabling the cache should not affect the behavior of any of the motion functions; it should only affect their performance.Vpoint-before-scroll Value of point before the last series of scroll operations, or nil.Vbuffer-file-format List of formats to use when saving this buffer. Formats are defined by `format-alist'. This variable is set when a file is visited.Vbuffer-auto-save-file-format Format in which to write auto-save files. Should be a list of symbols naming formats that are defined in `format-alist'. If it is t, which is the default, auto-save files are written in the same format as a regular save would use.Vbuffer-invisibility-spec Invisibility spec of this buffer. The default is t, which means that text is invisible if it has a non-nil `invisible' property. This variable can also be a list. The list can have two kinds of elements: `ATOM' and `(ATOM . ELLIPSIS)'. A text character is invisible if its `invisible' property is `ATOM', or has an `invisible' property that is a list that contains `ATOM'. If the `(ATOM . ELLIPSIS)' form is used, and `ELLIPSIS' is non-nil, an ellipsis will be displayed after the invisible characters. Setting this variable is very fast, much faster than scanning all the text in the buffer looking for properties to change.Vbuffer-display-count A number incremented each time this buffer is displayed in a window. The function `set-window-buffer' increments it.Vbuffer-display-time Time stamp updated each time this buffer is displayed in a window. The function `set-window-buffer' updates this variable to the value obtained by calling `current-time'. If the buffer has never been shown in a window, the value is nil.Vtransient-mark-mode Non-nil if Transient Mark mode is enabled. See the command `transient-mark-mode' for a description of this minor mode. Non-nil also enables highlighting of the region whenever the mark is active. The region is highlighted with the `region' face. The variable `highlight-nonselected-windows' controls whether to highlight all windows or just the selected window. Lisp programs may give this variable certain special values: - The symbol `lambda' enables Transient Mark mode temporarily. The mode is disabled again after any subsequent action that would normally deactivate the mark (e.g. buffer modification). - The pair (only . OLDVAL) enables Transient Mark mode temporarily. After any subsequent point motion command that is not shift-translated, or any other action that would normally deactivate the mark (e.g. buffer modification), the value of `transient-mark-mode' is set to OLDVAL.Vinhibit-read-only Non-nil means disregard read-only status of buffers or characters. If the value is t, disregard `buffer-read-only' and all `read-only' text properties. If the value is a list, disregard `buffer-read-only' and disregard a `read-only' text property if the property value is a member of the list.Vcursor-type Cursor to use when this buffer is in the selected window. Values are interpreted as follows: t use the cursor specified for the frame nil don't display a cursor box display a filled box cursor hollow display a hollow box cursor bar display a vertical bar cursor with default width (bar . WIDTH) display a vertical bar cursor with width WIDTH hbar display a horizontal bar cursor with default height (hbar . HEIGHT) display a horizontal bar cursor with height HEIGHT ANYTHING ELSE display a hollow box cursor WIDTH and HEIGHT can't exceed the frame's canonical character size. When the buffer is displayed in a non-selected window, the cursor's appearance is instead controlled by the variable `cursor-in-non-selected-windows'.Vline-spacing Additional space to put between lines when displaying a buffer. The space is measured in pixels, and put below lines on graphic displays, see `display-graphic-p'. If value is a floating point number, it specifies the spacing relative to the default frame line height. A value of nil means add no extra space.Vcursor-in-non-selected-windows Non-nil means show a cursor in non-selected windows. If nil, only shows a cursor in the selected window. If t, displays a cursor related to the usual cursor type (a solid box becomes hollow, a bar becomes a narrower bar). You can also specify the cursor type as in the `cursor-type' variable. Use Custom to set this variable and update the display.Vkill-buffer-query-functions List of functions called with no args to query before killing a buffer. The buffer being killed will be current while the functions are running. If any of them returns nil, the buffer is not killed. Functions run by this hook are supposed to not change the current buffer.Vchange-major-mode-hook Normal hook run before changing the major mode of a buffer. The function `kill-all-local-variables' runs this before doing anything else.Vbuffer-list-update-hook Hook run when the buffer list changes. Functions (implicitly) running this hook are `get-buffer-create', `make-indirect-buffer', `rename-buffer', `kill-buffer', `bury-buffer' and `select-window'. Functions run by this hook should avoid calling `select-window' with a nil NORECORD argument or `with-temp-buffer' since either may lead to infinite recursion.Sfilelock.o Flock-buffer Lock FILE, if current buffer is modified. FILE defaults to current buffer's visited file, or else nothing is done if current buffer isn't visiting a file. If the option `create-lockfiles' is nil, this does nothing. (fn &optional FILE)Funlock-buffer Unlock the file visited in the current buffer. If the buffer is not modified, this does nothing because the file should not be locked in that case. (fn)Ffile-locked-p Return a value indicating whether FILENAME is locked. The value is nil if the FILENAME is not locked, t if it is locked by you, else a string saying which user has locked it. (fn FILENAME)Vtemporary-file-directory The directory for writing temporary files.Vcreate-lockfiles Non-nil means use lockfiles to avoid editing collisions. The name of the (per-buffer) lockfile is constructed by prepending a '.#' to the name of the file being locked. See also `lock-buffer' and Info node `(emacs)Interlocking'.Sinsdel.o Fcombine-after-change-execute This function is for use internally in the function `combine-after-change-calls'. (fn)Vcombine-after-change-calls Used internally by the function `combine-after-change-calls' macro.Vinhibit-modification-hooks Non-nil means don't run any of the hooks that respond to buffer changes. This affects `before-change-functions' and `after-change-functions', as well as hooks attached to text properties and overlays. Setting this variable non-nil also inhibits file locks and checks whether files are locked by another Emacs session, as well as handling of the active region per `select-active-regions'.Smarker.o Fmarker-buffer Return the buffer that MARKER points into, or nil if none. Returns nil if MARKER points into a dead buffer. (fn MARKER)Fmarker-position Return the position of MARKER, or nil if it points nowhere. (fn MARKER)Fset-marker Position MARKER before character number POSITION in BUFFER. If BUFFER is omitted or nil, it defaults to the current buffer. If POSITION is nil, makes marker point nowhere so it no longer slows down editing in any buffer. Returns MARKER. (fn MARKER POSITION &optional BUFFER)Fcopy-marker Return a new marker pointing at the same place as MARKER. If argument is a number, makes a new marker pointing at that position in the current buffer. If MARKER is not specified, the new marker does not point anywhere. The optional argument TYPE specifies the insertion type of the new marker; see `marker-insertion-type'. (fn &optional MARKER TYPE)Fmarker-insertion-type Return insertion type of MARKER: t if it stays after inserted text. The value nil means the marker stays before text inserted there. (fn MARKER)Fset-marker-insertion-type Set the insertion-type of MARKER to TYPE. If TYPE is t, it means the marker advances when you insert text at it. If TYPE is nil, it means the marker stays behind when you insert text at it. (fn MARKER TYPE)Fbuffer-has-markers-at Return t if there are markers pointing at POSITION in the current buffer. (fn POSITION)Sminibuf.o Factive-minibuffer-window Return the currently active minibuffer window, or nil if none. (fn)Fset-minibuffer-window Specify which minibuffer window to use for the minibuffer. This affects where the minibuffer is displayed if you put text in it without invoking the usual minibuffer commands. (fn WINDOW)Fminibufferp Return t if BUFFER is a minibuffer. No argument or nil as argument means use current buffer as BUFFER. BUFFER can be a buffer or a buffer name. (fn &optional BUFFER)Fminibuffer-prompt-end Return the buffer position of the end of the minibuffer prompt. Return (point-min) if current buffer is not a minibuffer. (fn)Fminibuffer-contents Return the user input in a minibuffer as a string. If the current buffer is not a minibuffer, return its entire contents. (fn)Fminibuffer-contents-no-properties Return the user input in a minibuffer as a string, without text-properties. If the current buffer is not a minibuffer, return its entire contents. (fn)Fminibuffer-completion-contents Return the user input in a minibuffer before point as a string. That is what completion commands operate on. If the current buffer is not a minibuffer, return its entire contents. (fn)Fread-from-minibuffer Read a string from the minibuffer, prompting with string PROMPT. The optional second arg INITIAL-CONTENTS is an obsolete alternative to DEFAULT-VALUE. It normally should be nil in new code, except when HIST is a cons. It is discussed in more detail below. Third arg KEYMAP is a keymap to use whilst reading; if omitted or nil, the default is `minibuffer-local-map'. If fourth arg READ is non-nil, interpret the result as a Lisp object and return that object: in other words, do `(car (read-from-string INPUT-STRING))' Fifth arg HIST, if non-nil, specifies a history list and optionally the initial position in the list. It can be a symbol, which is the history list variable to use, or a cons cell (HISTVAR . HISTPOS). In that case, HISTVAR is the history list variable to use, and HISTPOS is the initial position for use by the minibuffer history commands. For consistency, you should also specify that element of the history as the value of INITIAL-CONTENTS. Positions are counted starting from 1 at the beginning of the list. Sixth arg DEFAULT-VALUE, if non-nil, should be a string, which is used as the default to `read' if READ is non-nil and the user enters empty input. But if READ is nil, this function does _not_ return DEFAULT-VALUE for empty input! Instead, it returns the empty string. Whatever the value of READ, DEFAULT-VALUE is made available via the minibuffer history commands. DEFAULT-VALUE can also be a list of strings, in which case all the strings are available in the history, and the first string is the default to `read' if READ is non-nil. Seventh arg INHERIT-INPUT-METHOD, if non-nil, means the minibuffer inherits the current input method and the setting of `enable-multibyte-characters'. If the variable `minibuffer-allow-text-properties' is non-nil, then the string which is returned includes whatever text properties were present in the minibuffer. Otherwise the value has no text properties. The remainder of this documentation string describes the INITIAL-CONTENTS argument in more detail. It is only relevant when studying existing code, or when HIST is a cons. If non-nil, INITIAL-CONTENTS is a string to be inserted into the minibuffer before reading input. Normally, point is put at the end of that string. However, if INITIAL-CONTENTS is (STRING . POSITION), the initial input is STRING, but point is placed at _one-indexed_ position POSITION in the minibuffer. Any integer value less than or equal to one puts point at the beginning of the string. *Note* that this behavior differs from the way such arguments are used in `completing-read' and some related functions, which use zero-indexing for POSITION. (fn PROMPT &optional INITIAL-CONTENTS KEYMAP READ HIST DEFAULT-VALUE INHERIT-INPUT-METHOD)Fread-string Read a string from the minibuffer, prompting with string PROMPT. If non-nil, second arg INITIAL-INPUT is a string to insert before reading. This argument has been superseded by DEFAULT-VALUE and should normally be nil in new code. It behaves as INITIAL-CONTENTS in `read-from-minibuffer' (which see). The third arg HISTORY, if non-nil, specifies a history list and optionally the initial position in the list. See `read-from-minibuffer' for details of HISTORY argument. Fourth arg DEFAULT-VALUE is the default value or the list of default values. If non-nil, it is used for history commands, and as the value (or the first element of the list of default values) to return if the user enters the empty string. Fifth arg INHERIT-INPUT-METHOD, if non-nil, means the minibuffer inherits the current input method and the setting of `enable-multibyte-characters'. (fn PROMPT &optional INITIAL-INPUT HISTORY DEFAULT-VALUE INHERIT-INPUT-METHOD)Fread-no-blanks-input Read a string from the terminal, not allowing blanks. Prompt with PROMPT. Whitespace terminates the input. If INITIAL is non-nil, it should be a string, which is used as initial input, with point positioned at the end, so that SPACE will accept the input. (Actually, INITIAL can also be a cons of a string and an integer. Such values are treated as in `read-from-minibuffer', but are normally not useful in this function.) Third arg INHERIT-INPUT-METHOD, if non-nil, means the minibuffer inherits the current input method and the setting of`enable-multibyte-characters'. (fn PROMPT &optional INITIAL INHERIT-INPUT-METHOD)Fread-command Read the name of a command and return as a symbol. Prompt with PROMPT. By default, return DEFAULT-VALUE or its first element if it is a list. If DEFAULT-VALUE is omitted or nil, and the user enters null input, return a symbol whose name is an empty string. (fn PROMPT &optional DEFAULT-VALUE)Fread-function One arg PROMPT, a string. Read the name of a function and return as a symbol. Prompt with PROMPT. (fn PROMPT)Fread-variable Read the name of a user option and return it as a symbol. Prompt with PROMPT. By default, return DEFAULT-VALUE or its first element if it is a list. A user option, or customizable variable, is one for which `custom-variable-p' returns non-nil. (fn PROMPT &optional DEFAULT-VALUE)Fread-buffer Read the name of a buffer and return it as a string. Prompt with PROMPT, which should be a string ending with a colon and a space. Provides completion on buffer names the user types. Optional second arg DEF is value to return if user enters an empty line, instead of that empty string. If DEF is a list of default values, return its first element. Optional third arg REQUIRE-MATCH has the same meaning as the REQUIRE-MATCH argument of `completing-read'. Optional arg PREDICATE, if non-nil, is a function limiting the buffers that can be considered. It will be called with each potential candidate, and should return non-nil to accept the candidate for completion, nil otherwise. If `read-buffer-completion-ignore-case' is non-nil, completion ignores case while reading the buffer name. If `read-buffer-function' is non-nil, this works by calling it as a function, instead of the usual behavior. (fn PROMPT &optional DEF REQUIRE-MATCH PREDICATE)Ftry-completion Return common substring of all completions of STRING in COLLECTION. Test each possible completion specified by COLLECTION to see if it begins with STRING. The possible completions may be strings or symbols. Symbols are converted to strings before testing, see `symbol-name'. All that match STRING are compared together; the longest initial sequence common to all these matches is the return value. If there is no match at all, the return value is nil. For a unique match which is exact, the return value is t. If COLLECTION is an alist, the keys (cars of elements) are the possible completions. If an element is not a cons cell, then the element itself is the possible completion. If COLLECTION is a hash-table, all the keys that are strings or symbols are the possible completions. If COLLECTION is an obarray, the names of all symbols in the obarray are the possible completions. COLLECTION can also be a function to do the completion itself. It receives three arguments: the values STRING, PREDICATE and nil. Whatever it returns becomes the value of `try-completion'. If optional third argument PREDICATE is non-nil, it is used to test each possible match. The match is a candidate only if PREDICATE returns non-nil. The argument given to PREDICATE is the alist element or the symbol from the obarray. If COLLECTION is a hash-table, predicate is called with two arguments: the key and the value. Additionally to this predicate, `completion-regexp-list' is used to further constrain the set of candidates. (fn STRING COLLECTION &optional PREDICATE)Fall-completions Search for partial matches to STRING in COLLECTION. Test each of the possible completions specified by COLLECTION to see if it begins with STRING. The possible completions may be strings or symbols. Symbols are converted to strings before testing, see `symbol-name'. The value is a list of all the possible completions that match STRING. If COLLECTION is an alist, the keys (cars of elements) are the possible completions. If an element is not a cons cell, then the element itself is the possible completion. If COLLECTION is a hash-table, all the keys that are strings or symbols are the possible completions. If COLLECTION is an obarray, the names of all symbols in the obarray are the possible completions. COLLECTION can also be a function to do the completion itself. It receives three arguments: the values STRING, PREDICATE and t. Whatever it returns becomes the value of `all-completions'. If optional third argument PREDICATE is non-nil, it is used to test each possible match. The match is a candidate only if PREDICATE returns non-nil. The argument given to PREDICATE is the alist element or the symbol from the obarray. If COLLECTION is a hash-table, predicate is called with two arguments: the key and the value. Additionally to this predicate, `completion-regexp-list' is used to further constrain the set of candidates. An obsolete optional fourth argument HIDE-SPACES is still accepted for backward compatibility. If non-nil, strings in COLLECTION that start with a space are ignored unless STRING itself starts with a space. (fn STRING COLLECTION &optional PREDICATE HIDE-SPACES)Fcompleting-read Read a string in the minibuffer, with completion. PROMPT is a string to prompt with; normally it ends in a colon and a space. COLLECTION can be a list of strings, an alist, an obarray or a hash table. COLLECTION can also be a function to do the completion itself. PREDICATE limits completion to a subset of COLLECTION. See `try-completion', `all-completions', `test-completion', and `completion-boundaries', for more details on completion, COLLECTION, and PREDICATE. See also Info node `(elisp)Basic Completion' for the details about completion, and Info node `(elisp)Programmed Completion' for expectations from COLLECTION when it's a function. REQUIRE-MATCH can take the following values: - t means that the user is not allowed to exit unless the input is (or completes to) an element of COLLECTION or is null. - nil means that the user can exit with any input. - `confirm' means that the user can exit with any input, but she needs to confirm her choice if the input is not an element of COLLECTION. - `confirm-after-completion' means that the user can exit with any input, but she needs to confirm her choice if she called `minibuffer-complete' right before `minibuffer-complete-and-exit' and the input is not an element of COLLECTION. - anything else behaves like t except that typing RET does not exit if it does non-null completion. If the input is null, `completing-read' returns DEF, or the first element of the list of default values, or an empty string if DEF is nil, regardless of the value of REQUIRE-MATCH. If INITIAL-INPUT is non-nil, insert it in the minibuffer initially, with point positioned at the end. If it is (STRING . POSITION), the initial input is STRING, but point is placed at _zero-indexed_ position POSITION in STRING. (*Note* that this is different from `read-from-minibuffer' and related functions, which use one-indexing for POSITION.) This feature is deprecated--it is best to pass nil for INITIAL-INPUT and supply the default value DEF instead. The user can yank the default value into the minibuffer easily using \<minibuffer-local-map>\[next-history-element]. HIST, if non-nil, specifies a history list and optionally the initial position in the list. It can be a symbol, which is the history list variable to use, or it can be a cons cell (HISTVAR . HISTPOS). In that case, HISTVAR is the history list variable to use, and HISTPOS is the initial position (the position in the list used by the minibuffer history commands). For consistency, you should also specify that element of the history as the value of INITIAL-INPUT. (This is the only case in which you should use INITIAL-INPUT instead of DEF.) Positions are counted starting from 1 at the beginning of the list. The variable `history-length' controls the maximum length of a history list. DEF, if non-nil, is the default value or the list of default values. If INHERIT-INPUT-METHOD is non-nil, the minibuffer inherits the current input method and the setting of `enable-multibyte-characters'. Completion ignores case if the ambient value of `completion-ignore-case' is non-nil. See also `completing-read-function'. (fn PROMPT COLLECTION &optional PREDICATE REQUIRE-MATCH INITIAL-INPUT HIST DEF INHERIT-INPUT-METHOD)Ftest-completion Return non-nil if STRING is a valid completion. Takes the same arguments as `all-completions' and `try-completion'. If COLLECTION is a function, it is called with three arguments: the values STRING, PREDICATE and `lambda'. (fn STRING COLLECTION &optional PREDICATE)Finternal-complete-buffer Perform completion on buffer names. STRING and PREDICATE have the same meanings as in `try-completion', `all-completions', and `test-completion'. If FLAG is nil, invoke `try-completion'; if it is t, invoke `all-completions'; otherwise invoke `test-completion'. (fn STRING PREDICATE FLAG)Fassoc-string Like `assoc' but specifically for strings (and symbols). This returns the first element of LIST whose car matches the string or symbol KEY, or nil if no match exists. When performing the comparison, symbols are first converted to strings, and unibyte strings to multibyte. If the optional arg CASE-FOLD is non-nil, both KEY and the elements of LIST are upcased for comparison. Unlike `assoc', KEY can also match an entry in LIST consisting of a single string, rather than a cons cell whose car is a string. (fn KEY LIST &optional CASE-FOLD)Fminibuffer-depth Return current depth of activations of minibuffer, a nonnegative integer. (fn)Fminibuffer-prompt Return the prompt string of the currently-active minibuffer. If no minibuffer is active, return nil. (fn)Vread-expression-history A history list for arguments that are Lisp expressions to evaluate. For example, `eval-expression' uses this.Vread-buffer-function If this is non-nil, `read-buffer' does its work by calling this function. The function is called with the arguments passed to `read-buffer'.Vread-buffer-completion-ignore-case Non-nil means completion ignores case when reading a buffer name.Vminibuffer-setup-hook Normal hook run just after entry to minibuffer.Vminibuffer-exit-hook Normal hook run just after exit from minibuffer.Vhistory-length Maximum length of history lists before truncation takes place. A number means truncate to that length; truncation deletes old elements, and is done just after inserting a new element. A value of t means no truncation. This variable only affects history lists that don't specify their own maximum lengths. Setting the `history-length' property of a history variable overrides this default.Vhistory-delete-duplicates Non-nil means to delete duplicates in history. If set to t when adding a new history element, all previous identical elements are deleted from the history list.Vhistory-add-new-input Non-nil means to add new elements in history. If set to nil, minibuffer reading functions don't add new elements to the history list, so it is possible to do this afterwards by calling `add-to-history' explicitly.Vcompletion-ignore-case Non-nil means don't consider case significant in completion. For file-name completion, `read-file-name-completion-ignore-case' controls the behavior, rather than this variable. For buffer name completion, `read-buffer-completion-ignore-case' controls the behavior, rather than this variable.Venable-recursive-minibuffers Non-nil means to allow minibuffer commands while in the minibuffer. This variable makes a difference whenever the minibuffer window is active. Also see `minibuffer-depth-indicate-mode', which may be handy if this variable is non-nil.Vminibuffer-completion-table Alist or obarray used for completion in the minibuffer. This becomes the ALIST argument to `try-completion' and `all-completions'. The value can also be a list of strings or a hash table. The value may alternatively be a function, which is given three arguments: STRING, the current buffer contents; PREDICATE, the predicate for filtering possible matches; CODE, which says what kind of things to do. CODE can be nil, t or `lambda': nil -- return the best completion of STRING, or nil if there is none. t -- return a list of all possible completions of STRING. lambda -- return t if STRING is a valid completion as it stands.Vminibuffer-completion-predicate Within call to `completing-read', this holds the PREDICATE argument.Vminibuffer-completion-confirm Whether to demand confirmation of completion before exiting minibuffer. If nil, confirmation is not required. If the value is `confirm', the user may exit with an input that is not a valid completion alternative, but Emacs asks for confirmation. If the value is `confirm-after-completion', the user may exit with an input that is not a valid completion alternative, but Emacs asks for confirmation if the user submitted the input right after any of the completion commands listed in `minibuffer-confirm-exit-commands'.Vminibuffer-completing-file-name Non-nil means completing file names.Vminibuffer-help-form Value that `help-form' takes on inside the minibuffer.Vminibuffer-history-variable History list symbol to add minibuffer values to. Each string of minibuffer input, as it appears on exit from the minibuffer, is added with (set minibuffer-history-variable (cons STRING (symbol-value minibuffer-history-variable)))Vminibuffer-history-position Current position of redoing in the history list.Vminibuffer-auto-raise Non-nil means entering the minibuffer raises the minibuffer's frame. Some uses of the echo area also raise that frame (since they use it too).Vcompletion-regexp-list List of regexps that should restrict possible completions. The basic completion functions only consider a completion acceptable if it matches all regular expressions in this list, with `case-fold-search' bound to the value of `completion-ignore-case'. See Info node `(elisp)Basic Completion', for a description of these functions.Vminibuffer-allow-text-properties Non-nil means `read-from-minibuffer' should not discard text properties. This also affects `read-string', but it does not affect `read-minibuffer', `read-no-blanks-input', or any of the functions that do minibuffer input with completion; they always discard text properties.Vminibuffer-prompt-properties Text properties that are added to minibuffer prompts. These are in addition to the basic `field' property, and stickiness properties.Vread-hide-char Whether to hide input characters in noninteractive mode. If non-nil, it must be a character, which will be used to mask the input characters. This variable should never be set globally. This variable also overrides the default character that `read-passwd' uses to hide passwords.Sfileio.o Ffind-file-name-handler Return FILENAME's handler function for OPERATION, if it has one. Otherwise, return nil. A file name is handled if one of the regular expressions in `file-name-handler-alist' matches it. If OPERATION equals `inhibit-file-name-operation', then ignore any handlers that are members of `inhibit-file-name-handlers', but still do run any other handlers. This lets handlers use the standard functions without calling themselves recursively. (fn FILENAME OPERATION)Ffile-name-directory Return the directory component in file name FILENAME. Return nil if FILENAME does not include a directory. Otherwise return a directory name. Given a Unix syntax file name, returns a string ending in slash. (fn FILENAME)Ffile-name-nondirectory Return file name FILENAME sans its directory. For example, in a Unix-syntax file name, this is everything after the last slash, or the entire name if it contains no slash. (fn FILENAME)Funhandled-file-name-directory Return a directly usable directory name somehow associated with FILENAME. A `directly usable' directory name is one that may be used without the intervention of any file handler. If FILENAME is a directly usable file itself, return (file-name-as-directory FILENAME). If FILENAME refers to a file which is not accessible from a local process, then this should return nil. The `call-process' and `start-process' functions use this function to get a current directory to run processes in. (fn FILENAME)Ffile-name-as-directory Return a string representing the file name FILE interpreted as a directory. This operation exists because a directory is also a file, but its name as a directory is different from its name as a file. The result can be used as the value of `default-directory' or passed as second argument to `expand-file-name'. For a Unix-syntax file name, just appends a slash unless a trailing slash is already present. (fn FILE)Fdirectory-name-p Return non-nil if NAME ends with a directory separator character. (fn NAME)Fdirectory-file-name Returns the file name of the directory named DIRECTORY. This is the name of the file that holds the data for the directory DIRECTORY. This operation exists because a directory is also a file, but its name as a directory is different from its name as a file. In Unix-syntax, this function just removes the final slash. (fn DIRECTORY)Fmake-temp-file-internal Generate a new file whose name starts with PREFIX, a string. Return the name of the generated file. If DIR-FLAG is zero, do not create the file, just its name. Otherwise, if DIR-FLAG is non-nil, create an empty directory. The file name should end in SUFFIX. Do not expand PREFIX; a non-absolute PREFIX is relative to the Emacs working directory. If TEXT is a string, insert it into the newly created file. Signal an error if the file could not be created. This function does not grok magic file names. (fn PREFIX DIR-FLAG SUFFIX TEXT)Fmake-temp-name Generate temporary file name (string) starting with PREFIX (a string). This function tries to choose a name that has no existing file. For this to work, PREFIX should be an absolute file name, and PREFIX and the returned string should both be non-magic. There is a race condition between calling `make-temp-name' and later creating the file, which opens all kinds of security holes. For that reason, you should normally use `make-temp-file' instead. (fn PREFIX)Fexpand-file-name Convert filename NAME to absolute, and canonicalize it. Second arg DEFAULT-DIRECTORY is directory to start with if NAME is relative (does not start with slash or tilde); both the directory name and a directory's file name are accepted. If DEFAULT-DIRECTORY is nil or missing, the current buffer's value of `default-directory' is used. NAME should be a string that is a valid file name for the underlying filesystem. File name components that are `.' are removed, and so are file name components followed by `..', along with the `..' itself; note that these simplifications are done without checking the resulting file names in the file system. Multiple consecutive slashes are collapsed into a single slash, except at the beginning of the file name when they are significant (e.g., UNC file names on MS-Windows.) An initial `~/' expands to your home directory. An initial `~USER/' expands to USER's home directory. See also the function `substitute-in-file-name'. For technical reasons, this function can return correct but non-intuitive results for the root directory; for instance, (expand-file-name ".." "/") returns "/..". For this reason, use (directory-file-name (file-name-directory dirname)) to traverse a filesystem tree, not (expand-file-name ".." dirname). Note: make sure DIRNAME in this example doesn't end in a slash, unless it's the root directory. (fn NAME &optional DEFAULT-DIRECTORY)Fsubstitute-in-file-name Substitute environment variables referred to in FILENAME. `$FOO' where FOO is an environment variable name means to substitute the value of that variable. The variable name should be terminated with a character not a letter, digit or underscore; otherwise, enclose the entire variable name in braces. If `/~' appears, all of FILENAME through that `/' is discarded. If `//' appears, everything up to and including the first of those `/' is discarded. (fn FILENAME)Fcopy-file Copy FILE to NEWNAME. Both args must be strings. If NEWNAME is a directory name, copy FILE to a like-named file under NEWNAME. For NEWNAME to be recognized as a directory name, it should end in a slash. This function always sets the file modes of the output file to match the input file. The optional third argument OK-IF-ALREADY-EXISTS specifies what to do if file NEWNAME already exists. If OK-IF-ALREADY-EXISTS is nil, signal a `file-already-exists' error without overwriting. If OK-IF-ALREADY-EXISTS is an integer, request confirmation from the user about overwriting; this is what happens in interactive use with M-x. Any other value for OK-IF-ALREADY-EXISTS means to overwrite the existing file. Fourth arg KEEP-TIME non-nil means give the output file the same last-modified time as the old one. (This works on only some systems.) A prefix arg makes KEEP-TIME non-nil. If PRESERVE-UID-GID is non-nil, try to transfer the uid and gid of FILE to NEWNAME. If PRESERVE-PERMISSIONS is non-nil, copy permissions of FILE to NEWNAME; this includes the file modes, along with ACL entries and SELinux context if present. Otherwise, if NEWNAME is created its file permission bits are those of FILE, masked by the default file permissions. (fn FILE NEWNAME &optional OK-IF-ALREADY-EXISTS KEEP-TIME PRESERVE-UID-GID PRESERVE-PERMISSIONS)Fmake-directory-internal Create a new directory named DIRECTORY. (fn DIRECTORY)Fdelete-directory-internal Delete the directory named DIRECTORY. Does not follow symlinks. (fn DIRECTORY)Fdelete-file Delete file named FILENAME. If it is a symlink, remove the symlink. If file has multiple names, it continues to exist with the other names. TRASH non-nil means to trash the file instead of deleting, provided `delete-by-moving-to-trash' is non-nil. When called interactively, TRASH is t if no prefix argument is given. With a prefix argument, TRASH is nil. (fn FILENAME &optional TRASH)Ffile-name-case-insensitive-p Return t if file FILENAME is on a case-insensitive filesystem. The arg must be a string. (fn FILENAME)Frename-file Rename FILE as NEWNAME. Both args must be strings. If file has names other than FILE, it continues to have those names. If NEWNAME is a directory name, rename FILE to a like-named file under NEWNAME. For NEWNAME to be recognized as a directory name, it should end in a slash. Signal a `file-already-exists' error if a file NEWNAME already exists unless optional third argument OK-IF-ALREADY-EXISTS is non-nil. An integer third arg means request confirmation if NEWNAME already exists. This is what happens in interactive use with M-x. (fn FILE NEWNAME &optional OK-IF-ALREADY-EXISTS)Fadd-name-to-file Give FILE additional name NEWNAME. Both args must be strings. If NEWNAME is a directory name, give FILE a like-named new name under NEWNAME. Signal a `file-already-exists' error if a file NEWNAME already exists unless optional third argument OK-IF-ALREADY-EXISTS is non-nil. An integer third arg means request confirmation if NEWNAME already exists. This is what happens in interactive use with M-x. (fn FILE NEWNAME &optional OK-IF-ALREADY-EXISTS)Fmake-symbolic-link Make a symbolic link to TARGET, named LINKNAME. If LINKNAME is a directory name, make a like-named symbolic link under LINKNAME. Signal a `file-already-exists' error if a file LINKNAME already exists unless optional third argument OK-IF-ALREADY-EXISTS is non-nil. An integer third arg means request confirmation if LINKNAME already exists, and expand leading "~" or strip leading "/:" in TARGET. This happens for interactive use with M-x. (fn TARGET LINKNAME &optional OK-IF-ALREADY-EXISTS)Ffile-name-absolute-p Return t if FILENAME is an absolute file name or starts with `~'. On Unix, absolute file names start with `/'. (fn FILENAME)Ffile-exists-p Return t if file FILENAME exists (whether or not you can read it). See also `file-readable-p' and `file-attributes'. This returns nil for a symlink to a nonexistent file. Use `file-symlink-p' to test for such links. (fn FILENAME)Ffile-executable-p Return t if FILENAME can be executed by you. For a directory, this means you can access files in that directory. (It is generally better to use `file-accessible-directory-p' for that purpose, though.) (fn FILENAME)Ffile-readable-p Return t if file FILENAME exists and you can read it. See also `file-exists-p' and `file-attributes'. (fn FILENAME)Ffile-writable-p Return t if file FILENAME can be written or created by you. (fn FILENAME)Faccess-file Access file FILENAME, and get an error if that does not work. The second argument STRING is prepended to the error message. If there is no error, returns nil. (fn FILENAME STRING)Ffile-symlink-p Return non-nil if file FILENAME is the name of a symbolic link. The value is the link target, as a string. Otherwise it returns nil. This function does not check whether the link target exists. (fn FILENAME)Ffile-directory-p Return t if FILENAME names an existing directory. Symbolic links to directories count as directories. See `file-symlink-p' to distinguish symlinks. (fn FILENAME)Ffile-accessible-directory-p Return t if FILENAME names a directory you can open. For the value to be t, FILENAME must specify the name of a directory as a file, and the directory must allow you to open files in it. In order to use a directory as a buffer's current directory, this predicate must return true. A directory name spec may be given instead; then the value is t if the directory so specified exists and really is a readable and searchable directory. (fn FILENAME)Ffile-regular-p Return t if FILENAME names a regular file. This is the sort of file that holds an ordinary stream of data bytes. Symbolic links to regular files count as regular files. See `file-symlink-p' to distinguish symlinks. (fn FILENAME)Ffile-selinux-context Return SELinux context of file named FILENAME. The return value is a list (USER ROLE TYPE RANGE), where the list elements are strings naming the user, role, type, and range of the file's SELinux security context. Return (nil nil nil nil) if the file is nonexistent or inaccessible, or if SELinux is disabled, or if Emacs lacks SELinux support. (fn FILENAME)Fset-file-selinux-context Set SELinux context of file named FILENAME to CONTEXT. CONTEXT should be a list (USER ROLE TYPE RANGE), where the list elements are strings naming the components of a SELinux context. Value is t if setting of SELinux context was successful, nil otherwise. This function does nothing and returns nil if SELinux is disabled, or if Emacs was not compiled with SELinux support. (fn FILENAME CONTEXT)Ffile-acl Return ACL entries of file named FILENAME. The entries are returned in a format suitable for use in `set-file-acl' but is otherwise undocumented and subject to change. Return nil if file does not exist or is not accessible, or if Emacs was unable to determine the ACL entries. (fn FILENAME)Fset-file-acl Set ACL of file named FILENAME to ACL-STRING. ACL-STRING should contain the textual representation of the ACL entries in a format suitable for the platform. Value is t if setting of ACL was successful, nil otherwise. Setting ACL for local files requires Emacs to be built with ACL support. (fn FILENAME ACL-STRING)Ffile-modes Return mode bits of file named FILENAME, as an integer. Return nil, if file does not exist or is not accessible. (fn FILENAME)Fset-file-modes Set mode bits of file named FILENAME to MODE (an integer). Only the 12 low bits of MODE are used. Interactively, mode bits are read by `read-file-modes', which accepts symbolic notation, like the `chmod' command from GNU Coreutils. (fn FILENAME MODE)Fset-default-file-modes Set the file permission bits for newly created files. The argument MODE should be an integer; only the low 9 bits are used. On Posix hosts, this setting is inherited by subprocesses. This function works by setting the Emacs's file mode creation mask. Each bit that is set in the mask means that the corresponding bit in the permissions of newly created files will be disabled. Note that when `write-region' creates a file, it resets the execute bit, even if the mask set by this function allows that bit by having the corresponding bit in the mask reset. (fn MODE)Fdefault-file-modes Return the default file protection for created files. The value is an integer. (fn)Fset-file-times Set times of file FILENAME to TIMESTAMP. Set both access and modification times. Return t on success, else nil. Use the current time if TIMESTAMP is nil. TIMESTAMP is in the format of `current-time'. (fn FILENAME &optional TIMESTAMP)Funix-sync Tell Unix to finish all pending disk updates. (fn)Ffile-newer-than-file-p Return t if file FILE1 is newer than file FILE2. If FILE1 does not exist, the answer is nil; otherwise, if FILE2 does not exist, the answer is t. (fn FILE1 FILE2)Finsert-file-contents Insert contents of file FILENAME after point. Returns list of absolute file name and number of characters inserted. If second argument VISIT is non-nil, the buffer's visited filename and last save file modtime are set, and it is marked unmodified. If visiting and the file does not exist, visiting is completed before the error is signaled. The optional third and fourth arguments BEG and END specify what portion of the file to insert. These arguments count bytes in the file, not characters in the buffer. If VISIT is non-nil, BEG and END must be nil. If optional fifth argument REPLACE is non-nil, replace the current buffer contents (in the accessible portion) with the file contents. This is better than simply deleting and inserting the whole thing because (1) it preserves some marker positions and (2) it puts less data in the undo list. When REPLACE is non-nil, the second return value is the number of characters that replace previous buffer contents. This function does code conversion according to the value of `coding-system-for-read' or `file-coding-system-alist', and sets the variable `last-coding-system-used' to the coding system actually used. In addition, this function decodes the inserted text from known formats by calling `format-decode', which see. (fn FILENAME &optional VISIT BEG END REPLACE)Fwrite-region Write current region into specified file. When called from a program, requires three arguments: START, END and FILENAME. START and END are normally buffer positions specifying the part of the buffer to write. If START is nil, that means to use the entire buffer contents; END is ignored. If START is a string, then output that string to the file instead of any buffer contents; END is ignored. Optional fourth argument APPEND if non-nil means append to existing file contents (if any). If it is a number, seek to that offset in the file before writing. Optional fifth argument VISIT, if t or a string, means set the last-save-file-modtime of buffer to this file's modtime and mark buffer not modified. If VISIT is a string, it is a second file name; the output goes to FILENAME, but the buffer is marked as visiting VISIT. VISIT is also the file name to lock and unlock for clash detection. If VISIT is neither t nor nil nor a string, or if Emacs is in batch mode, do not display the "Wrote file" message. The optional sixth arg LOCKNAME, if non-nil, specifies the name to use for locking and unlocking, overriding FILENAME and VISIT. The optional seventh arg MUSTBENEW, if non-nil, insists on a check for an existing file with the same name. If MUSTBENEW is `excl', that means to get an error if the file already exists; never overwrite. If MUSTBENEW is neither nil nor `excl', that means ask for confirmation before overwriting, but do go ahead and overwrite the file if the user confirms. This does code conversion according to the value of `coding-system-for-write', `buffer-file-coding-system', or `file-coding-system-alist', and sets the variable `last-coding-system-used' to the coding system actually used. This calls `write-region-annotate-functions' at the start, and `write-region-post-annotation-function' at the end. (fn START END FILENAME &optional APPEND VISIT LOCKNAME MUSTBENEW)Fcar-less-than-car Return t if (car A) is numerically less than (car B). (fn A B)Fverify-visited-file-modtime Return t if last mod time of BUF's visited file matches what BUF records. This means that the file has not been changed since it was visited or saved. If BUF is omitted or nil, it defaults to the current buffer. See Info node `(elisp)Modification Time' for more details. (fn &optional BUF)Fvisited-file-modtime Return the current buffer's recorded visited file modification time. The value is a list of the form (HIGH LOW USEC PSEC), like the time values that `file-attributes' returns. If the current buffer has no recorded file modification time, this function returns 0. If the visited file doesn't exist, return -1. See Info node `(elisp)Modification Time' for more details. (fn)Fset-visited-file-modtime Update buffer's recorded modification time from the visited file's time. Useful if the buffer was not read from the file normally or if the file itself has been changed for some known benign reason. An argument specifies the modification time value to use (instead of that of the visited file), in the form of a list (HIGH LOW USEC PSEC) or an integer flag as returned by `visited-file-modtime'. (fn &optional TIME-FLAG)Fdo-auto-save Auto-save all buffers that need it. This is all buffers that have auto-saving enabled and are changed since last auto-saved. Auto-saving writes the buffer into a file so that your editing is not lost if the system crashes. This file is not the file you visited; that changes only when you save. Normally, run the normal hook `auto-save-hook' before saving. A non-nil NO-MESSAGE argument means do not print any message if successful. A non-nil CURRENT-ONLY argument means save only current buffer. (fn &optional NO-MESSAGE CURRENT-ONLY)Fset-buffer-auto-saved Mark current buffer as auto-saved with its current text. No auto-save file will be written until the buffer changes again. (fn)Fclear-buffer-auto-save-failure Clear any record of a recent auto-save failure in the current buffer. (fn)Frecent-auto-save-p Return t if current buffer has been auto-saved recently. More precisely, if it has been auto-saved since last read from or saved in the visited file. If the buffer has no visited file, then any auto-save counts as "recent". (fn)Fnext-read-file-uses-dialog-p Return t if a call to `read-file-name' will use a dialog. The return value is only relevant for a call to `read-file-name' that happens before any other event (mouse or keypress) is handled. (fn)Fset-binary-mode Switch STREAM to binary I/O mode or text I/O mode. STREAM can be one of the symbols `stdin', `stdout', or `stderr'. If MODE is non-nil, switch STREAM to binary mode, otherwise switch it to text mode. As a side effect, this function flushes any pending STREAM's data. Value is the previous value of STREAM's I/O mode, nil for text mode, non-nil for binary mode. On MS-Windows and MS-DOS, binary mode is needed to read or write arbitrary binary data, and for disabling translation between CR-LF pairs and a single newline character. Examples include generation of text files with Unix-style end-of-line format using `princ' in batch mode, with standard output redirected to a file. On Posix systems, this function always returns non-nil, and has no effect except for flushing STREAM's data. (fn STREAM MODE)Vfile-name-coding-system Coding system for encoding file names. If it is nil, `default-file-name-coding-system' (which see) is used. On MS-Windows, the value of this variable is largely ignored if `w32-unicode-filenames' (which see) is non-nil. Emacs on Windows behaves as if file names were encoded in `utf-8'.Vdefault-file-name-coding-system Default coding system for encoding file names. This variable is used only when `file-name-coding-system' is nil. This variable is set/changed by the command `set-language-environment'. User should not set this variable manually, instead use `file-name-coding-system' to get a constant encoding of file names regardless of the current language environment. On MS-Windows, the value of this variable is largely ignored if `w32-unicode-filenames' (which see) is non-nil. Emacs on Windows behaves as if file names were encoded in `utf-8'.Vfile-name-handler-alist Alist of elements (REGEXP . HANDLER) for file names handled specially. If a file name matches REGEXP, all I/O on that file is done by calling HANDLER. If a file name matches more than one handler, the handler whose match starts last in the file name gets precedence. The function `find-file-name-handler' checks this list for a handler for its argument. HANDLER should be a function. The first argument given to it is the name of the I/O primitive to be handled; the remaining arguments are the arguments that were passed to that primitive. For example, if you do (file-exists-p FILENAME) and FILENAME is handled by HANDLER, then HANDLER is called like this: (funcall HANDLER \='file-exists-p FILENAME) Note that HANDLER must be able to handle all I/O primitives; if it has nothing special to do for a primitive, it should reinvoke the primitive to handle the operation "the usual way". See Info node `(elisp)Magic File Names' for more details.Vset-auto-coding-function If non-nil, a function to call to decide a coding system of file. Two arguments are passed to this function: the file name and the length of a file contents following the point. This function should return a coding system to decode the file contents. It should check the file name against `auto-coding-alist'. If no coding system is decided, it should check a coding system specified in the heading lines with the format: -*- ... coding: CODING-SYSTEM; ... -*- or local variable spec of the tailing lines with `coding:' tag.Vafter-insert-file-functions A list of functions to be called at the end of `insert-file-contents'. Each is passed one argument, the number of characters inserted, with point at the start of the inserted text. Each function should leave point the same, and return the new character count. If `insert-file-contents' is intercepted by a handler from `file-name-handler-alist', that handler is responsible for calling the functions in `after-insert-file-functions' if appropriate.Vwrite-region-annotate-functions A list of functions to be called at the start of `write-region'. Each is passed two arguments, START and END as for `write-region'. These are usually two numbers but not always; see the documentation for `write-region'. The function should return a list of pairs of the form (POSITION . STRING), consisting of strings to be effectively inserted at the specified positions of the file being written (1 means to insert before the first byte written). The POSITIONs must be sorted into increasing order. If there are several annotation functions, the lists returned by these functions are merged destructively. As each annotation function runs, the variable `write-region-annotations-so-far' contains a list of all annotations returned by previous annotation functions. An annotation function can return with a different buffer current. Doing so removes the annotations returned by previous functions, and resets START and END to `point-min' and `point-max' of the new buffer. After `write-region' completes, Emacs calls the function stored in `write-region-post-annotation-function', once for each buffer that was current when building the annotations (i.e., at least once), with that buffer current.Vwrite-region-post-annotation-function Function to call after `write-region' completes. The function is called with no arguments. If one or more of the annotation functions in `write-region-annotate-functions' changed the current buffer, the function stored in this variable is called for each of those additional buffers as well, in addition to the original buffer. The relevant buffer is current during each function call.Vwrite-region-annotations-so-far When an annotation function is called, this holds the previous annotations. These are the annotations made by other annotation functions that were already called. See also `write-region-annotate-functions'.Vinhibit-file-name-handlers A list of file name handlers that temporarily should not be used. This applies only to the operation `inhibit-file-name-operation'.Vinhibit-file-name-operation The operation for which `inhibit-file-name-handlers' is applicable.Vauto-save-list-file-name File name in which to write a list of all auto save file names. This variable is initialized automatically from `auto-save-list-file-prefix' shortly after Emacs reads your init file, if you have not yet given it a non-nil value.Vauto-save-visited-file-name Non-nil says auto-save a buffer in the file it is visiting, when practical. Normally auto-save files are written under other names.Vauto-save-include-big-deletions If non-nil, auto-save even if a large part of the text is deleted. If nil, deleting a substantial portion of the text disables auto-save in the buffer; this is the default behavior, because the auto-save file is usually more useful if it contains the deleted text.Vwrite-region-inhibit-fsync Non-nil means don't call fsync in `write-region'. This variable affects calls to `write-region' as well as save commands. Setting this to nil may avoid data loss if the system loses power or the operating system crashes. By default, it is non-nil in batch mode.Vdelete-by-moving-to-trash Specifies whether to use the system's trash can. When non-nil, certain file deletion commands use the function `move-file-to-trash' instead of deleting files outright. This includes interactive calls to `delete-file' and `delete-directory' and the Dired deletion commands.Sdired.o Fdirectory-files Return a list of names of files in DIRECTORY. There are three optional arguments: If FULL is non-nil, return absolute file names. Otherwise return names that are relative to the specified directory. If MATCH is non-nil, mention only file names that match the regexp MATCH. If NOSORT is non-nil, the list is not sorted--its order is unpredictable. Otherwise, the list returned is sorted with `string-lessp'. NOSORT is useful if you plan to sort the result yourself. (fn DIRECTORY &optional FULL MATCH NOSORT)Fdirectory-files-and-attributes Return a list of names of files and their attributes in DIRECTORY. Value is a list of the form: ((FILE1 FILE1-ATTRS) (FILE2 FILE2-ATTRS) ...) where each FILEn-ATTRS is the attributes of FILEn as returned by `file-attributes'. This function accepts four optional arguments: If FULL is non-nil, return absolute file names. Otherwise return names that are relative to the specified directory. If MATCH is non-nil, mention only file names that match the regexp MATCH. If NOSORT is non-nil, the list is not sorted--its order is unpredictable. NOSORT is useful if you plan to sort the result yourself. ID-FORMAT specifies the preferred format of attributes uid and gid, see `file-attributes' for further documentation. On MS-Windows, performance depends on `w32-get-true-file-attributes', which see. (fn DIRECTORY &optional FULL MATCH NOSORT ID-FORMAT)Ffile-name-completion Complete file name FILE in directory DIRECTORY. Returns the longest string common to all file names in DIRECTORY that start with FILE. If there is only one and FILE matches it exactly, returns t. Returns nil if DIRECTORY contains no name starting with FILE. If PREDICATE is non-nil, call PREDICATE with each possible completion (in absolute form) and ignore it if PREDICATE returns nil. This function ignores some of the possible completions as determined by the variables `completion-regexp-list' and `completion-ignored-extensions', which see. `completion-regexp-list' is matched against file and directory names relative to DIRECTORY. (fn FILE DIRECTORY &optional PREDICATE)Ffile-name-all-completions Return a list of all completions of file name FILE in directory DIRECTORY. These are all file names in directory DIRECTORY which begin with FILE. This function ignores some of the possible completions as determined by `completion-regexp-list', which see. `completion-regexp-list' is matched against file and directory names relative to DIRECTORY. (fn FILE DIRECTORY)Ffile-attributes Return a list of attributes of file FILENAME. Value is nil if specified file cannot be opened. ID-FORMAT specifies the preferred format of attributes uid and gid (see below) - valid values are `string' and `integer'. The latter is the default, but we plan to change that, so you should specify a non-nil value for ID-FORMAT if you use the returned uid or gid. To access the elements returned, the following access functions are provided: `file-attribute-type', `file-attribute-link-number', `file-attribute-user-id', `file-attribute-group-id', `file-attribute-access-time', `file-attribute-modification-time', `file-attribute-status-change-time', `file-attribute-size', `file-attribute-modes', `file-attribute-inode-number', and `file-attribute-device-number'. Elements of the attribute list are: 0. t for directory, string (name linked to) for symbolic link, or nil. 1. Number of links to file. 2. File uid as a string or a number. If a string value cannot be looked up, a numeric value, either an integer or a float, is returned. 3. File gid, likewise. 4. Last access time, as a list of integers (HIGH LOW USEC PSEC) in the same style as (current-time). (See a note below about access time on FAT-based filesystems.) 5. Last modification time, likewise. This is the time of the last change to the file's contents. 6. Last status change time, likewise. This is the time of last change to the file's attributes: owner and group, access mode bits, etc. 7. Size in bytes. This is a floating point number if the size is too large for an integer. 8. File modes, as a string of ten letters or dashes as in ls -l. 9. An unspecified value, present only for backward compatibility. 10. inode number. If it is larger than what an Emacs integer can hold, this is of the form (HIGH . LOW): first the high bits, then the low 16 bits. If even HIGH is too large for an Emacs integer, this is instead of the form (HIGH MIDDLE . LOW): first the high bits, then the middle 24 bits, and finally the low 16 bits. 11. Filesystem device number. If it is larger than what the Emacs integer can hold, this is a cons cell, similar to the inode number. On most filesystems, the combination of the inode and the device number uniquely identifies the file. On MS-Windows, performance depends on `w32-get-true-file-attributes', which see. On some FAT-based filesystems, only the date of last access is recorded, so last access time will always be midnight of that day. (fn FILENAME &optional ID-FORMAT)Ffile-attributes-lessp Return t if first arg file attributes list is less than second. Comparison is in lexicographic order and case is significant. (fn F1 F2)Fsystem-users Return a list of user names currently registered in the system. If we don't know how to determine that on this platform, just return a list with one element, taken from `user-real-login-name'. (fn)Fsystem-groups Return a list of user group names currently registered in the system. The value may be nil if not supported on this platform. (fn)Vcompletion-ignored-extensions Completion ignores file names ending in any string in this list. It does not ignore them if all possible completions end in one of these strings or when displaying a list of completions. It ignores directory names if they match any string in this list which ends in a slash.Scmds.o Fforward-point Return buffer position N characters after (before if N negative) point. (fn N)Fforward-char Move point N characters forward (backward if N is negative). On reaching end or beginning of buffer, stop and signal error. Interactively, N is the numeric prefix argument. If N is omitted or nil, move point 1 character forward. Depending on the bidirectional context, the movement may be to the right or to the left on the screen. This is in contrast with \[right-char], which see. (fn &optional N)Fbackward-char Move point N characters backward (forward if N is negative). On attempt to pass beginning or end of buffer, stop and signal error. Interactively, N is the numeric prefix argument. If N is omitted or nil, move point 1 character backward. Depending on the bidirectional context, the movement may be to the right or to the left on the screen. This is in contrast with \[left-char], which see. (fn &optional N)Fforward-line Move N lines forward (backward if N is negative). Precisely, if point is on line I, move to the start of line I + N ("start of line" in the logical order). If there isn't room, go as far as possible (no error). Returns the count of lines left to move. If moving forward, that is N minus number of lines moved; if backward, N plus number moved. Exception: With positive N, a non-empty line at the end of the buffer, or of its accessible portion, counts as one line successfully moved (for the return value). This means that the function will move point to the end of such a line and will count it as a line moved across, even though there is no next line to go to its beginning. (fn &optional N)Fbeginning-of-line Move point to beginning of current line (in the logical order). With argument N not nil or 1, move forward N - 1 lines first. If point reaches the beginning or end of buffer, it stops there. This function constrains point to the current field unless this moves point to a different line than the original, unconstrained result. If N is nil or 1, and a front-sticky field starts at point, the point does not move. To ignore field boundaries bind `inhibit-field-text-motion' to t, or use the `forward-line' function instead. For instance, `(forward-line 0)' does the same thing as `(beginning-of-line)', except that it ignores field boundaries. (fn &optional N)Fend-of-line Move point to end of current line (in the logical order). With argument N not nil or 1, move forward N - 1 lines first. If point reaches the beginning or end of buffer, it stops there. To ignore intangibility, bind `inhibit-point-motion-hooks' to t. This function constrains point to the current field unless this moves point to a different line than the original, unconstrained result. If N is nil or 1, and a rear-sticky field ends at point, the point does not move. To ignore field boundaries bind `inhibit-field-text-motion' to t. (fn &optional N)Fdelete-char Delete the following N characters (previous if N is negative). Optional second arg KILLFLAG non-nil means kill instead (save in kill ring). Interactively, N is the prefix arg, and KILLFLAG is set if N was explicitly specified. The command `delete-forward-char' is preferable for interactive use, e.g. because it respects values of `delete-active-region' and `overwrite-mode'. (fn N &optional KILLFLAG)Fself-insert-command Insert the character you type. Whichever character you type to run this command is inserted. The numeric prefix argument N says how many times to repeat the insertion. Before insertion, `expand-abbrev' is executed if the inserted character does not have word syntax and the previous character in the buffer does. After insertion, `internal-auto-fill' is called if `auto-fill-function' is non-nil and if the `auto-fill-chars' table has a non-nil value for the inserted character. At the end, it runs `post-self-insert-hook'. (fn N)Vpost-self-insert-hook Hook run at the end of `self-insert-command'. This is run after inserting the character.Scasetab.o Fcase-table-p Return t if OBJECT is a case table. See `set-case-table' for more information on these data structures. (fn OBJECT)Fcurrent-case-table Return the case table of the current buffer. (fn)Fstandard-case-table Return the standard case table. This is the one used for new buffers. (fn)Fset-case-table Select a new case table for the current buffer. A case table is a char-table which maps characters to their lower-case equivalents. It also has three "extra" slots which may be additional char-tables or nil. These slots are called UPCASE, CANONICALIZE and EQUIVALENCES. UPCASE maps each non-upper-case character to its upper-case equivalent. (The value in UPCASE for an upper-case character is never used.) If lower and upper case characters are in 1-1 correspondence, you may use nil and the upcase table will be deduced from DOWNCASE. CANONICALIZE maps each character to a canonical equivalent; any two characters that are related by case-conversion have the same canonical equivalent character; it may be nil, in which case it is deduced from DOWNCASE and UPCASE. EQUIVALENCES is a map that cyclically permutes each equivalence class (of characters with the same canonical equivalent); it may be nil, in which case it is deduced from CANONICALIZE. (fn TABLE)Fset-standard-case-table Select a new standard case table for new buffers. See `set-case-table' for more info on case tables. (fn TABLE)Scasefiddle.o Fupcase Convert argument to upper case and return that. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. If argument is a character, characters which map to multiple code points when cased, e.g. fi, are returned unchanged. See also `capitalize', `downcase' and `upcase-initials'. (fn OBJ)Fdowncase Convert argument to lower case and return that. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. (fn OBJ)Fcapitalize Convert argument to capitalized form and return that. This means that each word's first character is converted to either title case or upper case, and the rest to lower case. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. If argument is a character, characters which map to multiple code points when cased, e.g. fi, are returned unchanged. (fn OBJ)Fupcase-initials Convert the initial of each word in the argument to upper case. This means that each word's first character is converted to either title case or upper case, and the rest are left unchanged. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. If argument is a character, characters which map to multiple code points when cased, e.g. fi, are returned unchanged. (fn OBJ)Fupcase-region Convert the region to upper case. In programs, wants two arguments. These arguments specify the starting and ending character numbers of the region to operate on. When used as a command, the text between point and the mark is operated on. See also `capitalize-region'. (fn BEG END &optional REGION-NONCONTIGUOUS-P)Fdowncase-region Convert the region to lower case. In programs, wants two arguments. These arguments specify the starting and ending character numbers of the region to operate on. When used as a command, the text between point and the mark is operated on. (fn BEG END &optional REGION-NONCONTIGUOUS-P)Fcapitalize-region Convert the region to capitalized form. This means that each word's first character is converted to either title case or upper case, and the rest to lower case. In programs, give two arguments, the starting and ending character positions to operate on. (fn BEG END)Fupcase-initials-region Upcase the initial of each word in the region. This means that each word's first character is converted to either title case or upper case, and the rest are left unchanged. In programs, give two arguments, the starting and ending character positions to operate on. (fn BEG END)Fupcase-word Convert to upper case from point to end of word, moving over. If point is in the middle of a word, the part of that word before point is ignored when moving forward. With negative argument, convert previous words but do not move. See also `capitalize-word'. (fn ARG)Fdowncase-word Convert to lower case from point to end of word, moving over. If point is in the middle of a word, the part of that word before point is ignored when moving forward. With negative argument, convert previous words but do not move. (fn ARG)Fcapitalize-word Capitalize from point to the end of word, moving over. With numerical argument ARG, capitalize the next ARG-1 words as well. This gives the word(s) a first character in upper case and the rest lower case. If point is in the middle of a word, the part of that word before point is ignored when moving forward. With negative argument, capitalize previous words but do not move. (fn ARG)Sindent.o Fcurrent-column Return the horizontal position of point. Beginning of line is column 0. This is calculated by adding together the widths of all the displayed representations of the character between the start of the previous line and point (e.g., control characters will have a width of 2 or 4, tabs will have a variable width). Ignores finite width of frame, which means that this function may return values greater than (frame-width). Whether the line is visible (if `selective-display' is t) has no effect; however, ^M is treated as end of line when `selective-display' is t. Text that has an invisible property is considered as having width 0, unless `buffer-invisibility-spec' specifies that it is replaced by an ellipsis. (fn)Findent-to Indent from point with tabs and spaces until COLUMN is reached. Optional second argument MINIMUM says always do at least MINIMUM spaces even if that goes past COLUMN; by default, MINIMUM is zero. The return value is the column where the insertion ends. (fn COLUMN &optional MINIMUM)Fcurrent-indentation Return the indentation of the current line. This is the horizontal position of the character following any initial whitespace. (fn)Fmove-to-column Move point to column COLUMN in the current line. Interactively, COLUMN is the value of prefix numeric argument. The column of a character is calculated by adding together the widths as displayed of the previous characters in the line. This function ignores line-continuation; there is no upper limit on the column number a character can have and horizontal scrolling has no effect. If specified column is within a character, point goes after that character. If it's past end of line, point goes to end of line. Optional second argument FORCE non-nil means if COLUMN is in the middle of a tab character, either change it to spaces (when `indent-tabs-mode' is nil), or insert enough spaces before it to reach COLUMN (otherwise). In addition, if FORCE is t, and the line is too short to reach COLUMN, add spaces/tabs to get there. The return value is the current column. (fn COLUMN &optional FORCE)Fcompute-motion Scan through the current buffer, calculating screen position. Scan the current buffer forward from offset FROM, assuming it is at position FROMPOS--a cons of the form (HPOS . VPOS)-- to position TO or position TOPOS--another cons of the form (HPOS . VPOS)-- and return the ending buffer position and screen location. If TOPOS is nil, the actual width and height of the window's text area are used. There are three additional arguments: WIDTH is the number of columns available to display text; this affects handling of continuation lines. A value of nil corresponds to the actual number of available text columns. OFFSETS is either nil or a cons cell (HSCROLL . TAB-OFFSET). HSCROLL is the number of columns not being displayed at the left margin; this is usually taken from a window's hscroll member. TAB-OFFSET is the number of columns of the first tab that aren't being displayed, perhaps because the line was continued within it. If OFFSETS is nil, HSCROLL and TAB-OFFSET are assumed to be zero. WINDOW is the window to operate on. It is used to choose the display table; if it is showing the current buffer, it is used also for deciding which overlay properties apply. Note that `compute-motion' always operates on the current buffer. The value is a list of five elements: (POS HPOS VPOS PREVHPOS CONTIN) POS is the buffer position where the scan stopped. VPOS is the vertical position where the scan stopped. HPOS is the horizontal position where the scan stopped. PREVHPOS is the horizontal position one character back from POS. CONTIN is t if a line was continued after (or within) the previous character. For example, to find the buffer position of column COL of line LINE of a certain window, pass the window's starting location as FROM and the window's upper-left coordinates as FROMPOS. Pass the buffer's (point-max) as TO, to limit the scan to the end of the visible section of the buffer, and pass LINE and COL as TOPOS. (fn FROM FROMPOS TO TOPOS WIDTH OFFSETS WINDOW)Fline-number-display-width Return the width used for displaying line numbers in the selected window. If optional argument PIXELWISE is the symbol `columns', return the width in units of the frame's canonical character width. In this case, the value is a float. If optional argument PIXELWISE is t or any other non-nil value, return the width as an integer number of pixels. Otherwise return the value as an integer number of columns of the face used to display line numbers, `line-number'. Note that in the latter case, the value doesn't include the 2 columns used for padding the numbers on display. (fn &optional PIXELWISE)Fvertical-motion Move point to start of the screen line LINES lines down. If LINES is negative, this means moving up. This function is an ordinary cursor motion function which calculates the new position based on how text would be displayed. The new position may be the start of a line, or just the start of a continuation line. The function returns number of screen lines moved over; that usually equals LINES, but may be closer to zero if beginning or end of buffer was reached. The optional second argument WINDOW specifies the window to use for parameters such as width, horizontal scrolling, and so on. The default is to use the selected window's parameters. LINES can optionally take the form (COLS . LINES), in which case the motion will not stop at the start of a screen line but COLS column from the visual start of the line (if such exists on that line, that is). If the line is scrolled horizontally, COLS is interpreted visually, i.e., as addition to the columns of text beyond the left edge of the window. The optional third argument CUR-COL specifies the horizontal window-relative coordinate of point, in units of frame's canonical character width, where the function is invoked. If this argument is omitted or nil, the function will determine the point coordinate by going back to the beginning of the line. `vertical-motion' always uses the current buffer, regardless of which buffer is displayed in WINDOW. This is consistent with other cursor motion functions and makes it possible to use `vertical-motion' in any buffer, whether or not it is currently displayed in some window. (fn LINES &optional WINDOW CUR-COL)Vindent-tabs-mode Indentation can insert tabs if this is non-nil.Ssearch.o Flooking-at Return t if text after point matches regular expression REGEXP. This function modifies the match data that `match-beginning', `match-end' and `match-data' access; save and restore the match data if you want to preserve them. (fn REGEXP)Fposix-looking-at Return t if text after point matches regular expression REGEXP. Find the longest match, in accord with Posix regular expression rules. This function modifies the match data that `match-beginning', `match-end' and `match-data' access; save and restore the match data if you want to preserve them. (fn REGEXP)Fstring-match Return index of start of first match for REGEXP in STRING, or nil. Matching ignores case if `case-fold-search' is non-nil. If third arg START is non-nil, start search at that index in STRING. For index of first char beyond the match, do (match-end 0). `match-end' and `match-beginning' also give indices of substrings matched by parenthesis constructs in the pattern. You can use the function `match-string' to extract the substrings matched by the parenthesis constructions in REGEXP. (fn REGEXP STRING &optional START)Fposix-string-match Return index of start of first match for REGEXP in STRING, or nil. Find the longest match, in accord with Posix regular expression rules. Case is ignored if `case-fold-search' is non-nil in the current buffer. If third arg START is non-nil, start search at that index in STRING. For index of first char beyond the match, do (match-end 0). `match-end' and `match-beginning' also give indices of substrings matched by parenthesis constructs in the pattern. (fn REGEXP STRING &optional START)Fsearch-backward Search backward from point for STRING. Set point to the beginning of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not begin before that position. A value of nil means search to the beginning of the accessible portion of the buffer. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, position at limit of search and return nil. Optional fourth argument COUNT, if a positive number, means to search for COUNT successive occurrences. If COUNT is negative, search forward, instead of backward, for -COUNT occurrences. A value of nil means the same as 1. With COUNT positive, the match found is the COUNTth to last one (or last, if COUNT is 1 or nil) in the buffer located entirely before the origin of the search; correspondingly with COUNT negative. Search case-sensitivity is determined by the value of the variable `case-fold-search', which see. See also the functions `match-beginning', `match-end' and `replace-match'. (fn STRING &optional BOUND NOERROR COUNT)Fsearch-forward Search forward from point for STRING. Set point to the end of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not end after that position. A value of nil means search to the end of the accessible portion of the buffer. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument COUNT, if a positive number, means to search for COUNT successive occurrences. If COUNT is negative, search backward, instead of forward, for -COUNT occurrences. A value of nil means the same as 1. With COUNT positive, the match found is the COUNTth one (or first, if COUNT is 1 or nil) in the buffer located entirely after the origin of the search; correspondingly with COUNT negative. Search case-sensitivity is determined by the value of the variable `case-fold-search', which see. See also the functions `match-beginning', `match-end' and `replace-match'. (fn STRING &optional BOUND NOERROR COUNT)Fre-search-backward Search backward from point for regular expression REGEXP. This function is almost identical to `re-search-forward', except that by default it searches backward instead of forward, and the sign of COUNT also indicates exactly the opposite searching direction. See `re-search-forward' for details. Note that searching backwards may give a shorter match than expected, because REGEXP is still matched in the forward direction. See Info anchor `(elisp) re-search-backward' for details. (fn REGEXP &optional BOUND NOERROR COUNT)Fre-search-forward Search forward from point for regular expression REGEXP. Set point to the end of the occurrence found, and return point. The optional second argument BOUND is a buffer position that bounds the search. The match found must not end after that position. A value of nil means search to the end of the accessible portion of the buffer. The optional third argument NOERROR indicates how errors are handled when the search fails. If it is nil or omitted, emit an error; if it is t, simply return nil and do nothing; if it is neither nil nor t, move to the limit of search and return nil. The optional fourth argument COUNT is a number that indicates the search direction and the number of occurrences to search for. If it is positive, search forward for COUNT successive occurrences; if it is negative, search backward, instead of forward, for -COUNT occurrences. A value of nil means the same as 1. With COUNT positive/negative, the match found is the COUNTth/-COUNTth one in the buffer located entirely after/before the origin of the search. Search case-sensitivity is determined by the value of the variable `case-fold-search', which see. See also the functions `match-beginning', `match-end', `match-string', and `replace-match'. (fn REGEXP &optional BOUND NOERROR COUNT)Fposix-search-backward Search backward from point for match for regular expression REGEXP. Find the longest match in accord with Posix regular expression rules. Set point to the beginning of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not begin before that position. A value of nil means search to the beginning of the accessible portion of the buffer. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, position at limit of search and return nil. Optional fourth argument COUNT, if a positive number, means to search for COUNT successive occurrences. If COUNT is negative, search forward, instead of backward, for -COUNT occurrences. A value of nil means the same as 1. With COUNT positive, the match found is the COUNTth to last one (or last, if COUNT is 1 or nil) in the buffer located entirely before the origin of the search; correspondingly with COUNT negative. Search case-sensitivity is determined by the value of the variable `case-fold-search', which see. See also the functions `match-beginning', `match-end', `match-string', and `replace-match'. (fn REGEXP &optional BOUND NOERROR COUNT)Fposix-search-forward Search forward from point for regular expression REGEXP. Find the longest match in accord with Posix regular expression rules. Set point to the end of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not end after that position. A value of nil means search to the end of the accessible portion of the buffer. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument COUNT, if a positive number, means to search for COUNT successive occurrences. If COUNT is negative, search backward, instead of forward, for -COUNT occurrences. A value of nil means the same as 1. With COUNT positive, the match found is the COUNTth one (or first, if COUNT is 1 or nil) in the buffer located entirely after the origin of the search; correspondingly with COUNT negative. Search case-sensitivity is determined by the value of the variable `case-fold-search', which see. See also the functions `match-beginning', `match-end', `match-string', and `replace-match'. (fn REGEXP &optional BOUND NOERROR COUNT)Freplace-match Replace text matched by last search with NEWTEXT. Leave point at the end of the replacement text. If optional second arg FIXEDCASE is non-nil, do not alter the case of the replacement text. Otherwise, maybe capitalize the whole text, or maybe just word initials, based on the replaced text. If the replaced text has only capital letters and has at least one multiletter word, convert NEWTEXT to all caps. Otherwise if all words are capitalized in the replaced text, capitalize each word in NEWTEXT. If optional third arg LITERAL is non-nil, insert NEWTEXT literally. Otherwise treat `\' as special: `\&' in NEWTEXT means substitute original matched text. `\N' means substitute what matched the Nth `\(...\)'. If Nth parens didn't match, substitute nothing. `\\' means insert one `\'. `\?' is treated literally (for compatibility with `query-replace-regexp'). Any other character following `\' signals an error. Case conversion does not apply to these substitutions. If optional fourth argument STRING is non-nil, it should be a string to act on; this should be the string on which the previous match was done via `string-match'. In this case, `replace-match' creates and returns a new string, made by copying STRING and replacing the part of STRING that was matched (the original STRING itself is not altered). The optional fifth argument SUBEXP specifies a subexpression; it says to replace just that subexpression with NEWTEXT, rather than replacing the entire matched text. This is, in a vague sense, the inverse of using `\N' in NEWTEXT; `\N' copies subexp N into NEWTEXT, but using N as SUBEXP puts NEWTEXT in place of subexp N. This is useful only after a regular expression search or match, since only regular expressions have distinguished subexpressions. (fn NEWTEXT &optional FIXEDCASE LITERAL STRING SUBEXP)Fmatch-beginning Return position of start of text matched by last search. SUBEXP, a number, specifies which parenthesized expression in the last regexp. Value is nil if SUBEXPth pair didn't match, or there were less than SUBEXP pairs. Zero means the entire text matched by the whole regexp or whole string. Return value is undefined if the last search failed. (fn SUBEXP)Fmatch-end Return position of end of text matched by last search. SUBEXP, a number, specifies which parenthesized expression in the last regexp. Value is nil if SUBEXPth pair didn't match, or there were less than SUBEXP pairs. Zero means the entire text matched by the whole regexp or whole string. Return value is undefined if the last search failed. (fn SUBEXP)Fmatch-data Return a list describing what the last search matched. Element 2N is `(match-beginning N)'; element 2N + 1 is `(match-end N)'. All the elements are markers or nil (nil if the Nth pair didn't match) if the last match was on a buffer; integers or nil if a string was matched. Use `set-match-data' to reinstate the data in this list. If INTEGERS (the optional first argument) is non-nil, always use integers (rather than markers) to represent buffer positions. In this case, and if the last match was in a buffer, the buffer will get stored as one additional element at the end of the list. If REUSE is a list, reuse it as part of the value. If REUSE is long enough to hold all the values, and if INTEGERS is non-nil, no consing is done. If optional third arg RESEAT is non-nil, any previous markers on the REUSE list will be modified to point to nowhere. Return value is undefined if the last search failed. (fn &optional INTEGERS REUSE RESEAT)Fset-match-data Set internal data on last search match from elements of LIST. LIST should have been created by calling `match-data' previously. If optional arg RESEAT is non-nil, make markers on LIST point nowhere. (fn LIST &optional RESEAT)Fregexp-quote Return a regexp string which matches exactly STRING and nothing else. (fn STRING)Fnewline-cache-check Check the newline cache of BUFFER against buffer contents. BUFFER defaults to the current buffer. Value is an array of 2 sub-arrays of buffer positions for newlines, the first based on the cache, the second based on actually scanning the buffer. If the buffer doesn't have a cache, the value is nil. (fn &optional BUFFER)Vsearch-spaces-regexp Regexp to substitute for bunches of spaces in regexp search. Some commands use this for user-specified regexps. Spaces that occur inside character classes or repetition operators or other such regexp constructs are not replaced with this. A value of nil (which is the normal value) means treat spaces literally.Vinhibit-changing-match-data Internal use only. If non-nil, the primitive searching and matching functions such as `looking-at', `string-match', `re-search-forward', etc., do not set the match data. The proper way to use this variable is to bind it with `let' around a small expression.Sregex.o Sundo.o Fundo-boundary Mark a boundary between units of undo. An undo command will stop at this point, but another undo command will undo to the previous boundary. (fn)Vundo-limit Keep no more undo information once it exceeds this size. This limit is applied when garbage collection happens. When a previous command increases the total undo list size past this value, the earlier commands that came before it are forgotten. The size is counted as the number of bytes occupied, which includes both saved text and other data.Vundo-strong-limit Don't keep more than this much size of undo information. This limit is applied when garbage collection happens. When a previous command increases the total undo list size past this value, that command and the earlier commands that came before it are forgotten. However, the most recent buffer-modifying command's undo info is never discarded for this reason. The size is counted as the number of bytes occupied, which includes both saved text and other data.Vundo-outer-limit Outer limit on size of undo information for one command. At garbage collection time, if the current command has produced more than this much undo information, it discards the info and displays a warning. This is a last-ditch limit to prevent memory overflow. The size is counted as the number of bytes occupied, which includes both saved text and other data. A value of nil means no limit. In this case, accumulating one huge undo entry could make Emacs crash as a result of memory overflow. In fact, this calls the function which is the value of `undo-outer-limit-function' with one argument, the size. The text above describes the behavior of the function that variable usually specifies.Vundo-outer-limit-function Function to call when an undo list exceeds `undo-outer-limit'. This function is called with one argument, the current undo list size for the most recent command (since the last undo boundary). If the function returns t, that means truncation has been fully handled. If it returns nil, the other forms of truncation are done. Garbage collection is inhibited around the call to this function, so it must make sure not to do a lot of consing.Vundo-inhibit-record-point Non-nil means do not record `point' in `buffer-undo-list'.Salloc.o Fmake-string Return a newly created string of length LENGTH, with INIT in each element. LENGTH must be an integer. INIT must be an integer that represents a character. (fn LENGTH INIT)Fmake-bool-vector Return a new bool-vector of length LENGTH, using INIT for each element. LENGTH must be a number. INIT matters only in whether it is t or nil. (fn LENGTH INIT)Fbool-vector Return a new bool-vector with specified arguments as elements. Allows any number of arguments, including zero. (fn &rest OBJECTS)Fcons Create a new cons, give it CAR and CDR as components, and return it. (fn CAR CDR)Flist Return a newly created list with specified arguments as elements. Allows any number of arguments, including zero. (fn &rest OBJECTS)Fmake-list Return a newly created list of length LENGTH, with each element being INIT. (fn LENGTH INIT)Fmake-record Create a new record. TYPE is its type as returned by `type-of'; it should be either a symbol or a type descriptor. SLOTS is the number of non-type slots, each initialized to INIT. (fn TYPE SLOTS INIT)Frecord Create a new record. TYPE is its type as returned by `type-of'; it should be either a symbol or a type descriptor. SLOTS is used to initialize the record slots with shallow copies of the arguments. (fn TYPE &rest SLOTS)Fmake-vector Return a newly created vector of length LENGTH, with each element being INIT. See also the function `vector'. (fn LENGTH INIT)Fvector Return a newly created vector with specified arguments as elements. Allows any number of arguments, including zero. (fn &rest OBJECTS)Fmake-byte-code Create a byte-code object with specified arguments as elements. The arguments should be the ARGLIST, bytecode-string BYTE-CODE, constant vector CONSTANTS, maximum stack size DEPTH, (optional) DOCSTRING, and (optional) INTERACTIVE-SPEC. The first four arguments are required; at most six have any significance. The ARGLIST can be either like the one of `lambda', in which case the arguments will be dynamically bound before executing the byte code, or it can be an integer of the form NNNNNNNRMMMMMMM where the 7bit MMMMMMM specifies the minimum number of arguments, the 7-bit NNNNNNN specifies the maximum number of arguments (ignoring &rest) and the R bit specifies whether there is a &rest argument to catch the left-over arguments. If such an integer is used, the arguments will not be dynamically bound but will be instead pushed on the stack before executing the byte-code. (fn ARGLIST BYTE-CODE CONSTANTS DEPTH &optional DOCSTRING INTERACTIVE-SPEC &rest ELEMENTS)Fmake-symbol Return a newly allocated uninterned symbol whose name is NAME. Its value is void, and its function definition and property list are nil. (fn NAME)Fmake-marker Return a newly allocated marker which does not point at any place. (fn)Fmake-finalizer Make a finalizer that will run FUNCTION. FUNCTION will be called after garbage collection when the returned finalizer object becomes unreachable. If the finalizer object is reachable only through references from finalizer objects, it does not count as reachable for the purpose of deciding whether to run FUNCTION. FUNCTION will be run once per finalizer object. (fn FUNCTION)Fpurecopy Make a copy of object OBJ in pure storage. Recursively copies contents of vectors and cons cells. Does not copy symbols. Copies strings without text properties. (fn OBJ)Fgarbage-collect Reclaim storage for Lisp objects no longer needed. Garbage collection happens automatically if you cons more than `gc-cons-threshold' bytes of Lisp data since previous garbage collection. `garbage-collect' normally returns a list with info on amount of space in use, where each entry has the form (NAME SIZE USED FREE), where: - NAME is a symbol describing the kind of objects this entry represents, - SIZE is the number of bytes used by each one, - USED is the number of those objects that were found live in the heap, - FREE is the number of those objects that are not live but that Emacs keeps around for future allocations (maybe because it does not know how to return them to the OS). However, if there was overflow in pure space, `garbage-collect' returns nil, because real GC can't be done. See Info node `(elisp)Garbage Collection'. (fn)Fmemory-info Return a list of (TOTAL-RAM FREE-RAM TOTAL-SWAP FREE-SWAP). All values are in Kbytes. If there is no swap space, last two values are zero. If the system is not supported or memory information can't be obtained, return nil. (fn)Fmemory-limit Return the address of the last byte Emacs has allocated, divided by 1024. This may be helpful in debugging Emacs's memory usage. We divide the value by 1024 to make sure it fits in a Lisp integer. (fn)Fmemory-use-counts Return a list of counters that measure how much consing there has been. Each of these counters increments for a certain kind of object. The counters wrap around from the largest positive integer to zero. Garbage collection does not decrease them. The elements of the value are as follows: (CONSES FLOATS VECTOR-CELLS SYMBOLS STRING-CHARS MISCS INTERVALS STRINGS) All are in units of 1 = one object consed except for VECTOR-CELLS and STRING-CHARS, which count the total length of objects consed. MISCS include overlays, markers, and some internal types. Frames, windows, buffers, and subprocesses count as vectors (but the contents of a buffer's text do not count here). (fn)Fsuspicious-object Return OBJ, maybe marking it for extra scrutiny. If Emacs is compiled with suspicious object checking, capture a stack trace when OBJ is freed in order to help track down garbage collection bugs. Otherwise, do nothing and return OBJ. (fn OBJ)Vgc-cons-threshold Number of bytes of consing between garbage collections. Garbage collection can happen automatically once this many bytes have been allocated since the last garbage collection. All data types count. Garbage collection happens automatically only when `eval' is called. By binding this temporarily to a large number, you can effectively prevent garbage collection during a part of the program. See also `gc-cons-percentage'.Vgc-cons-percentage Portion of the heap used for allocation. Garbage collection can happen automatically once this portion of the heap has been allocated since the last garbage collection. If this portion is smaller than `gc-cons-threshold', this is ignored.Vpure-bytes-used Number of bytes of shareable Lisp data allocated so far.Vcons-cells-consed Number of cons cells that have been consed so far.Vfloats-consed Number of floats that have been consed so far.Vvector-cells-consed Number of vector cells that have been consed so far.Vsymbols-consed Number of symbols that have been consed so far.Vstring-chars-consed Number of string characters that have been consed so far.Vmisc-objects-consed Number of miscellaneous objects that have been consed so far. These include markers and overlays, plus certain objects not visible to users.Vintervals-consed Number of intervals that have been consed so far.Vstrings-consed Number of strings that have been consed so far.Vpurify-flag Non-nil means loading Lisp code in order to dump an executable. This means that certain objects should be allocated in shared (pure) space. It can also be set to a hash-table, in which case this table is used to do hash-consing of the objects allocated to pure space.Vgarbage-collection-messages Non-nil means display messages at start and end of garbage collection.Vpost-gc-hook Hook run after garbage collection has finished.Vmemory-signal-data Precomputed `signal' argument for memory-full error.Vmemory-full Non-nil means Emacs cannot get much more Lisp memory.Vgc-elapsed Accumulated time elapsed in garbage collections. The time is in seconds as a floating point value.Vgcs-done Accumulated number of garbage collections done.Sdata.o Feq Return t if the two args are the same Lisp object. (fn OBJ1 OBJ2)Fnull Return t if OBJECT is nil, and return nil otherwise. (fn OBJECT)Ftype-of Return a symbol representing the type of OBJECT. The symbol returned names the object's basic type; for example, (type-of 1) returns `integer'. (fn OBJECT)Fconsp Return t if OBJECT is a cons cell. (fn OBJECT)Fatom Return t if OBJECT is not a cons cell. This includes nil. (fn OBJECT)Flistp Return t if OBJECT is a list, that is, a cons cell or nil. Otherwise, return nil. (fn OBJECT)Fnlistp Return t if OBJECT is not a list. Lists include nil. (fn OBJECT)Fsymbolp Return t if OBJECT is a symbol. (fn OBJECT)Fkeywordp Return t if OBJECT is a keyword. This means that it is a symbol with a print name beginning with `:' interned in the initial obarray. (fn OBJECT)Fvectorp Return t if OBJECT is a vector. (fn OBJECT)Frecordp Return t if OBJECT is a record. (fn OBJECT)Fstringp Return t if OBJECT is a string. (fn OBJECT)Fmultibyte-string-p Return t if OBJECT is a multibyte string. Return nil if OBJECT is either a unibyte string, or not a string. (fn OBJECT)Fchar-table-p Return t if OBJECT is a char-table. (fn OBJECT)Fvector-or-char-table-p Return t if OBJECT is a char-table or vector. (fn OBJECT)Fbool-vector-p Return t if OBJECT is a bool-vector. (fn OBJECT)Farrayp Return t if OBJECT is an array (string or vector). (fn OBJECT)Fsequencep Return t if OBJECT is a sequence (list or array). (fn OBJECT)Fbufferp Return t if OBJECT is an editor buffer. (fn OBJECT)Fmarkerp Return t if OBJECT is a marker (editor pointer). (fn OBJECT)Fuser-ptrp Return t if OBJECT is a module user pointer. (fn OBJECT)Fsubrp Return t if OBJECT is a built-in function. (fn OBJECT)Fbyte-code-function-p Return t if OBJECT is a byte-compiled function object. (fn OBJECT)Fmodule-function-p Return t if OBJECT is a function loaded from a dynamic module. (fn OBJECT)Fchar-or-string-p Return t if OBJECT is a character or a string. (fn OBJECT)Fintegerp Return t if OBJECT is an integer. (fn OBJECT)Finteger-or-marker-p Return t if OBJECT is an integer or a marker (editor pointer). (fn OBJECT)Fnatnump Return t if OBJECT is a nonnegative integer. (fn OBJECT)Fnumberp Return t if OBJECT is a number (floating point or integer). (fn OBJECT)Fnumber-or-marker-p Return t if OBJECT is a number or a marker. (fn OBJECT)Ffloatp Return t if OBJECT is a floating point number. (fn OBJECT)Fthreadp Return t if OBJECT is a thread. (fn OBJECT)Fmutexp Return t if OBJECT is a mutex. (fn OBJECT)Fcondition-variable-p Return t if OBJECT is a condition variable. (fn OBJECT)Fcar Return the car of LIST. If arg is nil, return nil. Error if arg is not nil and not a cons cell. See also `car-safe'. See Info node `(elisp)Cons Cells' for a discussion of related basic Lisp concepts such as car, cdr, cons cell and list. (fn LIST)Fcar-safe Return the car of OBJECT if it is a cons cell, or else nil. (fn OBJECT)Fcdr Return the cdr of LIST. If arg is nil, return nil. Error if arg is not nil and not a cons cell. See also `cdr-safe'. See Info node `(elisp)Cons Cells' for a discussion of related basic Lisp concepts such as cdr, car, cons cell and list. (fn LIST)Fcdr-safe Return the cdr of OBJECT if it is a cons cell, or else nil. (fn OBJECT)Fsetcar Set the car of CELL to be NEWCAR. Returns NEWCAR. (fn CELL NEWCAR)Fsetcdr Set the cdr of CELL to be NEWCDR. Returns NEWCDR. (fn CELL NEWCDR)Fboundp Return t if SYMBOL's value is not void. Note that if `lexical-binding' is in effect, this refers to the global value outside of any lexical scope. (fn SYMBOL)Ffboundp Return t if SYMBOL's function definition is not void. (fn SYMBOL)Fmakunbound Make SYMBOL's value be void. Return SYMBOL. (fn SYMBOL)Ffmakunbound Make SYMBOL's function definition be nil. Return SYMBOL. (fn SYMBOL)Fsymbol-function Return SYMBOL's function definition, or nil if that is void. (fn SYMBOL)Fsymbol-plist Return SYMBOL's property list. (fn SYMBOL)Fsymbol-name Return SYMBOL's name, a string. (fn SYMBOL)Ffset Set SYMBOL's function definition to DEFINITION, and return DEFINITION. (fn SYMBOL DEFINITION)Fdefalias Set SYMBOL's function definition to DEFINITION. Associates the function with the current load file, if any. The optional third argument DOCSTRING specifies the documentation string for SYMBOL; if it is omitted or nil, SYMBOL uses the documentation string determined by DEFINITION. Internally, this normally uses `fset', but if SYMBOL has a `defalias-fset-function' property, the associated value is used instead. The return value is undefined. (fn SYMBOL DEFINITION &optional DOCSTRING)Fsetplist Set SYMBOL's property list to NEWPLIST, and return NEWPLIST. (fn SYMBOL NEWPLIST)Fsubr-arity Return minimum and maximum number of args allowed for SUBR. SUBR must be a built-in function. The returned value is a pair (MIN . MAX). MIN is the minimum number of args. MAX is the maximum number or the symbol `many', for a function with `&rest' args, or `unevalled' for a special form. (fn SUBR)Fsubr-name Return name of subroutine SUBR. SUBR must be a built-in function. (fn SUBR)Finteractive-form Return the interactive form of CMD or nil if none. If CMD is not a command, the return value is nil. Value, if non-nil, is a list (interactive SPEC). (fn CMD)Findirect-variable Return the variable at the end of OBJECT's variable chain. If OBJECT is a symbol, follow its variable indirections (if any), and return the variable at the end of the chain of aliases. See Info node `(elisp)Variable Aliases'. If OBJECT is not a symbol, just return it. If there is a loop in the chain of aliases, signal a `cyclic-variable-indirection' error. (fn OBJECT)Fsymbol-value Return SYMBOL's value. Error if that is void. Note that if `lexical-binding' is in effect, this returns the global value outside of any lexical scope. (fn SYMBOL)Fset Set SYMBOL's value to NEWVAL, and return NEWVAL. (fn SYMBOL NEWVAL)Fadd-variable-watcher Cause WATCH-FUNCTION to be called when SYMBOL is set. It will be called with 4 arguments: (SYMBOL NEWVAL OPERATION WHERE). SYMBOL is the variable being changed. NEWVAL is the value it will be changed to. OPERATION is a symbol representing the kind of change, one of: `set', `let', `unlet', `makunbound', and `defvaralias'. WHERE is a buffer if the buffer-local value of the variable is being changed, nil otherwise. All writes to aliases of SYMBOL will call WATCH-FUNCTION too. (fn SYMBOL WATCH-FUNCTION)Fremove-variable-watcher Undo the effect of `add-variable-watcher'. Remove WATCH-FUNCTION from the list of functions to be called when SYMBOL (or its aliases) are set. (fn SYMBOL WATCH-FUNCTION)Fget-variable-watchers Return a list of SYMBOL's active watchers. (fn SYMBOL)Fdefault-boundp Return t if SYMBOL has a non-void default value. This is the value that is seen in buffers that do not have their own values for this variable. (fn SYMBOL)Fdefault-value Return SYMBOL's default value. This is the value that is seen in buffers that do not have their own values for this variable. The default value is meaningful for variables with local bindings in certain buffers. (fn SYMBOL)Fset-default Set SYMBOL's default value to VALUE. SYMBOL and VALUE are evaluated. The default value is seen in buffers that do not have their own values for this variable. (fn SYMBOL VALUE)Fsetq-default Set the default value of variable VAR to VALUE. VAR, the variable name, is literal (not evaluated); VALUE is an expression: it is evaluated and its value returned. The default value of a variable is seen in buffers that do not have their own values for the variable. More generally, you can use multiple variables and values, as in (setq-default VAR VALUE VAR VALUE...) This sets each VAR's default value to the corresponding VALUE. The VALUE for the Nth VAR can refer to the new default values of previous VARs. (fn [VAR VALUE]...)Fmake-variable-buffer-local Make VARIABLE become buffer-local whenever it is set. At any time, the value for the current buffer is in effect, unless the variable has never been set in this buffer, in which case the default value is in effect. Note that binding the variable with `let', or setting it while a `let'-style binding made in this buffer is in effect, does not make the variable buffer-local. Return VARIABLE. This globally affects all uses of this variable, so it belongs together with the variable declaration, rather than with its uses (if you just want to make a variable local to the current buffer for one particular use, use `make-local-variable'). Buffer-local bindings are normally cleared while setting up a new major mode, unless they have a `permanent-local' property. The function `default-value' gets the default value and `set-default' sets it. (fn VARIABLE)Fmake-local-variable Make VARIABLE have a separate value in the current buffer. Other buffers will continue to share a common default value. (The buffer-local value of VARIABLE starts out as the same value VARIABLE previously had. If VARIABLE was void, it remains void.) Return VARIABLE. If the variable is already arranged to become local when set, this function causes a local value to exist for this buffer, just as setting the variable would do. This function returns VARIABLE, and therefore (set (make-local-variable \='VARIABLE) VALUE-EXP) works. See also `make-variable-buffer-local'. Do not use `make-local-variable' to make a hook variable buffer-local. Instead, use `add-hook' and specify t for the LOCAL argument. (fn VARIABLE)Fkill-local-variable Make VARIABLE no longer have a separate value in the current buffer. From now on the default value will apply in this buffer. Return VARIABLE. (fn VARIABLE)Flocal-variable-p Non-nil if VARIABLE has a local binding in buffer BUFFER. BUFFER defaults to the current buffer. (fn VARIABLE &optional BUFFER)Flocal-variable-if-set-p Non-nil if VARIABLE is local in buffer BUFFER when set there. BUFFER defaults to the current buffer. More precisely, return non-nil if either VARIABLE already has a local value in BUFFER, or if VARIABLE is automatically buffer-local (see `make-variable-buffer-local'). (fn VARIABLE &optional BUFFER)Fvariable-binding-locus Return a value indicating where VARIABLE's current binding comes from. If the current binding is buffer-local, the value is the current buffer. If the current binding is global (the default), the value is nil. (fn VARIABLE)Fterminal-local-value Return the terminal-local value of SYMBOL on TERMINAL. If SYMBOL is not a terminal-local variable, then return its normal value, like `symbol-value'. TERMINAL may be a terminal object, a frame, or nil (meaning the selected frame's terminal device). (fn SYMBOL TERMINAL)Fset-terminal-local-value Set the terminal-local binding of SYMBOL on TERMINAL to VALUE. If VARIABLE is not a terminal-local variable, then set its normal binding, like `set'. TERMINAL may be a terminal object, a frame, or nil (meaning the selected frame's terminal device). (fn SYMBOL TERMINAL VALUE)Findirect-function Return the function at the end of OBJECT's function chain. If OBJECT is not a symbol, just return it. Otherwise, follow all function indirections to find the final function binding and return it. Signal a cyclic-function-indirection error if there is a loop in the function chain of symbols. (fn OBJECT &optional NOERROR)Faref Return the element of ARRAY at index IDX. ARRAY may be a vector, a string, a char-table, a bool-vector, a record, or a byte-code object. IDX starts at 0. (fn ARRAY IDX)Faset Store into the element of ARRAY at index IDX the value NEWELT. Return NEWELT. ARRAY may be a vector, a string, a char-table or a bool-vector. IDX starts at 0. (fn ARRAY IDX NEWELT)F= Return t if args, all numbers or markers, are equal. (fn NUMBER-OR-MARKER &rest NUMBERS-OR-MARKERS)F< Return t if each arg (a number or marker), is less than the next arg. (fn NUMBER-OR-MARKER &rest NUMBERS-OR-MARKERS)F> Return t if each arg (a number or marker) is greater than the next arg. (fn NUMBER-OR-MARKER &rest NUMBERS-OR-MARKERS)F<= Return t if each arg (a number or marker) is less than or equal to the next. (fn NUMBER-OR-MARKER &rest NUMBERS-OR-MARKERS)F>= Return t if each arg (a number or marker) is greater than or equal to the next. (fn NUMBER-OR-MARKER &rest NUMBERS-OR-MARKERS)F/= Return t if first arg is not equal to second arg. Both must be numbers or markers. (fn NUM1 NUM2)Fnumber-to-string Return the decimal representation of NUMBER as a string. Uses a minus sign if negative. NUMBER may be an integer or a floating point number. (fn NUMBER)Fstring-to-number Parse STRING as a decimal number and return the number. Ignore leading spaces and tabs, and all trailing chars. Return 0 if STRING cannot be parsed as an integer or floating point number. If BASE, interpret STRING as a number in that base. If BASE isn't present, base 10 is used. BASE must be between 2 and 16 (inclusive). If the base used is not 10, STRING is always parsed as an integer. (fn STRING &optional BASE)F+ Return sum of any number of arguments, which are numbers or markers. (fn &rest NUMBERS-OR-MARKERS)F- Negate number or subtract numbers or markers and return the result. With one arg, negates it. With more than one arg, subtracts all but the first from the first. (fn &optional NUMBER-OR-MARKER &rest MORE-NUMBERS-OR-MARKERS)F* Return product of any number of arguments, which are numbers or markers. (fn &rest NUMBERS-OR-MARKERS)F/ Divide number by divisors and return the result. With two or more arguments, return first argument divided by the rest. With one argument, return 1 divided by the argument. The arguments must be numbers or markers. (fn NUMBER &rest DIVISORS)F% Return remainder of X divided by Y. Both must be integers or markers. (fn X Y)Fmod Return X modulo Y. The result falls between zero (inclusive) and Y (exclusive). Both X and Y must be numbers or markers. (fn X Y)Fmax Return largest of all the arguments (which must be numbers or markers). The value is always a number; markers are converted to numbers. (fn NUMBER-OR-MARKER &rest NUMBERS-OR-MARKERS)Fmin Return smallest of all the arguments (which must be numbers or markers). The value is always a number; markers are converted to numbers. (fn NUMBER-OR-MARKER &rest NUMBERS-OR-MARKERS)Flogand Return bitwise-and of all the arguments. Arguments may be integers, or markers converted to integers. (fn &rest INTS-OR-MARKERS)Flogior Return bitwise-or of all the arguments. Arguments may be integers, or markers converted to integers. (fn &rest INTS-OR-MARKERS)Flogxor Return bitwise-exclusive-or of all the arguments. Arguments may be integers, or markers converted to integers. (fn &rest INTS-OR-MARKERS)Fash Return VALUE with its bits shifted left by COUNT. If COUNT is negative, shifting is actually to the right. In this case, the sign bit is duplicated. (fn VALUE COUNT)Flsh Return VALUE with its bits shifted left by COUNT. If COUNT is negative, shifting is actually to the right. In this case, zeros are shifted in on the left. (fn VALUE COUNT)F1+ Return NUMBER plus one. NUMBER may be a number or a marker. Markers are converted to integers. (fn NUMBER)F1- Return NUMBER minus one. NUMBER may be a number or a marker. Markers are converted to integers. (fn NUMBER)Flognot Return the bitwise complement of NUMBER. NUMBER must be an integer. (fn NUMBER)Fbyteorder Return the byteorder for the machine. Returns 66 (ASCII uppercase B) for big endian machines or 108 (ASCII lowercase l) for small endian machines. (fn)Fbool-vector-exclusive-or Return A ^ B, bitwise exclusive or. If optional third argument C is given, store result into C. A, B, and C must be bool vectors of the same length. Return the destination vector if it changed or nil otherwise. (fn A B &optional C)Fbool-vector-union Return A | B, bitwise or. If optional third argument C is given, store result into C. A, B, and C must be bool vectors of the same length. Return the destination vector if it changed or nil otherwise. (fn A B &optional C)Fbool-vector-intersection Return A & B, bitwise and. If optional third argument C is given, store result into C. A, B, and C must be bool vectors of the same length. Return the destination vector if it changed or nil otherwise. (fn A B &optional C)Fbool-vector-set-difference Return A &~ B, set difference. If optional third argument C is given, store result into C. A, B, and C must be bool vectors of the same length. Return the destination vector if it changed or nil otherwise. (fn A B &optional C)Fbool-vector-subsetp Return t if every t value in A is also t in B, nil otherwise. A and B must be bool vectors of the same length. (fn A B)Fbool-vector-not Compute ~A, set complement. If optional second argument B is given, store result into B. A and B must be bool vectors of the same length. Return the destination vector. (fn A &optional B)Fbool-vector-count-population Count how many elements in A are t. A is a bool vector. To count A's nil elements, subtract the return value from A's length. (fn A)Fbool-vector-count-consecutive Count how many consecutive elements in A equal B starting at I. A is a bool vector, B is t or nil, and I is an index into A. (fn A B I)Vmost-positive-fixnum The largest value that is representable in a Lisp integer. This variable cannot be set; trying to do so will signal an error.Vmost-negative-fixnum The smallest value that is representable in a Lisp integer. This variable cannot be set; trying to do so will signal an error.Sdoc.o Fdocumentation Return the documentation string of FUNCTION. Unless a non-nil second argument RAW is given, the string is passed through `substitute-command-keys'. (fn FUNCTION &optional RAW)Fdocumentation-property Return the documentation string that is SYMBOL's PROP property. Third argument RAW omitted or nil means pass the result through `substitute-command-keys' if it is a string. This differs from `get' in that it can refer to strings stored in the `etc/DOC' file; and that it evaluates documentation properties that aren't strings. (fn SYMBOL PROP &optional RAW)FSnarf-documentation Used during Emacs initialization to scan the `etc/DOC...' file. This searches the `etc/DOC...' file for doc strings and records them in function and variable definitions. The function takes one argument, FILENAME, a string; it specifies the file name (without a directory) of the DOC file. That file is found in `../etc' now; later, when the dumped Emacs is run, the same file name is found in the `doc-directory'. (fn FILENAME)Fsubstitute-command-keys Substitute key descriptions for command names in STRING. Each substring of the form \=\[COMMAND] is replaced by either a keystroke sequence that invokes COMMAND, or "M-x COMMAND" if COMMAND is not on any keys. Each substring of the form \=\{MAPVAR} is replaced by a summary of the value of MAPVAR as a keymap. This summary is similar to the one produced by `describe-bindings'. The summary ends in two newlines (used by the helper function `help-make-xrefs' to find the end of the summary). Each substring of the form \=\<MAPVAR> specifies the use of MAPVAR as the keymap for future \=\[COMMAND] substrings. Each grave accent \=` is replaced by left quote, and each apostrophe \=' is replaced by right quote. Left and right quote characters are specified by `text-quoting-style'. \=\= quotes the following character and is discarded; thus, \=\=\=\= puts \=\= into the output, \=\=\=\[ puts \=\[ into the output, and \=\=\=` puts \=` into the output. Return the original STRING if no substitutions are made. Otherwise, return a new string. (fn STRING)Vinternal-doc-file-name Name of file containing documentation strings of built-in symbols.Vbuild-files A list of files used to build this Emacs binary.Vtext-quoting-style Style to use for single quotes in help and messages. Its value should be a symbol. It works by substituting certain single quotes for grave accent and apostrophe. This is done in help output (but not for display of Info manuals) and in functions like `message' and `format-message'. It is not done in `format'. `curve' means quote with curved single quotes ‘like this’. `straight' means quote with straight apostrophes \='like this\='. `grave' means quote with grave accent and apostrophe \=`like this\='; i.e., do not alter quote marks. The default value nil acts like `curve' if curved single quotes are displayable, and like `grave' otherwise.Vinternal--text-quoting-flag If nil, a nil `text-quoting-style' is treated as `grave'.Seditfns.o Fchar-to-string Convert arg CHAR to a string containing that character. (fn CHAR)Fbyte-to-string Convert arg BYTE to a unibyte string containing that byte. (fn BYTE)Fstring-to-char Return the first character in STRING. (fn STRING)Fpoint Return value of point, as an integer. Beginning of buffer is position (point-min). (fn)Fpoint-marker Return value of point, as a marker object. (fn)Fgoto-char Set point to POSITION, a number or marker. Beginning of buffer is position (point-min), end is (point-max). The return value is POSITION. (fn POSITION)Fregion-beginning Return the integer value of point or mark, whichever is smaller. (fn)Fregion-end Return the integer value of point or mark, whichever is larger. (fn)Fmark-marker Return this buffer's mark, as a marker object. Watch out! Moving this marker changes the mark position. If you set the marker not to point anywhere, the buffer will have no mark. (fn)Fget-pos-property Return the value of POSITION's property PROP, in OBJECT. Almost identical to `get-char-property' except for the following difference: Whereas `get-char-property' returns the property of the char at (i.e. right after) POSITION, this pays attention to properties's stickiness and overlays's advancement settings, in order to find the property of POSITION itself, i.e. the property that a char would inherit if it were inserted at POSITION. (fn POSITION PROP &optional OBJECT)Fdelete-field Delete the field surrounding POS. A field is a region of text with the same `field' property. If POS is nil, the value of point is used for POS. (fn &optional POS)Ffield-string Return the contents of the field surrounding POS as a string. A field is a region of text with the same `field' property. If POS is nil, the value of point is used for POS. (fn &optional POS)Ffield-string-no-properties Return the contents of the field around POS, without text properties. A field is a region of text with the same `field' property. If POS is nil, the value of point is used for POS. (fn &optional POS)Ffield-beginning Return the beginning of the field surrounding POS. A field is a region of text with the same `field' property. If POS is nil, the value of point is used for POS. If ESCAPE-FROM-EDGE is non-nil and POS is at the beginning of its field, then the beginning of the *previous* field is returned. If LIMIT is non-nil, it is a buffer position; if the beginning of the field is before LIMIT, then LIMIT will be returned instead. (fn &optional POS ESCAPE-FROM-EDGE LIMIT)Ffield-end Return the end of the field surrounding POS. A field is a region of text with the same `field' property. If POS is nil, the value of point is used for POS. If ESCAPE-FROM-EDGE is non-nil and POS is at the end of its field, then the end of the *following* field is returned. If LIMIT is non-nil, it is a buffer position; if the end of the field is after LIMIT, then LIMIT will be returned instead. (fn &optional POS ESCAPE-FROM-EDGE LIMIT)Fconstrain-to-field Return the position closest to NEW-POS that is in the same field as OLD-POS. A field is a region of text with the same `field' property. If NEW-POS is nil, then use the current point instead, and move point to the resulting constrained position, in addition to returning that position. If OLD-POS is at the boundary of two fields, then the allowable positions for NEW-POS depends on the value of the optional argument ESCAPE-FROM-EDGE: If ESCAPE-FROM-EDGE is nil, then NEW-POS is constrained to the field that has the same `field' char-property as any new characters inserted at OLD-POS, whereas if ESCAPE-FROM-EDGE is non-nil, NEW-POS is constrained to the union of the two adjacent fields. Additionally, if two fields are separated by another field with the special value `boundary', then any point within this special field is also considered to be `on the boundary'. If the optional argument ONLY-IN-LINE is non-nil and constraining NEW-POS would move it to a different line, NEW-POS is returned unconstrained. This is useful for commands that move by line, like \[next-line] or \[beginning-of-line], which should generally respect field boundaries only in the case where they can still move to the right line. If the optional argument INHIBIT-CAPTURE-PROPERTY is non-nil, and OLD-POS has a non-nil property of that name, then any field boundaries are ignored. Field boundaries are not noticed if `inhibit-field-text-motion' is non-nil. (fn NEW-POS OLD-POS &optional ESCAPE-FROM-EDGE ONLY-IN-LINE INHIBIT-CAPTURE-PROPERTY)Fline-beginning-position Return the character position of the first character on the current line. With optional argument N, scan forward N - 1 lines first. If the scan reaches the end of the buffer, return that position. This function ignores text display directionality; it returns the position of the first character in logical order, i.e. the smallest character position on the line. This function constrains the returned position to the current field unless that position would be on a different line than the original, unconstrained result. If N is nil or 1, and a front-sticky field starts at point, the scan stops as soon as it starts. To ignore field boundaries, bind `inhibit-field-text-motion' to t. This function does not move point. (fn &optional N)Fline-end-position Return the character position of the last character on the current line. With argument N not nil or 1, move forward N - 1 lines first. If scan reaches end of buffer, return that position. This function ignores text display directionality; it returns the position of the last character in logical order, i.e. the largest character position on the line. This function constrains the returned position to the current field unless that would be on a different line than the original, unconstrained result. If N is nil or 1, and a rear-sticky field ends at point, the scan stops as soon as it starts. To ignore field boundaries bind `inhibit-field-text-motion' to t. This function does not move point. (fn &optional N)Fsave-excursion Save point, and current buffer; execute BODY; restore those things. Executes BODY just like `progn'. The values of point and the current buffer are restored even in case of abnormal exit (throw or error). If you only want to save the current buffer but not point, then just use `save-current-buffer', or even `with-current-buffer'. Before Emacs 25.1, `save-excursion' used to save the mark state. To save the mark state as well as point and the current buffer, use `save-mark-and-excursion'. (fn &rest BODY)Fsave-current-buffer Record which buffer is current; execute BODY; make that buffer current. BODY is executed just like `progn'. (fn &rest BODY)Fbuffer-size Return the number of characters in the current buffer. If BUFFER is not nil, return the number of characters in that buffer instead. This does not take narrowing into account; to count the number of characters in the accessible portion of the current buffer, use `(- (point-max) (point-min))', and to count the number of characters in some other BUFFER, use `(with-current-buffer BUFFER (- (point-max) (point-min)))'. (fn &optional BUFFER)Fpoint-min Return the minimum permissible value of point in the current buffer. This is 1, unless narrowing (a buffer restriction) is in effect. (fn)Fpoint-min-marker Return a marker to the minimum permissible value of point in this buffer. This is the beginning, unless narrowing (a buffer restriction) is in effect. (fn)Fpoint-max Return the maximum permissible value of point in the current buffer. This is (1+ (buffer-size)), unless narrowing (a buffer restriction) is in effect, in which case it is less. (fn)Fpoint-max-marker Return a marker to the maximum permissible value of point in this buffer. This is (1+ (buffer-size)), unless narrowing (a buffer restriction) is in effect, in which case it is less. (fn)Fgap-position Return the position of the gap, in the current buffer. See also `gap-size'. (fn)Fgap-size Return the size of the current buffer's gap. See also `gap-position'. (fn)Fposition-bytes Return the byte position for character position POSITION. If POSITION is out of range, the value is nil. (fn POSITION)Fbyte-to-position Return the character position for byte position BYTEPOS. If BYTEPOS is out of range, the value is nil. (fn BYTEPOS)Ffollowing-char Return the character following point, as a number. At the end of the buffer or accessible region, return 0. (fn)Fpreceding-char Return the character preceding point, as a number. At the beginning of the buffer or accessible region, return 0. (fn)Fbobp Return t if point is at the beginning of the buffer. If the buffer is narrowed, this means the beginning of the narrowed part. (fn)Feobp Return t if point is at the end of the buffer. If the buffer is narrowed, this means the end of the narrowed part. (fn)Fbolp Return t if point is at the beginning of a line. (fn)Feolp Return t if point is at the end of a line. `End of a line' includes point being at the end of the buffer. (fn)Fchar-after Return character in current buffer at position POS. POS is an integer or a marker and defaults to point. If POS is out of range, the value is nil. (fn &optional POS)Fchar-before Return character in current buffer preceding position POS. POS is an integer or a marker and defaults to point. If POS is out of range, the value is nil. (fn &optional POS)Fuser-login-name Return the name under which the user logged in, as a string. This is based on the effective uid, not the real uid. Also, if the environment variables LOGNAME or USER are set, that determines the value of this function. If optional argument UID is an integer or a float, return the login name of the user with that uid, or nil if there is no such user. (fn &optional UID)Fuser-real-login-name Return the name of the user's real uid, as a string. This ignores the environment variables LOGNAME and USER, so it differs from `user-login-name' when running under `su'. (fn)Fuser-uid Return the effective uid of Emacs. Value is an integer or a float, depending on the value. (fn)Fuser-real-uid Return the real uid of Emacs. Value is an integer or a float, depending on the value. (fn)Fgroup-gid Return the effective gid of Emacs. Value is an integer or a float, depending on the value. (fn)Fgroup-real-gid Return the real gid of Emacs. Value is an integer or a float, depending on the value. (fn)Fuser-full-name Return the full name of the user logged in, as a string. If the full name corresponding to Emacs's userid is not known, return "unknown". If optional argument UID is an integer or float, return the full name of the user with that uid, or nil if there is no such user. If UID is a string, return the full name of the user with that login name, or nil if there is no such user. (fn &optional UID)Fsystem-name Return the host name of the machine you are running on, as a string. (fn)Femacs-pid Return the process ID of Emacs, as a number. (fn)Fcurrent-time Return the current time, as the number of seconds since 1970-01-01 00:00:00. The time is returned as a list of integers (HIGH LOW USEC PSEC). HIGH has the most significant bits of the seconds, while LOW has the least significant 16 bits. USEC and PSEC are the microsecond and picosecond counts. (fn)Ftime-add Return the sum of two time values A and B, as a time value. A nil value for either argument stands for the current time. See `current-time-string' for the various forms of a time value. (fn A B)Ftime-subtract Return the difference between two time values A and B, as a time value. Use `float-time' to convert the difference into elapsed seconds. A nil value for either argument stands for the current time. See `current-time-string' for the various forms of a time value. (fn A B)Ftime-less-p Return non-nil if time value T1 is earlier than time value T2. A nil value for either argument stands for the current time. See `current-time-string' for the various forms of a time value. (fn T1 T2)Fget-internal-run-time Return the current run time used by Emacs. The time is returned as a list (HIGH LOW USEC PSEC), using the same style as (current-time). On systems that can't determine the run time, `get-internal-run-time' does the same thing as `current-time'. (fn)Ffloat-time Return the current time, as a float number of seconds since the epoch. If SPECIFIED-TIME is given, it is the time to convert to float instead of the current time. The argument should have the form (HIGH LOW) or (HIGH LOW USEC) or (HIGH LOW USEC PSEC). Thus, you can use times from `current-time' and from `file-attributes'. SPECIFIED-TIME can also have the form (HIGH . LOW), but this is considered obsolete. WARNING: Since the result is floating point, it may not be exact. If precise time stamps are required, use either `current-time', or (if you need time as a string) `format-time-string'. (fn &optional SPECIFIED-TIME)Fformat-time-string Use FORMAT-STRING to format the time TIME, or now if omitted or nil. TIME is specified as (HIGH LOW USEC PSEC), as returned by `current-time' or `file-attributes'. It can also be a single integer number of seconds since the epoch. The obsolete form (HIGH . LOW) is also still accepted. The optional ZONE is omitted or nil for Emacs local time, t for Universal Time, `wall' for system wall clock time, or a string as in the TZ environment variable. It can also be a list (as from `current-time-zone') or an integer (as from `decode-time') applied without consideration for daylight saving time. The value is a copy of FORMAT-STRING, but with certain constructs replaced by text that describes the specified date and time in TIME: %Y is the year, %y within the century, %C the century. %G is the year corresponding to the ISO week, %g within the century. %m is the numeric month. %b and %h are the locale's abbreviated month name, %B the full name. (%h is not supported on MS-Windows.) %d is the day of the month, zero-padded, %e is blank-padded. %u is the numeric day of week from 1 (Monday) to 7, %w from 0 (Sunday) to 6. %a is the locale's abbreviated name of the day of week, %A the full name. %U is the week number starting on Sunday, %W starting on Monday, %V according to ISO 8601. %j is the day of the year. %H is the hour on a 24-hour clock, %I is on a 12-hour clock, %k is like %H only blank-padded, %l is like %I blank-padded. %p is the locale's equivalent of either AM or PM. %q is the calendar quarter (1–4). %M is the minute (00-59). %S is the second (00-59; 00-60 on platforms with leap seconds) %s is the number of seconds since 1970-01-01 00:00:00 +0000. %N is the nanosecond, %6N the microsecond, %3N the millisecond, etc. %Z is the time zone abbreviation, %z is the numeric form. %c is the locale's date and time format. %x is the locale's "preferred" date format. %D is like "%m/%d/%y". %F is the ISO 8601 date format (like "%Y-%m-%d"). %R is like "%H:%M", %T is like "%H:%M:%S", %r is like "%I:%M:%S %p". %X is the locale's "preferred" time format. Finally, %n is a newline, %t is a tab, %% is a literal %, and unrecognized %-sequences stand for themselves. Certain flags and modifiers are available with some format controls. The flags are `_', `-', `^' and `#'. For certain characters X, %_X is like %X, but padded with blanks; %-X is like %X, but without padding. %^X is like %X, but with all textual characters up-cased; %#X is like %X, but with letter-case of all textual characters reversed. %NX (where N stands for an integer) is like %X, but takes up at least N (a number) positions. The modifiers are `E' and `O'. For certain characters X, %EX is a locale's alternative version of %X; %OX is like %X, but uses the locale's number symbols. For example, to produce full ISO 8601 format, use "%FT%T%z". (fn FORMAT-STRING &optional TIME ZONE)Fdecode-time Decode a time value as (SEC MINUTE HOUR DAY MONTH YEAR DOW DST UTCOFF). The optional TIME should be a list of (HIGH LOW . IGNORED), as from `current-time' and `file-attributes', or nil to use the current time. It can also be a single integer number of seconds since the epoch. The obsolete form (HIGH . LOW) is also still accepted. The optional ZONE is omitted or nil for Emacs local time, t for Universal Time, `wall' for system wall clock time, or a string as in the TZ environment variable. It can also be a list (as from `current-time-zone') or an integer (the UTC offset in seconds) applied without consideration for daylight saving time. The list has the following nine members: SEC is an integer between 0 and 60; SEC is 60 for a leap second, which only some operating systems support. MINUTE is an integer between 0 and 59. HOUR is an integer between 0 and 23. DAY is an integer between 1 and 31. MONTH is an integer between 1 and 12. YEAR is an integer indicating the four-digit year. DOW is the day of week, an integer between 0 and 6, where 0 is Sunday. DST is t if daylight saving time is in effect, otherwise nil. UTCOFF is an integer indicating the UTC offset in seconds, i.e., the number of seconds east of Greenwich. (Note that Common Lisp has different meanings for DOW and UTCOFF.) (fn &optional TIME ZONE)Fencode-time Convert SECOND, MINUTE, HOUR, DAY, MONTH, YEAR and ZONE to internal time. This is the reverse operation of `decode-time', which see. The optional ZONE is omitted or nil for Emacs local time, t for Universal Time, `wall' for system wall clock time, or a string as in the TZ environment variable. It can also be a list (as from `current-time-zone') or an integer (as from `decode-time') applied without consideration for daylight saving time. You can pass more than 7 arguments; then the first six arguments are used as SECOND through YEAR, and the *last* argument is used as ZONE. The intervening arguments are ignored. This feature lets (apply \='encode-time (decode-time ...)) work. Out-of-range values for SECOND, MINUTE, HOUR, DAY, or MONTH are allowed; for example, a DAY of 0 means the day preceding the given month. Year numbers less than 100 are treated just like other year numbers. If you want them to stand for years in this century, you must do that yourself. Years before 1970 are not guaranteed to work. On some systems, year values as low as 1901 do work. (fn SECOND MINUTE HOUR DAY MONTH YEAR &optional ZONE)Fcurrent-time-string Return the current local time, as a human-readable string. Programs can use this function to decode a time, since the number of columns in each field is fixed if the year is in the range 1000-9999. The format is `Sun Sep 16 01:03:52 1973'. However, see also the functions `decode-time' and `format-time-string' which provide a much more powerful and general facility. If SPECIFIED-TIME is given, it is a time to format instead of the current time. The argument should have the form (HIGH LOW . IGNORED). Thus, you can use times obtained from `current-time' and from `file-attributes'. SPECIFIED-TIME can also be a single integer number of seconds since the epoch. The obsolete form (HIGH . LOW) is also still accepted. The optional ZONE is omitted or nil for Emacs local time, t for Universal Time, `wall' for system wall clock time, or a string as in the TZ environment variable. It can also be a list (as from `current-time-zone') or an integer (as from `decode-time') applied without consideration for daylight saving time. (fn &optional SPECIFIED-TIME ZONE)Fcurrent-time-zone Return the offset and name for the local time zone. This returns a list of the form (OFFSET NAME). OFFSET is an integer number of seconds ahead of UTC (east of Greenwich). A negative value means west of Greenwich. NAME is a string giving the name of the time zone. If SPECIFIED-TIME is given, the time zone offset is determined from it instead of using the current time. The argument should have the form (HIGH LOW . IGNORED). Thus, you can use times obtained from `current-time' and from `file-attributes'. SPECIFIED-TIME can also be a single integer number of seconds since the epoch. The obsolete form (HIGH . LOW) is also still accepted. The optional ZONE is omitted or nil for Emacs local time, t for Universal Time, `wall' for system wall clock time, or a string as in the TZ environment variable. It can also be a list (as from `current-time-zone') or an integer (as from `decode-time') applied without consideration for daylight saving time. Some operating systems cannot provide all this information to Emacs; in this case, `current-time-zone' returns a list containing nil for the data it can't find. (fn &optional SPECIFIED-TIME ZONE)Fset-time-zone-rule Set the Emacs local time zone using TZ, a string specifying a time zone rule. If TZ is nil or `wall', use system wall clock time; this differs from the usual Emacs convention where nil means current local time. If TZ is t, use Universal Time. If TZ is a list (as from `current-time-zone') or an integer (as from `decode-time'), use the specified time zone without consideration for daylight saving time. Instead of calling this function, you typically want something else. To temporarily use a different time zone rule for just one invocation of `decode-time', `encode-time', or `format-time-string', pass the function a ZONE argument. To change local time consistently throughout Emacs, call (setenv "TZ" TZ): this changes both the environment of the Emacs process and the variable `process-environment', whereas `set-time-zone-rule' affects only the former. (fn TZ)Finsert Insert the arguments, either strings or characters, at point. Point and after-insertion markers move forward to end up after the inserted text. Any other markers at the point of insertion remain before the text. If the current buffer is multibyte, unibyte strings are converted to multibyte for insertion (see `string-make-multibyte'). If the current buffer is unibyte, multibyte strings are converted to unibyte for insertion (see `string-make-unibyte'). When operating on binary data, it may be necessary to preserve the original bytes of a unibyte string when inserting it into a multibyte buffer; to accomplish this, apply `string-as-multibyte' to the string and insert the result. (fn &rest ARGS)Finsert-and-inherit Insert the arguments at point, inheriting properties from adjoining text. Point and after-insertion markers move forward to end up after the inserted text. Any other markers at the point of insertion remain before the text. If the current buffer is multibyte, unibyte strings are converted to multibyte for insertion (see `unibyte-char-to-multibyte'). If the current buffer is unibyte, multibyte strings are converted to unibyte for insertion. (fn &rest ARGS)Finsert-before-markers Insert strings or characters at point, relocating markers after the text. Point and markers move forward to end up after the inserted text. If the current buffer is multibyte, unibyte strings are converted to multibyte for insertion (see `unibyte-char-to-multibyte'). If the current buffer is unibyte, multibyte strings are converted to unibyte for insertion. If an overlay begins at the insertion point, the inserted text falls outside the overlay; if a nonempty overlay ends at the insertion point, the inserted text falls inside that overlay. (fn &rest ARGS)Finsert-before-markers-and-inherit Insert text at point, relocating markers and inheriting properties. Point and markers move forward to end up after the inserted text. If the current buffer is multibyte, unibyte strings are converted to multibyte for insertion (see `unibyte-char-to-multibyte'). If the current buffer is unibyte, multibyte strings are converted to unibyte for insertion. (fn &rest ARGS)Finsert-char Insert COUNT copies of CHARACTER. Interactively, prompt for CHARACTER. You can specify CHARACTER in one of these ways: - As its Unicode character name, e.g. "LATIN SMALL LETTER A". Completion is available; if you type a substring of the name preceded by an asterisk `*', Emacs shows all names which include that substring, not necessarily at the beginning of the name. - As a hexadecimal code point, e.g. 263A. Note that code points in Emacs are equivalent to Unicode up to 10FFFF (which is the limit of the Unicode code space). - As a code point with a radix specified with #, e.g. #o21430 (octal), #x2318 (hex), or #10r8984 (decimal). If called interactively, COUNT is given by the prefix argument. If omitted or nil, it defaults to 1. Inserting the character(s) relocates point and before-insertion markers in the same ways as the function `insert'. The optional third argument INHERIT, if non-nil, says to inherit text properties from adjoining text, if those properties are sticky. If called interactively, INHERIT is t. (fn CHARACTER &optional COUNT INHERIT)Finsert-byte Insert COUNT (second arg) copies of BYTE (first arg). Both arguments are required. BYTE is a number of the range 0..255. If BYTE is 128..255 and the current buffer is multibyte, the corresponding eight-bit character is inserted. Point, and before-insertion markers, are relocated as in the function `insert'. The optional third arg INHERIT, if non-nil, says to inherit text properties from adjoining text, if those properties are sticky. (fn BYTE COUNT &optional INHERIT)Fbuffer-substring Return the contents of part of the current buffer as a string. The two arguments START and END are character positions; they can be in either order. The string returned is multibyte if the buffer is multibyte. This function copies the text properties of that part of the buffer into the result string; if you don't want the text properties, use `buffer-substring-no-properties' instead. (fn START END)Fbuffer-substring-no-properties Return the characters of part of the buffer, without the text properties. The two arguments START and END are character positions; they can be in either order. (fn START END)Fbuffer-string Return the contents of the current buffer as a string. If narrowing is in effect, this function returns only the visible part of the buffer. (fn)Finsert-buffer-substring Insert before point a substring of the contents of BUFFER. BUFFER may be a buffer or a buffer name. Arguments START and END are character positions specifying the substring. They default to the values of (point-min) and (point-max) in BUFFER. Point and before-insertion markers move forward to end up after the inserted text. Any other markers at the point of insertion remain before the text. If the current buffer is multibyte and BUFFER is unibyte, or vice versa, strings are converted from unibyte to multibyte or vice versa using `string-make-multibyte' or `string-make-unibyte', which see. (fn BUFFER &optional START END)Fcompare-buffer-substrings Compare two substrings of two buffers; return result as number. Return -N if first string is less after N-1 chars, +N if first string is greater after N-1 chars, or 0 if strings match. The first substring is in BUFFER1 from START1 to END1 and the second is in BUFFER2 from START2 to END2. All arguments may be nil. If BUFFER1 or BUFFER2 is nil, the current buffer is used. If START1 or START2 is nil, the value of `point-min' in the respective buffers is used. If END1 or END2 is nil, the value of `point-max' in the respective buffers is used. The value of `case-fold-search' in the current buffer determines whether case is significant or ignored. (fn BUFFER1 START1 END1 BUFFER2 START2 END2)Freplace-buffer-contents Replace accessible portion of current buffer with that of SOURCE. SOURCE can be a buffer or a string that names a buffer. Interactively, prompt for SOURCE. As far as possible the replacement is non-destructive, i.e. existing buffer contents, markers, properties, and overlays in the current buffer stay intact. Warning: this function can be slow if there's a large number of small differences between the two buffers. (fn SOURCE)Fsubst-char-in-region From START to END, replace FROMCHAR with TOCHAR each time it occurs. If optional arg NOUNDO is non-nil, don't record this change for undo and don't mark the buffer as really changed. Both characters must have the same length of multi-byte form. (fn START END FROMCHAR TOCHAR &optional NOUNDO)Ftranslate-region-internal Internal use only. From START to END, translate characters according to TABLE. TABLE is a string or a char-table; the Nth character in it is the mapping for the character with code N. It returns the number of characters changed. (fn START END TABLE)Fdelete-region Delete the text between START and END. If called interactively, delete the region between point and mark. This command deletes buffer text without modifying the kill ring. (fn START END)Fdelete-and-extract-region Delete the text between START and END and return it. (fn START END)Fwiden Remove restrictions (narrowing) from current buffer. This allows the buffer's full text to be seen and edited. (fn)Fnarrow-to-region Restrict editing in this buffer to the current region. The rest of the text becomes temporarily invisible and untouchable but is not deleted; if you save the buffer in a file, the invisible text is included in the file. \[widen] makes all visible again. See also `save-restriction'. When calling from Lisp, pass two arguments START and END: positions (integers or markers) bounding the text that should remain visible. (fn START END)Fsave-restriction Execute BODY, saving and restoring current buffer's restrictions. The buffer's restrictions make parts of the beginning and end invisible. (They are set up with `narrow-to-region' and eliminated with `widen'.) This special form, `save-restriction', saves the current buffer's restrictions when it is entered, and restores them when it is exited. So any `narrow-to-region' within BODY lasts only until the end of the form. The old restrictions settings are restored even in case of abnormal exit (throw or error). The value returned is the value of the last form in BODY. Note: if you are using both `save-excursion' and `save-restriction', use `save-excursion' outermost: (save-excursion (save-restriction ...)) (fn &rest BODY)Fmessage Display a message at the bottom of the screen. The message also goes into the `*Messages*' buffer, if `message-log-max' is non-nil. (In keyboard macros, that's all it does.) Return the message. In batch mode, the message is printed to the standard error stream, followed by a newline. The first argument is a format control string, and the rest are data to be formatted under control of the string. Percent sign (%), grave accent (\=`) and apostrophe (\=') are special in the format; see `format-message' for details. To display STRING without special treatment, use (message "%s" STRING). If the first argument is nil or the empty string, the function clears any existing message; this lets the minibuffer contents show. See also `current-message'. (fn FORMAT-STRING &rest ARGS)Fmessage-box Display a message, in a dialog box if possible. If a dialog box is not available, use the echo area. The first argument is a format control string, and the rest are data to be formatted under control of the string. See `format-message' for details. If the first argument is nil or the empty string, clear any existing message; let the minibuffer contents show. (fn FORMAT-STRING &rest ARGS)Fmessage-or-box Display a message in a dialog box or in the echo area. If this command was invoked with the mouse, use a dialog box if `use-dialog-box' is non-nil. Otherwise, use the echo area. The first argument is a format control string, and the rest are data to be formatted under control of the string. See `format-message' for details. If the first argument is nil or the empty string, clear any existing message; let the minibuffer contents show. (fn FORMAT-STRING &rest ARGS)Fcurrent-message Return the string currently displayed in the echo area, or nil if none. (fn)Fpropertize Return a copy of STRING with text properties added. First argument is the string to copy. Remaining arguments form a sequence of PROPERTY VALUE pairs for text properties to add to the result. (fn STRING &rest PROPERTIES)Fformat Format a string out of a format-string and arguments. The first argument is a format control string. The other arguments are substituted into it to make the result, a string. The format control string may contain %-sequences meaning to substitute the next available argument, or the argument explicitly specified: %s means print a string argument. Actually, prints any object, with `princ'. %d means print as signed number in decimal. %o means print as unsigned number in octal. %x means print as unsigned number in hex. %X is like %x, but uses upper case. %e means print a number in exponential notation. %f means print a number in decimal-point notation. %g means print a number in exponential notation if the exponent would be less than -4 or greater than or equal to the precision (default: 6); otherwise it prints in decimal-point notation. %c means print a number as a single character. %S means print any object as an s-expression (using `prin1'). The argument used for %d, %o, %x, %e, %f, %g or %c must be a number. Use %% to put a single % into the output. A %-sequence other than %% may contain optional field number, flag, width, and precision specifiers, as follows: %<field><flags><width><precision>character where field is [0-9]+ followed by a literal dollar "$", flags is [+ #-0]+, width is [0-9]+, and precision is a literal period "." followed by [0-9]+. If a %-sequence is numbered with a field with positive value N, the Nth argument is substituted instead of the next one. A format can contain either numbered or unnumbered %-sequences but not both, except that %% can be mixed with numbered %-sequences. The + flag character inserts a + before any positive number, while a space inserts a space before any positive number; these flags only affect %d, %e, %f, and %g sequences, and the + flag takes precedence. The - and 0 flags affect the width specifier, as described below. The # flag means to use an alternate display form for %o, %x, %X, %e, %f, and %g sequences: for %o, it ensures that the result begins with "0"; for %x and %X, it prefixes the result with "0x" or "0X"; for %e and %f, it causes a decimal point to be included even if the precision is zero; for %g, it causes a decimal point to be included even if the precision is zero, and also forces trailing zeros after the decimal point to be left in place. The width specifier supplies a lower limit for the length of the printed representation. The padding, if any, normally goes on the left, but it goes on the right if the - flag is present. The padding character is normally a space, but it is 0 if the 0 flag is present. The 0 flag is ignored if the - flag is present, or the format sequence is something other than %d, %e, %f, and %g. For %e and %f sequences, the number after the "." in the precision specifier says how many decimal places to show; if zero, the decimal point itself is omitted. For %g, the precision specifies how many significant digits to print; zero or omitted are treated as 1. For %s and %S, the precision specifier truncates the string to the given width. Text properties, if any, are copied from the format-string to the produced text. (fn STRING &rest OBJECTS)Fformat-message Format a string out of a format-string and arguments. The first argument is a format control string. The other arguments are substituted into it to make the result, a string. This acts like `format', except it also replaces each grave accent (\=`) by a left quote, and each apostrophe (\=') by a right quote. The left and right quote replacement characters are specified by `text-quoting-style'. (fn STRING &rest OBJECTS)Fchar-equal Return t if two characters match, optionally ignoring case. Both arguments must be characters (i.e. integers). Case is ignored if `case-fold-search' is non-nil in the current buffer. (fn C1 C2)Ftranspose-regions Transpose region STARTR1 to ENDR1 with STARTR2 to ENDR2. The regions should not be overlapping, because the size of the buffer is never changed in a transposition. Optional fifth arg LEAVE-MARKERS, if non-nil, means don't update any markers that happen to be located in the regions. Transposing beyond buffer boundaries is an error. (fn STARTR1 ENDR1 STARTR2 ENDR2 &optional LEAVE-MARKERS)Vinhibit-field-text-motion Non-nil means text motion commands don't notice fields.Vbuffer-access-fontify-functions List of functions called by `buffer-substring' to fontify if necessary. Each function is called with two arguments which specify the range of the buffer being accessed.Vbuffer-access-fontified-property Property which (if non-nil) indicates text has been fontified. `buffer-substring' need not call the `buffer-access-fontify-functions' functions if all the text being accessed has this property.Vsystem-name The host name of the machine Emacs is running on.Vuser-full-name The full name of the user logged in.Vuser-login-name The user's name, taken from environment variables if possible.Vuser-real-login-name The user's name, based upon the real uid only.Voperating-system-release The release of the operating system Emacs is running on.Scallint.o Finteractive Specify a way of parsing arguments for interactive use of a function. For example, write (defun foo (arg buf) "Doc string" (interactive "P\nbbuffer: ") .... ) to make ARG be the raw prefix argument, and set BUF to an existing buffer, when `foo' is called as a command. The "call" to `interactive' is actually a declaration rather than a function; it tells `call-interactively' how to read arguments to pass to the function. When actually called, `interactive' just returns nil. Usually the argument of `interactive' is a string containing a code letter followed optionally by a prompt. (Some code letters do not use I/O to get the argument and do not use prompts.) To pass several arguments to the command, concatenate the individual strings, separating them by newline characters. Prompts are passed to `format', and may use % escapes to print the arguments that have already been read. If the argument is not a string, it is evaluated to get a list of arguments to pass to the command. Just `(interactive)' means pass no arguments to the command when calling interactively. Code letters available are: a -- Function name: symbol with a function definition. b -- Name of existing buffer. B -- Name of buffer, possibly nonexistent. c -- Character (no input method is used). C -- Command name: symbol with interactive function definition. d -- Value of point as number. Does not do I/O. D -- Directory name. e -- Parameterized event (i.e., one that's a list) that invoked this command. If used more than once, the Nth `e' returns the Nth parameterized event. This skips events that are integers or symbols. f -- Existing file name. F -- Possibly nonexistent file name. G -- Possibly nonexistent file name, defaulting to just directory name. i -- Ignored, i.e. always nil. Does not do I/O. k -- Key sequence (downcase the last event if needed to get a definition). K -- Key sequence to be redefined (do not downcase the last event). m -- Value of mark as number. Does not do I/O. M -- Any string. Inherits the current input method. n -- Number read using minibuffer. N -- Numeric prefix arg, or if none, do like code `n'. p -- Prefix arg converted to number. Does not do I/O. P -- Prefix arg in raw form. Does not do I/O. r -- Region: point and mark as 2 numeric args, smallest first. Does no I/O. s -- Any string. Does not inherit the current input method. S -- Any symbol. U -- Mouse up event discarded by a previous k or K argument. v -- Variable name: symbol that is `custom-variable-p'. x -- Lisp expression read but not evaluated. X -- Lisp expression read and evaluated. z -- Coding system. Z -- Coding system, nil if no prefix arg. In addition, if the string begins with `*', an error is signaled if the buffer is read-only. If `@' appears at the beginning of the string, and if the key sequence used to invoke the command includes any mouse events, then the window associated with the first of those events is selected before the command is run. If the string begins with `^' and `shift-select-mode' is non-nil, Emacs first calls the function `handle-shift-selection'. You may use `@', `*', and `^' together. They are processed in the order that they appear, before reading any arguments. (fn &optional ARG-DESCRIPTOR)Ffuncall-interactively Like `funcall' but marks the call as interactive. I.e. arrange that within the called function `called-interactively-p' will return non-nil. (fn FUNCTION &rest ARGUMENTS)Fcall-interactively Call FUNCTION, providing args according to its interactive calling specs. Return the value FUNCTION returns. The function contains a specification of how to do the argument reading. In the case of user-defined functions, this is specified by placing a call to the function `interactive' at the top level of the function body. See `interactive'. Optional second arg RECORD-FLAG non-nil means unconditionally put this command in the command-history. Otherwise, this is done only if an arg is read using the minibuffer. Optional third arg KEYS, if given, specifies the sequence of events to supply, as a vector, if the command inquires which events were used to invoke it. If KEYS is omitted or nil, the return value of `this-command-keys-vector' is used. (fn FUNCTION &optional RECORD-FLAG KEYS)Fprefix-numeric-value Return numeric meaning of raw prefix argument RAW. A raw prefix argument is what you get from `(interactive "P")'. Its numeric meaning is what you would get from `(interactive "p")'. (fn RAW)Vprefix-arg The value of the prefix argument for the next editing command. It may be a number, or the symbol `-' for just a minus sign as arg, or a list whose car is a number for just one or more C-u's or nil if no argument has been specified. You cannot examine this variable to find the argument for this command since it has been set to nil by the time you can look. Instead, you should use the variable `current-prefix-arg', although normally commands can get this prefix argument with (interactive "P").Vlast-prefix-arg The value of the prefix argument for the previous editing command. See `prefix-arg' for the meaning of the value.Vcurrent-prefix-arg The value of the prefix argument for this editing command. It may be a number, or the symbol `-' for just a minus sign as arg, or a list whose car is a number for just one or more C-u's or nil if no argument has been specified. This is what `(interactive "P")' returns.Vcommand-history List of recent commands that read arguments from terminal. Each command is represented as a form to evaluate. Maximum length of the history list is determined by the value of `history-length', which see.Vcommand-debug-status Debugging status of current interactive command. Bound each time `call-interactively' is called; may be set by the debugger as a reminder for itself.Vmark-even-if-inactive Non-nil means you can use the mark even when inactive. This option makes a difference in Transient Mark mode. When the option is non-nil, deactivation of the mark turns off region highlighting, but commands that use the mark behave as if the mark were still active.Vmouse-leave-buffer-hook Hook to run when about to switch windows with a mouse command. Its purpose is to give temporary modes such as Isearch mode a way to turn themselves off when a mouse command switches windows.Seval.o For Eval args until one of them yields non-nil, then return that value. The remaining args are not evalled at all. If all args return nil, return nil. (fn CONDITIONS...)Fand Eval args until one of them yields nil, then return nil. The remaining args are not evalled at all. If no arg yields nil, return the last arg's value. (fn CONDITIONS...)Fif If COND yields non-nil, do THEN, else do ELSE... Returns the value of THEN or the value of the last of the ELSE's. THEN must be one expression, but ELSE... can be zero or more expressions. If COND yields nil, and there are no ELSE's, the value is nil. (fn COND THEN ELSE...)Fcond Try each clause until one succeeds. Each clause looks like (CONDITION BODY...). CONDITION is evaluated and, if the value is non-nil, this clause succeeds: then the expressions in BODY are evaluated and the last one's value is the value of the cond-form. If a clause has one element, as in (CONDITION), then the cond-form returns CONDITION's value, if that is non-nil. If no clause succeeds, cond returns nil. (fn CLAUSES...)Fprogn Eval BODY forms sequentially and return value of last one. (fn BODY...)Fprog1 Eval FIRST and BODY sequentially; return value from FIRST. The value of FIRST is saved during the evaluation of the remaining args, whose values are discarded. (fn FIRST BODY...)Fprog2 Eval FORM1, FORM2 and BODY sequentially; return value from FORM2. The value of FORM2 is saved during the evaluation of the remaining args, whose values are discarded. (fn FORM1 FORM2 BODY...)Fsetq Set each SYM to the value of its VAL. The symbols SYM are variables; they are literal (not evaluated). The values VAL are expressions; they are evaluated. Thus, (setq x (1+ y)) sets `x' to the value of `(1+ y)'. The second VAL is not computed until after the first SYM is set, and so on; each VAL can use the new value of variables set earlier in the `setq'. The return value of the `setq' form is the value of the last VAL. (fn [SYM VAL]...)Fquote Return the argument, without evaluating it. `(quote x)' yields `x'. Warning: `quote' does not construct its return value, but just returns the value that was pre-constructed by the Lisp reader (see info node `(elisp)Printed Representation'). This means that \='(a . b) is not identical to (cons \='a \='b): the former does not cons. Quoting should be reserved for constants that will never be modified by side-effects, unless you like self-modifying code. See the common pitfall in info node `(elisp)Rearrangement' for an example of unexpected results when a quoted object is modified. (fn ARG)Ffunction Like `quote', but preferred for objects which are functions. In byte compilation, `function' causes its argument to be compiled. `quote' cannot do that. (fn ARG)Fdefvaralias Make NEW-ALIAS a variable alias for symbol BASE-VARIABLE. Aliased variables always have the same value; setting one sets the other. Third arg DOCSTRING, if non-nil, is documentation for NEW-ALIAS. If it is omitted or nil, NEW-ALIAS gets the documentation string of BASE-VARIABLE, or of the variable at the end of the chain of aliases, if BASE-VARIABLE is itself an alias. If NEW-ALIAS is bound, and BASE-VARIABLE is not, then the value of BASE-VARIABLE is set to that of NEW-ALIAS. The return value is BASE-VARIABLE. (fn NEW-ALIAS BASE-VARIABLE &optional DOCSTRING)Fdefault-toplevel-value Return SYMBOL's toplevel default value. "Toplevel" means outside of any let binding. (fn SYMBOL)Fset-default-toplevel-value Set SYMBOL's toplevel default value to VALUE. "Toplevel" means outside of any let binding. (fn SYMBOL VALUE)Fdefvar Define SYMBOL as a variable, and return SYMBOL. You are not required to define a variable in order to use it, but defining it lets you supply an initial value and documentation, which can be referred to by the Emacs help facilities and other programming tools. The `defvar' form also declares the variable as "special", so that it is always dynamically bound even if `lexical-binding' is t. If SYMBOL's value is void and the optional argument INITVALUE is provided, INITVALUE is evaluated and the result used to set SYMBOL's value. If SYMBOL is buffer-local, its default value is what is set; buffer-local values are not affected. If INITVALUE is missing, SYMBOL's value is not set. If SYMBOL has a local binding, then this form affects the local binding. This is usually not what you want. Thus, if you need to load a file defining variables, with this form or with `defconst' or `defcustom', you should always load that file _outside_ any bindings for these variables. (`defconst' and `defcustom' behave similarly in this respect.) The optional argument DOCSTRING is a documentation string for the variable. To define a user option, use `defcustom' instead of `defvar'. (fn SYMBOL &optional INITVALUE DOCSTRING)Fdefconst Define SYMBOL as a constant variable. This declares that neither programs nor users should ever change the value. This constancy is not actually enforced by Emacs Lisp, but SYMBOL is marked as a special variable so that it is never lexically bound. The `defconst' form always sets the value of SYMBOL to the result of evalling INITVALUE. If SYMBOL is buffer-local, its default value is what is set; buffer-local values are not affected. If SYMBOL has a local binding, then this form sets the local binding's value. However, you should normally not make local bindings for variables defined with this form. The optional DOCSTRING specifies the variable's documentation string. (fn SYMBOL INITVALUE [DOCSTRING])Finternal-make-var-non-special Internal function. (fn SYMBOL)Flet* Bind variables according to VARLIST then eval BODY. The value of the last form in BODY is returned. Each element of VARLIST is a symbol (which is bound to nil) or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM). Each VALUEFORM can refer to the symbols already bound by this VARLIST. (fn VARLIST BODY...)Flet Bind variables according to VARLIST then eval BODY. The value of the last form in BODY is returned. Each element of VARLIST is a symbol (which is bound to nil) or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM). All the VALUEFORMs are evalled before any symbols are bound. (fn VARLIST BODY...)Fwhile If TEST yields non-nil, eval BODY... and repeat. The order of execution is thus TEST, BODY, TEST, BODY and so on until TEST returns nil. (fn TEST BODY...)Fmacroexpand Return result of expanding macros at top level of FORM. If FORM is not a macro call, it is returned unchanged. Otherwise, the macro is expanded and the expansion is considered in place of FORM. When a non-macro-call results, it is returned. The second optional arg ENVIRONMENT specifies an environment of macro definitions to shadow the loaded ones for use in file byte-compilation. (fn FORM &optional ENVIRONMENT)Fcatch Eval BODY allowing nonlocal exits using `throw'. TAG is evalled to get the tag to use; it must not be nil. Then the BODY is executed. Within BODY, a call to `throw' with the same TAG exits BODY and this `catch'. If no throw happens, `catch' returns the value of the last BODY form. If a throw happens, it specifies the value to return from `catch'. (fn TAG BODY...)Fthrow Throw to the catch for TAG and return VALUE from it. Both TAG and VALUE are evalled. (fn TAG VALUE)Funwind-protect Do BODYFORM, protecting with UNWINDFORMS. If BODYFORM completes normally, its value is returned after executing the UNWINDFORMS. If BODYFORM exits nonlocally, the UNWINDFORMS are executed anyway. (fn BODYFORM UNWINDFORMS...)Fcondition-case Regain control when an error is signaled. Executes BODYFORM and returns its value if no error happens. Each element of HANDLERS looks like (CONDITION-NAME BODY...) where the BODY is made of Lisp expressions. A handler is applicable to an error if CONDITION-NAME is one of the error's condition names. If an error happens, the first applicable handler is run. The car of a handler may be a list of condition names instead of a single condition name; then it handles all of them. If the special condition name `debug' is present in this list, it allows another condition in the list to run the debugger if `debug-on-error' and the other usual mechanisms says it should (otherwise, `condition-case' suppresses the debugger). When a handler handles an error, control returns to the `condition-case' and it executes the handler's BODY... with VAR bound to (ERROR-SYMBOL . SIGNAL-DATA) from the error. (If VAR is nil, the handler can't access that information.) Then the value of the last BODY form is returned from the `condition-case' expression. See also the function `signal' for more info. (fn VAR BODYFORM &rest HANDLERS)Fsignal Signal an error. Args are ERROR-SYMBOL and associated DATA. This function does not return. An error symbol is a symbol with an `error-conditions' property that is a list of condition names. The symbol should be non-nil. A handler for any of those names will get to handle this signal. The symbol `error' should normally be one of them. DATA should be a list. Its elements are printed as part of the error message. See Info anchor `(elisp)Definition of signal' for some details on how this error message is constructed. If the signal is handled, DATA is made available to the handler. See also the function `condition-case'. (fn ERROR-SYMBOL DATA)Fcommandp Non-nil if FUNCTION makes provisions for interactive calling. This means it contains a description for how to read arguments to give it. The value is nil for an invalid function or a symbol with no function definition. Interactively callable functions include strings and vectors (treated as keyboard macros), lambda-expressions that contain a top-level call to `interactive', autoload definitions made by `autoload' with non-nil fourth argument, and some of the built-in functions of Lisp. Also, a symbol satisfies `commandp' if its function definition does so. If the optional argument FOR-CALL-INTERACTIVELY is non-nil, then strings and vectors are not accepted. (fn FUNCTION &optional FOR-CALL-INTERACTIVELY)Fautoload Define FUNCTION to autoload from FILE. FUNCTION is a symbol; FILE is a file name string to pass to `load'. Third arg DOCSTRING is documentation for the function. Fourth arg INTERACTIVE if non-nil says function can be called interactively. Fifth arg TYPE indicates the type of the object: nil or omitted says FUNCTION is a function, `keymap' says FUNCTION is really a keymap, and `macro' or t says FUNCTION is really a macro. Third through fifth args give info about the real definition. They default to nil. If FUNCTION is already defined other than as an autoload, this does nothing and returns nil. (fn FUNCTION FILE &optional DOCSTRING INTERACTIVE TYPE)Fautoload-do-load Load FUNDEF which should be an autoload. If non-nil, FUNNAME should be the symbol whose function value is FUNDEF, in which case the function returns the new autoloaded function value. If equal to `macro', MACRO-ONLY specifies that FUNDEF should only be loaded if it defines a macro. (fn FUNDEF &optional FUNNAME MACRO-ONLY)Feval Evaluate FORM and return its value. If LEXICAL is t, evaluate using lexical scoping. LEXICAL can also be an actual lexical environment, in the form of an alist mapping symbols to their value. (fn FORM &optional LEXICAL)Fapply Call FUNCTION with our remaining args, using our last arg as list of args. Then return the value FUNCTION returns. Thus, (apply \='+ 1 2 \='(3 4)) returns 10. (fn FUNCTION &rest ARGUMENTS)Frun-hooks Run each hook in HOOKS. Each argument should be a symbol, a hook variable. These symbols are processed in the order specified. If a hook symbol has a non-nil value, that value may be a function or a list of functions to be called to run the hook. If the value is a function, it is called with no arguments. If it is a list, the elements are called, in order, with no arguments. Major modes should not use this function directly to run their mode hook; they should use `run-mode-hooks' instead. Do not use `make-local-variable' to make a hook variable buffer-local. Instead, use `add-hook' and specify t for the LOCAL argument. (fn &rest HOOKS)Frun-hook-with-args Run HOOK with the specified arguments ARGS. HOOK should be a symbol, a hook variable. The value of HOOK may be nil, a function, or a list of functions. Call each function in order with arguments ARGS. The final return value is unspecified. Do not use `make-local-variable' to make a hook variable buffer-local. Instead, use `add-hook' and specify t for the LOCAL argument. (fn HOOK &rest ARGS)Frun-hook-with-args-until-success Run HOOK with the specified arguments ARGS. HOOK should be a symbol, a hook variable. The value of HOOK may be nil, a function, or a list of functions. Call each function in order with arguments ARGS, stopping at the first one that returns non-nil, and return that value. Otherwise (if all functions return nil, or if there are no functions to call), return nil. Do not use `make-local-variable' to make a hook variable buffer-local. Instead, use `add-hook' and specify t for the LOCAL argument. (fn HOOK &rest ARGS)Frun-hook-with-args-until-failure Run HOOK with the specified arguments ARGS. HOOK should be a symbol, a hook variable. The value of HOOK may be nil, a function, or a list of functions. Call each function in order with arguments ARGS, stopping at the first one that returns nil, and return nil. Otherwise (if all functions return non-nil, or if there are no functions to call), return non-nil (do not rely on the precise return value in this case). Do not use `make-local-variable' to make a hook variable buffer-local. Instead, use `add-hook' and specify t for the LOCAL argument. (fn HOOK &rest ARGS)Frun-hook-wrapped Run HOOK, passing each function through WRAP-FUNCTION. I.e. instead of calling each function FUN directly with arguments ARGS, it calls WRAP-FUNCTION with arguments FUN and ARGS. As soon as a call to WRAP-FUNCTION returns non-nil, `run-hook-wrapped' aborts and returns that value. (fn HOOK WRAP-FUNCTION &rest ARGS)Ffunctionp Return t if OBJECT is a function. (fn OBJECT)Ffuncall Call first argument as a function, passing remaining arguments to it. Return the value that function returns. Thus, (funcall \='cons \='x \='y) returns (x . y). (fn FUNCTION &rest ARGUMENTS)Ffunc-arity Return minimum and maximum number of args allowed for FUNCTION. FUNCTION must be a function of some kind. The returned value is a cons cell (MIN . MAX). MIN is the minimum number of args. MAX is the maximum number, or the symbol `many', for a function with `&rest' args, or `unevalled' for a special form. (fn FUNCTION)Ffetch-bytecode If byte-compiled OBJECT is lazy-loaded, fetch it now. (fn OBJECT)Fspecial-variable-p Return non-nil if SYMBOL's global binding has been declared special. A special variable is one that will be bound dynamically, even in a context where binding is lexical by default. (fn SYMBOL)Fbacktrace-debug Set the debug-on-exit flag of eval frame LEVEL levels down to FLAG. The debugger is entered when that frame exits, if the flag is non-nil. (fn LEVEL FLAG)Fmapbacktrace Call FUNCTION for each frame in backtrace. If BASE is non-nil, it should be a function and iteration will start from its nearest activation frame. FUNCTION is called with 4 arguments: EVALD, FUNC, ARGS, and FLAGS. If a frame has not evaluated its arguments yet or is a special form, EVALD is nil and ARGS is a list of forms. If a frame has evaluated its arguments and called its function already, EVALD is t and ARGS is a list of values. FLAGS is a plist of properties of the current frame: currently, the only supported property is :debug-on-exit. `mapbacktrace' always returns nil. (fn FUNCTION &optional BASE)Fbacktrace-frame--internal Call FUNCTION on stack frame NFRAMES away from BASE. Return the result of FUNCTION, or nil if no matching frame could be found. (fn FUNCTION NFRAMES BASE)Fbacktrace-eval Evaluate EXP in the context of some activation frame. NFRAMES and BASE specify the activation frame to use, as in `backtrace-frame'. (fn EXP NFRAMES &optional BASE)Fbacktrace--locals Return names and values of local variables of a stack frame. NFRAMES and BASE specify the activation frame to use, as in `backtrace-frame'. (fn NFRAMES &optional BASE)Vmax-specpdl-size Limit on number of Lisp variable bindings and `unwind-protect's. If Lisp code tries to increase the total number past this amount, an error is signaled. You can safely use a value considerably larger than the default value, if that proves inconveniently small. However, if you increase it too far, Emacs could run out of memory trying to make the stack bigger. Note that this limit may be silently increased by the debugger if `debug-on-error' or `debug-on-quit' is set.Vmax-lisp-eval-depth Limit on depth in `eval', `apply' and `funcall' before error. This limit serves to catch infinite recursions for you before they cause actual stack overflow in C, which would be fatal for Emacs. You can safely make it considerably larger than its default value, if that proves inconveniently small. However, if you increase it too far, Emacs could overflow the real C stack, and crash.Vquit-flag Non-nil causes `eval' to abort, unless `inhibit-quit' is non-nil. If the value is t, that means do an ordinary quit. If the value equals `throw-on-input', that means quit by throwing to the tag specified in `throw-on-input'; it's for handling `while-no-input'. Typing C-g sets `quit-flag' to t, regardless of `inhibit-quit', but `inhibit-quit' non-nil prevents anything from taking notice of that.Vinhibit-quit Non-nil inhibits C-g quitting from happening immediately. Note that `quit-flag' will still be set by typing C-g, so a quit will be signaled as soon as `inhibit-quit' is nil. To prevent this happening, set `quit-flag' to nil before making `inhibit-quit' nil.Vinhibit-debugger Non-nil means never enter the debugger. Normally set while the debugger is already active, to avoid recursive invocations.Vdebug-on-error Non-nil means enter debugger if an error is signaled. Does not apply to errors handled by `condition-case' or those matched by `debug-ignored-errors'. If the value is a list, an error only means to enter the debugger if one of its condition symbols appears in the list. When you evaluate an expression interactively, this variable is temporarily non-nil if `eval-expression-debug-on-error' is non-nil. The command `toggle-debug-on-error' toggles this. See also the variable `debug-on-quit' and `inhibit-debugger'.Vdebug-ignored-errors List of errors for which the debugger should not be called. Each element may be a condition-name or a regexp that matches error messages. If any element applies to a given error, that error skips the debugger and just returns to top level. This overrides the variable `debug-on-error'. It does not apply to errors handled by `condition-case'.Vdebug-on-quit Non-nil means enter debugger if quit is signaled (C-g, for example). Does not apply if quit is handled by a `condition-case'.Vdebug-on-next-call Non-nil means enter debugger before next `eval', `apply' or `funcall'.Vdebugger-may-continue Non-nil means debugger may continue execution. This is nil when the debugger is called under circumstances where it might not be safe to continue.Vdebugger-stack-frame-as-list Non-nil means display call stack frames as lists.Vdebugger Function to call to invoke debugger. If due to frame exit, args are `exit' and the value being returned; this function's value will be returned instead of that. If due to error, args are `error' and a list of the args to `signal'. If due to `apply' or `funcall' entry, one arg, `lambda'. If due to `eval' entry, one arg, t.Vsignal-hook-function If non-nil, this is a function for `signal' to call. It receives the same arguments that `signal' was given. The Edebug package uses this to regain control.Vdebug-on-signal Non-nil means call the debugger regardless of condition handlers. Note that `debug-on-error', `debug-on-quit' and friends still determine whether to handle the particular condition.Vinternal-interpreter-environment If non-nil, the current lexical environment of the lisp interpreter. When lexical binding is not being used, this variable is nil. A value of `(t)' indicates an empty environment, otherwise it is an alist of active lexical bindings.Sfloatfns.o Facos Return the inverse cosine of ARG. (fn ARG)Fasin Return the inverse sine of ARG. (fn ARG)Fatan Return the inverse tangent of the arguments. If only one argument Y is given, return the inverse tangent of Y. If two arguments Y and X are given, return the inverse tangent of Y divided by X, i.e. the angle in radians between the vector (X, Y) and the x-axis. (fn Y &optional X)Fcos Return the cosine of ARG. (fn ARG)Fsin Return the sine of ARG. (fn ARG)Ftan Return the tangent of ARG. (fn ARG)Fisnan Return non nil if argument X is a NaN. (fn X)Fcopysign Copy sign of X2 to value of X1, and return the result. Cause an error if X1 or X2 is not a float. (fn X1 X2)Ffrexp Get significand and exponent of a floating point number. Breaks the floating point number X into its binary significand SGNFCAND (a floating point value between 0.5 (included) and 1.0 (excluded)) and an integral exponent EXP for 2, such that: X = SGNFCAND * 2^EXP The function returns the cons cell (SGNFCAND . EXP). If X is zero, both parts (SGNFCAND and EXP) are zero. (fn X)Fldexp Return SGNFCAND * 2**EXPONENT, as a floating point number. EXPONENT must be an integer. (fn SGNFCAND EXPONENT)Fexp Return the exponential base e of ARG. (fn ARG)Fexpt Return the exponential ARG1 ** ARG2. (fn ARG1 ARG2)Flog Return the natural logarithm of ARG. If the optional argument BASE is given, return log ARG using that base. (fn ARG &optional BASE)Fsqrt Return the square root of ARG. (fn ARG)Fabs Return the absolute value of ARG. (fn ARG)Ffloat Return the floating point number equal to ARG. (fn ARG)Flogb Returns largest integer <= the base 2 log of the magnitude of ARG. This is the same as the exponent of a float. (fn ARG)Fceiling Return the smallest integer no less than ARG. This rounds the value towards +inf. With optional DIVISOR, return the smallest integer no less than ARG/DIVISOR. (fn ARG &optional DIVISOR)Ffloor Return the largest integer no greater than ARG. This rounds the value towards -inf. With optional DIVISOR, return the largest integer no greater than ARG/DIVISOR. (fn ARG &optional DIVISOR)Fround Return the nearest integer to ARG. With optional DIVISOR, return the nearest integer to ARG/DIVISOR. Rounding a value equidistant between two integers may choose the integer closer to zero, or it may prefer an even integer, depending on your machine. For example, (round 2.5) can return 3 on some systems, but 2 on others. (fn ARG &optional DIVISOR)Ftruncate Truncate a floating point number to an int. Rounds ARG toward zero. With optional DIVISOR, truncate ARG/DIVISOR. (fn ARG &optional DIVISOR)Ffceiling Return the smallest integer no less than ARG, as a float. (Round toward +inf.) (fn ARG)Fffloor Return the largest integer no greater than ARG, as a float. (Round toward -inf.) (fn ARG)Ffround Return the nearest integer to ARG, as a float. (fn ARG)Fftruncate Truncate a floating point number to an integral float value. (Round toward zero.) (fn ARG)Sfns.o Fidentity Return the argument unchanged. (fn ARG)Frandom Return a pseudo-random number. All integers representable in Lisp, i.e. between `most-negative-fixnum' and `most-positive-fixnum', inclusive, are equally likely. With positive integer LIMIT, return random number in interval [0,LIMIT). With argument t, set the random number seed from the system's entropy pool if available, otherwise from less-random volatile data such as the time. With a string argument, set the seed based on the string's contents. Other values of LIMIT are ignored. See Info node `(elisp)Random Numbers' for more details. (fn &optional LIMIT)Flength Return the length of vector, list or string SEQUENCE. A byte-code function object is also allowed. If the string contains multibyte characters, this is not necessarily the number of bytes in the string; it is the number of characters. To get the number of bytes, use `string-bytes'. (fn SEQUENCE)Fsafe-length Return the length of a list, but avoid error or infinite loop. This function never gets an error. If LIST is not really a list, it returns 0. If LIST is circular, it returns a finite value which is at least the number of distinct elements. (fn LIST)Fstring-bytes Return the number of bytes in STRING. If STRING is multibyte, this may be greater than the length of STRING. (fn STRING)Fstring-equal Return t if two strings have identical contents. Case is significant, but text properties are ignored. Symbols are also allowed; their print names are used instead. (fn S1 S2)Fcompare-strings Compare the contents of two strings, converting to multibyte if needed. The arguments START1, END1, START2, and END2, if non-nil, are positions specifying which parts of STR1 or STR2 to compare. In string STR1, compare the part between START1 (inclusive) and END1 (exclusive). If START1 is nil, it defaults to 0, the beginning of the string; if END1 is nil, it defaults to the length of the string. Likewise, in string STR2, compare the part between START2 and END2. Like in `substring', negative values are counted from the end. The strings are compared by the numeric values of their characters. For instance, STR1 is "less than" STR2 if its first differing character has a smaller numeric value. If IGNORE-CASE is non-nil, characters are converted to upper-case before comparing them. Unibyte strings are converted to multibyte for comparison. The value is t if the strings (or specified portions) match. If string STR1 is less, the value is a negative number N; - 1 - N is the number of characters that match at the beginning. If string STR1 is greater, the value is a positive number N; N - 1 is the number of characters that match at the beginning. (fn STR1 START1 END1 STR2 START2 END2 &optional IGNORE-CASE)Fstring-lessp Return non-nil if STRING1 is less than STRING2 in lexicographic order. Case is significant. Symbols are also allowed; their print names are used instead. (fn STRING1 STRING2)Fstring-version-lessp Return non-nil if S1 is less than S2, as version strings. This function compares version strings S1 and S2: 1) By prefix lexicographically. 2) Then by version (similarly to version comparison of Debian's dpkg). Leading zeros in version numbers are ignored. 3) If both prefix and version are equal, compare as ordinary strings. For example, "foo2.png" compares less than "foo12.png". Case is significant. Symbols are also allowed; their print names are used instead. (fn STRING1 STRING2)Fstring-collate-lessp Return t if first arg string is less than second in collation order. Symbols are also allowed; their print names are used instead. This function obeys the conventions for collation order in your locale settings. For example, punctuation and whitespace characters might be considered less significant for sorting: (sort \='("11" "12" "1 1" "1 2" "1.1" "1.2") \='string-collate-lessp) => ("11" "1 1" "1.1" "12" "1 2" "1.2") The optional argument LOCALE, a string, overrides the setting of your current locale identifier for collation. The value is system dependent; a LOCALE "en_US.UTF-8" is applicable on POSIX systems, while it would be, e.g., "enu_USA.1252" on MS-Windows systems. If IGNORE-CASE is non-nil, characters are converted to lower-case before comparing them. To emulate Unicode-compliant collation on MS-Windows systems, bind `w32-collate-ignore-punctuation' to a non-nil value, since the codeset part of the locale cannot be "UTF-8" on MS-Windows. If your system does not support a locale environment, this function behaves like `string-lessp'. (fn S1 S2 &optional LOCALE IGNORE-CASE)Fstring-collate-equalp Return t if two strings have identical contents. Symbols are also allowed; their print names are used instead. This function obeys the conventions for collation order in your locale settings. For example, characters with different coding points but the same meaning might be considered as equal, like different grave accent Unicode characters: (string-collate-equalp (string ?\uFF40) (string ?\u1FEF)) => t The optional argument LOCALE, a string, overrides the setting of your current locale identifier for collation. The value is system dependent; a LOCALE "en_US.UTF-8" is applicable on POSIX systems, while it would be "enu_USA.1252" on MS Windows systems. If IGNORE-CASE is non-nil, characters are converted to lower-case before comparing them. To emulate Unicode-compliant collation on MS-Windows systems, bind `w32-collate-ignore-punctuation' to a non-nil value, since the codeset part of the locale cannot be "UTF-8" on MS-Windows. If your system does not support a locale environment, this function behaves like `string-equal'. Do NOT use this function to compare file names for equality. (fn S1 S2 &optional LOCALE IGNORE-CASE)Fappend Concatenate all the arguments and make the result a list. The result is a list whose elements are the elements of all the arguments. Each argument may be a list, vector or string. The last argument is not copied, just used as the tail of the new list. (fn &rest SEQUENCES)Fconcat Concatenate all the arguments and make the result a string. The result is a string whose elements are the elements of all the arguments. Each argument may be a string or a list or vector of characters (integers). (fn &rest SEQUENCES)Fvconcat Concatenate all the arguments and make the result a vector. The result is a vector whose elements are the elements of all the arguments. Each argument may be a list, vector or string. (fn &rest SEQUENCES)Fcopy-sequence Return a copy of a list, vector, string, char-table or record. The elements of a list, vector or record are not copied; they are shared with the original. If the original sequence is empty, this function may return the same empty object instead of its copy. (fn ARG)Fstring-make-multibyte Return the multibyte equivalent of STRING. If STRING is unibyte and contains non-ASCII characters, the function `unibyte-char-to-multibyte' is used to convert each unibyte character to a multibyte character. In this case, the returned string is a newly created string with no text properties. If STRING is multibyte or entirely ASCII, it is returned unchanged. In particular, when STRING is unibyte and entirely ASCII, the returned string is unibyte. (When the characters are all ASCII, Emacs primitives will treat the string the same way whether it is unibyte or multibyte.) (fn STRING)Fstring-make-unibyte Return the unibyte equivalent of STRING. Multibyte character codes above 255 are converted to unibyte by taking just the low 8 bits of each character's code. (fn STRING)Fstring-as-unibyte Return a unibyte string with the same individual bytes as STRING. If STRING is unibyte, the result is STRING itself. Otherwise it is a newly created string, with no text properties. If STRING is multibyte and contains a character of charset `eight-bit', it is converted to the corresponding single byte. (fn STRING)Fstring-as-multibyte Return a multibyte string with the same individual bytes as STRING. If STRING is multibyte, the result is STRING itself. Otherwise it is a newly created string, with no text properties. If STRING is unibyte and contains an individual 8-bit byte (i.e. not part of a correct utf-8 sequence), it is converted to the corresponding multibyte character of charset `eight-bit'. See also `string-to-multibyte'. Beware, this often doesn't really do what you think it does. It is similar to (decode-coding-string STRING \='utf-8-emacs). If you're not sure, whether to use `string-as-multibyte' or `string-to-multibyte', use `string-to-multibyte'. (fn STRING)Fstring-to-multibyte Return a multibyte string with the same individual chars as STRING. If STRING is multibyte, the result is STRING itself. Otherwise it is a newly created string, with no text properties. If STRING is unibyte and contains an 8-bit byte, it is converted to the corresponding multibyte character of charset `eight-bit'. This differs from `string-as-multibyte' by converting each byte of a correct utf-8 sequence to an eight-bit character, not just bytes that don't form a correct sequence. (fn STRING)Fstring-to-unibyte Return a unibyte string with the same individual chars as STRING. If STRING is unibyte, the result is STRING itself. Otherwise it is a newly created string, with no text properties, where each `eight-bit' character is converted to the corresponding byte. If STRING contains a non-ASCII, non-`eight-bit' character, an error is signaled. (fn STRING)Fcopy-alist Return a copy of ALIST. This is an alist which represents the same mapping from objects to objects, but does not share the alist structure with ALIST. The objects mapped (cars and cdrs of elements of the alist) are shared, however. Elements of ALIST that are not conses are also shared. (fn ALIST)Fsubstring Return a new string whose contents are a substring of STRING. The returned string consists of the characters between index FROM (inclusive) and index TO (exclusive) of STRING. FROM and TO are zero-indexed: 0 means the first character of STRING. Negative values are counted from the end of STRING. If TO is nil, the substring runs to the end of STRING. The STRING argument may also be a vector. In that case, the return value is a new vector that contains the elements between index FROM (inclusive) and index TO (exclusive) of that vector argument. With one argument, just copy STRING (with properties, if any). (fn STRING &optional FROM TO)Fsubstring-no-properties Return a substring of STRING, without text properties. It starts at index FROM and ends before TO. TO may be nil or omitted; then the substring runs to the end of STRING. If FROM is nil or omitted, the substring starts at the beginning of STRING. If FROM or TO is negative, it counts from the end. With one argument, just copy STRING without its properties. (fn STRING &optional FROM TO)Fnthcdr Take cdr N times on LIST, return the result. (fn N LIST)Fnth Return the Nth element of LIST. N counts from zero. If LIST is not that long, nil is returned. (fn N LIST)Felt Return element of SEQUENCE at index N. (fn SEQUENCE N)Fmember Return non-nil if ELT is an element of LIST. Comparison done with `equal'. The value is actually the tail of LIST whose car is ELT. (fn ELT LIST)Fmemq Return non-nil if ELT is an element of LIST. Comparison done with `eq'. The value is actually the tail of LIST whose car is ELT. (fn ELT LIST)Fmemql Return non-nil if ELT is an element of LIST. Comparison done with `eql'. The value is actually the tail of LIST whose car is ELT. (fn ELT LIST)Fassq Return non-nil if KEY is `eq' to the car of an element of LIST. The value is actually the first element of LIST whose car is KEY. Elements of LIST that are not conses are ignored. (fn KEY LIST)Fassoc Return non-nil if KEY is equal to the car of an element of LIST. The value is actually the first element of LIST whose car equals KEY. Equality is defined by TESTFN if non-nil or by `equal' if nil. (fn KEY LIST &optional TESTFN)Frassq Return non-nil if KEY is `eq' to the cdr of an element of LIST. The value is actually the first element of LIST whose cdr is KEY. (fn KEY LIST)Frassoc Return non-nil if KEY is `equal' to the cdr of an element of LIST. The value is actually the first element of LIST whose cdr equals KEY. (fn KEY LIST)Fdelq Delete members of LIST which are `eq' to ELT, and return the result. More precisely, this function skips any members `eq' to ELT at the front of LIST, then removes members `eq' to ELT from the remaining sublist by modifying its list structure, then returns the resulting list. Write `(setq foo (delq element foo))' to be sure of correctly changing the value of a list `foo'. See also `remq', which does not modify the argument. (fn ELT LIST)Fdelete Delete members of SEQ which are `equal' to ELT, and return the result. SEQ must be a sequence (i.e. a list, a vector, or a string). The return value is a sequence of the same type. If SEQ is a list, this behaves like `delq', except that it compares with `equal' instead of `eq'. In particular, it may remove elements by altering the list structure. If SEQ is not a list, deletion is never performed destructively; instead this function creates and returns a new vector or string. Write `(setq foo (delete element foo))' to be sure of correctly changing the value of a sequence `foo'. (fn ELT SEQ)Fnreverse Reverse order of items in a list, vector or string SEQ. If SEQ is a list, it should be nil-terminated. This function may destructively modify SEQ to produce the value. (fn SEQ)Freverse Return the reversed copy of list, vector, or string SEQ. See also the function `nreverse', which is used more often. (fn SEQ)Fsort Sort SEQ, stably, comparing elements using PREDICATE. Returns the sorted sequence. SEQ should be a list or vector. SEQ is modified by side effects. PREDICATE is called with two elements of SEQ, and should return non-nil if the first element should sort before the second. (fn SEQ PREDICATE)Fplist-get Extract a value from a property list. PLIST is a property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2...). This function returns the value corresponding to the given PROP, or nil if PROP is not one of the properties on the list. This function never signals an error. (fn PLIST PROP)Fget Return the value of SYMBOL's PROPNAME property. This is the last value stored with `(put SYMBOL PROPNAME VALUE)'. (fn SYMBOL PROPNAME)Fplist-put Change value in PLIST of PROP to VAL. PLIST is a property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2 ...). PROP is a symbol and VAL is any object. If PROP is already a property on the list, its value is set to VAL, otherwise the new PROP VAL pair is added. The new plist is returned; use `(setq x (plist-put x prop val))' to be sure to use the new value. The PLIST is modified by side effects. (fn PLIST PROP VAL)Fput Store SYMBOL's PROPNAME property with value VALUE. It can be retrieved with `(get SYMBOL PROPNAME)'. (fn SYMBOL PROPNAME VALUE)Flax-plist-get Extract a value from a property list, comparing with `equal'. PLIST is a property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2...). This function returns the value corresponding to the given PROP, or nil if PROP is not one of the properties on the list. (fn PLIST PROP)Flax-plist-put Change value in PLIST of PROP to VAL, comparing with `equal'. PLIST is a property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2 ...). PROP and VAL are any objects. If PROP is already a property on the list, its value is set to VAL, otherwise the new PROP VAL pair is added. The new plist is returned; use `(setq x (lax-plist-put x prop val))' to be sure to use the new value. The PLIST is modified by side effects. (fn PLIST PROP VAL)Feql Return t if the two args are the same Lisp object. Floating-point numbers of equal value are `eql', but they may not be `eq'. (fn OBJ1 OBJ2)Fequal Return t if two Lisp objects have similar structure and contents. They must have the same data type. Conses are compared by comparing the cars and the cdrs. Vectors and strings are compared element by element. Numbers are compared by value, but integers cannot equal floats. (Use `=' if you want integers and floats to be able to be equal.) Symbols must match exactly. (fn O1 O2)Fequal-including-properties Return t if two Lisp objects have similar structure and contents. This is like `equal' except that it compares the text properties of strings. (`equal' ignores text properties.) (fn O1 O2)Ffillarray Store each element of ARRAY with ITEM. ARRAY is a vector, string, char-table, or bool-vector. (fn ARRAY ITEM)Fclear-string Clear the contents of STRING. This makes STRING unibyte and may change its length. (fn STRING)Fnconc Concatenate any number of lists by altering them. Only the last argument is not altered, and need not be a list. (fn &rest LISTS)Fmapconcat Apply FUNCTION to each element of SEQUENCE, and concat the results as strings. In between each pair of results, stick in SEPARATOR. Thus, " " as SEPARATOR results in spaces between the values returned by FUNCTION. SEQUENCE may be a list, a vector, a bool-vector, or a string. SEPARATOR must be a string, a vector, or a list of characters. FUNCTION must be a function of one argument, and must return a value that is a sequence of characters: either a string, or a vector or list of numbers that are valid character codepoints. (fn FUNCTION SEQUENCE SEPARATOR)Fmapcar Apply FUNCTION to each element of SEQUENCE, and make a list of the results. The result is a list just as long as SEQUENCE. SEQUENCE may be a list, a vector, a bool-vector, or a string. (fn FUNCTION SEQUENCE)Fmapc Apply FUNCTION to each element of SEQUENCE for side effects only. Unlike `mapcar', don't accumulate the results. Return SEQUENCE. SEQUENCE may be a list, a vector, a bool-vector, or a string. (fn FUNCTION SEQUENCE)Fmapcan Apply FUNCTION to each element of SEQUENCE, and concatenate the results by altering them (using `nconc'). SEQUENCE may be a list, a vector, a bool-vector, or a string. (fn FUNCTION SEQUENCE)Fyes-or-no-p Ask user a yes-or-no question. Return t if answer is yes, and nil if the answer is no. PROMPT is the string to display to ask the question. It should end in a space; `yes-or-no-p' adds "(yes or no) " to it. The user must confirm the answer with RET, and can edit it until it has been confirmed. If dialog boxes are supported, a dialog box will be used if `last-nonmenu-event' is nil, and `use-dialog-box' is non-nil. (fn PROMPT)Fload-average Return list of 1 minute, 5 minute and 15 minute load averages. Each of the three load averages is multiplied by 100, then converted to integer. When USE-FLOATS is non-nil, floats will be used instead of integers. These floats are not multiplied by 100. If the 5-minute or 15-minute load averages are not available, return a shortened list, containing only those averages which are available. An error is thrown if the load average can't be obtained. In some cases making it work would require Emacs being installed setuid or setgid so that it can read kernel information, and that usually isn't advisable. (fn &optional USE-FLOATS)Ffeaturep Return t if FEATURE is present in this Emacs. Use this to conditionalize execution of lisp code based on the presence or absence of Emacs or environment extensions. Use `provide' to declare that a feature is available. This function looks at the value of the variable `features'. The optional argument SUBFEATURE can be used to check a specific subfeature of FEATURE. (fn FEATURE &optional SUBFEATURE)Fprovide Announce that FEATURE is a feature of the current Emacs. The optional argument SUBFEATURES should be a list of symbols listing particular subfeatures supported in this version of FEATURE. (fn FEATURE &optional SUBFEATURES)Frequire If feature FEATURE is not loaded, load it from FILENAME. If FEATURE is not a member of the list `features', then the feature is not loaded; so load the file FILENAME. If FILENAME is omitted, the printname of FEATURE is used as the file name, and `load' will try to load this name appended with the suffix `.elc', `.el', or the system-dependent suffix for dynamic module files, in that order. The name without appended suffix will not be used. See `get-load-suffixes' for the complete list of suffixes. The directories in `load-path' are searched when trying to find the file name. If the optional third argument NOERROR is non-nil, then return nil if the file is not found instead of signaling an error. Normally the return value is FEATURE. The normal messages at start and end of loading FILENAME are suppressed. (fn FEATURE &optional FILENAME NOERROR)Fplist-member Return non-nil if PLIST has the property PROP. PLIST is a property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2 ...). PROP is a symbol. Unlike `plist-get', this allows you to distinguish between a missing property and a property with the value nil. The value is actually the tail of PLIST whose car is PROP. (fn PLIST PROP)Fwidget-put In WIDGET, set PROPERTY to VALUE. The value can later be retrieved with `widget-get'. (fn WIDGET PROPERTY VALUE)Fwidget-get In WIDGET, get the value of PROPERTY. The value could either be specified when the widget was created, or later with `widget-put'. (fn WIDGET PROPERTY)Fwidget-apply Apply the value of WIDGET's PROPERTY to the widget itself. ARGS are passed as extra arguments to the function. (fn WIDGET PROPERTY &rest ARGS)Flocale-info Access locale data ITEM for the current C locale, if available. ITEM should be one of the following: `codeset', returning the character set as a string (locale item CODESET); `days', returning a 7-element vector of day names (locale items DAY_n); `months', returning a 12-element vector of month names (locale items MON_n); `paper', returning a list (WIDTH HEIGHT) for the default paper size, both measured in millimeters (locale items PAPER_WIDTH, PAPER_HEIGHT). If the system can't provide such information through a call to `nl_langinfo', or if ITEM isn't from the list above, return nil. See also Info node `(libc)Locales'. The data read from the system are decoded using `locale-coding-system'. (fn ITEM)Fbase64-encode-region Base64-encode the region between BEG and END. Return the length of the encoded text. Optional third argument NO-LINE-BREAK means do not break long lines into shorter lines. (fn BEG END &optional NO-LINE-BREAK)Fbase64-encode-string Base64-encode STRING and return the result. Optional second argument NO-LINE-BREAK means do not break long lines into shorter lines. (fn STRING &optional NO-LINE-BREAK)Fbase64-decode-region Base64-decode the region between BEG and END. Return the length of the decoded text. If the region can't be decoded, signal an error and don't modify the buffer. (fn BEG END)Fbase64-decode-string Base64-decode STRING and return the result. (fn STRING)Fsxhash-eq Return an integer hash code for OBJ suitable for `eq'. If (eq A B), then (= (sxhash-eq A) (sxhash-eq B)). (fn OBJ)Fsxhash-eql Return an integer hash code for OBJ suitable for `eql'. If (eql A B), then (= (sxhash-eql A) (sxhash-eql B)). (fn OBJ)Fsxhash-equal Return an integer hash code for OBJ suitable for `equal'. If (equal A B), then (= (sxhash-equal A) (sxhash-equal B)). (fn OBJ)Fmake-hash-table Create and return a new hash table. Arguments are specified as keyword/argument pairs. The following arguments are defined: :test TEST -- TEST must be a symbol that specifies how to compare keys. Default is `eql'. Predefined are the tests `eq', `eql', and `equal'. User-supplied test and hash functions can be specified via `define-hash-table-test'. :size SIZE -- A hint as to how many elements will be put in the table. Default is 65. :rehash-size REHASH-SIZE - Indicates how to expand the table when it fills up. If REHASH-SIZE is an integer, increase the size by that amount. If it is a float, it must be > 1.0, and the new size is the old size multiplied by that factor. Default is 1.5. :rehash-threshold THRESHOLD -- THRESHOLD must a float > 0, and <= 1.0. Resize the hash table when the ratio (table entries / table size) exceeds an approximation to THRESHOLD. Default is 0.8125. :weakness WEAK -- WEAK must be one of nil, t, `key', `value', `key-or-value', or `key-and-value'. If WEAK is not nil, the table returned is a weak table. Key/value pairs are removed from a weak hash table when there are no non-weak references pointing to their key, value, one of key or value, or both key and value, depending on WEAK. WEAK t is equivalent to `key-and-value'. Default value of WEAK is nil. :purecopy PURECOPY -- If PURECOPY is non-nil, the table can be copied to pure storage when Emacs is being dumped, making the contents of the table read only. Any further changes to purified tables will result in an error. (fn &rest KEYWORD-ARGS)Fcopy-hash-table Return a copy of hash table TABLE. (fn TABLE)Fhash-table-count Return the number of elements in TABLE. (fn TABLE)Fhash-table-rehash-size Return the current rehash size of TABLE. (fn TABLE)Fhash-table-rehash-threshold Return the current rehash threshold of TABLE. (fn TABLE)Fhash-table-size Return the size of TABLE. The size can be used as an argument to `make-hash-table' to create a hash table than can hold as many elements as TABLE holds without need for resizing. (fn TABLE)Fhash-table-test Return the test TABLE uses. (fn TABLE)Fhash-table-weakness Return the weakness of TABLE. (fn TABLE)Fhash-table-p Return t if OBJ is a Lisp hash table object. (fn OBJ)Fclrhash Clear hash table TABLE and return it. (fn TABLE)Fgethash Look up KEY in TABLE and return its associated value. If KEY is not found, return DFLT which defaults to nil. (fn KEY TABLE &optional DFLT)Fputhash Associate KEY with VALUE in hash table TABLE. If KEY is already present in table, replace its current value with VALUE. In any case, return VALUE. (fn KEY VALUE TABLE)Fremhash Remove KEY from TABLE. (fn KEY TABLE)Fmaphash Call FUNCTION for all entries in hash table TABLE. FUNCTION is called with two arguments, KEY and VALUE. `maphash' always returns nil. (fn FUNCTION TABLE)Fdefine-hash-table-test Define a new hash table test with name NAME, a symbol. In hash tables created with NAME specified as test, use TEST to compare keys, and HASH for computing hash codes of keys. TEST must be a function taking two arguments and returning non-nil if both arguments are the same. HASH must be a function taking one argument and returning an object that is the hash code of the argument. It should be the case that if (eq (funcall HASH x1) (funcall HASH x2)) returns nil, then (funcall TEST x1 x2) also returns nil. (fn NAME TEST HASH)Fsecure-hash-algorithms Return a list of all the supported `secure_hash' algorithms. (fn)Fmd5 Return MD5 message digest of OBJECT, a buffer or string. A message digest is a cryptographic checksum of a document, and the algorithm to calculate it is defined in RFC 1321. The two optional arguments START and END are character positions specifying for which part of OBJECT the message digest should be computed. If nil or omitted, the digest is computed for the whole OBJECT. The MD5 message digest is computed from the result of encoding the text in a coding system, not directly from the internal Emacs form of the text. The optional fourth argument CODING-SYSTEM specifies which coding system to encode the text with. It should be the same coding system that you used or will use when actually writing the text into a file. If CODING-SYSTEM is nil or omitted, the default depends on OBJECT. If OBJECT is a buffer, the default for CODING-SYSTEM is whatever coding system would be chosen by default for writing this text into a file. If OBJECT is a string, the most preferred coding system (see the command `prefer-coding-system') is used. If NOERROR is non-nil, silently assume the `raw-text' coding if the guesswork fails. Normally, an error is signaled in such case. (fn OBJECT &optional START END CODING-SYSTEM NOERROR)Fsecure-hash Return the secure hash of OBJECT, a buffer or string. ALGORITHM is a symbol specifying the hash to use: md5, sha1, sha224, sha256, sha384 or sha512. The two optional arguments START and END are positions specifying for which part of OBJECT to compute the hash. If nil or omitted, uses the whole OBJECT. The full list of algorithms can be obtained with `secure-hash-algorithms'. If BINARY is non-nil, returns a string in binary form. (fn ALGORITHM OBJECT &optional START END BINARY)Fbuffer-hash Return a hash of the contents of BUFFER-OR-NAME. This hash is performed on the raw internal format of the buffer, disregarding any coding systems. If nil, use the current buffer. (fn &optional BUFFER-OR-NAME)Voverriding-plist-environment An alist that overrides the plists of the symbols which it lists. Used by the byte-compiler to apply `define-symbol-prop' during compilation.Vfeatures A list of symbols which are the features of the executing Emacs. Used by `featurep' and `require', and altered by `provide'.Vuse-dialog-box Non-nil means mouse commands use dialog boxes to ask questions. This applies to `y-or-n-p' and `yes-or-no-p' questions asked by commands invoked by mouse clicks and mouse menu items. On some platforms, file selection dialogs are also enabled if this is non-nil.Vuse-file-dialog Non-nil means mouse commands use a file dialog to ask for files. This applies to commands from menus and tool bar buttons even when they are initiated from the keyboard. If `use-dialog-box' is nil, that disables the use of a file dialog, regardless of the value of this variable.Sfont.o Ffontp Return t if OBJECT is a font-spec, font-entity, or font-object. Return nil otherwise. Optional 2nd argument EXTRA-TYPE, if non-nil, specifies to check which kind of font it is. It must be one of `font-spec', `font-entity', `font-object'. (fn OBJECT &optional EXTRA-TYPE)Ffont-spec Return a newly created font-spec with arguments as properties. ARGS must come in pairs KEY VALUE of font properties. KEY must be a valid font property name listed below: `:family', `:weight', `:slant', `:width' They are the same as face attributes of the same name. See `set-face-attribute'. `:foundry' VALUE must be a string or a symbol specifying the font foundry, e.g. `misc'. `:adstyle' VALUE must be a string or a symbol specifying the additional typographic style information of a font, e.g. `sans'. `:registry' VALUE must be a string or a symbol specifying the charset registry and encoding of a font, e.g. `iso8859-1'. `:size' VALUE must be a non-negative integer or a floating point number specifying the font size. It specifies the font size in pixels (if VALUE is an integer), or in points (if VALUE is a float). `:name' VALUE must be a string of XLFD-style or fontconfig-style font name. `:script' VALUE must be a symbol representing a script that the font must support. It may be a symbol representing a subgroup of a script listed in the variable `script-representative-chars'. `:lang' VALUE must be a symbol whose name is a two-letter ISO-639 language name, e.g. `ja'. The value is matched against the "Additional Style" field of the XLFD spec of a font, if it's non-empty, on X, and against the codepages supported by the font on w32. `:otf' VALUE must be a list (SCRIPT-TAG LANGSYS-TAG GSUB [ GPOS ]) to specify required OpenType features. SCRIPT-TAG: OpenType script tag symbol (e.g. `deva'). LANGSYS-TAG: OpenType language system tag symbol, or nil for the default language system. GSUB: List of OpenType GSUB feature tag symbols, or nil if none required. GPOS: List of OpenType GPOS feature tag symbols, or nil if none required. GSUB and GPOS may contain nil elements. In such a case, the font must not have any of the remaining elements. For instance, if the VALUE is `(thai nil nil (mark))', the font must be an OpenType font whose GPOS table of `thai' script's default language system must contain `mark' feature. (fn ARGS...)Ffont-get Return the value of FONT's property KEY. FONT is a font-spec, a font-entity, or a font-object. KEY is any symbol, but these are reserved for specific meanings: :family, :weight, :slant, :width, :foundry, :adstyle, :registry, :size, :name, :script, :otf See the documentation of `font-spec' for their meanings. In addition, if FONT is a font-entity or a font-object, values of :script and :otf are different from those of a font-spec as below: The value of :script may be a list of scripts that are supported by the font. The value of :otf is a cons (GSUB . GPOS) where GSUB and GPOS are lists representing the OpenType features supported by the font by this form: ((SCRIPT (LANGSYS FEATURE ...) ...) ...) SCRIPT, LANGSYS, and FEATURE are all symbols representing OpenType Layout tags. In addition to the keys listed abobe, the following keys are reserved for the specific meanings as below: The value of :combining-capability is non-nil if the font-backend of FONT supports rendering of combining characters for non-OTF fonts. (fn FONT KEY)Ffont-face-attributes Return a plist of face attributes generated by FONT. FONT is a font name, a font-spec, a font-entity, or a font-object. The return value is a list of the form (:family FAMILY :height HEIGHT :weight WEIGHT :slant SLANT :width WIDTH) where FAMILY, HEIGHT, WEIGHT, SLANT, and WIDTH are face attribute values compatible with `set-face-attribute'. Some of these key-attribute pairs may be omitted from the list if they are not specified by FONT. The optional argument FRAME specifies the frame that the face attributes are to be displayed on. If omitted, the selected frame is used. (fn FONT &optional FRAME)Ffont-put Set one property of FONT: give property KEY value VAL. FONT is a font-spec, a font-entity, or a font-object. If FONT is a font-spec, KEY can be any symbol. But if KEY is the one accepted by the function `font-spec' (which see), VAL must be what allowed in `font-spec'. If FONT is a font-entity or a font-object, KEY must not be the one accepted by `font-spec'. (fn FONT PROP VAL)Flist-fonts List available fonts matching FONT-SPEC on the current frame. Optional 2nd argument FRAME specifies the target frame. Optional 3rd argument NUM, if non-nil, limits the number of returned fonts. Optional 4th argument PREFER, if non-nil, is a font-spec to control the order of the returned list. Fonts are sorted by how close they are to PREFER. (fn FONT-SPEC &optional FRAME NUM PREFER)Ffont-family-list List available font families on the current frame. If FRAME is omitted or nil, the selected frame is used. (fn &optional FRAME)Ffind-font Return a font-entity matching with FONT-SPEC on the current frame. Optional 2nd argument FRAME, if non-nil, specifies the target frame. (fn FONT-SPEC &optional FRAME)Ffont-xlfd-name Return XLFD name of FONT. FONT is a font-spec, font-entity, or font-object. If the name is too long for XLFD (maximum 255 chars), return nil. If the 2nd optional arg FOLD-WILDCARDS is non-nil, the consecutive wildcards are folded into one. (fn FONT &optional FOLD-WILDCARDS)Fclear-font-cache Clear font cache of each frame. (fn)Ffont-shape-gstring Shape the glyph-string GSTRING. Shaping means substituting glyphs and/or adjusting positions of glyphs to get the correct visual image of character sequences set in the header of the glyph-string. If the shaping was successful, the value is GSTRING itself or a newly created glyph-string. Otherwise, the value is nil. See the documentation of `composition-get-gstring' for the format of GSTRING. (fn GSTRING)Ffont-variation-glyphs Return a list of variation glyphs for CHAR in FONT-OBJECT. Each element of the value is a cons (VARIATION-SELECTOR . GLYPH-ID), where VARIATION-SELECTOR is a character code of variation selection (#xFE00..#xFE0F or #xE0100..#xE01EF) GLYPH-ID is a glyph code of the corresponding variation glyph. (fn FONT-OBJECT CHARACTER)Finternal-char-font For internal use only. (fn POSITION &optional CH)Ffont-drive-otf Apply OpenType features on glyph-string GSTRING-IN. OTF-FEATURES specifies which features to apply in this format: (SCRIPT LANGSYS GSUB GPOS) where SCRIPT is a symbol specifying a script tag of OpenType, LANGSYS is a symbol specifying a langsys tag of OpenType, GSUB and GPOS, if non-nil, are lists of symbols specifying feature tags. If LANGSYS is nil, the default langsys is selected. The features are applied in the order they appear in the list. The symbol `*' means to apply all available features not present in this list, and the remaining features are ignored. For instance, (vatu pstf * haln) is to apply vatu and pstf in this order, then to apply all available features other than vatu, pstf, and haln. The features are applied to the glyphs in the range FROM and TO of the glyph-string GSTRING-IN. If some feature is actually applicable, the resulting glyphs are produced in the glyph-string GSTRING-OUT from the index INDEX. In this case, the value is the number of produced glyphs. If no feature is applicable, no glyph is produced in GSTRING-OUT, and the value is 0. If GSTRING-OUT is too short to hold produced glyphs, no glyphs are produced in GSTRING-OUT, and the value is nil. See the documentation of `composition-get-gstring' for the format of glyph-string. (fn OTF-FEATURES GSTRING-IN FROM TO GSTRING-OUT INDEX)Ffont-otf-alternates Return a list of alternate glyphs of CHARACTER in FONT-OBJECT. OTF-FEATURES specifies which features of the font FONT-OBJECT to apply in this format: (SCRIPT LANGSYS FEATURE ...) See the documentation of `font-drive-otf' for more detail. The value is a list of cons cells of the format (GLYPH-ID . CHARACTER), where GLYPH-ID is a glyph index of the font, and CHARACTER is a character code corresponding to the glyph or nil if there's no corresponding character. (fn FONT-OBJECT CHARACTER OTF-FEATURES)Fopen-font Open FONT-ENTITY. (fn FONT-ENTITY &optional SIZE FRAME)Fclose-font Close FONT-OBJECT. (fn FONT-OBJECT &optional FRAME)Fquery-font Return information about FONT-OBJECT. The value is a vector: [ NAME FILENAME PIXEL-SIZE SIZE ASCENT DESCENT SPACE-WIDTH AVERAGE-WIDTH CAPABILITY ] NAME is the font name, a string (or nil if the font backend doesn't provide a name). FILENAME is the font file name, a string (or nil if the font backend doesn't provide a file name). PIXEL-SIZE is a pixel size by which the font is opened. SIZE is a maximum advance width of the font in pixels. ASCENT, DESCENT, SPACE-WIDTH, AVERAGE-WIDTH are metrics of the font in pixels. CAPABILITY is a list whose first element is a symbol representing the font format (x, opentype, truetype, type1, pcf, or bdf) and the remaining elements describe the details of the font capability. If the font is OpenType font, the form of the list is (opentype GSUB GPOS) where GSUB shows which "GSUB" features the font supports, and GPOS shows which "GPOS" features the font supports. Both GSUB and GPOS are lists of the format: ((SCRIPT (LANGSYS FEATURE ...) ...) ...) If the font is not OpenType font, currently the length of the form is one. SCRIPT is a symbol representing OpenType script tag. LANGSYS is a symbol representing OpenType langsys tag, or nil representing the default langsys. FEATURE is a symbol representing OpenType feature tag. If the font is not OpenType font, CAPABILITY is nil. (fn FONT-OBJECT)Ffont-get-glyphs Return a vector of FONT-OBJECT's glyphs for the specified characters. FROM and TO are positions (integers or markers) specifying a region of the current buffer, and can be in either order. If the optional fourth arg OBJECT is not nil, it is a string or a vector containing the target characters between indices FROM and TO, which are treated as in `substring'. Each element is a vector containing information of a glyph in this format: [FROM-IDX TO-IDX C CODE WIDTH LBEARING RBEARING ASCENT DESCENT ADJUSTMENT] where FROM is an index numbers of a character the glyph corresponds to. TO is the same as FROM. C is the character of the glyph. CODE is the glyph-code of C in FONT-OBJECT. WIDTH thru DESCENT are the metrics (in pixels) of the glyph. ADJUSTMENT is always nil. If FONT-OBJECT doesn't have a glyph for a character, the corresponding element is nil. (fn FONT-OBJECT FROM TO &optional OBJECT)Ffont-match-p Return t if and only if font-spec SPEC matches with FONT. FONT is a font-spec, font-entity, or font-object. (fn SPEC FONT)Ffont-at Return a font-object for displaying a character at POSITION. Optional second arg WINDOW, if non-nil, is a window displaying the current buffer. It defaults to the currently selected window. Optional third arg STRING, if non-nil, is a string containing the target character at index specified by POSITION. (fn POSITION &optional WINDOW STRING)Fdraw-string Draw STRING by FONT-OBJECT on the top left corner of the current frame. The value is a number of glyphs drawn. Type C-l to recover what previously shown. (fn FONT-OBJECT STRING)Fframe-font-cache Return FRAME's font cache. Mainly used for debugging. If FRAME is omitted or nil, use the selected frame. (fn &optional FRAME)Ffont-info Return information about a font named NAME on frame FRAME. If FRAME is omitted or nil, use the selected frame. The returned value is a vector of 14 elements: [ OPENED-NAME FULL-NAME SIZE HEIGHT BASELINE-OFFSET RELATIVE-COMPOSE DEFAULT-ASCENT MAX-WIDTH ASCENT DESCENT SPACE-WIDTH AVERAGE-WIDTH FILENAME CAPABILITY ] where OPENED-NAME is the name used for opening the font, FULL-NAME is the full name of the font, SIZE is the pixelsize of the font, HEIGHT is the pixel-height of the font (i.e., ascent + descent), BASELINE-OFFSET is the upward offset pixels from ASCII baseline, RELATIVE-COMPOSE and DEFAULT-ASCENT are the numbers controlling how to compose characters, MAX-WIDTH is the maximum advance width of the font, ASCENT, DESCENT, SPACE-WIDTH, and AVERAGE-WIDTH are metrics of the font in pixels, FILENAME is the font file name, a string (or nil if the font backend doesn't provide a file name). CAPABILITY is a list whose first element is a symbol representing the font format, one of `x', `opentype', `truetype', `type1', `pcf', or `bdf'. The remaining elements describe the details of the font capabilities, as follows: If the font is OpenType font, the form of the list is (opentype GSUB GPOS) where GSUB shows which "GSUB" features the font supports, and GPOS shows which "GPOS" features the font supports. Both GSUB and GPOS are lists of the form: ((SCRIPT (LANGSYS FEATURE ...) ...) ...) where SCRIPT is a symbol representing OpenType script tag. LANGSYS is a symbol representing OpenType langsys tag, or nil representing the default langsys. FEATURE is a symbol representing OpenType feature tag. If the font is not an OpenType font, there are no elements in CAPABILITY except the font format symbol. If the named font is not yet loaded, return nil. (fn NAME &optional FRAME)Vfont-encoding-alist Alist of fontname patterns vs the corresponding encoding and repertory info. Each element looks like (REGEXP . (ENCODING . REPERTORY)), where ENCODING is a charset or a char-table, and REPERTORY is a charset, a char-table, or nil. If ENCODING and REPERTORY are the same, the element can have the form (REGEXP . ENCODING). ENCODING is for converting a character to a glyph code of the font. If ENCODING is a charset, encoding a character by the charset gives the corresponding glyph code. If ENCODING is a char-table, looking up the table by a character gives the corresponding glyph code. REPERTORY specifies a repertory of characters supported by the font. If REPERTORY is a charset, all characters belonging to the charset are supported. If REPERTORY is a char-table, all characters who have a non-nil value in the table are supported. If REPERTORY is nil, Emacs gets the repertory information by an opened font and ENCODING.Vfont-weight-table Vector of valid font weight values. Each element has the form: [NUMERIC-VALUE SYMBOLIC-NAME ALIAS-NAME ...] NUMERIC-VALUE is an integer, and SYMBOLIC-NAME and ALIAS-NAME are symbols. This variable cannot be set; trying to do so will signal an error.Vfont-slant-table Vector of font slant symbols vs the corresponding numeric values. See `font-weight-table' for the format of the vector. This variable cannot be set; trying to do so will signal an error.Vfont-width-table Alist of font width symbols vs the corresponding numeric values. See `font-weight-table' for the format of the vector. This variable cannot be set; trying to do so will signal an error.Vfont-log A list that logs font-related actions and results, for debugging. The default value is t, which means to suppress logging. Set it to nil to enable logging. If the environment variable EMACS_FONT_LOG is set at startup, it defaults to nil.Vinhibit-compacting-font-caches If non-nil, don't compact font caches during GC. Some large fonts cause lots of consing and trigger GC. If they are removed from the font caches, they will need to be opened again during redisplay, which slows down redisplay. If you see font-related delays in displaying some special characters, and cannot switch to a smaller font for those characters, set this variable non-nil. Disabling compaction of font caches might enlarge the Emacs memory footprint in sessions that use lots of different fonts.Vxft-ignore-color-fonts Non-nil means don't query fontconfig for color fonts, since they often cause Xft crashes. Only has an effect in Xft builds.Sprint.o Fwrite-char Output character CHARACTER to stream PRINTCHARFUN. PRINTCHARFUN defaults to the value of `standard-output' (which see). (fn CHARACTER &optional PRINTCHARFUN)Fterpri Output a newline to stream PRINTCHARFUN. If ENSURE is non-nil only output a newline if not already at the beginning of a line. Value is non-nil if a newline is printed. If PRINTCHARFUN is omitted or nil, the value of `standard-output' is used. (fn &optional PRINTCHARFUN ENSURE)Fprin1 Output the printed representation of OBJECT, any Lisp object. Quoting characters are printed when needed to make output that `read' can handle, whenever this is possible. For complex objects, the behavior is controlled by `print-level' and `print-length', which see. OBJECT is any of the Lisp data types: a number, a string, a symbol, a list, a buffer, a window, a frame, etc. A printed representation of an object is text which describes that object. Optional argument PRINTCHARFUN is the output stream, which can be one of these: - a buffer, in which case output is inserted into that buffer at point; - a marker, in which case output is inserted at marker's position; - a function, in which case that function is called once for each character of OBJECT's printed representation; - a symbol, in which case that symbol's function definition is called; or - t, in which case the output is displayed in the echo area. If PRINTCHARFUN is omitted, the value of `standard-output' (which see) is used instead. (fn OBJECT &optional PRINTCHARFUN)Fprin1-to-string Return a string containing the printed representation of OBJECT. OBJECT can be any Lisp object. This function outputs quoting characters when necessary to make output that `read' can handle, whenever possible, unless the optional second argument NOESCAPE is non-nil. For complex objects, the behavior is controlled by `print-level' and `print-length', which see. OBJECT is any of the Lisp data types: a number, a string, a symbol, a list, a buffer, a window, a frame, etc. A printed representation of an object is text which describes that object. (fn OBJECT &optional NOESCAPE)Fprinc Output the printed representation of OBJECT, any Lisp object. No quoting characters are used; no delimiters are printed around the contents of strings. OBJECT is any of the Lisp data types: a number, a string, a symbol, a list, a buffer, a window, a frame, etc. A printed representation of an object is text which describes that object. Optional argument PRINTCHARFUN is the output stream, which can be one of these: - a buffer, in which case output is inserted into that buffer at point; - a marker, in which case output is inserted at marker's position; - a function, in which case that function is called once for each character of OBJECT's printed representation; - a symbol, in which case that symbol's function definition is called; or - t, in which case the output is displayed in the echo area. If PRINTCHARFUN is omitted, the value of `standard-output' (which see) is used instead. (fn OBJECT &optional PRINTCHARFUN)Fprint Output the printed representation of OBJECT, with newlines around it. Quoting characters are printed when needed to make output that `read' can handle, whenever this is possible. For complex objects, the behavior is controlled by `print-level' and `print-length', which see. OBJECT is any of the Lisp data types: a number, a string, a symbol, a list, a buffer, a window, a frame, etc. A printed representation of an object is text which describes that object. Optional argument PRINTCHARFUN is the output stream, which can be one of these: - a buffer, in which case output is inserted into that buffer at point; - a marker, in which case output is inserted at marker's position; - a function, in which case that function is called once for each character of OBJECT's printed representation; - a symbol, in which case that symbol's function definition is called; or - t, in which case the output is displayed in the echo area. If PRINTCHARFUN is omitted, the value of `standard-output' (which see) is used instead. (fn OBJECT &optional PRINTCHARFUN)Fexternal-debugging-output Write CHARACTER to stderr. You can call `print' while debugging emacs, and pass it this function to make it write to the debugging output. (fn CHARACTER)Fredirect-debugging-output Redirect debugging output (stderr stream) to file FILE. If FILE is nil, reset target to the initial stderr stream. Optional arg APPEND non-nil (interactively, with prefix arg) means append to existing target file. (fn FILE &optional APPEND)Ferror-message-string Convert an error value (ERROR-SYMBOL . DATA) to an error message. See Info anchor `(elisp)Definition of signal' for some details on how this error message is constructed. (fn OBJ)Fprint--preprocess Extract sharing info from OBJECT needed to print it. Fills `print-number-table'. (fn OBJECT)Vstandard-output Output stream `print' uses by default for outputting a character. This may be any function of one argument. It may also be a buffer (output is inserted before point) or a marker (output is inserted and the marker is advanced) or the symbol t (output appears in the echo area).Vfloat-output-format The format descriptor string used to print floats. This is a %-spec like those accepted by `printf' in C, but with some restrictions. It must start with the two characters `%.'. After that comes an integer precision specification, and then a letter which controls the format. The letters allowed are `e', `f' and `g'. Use `e' for exponential notation "DIG.DIGITSeEXPT" Use `f' for decimal point notation "DIGITS.DIGITS". Use `g' to choose the shorter of those two formats for the number at hand. The precision in any of these cases is the number of digits following the decimal point. With `f', a precision of 0 means to omit the decimal point. 0 is not allowed with `e' or `g'. A value of nil means to use the shortest notation that represents the number without losing information.Vprint-length Maximum length of list to print before abbreviating. A value of nil means no limit. See also `eval-expression-print-length'.Vprint-level Maximum depth of list nesting to print before abbreviating. A value of nil means no limit. See also `eval-expression-print-level'.Vprint-escape-newlines Non-nil means print newlines in strings as `\n'. Also print formfeeds as `\f'.Vprint-escape-control-characters Non-nil means print control characters in strings as `\OOO'. (OOO is the octal representation of the character code.)Vprint-escape-nonascii Non-nil means print unibyte non-ASCII chars in strings as \OOO. (OOO is the octal representation of the character code.) Only single-byte characters are affected, and only in `prin1'. When the output goes in a multibyte buffer, this feature is enabled regardless of the value of the variable.Vprint-escape-multibyte Non-nil means print multibyte characters in strings as \xXXXX. (XXXX is the hex representation of the character code.) This affects only `prin1'.Vprint-quoted Non-nil means print quoted forms with reader syntax. I.e., (quote foo) prints as \='foo, (function foo) as #\='foo.Vprint-gensym Non-nil means print uninterned symbols so they will read as uninterned. I.e., the value of (make-symbol "foobar") prints as #:foobar. When the uninterned symbol appears multiple times within the printed expression, and `print-circle' is non-nil, in addition use the #N# and #N= constructs as needed, so that multiple references to the same symbol are shared once again when the text is read back.Vprint-circle Non-nil means print recursive structures using #N= and #N# syntax. If nil, printing proceeds recursively and may lead to `max-lisp-eval-depth' being exceeded or an error may occur: "Apparently circular structure being printed." Also see `print-length' and `print-level'. If non-nil, shared substructures anywhere in the structure are printed with `#N=' before the first occurrence (in the order of the print representation) and `#N#' in place of each subsequent occurrence, where N is a positive decimal integer.Vprint-continuous-numbering Non-nil means number continuously across print calls. This affects the numbers printed for #N= labels and #M# references. See also `print-circle', `print-gensym', and `print-number-table'. This variable should not be set with `setq'; bind it with a `let' instead.Vprint-number-table A vector used internally to produce `#N=' labels and `#N#' references. The Lisp printer uses this vector to detect Lisp objects referenced more than once. When you bind `print-continuous-numbering' to t, you should probably also bind `print-number-table' to nil. This ensures that the value of `print-number-table' can be garbage-collected once the printing is done. If all elements of `print-number-table' are nil, it means that the printing done so far has not found any shared structure or objects that need to be recorded in the table.Vprint-charset-text-property A flag to control printing of `charset' text property on printing a string. The value must be nil, t, or `default'. If the value is nil, don't print the text property `charset'. If the value is t, always print the text property `charset'. If the value is `default', print the text property `charset' only when the value is different from what is guessed in the current charset priorities.Slread.o Fread-char Read a character event from the command input (keyboard or macro). It is returned as a number. If the event has modifiers, they are resolved and reflected in the returned character code if possible (e.g. C-SPC yields 0 and C-a yields 97). If some of the modifiers cannot be reflected in the character code, the returned value will include those modifiers, and will not be a valid character code: it will fail the `characterp' test. Use `event-basic-type' to recover the character code with the modifiers removed. If the user generates an event which is not a character (i.e. a mouse click or function key event), `read-char' signals an error. As an exception, switch-frame events are put off until non-character events can be read. If you want to read non-character events, or ignore them, call `read-event' or `read-char-exclusive' instead. If the optional argument PROMPT is non-nil, display that as a prompt. If the optional argument INHERIT-INPUT-METHOD is non-nil and some input method is turned on in the current buffer, that input method is used for reading a character. If the optional argument SECONDS is non-nil, it should be a number specifying the maximum number of seconds to wait for input. If no input arrives in that time, return nil. SECONDS may be a floating-point value. (fn &optional PROMPT INHERIT-INPUT-METHOD SECONDS)Fread-event Read an event object from the input stream. If the optional argument PROMPT is non-nil, display that as a prompt. If the optional argument INHERIT-INPUT-METHOD is non-nil and some input method is turned on in the current buffer, that input method is used for reading a character. If the optional argument SECONDS is non-nil, it should be a number specifying the maximum number of seconds to wait for input. If no input arrives in that time, return nil. SECONDS may be a floating-point value. (fn &optional PROMPT INHERIT-INPUT-METHOD SECONDS)Fread-char-exclusive Read a character event from the command input (keyboard or macro). It is returned as a number. Non-character events are ignored. If the event has modifiers, they are resolved and reflected in the returned character code if possible (e.g. C-SPC yields 0 and C-a yields 97). If some of the modifiers cannot be reflected in the character code, the returned value will include those modifiers, and will not be a valid character code: it will fail the `characterp' test. Use `event-basic-type' to recover the character code with the modifiers removed. If the optional argument PROMPT is non-nil, display that as a prompt. If the optional argument INHERIT-INPUT-METHOD is non-nil and some input method is turned on in the current buffer, that input method is used for reading a character. If the optional argument SECONDS is non-nil, it should be a number specifying the maximum number of seconds to wait for input. If no input arrives in that time, return nil. SECONDS may be a floating-point value. (fn &optional PROMPT INHERIT-INPUT-METHOD SECONDS)Fget-file-char Don't use this yourself. (fn)Fget-load-suffixes Return the suffixes that `load' should try if a suffix is required. This uses the variables `load-suffixes' and `load-file-rep-suffixes'. (fn)Fload Execute a file of Lisp code named FILE. First try FILE with `.elc' appended, then try with `.el', then try with a system-dependent suffix of dynamic modules (see `load-suffixes'), then try FILE unmodified (the exact suffixes in the exact order are determined by `load-suffixes'). Environment variable references in FILE are replaced with their values by calling `substitute-in-file-name'. This function searches the directories in `load-path'. If optional second arg NOERROR is non-nil, report no error if FILE doesn't exist. Print messages at start and end of loading unless optional third arg NOMESSAGE is non-nil (but `force-load-messages' overrides that). If optional fourth arg NOSUFFIX is non-nil, don't try adding suffixes to the specified name FILE. If optional fifth arg MUST-SUFFIX is non-nil, insist on the suffix `.elc' or `.el' or the module suffix; don't accept just FILE unless it ends in one of those suffixes or includes a directory name. If NOSUFFIX is nil, then if a file could not be found, try looking for a different representation of the file by adding non-empty suffixes to its name, before trying another file. Emacs uses this feature to find compressed versions of files when Auto Compression mode is enabled. If NOSUFFIX is non-nil, disable this feature. The suffixes that this function tries out, when NOSUFFIX is nil, are given by the return value of `get-load-suffixes' and the values listed in `load-file-rep-suffixes'. If MUST-SUFFIX is non-nil, only the return value of `get-load-suffixes' is used, i.e. the file name is required to have a non-empty suffix. When searching suffixes, this function normally stops at the first one that exists. If the option `load-prefer-newer' is non-nil, however, it tries all suffixes, and uses whichever file is the newest. Loading a file records its definitions, and its `provide' and `require' calls, in an element of `load-history' whose car is the file name loaded. See `load-history'. While the file is in the process of being loaded, the variable `load-in-progress' is non-nil and the variable `load-file-name' is bound to the file's name. Return t if the file exists and loads successfully. (fn FILE &optional NOERROR NOMESSAGE NOSUFFIX MUST-SUFFIX)Flocate-file-internal Search for FILENAME through PATH. Returns the file's name in absolute form, or nil if not found. If SUFFIXES is non-nil, it should be a list of suffixes to append to file name when searching. If non-nil, PREDICATE is used instead of `file-readable-p'. PREDICATE can also be an integer to pass to the faccessat(2) function, in which case file-name-handlers are ignored. This function will normally skip directories, so if you want it to find directories, make sure the PREDICATE function returns `dir-ok' for them. (fn FILENAME PATH &optional SUFFIXES PREDICATE)Feval-buffer Execute the accessible portion of current buffer as Lisp code. You can use \[narrow-to-region] to limit the part of buffer to be evaluated. When called from a Lisp program (i.e., not interactively), this function accepts up to five optional arguments: BUFFER is the buffer to evaluate (nil means use current buffer), or a name of a buffer (a string). PRINTFLAG controls printing of output by any output functions in the evaluated code, such as `print', `princ', and `prin1': a value of nil means discard it; anything else is the stream to print to. See Info node `(elisp)Output Streams' for details on streams. FILENAME specifies the file name to use for `load-history'. UNIBYTE, if non-nil, specifies `load-convert-to-unibyte' for this invocation. DO-ALLOW-PRINT, if non-nil, specifies that output functions in the evaluated code should work normally even if PRINTFLAG is nil, in which case the output is displayed in the echo area. This function preserves the position of point. (fn &optional BUFFER PRINTFLAG FILENAME UNIBYTE DO-ALLOW-PRINT)Feval-region Execute the region as Lisp code. When called from programs, expects two arguments, giving starting and ending indices in the current buffer of the text to be executed. Programs can pass third argument PRINTFLAG which controls output: a value of nil means discard it; anything else is stream for printing it. See Info node `(elisp)Output Streams' for details on streams. Also the fourth argument READ-FUNCTION, if non-nil, is used instead of `read' to read each expression. It gets one argument which is the input stream for reading characters. This function does not move point. (fn START END &optional PRINTFLAG READ-FUNCTION)Fread Read one Lisp expression as text from STREAM, return as Lisp object. If STREAM is nil, use the value of `standard-input' (which see). STREAM or the value of `standard-input' may be: a buffer (read from point and advance it) a marker (read from where it points and advance it) a function (call it with no arguments for each character, call it with a char as argument to push a char back) a string (takes text from string, starting at the beginning) t (read text line using minibuffer and use it, or read from standard input in batch mode). (fn &optional STREAM)Fread-from-string Read one Lisp expression which is represented as text by STRING. Returns a cons: (OBJECT-READ . FINAL-STRING-INDEX). FINAL-STRING-INDEX is an integer giving the position of the next remaining character in STRING. START and END optionally delimit a substring of STRING from which to read; they default to 0 and (length STRING) respectively. Negative values are counted from the end of STRING. (fn STRING &optional START END)Flread--substitute-object-in-subtree In OBJECT, replace every occurrence of PLACEHOLDER with OBJECT. COMPLETED is a hash table of objects that might be circular, or is t if any object might be circular. (fn OBJECT PLACEHOLDER COMPLETED)Fintern Return the canonical symbol whose name is STRING. If there is none, one is created by this function and returned. A second optional argument specifies the obarray to use; it defaults to the value of `obarray'. (fn STRING &optional OBARRAY)Fintern-soft Return the canonical symbol named NAME, or nil if none exists. NAME may be a string or a symbol. If it is a symbol, that exact symbol is searched for. A second optional argument specifies the obarray to use; it defaults to the value of `obarray'. (fn NAME &optional OBARRAY)Funintern Delete the symbol named NAME, if any, from OBARRAY. The value is t if a symbol was found and deleted, nil otherwise. NAME may be a string or a symbol. If it is a symbol, that symbol is deleted, if it belongs to OBARRAY--no other symbol is deleted. OBARRAY, if nil, defaults to the value of the variable `obarray'. (fn NAME OBARRAY)Fmapatoms Call FUNCTION on every symbol in OBARRAY. OBARRAY defaults to the value of `obarray'. (fn FUNCTION &optional OBARRAY)Vobarray Symbol table for use by `intern' and `read'. It is a vector whose length ought to be prime for best results. The vector's contents don't make sense if examined from Lisp programs; to find all the symbols in an obarray, use `mapatoms'.Vvalues List of values of all expressions which were read, evaluated and printed. Order is reverse chronological.Vstandard-input Stream for read to get input from. See documentation of `read' for possible values.Vread-with-symbol-positions If non-nil, add position of read symbols to `read-symbol-positions-list'. If this variable is a buffer, then only forms read from that buffer will be added to `read-symbol-positions-list'. If this variable is t, then all read forms will be added. The effect of all other values other than nil are not currently defined, although they may be in the future. The positions are relative to the last call to `read' or `read-from-string'. It is probably a bad idea to set this variable at the toplevel; bind it instead.Vread-symbol-positions-list A list mapping read symbols to their positions. This variable is modified during calls to `read' or `read-from-string', but only when `read-with-symbol-positions' is non-nil. Each element of the list looks like (SYMBOL . CHAR-POSITION), where CHAR-POSITION is an integer giving the offset of that occurrence of the symbol from the position where `read' or `read-from-string' started. Note that a symbol will appear multiple times in this list, if it was read multiple times. The list is in the same order as the symbols were read in.Vread-circle Non-nil means read recursive structures using #N= and #N# syntax.Vload-path List of directories to search for files to load. Each element is a string (directory file name) or nil (meaning `default-directory'). This list is consulted by the `require' function. Initialized during startup as described in Info node `(elisp)Library Search'. Use `directory-file-name' when adding items to this path. However, Lisp programs that process this list should tolerate directories both with and without trailing slashes.Vload-suffixes List of suffixes for Emacs Lisp files and dynamic modules. This list includes suffixes for both compiled and source Emacs Lisp files. This list should not include the empty string. `load' and related functions try to append these suffixes, in order, to the specified file name if a suffix is allowed or required.Vmodule-file-suffix Suffix of loadable module file, or nil if modules are not supported.Vload-file-rep-suffixes List of suffixes that indicate representations of the same file. This list should normally start with the empty string. Enabling Auto Compression mode appends the suffixes in `jka-compr-load-suffixes' to this list and disabling Auto Compression mode removes them again. `load' and related functions use this list to determine whether they should look for compressed versions of a file and, if so, which suffixes they should try to append to the file name in order to do so. However, if you want to customize which suffixes the loading functions recognize as compression suffixes, you should customize `jka-compr-load-suffixes' rather than the present variable.Vload-in-progress Non-nil if inside of `load'.Vafter-load-alist An alist of functions to be evalled when particular files are loaded. Each element looks like (REGEXP-OR-FEATURE FUNCS...). REGEXP-OR-FEATURE is either a regular expression to match file names, or a symbol (a feature name). When `load' is run and the file-name argument matches an element's REGEXP-OR-FEATURE, or when `provide' is run and provides the symbol REGEXP-OR-FEATURE, the FUNCS in the element are called. An error in FORMS does not undo the load, but does prevent execution of the rest of the FORMS.Vload-history Alist mapping loaded file names to symbols and features. Each alist element should be a list (FILE-NAME ENTRIES...), where FILE-NAME is the name of a file that has been loaded into Emacs. The file name is absolute and true (i.e. it doesn't contain symlinks). As an exception, one of the alist elements may have FILE-NAME nil, for symbols and features not associated with any file. The remaining ENTRIES in the alist element describe the functions and variables defined in that file, the features provided, and the features required. Each entry has the form `(provide . FEATURE)', `(require . FEATURE)', `(defun . FUNCTION)', `(autoload . SYMBOL)', `(defface . SYMBOL)', `(define-type . SYMBOL)', `(cl-defmethod METHOD SPECIALIZERS)', or `(t . SYMBOL)'. Entries like `(t . SYMBOL)' may precede a `(defun . FUNCTION)' entry, and means that SYMBOL was an autoload before this file redefined it as a function. In addition, entries may also be single symbols, which means that symbol was defined by `defvar' or `defconst'. During preloading, the file name recorded is relative to the main Lisp directory. These file names are converted to absolute at startup.Vload-file-name Full name of file being loaded by `load'.Vuser-init-file File name, including directory, of user's initialization file. If the file loaded had extension `.elc', and the corresponding source file exists, this variable contains the name of source file, suitable for use by functions like `custom-save-all' which edit the init file. While Emacs loads and evaluates the init file, value is the real name of the file, regardless of whether or not it has the `.elc' extension.Vcurrent-load-list Used for internal purposes by `load'.Vload-read-function Function used by `load' and `eval-region' for reading expressions. Called with a single argument (the stream from which to read). The default is to use the function `read'.Vload-source-file-function Function called in `load' to load an Emacs Lisp source file. The value should be a function for doing code conversion before reading a source file. It can also be nil, in which case loading is done without any code conversion. If the value is a function, it is called with four arguments, FULLNAME, FILE, NOERROR, NOMESSAGE. FULLNAME is the absolute name of the file to load, FILE is the non-absolute name (for messages etc.), and NOERROR and NOMESSAGE are the corresponding arguments passed to `load'. The function should return t if the file was loaded.Vload-force-doc-strings Non-nil means `load' should force-load all dynamic doc strings. This is useful when the file being loaded is a temporary copy.Vload-convert-to-unibyte Non-nil means `read' converts strings to unibyte whenever possible. This is normally bound by `load' and `eval-buffer' to control `read', and is not meant for users to change.Vsource-directory Directory in which Emacs sources were found when Emacs was built. You cannot count on them to still be there!Vpreloaded-file-list List of files that were preloaded (when dumping Emacs).Vbyte-boolean-vars List of all DEFVAR_BOOL variables, used by the byte code optimizer.Vload-dangerous-libraries Non-nil means load dangerous compiled Lisp files. Some versions of XEmacs use different byte codes than Emacs. These incompatible byte codes can make Emacs crash when it tries to execute them.Vforce-load-messages Non-nil means force printing messages when loading Lisp files. This overrides the value of the NOMESSAGE argument to `load'.Vbytecomp-version-regexp Regular expression matching safe to load compiled Lisp files. When Emacs loads a compiled Lisp file, it reads the first 512 bytes from the file, and matches them against this regular expression. When the regular expression matches, the file is considered to be safe to load. See also `load-dangerous-libraries'.Vlexical-binding Whether to use lexical binding when evaluating code. Non-nil means that the code in the current buffer should be evaluated with lexical binding. This variable is automatically set from the file variables of an interpreted Lisp file read using `load'. Unlike other file local variables, this must be set in the first line of a file.Veval-buffer-list List of buffers being read from by calls to `eval-buffer' and `eval-region'.Vlread--old-style-backquotes Set to non-nil when `read' encounters an old-style backquote. For internal use only.Vlread--unescaped-character-literals List of deprecated unescaped character literals encountered by `read'. For internal use only.Vload-prefer-newer Non-nil means `load' prefers the newest version of a file. This applies when a filename suffix is not explicitly specified and `load' is trying various possible suffixes (see `load-suffixes' and `load-file-rep-suffixes'). Normally, it stops at the first file that exists unless you explicitly specify one or the other. If this option is non-nil, it checks all suffixes and uses whichever file is newest. Note that if you customize this, obviously it will not affect files that are loaded before your customizations are read!Ssyntax.o Fsyntax-table-p Return t if OBJECT is a syntax table. Currently, any char-table counts as a syntax table. (fn OBJECT)Fsyntax-table Return the current syntax table. This is the one specified by the current buffer. (fn)Fstandard-syntax-table Return the standard syntax table. This is the one used for new buffers. (fn)Fcopy-syntax-table Construct a new syntax table and return it. It is a copy of the TABLE, which defaults to the standard syntax table. (fn &optional TABLE)Fset-syntax-table Select a new syntax table for the current buffer. One argument, a syntax table. (fn TABLE)Fchar-syntax Return the syntax code of CHARACTER, described by a character. For example, if CHARACTER is a word constituent, the character `w' (119) is returned. The characters that correspond to various syntax codes are listed in the documentation of `modify-syntax-entry'. If you're trying to determine the syntax of characters in the buffer, this is probably the wrong function to use, because it can't take `syntax-table' text properties into account. Consider using `syntax-after' instead. (fn CHARACTER)Fmatching-paren Return the matching parenthesis of CHARACTER, or nil if none. (fn CHARACTER)Fstring-to-syntax Convert a syntax descriptor STRING into a raw syntax descriptor. STRING should be a string of the form allowed as argument of `modify-syntax-entry'. The return value is a raw syntax descriptor: a cons cell (CODE . MATCHING-CHAR) which can be used, for example, as the value of a `syntax-table' text property. (fn STRING)Fmodify-syntax-entry Set syntax for character CHAR according to string NEWENTRY. The syntax is changed only for table SYNTAX-TABLE, which defaults to the current buffer's syntax table. CHAR may be a cons (MIN . MAX), in which case, syntaxes of all characters in the range MIN to MAX are changed. The first character of NEWENTRY should be one of the following: Space or - whitespace syntax. w word constituent. _ symbol constituent. . punctuation. ( open-parenthesis. ) close-parenthesis. " string quote. \ escape. $ paired delimiter. \=' expression quote or prefix operator. < comment starter. > comment ender. / character-quote. @ inherit from parent table. | generic string fence. ! generic comment fence. Only single-character comment start and end sequences are represented thus. Two-character sequences are represented as described below. The second character of NEWENTRY is the matching parenthesis, used only if the first character is `(' or `)'. Any additional characters are flags. Defined flags are the characters 1, 2, 3, 4, b, p, and n. 1 means CHAR is the start of a two-char comment start sequence. 2 means CHAR is the second character of such a sequence. 3 means CHAR is the start of a two-char comment end sequence. 4 means CHAR is the second character of such a sequence. There can be several orthogonal comment sequences. This is to support language modes such as C++. By default, all comment sequences are of style a, but you can set the comment sequence style to b (on the second character of a comment-start, and the first character of a comment-end sequence) and/or c (on any of its chars) using this flag: b means CHAR is part of comment sequence b. c means CHAR is part of comment sequence c. n means CHAR is part of a nestable comment sequence. p means CHAR is a prefix character for `backward-prefix-chars'; such characters are treated as whitespace when they occur between expressions. (fn CHAR NEWENTRY &optional SYNTAX-TABLE)Finternal-describe-syntax-value Insert a description of the internal syntax description SYNTAX at point. (fn SYNTAX)Fforward-word Move point forward ARG words (backward if ARG is negative). If ARG is omitted or nil, move point forward one word. Normally returns t. If an edge of the buffer or a field boundary is reached, point is left there and the function returns nil. Field boundaries are not noticed if `inhibit-field-text-motion' is non-nil. The word boundaries are normally determined by the buffer's syntax table and character script (according to `char-script-table'), but `find-word-boundary-function-table', such as set up by `subword-mode', can change that. If a Lisp program needs to move by words determined strictly by the syntax table, it should use `forward-word-strictly' instead. See Info node `(elisp) Word Motion' for details. (fn &optional ARG)Fskip-chars-forward Move point forward, stopping before a char not in STRING, or at pos LIM. STRING is like the inside of a `[...]' in a regular expression except that `]' is never special and `\' quotes `^', `-' or `\' (but not at the end of a range; quoting is never needed there). Thus, with arg "a-zA-Z", this skips letters stopping before first nonletter. With arg "^a-zA-Z", skips nonletters stopping before first letter. Char classes, e.g. `[:alpha:]', are supported. Returns the distance traveled, either zero or positive. (fn STRING &optional LIM)Fskip-chars-backward Move point backward, stopping after a char not in STRING, or at pos LIM. See `skip-chars-forward' for details. Returns the distance traveled, either zero or negative. (fn STRING &optional LIM)Fskip-syntax-forward Move point forward across chars in specified syntax classes. SYNTAX is a string of syntax code characters. Stop before a char whose syntax is not in SYNTAX, or at position LIM. If SYNTAX starts with ^, skip characters whose syntax is NOT in SYNTAX. This function returns the distance traveled, either zero or positive. (fn SYNTAX &optional LIM)Fskip-syntax-backward Move point backward across chars in specified syntax classes. SYNTAX is a string of syntax code characters. Stop on reaching a char whose syntax is not in SYNTAX, or at position LIM. If SYNTAX starts with ^, skip characters whose syntax is NOT in SYNTAX. This function returns either zero or a negative number, and the absolute value of this is the distance traveled. (fn SYNTAX &optional LIM)Fforward-comment Move forward across up to COUNT comments. If COUNT is negative, move backward. Stop scanning if we find something other than a comment or whitespace. Set point to where scanning stops. If COUNT comments are found as expected, with nothing except whitespace between them, return t; otherwise return nil. (fn COUNT)Fscan-lists Scan from character number FROM by COUNT lists. Scan forward if COUNT is positive, backward if COUNT is negative. Return the character number of the position thus found. A "list", in this context, refers to a balanced parenthetical grouping, as determined by the syntax table. If DEPTH is nonzero, treat that as the nesting depth of the starting point (i.e. the starting point is DEPTH parentheses deep). This function scans over parentheses until the depth goes to zero COUNT times. Hence, positive DEPTH moves out that number of levels of parentheses, while negative DEPTH moves to a deeper level. Comments are ignored if `parse-sexp-ignore-comments' is non-nil. If we reach the beginning or end of the accessible part of the buffer before we have scanned over COUNT lists, return nil if the depth at that point is zero, and signal an error if the depth is nonzero. (fn FROM COUNT DEPTH)Fscan-sexps Scan from character number FROM by COUNT balanced expressions. If COUNT is negative, scan backwards. Returns the character number of the position thus found. Comments are ignored if `parse-sexp-ignore-comments' is non-nil. If the beginning or end of (the accessible part of) the buffer is reached in the middle of a parenthetical grouping, an error is signaled. If the beginning or end is reached between groupings but before count is used up, nil is returned. (fn FROM COUNT)Fbackward-prefix-chars Move point backward over any number of chars with prefix syntax. This includes chars with expression prefix syntax class (\=') and those with the prefix syntax flag (p). (fn)Fparse-partial-sexp Parse Lisp syntax starting at FROM until TO; return status of parse at TO. Parsing stops at TO or when certain criteria are met; point is set to where parsing stops. If fifth arg OLDSTATE is omitted or nil, parsing assumes that FROM is the beginning of a function. Value is a list of elements describing final state of parsing: 0. depth in parens. 1. character address of start of innermost containing list; nil if none. 2. character address of start of last complete sexp terminated. 3. non-nil if inside a string. (it is the character that will terminate the string, or t if the string should be terminated by a generic string delimiter.) 4. nil if outside a comment, t if inside a non-nestable comment, else an integer (the current comment nesting). 5. t if following a quote character. 6. the minimum paren-depth encountered during this scan. 7. style of comment, if any. 8. character address of start of comment or string; nil if not in one. 9. List of positions of currently open parens, outermost first. 10. When the last position scanned holds the first character of a (potential) two character construct, the syntax of that position, otherwise nil. That construct can be a two character comment delimiter or an Escaped or Char-quoted character. 11..... Possible further internal information used by `parse-partial-sexp'. If third arg TARGETDEPTH is non-nil, parsing stops if the depth in parentheses becomes equal to TARGETDEPTH. Fourth arg STOPBEFORE non-nil means stop when we come to any character that starts a sexp. Fifth arg OLDSTATE is a list like what this function returns. It is used to initialize the state of the parse. Elements number 1, 2, 6 are ignored. Sixth arg COMMENTSTOP non-nil means stop after the start of a comment. If it is the symbol `syntax-table', stop after the start of a comment or a string, or after end of a comment or a string. (fn FROM TO &optional TARGETDEPTH STOPBEFORE OLDSTATE COMMENTSTOP)Vparse-sexp-ignore-comments Non-nil means `forward-sexp', etc., should treat comments as whitespace.Vparse-sexp-lookup-properties Non-nil means `forward-sexp', etc., obey `syntax-table' property. Otherwise, that text property is simply ignored. See the info node `(elisp)Syntax Properties' for a description of the `syntax-table' property.Vsyntax-propertize--done Position up to which syntax-table properties have been set.Vwords-include-escapes Non-nil means `forward-word', etc., should treat escape chars part of words.Vmultibyte-syntax-as-symbol Non-nil means `scan-sexps' treats all multibyte characters as symbol.Vopen-paren-in-column-0-is-defun-start Non-nil means an open paren in column 0 denotes the start of a defun.Vfind-word-boundary-function-table Char table of functions to search for the word boundary. Each function is called with two arguments; POS and LIMIT. POS and LIMIT are character positions in the current buffer. If POS is less than LIMIT, POS is at the first character of a word, and the return value of a function should be a position after the last character of that word. If POS is not less than LIMIT, POS is at the last character of a word, and the return value of a function should be a position at the first character of that word. In both cases, LIMIT bounds the search.Vcomment-end-can-be-escaped Non-nil means an escaped ender inside a comment doesn't end the comment.Sunexelf.o Sbytecode.o Fbyte-code Function used internally in byte-compiled code. The first argument, BYTESTR, is a string of byte code; the second, VECTOR, a vector of constants; the third, MAXDEPTH, the maximum stack depth used in this function. If the third argument is incorrect, Emacs may crash. (fn BYTESTR VECTOR MAXDEPTH)Vbyte-code-meter A vector of vectors which holds a histogram of byte-code usage. (aref (aref byte-code-meter 0) CODE) indicates how many times the byte opcode CODE has been executed. (aref (aref byte-code-meter CODE1) CODE2), where CODE1 is not 0, indicates how many times the byte opcodes CODE1 and CODE2 have been executed in succession.Vbyte-metering-on If non-nil, keep profiling information on byte code usage. The variable byte-code-meter indicates how often each byte opcode is used. If a symbol has a property named `byte-code-meter' whose value is an integer, it is incremented each time that symbol's function is called.Sprocess.o Fprocessp Return t if OBJECT is a process. (fn OBJECT)Fget-process Return the process named NAME, or nil if there is none. (fn NAME)Fdelete-process Delete PROCESS: kill it and forget about it immediately. PROCESS may be a process, a buffer, the name of a process or buffer, or nil, indicating the current buffer's process. (fn PROCESS)Fprocess-status Return the status of PROCESS. The returned value is one of the following symbols: run -- for a process that is running. stop -- for a process stopped but continuable. exit -- for a process that has exited. signal -- for a process that has got a fatal signal. open -- for a network stream connection that is open. listen -- for a network stream server that is listening. closed -- for a network stream connection that is closed. connect -- when waiting for a non-blocking connection to complete. failed -- when a non-blocking connection has failed. nil -- if arg is a process name and no such process exists. PROCESS may be a process, a buffer, the name of a process, or nil, indicating the current buffer's process. (fn PROCESS)Fprocess-exit-status Return the exit status of PROCESS or the signal number that killed it. If PROCESS has not yet exited or died, return 0. (fn PROCESS)Fprocess-id Return the process id of PROCESS. This is the pid of the external process which PROCESS uses or talks to. For a network, serial, and pipe connections, this value is nil. (fn PROCESS)Fprocess-name Return the name of PROCESS, as a string. This is the name of the program invoked in PROCESS, possibly modified to make it unique among process names. (fn PROCESS)Fprocess-command Return the command that was executed to start PROCESS. This is a list of strings, the first string being the program executed and the rest of the strings being the arguments given to it. For a network or serial or pipe connection, this is nil (process is running) or t (process is stopped). (fn PROCESS)Fprocess-tty-name Return the name of the terminal PROCESS uses, or nil if none. This is the terminal that the process itself reads and writes on, not the name of the pty that Emacs uses to talk with that terminal. (fn PROCESS)Fset-process-buffer Set buffer associated with PROCESS to BUFFER (a buffer, or nil). Return BUFFER. (fn PROCESS BUFFER)Fprocess-buffer Return the buffer PROCESS is associated with. The default process filter inserts output from PROCESS into this buffer. (fn PROCESS)Fprocess-mark Return the marker for the end of the last output from PROCESS. (fn PROCESS)Fset-process-filter Give PROCESS the filter function FILTER; nil means default. A value of t means stop accepting output from the process. When a process has a non-default filter, its buffer is not used for output. Instead, each time it does output, the entire string of output is passed to the filter. The filter gets two arguments: the process and the string of output. The string argument is normally a multibyte string, except: - if the process's input coding system is no-conversion or raw-text, it is a unibyte string (the non-converted input), or else - if `default-enable-multibyte-characters' is nil, it is a unibyte string (the result of converting the decoded input multibyte string to unibyte with `string-make-unibyte'). (fn PROCESS FILTER)Fprocess-filter Return the filter function of PROCESS. See `set-process-filter' for more info on filter functions. (fn PROCESS)Fset-process-sentinel Give PROCESS the sentinel SENTINEL; nil for default. The sentinel is called as a function when the process changes state. It gets two arguments: the process, and a string describing the change. (fn PROCESS SENTINEL)Fprocess-sentinel Return the sentinel of PROCESS. See `set-process-sentinel' for more info on sentinels. (fn PROCESS)Fset-process-thread Set the locking thread of PROCESS to be THREAD. If THREAD is nil, the process is unlocked. (fn PROCESS THREAD)Fprocess-thread Return the locking thread of PROCESS. If PROCESS is unlocked, this function returns nil. (fn PROCESS)Fset-process-window-size Tell PROCESS that it has logical window size WIDTH by HEIGHT. Value is t if PROCESS was successfully told about the window size, nil otherwise. (fn PROCESS HEIGHT WIDTH)Fset-process-inherit-coding-system-flag Determine whether buffer of PROCESS will inherit coding-system. If the second argument FLAG is non-nil, then the variable `buffer-file-coding-system' of the buffer associated with PROCESS will be bound to the value of the coding system used to decode the process output. This is useful when the coding system specified for the process buffer leaves either the character code conversion or the end-of-line conversion unspecified, or if the coding system used to decode the process output is more appropriate for saving the process buffer. Binding the variable `inherit-process-coding-system' to non-nil before starting the process is an alternative way of setting the inherit flag for the process which will run. This function returns FLAG. (fn PROCESS FLAG)Fset-process-query-on-exit-flag Specify if query is needed for PROCESS when Emacs is exited. If the second argument FLAG is non-nil, Emacs will query the user before exiting or killing a buffer if PROCESS is running. This function returns FLAG. (fn PROCESS FLAG)Fprocess-query-on-exit-flag Return the current value of query-on-exit flag for PROCESS. (fn PROCESS)Fprocess-contact Return the contact info of PROCESS; t for a real child. For a network or serial or pipe connection, the value depends on the optional KEY arg. If KEY is nil, value is a cons cell of the form (HOST SERVICE) for a network connection or (PORT SPEED) for a serial connection; it is t for a pipe connection. If KEY is t, the complete contact information for the connection is returned, else the specific value for the keyword KEY is returned. See `make-network-process', `make-serial-process', or `make-pipe-process' for the list of keywords. If PROCESS is a non-blocking network process that hasn't been fully set up yet, this function will block until socket setup has completed. (fn PROCESS &optional KEY)Fprocess-plist Return the plist of PROCESS. (fn PROCESS)Fset-process-plist Replace the plist of PROCESS with PLIST. Return PLIST. (fn PROCESS PLIST)Fprocess-connection Return the connection type of PROCESS. The value is nil for a pipe, t or `pty' for a pty, or `stream' for a socket connection. (fn PROCESS)Fprocess-type Return the connection type of PROCESS. The value is either the symbol `real', `network', `serial', or `pipe'. PROCESS may be a process, a buffer, the name of a process or buffer, or nil, indicating the current buffer's process. (fn PROCESS)Fformat-network-address Convert network ADDRESS from internal format to a string. A 4 or 5 element vector represents an IPv4 address (with port number). An 8 or 9 element vector represents an IPv6 address (with port number). If optional second argument OMIT-PORT is non-nil, don't include a port number in the string, even when present in ADDRESS. Return nil if format of ADDRESS is invalid. (fn ADDRESS &optional OMIT-PORT)Fprocess-list Return a list of all processes that are Emacs sub-processes. (fn)Fmake-process Start a program in a subprocess. Return the process object for it. This is similar to `start-process', but arguments are specified as keyword/argument pairs. The following arguments are defined: :name NAME -- NAME is name for process. It is modified if necessary to make it unique. :buffer BUFFER -- BUFFER is the buffer (or buffer-name) to associate with the process. Process output goes at end of that buffer, unless you specify a filter function to handle the output. BUFFER may be also nil, meaning that this process is not associated with any buffer. :command COMMAND -- COMMAND is a list starting with the program file name, followed by strings to give to the program as arguments. :coding CODING -- If CODING is a symbol, it specifies the coding system used for both reading and writing for this process. If CODING is a cons (DECODING . ENCODING), DECODING is used for reading, and ENCODING is used for writing. :noquery BOOL -- When exiting Emacs, query the user if BOOL is nil and the process is running. If BOOL is not given, query before exiting. :stop BOOL -- Start process in the `stopped' state if BOOL non-nil. In the stopped state, a process does not accept incoming data, but you can send outgoing data. The stopped state is cleared by `continue-process' and set by `stop-process'. :connection-type TYPE -- TYPE is control type of device used to communicate with subprocesses. Values are `pipe' to use a pipe, `pty' to use a pty, or nil to use the default specified through `process-connection-type'. :filter FILTER -- Install FILTER as the process filter. :sentinel SENTINEL -- Install SENTINEL as the process sentinel. :stderr STDERR -- STDERR is either a buffer or a pipe process attached to the standard error of subprocess. Specifying this implies `:connection-type' is set to `pipe'. (fn &rest ARGS)Fmake-pipe-process Create and return a bidirectional pipe process. In Emacs, pipes are represented by process objects, so input and output work as for subprocesses, and `delete-process' closes a pipe. However, a pipe process has no process id, it cannot be signaled, and the status codes are different from normal processes. Arguments are specified as keyword/argument pairs. The following arguments are defined: :name NAME -- NAME is the name of the process. It is modified if necessary to make it unique. :buffer BUFFER -- BUFFER is the buffer (or buffer-name) to associate with the process. Process output goes at the end of that buffer, unless you specify a filter function to handle the output. If BUFFER is not given, the value of NAME is used. :coding CODING -- If CODING is a symbol, it specifies the coding system used for both reading and writing for this process. If CODING is a cons (DECODING . ENCODING), DECODING is used for reading, and ENCODING is used for writing. :noquery BOOL -- When exiting Emacs, query the user if BOOL is nil and the process is running. If BOOL is not given, query before exiting. :stop BOOL -- Start process in the `stopped' state if BOOL non-nil. In the stopped state, a pipe process does not accept incoming data, but you can send outgoing data. The stopped state is cleared by `continue-process' and set by `stop-process'. :filter FILTER -- Install FILTER as the process filter. :sentinel SENTINEL -- Install SENTINEL as the process sentinel. (fn &rest ARGS)Fprocess-datagram-address Get the current datagram address associated with PROCESS. If PROCESS is a non-blocking network process that hasn't been fully set up yet, this function will block until socket setup has completed. (fn PROCESS)Fset-process-datagram-address Set the datagram address for PROCESS to ADDRESS. Return nil upon error setting address, ADDRESS otherwise. If PROCESS is a non-blocking network process that hasn't been fully set up yet, this function will block until socket setup has completed. (fn PROCESS ADDRESS)Fset-network-process-option For network process PROCESS set option OPTION to value VALUE. See `make-network-process' for a list of options and values. If optional fourth arg NO-ERROR is non-nil, don't signal an error if OPTION is not a supported option, return nil instead; otherwise return t. If PROCESS is a non-blocking network process that hasn't been fully set up yet, this function will block until socket setup has completed. (fn PROCESS OPTION VALUE &optional NO-ERROR)Fserial-process-configure Configure speed, bytesize, etc. of a serial process. Arguments are specified as keyword/argument pairs. Attributes that are not given are re-initialized from the process's current configuration (available via the function `process-contact') or set to reasonable default values. The following arguments are defined: :process PROCESS :name NAME :buffer BUFFER :port PORT -- Any of these arguments can be given to identify the process that is to be configured. If none of these arguments is given, the current buffer's process is used. :speed SPEED -- SPEED is the speed of the serial port in bits per second, also called baud rate. Any value can be given for SPEED, but most serial ports work only at a few defined values between 1200 and 115200, with 9600 being the most common value. If SPEED is nil, the serial port is not configured any further, i.e., all other arguments are ignored. This may be useful for special serial ports such as Bluetooth-to-serial converters which can only be configured through AT commands. A value of nil for SPEED can be used only when passed through `make-serial-process' or `serial-term'. :bytesize BYTESIZE -- BYTESIZE is the number of bits per byte, which can be 7 or 8. If BYTESIZE is not given or nil, a value of 8 is used. :parity PARITY -- PARITY can be nil (don't use parity), the symbol `odd' (use odd parity), or the symbol `even' (use even parity). If PARITY is not given, no parity is used. :stopbits STOPBITS -- STOPBITS is the number of stopbits used to terminate a byte transmission. STOPBITS can be 1 or 2. If STOPBITS is not given or nil, 1 stopbit is used. :flowcontrol FLOWCONTROL -- FLOWCONTROL determines the type of flowcontrol to be used, which is either nil (don't use flowcontrol), the symbol `hw' (use RTS/CTS hardware flowcontrol), or the symbol `sw' (use XON/XOFF software flowcontrol). If FLOWCONTROL is not given, no flowcontrol is used. `serial-process-configure' is called by `make-serial-process' for the initial configuration of the serial port. Examples: (serial-process-configure :process "/dev/ttyS0" :speed 1200) (serial-process-configure :buffer "COM1" :stopbits 1 :parity \='odd :flowcontrol \='hw) (serial-process-configure :port "\\.\COM13" :bytesize 7) (fn &rest ARGS)Fmake-serial-process Create and return a serial port process. In Emacs, serial port connections are represented by process objects, so input and output work as for subprocesses, and `delete-process' closes a serial port connection. However, a serial process has no process id, it cannot be signaled, and the status codes are different from normal processes. `make-serial-process' creates a process and a buffer, on which you probably want to use `process-send-string'. Try \[serial-term] for an interactive terminal. See below for examples. Arguments are specified as keyword/argument pairs. The following arguments are defined: :port PORT -- (mandatory) PORT is the path or name of the serial port. For example, this could be "/dev/ttyS0" on Unix. On Windows, this could be "COM1", or "\\.\COM10" for ports higher than COM9 (double the backslashes in strings). :speed SPEED -- (mandatory) is handled by `serial-process-configure', which this function calls. :name NAME -- NAME is the name of the process. If NAME is not given, the value of PORT is used. :buffer BUFFER -- BUFFER is the buffer (or buffer-name) to associate with the process. Process output goes at the end of that buffer, unless you specify a filter function to handle the output. If BUFFER is not given, the value of NAME is used. :coding CODING -- If CODING is a symbol, it specifies the coding system used for both reading and writing for this process. If CODING is a cons (DECODING . ENCODING), DECODING is used for reading, and ENCODING is used for writing. :noquery BOOL -- When exiting Emacs, query the user if BOOL is nil and the process is running. If BOOL is not given, query before exiting. :stop BOOL -- Start process in the `stopped' state if BOOL is non-nil. In the stopped state, a serial process does not accept incoming data, but you can send outgoing data. The stopped state is cleared by `continue-process' and set by `stop-process'. :filter FILTER -- Install FILTER as the process filter. :sentinel SENTINEL -- Install SENTINEL as the process sentinel. :plist PLIST -- Install PLIST as the initial plist of the process. :bytesize :parity :stopbits :flowcontrol -- This function calls `serial-process-configure' to handle these arguments. The original argument list, possibly modified by later configuration, is available via the function `process-contact'. Examples: (make-serial-process :port "/dev/ttyS0" :speed 9600) (make-serial-process :port "COM1" :speed 115200 :stopbits 2) (make-serial-process :port "\\.\COM13" :speed 1200 :bytesize 7 :parity \='odd) (make-serial-process :port "/dev/tty.BlueConsole-SPP-1" :speed nil) (fn &rest ARGS)Fmake-network-process Create and return a network server or client process. In Emacs, network connections are represented by process objects, so input and output work as for subprocesses and `delete-process' closes a network connection. However, a network process has no process id, it cannot be signaled, and the status codes are different from normal processes. Arguments are specified as keyword/argument pairs. The following arguments are defined: :name NAME -- NAME is name for process. It is modified if necessary to make it unique. :buffer BUFFER -- BUFFER is the buffer (or buffer-name) to associate with the process. Process output goes at end of that buffer, unless you specify a filter function to handle the output. BUFFER may be also nil, meaning that this process is not associated with any buffer. :host HOST -- HOST is name of the host to connect to, or its IP address. The symbol `local' specifies the local host. If specified for a server process, it must be a valid name or address for the local host, and only clients connecting to that address will be accepted. :service SERVICE -- SERVICE is name of the service desired, or an integer specifying a port number to connect to. If SERVICE is t, a random port number is selected for the server. A port number can be specified as an integer string, e.g., "80", as well as an integer. :type TYPE -- TYPE is the type of connection. The default (nil) is a stream type connection, `datagram' creates a datagram type connection, `seqpacket' creates a reliable datagram connection. :family FAMILY -- FAMILY is the address (and protocol) family for the service specified by HOST and SERVICE. The default (nil) is to use whatever address family (IPv4 or IPv6) that is defined for the host and port number specified by HOST and SERVICE. Other address families supported are: local -- for a local (i.e. UNIX) address specified by SERVICE. ipv4 -- use IPv4 address family only. ipv6 -- use IPv6 address family only. :local ADDRESS -- ADDRESS is the local address used for the connection. This parameter is ignored when opening a client process. When specified for a server process, the FAMILY, HOST and SERVICE args are ignored. :remote ADDRESS -- ADDRESS is the remote partner's address for the connection. This parameter is ignored when opening a stream server process. For a datagram server process, it specifies the initial setting of the remote datagram address. When specified for a client process, the FAMILY, HOST, and SERVICE args are ignored. The format of ADDRESS depends on the address family: - An IPv4 address is represented as a vector of integers [A B C D P] corresponding to numeric IP address A.B.C.D and port number P. - A local address is represented as a string with the address in the local address space. - An "unsupported family" address is represented by a cons (F . AV) where F is the family number and AV is a vector containing the socket address data with one element per address data byte. Do not rely on this format in portable code, as it may depend on implementation defined constants, data sizes, and data structure alignment. :coding CODING -- If CODING is a symbol, it specifies the coding system used for both reading and writing for this process. If CODING is a cons (DECODING . ENCODING), DECODING is used for reading, and ENCODING is used for writing. :nowait BOOL -- If NOWAIT is non-nil for a stream type client process, return without waiting for the connection to complete; instead, the sentinel function will be called with second arg matching "open" (if successful) or "failed" when the connect completes. Default is to use a blocking connect (i.e. wait) for stream type connections. :noquery BOOL -- Query the user unless BOOL is non-nil, and process is running when Emacs is exited. :stop BOOL -- Start process in the `stopped' state if BOOL non-nil. In the stopped state, a server process does not accept new connections, and a client process does not handle incoming traffic. The stopped state is cleared by `continue-process' and set by `stop-process'. :filter FILTER -- Install FILTER as the process filter. :filter-multibyte BOOL -- If BOOL is non-nil, strings given to the process filter are multibyte, otherwise they are unibyte. If this keyword is not specified, the strings are multibyte if the default value of `enable-multibyte-characters' is non-nil. :sentinel SENTINEL -- Install SENTINEL as the process sentinel. :log LOG -- Install LOG as the server process log function. This function is called when the server accepts a network connection from a client. The arguments are SERVER, CLIENT, and MESSAGE, where SERVER is the server process, CLIENT is the new process for the connection, and MESSAGE is a string. :plist PLIST -- Install PLIST as the new process's initial plist. :tls-parameters LIST -- is a list that should be supplied if you're opening a TLS connection. The first element is the TLS type (either `gnutls-x509pki' or `gnutls-anon'), and the remaining elements should be a keyword list accepted by gnutls-boot (as returned by `gnutls-boot-parameters'). :server QLEN -- if QLEN is non-nil, create a server process for the specified FAMILY, SERVICE, and connection type (stream or datagram). If QLEN is an integer, it is used as the max. length of the server's pending connection queue (also known as the backlog); the default queue length is 5. Default is to create a client process. The following network options can be specified for this connection: :broadcast BOOL -- Allow send and receive of datagram broadcasts. :dontroute BOOL -- Only send to directly connected hosts. :keepalive BOOL -- Send keep-alive messages on network stream. :linger BOOL or TIMEOUT -- Send queued messages before closing. :oobinline BOOL -- Place out-of-band data in receive data stream. :priority INT -- Set protocol defined priority for sent packets. :reuseaddr BOOL -- Allow reusing a recently used local address (this is allowed by default for a server process). :bindtodevice NAME -- bind to interface NAME. Using this may require special privileges on some systems. :use-external-socket BOOL -- Use any pre-allocated sockets that have been passed to Emacs. If Emacs wasn't passed a socket, this option is silently ignored. Consult the relevant system programmer's manual pages for more information on using these options. A server process will listen for and accept connections from clients. When a client connection is accepted, a new network process is created for the connection with the following parameters: - The client's process name is constructed by concatenating the server process's NAME and a client identification string. - If the FILTER argument is non-nil, the client process will not get a separate process buffer; otherwise, the client's process buffer is a newly created buffer named after the server process's BUFFER name or process NAME concatenated with the client identification string. - The connection type and the process filter and sentinel parameters are inherited from the server process's TYPE, FILTER and SENTINEL. - The client process's contact info is set according to the client's addressing information (typically an IP address and a port number). - The client process's plist is initialized from the server's plist. Notice that the FILTER and SENTINEL args are never used directly by the server process. Also, the BUFFER argument is not used directly by the server process, but via the optional :log function, accepted (and failed) connections may be logged in the server process's buffer. The original argument list, modified with the actual connection information, is available via the `process-contact' function. (fn &rest ARGS)Fnetwork-interface-list Return an alist of all network interfaces and their network address. Each element is a cons, the car of which is a string containing the interface name, and the cdr is the network address in internal format; see the description of ADDRESS in `make-network-process'. If the information is not available, return nil. (fn)Fnetwork-interface-info Return information about network interface named IFNAME. The return value is a list (ADDR BCAST NETMASK HWADDR FLAGS), where ADDR is the layer 3 address, BCAST is the layer 3 broadcast address, NETMASK is the layer 3 network mask, HWADDR is the layer 2 address, and FLAGS is the current flags of the interface. Data that is unavailable is returned as nil. (fn IFNAME)Faccept-process-output Allow any pending output from subprocesses to be read by Emacs. It is given to their filter functions. Optional argument PROCESS means to return only after output is received from PROCESS or PROCESS closes the connection. Optional second argument SECONDS and third argument MILLISEC specify a timeout; return after that much time even if there is no subprocess output. If SECONDS is a floating point number, it specifies a fractional number of seconds to wait. The MILLISEC argument is obsolete and should be avoided. If optional fourth argument JUST-THIS-ONE is non-nil, accept output from PROCESS only, suspending reading output from other processes. If JUST-THIS-ONE is an integer, don't run any timers either. Return non-nil if we received any output from PROCESS (or, if PROCESS is nil, from any process) before the timeout expired or the corresponding connection was closed. (fn &optional PROCESS SECONDS MILLISEC JUST-THIS-ONE)Finternal-default-process-filter Function used as default process filter. This inserts the process's output into its buffer, if there is one. Otherwise it discards the output. (fn PROC TEXT)Fprocess-send-region Send current contents of region as input to PROCESS. PROCESS may be a process, a buffer, the name of a process or buffer, or nil, indicating the current buffer's process. Called from program, takes three arguments, PROCESS, START and END. If the region is larger than the input buffer of the process (the length of which depends on the process connection type and the operating system), it is sent in several bunches. This may happen even for shorter regions. Output from processes can arrive in between bunches. If PROCESS is a non-blocking network process that hasn't been fully set up yet, this function will block until socket setup has completed. (fn PROCESS START END)Fprocess-send-string Send PROCESS the contents of STRING as input. PROCESS may be a process, a buffer, the name of a process or buffer, or nil, indicating the current buffer's process. If STRING is larger than the input buffer of the process (the length of which depends on the process connection type and the operating system), it is sent in several bunches. This may happen even for shorter strings. Output from processes can arrive in between bunches. If PROCESS is a non-blocking network process that hasn't been fully set up yet, this function will block until socket setup has completed. (fn PROCESS STRING)Fprocess-running-child-p Return non-nil if PROCESS has given the terminal to a child. If the operating system does not make it possible to find out, return t. If we can find out, return the numeric ID of the foreground process group. (fn &optional PROCESS)Finternal-default-interrupt-process Default function to interrupt process PROCESS. It shall be the last element in list `interrupt-process-functions'. See function `interrupt-process' for more details on usage. (fn &optional PROCESS CURRENT-GROUP)Finterrupt-process Interrupt process PROCESS. PROCESS may be a process, a buffer, or the name of a process or buffer. No arg or nil means current buffer's process. Second arg CURRENT-GROUP non-nil means send signal to the current process-group of the process's controlling terminal rather than to the process's own process group. If the process is a shell, this means interrupt current subjob rather than the shell. If CURRENT-GROUP is `lambda', and if the shell owns the terminal, don't send the signal. This function calls the functions of `interrupt-process-functions' in the order of the list, until one of them returns non-`nil'. (fn &optional PROCESS CURRENT-GROUP)Fkill-process Kill process PROCESS. May be process or name of one. See function `interrupt-process' for more details on usage. (fn &optional PROCESS CURRENT-GROUP)Fquit-process Send QUIT signal to process PROCESS. May be process or name of one. See function `interrupt-process' for more details on usage. (fn &optional PROCESS CURRENT-GROUP)Fstop-process Stop process PROCESS. May be process or name of one. See function `interrupt-process' for more details on usage. If PROCESS is a network or serial or pipe connection, inhibit handling of incoming traffic. (fn &optional PROCESS CURRENT-GROUP)Fcontinue-process Continue process PROCESS. May be process or name of one. See function `interrupt-process' for more details on usage. If PROCESS is a network or serial process, resume handling of incoming traffic. (fn &optional PROCESS CURRENT-GROUP)Fsignal-process Send PROCESS the signal with code SIGCODE. PROCESS may also be a number specifying the process id of the process to signal; in this case, the process need not be a child of this Emacs. SIGCODE may be an integer, or a symbol whose name is a signal name. (fn PROCESS SIGCODE)Fprocess-send-eof Make PROCESS see end-of-file in its input. EOF comes after any text already sent to it. PROCESS may be a process, a buffer, the name of a process or buffer, or nil, indicating the current buffer's process. If PROCESS is a network connection, or is a process communicating through a pipe (as opposed to a pty), then you cannot send any more text to PROCESS after you call this function. If PROCESS is a serial process, wait until all output written to the process has been transmitted to the serial port. (fn &optional PROCESS)Finternal-default-process-sentinel Function used as default sentinel for processes. This inserts a status message into the process's buffer, if there is one. (fn PROC MSG)Fset-process-coding-system Set coding systems of PROCESS to DECODING and ENCODING. DECODING will be used to decode subprocess output and ENCODING to encode subprocess input. (fn PROCESS &optional DECODING ENCODING)Fprocess-coding-system Return a cons of coding systems for decoding and encoding of PROCESS. (fn PROCESS)Fset-process-filter-multibyte Set multibyteness of the strings given to PROCESS's filter. If FLAG is non-nil, the filter is given multibyte strings. If FLAG is nil, the filter is given unibyte strings. In this case, all character code conversion except for end-of-line conversion is suppressed. (fn PROCESS FLAG)Fprocess-filter-multibyte-p Return t if a multibyte string is given to PROCESS's filter. (fn PROCESS)Fget-buffer-process Return the (or a) live process associated with BUFFER. BUFFER may be a buffer or the name of one. Return nil if all processes associated with BUFFER have been deleted or killed. (fn BUFFER)Fprocess-inherit-coding-system-flag Return the value of inherit-coding-system flag for PROCESS. If this flag is t, `buffer-file-coding-system' of the buffer associated with PROCESS will inherit the coding system used to decode the process output. (fn PROCESS)Fwaiting-for-user-input-p Return non-nil if Emacs is waiting for input from the user. This is intended for use by asynchronous process output filters and sentinels. (fn)Flist-system-processes Return a list of numerical process IDs of all running processes. If this functionality is unsupported, return nil. See `process-attributes' for getting attributes of a process given its ID. (fn)Fprocess-attributes Return attributes of the process given by its PID, a number. Value is an alist where each element is a cons cell of the form (KEY . VALUE) If this functionality is unsupported, the value is nil. See `list-system-processes' for getting a list of all process IDs. The KEYs of the attributes that this function may return are listed below, together with the type of the associated VALUE (in parentheses). Not all platforms support all of these attributes; unsupported attributes will not appear in the returned alist. Unless explicitly indicated otherwise, numbers can have either integer or floating point values. euid -- Effective user User ID of the process (number) user -- User name corresponding to euid (string) egid -- Effective user Group ID of the process (number) group -- Group name corresponding to egid (string) comm -- Command name (executable name only) (string) state -- Process state code, such as "S", "R", or "T" (string) ppid -- Parent process ID (number) pgrp -- Process group ID (number) sess -- Session ID, i.e. process ID of session leader (number) ttname -- Controlling tty name (string) tpgid -- ID of foreground process group on the process's tty (number) minflt -- number of minor page faults (number) majflt -- number of major page faults (number) cminflt -- cumulative number of minor page faults (number) cmajflt -- cumulative number of major page faults (number) utime -- user time used by the process, in (current-time) format, which is a list of integers (HIGH LOW USEC PSEC) stime -- system time used by the process (current-time) time -- sum of utime and stime (current-time) cutime -- user time used by the process and its children (current-time) cstime -- system time used by the process and its children (current-time) ctime -- sum of cutime and cstime (current-time) pri -- priority of the process (number) nice -- nice value of the process (number) thcount -- process thread count (number) start -- time the process started (current-time) vsize -- virtual memory size of the process in KB's (number) rss -- resident set size of the process in KB's (number) etime -- elapsed time the process is running, in (HIGH LOW USEC PSEC) format pcpu -- percents of CPU time used by the process (floating-point number) pmem -- percents of total physical memory used by process's resident set (floating-point number) args -- command line which invoked the process (string). (fn PID)Vdelete-exited-processes Non-nil means delete processes immediately when they exit. A value of nil means don't delete them until `list-processes' is run.Vprocess-connection-type Control type of device used to communicate with subprocesses. Values are nil to use a pipe, or t or `pty' to use a pty. The value has no effect if the system has no ptys or if all ptys are busy: then a pipe is used in any case. The value takes effect when `start-process' is called.Vprocess-adaptive-read-buffering If non-nil, improve receive buffering by delaying after short reads. On some systems, when Emacs reads the output from a subprocess, the output data is read in very small blocks, potentially resulting in very poor performance. This behavior can be remedied to some extent by setting this variable to a non-nil value, as it will automatically delay reading from such processes, to allow them to produce more output before Emacs tries to read it. If the value is t, the delay is reset after each write to the process; any other non-nil value means that the delay is not reset on write. The variable takes effect when `start-process' is called.Vinterrupt-process-functions List of functions to be called for `interrupt-process'. The arguments of the functions are the same as for `interrupt-process'. These functions are called in the order of the list, until one of them returns non-`nil'.Sgnutls.o Fgnutls-asynchronous-parameters Mark this process as being a pre-init GnuTLS process. The second parameter is the list of parameters to feed to gnutls-boot to finish setting up the connection. (fn PROC PARAMS)Fgnutls-get-initstage Return the GnuTLS init stage of process PROC. See also `gnutls-boot'. (fn PROC)Fgnutls-errorp Return t if ERROR indicates a GnuTLS problem. ERROR is an integer or a symbol with an integer `gnutls-code' property. (fn ERROR)Fgnutls-error-fatalp Return non-nil if ERROR is fatal. ERROR is an integer or a symbol with an integer `gnutls-code' property. Usage: (gnutls-error-fatalp ERROR) (fn ERR)Fgnutls-error-string Return a description of ERROR. ERROR is an integer or a symbol with an integer `gnutls-code' property. (fn ERROR)Fgnutls-deinit Deallocate GnuTLS resources associated with process PROC. See also `gnutls-init'. (fn PROC)Fgnutls-peer-status-warning-describe Describe the warning of a GnuTLS peer status from `gnutls-peer-status'. (fn STATUS-SYMBOL)Fgnutls-peer-status Describe a GnuTLS PROC peer certificate and any warnings about it. The return value is a property list with top-level keys :warnings and :certificate. The :warnings entry is a list of symbols you can describe with `gnutls-peer-status-warning-describe'. (fn PROC)Fgnutls-boot Initialize GnuTLS client for process PROC with TYPE+PROPLIST. Currently only client mode is supported. Return a success/failure value you can check with `gnutls-errorp'. TYPE is a symbol, either `gnutls-anon' or `gnutls-x509pki'. PROPLIST is a property list with the following keys: :hostname is a string naming the remote host. :priority is a GnuTLS priority string, defaults to "NORMAL". :trustfiles is a list of PEM-encoded trust files for `gnutls-x509pki'. :crlfiles is a list of PEM-encoded CRL lists for `gnutls-x509pki'. :keylist is an alist of PEM-encoded key files and PEM-encoded certificates for `gnutls-x509pki'. :callbacks is an alist of callback functions, see below. :loglevel is the debug level requested from GnuTLS, try 4. :verify-flags is a bitset as per GnuTLS' gnutls_certificate_set_verify_flags. :verify-hostname-error is ignored. Pass :hostname in :verify-error instead. :verify-error is a list of symbols to express verification checks or t to do all checks. Currently it can contain `:trustfiles' and `:hostname' to verify the certificate or the hostname respectively. :min-prime-bits is the minimum accepted number of bits the client will accept in Diffie-Hellman key exchange. :complete-negotiation, if non-nil, will make negotiation complete before returning even on non-blocking sockets. The debug level will be set for this process AND globally for GnuTLS. So if you set it higher or lower at any point, it affects global debugging. Note that the priority is set on the client. The server does not use the protocols's priority except for disabling protocols that were not specified. Processes must be initialized with this function before other GnuTLS functions are used. This function allocates resources which can only be deallocated by calling `gnutls-deinit' or by calling it again. The callbacks alist can have a `verify' key, associated with a verification function (UNUSED). Each authentication type may need additional information in order to work. For X.509 PKI (`gnutls-x509pki'), you probably need at least one trustfile (usually a CA bundle). (fn PROC TYPE PROPLIST)Fgnutls-bye Terminate current GnuTLS connection for process PROC. The connection should have been initiated using `gnutls-handshake'. If CONT is not nil the TLS connection gets terminated and further receives and sends will be disallowed. If the return value is zero you may continue using the connection. If CONT is nil, GnuTLS actually sends an alert containing a close request and waits for the peer to reply with the same message. In order to reuse the connection you should wait for an EOF from the peer. This function may also return `gnutls-e-again', or `gnutls-e-interrupted'. (fn PROC CONT)Fgnutls-ciphers Return alist of GnuTLS symmetric cipher descriptions as plists. The alist key is the cipher name. (fn)Fgnutls-symmetric-encrypt Encrypt INPUT with symmetric CIPHER, KEY+AEAD_AUTH, and IV to a unibyte string. Return nil on error. The KEY can be specified as a buffer or string or in other ways (see Info node `(elisp)Format of GnuTLS Cryptography Inputs'). The KEY will be wiped after use if it's a string. The IV and INPUT and the optional AEAD_AUTH can be specified as a buffer or string or in other ways (see Info node `(elisp)Format of GnuTLS Cryptography Inputs'). The alist of symmetric ciphers can be obtained with `gnutls-ciphers`. The CIPHER may be a string or symbol matching a key in that alist, or a plist with the :cipher-id numeric property, or the number itself. AEAD ciphers: these ciphers will have a `gnutls-ciphers' entry with :cipher-aead-capable set to t. AEAD_AUTH can be supplied for these AEAD ciphers, but it may still be omitted (nil) as well. (fn CIPHER KEY IV INPUT &optional AEAD-AUTH)Fgnutls-symmetric-decrypt Decrypt INPUT with symmetric CIPHER, KEY+AEAD_AUTH, and IV to a unibyte string. Return nil on error. The KEY can be specified as a buffer or string or in other ways (see Info node `(elisp)Format of GnuTLS Cryptography Inputs'). The KEY will be wiped after use if it's a string. The IV and INPUT and the optional AEAD_AUTH can be specified as a buffer or string or in other ways (see Info node `(elisp)Format of GnuTLS Cryptography Inputs'). The alist of symmetric ciphers can be obtained with `gnutls-ciphers`. The CIPHER may be a string or symbol matching a key in that alist, or a plist with the `:cipher-id' numeric property, or the number itself. AEAD ciphers: these ciphers will have a `gnutls-ciphers' entry with :cipher-aead-capable set to t. AEAD_AUTH can be supplied for these AEAD ciphers, but it may still be omitted (nil) as well. (fn CIPHER KEY IV INPUT &optional AEAD-AUTH)Fgnutls-macs Return alist of GnuTLS mac-algorithm method descriptions as plists. Use the value of the alist (extract it with `alist-get' for instance) with `gnutls-hash-mac'. The alist key is the mac-algorithm method name. (fn)Fgnutls-digests Return alist of GnuTLS digest-algorithm method descriptions as plists. Use the value of the alist (extract it with `alist-get' for instance) with `gnutls-hash-digest'. The alist key is the digest-algorithm method name. (fn)Fgnutls-hash-mac Hash INPUT with HASH-METHOD and KEY into a unibyte string. Return nil on error. The KEY can be specified as a buffer or string or in other ways (see Info node `(elisp)Format of GnuTLS Cryptography Inputs'). The KEY will be wiped after use if it's a string. The INPUT can be specified as a buffer or string or in other ways (see Info node `(elisp)Format of GnuTLS Cryptography Inputs'). The alist of MAC algorithms can be obtained with `gnutls-macs`. The HASH-METHOD may be a string or symbol matching a key in that alist, or a plist with the `:mac-algorithm-id' numeric property, or the number itself. (fn HASH-METHOD KEY INPUT)Fgnutls-hash-digest Digest INPUT with DIGEST-METHOD into a unibyte string. Return nil on error. The INPUT can be specified as a buffer or string or in other ways (see Info node `(elisp)Format of GnuTLS Cryptography Inputs'). The alist of digest algorithms can be obtained with `gnutls-digests`. The DIGEST-METHOD may be a string or symbol matching a key in that alist, or a plist with the `:digest-algorithm-id' numeric property, or the number itself. (fn DIGEST-METHOD INPUT)Fgnutls-available-p Return list of capabilities if GnuTLS is available in this instance of Emacs. ...if supported : then... GnuTLS 3 or higher : the list will contain `gnutls3'. GnuTLS MACs : the list will contain `macs'. GnuTLS digests : the list will contain `digests'. GnuTLS symmetric ciphers: the list will contain `ciphers'. GnuTLS AEAD ciphers : the list will contain `AEAD-ciphers'. %DUMBFW : the list will contain `ClientHello Padding'. Any GnuTLS extension with ID up to 100 : the list will contain its name. (fn)Vgnutls-log-level Logging level used by the GnuTLS functions. Set this larger than 0 to get debug output in the *Messages* buffer. 1 is for important messages, 2 is for debug data, and higher numbers are as per the GnuTLS logging conventions.Scallproc.o Fcall-process Call PROGRAM synchronously in separate process. The remaining arguments are optional. The program's input comes from file INFILE (nil means `null-device'). Third argument DESTINATION specifies how to handle program's output. If DESTINATION is a buffer, or t that stands for the current buffer, it means insert output in that buffer before point. If DESTINATION is nil, it means discard output; 0 means discard and don't wait for the program to terminate. If DESTINATION is `(:file FILE)', where FILE is a file name string, it means that output should be written to that file (if the file already exists it is overwritten). DESTINATION can also have the form (REAL-BUFFER STDERR-FILE); in that case, REAL-BUFFER says what to do with standard output, as above, while STDERR-FILE says what to do with standard error in the child. STDERR-FILE may be nil (discard standard error output), t (mix it with ordinary output), or a file name string. Fourth arg DISPLAY non-nil means redisplay buffer as output is inserted. Remaining arguments ARGS are strings passed as command arguments to PROGRAM. If executable PROGRAM can't be found as an executable, `call-process' signals a Lisp error. `call-process' reports errors in execution of the program only through its return and output. If DESTINATION is 0, `call-process' returns immediately with value nil. Otherwise it waits for PROGRAM to terminate and returns a numeric exit status or a signal description string. If you quit, the process is killed with SIGINT, or SIGKILL if you quit again. The process runs in `default-directory' if that is local (as determined by `unhandled-file-name-directory'), or "~" otherwise. If you want to run a process in a remote directory use `process-file'. (fn PROGRAM &optional INFILE DESTINATION DISPLAY &rest ARGS)Fcall-process-region Send text from START to END to a synchronous process running PROGRAM. START and END are normally buffer positions specifying the part of the buffer to send to the process. If START is nil, that means to use the entire buffer contents; END is ignored. If START is a string, then send that string to the process instead of any buffer contents; END is ignored. The remaining arguments are optional. Delete the text if fourth arg DELETE is non-nil. Insert output in BUFFER before point; t means current buffer; nil for BUFFER means discard it; 0 means discard and don't wait; and `(:file FILE)', where FILE is a file name string, means that it should be written to that file (if the file already exists it is overwritten). BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case, REAL-BUFFER says what to do with standard output, as above, while STDERR-FILE says what to do with standard error in the child. STDERR-FILE may be nil (discard standard error output), t (mix it with ordinary output), or a file name string. Sixth arg DISPLAY non-nil means redisplay buffer as output is inserted. Remaining arguments ARGS are passed to PROGRAM at startup as command-line arguments. If BUFFER is 0, `call-process-region' returns immediately with value nil. Otherwise it waits for PROGRAM to terminate and returns a numeric exit status or a signal description string. If you quit, the process is killed with SIGINT, or SIGKILL if you quit again. (fn START END PROGRAM &optional DELETE BUFFER DISPLAY &rest ARGS)Fgetenv-internal Get the value of environment variable VARIABLE. VARIABLE should be a string. Value is nil if VARIABLE is undefined in the environment. Otherwise, value is a string. This function searches `process-environment' for VARIABLE. If optional parameter ENV is a list, then search this list instead of `process-environment', and return t when encountering a negative entry (an entry for a variable with no value). (fn VARIABLE &optional ENV)Vshell-file-name File name to load inferior shells from. Initialized from the SHELL environment variable, or to a system-dependent default if SHELL is unset. See Info node `(elisp)Security Considerations'.Vexec-path List of directories to search programs to run in subprocesses. Each element is a string (directory name) or nil (try default directory). By default the last element of this list is `exec-directory'. The last element is not always used, for example in shell completion (`shell-dynamic-complete-command').Vexec-suffixes List of suffixes to try to find executable file names. Each element is a string.Vexec-directory Directory for executables for Emacs to invoke. More generally, this includes any architecture-dependent files that are built and installed from the Emacs distribution.Vdata-directory Directory of machine-independent files that come with GNU Emacs. These are files intended for Emacs to use while it runs.Vdoc-directory Directory containing the DOC file that comes with GNU Emacs. This is usually the same as `data-directory'.Vconfigure-info-directory For internal use by the build procedure only. This is the name of the directory in which the build procedure installed Emacs's info files; the default value for `Info-default-directory-list' includes this.Vshared-game-score-directory Directory of score files for games which come with GNU Emacs. If this variable is nil, then Emacs is unable to use a shared directory.Vinitial-environment List of environment variables inherited from the parent process. Each element should be a string of the form ENVVARNAME=VALUE. The elements must normally be decoded (using `locale-coding-system') for use.Vprocess-environment List of overridden environment variables for subprocesses to inherit. Each element should be a string of the form ENVVARNAME=VALUE. Entries in this list take precedence to those in the frame-local environments. Therefore, let-binding `process-environment' is an easy way to temporarily change the value of an environment variable, irrespective of where it comes from. To use `process-environment' to remove an environment variable, include only its name in the list, without "=VALUE". This variable is set to nil when Emacs starts. If multiple entries define the same variable, the first one always takes precedence. Non-ASCII characters are encoded according to the initial value of `locale-coding-system', i.e. the elements must normally be decoded for use. See `setenv' and `getenv'.Sregion-cache.o Ssound.o Fplay-sound-internal Play sound SOUND. Internal use only, use `play-sound' instead. (fn SOUND)Satimer.o Fdebug-timer-check Run internal self-tests to check timers subsystem. Return t if all self-tests are passed, nil otherwise. (fn)Sdoprnt.o Sintervals.o Stextprop.o Ftext-properties-at Return the list of properties of the character at POSITION in OBJECT. If the optional second argument OBJECT is a buffer (or nil, which means the current buffer), POSITION is a buffer position (integer or marker). If OBJECT is a string, POSITION is a 0-based index into it. If POSITION is at the end of OBJECT, the value is nil. (fn POSITION &optional OBJECT)Fget-text-property Return the value of POSITION's property PROP, in OBJECT. OBJECT should be a buffer or a string; if omitted or nil, it defaults to the current buffer. If POSITION is at the end of OBJECT, the value is nil. (fn POSITION PROP &optional OBJECT)Fget-char-property Return the value of POSITION's property PROP, in OBJECT. Both overlay properties and text properties are checked. OBJECT is optional and defaults to the current buffer. If POSITION is at the end of OBJECT, the value is nil. If OBJECT is a buffer, then overlay properties are considered as well as text properties. If OBJECT is a window, then that window's buffer is used, but window-specific overlays are considered only if they are associated with OBJECT. (fn POSITION PROP &optional OBJECT)Fget-char-property-and-overlay Like `get-char-property', but with extra overlay information. The value is a cons cell. Its car is the return value of `get-char-property' with the same arguments--that is, the value of POSITION's property PROP in OBJECT. Its cdr is the overlay in which the property was found, or nil, if it was found as a text property or not found at all. OBJECT is optional and defaults to the current buffer. OBJECT may be a string, a buffer or a window. For strings, the cdr of the return value is always nil, since strings do not have overlays. If OBJECT is a window, then that window's buffer is used, but window-specific overlays are considered only if they are associated with OBJECT. If POSITION is at the end of OBJECT, both car and cdr are nil. (fn POSITION PROP &optional OBJECT)Fnext-char-property-change Return the position of next text property or overlay change. This scans characters forward in the current buffer from POSITION till it finds a change in some text property, or the beginning or end of an overlay, and returns the position of that. If none is found, and LIMIT is nil or omitted, the function returns (point-max). If the optional second argument LIMIT is non-nil, the function doesn't search past position LIMIT, and returns LIMIT if nothing is found before LIMIT. LIMIT is a no-op if it is greater than (point-max). (fn POSITION &optional LIMIT)Fprevious-char-property-change Return the position of previous text property or overlay change. Scans characters backward in the current buffer from POSITION till it finds a change in some text property, or the beginning or end of an overlay, and returns the position of that. If none is found, and LIMIT is nil or omitted, the function returns (point-min). If the optional second argument LIMIT is non-nil, the function doesn't search before position LIMIT, and returns LIMIT if nothing is found before LIMIT. LIMIT is a no-op if it is less than (point-min). (fn POSITION &optional LIMIT)Fnext-single-char-property-change Return the position of next text property or overlay change for a specific property. Scans characters forward from POSITION till it finds a change in the PROP property, then returns the position of the change. If the optional third argument OBJECT is a buffer (or nil, which means the current buffer), POSITION is a buffer position (integer or marker). If OBJECT is a string, POSITION is a 0-based index into it. In a string, scan runs to the end of the string, unless LIMIT is non-nil. In a buffer, if LIMIT is nil or omitted, it runs to (point-max), and the value cannot exceed that. If the optional fourth argument LIMIT is non-nil, don't search past position LIMIT; return LIMIT if nothing is found before LIMIT. The property values are compared with `eq'. If the property is constant all the way to the end of OBJECT, return the last valid position in OBJECT. (fn POSITION PROP &optional OBJECT LIMIT)Fprevious-single-char-property-change Return the position of previous text property or overlay change for a specific property. Scans characters backward from POSITION till it finds a change in the PROP property, then returns the position of the change. If the optional third argument OBJECT is a buffer (or nil, which means the current buffer), POSITION is a buffer position (integer or marker). If OBJECT is a string, POSITION is a 0-based index into it. In a string, scan runs to the start of the string, unless LIMIT is non-nil. In a buffer, if LIMIT is nil or omitted, it runs to (point-min), and the value cannot be less than that. If the optional fourth argument LIMIT is non-nil, don't search back past position LIMIT; return LIMIT if nothing is found before reaching LIMIT. The property values are compared with `eq'. If the property is constant all the way to the start of OBJECT, return the first valid position in OBJECT. (fn POSITION PROP &optional OBJECT LIMIT)Fnext-property-change Return the position of next property change. Scans characters forward from POSITION in OBJECT till it finds a change in some text property, then returns the position of the change. If the optional second argument OBJECT is a buffer (or nil, which means the current buffer), POSITION is a buffer position (integer or marker). If OBJECT is a string, POSITION is a 0-based index into it. Return nil if LIMIT is nil or omitted, and the property is constant all the way to the end of OBJECT; if the value is non-nil, it is a position greater than POSITION, never equal. If the optional third argument LIMIT is non-nil, don't search past position LIMIT; return LIMIT if nothing is found before LIMIT. (fn POSITION &optional OBJECT LIMIT)Fnext-single-property-change Return the position of next property change for a specific property. Scans characters forward from POSITION till it finds a change in the PROP property, then returns the position of the change. If the optional third argument OBJECT is a buffer (or nil, which means the current buffer), POSITION is a buffer position (integer or marker). If OBJECT is a string, POSITION is a 0-based index into it. The property values are compared with `eq'. Return nil if LIMIT is nil or omitted, and the property is constant all the way to the end of OBJECT; if the value is non-nil, it is a position greater than POSITION, never equal. If the optional fourth argument LIMIT is non-nil, don't search past position LIMIT; return LIMIT if nothing is found before LIMIT. (fn POSITION PROP &optional OBJECT LIMIT)Fprevious-property-change Return the position of previous property change. Scans characters backwards from POSITION in OBJECT till it finds a change in some text property, then returns the position of the change. If the optional second argument OBJECT is a buffer (or nil, which means the current buffer), POSITION is a buffer position (integer or marker). If OBJECT is a string, POSITION is a 0-based index into it. Return nil if LIMIT is nil or omitted, and the property is constant all the way to the start of OBJECT; if the value is non-nil, it is a position less than POSITION, never equal. If the optional third argument LIMIT is non-nil, don't search back past position LIMIT; return LIMIT if nothing is found until LIMIT. (fn POSITION &optional OBJECT LIMIT)Fprevious-single-property-change Return the position of previous property change for a specific property. Scans characters backward from POSITION till it finds a change in the PROP property, then returns the position of the change. If the optional third argument OBJECT is a buffer (or nil, which means the current buffer), POSITION is a buffer position (integer or marker). If OBJECT is a string, POSITION is a 0-based index into it. The property values are compared with `eq'. Return nil if LIMIT is nil or omitted, and the property is constant all the way to the start of OBJECT; if the value is non-nil, it is a position less than POSITION, never equal. If the optional fourth argument LIMIT is non-nil, don't search back past position LIMIT; return LIMIT if nothing is found until LIMIT. (fn POSITION PROP &optional OBJECT LIMIT)Fadd-text-properties Add properties to the text from START to END. The third argument PROPERTIES is a property list specifying the property values to add. If the optional fourth argument OBJECT is a buffer (or nil, which means the current buffer), START and END are buffer positions (integers or markers). If OBJECT is a string, START and END are 0-based indices into it. Return t if any property value actually changed, nil otherwise. (fn START END PROPERTIES &optional OBJECT)Fput-text-property Set one property of the text from START to END. The third and fourth arguments PROPERTY and VALUE specify the property to add. If the optional fifth argument OBJECT is a buffer (or nil, which means the current buffer), START and END are buffer positions (integers or markers). If OBJECT is a string, START and END are 0-based indices into it. (fn START END PROPERTY VALUE &optional OBJECT)Fset-text-properties Completely replace properties of text from START to END. The third argument PROPERTIES is the new property list. If the optional fourth argument OBJECT is a buffer (or nil, which means the current buffer), START and END are buffer positions (integers or markers). If OBJECT is a string, START and END are 0-based indices into it. If PROPERTIES is nil, the effect is to remove all properties from the designated part of OBJECT. (fn START END PROPERTIES &optional OBJECT)Fadd-face-text-property Add the face property to the text from START to END. FACE specifies the face to add. It should be a valid value of the `face' property (typically a face name or a plist of face attributes and values). If any text in the region already has a non-nil `face' property, those face(s) are retained. This is done by setting the `face' property to a list of faces, with FACE as the first element (by default) and the pre-existing faces as the remaining elements. If optional fourth argument APPEND is non-nil, append FACE to the end of the face list instead. If optional fifth argument OBJECT is a buffer (or nil, which means the current buffer), START and END are buffer positions (integers or markers). If OBJECT is a string, START and END are 0-based indices into it. (fn START END FACE &optional APPEND OBJECT)Fremove-text-properties Remove some properties from text from START to END. The third argument PROPERTIES is a property list whose property names specify the properties to remove. (The values stored in PROPERTIES are ignored.) If the optional fourth argument OBJECT is a buffer (or nil, which means the current buffer), START and END are buffer positions (integers or markers). If OBJECT is a string, START and END are 0-based indices into it. Return t if any property was actually removed, nil otherwise. Use `set-text-properties' if you want to remove all text properties. (fn START END PROPERTIES &optional OBJECT)Fremove-list-of-text-properties Remove some properties from text from START to END. The third argument LIST-OF-PROPERTIES is a list of property names to remove. If the optional fourth argument OBJECT is a buffer (or nil, which means the current buffer), START and END are buffer positions (integers or markers). If OBJECT is a string, START and END are 0-based indices into it. Return t if any property was actually removed, nil otherwise. (fn START END LIST-OF-PROPERTIES &optional OBJECT)Ftext-property-any Check text from START to END for property PROPERTY equaling VALUE. If so, return the position of the first character whose property PROPERTY is `eq' to VALUE. Otherwise return nil. If the optional fifth argument OBJECT is a buffer (or nil, which means the current buffer), START and END are buffer positions (integers or markers). If OBJECT is a string, START and END are 0-based indices into it. (fn START END PROPERTY VALUE &optional OBJECT)Ftext-property-not-all Check text from START to END for property PROPERTY not equaling VALUE. If so, return the position of the first character whose property PROPERTY is not `eq' to VALUE. Otherwise, return nil. If the optional fifth argument OBJECT is a buffer (or nil, which means the current buffer), START and END are buffer positions (integers or markers). If OBJECT is a string, START and END are 0-based indices into it. (fn START END PROPERTY VALUE &optional OBJECT)Vdefault-text-properties Property-list used as default values. The value of a property in this list is seen as the value for every character that does not have its own value for that property.Vchar-property-alias-alist Alist of alternative properties for properties without a value. Each element should look like (PROPERTY ALTERNATIVE1 ALTERNATIVE2...). If a piece of text has no direct value for a particular property, then this alist is consulted. If that property appears in the alist, then the first non-nil value from the associated alternative properties is returned.Vinhibit-point-motion-hooks If non-nil, don't run `point-left' and `point-entered' text properties. This also inhibits the use of the `intangible' text property. This variable is obsolete since Emacs-25.1. Use `cursor-intangible-mode' or `cursor-sensor-mode' instead.Vtext-property-default-nonsticky Alist of properties vs the corresponding non-stickiness. Each element has the form (PROPERTY . NONSTICKINESS). If a character in a buffer has PROPERTY, new text inserted adjacent to the character doesn't inherit PROPERTY if NONSTICKINESS is non-nil, inherits it if NONSTICKINESS is nil. The `front-sticky' and `rear-nonsticky' properties of the character override NONSTICKINESS.Scomposite.o Fclear-composition-cache Internal use only. Clear composition cache. (fn)Fcomposition-get-gstring Return a glyph-string for characters between FROM and TO. If the glyph string is for graphic display, FONT-OBJECT must be a font-object to use for those characters. Otherwise (for terminal display), FONT-OBJECT must be a terminal ID, a frame, or nil for the selected frame's terminal device. If the optional 4th argument STRING is not nil, it is a string containing the target characters between indices FROM and TO, which are treated as in `substring'. Otherwise FROM and TO are character positions in current buffer; they can be in either order, and can be integers or markers. A glyph-string is a vector containing information about how to display a specific character sequence. The format is: [HEADER ID GLYPH ...] HEADER is a vector of this form: [FONT-OBJECT CHAR ...] where FONT-OBJECT is a font-object for all glyphs in the glyph-string, or the terminal coding system of the specified terminal. CHARs are characters to be composed by GLYPHs. ID is an identification number of the glyph-string. It may be nil if not yet shaped. GLYPH is a vector whose elements have this form: [ FROM-IDX TO-IDX C CODE WIDTH LBEARING RBEARING ASCENT DESCENT [ [X-OFF Y-OFF WADJUST] | nil] ] where FROM-IDX and TO-IDX are used internally and should not be touched. C is the character of the glyph. CODE is the glyph-code of C in FONT-OBJECT. WIDTH thru DESCENT are the metrics (in pixels) of the glyph. X-OFF and Y-OFF are offsets to the base position for the glyph. WADJUST is the adjustment to the normal width of the glyph. If GLYPH is nil, the remaining elements of the glyph-string vector should be ignored. (fn FROM TO FONT-OBJECT STRING)Fcompose-region-internal Internal use only. Compose text in the region between START and END. Optional 3rd and 4th arguments are COMPONENTS and MODIFICATION-FUNC for the composition. See `compose-region' for more details. (fn START END &optional COMPONENTS MODIFICATION-FUNC)Fcompose-string-internal Internal use only. Compose text between indices START and END of STRING, where START and END are treated as in `substring'. Optional 4th and 5th arguments are COMPONENTS and MODIFICATION-FUNC for the composition. See `compose-string' for more details. (fn STRING START END &optional COMPONENTS MODIFICATION-FUNC)Ffind-composition-internal Internal use only. Return information about composition at or nearest to position POS. See `find-composition' for more details. (fn POS LIMIT STRING DETAIL-P)Vcompose-chars-after-function Function to adjust composition of buffer text. This function is called with three arguments: FROM, TO, and OBJECT. FROM and TO specify the range of text whose composition should be adjusted. OBJECT, if non-nil, is a string that contains the text. This function is called after a text with `composition' property is inserted or deleted to keep `composition' property of buffer text valid. The default value is the function `compose-chars-after'.Vauto-composition-mode Non-nil if Auto-Composition mode is enabled. Use the command `auto-composition-mode' to change this variable.Vauto-composition-function Function to call to compose characters automatically. This function is called from the display routine with four arguments: FROM, TO, WINDOW, and STRING. If STRING is nil, the function must compose characters in the region between FROM and TO in the current buffer. Otherwise, STRING is a string, and FROM and TO are indices into the string. In this case, the function must compose characters in the string.Vcomposition-function-table Char-table of functions for automatic character composition. For each character that has to be composed automatically with preceding and/or following characters, this char-table contains a function to call to compose that character. The element at index C in the table, if non-nil, is a list of composition rules of this form: ([PATTERN PREV-CHARS FUNC] ...) PATTERN is a regular expression which C and the surrounding characters must match. PREV-CHARS is a non-negative integer (less than 4) specifying how many characters before C to check the matching with PATTERN. If it is 0, PATTERN must match C and the following characters. If it is 1, PATTERN must match a character before C and the following characters. If PREV-CHARS is 0, PATTERN can be nil, which means that the single character C should be composed. FUNC is a function to return a glyph-string representing a composition of the characters that match PATTERN. It is called with one argument GSTRING. GSTRING is a template of a glyph-string to return. It is already filled with a proper header for the characters to compose, and glyphs corresponding to those characters one by one. The function must return a new glyph-string with the same header as GSTRING, or modify GSTRING itself and return it. See also the documentation of `auto-composition-mode'.Sxml.o Flibxml-parse-html-region Parse the region as an HTML document and return the parse tree. If BASE-URL is non-nil, it is used to expand relative URLs. If DISCARD-COMMENTS is non-nil, all HTML comments are discarded. (fn START END &optional BASE-URL DISCARD-COMMENTS)Flibxml-parse-xml-region Parse the region as an XML document and return the parse tree. If BASE-URL is non-nil, it is used to expand relative URLs. If DISCARD-COMMENTS is non-nil, all HTML comments are discarded. (fn START END &optional BASE-URL DISCARD-COMMENTS)Slcms.o Flcms-cie-de2000 Compute CIEDE2000 metric distance between COLOR1 and COLOR2. Each color is a list of L*a*b* coordinates, where the L* channel ranges from 0 to 100, and the a* and b* channels range from -128 to 128. Optional arguments KL, KC, KH are weighting parameters for lightness, chroma, and hue, respectively. The parameters each default to 1. (fn COLOR1 COLOR2 &optional KL KC KH)Flcms-xyz->jch Convert CIE CAM02 JCh to CIE XYZ. COLOR is a list (X Y Z), with Y scaled about unity. Optional arguments WHITEPOINT and VIEW are the same as in `lcms-cam02-ucs', which see. (fn COLOR &optional WHITEPOINT VIEW)Flcms-jch->xyz Convert CIE XYZ to CIE CAM02 JCh. COLOR is a list (J C h), where lightness of white is equal to 100, and hue is given in degrees. Optional arguments WHITEPOINT and VIEW are the same as in `lcms-cam02-ucs', which see. (fn COLOR &optional WHITEPOINT VIEW)Flcms-jch->jab Convert CIE CAM02 JCh to CAM02-UCS J'a'b'. COLOR is a list (J C h) as described in `lcms-jch->xyz', which see. Optional arguments WHITEPOINT and VIEW are the same as in `lcms-cam02-ucs', which see. (fn COLOR &optional WHITEPOINT VIEW)Flcms-jab->jch Convert CAM02-UCS J'a'b' to CIE CAM02 JCh. COLOR is a list (J' a' b'), where white corresponds to lightness J equal to 100. Optional arguments WHITEPOINT and VIEW are the same as in `lcms-cam02-ucs', which see. (fn COLOR &optional WHITEPOINT VIEW)Flcms-cam02-ucs Compute CAM02-UCS metric distance between COLOR1 and COLOR2. Each color is a list of XYZ tristimulus values, with Y scaled about unity. Optional argument WHITEPOINT is the XYZ white point, which defaults to illuminant D65. Optional argument VIEW is a list containing the viewing conditions, and is of the form (YB LA SURROUND DVALUE) where SURROUND corresponds to 1 AVG_SURROUND 2 DIM_SURROUND 3 DARK_SURROUND 4 CUTSHEET_SURROUND The default viewing conditions are (20 100 1 1). (fn COLOR1 COLOR2 &optional WHITEPOINT VIEW)Flcms-temp->white-point Return XYZ black body chromaticity from TEMPERATURE given in K. Valid range of TEMPERATURE is from 4000K to 25000K. (fn TEMPERATURE)Flcms2-available-p Return t if lcms2 color calculations are available in this instance of Emacs. (fn)Sinotify.o Finotify-add-watch Add a watch for FILE-NAME to inotify. Return a watch descriptor. The watch will look for ASPECT events and invoke CALLBACK when an event occurs. ASPECT might be one of the following symbols or a list of those symbols: access attrib close-write close-nowrite create delete delete-self modify move-self moved-from moved-to open all-events or t move close ASPECT can also contain the following symbols, which control whether the watch descriptor will be created: dont-follow onlydir Watching a directory is not recursive. CALLBACK is passed a single argument EVENT which contains an event structure of the format (WATCH-DESCRIPTOR ASPECTS NAME COOKIE) WATCH-DESCRIPTOR is the same object that was returned by this function. It can be tested for equality using `equal'. ASPECTS describes the event. It is a list of ASPECT symbols described above and can also contain one of the following symbols ignored isdir q-overflow unmount If a directory is watched then NAME is the name of file that caused the event. COOKIE is an object that can be compared using `equal' to identify two matching renames (moved-from and moved-to). See inotify(7) and inotify_add_watch(2) for further information. The inotify fd is managed internally and there is no corresponding inotify_init. Use `inotify-rm-watch' to remove a watch. The following inotify bit-masks cannot be used because descriptors are shared across different callers. IN_EXCL_UNLINK IN_MASK_ADD IN_ONESHOT (fn FILENAME ASPECT CALLBACK)Finotify-rm-watch Remove an existing WATCH-DESCRIPTOR. WATCH-DESCRIPTOR should be an object returned by `inotify-add-watch'. See inotify_rm_watch(2) for more information. (fn WATCH-DESCRIPTOR)Finotify-valid-p Check a watch specified by its WATCH-DESCRIPTOR. WATCH-DESCRIPTOR should be an object returned by `inotify-add-watch'. A watch can become invalid if the file or directory it watches is deleted, or if the watcher thread exits abnormally for any other reason. Removing the watch by calling `inotify-rm-watch' also makes it invalid. (fn WATCH-DESCRIPTOR)Finotify-watch-list Return a copy of the internal watch_list. (fn WATCH-LIST)Finotify-allocated-p Return non-nil, if an inotify instance is allocated. (fn)Sprofiler.o Fprofiler-cpu-start Start or restart the cpu profiler. It takes call-stack samples each SAMPLING-INTERVAL nanoseconds, approximately. See also `profiler-log-size' and `profiler-max-stack-depth'. (fn SAMPLING-INTERVAL)Fprofiler-cpu-stop Stop the cpu profiler. The profiler log is not affected. Return non-nil if the profiler was running. (fn)Fprofiler-cpu-running-p Return non-nil if cpu profiler is running. (fn)Fprofiler-cpu-log Return the current cpu profiler log. The log is a hash-table mapping backtraces to counters which represent the amount of time spent at those points. Every backtrace is a vector of functions, where the last few elements may be nil. Before returning, a new log is allocated for future samples. (fn)Fprofiler-memory-start Start/restart the memory profiler. The memory profiler will take samples of the call-stack whenever a new allocation takes place. Note that most small allocations only trigger the profiler occasionally. See also `profiler-log-size' and `profiler-max-stack-depth'. (fn)Fprofiler-memory-stop Stop the memory profiler. The profiler log is not affected. Return non-nil if the profiler was running. (fn)Fprofiler-memory-running-p Return non-nil if memory profiler is running. (fn)Fprofiler-memory-log Return the current memory profiler log. The log is a hash-table mapping backtraces to counters which represent the amount of memory allocated at those points. Every backtrace is a vector of functions, where the last few elements may be nil. Before returning, a new log is allocated for future samples. (fn)Ffunction-equal Return non-nil if F1 and F2 come from the same source. Used to determine if different closures are just different instances of the same lambda expression, or are really unrelated function. (fn F1 F2)Vprofiler-max-stack-depth Number of elements from the call-stack recorded in the log.Vprofiler-log-size Number of distinct call-stacks that can be recorded in a profiler log. If the log gets full, some of the least-seen call-stacks will be evicted to make room for new entries.Sdecompress.o Fzlib-available-p Return t if zlib decompression is available in this instance of Emacs. (fn)Fzlib-decompress-region Decompress a gzip- or zlib-compressed region. Replace the text in the region by the decompressed data. On failure, return nil and leave the data in place. This function can be called only in unibyte buffers. (fn START END)Sthread.o Fmake-mutex Create a mutex. A mutex provides a synchronization point for threads. Only one thread at a time can hold a mutex. Other threads attempting to acquire it will block until the mutex is available. A thread can acquire a mutex any number of times. NAME, if given, is used as the name of the mutex. The name is informational only. (fn &optional NAME)Fmutex-lock Acquire a mutex. If the current thread already owns MUTEX, increment the count and return. Otherwise, if no thread owns MUTEX, make the current thread own it. Otherwise, block until MUTEX is available, or until the current thread is signaled using `thread-signal'. Note that calls to `mutex-lock' and `mutex-unlock' must be paired. (fn MUTEX)Fmutex-unlock Release the mutex. If this thread does not own MUTEX, signal an error. Otherwise, decrement the mutex's count. If the count is zero, release MUTEX. (fn MUTEX)Fmutex-name Return the name of MUTEX. If no name was given when MUTEX was created, return nil. (fn MUTEX)Fmake-condition-variable Make a condition variable associated with MUTEX. A condition variable provides a way for a thread to sleep while waiting for a state change. MUTEX is the mutex associated with this condition variable. NAME, if given, is the name of this condition variable. The name is informational only. (fn MUTEX &optional NAME)Fcondition-wait Wait for the condition variable COND to be notified. COND is the condition variable to wait on. The mutex associated with COND must be held when this is called. It is an error if it is not held. This releases the mutex and waits for COND to be notified or for this thread to be signaled with `thread-signal'. When `condition-wait' returns, COND's mutex will again be locked by this thread. (fn COND)Fcondition-notify Notify COND, a condition variable. This wakes a thread waiting on COND. If ALL is non-nil, all waiting threads are awoken. The mutex associated with COND must be held when this is called. It is an error if it is not held. This releases COND's mutex when notifying COND. When `condition-notify' returns, the mutex will again be locked by this thread. (fn COND &optional ALL)Fcondition-mutex Return the mutex associated with condition variable COND. (fn COND)Fcondition-name Return the name of condition variable COND. If no name was given when COND was created, return nil. (fn COND)Fthread-yield Yield the CPU to another thread. (fn)Fmake-thread Start a new thread and run FUNCTION in it. When the function exits, the thread dies. If NAME is given, it must be a string; it names the new thread. (fn FUNCTION &optional NAME)Fcurrent-thread Return the current thread. (fn)Fthread-name Return the name of the THREAD. The name is the same object that was passed to `make-thread'. (fn THREAD)Fthread-signal Signal an error in a thread. This acts like `signal', but arranges for the signal to be raised in THREAD. If THREAD is the current thread, acts just like `signal'. This will interrupt a blocked call to `mutex-lock', `condition-wait', or `thread-join' in the target thread. (fn THREAD ERROR-SYMBOL DATA)Fthread-live-p Return t if THREAD is alive, or nil if it has exited. (fn THREAD)Fthread--blocker Return the object that THREAD is blocking on. If THREAD is blocked in `thread-join' on a second thread, return that thread. If THREAD is blocked in `mutex-lock', return the mutex. If THREAD is blocked in `condition-wait', return the condition variable. Otherwise, if THREAD is not blocked, return nil. (fn THREAD)Fthread-join Wait for THREAD to exit. This blocks the current thread until THREAD exits or until the current thread is signaled. It is an error for a thread to try to join itself. (fn THREAD)Fall-threads Return a list of all the live threads. (fn)Fthread-last-error Return the last error form recorded by a dying thread. (fn)Ssysthread.o Ssheap.o Sloaddefs.el F5x5 Play 5x5. The object of 5x5 is very simple, by moving around the grid and flipping squares you must fill the grid. 5x5 keyboard bindings are: \<5x5-mode-map> Flip \[5x5-flip-current] Move up \[5x5-up] Move down \[5x5-down] Move left \[5x5-left] Move right \[5x5-right] Start new game \[5x5-new-game] New game with random grid \[5x5-randomize] Random cracker \[5x5-crack-randomly] Mutate current cracker \[5x5-crack-mutating-current] Mutate best cracker \[5x5-crack-mutating-best] Mutate xor cracker \[5x5-crack-xor-mutate] Solve with Calc \[5x5-solve-suggest] Rotate left Calc Solutions \[5x5-solve-rotate-left] Rotate right Calc Solutions \[5x5-solve-rotate-right] Quit current game \[5x5-quit-game] (fn &optional SIZE)F5x5-crack-randomly Attempt to crack 5x5 using random solutions. (fn)F5x5-crack-mutating-current Attempt to crack 5x5 by mutating the current solution. (fn)F5x5-crack-mutating-best Attempt to crack 5x5 by mutating the best solution. (fn)F5x5-crack-xor-mutate Attempt to crack 5x5 by xoring the current and best solution. Mutate the result. (fn)F5x5-crack Attempt to find a solution for 5x5. 5x5-crack takes the argument BREEDER which should be a function that takes two parameters, the first will be a grid vector array that is the current solution and the second will be the best solution so far. The function should return a grid vector array that is the new solution. (fn BREEDER)Fada-add-extensions Define SPEC and BODY as being valid extensions for Ada files. Going from body to spec with `ff-find-other-file' used these extensions. SPEC and BODY are two regular expressions that must match against the file name. (fn SPEC BODY)Fada-mode Ada mode is the major mode for editing Ada code. (fn)Fada-header Insert a descriptive header at the top of the file. (fn)Fada-find-file Open FILENAME, from anywhere in the source path. Completion is available. (fn FILENAME)Vadd-log-current-defun-function If non-nil, function to guess name of surrounding function. It is called by `add-log-current-defun' with no argument, and should return the function's name as a string, or nil if point is outside a function.Vadd-log-full-name Full name of user, for inclusion in ChangeLog daily headers. This defaults to the value returned by the function `user-full-name'.Vadd-log-mailing-address Email addresses of user, for inclusion in ChangeLog headers. This defaults to the value of `user-mail-address'. In addition to being a simple string, this value can also be a list. All elements will be recognized as referring to the same user; when creating a new ChangeLog entry, one element will be chosen at random.Fprompt-for-change-log-name Prompt for a change log name. (fn)Ffind-change-log Find a change log file for \[add-change-log-entry] and return the name. Optional arg FILE-NAME specifies the file to use. If FILE-NAME is nil, use the value of `change-log-default-name'. If `change-log-default-name' is nil, behave as though it were "ChangeLog" (or whatever we use on this operating system). If `change-log-default-name' contains a leading directory component, then simply find it in the current directory. Otherwise, search in the current directory and its successive parents for a file so named. Stop at the first such file that exists (or has a buffer visiting it), or the first directory that contains any of `change-log-directory-files'. If no match is found, use the current directory. To override the choice of this function, simply create an empty ChangeLog file first by hand in the desired place. Once a file is found, `change-log-default-name' is set locally in the current buffer to the complete file name. Optional arg BUFFER-FILE overrides `buffer-file-name'. (fn &optional FILE-NAME BUFFER-FILE)Fadd-change-log-entry Find change log file, and add an entry for today and an item for this file. Optional arg WHOAMI (interactive prefix) non-nil means prompt for user name and email (stored in `add-log-full-name' and `add-log-mailing-address'). Second arg FILE-NAME is file name of the change log. If nil, use the value of `change-log-default-name'. Third arg OTHER-WINDOW non-nil means visit in other window. Fourth arg NEW-ENTRY non-nil means always create a new entry at the front; never append to an existing entry. Option `add-log-keep-changes-together' otherwise affects whether a new entry is created. Fifth arg PUT-NEW-ENTRY-ON-NEW-LINE non-nil means that if a new entry is created, put it on a new line by itself, do not put it after a comma on an existing line. Option `add-log-always-start-new-record' non-nil means always create a new record, even when the last record was made on the same date and by the same person. The change log file can start with a copyright notice and a copying permission notice. The first blank line indicates the end of these notices. Today's date is calculated according to `add-log-time-zone-rule' if non-nil, otherwise in local time. (fn &optional WHOAMI FILE-NAME OTHER-WINDOW NEW-ENTRY PUT-NEW-ENTRY-ON-NEW-LINE)Fadd-change-log-entry-other-window Find change log file in other window and add entry and item. This is just like `add-change-log-entry' except that it displays the change log file in another window. (fn &optional WHOAMI FILE-NAME)Fchange-log-mode Major mode for editing change logs; like Indented Text mode. Prevents numeric backups and sets `left-margin' to 8 and `fill-column' to 74. New log entries are usually made with \[add-change-log-entry] or \[add-change-log-entry-other-window]. Each entry behaves as a paragraph, and the entries for one day as a page. Runs `change-log-mode-hook'. \{change-log-mode-map} (fn)Fadd-log-current-defun Return name of function definition point is in, or nil. Understands C, Lisp, LaTeX ("functions" are chapters, sections, ...), Texinfo (@node titles) and Perl. Other modes are handled by a heuristic that looks in the 10K before point for uppercase headings starting in the first column or identifiers followed by `:' or `='. See variables `add-log-current-defun-header-regexp' and `add-log-current-defun-function'. Has a preference of looking backwards. (fn)Fchange-log-merge Merge the contents of change log file OTHER-LOG with this buffer. Both must be found in Change Log mode (since the merging depends on the appropriate motion commands). OTHER-LOG can be either a file name or a buffer. Entries are inserted in chronological order. Both the current and old-style time formats for entries are supported. (fn OTHER-LOG)Vad-redefinition-action Defines what to do with redefinitions during Advice de/activation. Redefinition occurs if a previously activated function that already has an original definition associated with it gets redefined and then de/activated. In such a case we can either accept the current definition as the new original definition, discard the current definition and replace it with the old original, or keep it and raise an error. The values `accept', `discard', `error' or `warn' govern what will be done. `warn' is just like `accept' but it additionally prints a warning message. All other values will be interpreted as `error'.Vad-default-compilation-action Defines whether to compile advised definitions during activation. A value of `always' will result in unconditional compilation, `never' will always avoid compilation, `maybe' will compile if the byte-compiler is already loaded, and `like-original' will compile if the original definition of the advised function is compiled or a built-in function. Every other value will be interpreted as `maybe'. This variable will only be considered if the COMPILE argument of `ad-activate' was supplied as nil.Fad-enable-advice Enables the advice of FUNCTION with CLASS and NAME. (fn FUNCTION CLASS NAME)Fad-disable-advice Disable the advice of FUNCTION with CLASS and NAME. (fn FUNCTION CLASS NAME)Fad-add-advice Add a piece of ADVICE to FUNCTION's list of advices in CLASS. ADVICE has the form (NAME PROTECTED ENABLED DEFINITION), where NAME is the advice name; PROTECTED is a flag specifying whether to protect against non-local exits; ENABLED is a flag specifying whether to initially enable the advice; and DEFINITION has the form (advice . LAMBDA), where LAMBDA is a lambda expression. If FUNCTION already has a piece of advice with the same name, then POSITION is ignored, and the old advice is overwritten with the new one. If FUNCTION already has one or more pieces of advice of the specified CLASS, then POSITION determines where the new piece goes. POSITION can either be `first', `last' or a number (where 0 corresponds to `first', and numbers outside the valid range are mapped to the closest extremal position). If FUNCTION was not advised already, its advice info will be initialized. Redefining a piece of advice whose name is part of the cache-id will clear the cache. (fn FUNCTION ADVICE CLASS POSITION)Fad-activate Activate all the advice information of an advised FUNCTION. If FUNCTION has a proper original definition then an advised definition will be generated from FUNCTION's advice info and the definition of FUNCTION will be replaced with it. If a previously cached advised definition was available, it will be used. The optional COMPILE argument determines whether the resulting function or a compilable cached definition will be compiled. If it is negative no compilation will be performed, if it is positive or otherwise non-nil the resulting function will be compiled, if it is nil the behavior depends on the value of `ad-default-compilation-action' (which see). Activation of an advised function that has an advice info but no actual pieces of advice is equivalent to a call to `ad-unadvise'. Activation of an advised function that has actual pieces of advice but none of them are enabled is equivalent to a call to `ad-deactivate'. The current advised definition will always be cached for later usage. (fn FUNCTION &optional COMPILE)Fdefadvice Define a piece of advice for FUNCTION (a symbol). The syntax of `defadvice' is as follows: (defadvice FUNCTION (CLASS NAME [POSITION] [ARGLIST] FLAG...) [DOCSTRING] [INTERACTIVE-FORM] BODY...) FUNCTION ::= Name of the function to be advised. CLASS ::= `before' | `around' | `after' | `activation' | `deactivation'. NAME ::= Non-nil symbol that names this piece of advice. POSITION ::= `first' | `last' | NUMBER. Optional, defaults to `first', see also `ad-add-advice'. ARGLIST ::= An optional argument list to be used for the advised function instead of the argument list of the original. The first one found in before/around/after-advices will be used. FLAG ::= `protect'|`disable'|`activate'|`compile'|`preactivate'. All flags can be specified with unambiguous initial substrings. DOCSTRING ::= Optional documentation for this piece of advice. INTERACTIVE-FORM ::= Optional interactive form to be used for the advised function. The first one found in before/around/after-advices will be used. BODY ::= Any s-expression. Semantics of the various flags: `protect': The piece of advice will be protected against non-local exits in any code that precedes it. If any around-advice of a function is protected then automatically all around-advices will be protected (the complete onion). `activate': All advice of FUNCTION will be activated immediately if FUNCTION has been properly defined prior to this application of `defadvice'. `compile': In conjunction with `activate' specifies that the resulting advised function should be compiled. `disable': The defined advice will be disabled, hence, it will not be used during activation until somebody enables it. `preactivate': Preactivates the advised FUNCTION at macro-expansion/compile time. This generates a compiled advised definition according to the current advice state that will be used during activation if appropriate. Only use this if the `defadvice' gets actually compiled. usage: (defadvice FUNCTION (CLASS NAME [POSITION] [ARGLIST] FLAG...) [DOCSTRING] [INTERACTIVE-FORM] BODY...) (fn FUNCTION ARGS &rest BODY)Falign Attempt to align a region based on a set of alignment rules. BEG and END mark the region. If BEG and END are specifically set to nil (this can only be done programmatically), the beginning and end of the current alignment section will be calculated based on the location of point, and the value of `align-region-separate' (or possibly each rule's `separate' attribute). If SEPARATE is non-nil, it overrides the value of `align-region-separate' for all rules, except those that have their `separate' attribute set. RULES and EXCLUDE-RULES, if either is non-nil, will replace the default rule lists defined in `align-rules-list' and `align-exclude-rules-list'. See `align-rules-list' for more details on the format of these lists. (fn BEG END &optional SEPARATE RULES EXCLUDE-RULES)Falign-regexp Align the current region using an ad-hoc rule read from the minibuffer. BEG and END mark the limits of the region. Interactively, this function prompts for the regular expression REGEXP to align with. For example, let's say you had a list of phone numbers, and wanted to align them so that the opening parentheses would line up: Fred (123) 456-7890 Alice (123) 456-7890 Mary-Anne (123) 456-7890 Joe (123) 456-7890 There is no predefined rule to handle this, but you could easily do it using a REGEXP like "(". Interactively, all you would have to do is to mark the region, call `align-regexp' and enter that regular expression. REGEXP must contain at least one parenthesized subexpression, typically whitespace of the form "\\(\\s-*\\)". In normal interactive use, this is automatically added to the start of your regular expression after you enter it. You only need to supply the characters to be lined up, and any preceding whitespace is replaced. If you specify a prefix argument (or use this function non-interactively), you must enter the full regular expression, including the subexpression. The function also then prompts for which subexpression parenthesis GROUP (default 1) within REGEXP to modify, the amount of SPACING (default `align-default-spacing') to use, and whether or not to REPEAT the rule throughout the line. See `align-rules-list' for more information about these options. The non-interactive form of the previous example would look something like: (align-regexp (point-min) (point-max) "\\(\\s-*\\)(") This function is a nothing more than a small wrapper that helps you construct a rule to pass to `align-region', which does the real work. (fn BEG END REGEXP &optional GROUP SPACING REPEAT)Falign-entire Align the selected region as if it were one alignment section. BEG and END mark the extent of the region. If RULES or EXCLUDE-RULES is set to a list of rules (see `align-rules-list'), it can be used to override the default alignment rules that would have been used to align that section. (fn BEG END &optional RULES EXCLUDE-RULES)Falign-current Call `align' on the current alignment section. This function assumes you want to align only the current section, and so saves you from having to specify the region. If RULES or EXCLUDE-RULES is set to a list of rules (see `align-rules-list'), it can be used to override the default alignment rules that would have been used to align that section. (fn &optional RULES EXCLUDE-RULES)Falign-highlight-rule Highlight the whitespace which a given rule would have modified. BEG and END mark the extent of the region. TITLE identifies the rule that should be highlighted. If RULES or EXCLUDE-RULES is set to a list of rules (see `align-rules-list'), it can be used to override the default alignment rules that would have been used to identify the text to be colored. (fn BEG END TITLE &optional RULES EXCLUDE-RULES)Falign-unhighlight-rule Remove any highlighting that was added by `align-highlight-rule'. (fn)Falign-newline-and-indent A replacement function for `newline-and-indent', aligning as it goes. The alignment is done by calling `align' on the region that was indented. (fn)Fallout-auto-activation-helper Institute `allout-auto-activation'. Intended to be used as the `allout-auto-activation' :set function. (fn VAR VALUE)Fallout-setup Do fundamental Emacs session for allout auto-activation. Establishes allout processing as part of visiting a file if `allout-auto-activation' is non-nil, or removes it otherwise. The proper way to use this is through customizing the setting of `allout-auto-activation'. (fn)Vallout-auto-activation Configure allout outline mode auto-activation. Control whether and how allout outline mode is automatically activated when files are visited with non-nil buffer-specific file variable `allout-layout'. When allout-auto-activation is "On" (t), allout mode is activated in buffers with non-nil `allout-layout', and the specified layout is applied. With value "ask", auto-mode-activation is enabled, and endorsement for performing auto-layout is asked of the user each time. With value "activate", only auto-mode-activation is enabled. Auto-layout is not. With value nil, inhibit any automatic allout-mode activation.Fallout-mode-p Return t if `allout-mode' is active in current buffer. (fn)Fallout-mode Toggle Allout outline mode. With a prefix argument ARG, enable Allout outline mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. \<allout-mode-map-value> Allout outline mode is a minor mode that provides extensive outline oriented formatting and manipulation. It enables structural editing of outlines, as well as navigation and exposure. It also is specifically aimed at accommodating syntax-sensitive text like programming languages. (For example, see the allout code itself, which is organized as an allout outline.) In addition to typical outline navigation and exposure, allout includes: - topic-oriented authoring, including keystroke-based topic creation, repositioning, promotion/demotion, cut, and paste - incremental search with dynamic exposure and reconcealment of hidden text - adjustable format, so programming code can be developed in outline-structure - easy topic encryption and decryption, symmetric or key-pair - "Hot-spot" operation, for single-keystroke maneuvering and exposure control - integral outline layout, for automatic initial exposure when visiting a file - independent extensibility, using comprehensive exposure and authoring hooks and many other features. Below is a description of the key bindings, and then description of special `allout-mode' features and terminology. See also the outline menubar additions for quick reference to many of the features. Customize `allout-auto-activation' to prepare your Emacs session for automatic activation of `allout-mode'. The bindings are those listed in `allout-prefixed-keybindings' and `allout-unprefixed-keybindings'. We recommend customizing `allout-command-prefix' to use just `\C-c' as the command prefix, if the allout bindings don't conflict with any personal bindings you have on \C-c. In any case, outline structure navigation and authoring is simplified by positioning the cursor on an item's bullet character, the "hot-spot" -- then you can invoke allout commands with just the un-prefixed, un-control-shifted command letters. This is described further in the HOT-SPOT Operation section. Exposure Control: ---------------- \[allout-hide-current-subtree] `allout-hide-current-subtree' \[allout-show-children] `allout-show-children' \[allout-show-current-subtree] `allout-show-current-subtree' \[allout-show-current-entry] `allout-show-current-entry' \[allout-show-all] `allout-show-all' Navigation: ---------- \[allout-next-visible-heading] `allout-next-visible-heading' \[allout-previous-visible-heading] `allout-previous-visible-heading' \[allout-up-current-level] `allout-up-current-level' \[allout-forward-current-level] `allout-forward-current-level' \[allout-backward-current-level] `allout-backward-current-level' \[allout-end-of-entry] `allout-end-of-entry' \[allout-beginning-of-current-entry] `allout-beginning-of-current-entry' (alternately, goes to hot-spot) \[allout-beginning-of-line] `allout-beginning-of-line' -- like regular beginning-of-line, but if immediately repeated cycles to the beginning of the current item and then to the hot-spot (if `allout-beginning-of-line-cycles' is set). Topic Header Production: ----------------------- \[allout-open-sibtopic] `allout-open-sibtopic' Create a new sibling after current topic. \[allout-open-subtopic] `allout-open-subtopic' ... an offspring of current topic. \[allout-open-supertopic] `allout-open-supertopic' ... a sibling of the current topic's parent. Topic Level and Prefix Adjustment: --------------------------------- \[allout-shift-in] `allout-shift-in' Shift current topic and all offspring deeper \[allout-shift-out] `allout-shift-out' ... less deep \[allout-rebullet-current-heading] `allout-rebullet-current-heading' Prompt for alternate bullet for current topic \[allout-rebullet-topic] `allout-rebullet-topic' Reconcile bullets of topic and its offspring -- distinctive bullets are not changed, others are alternated according to nesting depth. \[allout-number-siblings] `allout-number-siblings' Number bullets of topic and siblings -- the offspring are not affected. With repeat count, revoke numbering. Topic-oriented Killing and Yanking: ---------------------------------- \[allout-kill-topic] `allout-kill-topic' Kill current topic, including offspring. \[allout-copy-topic-as-kill] `allout-copy-topic-as-kill' Copy current topic, including offspring. \[allout-kill-line] `allout-kill-line' Kill line, attending to outline structure. \[allout-copy-line-as-kill] `allout-copy-line-as-kill' Copy line but don't delete it. \[allout-yank] `allout-yank' Yank, adjusting depth of yanked topic to depth of heading if yanking into bare topic heading (ie, prefix sans text). \[allout-yank-pop] `allout-yank-pop' Is to `allout-yank' as `yank-pop' is to `yank'. Topic-oriented Encryption: ------------------------- \[allout-toggle-current-subtree-encryption] `allout-toggle-current-subtree-encryption' Encrypt/Decrypt topic content Misc commands: ------------- M-x outlineify-sticky Activate outline mode for current buffer, and establish a default file-var setting for `allout-layout'. \[allout-mark-topic] `allout-mark-topic' \[allout-copy-exposed-to-buffer] `allout-copy-exposed-to-buffer' Duplicate outline, sans concealed text, to buffer with name derived from derived from that of current buffer -- "*BUFFERNAME exposed*". \[allout-flatten-exposed-to-buffer] `allout-flatten-exposed-to-buffer' Like above `copy-exposed', but convert topic prefixes to section.subsection... numeric format. \[customize-variable] allout-auto-activation Prepare Emacs session for allout outline mode auto-activation. Topic Encryption Outline mode supports gpg encryption of topics, with support for symmetric and key-pair modes, and auto-encryption of topics pending encryption on save. Topics pending encryption are, by default, automatically encrypted during file saves, including checkpoint saves, to avoid exposing the plain text of encrypted topics in the file system. If the content of the topic containing the cursor was encrypted for a save, it is automatically decrypted for continued editing. NOTE: A few GnuPG v2 versions improperly preserve incorrect symmetric decryption keys, preventing entry of the correct key on subsequent decryption attempts until the cache times-out. That can take several minutes. (Decryption of other entries is not affected.) Upgrade your EasyPG version, if you can, and you can deliberately clear your gpg-agent's cache by sending it a `-HUP' signal. See `allout-toggle-current-subtree-encryption' function docstring and `allout-encrypt-unencrypted-on-saves' customization variable for details. HOT-SPOT Operation Hot-spot operation provides a means for easy, single-keystroke outline navigation and exposure control. When the text cursor is positioned directly on the bullet character of a topic, regular characters (a to z) invoke the commands of the corresponding allout-mode keymap control chars. For example, "f" would invoke the command typically bound to "C-c<space>C-f" (\[allout-forward-current-level] `allout-forward-current-level'). Thus, by positioning the cursor on a topic bullet, you can execute the outline navigation and manipulation commands with a single keystroke. Regular navigation keys (eg, \[forward-char], \[next-line]) don't get this special translation, so you can use them to get out of the hot-spot and back to normal editing operation. In allout-mode, the normal beginning-of-line command (\[allout-beginning-of-line]) is replaced with one that makes it easy to get to the hot-spot. If you repeat it immediately it cycles (if `allout-beginning-of-line-cycles' is set) to the beginning of the item and then, if you hit it again immediately, to the hot-spot. Similarly, `allout-beginning-of-current-entry' (\[allout-beginning-of-current-entry]) moves to the hot-spot when the cursor is already located at the beginning of the current entry. Extending Allout Allout exposure and authoring activities all have associated hooks, by which independent code can cooperate with allout without changes to the allout core. Here are key ones: `allout-mode-hook' `allout-mode-deactivate-hook' (deprecated) `allout-mode-off-hook' `allout-exposure-change-functions' `allout-structure-added-functions' `allout-structure-deleted-functions' `allout-structure-shifted-functions' `allout-after-copy-or-kill-hook' `allout-post-undo-hook' Terminology Topic hierarchy constituents -- TOPICS and SUBTOPICS: ITEM: A unitary outline element, including the HEADER and ENTRY text. TOPIC: An ITEM and any ITEMs contained within it, ie having greater DEPTH and with no intervening items of lower DEPTH than the container. CURRENT ITEM: The visible ITEM most immediately containing the cursor. DEPTH: The degree of nesting of an ITEM; it increases with containment. The DEPTH is determined by the HEADER PREFIX. The DEPTH is also called the: LEVEL: The same as DEPTH. ANCESTORS: Those ITEMs whose TOPICs contain an ITEM. PARENT: An ITEM's immediate ANCESTOR. It has a DEPTH one less than that of the ITEM. OFFSPRING: The ITEMs contained within an ITEM's TOPIC. SUBTOPIC: An OFFSPRING of its ANCESTOR TOPICs. CHILD: An immediate SUBTOPIC of its PARENT. SIBLINGS: TOPICs having the same PARENT and DEPTH. Topic text constituents: HEADER: The first line of an ITEM, include the ITEM PREFIX and HEADER text. ENTRY: The text content of an ITEM, before any OFFSPRING, but including the HEADER text and distinct from the ITEM PREFIX. BODY: Same as ENTRY. PREFIX: The leading text of an ITEM which distinguishes it from normal ENTRY text. Allout recognizes the outline structure according to the strict PREFIX format. It consists of a PREFIX-LEAD string, PREFIX-PADDING, and a BULLET. The BULLET might be followed by a number, indicating the ordinal number of the topic among its siblings, or an asterisk indicating encryption, plus an optional space. After that is the ITEM HEADER text, which is not part of the PREFIX. The relative length of the PREFIX determines the nesting DEPTH of the ITEM. PREFIX-LEAD: The string at the beginning of a HEADER PREFIX, by default a `.'. It can be customized by changing the setting of `allout-header-prefix' and then reinitializing `allout-mode'. When the PREFIX-LEAD is set to the comment-string of a programming language, outline structuring can be embedded in program code without interfering with processing of the text (by Emacs or the language processor) as program code. This setting happens automatically when allout mode is used in programming-mode buffers. See `allout-use-mode-specific-leader' docstring for more detail. PREFIX-PADDING: Spaces or asterisks which separate the PREFIX-LEAD and the bullet, determining the ITEM's DEPTH. BULLET: A character at the end of the ITEM PREFIX, it must be one of the characters listed on `allout-plain-bullets-string' or `allout-distinctive-bullets-string'. When creating a TOPIC, plain BULLETs are by default used, according to the DEPTH of the TOPIC. Choice among the distinctive BULLETs is offered when you provide a universal argument (\[universal-argument]) to the TOPIC creation command, or when explicitly rebulleting a TOPIC. The significance of the various distinctive bullets is purely by convention. See the documentation for the above bullet strings for more details. EXPOSURE: The state of a TOPIC which determines the on-screen visibility of its OFFSPRING and contained ENTRY text. CONCEALED: TOPICs and ENTRY text whose EXPOSURE is inhibited. Concealed text is represented by "..." ellipses. CONCEALED TOPICs are effectively collapsed within an ANCESTOR. CLOSED: A TOPIC whose immediate OFFSPRING and body-text is CONCEALED. OPEN: A TOPIC that is not CLOSED, though its OFFSPRING or BODY may be. (fn &optional ARG)Foutlineify-sticky Activate outline mode and establish file var so it is started subsequently. See `allout-layout' and customization of `allout-auto-activation' for details on preparing Emacs for automatic allout activation. (fn &optional ARG)Fallout-widgets-setup Commission or decommission allout-widgets-mode along with allout-mode. Meant to be used by customization of `allout-widgets-auto-activation'. (fn VARNAME VALUE)Vallout-widgets-auto-activation Activate to enable allout icon graphics wherever allout mode is active. Also enable `allout-auto-activation' for this to take effect upon visiting an outline. When this is set you can disable allout widgets in select files by setting `allout-widgets-mode-inhibit' Instead of setting `allout-widgets-auto-activation' you can explicitly invoke `allout-widgets-mode' in allout buffers where you want allout widgets operation. See `allout-widgets-mode' for allout widgets mode features.Fallout-widgets-mode Toggle Allout Widgets mode. With a prefix argument ARG, enable Allout Widgets mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Allout Widgets mode is an extension of Allout mode that provides graphical decoration of outline structure. It is meant to operate along with `allout-mode', via `allout-mode-hook'. The graphics include: - guide lines connecting item bullet-icons with those of their subitems. - icons for item bullets, varying to indicate whether or not the item has subitems, and if so, whether or not the item is expanded. - cue area between the bullet-icon and the start of the body headline, for item numbering, encryption indicator, and distinctive bullets. The bullet-icon and guide line graphics provide keybindings and mouse bindings for easy outline navigation and exposure control, extending outline hot-spot navigation (see `allout-mode'). (fn &optional ARG)Fange-ftp-reread-dir Reread remote directory DIR to update the directory cache. The implementation of remote FTP file names caches directory contents for speed. Therefore, when new remote files are created, Emacs may not know they exist. You can use this command to reread a specific directory, so that Emacs will know its current contents. (fn &optional DIR)Fange-ftp-hook-function (fn OPERATION &rest ARGS)Fanimate-string Display STRING animations starting at position VPOS, HPOS. The characters start at randomly chosen places, and all slide in parallel to their final positions, passing through `animate-n-steps' positions before the final ones. If HPOS is nil (or omitted), center the string horizontally in the current window. (fn STRING VPOS &optional HPOS)Fanimate-sequence Display animation strings from LIST-OF-STRING with buffer *Animation*. Strings will be separated from each other by SPACE lines. When the variable `animation-buffer-name' is non-nil display animation in the buffer named by variable's value, creating the buffer if one does not exist. (fn LIST-OF-STRINGS SPACE)Fanimate-birthday-present Return a birthday present in the buffer *Birthday-Present*. When optional arg NAME is non-nil or called-interactively, prompt for NAME of birthday present receiver and return a birthday present in the buffer *Birthday-Present-for-Name*. (fn &optional NAME)Fansi-color-for-comint-mode-on Set `ansi-color-for-comint-mode' to t. (fn)Fansi-color-process-output Maybe translate SGR control sequences of comint output into text properties. Depending on variable `ansi-color-for-comint-mode' the comint output is either not processed, SGR control sequences are filtered using `ansi-color-filter-region', or SGR control sequences are translated into text properties using `ansi-color-apply-on-region'. The comint output is assumed to lie between the marker `comint-last-output-start' and the process-mark. This is a good function to put in `comint-output-filter-functions'. (fn IGNORED)Fantlr-show-makefile-rules Show Makefile rules for all grammar files in the current directory. If the `major-mode' of the current buffer has the value `makefile-mode', the rules are directory inserted at point. Otherwise, a *Help* buffer is shown with the rules which are also put into the `kill-ring' for \[yank]. This command considers import/export vocabularies and grammar inheritance and provides a value for the "-glib" option if necessary. Customize variable `antlr-makefile-specification' for the appearance of the rules. If the file for a super-grammar cannot be determined, special file names are used according to variable `antlr-unknown-file-formats' and a commentary with value `antlr-help-unknown-file-text' is added. The *Help* buffer always starts with the text in `antlr-help-rules-intro'. (fn)Fantlr-mode Major mode for editing ANTLR grammar files. (fn)Fantlr-set-tabs Use ANTLR's convention for TABs according to `antlr-tab-offset-alist'. Used in `antlr-mode'. Also a useful function in `java-mode-hook'. (fn)Fappt-add Add an appointment for today at TIME with message MSG. The time should be in either 24 hour format or am/pm format. Optional argument WARNTIME is an integer (or string) giving the number of minutes before the appointment at which to start warning. The default is `appt-message-warning-time'. (fn TIME MSG &optional WARNTIME)Fappt-activate Toggle checking of appointments. With optional numeric argument ARG, turn appointment checking on if ARG is positive, otherwise off. (fn &optional ARG)Fapropos-read-pattern Read an apropos pattern, either a word list or a regexp. Returns the user pattern, either a list of words which are matched literally, or a string which is used as a regexp to search for. SUBJECT is a string that is included in the prompt to identify what kind of objects to search. (fn SUBJECT)Fapropos-user-option Show user options that match PATTERN. PATTERN can be a word, a list of words (separated by spaces), or a regexp (using some regexp special characters). If it is a word, search for matches for that word as a substring. If it is a list of words, search for matches for any two (or more) of those words. With \[universal-argument] prefix, or if `apropos-do-all' is non-nil, also show variables, not just user options. (fn PATTERN &optional DO-ALL)Fapropos-variable Show variables that match PATTERN. With the optional argument DO-NOT-ALL non-nil (or when called interactively with the prefix \[universal-argument]), show user options only, i.e. behave like `apropos-user-option'. (fn PATTERN &optional DO-NOT-ALL)Fapropos-local-variable Show buffer-local variables that match PATTERN. Optional arg BUFFER (default: current buffer) is the buffer to check. The output includes variables that are not yet set in BUFFER, but that will be buffer-local when set. (fn PATTERN &optional BUFFER)Fapropos-command Show commands (interactively callable functions) that match PATTERN. PATTERN can be a word, a list of words (separated by spaces), or a regexp (using some regexp special characters). If it is a word, search for matches for that word as a substring. If it is a list of words, search for matches for any two (or more) of those words. With \[universal-argument] prefix, or if `apropos-do-all' is non-nil, also show noninteractive functions. If VAR-PREDICATE is non-nil, show only variables, and only those that satisfy the predicate VAR-PREDICATE. When called from a Lisp program, a string PATTERN is used as a regexp, while a list of strings is used as a word list. (fn PATTERN &optional DO-ALL VAR-PREDICATE)Fapropos-documentation-property Like (documentation-property SYMBOL PROPERTY RAW) but handle errors. (fn SYMBOL PROPERTY RAW)Fapropos Show all meaningful Lisp symbols whose names match PATTERN. Symbols are shown if they are defined as functions, variables, or faces, or if they have nonempty property lists. PATTERN can be a word, a list of words (separated by spaces), or a regexp (using some regexp special characters). If it is a word, search for matches for that word as a substring. If it is a list of words, search for matches for any two (or more) of those words. With \[universal-argument] prefix, or if `apropos-do-all' is non-nil, consider all symbols (if they match PATTERN). Returns list of symbols and documentation found. (fn PATTERN &optional DO-ALL)Fapropos-library List the variables and functions defined by library FILE. FILE should be one of the libraries currently loaded and should thus be found in `load-history'. If `apropos-do-all' is non-nil, the output includes key-bindings of commands. (fn FILE)Fapropos-value Show all symbols whose value's printed representation matches PATTERN. PATTERN can be a word, a list of words (separated by spaces), or a regexp (using some regexp special characters). If it is a word, search for matches for that word as a substring. If it is a list of words, search for matches for any two (or more) of those words. With \[universal-argument] prefix, or if `apropos-do-all' is non-nil, also looks at function definitions (arguments, documentation and body) and at the names and values of properties. Returns list of symbols and values found. (fn PATTERN &optional DO-ALL)Fapropos-local-value Show buffer-local variables whose values match PATTERN. This is like `apropos-value', but only for buffer-local variables. Optional arg BUFFER (default: current buffer) is the buffer to check. (fn PATTERN &optional BUFFER)Fapropos-documentation Show symbols whose documentation contains matches for PATTERN. PATTERN can be a word, a list of words (separated by spaces), or a regexp (using some regexp special characters). If it is a word, search for matches for that word as a substring. If it is a list of words, search for matches for any two (or more) of those words. Note that by default this command only searches in the file specified by `internal-doc-file-name'; i.e., the etc/DOC file. With \[universal-argument] prefix, or if `apropos-do-all' is non-nil, it searches all currently defined documentation strings. Returns list of symbols and documentation found. (fn PATTERN &optional DO-ALL)Farchive-mode Major mode for viewing an archive file in a dired-like way. You can move around using the usual cursor motion commands. Letters no longer insert themselves. Type `e' to pull a file out of the archive and into its own buffer; or click mouse-2 on the file's line in the archive mode buffer. If you edit a sub-file of this archive (as with the `e' command) and save it, the contents of that buffer will be saved back into the archive. \{archive-mode-map} (fn &optional FORCE)Farray-mode Major mode for editing arrays. Array mode is a specialized mode for editing arrays. An array is considered to be a two-dimensional set of strings. The strings are NOT recognized as integers or real numbers. The array MUST reside at the top of the buffer. TABs are not respected, and may be converted into spaces at any time. Setting the variable `array-respect-tabs' to non-nil will prevent TAB conversion, but will cause many functions to give errors if they encounter one. Upon entering array mode, you will be prompted for the values of several variables. Others will be calculated based on the values you supply. These variables are all local to the buffer. Other buffer in array mode may have different values assigned to the variables. The variables are: Variables you assign: array-max-row: The number of rows in the array. array-max-column: The number of columns in the array. array-columns-per-line: The number of columns in the array per line of buffer. array-field-width: The width of each field, in characters. array-rows-numbered: A logical variable describing whether to ignore row numbers in the buffer. Variables which are calculated: array-line-length: The number of characters in a buffer line. array-lines-per-row: The number of buffer lines used to display each row. The following commands are available (an asterisk indicates it may take a numeric prefix argument): * \<array-mode-map>\[array-forward-column] Move forward one column. * \[array-backward-column] Move backward one column. * \[array-next-row] Move down one row. * \[array-previous-row] Move up one row. * \[array-copy-forward] Copy the current field into the column to the right. * \[array-copy-backward] Copy the current field into the column to the left. * \[array-copy-down] Copy the current field into the row below. * \[array-copy-up] Copy the current field into the row above. * \[array-copy-column-forward] Copy the current column into the column to the right. * \[array-copy-column-backward] Copy the current column into the column to the left. * \[array-copy-row-down] Copy the current row into the row below. * \[array-copy-row-up] Copy the current row into the row above. \[array-fill-rectangle] Copy the field at mark into every cell with row and column between that of point and mark. \[array-what-position] Display the current array row and column. \[array-goto-cell] Go to a particular array cell. \[array-make-template] Make a template for a new array. \[array-reconfigure-rows] Reconfigure the array. \[array-expand-rows] Expand the array (remove row numbers and newlines inside rows) \[array-display-local-variables] Display the current values of local variables. Entering array mode calls the function `array-mode-hook'. (fn)Fartist-mode Toggle Artist mode. With argument ARG, turn Artist mode on if ARG is positive. Artist lets you draw lines, squares, rectangles and poly-lines, ellipses and circles with your mouse and/or keyboard. How to quit Artist mode Type \[artist-mode-off] to quit artist-mode. How to submit a bug report Type \[artist-submit-bug-report] to submit a bug report. Drawing with the mouse: mouse-2 shift mouse-2 Pops up a menu where you can select what to draw with mouse-1, and where you can do some settings (described below). mouse-1 shift mouse-1 Draws lines, rectangles or poly-lines, erases, cuts, copies or pastes: Operation Not shifted Shifted -------------------------------------------------------------- Pen fill-char at point line from last point to new point -------------------------------------------------------------- Line Line in any direction Straight line -------------------------------------------------------------- Rectangle Rectangle Square -------------------------------------------------------------- Poly-line Poly-line in any dir Straight poly-lines -------------------------------------------------------------- Ellipses Ellipses Circles -------------------------------------------------------------- Text Text (see thru) Text (overwrite) -------------------------------------------------------------- Spray-can Spray-can Set size for spray -------------------------------------------------------------- Erase Erase character Erase rectangle -------------------------------------------------------------- Vaporize Erase single line Erase connected lines -------------------------------------------------------------- Cut Cut rectangle Cut square -------------------------------------------------------------- Copy Copy rectangle Copy square -------------------------------------------------------------- Paste Paste Paste -------------------------------------------------------------- Flood-fill Flood-fill Flood-fill -------------------------------------------------------------- * Straight lines can only go horizontally, vertically or diagonally. * Poly-lines are drawn while holding mouse-1 down. When you release the button, the point is set. If you want a segment to be straight, hold down shift before pressing the mouse-1 button. Click mouse-2 or mouse-3 to stop drawing poly-lines. * See thru for text means that text already in the buffer will be visible through blanks in the text rendered, while overwrite means the opposite. * Vaporizing connected lines only vaporizes lines whose _endpoints_ are connected. See also the variable `artist-vaporize-fuzziness'. * Cut copies, then clears the rectangle/square. * When drawing lines or poly-lines, you can set arrows. See below under "Arrows" for more info. * The mode line shows the currently selected drawing operation. In addition, if it has an asterisk (*) at the end, you are currently drawing something. * Be patient when flood-filling -- large areas take quite some time to fill. mouse-3 Erases character under pointer shift mouse-3 Erases rectangle Settings Set fill Sets the character used when filling rectangles/squares Set line Sets the character used when drawing lines Erase char Sets the character used when erasing Rubber-banding Toggles rubber-banding Trimming Toggles trimming of line-endings (that is: when the shape is drawn, extraneous white-space at end of lines is removed) Borders Toggles the drawing of line borders around filled shapes Drawing with keys \[artist-key-set-point] Does one of the following: For lines/rectangles/squares: sets the first/second endpoint For poly-lines: sets a point (use C-u \[artist-key-set-point] to set last point) When erase characters: toggles erasing When cutting/copying: Sets first/last endpoint of rect/square When pasting: Pastes \[artist-select-operation] Selects what to draw Move around with \[artist-next-line], \[artist-previous-line], \[artist-forward-char] and \[artist-backward-char]. \[artist-select-fill-char] Sets the character to use when filling \[artist-select-line-char] Sets the character to use when drawing \[artist-select-erase-char] Sets the character to use when erasing \[artist-toggle-rubber-banding] Toggles rubber-banding \[artist-toggle-trim-line-endings] Toggles trimming of line-endings \[artist-toggle-borderless-shapes] Toggles borders on drawn shapes Arrows \[artist-toggle-first-arrow] Sets/unsets an arrow at the beginning of the line/poly-line \[artist-toggle-second-arrow] Sets/unsets an arrow at the end of the line/poly-line Selecting operation There are some keys for quickly selecting drawing operations: \[artist-select-op-line] Selects drawing lines \[artist-select-op-straight-line] Selects drawing straight lines \[artist-select-op-rectangle] Selects drawing rectangles \[artist-select-op-square] Selects drawing squares \[artist-select-op-poly-line] Selects drawing poly-lines \[artist-select-op-straight-poly-line] Selects drawing straight poly-lines \[artist-select-op-ellipse] Selects drawing ellipses \[artist-select-op-circle] Selects drawing circles \[artist-select-op-text-see-thru] Selects rendering text (see thru) \[artist-select-op-text-overwrite] Selects rendering text (overwrite) \[artist-select-op-spray-can] Spray with spray-can \[artist-select-op-spray-set-size] Set size for the spray-can \[artist-select-op-erase-char] Selects erasing characters \[artist-select-op-erase-rectangle] Selects erasing rectangles \[artist-select-op-vaporize-line] Selects vaporizing single lines \[artist-select-op-vaporize-lines] Selects vaporizing connected lines \[artist-select-op-cut-rectangle] Selects cutting rectangles \[artist-select-op-copy-rectangle] Selects copying rectangles \[artist-select-op-paste] Selects pasting \[artist-select-op-flood-fill] Selects flood-filling Variables This is a brief overview of the different variables. For more info, see the documentation for the variables (type \[describe-variable] <variable> RET). artist-rubber-banding Interactively do rubber-banding or not artist-first-char What to set at first/second point... artist-second-char ...when not rubber-banding artist-interface-with-rect If cut/copy/paste should interface with rect artist-arrows The arrows to use when drawing arrows artist-aspect-ratio Character height-to-width for squares artist-trim-line-endings Trimming of line endings artist-flood-fill-right-border Right border when flood-filling artist-flood-fill-show-incrementally Update display while filling artist-pointer-shape Pointer shape to use while drawing artist-ellipse-left-char Character to use for narrow ellipses artist-ellipse-right-char Character to use for narrow ellipses artist-borderless-shapes If shapes should have borders artist-picture-compatibility Whether or not to be picture mode compatible artist-vaporize-fuzziness Tolerance when recognizing lines artist-spray-interval Seconds between repeated sprayings artist-spray-radius Size of the spray-area artist-spray-chars The spray-"color" artist-spray-new-chars Initial spray-"color" Hooks Turning the mode on or off runs `artist-mode-hook'. Keymap summary \{artist-mode-map} (fn &optional ARG)Fasm-mode Major mode for editing typical assembler code. Features a private abbrev table and the following bindings: \[asm-colon] outdent a preceding label, tab to next tab stop. \[tab-to-tab-stop] tab to next tab stop. \[asm-newline] newline, then tab to next tab stop. \[asm-comment] smart placement of assembler comments. The character used for making comments is set by the variable `asm-comment-char' (which defaults to `?\;'). Alternatively, you may set this variable in `asm-mode-set-comment-hook', which is called near the beginning of mode initialization. Turning on Asm mode runs the hook `asm-mode-hook' at the end of initialization. Special commands: \{asm-mode-map} (fn)Vauth-source-cache-expiry How many seconds passwords are cached, or nil to disable expiring. Overrides `password-cache-expiry' through a let-binding.Fauth-source-pass-enable Enable auth-source-password-store. (fn)Vautoarg-mode Non-nil if Autoarg mode is enabled. See the `autoarg-mode' command for a description of this minor mode.Fautoarg-mode Toggle Autoarg mode, a global minor mode. With a prefix argument ARG, enable Autoarg mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. \<autoarg-mode-map> In Autoarg mode, digits are bound to `digit-argument', i.e. they supply prefix arguments as C-DIGIT and M-DIGIT normally do. Furthermore, C-DIGIT inserts DIGIT. \[autoarg-terminate] terminates the prefix sequence and inserts the digits of the autoarg sequence into the buffer. Without a numeric prefix arg, the normal binding of \[autoarg-terminate] is invoked, i.e. what it would be with Autoarg mode off. For example: `6 9 \[autoarg-terminate]' inserts `69' into the buffer, as does `C-6 C-9'. `6 9 a' inserts 69 `a's into the buffer. `6 9 \[autoarg-terminate] \[autoarg-terminate]' inserts `69' into the buffer and then invokes the normal binding of \[autoarg-terminate]. `C-u \[autoarg-terminate]' invokes the normal binding of \[autoarg-terminate] four times. \{autoarg-mode-map} (fn &optional ARG)Vautoarg-kp-mode Non-nil if Autoarg-Kp mode is enabled. See the `autoarg-kp-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `autoarg-kp-mode'.Fautoarg-kp-mode Toggle Autoarg-KP mode, a global minor mode. With a prefix argument ARG, enable Autoarg-KP mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. \<autoarg-kp-mode-map> This is similar to `autoarg-mode' but rebinds the keypad keys `kp-1' etc. to supply digit arguments. \{autoarg-kp-mode-map} (fn &optional ARG)Fautoconf-mode Major mode for editing Autoconf configure.ac files. (fn)Fauto-insert Insert default contents into new files if variable `auto-insert' is non-nil. Matches the visited file name against the elements of `auto-insert-alist'. (fn)Fdefine-auto-insert Associate CONDITION with (additional) ACTION in `auto-insert-alist'. Optional AFTER means to insert action after all existing actions for CONDITION, or if CONDITION had no actions, after all other CONDITIONs. (fn CONDITION ACTION &optional AFTER)Vauto-insert-mode Non-nil if Auto-Insert mode is enabled. See the `auto-insert-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `auto-insert-mode'.Fauto-insert-mode Toggle Auto-insert mode, a global minor mode. With a prefix argument ARG, enable Auto-insert mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Auto-insert mode is enabled, when new files are created you can insert a template for the file depending on the mode of the buffer. (fn &optional ARG)Fupdate-file-autoloads Update the autoloads for FILE. If prefix arg SAVE-AFTER is non-nil, save the buffer too. If FILE binds `generated-autoload-file' as a file-local variable, autoloads are written into that file. Otherwise, the autoloads file is determined by OUTFILE. If called interactively, prompt for OUTFILE; if called from Lisp with OUTFILE nil, use the existing value of `generated-autoload-file'. Return FILE if there was no autoload cookie in it, else nil. (fn FILE &optional SAVE-AFTER OUTFILE)Fupdate-directory-autoloads Update autoload definitions for Lisp files in the directories DIRS. In an interactive call, you must give one argument, the name of a single directory. In a call from Lisp, you can supply multiple directories as separate arguments, but this usage is discouraged. The function does NOT recursively descend into subdirectories of the directory or directories specified. In an interactive call, prompt for a default output file for the autoload definitions, and temporarily bind the variable `generated-autoload-file' to this value. When called from Lisp, use the existing value of `generated-autoload-file'. If any Lisp file binds `generated-autoload-file' as a file-local variable, write its autoloads into the specified file instead. (fn &rest DIRS)Fbatch-update-autoloads Update loaddefs.el autoloads in batch mode. Calls `update-directory-autoloads' on the command line arguments. Definitions are written to `generated-autoload-file' (which should be non-nil). (fn)Fauto-revert-mode Toggle reverting buffer when the file changes (Auto-Revert Mode). With a prefix argument ARG, enable Auto-Revert Mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Auto-Revert Mode is a minor mode that affects only the current buffer. When enabled, it reverts the buffer when the file on disk changes. When a buffer is reverted, a message is generated. This can be suppressed by setting `auto-revert-verbose' to nil. Use `global-auto-revert-mode' to automatically revert all buffers. Use `auto-revert-tail-mode' if you know that the file will only grow without being changed in the part that is already in the buffer. (fn &optional ARG)Fturn-on-auto-revert-mode Turn on Auto-Revert Mode. This function is designed to be added to hooks, for example: (add-hook \='c-mode-hook #\='turn-on-auto-revert-mode) (fn)Fauto-revert-tail-mode Toggle reverting tail of buffer when the file grows. With a prefix argument ARG, enable Auto-Revert Tail Mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Auto-Revert Tail Mode is enabled, the tail of the file is constantly followed, as with the shell command `tail -f'. This means that whenever the file grows on disk (presumably because some background process is appending to it from time to time), this is reflected in the current buffer. You can edit the buffer and turn this mode off and on again as you please. But make sure the background process has stopped writing before you save the file! When a buffer is reverted, a message is generated. This can be suppressed by setting `auto-revert-verbose' to nil. Use `auto-revert-mode' for changes other than appends! (fn &optional ARG)Fturn-on-auto-revert-tail-mode Turn on Auto-Revert Tail Mode. This function is designed to be added to hooks, for example: (add-hook \='my-logfile-mode-hook #\='turn-on-auto-revert-tail-mode) (fn)Vglobal-auto-revert-mode Non-nil if Global Auto-Revert mode is enabled. See the `global-auto-revert-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-auto-revert-mode'.Fglobal-auto-revert-mode Toggle Global Auto-Revert Mode. With a prefix argument ARG, enable Global Auto-Revert Mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Global Auto-Revert Mode is a global minor mode that reverts any buffer associated with a file when the file changes on disk. Use `auto-revert-mode' to revert a particular buffer. If `global-auto-revert-non-file-buffers' is non-nil, this mode may also revert some non-file buffers, as described in the documentation of that variable. It ignores buffers with modes matching `global-auto-revert-ignore-modes', and buffers with a non-nil value of `global-auto-revert-ignore-buffer'. When a buffer is reverted, a message is generated. This can be suppressed by setting `auto-revert-verbose' to nil. This function calls the hook `global-auto-revert-mode-hook'. It displays the text that `global-auto-revert-mode-text' specifies in the mode line. (fn &optional ARG)Vmouse-avoidance-mode Activate Mouse Avoidance mode. See function `mouse-avoidance-mode' for possible values. Setting this variable directly does not take effect; use either \[customize] or the function `mouse-avoidance-mode'.Fmouse-avoidance-mode Set Mouse Avoidance mode to MODE. MODE should be one of the symbols `banish', `exile', `jump', `animate', `cat-and-mouse', `proteus', or `none'. If MODE is nil, toggle mouse avoidance between `none' and `banish' modes. Positive numbers and symbols other than the above are treated as equivalent to `banish'; negative numbers and `-' are equivalent to `none'. Effects of the different modes: * banish: Move the mouse to the upper-right corner on any keypress. * exile: Move the mouse to the corner only if the cursor gets too close, and allow it to return once the cursor is out of the way. * jump: If the cursor gets too close to the mouse, displace the mouse a random distance & direction. * animate: As `jump', but shows steps along the way for illusion of motion. * cat-and-mouse: Same as `animate'. * proteus: As `animate', but changes the shape of the mouse pointer too. (See `mouse-avoidance-threshold' for definition of "too close", and `mouse-avoidance-nudge-dist' and `mouse-avoidance-nudge-var' for definition of "random distance".) (fn &optional MODE)Fbat-mode Major mode for editing DOS/Windows batch files. Start a new script from `bat-template'. Read help pages for DOS commands with `bat-cmd-help'. Navigate between sections using `imenu'. Run script using `bat-run' and `bat-run-args'. \{bat-mode-map} (fn)Fbattery Display battery status information in the echo area. The text being displayed in the echo area is controlled by the variables `battery-echo-area-format' and `battery-status-function'. (fn)Vdisplay-battery-mode Non-nil if Display-Battery mode is enabled. See the `display-battery-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `display-battery-mode'.Fdisplay-battery-mode Toggle battery status display in mode line (Display Battery mode). With a prefix argument ARG, enable Display Battery mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. The text displayed in the mode line is controlled by `battery-mode-line-format' and `battery-status-function'. The mode line is be updated every `battery-update-interval' seconds. (fn &optional ARG)Fbenchmark-run Time execution of FORMS. If REPETITIONS is supplied as a number, run forms that many times, accounting for the overhead of the resulting loop. Otherwise run FORMS once. Return a list of the total elapsed time for execution, the number of garbage collections that ran, and the time taken by garbage collection. See also `benchmark-run-compiled'. (fn &optional REPETITIONS &rest FORMS)Fbenchmark-run-compiled Time execution of compiled version of FORMS. This is like `benchmark-run', but what is timed is a funcall of the byte code obtained by wrapping FORMS in a `lambda' and compiling the result. The overhead of the `lambda's is accounted for. (fn &optional REPETITIONS &rest FORMS)Fbenchmark Print the time taken for REPETITIONS executions of FORM. Interactively, REPETITIONS is taken from the prefix arg, and the command prompts for the form to benchmark. For non-interactive use see also `benchmark-run' and `benchmark-run-compiled'. (fn REPETITIONS FORM)Fbibtex-initialize (Re)Initialize BibTeX buffers. Visit the BibTeX files defined by `bibtex-files' and return a list of corresponding buffers. Initialize in these buffers `bibtex-reference-keys' if not yet set. List of BibTeX buffers includes current buffer if CURRENT is non-nil and the current buffer visits a file using `bibtex-mode'. If FORCE is non-nil, (re)initialize `bibtex-reference-keys' even if already set. If SELECT is non-nil interactively select a BibTeX buffer. When called interactively, FORCE is t, CURRENT is t if current buffer visits a file using `bibtex-mode', and SELECT is t if current buffer does not use `bibtex-mode', (fn &optional CURRENT FORCE SELECT)Fbibtex-mode Major mode for editing BibTeX files. General information on working with BibTeX mode: Use commands such as \<bibtex-mode-map>\[bibtex-Book] to get a template for a specific entry. Then fill in all desired fields using \[bibtex-next-field] to jump from field to field. After having filled in all desired fields in the entry, clean the new entry with the command \[bibtex-clean-entry]. Some features of BibTeX mode are available only by setting the variable `bibtex-maintain-sorted-entries' to non-nil. However, then BibTeX mode works only with buffers containing valid (syntactically correct) and sorted entries. This is usually the case, if you have created a buffer completely with BibTeX mode and finished every new entry with \[bibtex-clean-entry]. For third party BibTeX files, call the command \[bibtex-convert-alien] to fully take advantage of all features of BibTeX mode. Special information: A command such as \[bibtex-Book] outlines the fields for a BibTeX book entry. The names of optional fields start with the string OPT, and are thus ignored by BibTeX. The names of alternative fields from which only one is required start with the string ALT. The OPT or ALT string may be removed from the name of a field with \[bibtex-remove-OPT-or-ALT]. \[bibtex-make-field] inserts a new field after the current one. \[bibtex-kill-field] kills the current field entirely. \[bibtex-yank] yanks the last recently killed field after the current field. \[bibtex-remove-delimiters] removes the double-quotes or braces around the text of the current field. \[bibtex-empty-field] replaces the text of the current field with the default "" or {}. \[bibtex-find-text] moves point to the end of the current field. \[completion-at-point] completes word fragment before point according to context. The command \[bibtex-clean-entry] cleans the current entry, i.e. it removes OPT/ALT from the names of all non-empty optional or alternative fields, checks that no required fields are empty, and does some formatting dependent on the value of `bibtex-entry-format'. Furthermore, it can automatically generate a key for the BibTeX entry, see `bibtex-generate-autokey'. Note: some functions in BibTeX mode depend on entries being in a special format (all fields beginning on separate lines), so it is usually a bad idea to remove `realign' from `bibtex-entry-format'. BibTeX mode supports Imenu and hideshow minor mode (`hs-minor-mode'). ---------------------------------------------------------- Entry to BibTeX mode calls the value of `bibtex-mode-hook' if that value is non-nil. \{bibtex-mode-map} (fn)Fbibtex-search-entry Move point to the beginning of BibTeX entry named KEY. Return position of entry if KEY is found or nil if not found. With GLOBAL non-nil, search KEY in `bibtex-files'. Otherwise the search is limited to the current buffer. Optional arg START is buffer position where the search starts. If it is nil, start search at beginning of buffer. If DISPLAY is non-nil, display the buffer containing KEY. Otherwise, use `set-buffer'. When called interactively, START is nil, DISPLAY is t. Also, GLOBAL is t if the current mode is not `bibtex-mode' or `bibtex-search-entry-globally' is non-nil. A prefix arg negates the value of `bibtex-search-entry-globally'. (fn KEY &optional GLOBAL START DISPLAY)Fbibtex-style-mode Major mode for editing BibTeX style files. (fn)Vbinhex-begin-line Regular expression matching the start of a BinHex encoded region.Fbinhex-decode-region-internal Binhex decode region between START and END without using an external program. If HEADER-ONLY is non-nil only decode header and return filename. (fn START END &optional HEADER-ONLY)Fbinhex-decode-region-external Binhex decode region between START and END using external decoder. (fn START END)Fbinhex-decode-region Binhex decode region between START and END. (fn START END)Fblackbox Play blackbox. Optional prefix argument is the number of balls; the default is 4. What is blackbox? Blackbox is a game of hide and seek played on an 8 by 8 grid (the Blackbox). Your opponent (Emacs, in this case) has hidden several balls (usually 4) within this box. By shooting rays into the box and observing where they emerge it is possible to deduce the positions of the hidden balls. The fewer rays you use to find the balls, the lower your score. Overview of play: \<blackbox-mode-map>To play blackbox, type \[blackbox]. An optional prefix argument specifies the number of balls to be hidden in the box; the default is four. The cursor can be moved around the box with the standard cursor movement keys. To shoot a ray, move the cursor to the edge of the box and press SPC. The result will be determined and the playfield updated. You may place or remove balls in the box by moving the cursor into the box and pressing \[bb-romp]. When you think the configuration of balls you have placed is correct, press \[bb-done]. You will be informed whether you are correct or not, and be given your score. Your score is the number of letters and numbers around the outside of the box plus five for each incorrectly placed ball. If you placed any balls incorrectly, they will be indicated with `x', and their actual positions indicated with `o'. Details: There are three possible outcomes for each ray you send into the box: Detour: the ray is deflected and emerges somewhere other than where you sent it in. On the playfield, detours are denoted by matching pairs of numbers -- one where the ray went in, and the other where it came out. Reflection: the ray is reflected and emerges in the same place it was sent in. On the playfield, reflections are denoted by the letter `R'. Hit: the ray strikes a ball directly and is absorbed. It does not emerge from the box. On the playfield, hits are denoted by the letter `H'. The rules for how balls deflect rays are simple and are best shown by example. As a ray approaches a ball it is deflected ninety degrees. Rays can be deflected multiple times. In the diagrams below, the dashes represent empty box locations and the letter `O' represents a ball. The entrance and exit points of each ray are marked with numbers as described under "Detour" above. Note that the entrance and exit points are always interchangeable. `*' denotes the path taken by the ray. Note carefully the relative positions of the ball and the ninety degree deflection it causes. 1 - * - - - - - - - - - - - - - - - - - - - - - - - * - - - - - - - - - - - - - - - - - - - - - - 1 * * - - - - - - - - - - - - - - - O - - - - O - - - O - - - - - - - O - - - - - - - * * * * - - - - - - - - - - - - - * * * * * 2 3 * * * - - * - - - - - - - - - - - - - * - - - - - - - O - * - - - - - - - - - - - - - * - - - - - - - - * * - - - - - - - - - - - - - * - - - - - - - - * - O - 2 3 As mentioned above, a reflection occurs when a ray emerges from the same point it was sent in. This can happen in several ways: - - - - - - - - - - - - - - - - - - - - - - - - - - - - O - - - - - O - O - - - - - - - - - - - R * * * * - - - - - - - * - - - - O - - - - - - - - - - - O - - - - - - * - - - - R - - - - - - - - - - - - - - - - - - - * - - - - - - - - - - - - - - - - - - - - - - - * - - - - - - - - - - - - - - - - - - - - R * * * * - - - - - - - - - - - - - - - - - - - - - - - - O - - - - - - - - - - - In the first example, the ray is deflected downwards by the upper ball, then left by the lower ball, and finally retraces its path to its point of origin. The second example is similar. The third example is a bit anomalous but can be rationalized by realizing the ray never gets a chance to get into the box. Alternatively, the ray can be thought of as being deflected downwards and immediately emerging from the box. A hit occurs when a ray runs straight into a ball: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - O - - - - - - - - - - - - - - - O - - - H * * * * - - - - - - - - - - - - H * * * * O - - - - - - * - - - - - - - - - - - - - - - - O - - - - - - O - - - - H * * * O - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Be sure to compare the second example of a hit with the first example of a reflection. (fn NUM)Vbookmark-map Keymap containing bindings to bookmark functions. It is not bound to any key by default: to bind it so that you have a bookmark prefix, just use `global-set-key' and bind a key of your choice to `bookmark-map'. All interactive bookmark functions have a binding in this keymap.Fbookmark-set Set a bookmark named NAME at the current location. If NAME is nil, then prompt the user. With a prefix arg (non-nil NO-OVERWRITE), do not overwrite any existing bookmark that has the same name as NAME, but instead push the new bookmark onto the bookmark alist. The most recently set bookmark with name NAME is thus the one in effect at any given time, but the others are still there, should the user decide to delete the most recent one. To yank words from the text of the buffer and use them as part of the bookmark name, type C-w while setting a bookmark. Successive C-w's yank successive words. Typing C-u inserts (at the bookmark name prompt) the name of the last bookmark used in the document where the new bookmark is being set; this helps you use a single bookmark name to track progress through a large document. If there is no prior bookmark for this document, then C-u inserts an appropriate name based on the buffer or file. Use \[bookmark-delete] to remove bookmarks (you give it a name and it removes only the first instance of a bookmark with that name from the list of bookmarks.) (fn &optional NAME NO-OVERWRITE)Fbookmark-set-no-overwrite Set a bookmark named NAME at the current location. If NAME is nil, then prompt the user. If a bookmark named NAME already exists and prefix argument PUSH-BOOKMARK is non-nil, then push the new bookmark onto the bookmark alist. Pushing it means that among bookmarks named NAME, this one becomes the one in effect, but the others are still there, in order, and become effective again if the user ever deletes the most recent one. Otherwise, if a bookmark named NAME already exists but PUSH-BOOKMARK is nil, raise an error. To yank words from the text of the buffer and use them as part of the bookmark name, type C-w while setting a bookmark. Successive C-w's yank successive words. Typing C-u inserts (at the bookmark name prompt) the name of the last bookmark used in the document where the new bookmark is being set; this helps you use a single bookmark name to track progress through a large document. If there is no prior bookmark for this document, then C-u inserts an appropriate name based on the buffer or file. Use \[bookmark-delete] to remove bookmarks (you give it a name and it removes only the first instance of a bookmark with that name from the list of bookmarks.) (fn &optional NAME PUSH-BOOKMARK)Fbookmark-jump Jump to bookmark BOOKMARK (a point in some file). You may have a problem using this function if the value of variable `bookmark-alist' is nil. If that happens, you need to load in some bookmarks. See help on function `bookmark-load' for more about this. If the file pointed to by BOOKMARK no longer exists, you will be asked if you wish to give the bookmark a new location, and `bookmark-jump' will then jump to the new location, as well as recording it in place of the old one in the permanent bookmark record. BOOKMARK is usually a bookmark name (a string). It can also be a bookmark record, but this is usually only done by programmatic callers. If DISPLAY-FUNC is non-nil, it is a function to invoke to display the bookmark. It defaults to `pop-to-buffer-same-window'. A typical value for DISPLAY-FUNC would be `switch-to-buffer-other-window'. (fn BOOKMARK &optional DISPLAY-FUNC)Fbookmark-jump-other-window Jump to BOOKMARK in another window. See `bookmark-jump' for more. (fn BOOKMARK)Fbookmark-relocate Relocate BOOKMARK-NAME to another file, reading file name with minibuffer. This makes an already existing bookmark point to that file, instead of the one it used to point at. Useful when a file has been renamed after a bookmark was set in it. (fn BOOKMARK-NAME)Fbookmark-insert-location Insert the name of the file associated with BOOKMARK-NAME. Optional second arg NO-HISTORY means don't record this in the minibuffer history list `bookmark-history'. (fn BOOKMARK-NAME &optional NO-HISTORY)Fbookmark-rename Change the name of OLD-NAME bookmark to NEW-NAME name. If called from keyboard, prompt for OLD-NAME and NEW-NAME. If called from menubar, select OLD-NAME from a menu and prompt for NEW-NAME. If called from Lisp, prompt for NEW-NAME if only OLD-NAME was passed as an argument. If called with two strings, then no prompting is done. You must pass at least OLD-NAME when calling from Lisp. While you are entering the new name, consecutive C-w's insert consecutive words from the text of the buffer into the new bookmark name. (fn OLD-NAME &optional NEW-NAME)Fbookmark-insert Insert the text of the file pointed to by bookmark BOOKMARK-NAME. BOOKMARK-NAME is a bookmark name (a string), not a bookmark record. You may have a problem using this function if the value of variable `bookmark-alist' is nil. If that happens, you need to load in some bookmarks. See help on function `bookmark-load' for more about this. (fn BOOKMARK-NAME)Fbookmark-delete Delete BOOKMARK-NAME from the bookmark list. Removes only the first instance of a bookmark with that name. If there are one or more other bookmarks with the same name, they will not be deleted. Defaults to the "current" bookmark (that is, the one most recently used in this file, if any). Optional second arg BATCH means don't update the bookmark list buffer, probably because we were called from there. (fn BOOKMARK-NAME &optional BATCH)Fbookmark-write Write bookmarks to a file (reading the file name with the minibuffer). (fn)Fbookmark-save Save currently defined bookmarks. Saves by default in the file defined by the variable `bookmark-default-file'. With a prefix arg, save it in file FILE (second argument). If you are calling this from Lisp, the two arguments are PARG and FILE, and if you just want it to write to the default file, then pass no arguments. Or pass in nil and FILE, and it will save in FILE instead. If you pass in one argument, and it is non-nil, then the user will be interactively queried for a file to save in. When you want to load in the bookmarks from a file, use `bookmark-load', \[bookmark-load]. That function will prompt you for a file, defaulting to the file defined by variable `bookmark-default-file'. (fn &optional PARG FILE)Fbookmark-load Load bookmarks from FILE (which must be in bookmark format). Appends loaded bookmarks to the front of the list of bookmarks. If optional second argument OVERWRITE is non-nil, existing bookmarks are destroyed. Optional third arg NO-MSG means don't display any messages while loading. If you load a file that doesn't contain a proper bookmark alist, you will corrupt Emacs's bookmark list. Generally, you should only load in files that were created with the bookmark functions in the first place. Your own personal bookmark file, specified by the variable `bookmark-default-file', is maintained automatically by Emacs; you shouldn't need to load it explicitly. If you load a file containing bookmarks with the same names as bookmarks already present in your Emacs, the new bookmarks will get unique numeric suffixes "<2>", "<3>", etc. (fn FILE &optional OVERWRITE NO-MSG)Fbookmark-bmenu-list Display a list of existing bookmarks. The list is displayed in a buffer named `*Bookmark List*'. The leftmost column displays a D if the bookmark is flagged for deletion, or > if it is flagged for displaying. (fn)Fbookmark-bmenu-search Incremental search of bookmarks, hiding the non-matches as we go. (fn)Vbrowse-url-browser-function Function to display the current buffer in a WWW browser. This is used by the `browse-url-at-point', `browse-url-at-mouse', and `browse-url-of-file' commands. If the value is not a function it should be a list of pairs (REGEXP . FUNCTION). In this case the function called will be the one associated with the first REGEXP which matches the current URL. The function is passed the URL and any other args of `browse-url'. The last regexp should probably be "." to specify a default browser.Fbrowse-url-of-file Ask a WWW browser to display FILE. Display the current buffer's file if FILE is nil or if called interactively. Turn the filename into a URL with function `browse-url-file-url'. Pass the URL to a browser using the `browse-url' function then run `browse-url-of-file-hook'. (fn &optional FILE)Fbrowse-url-of-buffer Ask a WWW browser to display BUFFER. Display the current buffer if BUFFER is nil. Display only the currently visible part of BUFFER (from a temporary file) if buffer is narrowed. (fn &optional BUFFER)Fbrowse-url-of-dired-file In Dired, ask a WWW browser to display the file named on this line. (fn)Fbrowse-url-of-region Ask a WWW browser to display the current region. (fn MIN MAX)Fbrowse-url Ask a WWW browser to load URL. Prompt for a URL, defaulting to the URL at or before point. Invokes a suitable browser function which does the actual job. The variable `browse-url-browser-function' says which browser function to use. If the URL is a mailto: URL, consult `browse-url-mailto-function' first, if that exists. The additional ARGS are passed to the browser function. See the doc strings of the actual functions, starting with `browse-url-browser-function', for information about the significance of ARGS (most of the functions ignore it). If ARGS are omitted, the default is to pass `browse-url-new-window-flag' as ARGS. (fn URL &rest ARGS)Fbrowse-url-at-point Ask a WWW browser to load the URL at or before point. Variable `browse-url-browser-function' says which browser to use. Optional prefix argument ARG non-nil inverts the value of the option `browse-url-new-window-flag'. (fn &optional ARG)Fbrowse-url-at-mouse Ask a WWW browser to load a URL clicked with the mouse. The URL is the one around or before the position of the mouse click but point is not changed. Variable `browse-url-browser-function' says which browser to use. (fn EVENT)Fbrowse-url-xdg-open Pass the specified URL to the "xdg-open" command. xdg-open is a desktop utility that calls your preferred web browser. The optional argument IGNORED is not used. (fn URL &optional IGNORED)Fbrowse-url-netscape Ask the Netscape WWW browser to load URL. Default to the URL around or before point. The strings in variable `browse-url-netscape-arguments' are also passed to Netscape. When called interactively, if variable `browse-url-new-window-flag' is non-nil, load the document in a new Netscape window, otherwise use a random existing one. A non-nil interactive prefix argument reverses the effect of `browse-url-new-window-flag'. If `browse-url-netscape-new-window-is-tab' is non-nil, then whenever a document would otherwise be loaded in a new window, it is loaded in a new tab in an existing window instead. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'. (fn URL &optional NEW-WINDOW)Fbrowse-url-mozilla Ask the Mozilla WWW browser to load URL. Default to the URL around or before point. The strings in variable `browse-url-mozilla-arguments' are also passed to Mozilla. When called interactively, if variable `browse-url-new-window-flag' is non-nil, load the document in a new Mozilla window, otherwise use a random existing one. A non-nil interactive prefix argument reverses the effect of `browse-url-new-window-flag'. If `browse-url-mozilla-new-window-is-tab' is non-nil, then whenever a document would otherwise be loaded in a new window, it is loaded in a new tab in an existing window instead. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'. (fn URL &optional NEW-WINDOW)Fbrowse-url-firefox Ask the Firefox WWW browser to load URL. Defaults to the URL around or before point. Passes the strings in the variable `browse-url-firefox-arguments' to Firefox. Interactively, if the variable `browse-url-new-window-flag' is non-nil, loads the document in a new Firefox window. A non-nil prefix argument reverses the effect of `browse-url-new-window-flag'. If `browse-url-firefox-new-window-is-tab' is non-nil, then whenever a document would otherwise be loaded in a new window, it is loaded in a new tab in an existing window instead. Non-interactively, this uses the optional second argument NEW-WINDOW instead of `browse-url-new-window-flag'. (fn URL &optional NEW-WINDOW)Fbrowse-url-chromium Ask the Chromium WWW browser to load URL. Default to the URL around or before point. The strings in variable `browse-url-chromium-arguments' are also passed to Chromium. The optional argument NEW-WINDOW is not used. (fn URL &optional NEW-WINDOW)Fbrowse-url-galeon Ask the Galeon WWW browser to load URL. Default to the URL around or before point. The strings in variable `browse-url-galeon-arguments' are also passed to Galeon. When called interactively, if variable `browse-url-new-window-flag' is non-nil, load the document in a new Galeon window, otherwise use a random existing one. A non-nil interactive prefix argument reverses the effect of `browse-url-new-window-flag'. If `browse-url-galeon-new-window-is-tab' is non-nil, then whenever a document would otherwise be loaded in a new window, it is loaded in a new tab in an existing window instead. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'. (fn URL &optional NEW-WINDOW)Fbrowse-url-emacs Ask Emacs to load URL into a buffer and show it in another window. (fn URL &optional NEW-WINDOW)Fbrowse-url-gnome-moz Ask Mozilla/Netscape to load URL via the GNOME program `gnome-moz-remote'. Default to the URL around or before point. The strings in variable `browse-url-gnome-moz-arguments' are also passed. When called interactively, if variable `browse-url-new-window-flag' is non-nil, load the document in a new browser window, otherwise use an existing one. A non-nil interactive prefix argument reverses the effect of `browse-url-new-window-flag'. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'. (fn URL &optional NEW-WINDOW)Fbrowse-url-mosaic Ask the XMosaic WWW browser to load URL. Default to the URL around or before point. The strings in variable `browse-url-mosaic-arguments' are also passed to Mosaic and the program is invoked according to the variable `browse-url-mosaic-program'. When called interactively, if variable `browse-url-new-window-flag' is non-nil, load the document in a new Mosaic window, otherwise use a random existing one. A non-nil interactive prefix argument reverses the effect of `browse-url-new-window-flag'. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'. (fn URL &optional NEW-WINDOW)Fbrowse-url-cci Ask the XMosaic WWW browser to load URL. Default to the URL around or before point. This function only works for XMosaic version 2.5 or later. You must select `CCI' from XMosaic's File menu, set the CCI Port Address to the value of variable `browse-url-CCI-port', and enable `Accept requests'. When called interactively, if variable `browse-url-new-window-flag' is non-nil, load the document in a new browser window, otherwise use a random existing one. A non-nil interactive prefix argument reverses the effect of `browse-url-new-window-flag'. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'. (fn URL &optional NEW-WINDOW)Fbrowse-url-conkeror Ask the Conkeror WWW browser to load URL. Default to the URL around or before point. Also pass the strings in the variable `browse-url-conkeror-arguments' to Conkeror. When called interactively, if variable `browse-url-new-window-flag' is non-nil, load the document in a new Conkeror window, otherwise use a random existing one. A non-nil interactive prefix argument reverses the effect of `browse-url-new-window-flag'. If variable `browse-url-conkeror-new-window-is-buffer' is non-nil, then whenever a document would otherwise be loaded in a new window, load it in a new buffer in an existing window instead. When called non-interactively, use optional second argument NEW-WINDOW instead of `browse-url-new-window-flag'. (fn URL &optional NEW-WINDOW)Fbrowse-url-w3 Ask the w3 WWW browser to load URL. Default to the URL around or before point. When called interactively, if variable `browse-url-new-window-flag' is non-nil, load the document in a new window. A non-nil interactive prefix argument reverses the effect of `browse-url-new-window-flag'. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'. (fn URL &optional NEW-WINDOW)Fbrowse-url-w3-gnudoit Ask another Emacs running gnuserv to load the URL using the W3 browser. The `browse-url-gnudoit-program' program is used with options given by `browse-url-gnudoit-args'. Default to the URL around or before point. (fn URL &optional NEW-WINDOW)Fbrowse-url-text-xterm Ask a text browser to load URL. URL defaults to the URL around or before point. This runs the text browser specified by `browse-url-text-browser'. in an Xterm window using the Xterm program named by `browse-url-xterm-program' with possible additional arguments `browse-url-xterm-args'. The optional argument NEW-WINDOW is not used. (fn URL &optional NEW-WINDOW)Fbrowse-url-text-emacs Ask a text browser to load URL. URL defaults to the URL around or before point. This runs the text browser specified by `browse-url-text-browser'. With a prefix argument, it runs a new browser process in a new buffer. When called interactively, if variable `browse-url-new-window-flag' is non-nil, load the document in a new browser process in a new term window, otherwise use any existing one. A non-nil interactive prefix argument reverses the effect of `browse-url-new-window-flag'. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'. (fn URL &optional NEW-BUFFER)Fbrowse-url-mail Open a new mail message buffer within Emacs for the RFC 2368 URL. Default to using the mailto: URL around or before point as the recipient's address. Supplying a non-nil interactive prefix argument will cause the mail to be composed in another window rather than the current one. When called interactively, if variable `browse-url-new-window-flag' is non-nil use `compose-mail-other-window', otherwise `compose-mail'. A non-nil interactive prefix argument reverses the effect of `browse-url-new-window-flag'. When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'. (fn URL &optional NEW-WINDOW)Fbrowse-url-generic Ask the WWW browser defined by `browse-url-generic-program' to load URL. Default to the URL around or before point. A fresh copy of the browser is started up in a new process with possible additional arguments `browse-url-generic-args'. This is appropriate for browsers which don't offer a form of remote control. (fn URL &optional NEW-WINDOW)Fbrowse-url-kde Ask the KDE WWW browser to load URL. Default to the URL around or before point. The optional argument NEW-WINDOW is not used. (fn URL &optional NEW-WINDOW)Fbrowse-url-elinks Ask the Elinks WWW browser to load URL. Default to the URL around the point. The document is loaded in a new tab of a running Elinks or, if none yet running, a newly started instance. The Elinks command will be prepended by the program+arguments from `browse-url-elinks-wrapper'. (fn URL &optional NEW-WINDOW)Fbs-cycle-next Select next buffer defined by buffer cycling. The buffers taking part in buffer cycling are defined by buffer configuration `bs-cycle-configuration-name'. (fn)Fbs-cycle-previous Select previous buffer defined by buffer cycling. The buffers taking part in buffer cycling are defined by buffer configuration `bs-cycle-configuration-name'. (fn)Fbs-customize Customization of group bs for Buffer Selection Menu. (fn)Fbs-show Make a menu of buffers so you can manipulate buffers or the buffer list. \<bs-mode-map> There are many key commands similar to `Buffer-menu-mode' for manipulating the buffer list and the buffers themselves. User can move with [up] or [down], select a buffer by \[bs-select] or [SPC] Type \[bs-kill] to leave Buffer Selection Menu without a selection. Type \[bs-help] after invocation to get help on commands available. With prefix argument ARG show a different buffer list. Function `bs--configuration-name-for-prefix-arg' determine accordingly name of buffer configuration. (fn ARG)Fbubbles Play Bubbles game. \<bubbles-mode-map> The goal is to remove all bubbles with as few moves as possible. \[bubbles-plop] on a bubble removes that bubble and all connected bubbles of the same color. Unsupported bubbles fall down, and columns that do not contain any bubbles suck the columns on its right towards the left. \[bubbles-set-game-easy] sets the difficulty to easy. \[bubbles-set-game-medium] sets the difficulty to medium. \[bubbles-set-game-difficult] sets the difficulty to difficult. \[bubbles-set-game-hard] sets the difficulty to hard. (fn)Fbug-reference-mode Toggle hyperlinking bug references in the buffer (Bug Reference mode). With a prefix argument ARG, enable Bug Reference mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Fbug-reference-prog-mode Like `bug-reference-mode', but only buttonize in comments and strings. (fn &optional ARG)Fbyte-compile-disable-warning Change `byte-compile-warnings' to disable WARNING. If `byte-compile-warnings' is t, set it to `(not WARNING)'. Otherwise, if the first element is `not', add WARNING, else remove it. Normally you should let-bind `byte-compile-warnings' before calling this, else the global value will be modified. (fn WARNING)Fbyte-compile-enable-warning Change `byte-compile-warnings' to enable WARNING. If `byte-compile-warnings' is t, do nothing. Otherwise, if the first element is `not', remove WARNING, else add it. Normally you should let-bind `byte-compile-warnings' before calling this, else the global value will be modified. (fn WARNING)Fbyte-force-recompile Recompile every `.el' file in DIRECTORY that already has a `.elc' file. Files in subdirectories of DIRECTORY are processed also. (fn DIRECTORY)Fbyte-recompile-directory Recompile every `.el' file in DIRECTORY that needs recompilation. This happens when a `.elc' file exists but is older than the `.el' file. Files in subdirectories of DIRECTORY are processed also. If the `.elc' file does not exist, normally this function *does not* compile the corresponding `.el' file. However, if the prefix argument ARG is 0, that means do compile all those files. A nonzero ARG means ask the user, for each such `.el' file, whether to compile it. A nonzero ARG also means ask about each subdirectory before scanning it. If the third argument FORCE is non-nil, recompile every `.el' file that already has a `.elc' file. (fn DIRECTORY &optional ARG FORCE)Fbyte-compile-file Compile a file of Lisp code named FILENAME into a file of byte code. The output file's name is generated by passing FILENAME to the function `byte-compile-dest-file' (which see). With prefix arg (noninteractively: 2nd arg), LOAD the file after compiling. The value is non-nil if there were no errors, nil if errors. (fn FILENAME &optional LOAD)Fcompile-defun Compile and evaluate the current top-level form. Print the result in the echo area. With argument ARG, insert value in current buffer after the form. (fn &optional ARG)Fbyte-compile If FORM is a symbol, byte-compile its function definition. If FORM is a lambda or a macro, byte-compile it as a function. (fn FORM)Fdisplay-call-tree Display a call graph of a specified file. This lists which functions have been called, what functions called them, and what functions they call. The list includes all functions whose definitions have been compiled in this Emacs session, as well as all functions called by those functions. The call graph does not include macros, inline functions, or primitives that the byte-code interpreter knows about directly (`eq', `cons', etc.). The call tree also lists those functions which are not known to be called (that is, to which no calls have been compiled), and which cannot be invoked interactively. (fn &optional FILENAME)Fbatch-byte-compile-if-not-done Like `byte-compile-file' but doesn't recompile if already up to date. Use this from the command line, with `-batch'; it won't work in an interactive Emacs. (fn)Fbatch-byte-compile Run `byte-compile-file' on the files remaining on the command line. Use this from the command line, with `-batch'; it won't work in an interactive Emacs. Each file is processed even if an error occurred previously. For example, invoke "emacs -batch -f batch-byte-compile $emacs/ ~/*.el". If NOFORCE is non-nil, don't recompile a file that seems to be already up-to-date. (fn &optional NOFORCE)Fbatch-byte-recompile-directory Run `byte-recompile-directory' on the dirs remaining on the command line. Must be used only with `-batch', and kills Emacs on completion. For example, invoke `emacs -batch -f batch-byte-recompile-directory .'. Optional argument ARG is passed as second argument ARG to `byte-recompile-directory'; see there for its possible values and corresponding effects. (fn &optional ARG)Fcalendar-hebrew-list-yahrzeits List Yahrzeit dates for *Gregorian* DEATH-DATE from START-YEAR to END-YEAR. When called interactively from the calendar window, the date of death is taken from the cursor position. (fn DEATH-DATE START-YEAR END-YEAR)Fcalc-dispatch Invoke the GNU Emacs Calculator. See \[calc-dispatch-help] for details. (fn &optional ARG)Fcalc The Emacs Calculator. Full documentation is listed under "calc-mode". (fn &optional ARG FULL-DISPLAY INTERACTIVE)Ffull-calc Invoke the Calculator and give it a full-sized window. (fn &optional INTERACTIVE)Fquick-calc Do a quick calculation in the minibuffer without invoking full Calculator. With prefix argument INSERT, insert the result in the current buffer. Otherwise, the result is copied into the kill ring. (fn &optional INSERT)Fcalc-eval Do a quick calculation and return the result as a string. Return value will either be the formatted result in string form, or a list containing a character position and an error message in string form. (fn STR &optional SEPARATOR &rest ARGS)Fcalc-keypad Invoke the Calculator in "visual keypad" mode. This is most useful in the X window system. In this mode, click on the Calc "buttons" using the left mouse button. Or, position the cursor manually and do M-x calc-keypad-press. (fn &optional INTERACTIVE)Ffull-calc-keypad Invoke the Calculator in full-screen "visual keypad" mode. See calc-keypad for details. (fn &optional INTERACTIVE)Fcalc-grab-region Parse the region as a vector of numbers and push it on the Calculator stack. (fn TOP BOT ARG)Fcalc-grab-rectangle Parse a rectangle as a matrix of numbers and push it on the Calculator stack. (fn TOP BOT ARG)Fcalc-embedded Start Calc Embedded mode on the formula surrounding point. (fn ARG &optional END OBEG OEND)Fcalc-embedded-activate Scan the current editing buffer for all embedded := and => formulas. Also looks for the equivalent TeX words, \gets and \evalto. (fn &optional ARG CBUF)Fdefmath Define Calc function. Like `defun' except that code in the body of the definition can make use of the full range of Calc data types and the usual arithmetic operations are converted to their Calc equivalents. The prefix `calcFunc-' is added to the specified name to get the actual Lisp function name. See Info node `(calc)Defining Functions'. (fn FUNC ARGS &rest BODY)Fcalc-undo (fn N)Fcalculator Run the Emacs calculator. See the documentation for `calculator-mode' for more information. (fn)Fcalendar Display a three-month Gregorian calendar. The three months appear side by side, with the current month in the middle surrounded by the previous and next months. The cursor is put on today's date. If optional prefix argument ARG is non-nil, prompts for the central month and year. Once in the calendar window, future or past months can be moved into view. Arbitrary months can be displayed, or the calendar can be scrolled forward or backward. The cursor can be moved forward or backward by one day, one week, one month, or one year. All of these commands take prefix arguments which, when negative, cause movement in the opposite direction. For convenience, the digit keys and the minus sign are automatically prefixes. Use \[describe-mode] for details of the key bindings in the calendar window. Displays the calendar in a separate window, or optionally in a separate frame, depending on the value of `calendar-setup'. If `calendar-view-diary-initially-flag' is non-nil, also displays the diary entries for the current date (or however many days `diary-number-of-entries' specifies). This variable can be overridden by `calendar-setup'. As well as being displayed, diary entries can also be marked on the calendar (see `calendar-mark-diary-entries-flag'). Runs the following hooks: `calendar-today-visible-hook', `calendar-today-invisible-hook' - after generating a calendar, if today's date is visible or not, respectively `calendar-initial-window-hook' - after first creating a calendar This function is suitable for execution in an init file. (fn &optional ARG)Fcanlock-insert-header Insert a Cancel-Key and/or a Cancel-Lock header if possible. (fn &optional ID-FOR-KEY ID-FOR-LOCK PASSWORD)Fcanlock-verify Verify Cancel-Lock or Cancel-Key in BUFFER. If BUFFER is nil, the current buffer is assumed. Signal an error if it fails. (fn &optional BUFFER)Fc-guess-basic-syntax Return the syntactic context of the current line. (fn)Vc-guess-guessed-offsets-alist Currently guessed offsets-alist.Vc-guess-guessed-basic-offset Currently guessed basic-offset.Fc-guess Guess the style in the region up to `c-guess-region-max', and install it. The style is given a name based on the file's absolute file name. If given a prefix argument (or if the optional argument ACCUMULATE is non-nil) then the previous guess is extended, otherwise a new guess is made from scratch. (fn &optional ACCUMULATE)Fc-guess-no-install Guess the style in the region up to `c-guess-region-max'; don't install it. If given a prefix argument (or if the optional argument ACCUMULATE is non-nil) then the previous guess is extended, otherwise a new guess is made from scratch. (fn &optional ACCUMULATE)Fc-guess-buffer Guess the style on the whole current buffer, and install it. The style is given a name based on the file's absolute file name. If given a prefix argument (or if the optional argument ACCUMULATE is non-nil) then the previous guess is extended, otherwise a new guess is made from scratch. (fn &optional ACCUMULATE)Fc-guess-buffer-no-install Guess the style on the whole current buffer; don't install it. If given a prefix argument (or if the optional argument ACCUMULATE is non-nil) then the previous guess is extended, otherwise a new guess is made from scratch. (fn &optional ACCUMULATE)Fc-guess-region Guess the style on the region and install it. The style is given a name based on the file's absolute file name. If given a prefix argument (or if the optional argument ACCUMULATE is non-nil) then the previous guess is extended, otherwise a new guess is made from scratch. (fn START END &optional ACCUMULATE)Fc-guess-region-no-install Guess the style on the region; don't install it. Every line of code in the region is examined and values for the following two variables are guessed: * `c-basic-offset', and * the indentation values of the various syntactic symbols in `c-offsets-alist'. The guessed values are put into `c-guess-guessed-basic-offset' and `c-guess-guessed-offsets-alist'. Frequencies of use are taken into account when guessing, so minor inconsistencies in the indentation style shouldn't produce wrong guesses. If given a prefix argument (or if the optional argument ACCUMULATE is non-nil) then the previous examination is extended, otherwise a new guess is made from scratch. Note that the larger the region to guess in, the slower the guessing. So you can limit the region with `c-guess-region-max'. (fn START END &optional ACCUMULATE)Fc-guess-install Install the latest guessed style into the current buffer. (This guessed style is a combination of `c-guess-guessed-basic-offset', `c-guess-guessed-offsets-alist' and `c-offsets-alist'.) The style is entered into CC Mode's style system by `c-add-style'. Its name is either STYLE-NAME, or a name based on the absolute file name of the file if STYLE-NAME is nil. (fn &optional STYLE-NAME)Fc-initialize-cc-mode Initialize CC Mode for use in the current buffer. If the optional NEW-STYLE-INIT is nil or left out then all necessary initialization to run CC Mode for the C language is done. Otherwise only some basic setup is done, and a call to `c-init-language-vars' or `c-init-language-vars-for' is necessary too (which gives more control). See "cc-mode.el" for more info. (fn &optional NEW-STYLE-INIT)Fc-mode Major mode for editing C code. To submit a problem report, enter `\[c-submit-bug-report]' from a c-mode buffer. This automatically sets up a mail buffer with version information already added. You just need to add a description of the problem, including a reproducible test case, and send the message. To see what version of CC Mode you are running, enter `\[c-version]'. The hook `c-mode-common-hook' is run with no args at mode initialization, then `c-mode-hook'. Key bindings: \{c-mode-map} (fn)Fc-or-c++-mode Analyze buffer and enable either C or C++ mode. Some people and projects use .h extension for C++ header files which is also the one used for C header files. This makes matching on file name insufficient for detecting major mode that should be used. This function attempts to use file contents to determine whether the code is C or C++ and based on that chooses whether to enable `c-mode' or `c++-mode'. (fn)Fc++-mode Major mode for editing C++ code. To submit a problem report, enter `\[c-submit-bug-report]' from a c++-mode buffer. This automatically sets up a mail buffer with version information already added. You just need to add a description of the problem, including a reproducible test case, and send the message. To see what version of CC Mode you are running, enter `\[c-version]'. The hook `c-mode-common-hook' is run with no args at mode initialization, then `c++-mode-hook'. Key bindings: \{c++-mode-map} (fn)Fobjc-mode Major mode for editing Objective C code. To submit a problem report, enter `\[c-submit-bug-report]' from an objc-mode buffer. This automatically sets up a mail buffer with version information already added. You just need to add a description of the problem, including a reproducible test case, and send the message. To see what version of CC Mode you are running, enter `\[c-version]'. The hook `c-mode-common-hook' is run with no args at mode initialization, then `objc-mode-hook'. Key bindings: \{objc-mode-map} (fn)Fjava-mode Major mode for editing Java code. To submit a problem report, enter `\[c-submit-bug-report]' from a java-mode buffer. This automatically sets up a mail buffer with version information already added. You just need to add a description of the problem, including a reproducible test case, and send the message. To see what version of CC Mode you are running, enter `\[c-version]'. The hook `c-mode-common-hook' is run with no args at mode initialization, then `java-mode-hook'. Key bindings: \{java-mode-map} (fn)Fidl-mode Major mode for editing CORBA's IDL, PSDL and CIDL code. To submit a problem report, enter `\[c-submit-bug-report]' from an idl-mode buffer. This automatically sets up a mail buffer with version information already added. You just need to add a description of the problem, including a reproducible test case, and send the message. To see what version of CC Mode you are running, enter `\[c-version]'. The hook `c-mode-common-hook' is run with no args at mode initialization, then `idl-mode-hook'. Key bindings: \{idl-mode-map} (fn)Fpike-mode Major mode for editing Pike code. To submit a problem report, enter `\[c-submit-bug-report]' from a pike-mode buffer. This automatically sets up a mail buffer with version information already added. You just need to add a description of the problem, including a reproducible test case, and send the message. To see what version of CC Mode you are running, enter `\[c-version]'. The hook `c-mode-common-hook' is run with no args at mode initialization, then `pike-mode-hook'. Key bindings: \{pike-mode-map} (fn)Fawk-mode Major mode for editing AWK code. To submit a problem report, enter `\[c-submit-bug-report]' from an awk-mode buffer. This automatically sets up a mail buffer with version information already added. You just need to add a description of the problem, including a reproducible test case, and send the message. To see what version of CC Mode you are running, enter `\[c-version]'. The hook `c-mode-common-hook' is run with no args at mode initialization, then `awk-mode-hook'. Key bindings: \{awk-mode-map} (fn)Fc-set-style Set the current buffer to use the style STYLENAME. STYLENAME, a string, must be an existing CC Mode style - These are contained in the variable `c-style-alist'. The variable `c-indentation-style' will get set to STYLENAME. "Setting the style" is done by setting CC Mode's "style variables" to the values indicated by the pertinent entry in `c-style-alist'. Other variables might get set too. If DONT-OVERRIDE is neither nil nor t, style variables whose default values have been set (more precisely, whose default values are not the symbol `set-from-style') will not be changed. This avoids overriding global settings done in your init file. It is useful to call c-set-style from a mode hook in this way. If DONT-OVERRIDE is t, style variables that already have values (i.e., whose values are not the symbol `set-from-style') will not be overridden. CC Mode calls c-set-style internally in this way whilst initializing a buffer; if cc-set-style is called like this from anywhere else, it will usually behave as a null operation. (fn STYLENAME &optional DONT-OVERRIDE)Fc-add-style Adds a style to `c-style-alist', or updates an existing one. STYLE is a string identifying the style to add or update. DESCRIPTION is an association list describing the style and must be of the form: ([BASESTYLE] (VARIABLE . VALUE) [(VARIABLE . VALUE) ...]) See the variable `c-style-alist' for the semantics of BASESTYLE, VARIABLE and VALUE. This function also sets the current style to STYLE using `c-set-style' if the optional SET-P flag is non-nil. (fn STYLE DESCRIPTION &optional SET-P)Fc-set-offset Change the value of a syntactic element symbol in `c-offsets-alist'. SYMBOL is the syntactic element symbol to change and OFFSET is the new offset for that syntactic element. The optional argument is not used and exists only for compatibility reasons. (fn SYMBOL OFFSET &optional IGNORED)Fccl-compile Return the compiled code of CCL-PROGRAM as a vector of integers. (fn CCL-PROGRAM)Fccl-dump Disassemble compiled CCL-code CODE. (fn CODE)Fdeclare-ccl-program Declare NAME as a name of CCL program. This macro exists for backward compatibility. In the old version of Emacs, to compile a CCL program which calls another CCL program not yet defined, it must be declared as a CCL program in advance. But, now CCL program names are resolved not at compile time but before execution. Optional arg VECTOR is a compiled CCL code of the CCL program. (fn NAME &optional VECTOR)Fdefine-ccl-program Set NAME the compiled code of CCL-PROGRAM. CCL-PROGRAM has this form: (BUFFER_MAGNIFICATION CCL_MAIN_CODE [ CCL_EOF_CODE ]) BUFFER_MAGNIFICATION is an integer value specifying the approximate output buffer magnification size compared with the bytes of input data text. It is assured that the actual output buffer has 256 bytes more than the size calculated by BUFFER_MAGNIFICATION. If the value is zero, the CCL program can't execute `read' and `write' commands. CCL_MAIN_CODE and CCL_EOF_CODE are CCL program codes. CCL_MAIN_CODE executed at first. If there's no more input data when `read' command is executed in CCL_MAIN_CODE, CCL_EOF_CODE is executed. If CCL_MAIN_CODE is terminated, CCL_EOF_CODE is not executed. Here's the syntax of CCL program code in BNF notation. The lines starting by two semicolons (and optional leading spaces) describe the semantics. CCL_MAIN_CODE := CCL_BLOCK CCL_EOF_CODE := CCL_BLOCK CCL_BLOCK := STATEMENT | (STATEMENT [STATEMENT ...]) STATEMENT := SET | IF | BRANCH | LOOP | REPEAT | BREAK | READ | WRITE | CALL | TRANSLATE | MAP | LOOKUP | END SET := (REG = EXPRESSION) | (REG ASSIGNMENT_OPERATOR EXPRESSION) ;; The following form is the same as (r0 = integer). | integer EXPRESSION := ARG | (EXPRESSION OPERATOR ARG) ;; Evaluate EXPRESSION. If the result is nonzero, execute ;; CCL_BLOCK_0. Otherwise, execute CCL_BLOCK_1. IF := (if EXPRESSION CCL_BLOCK_0 CCL_BLOCK_1) ;; Evaluate EXPRESSION. Provided that the result is N, execute ;; CCL_BLOCK_N. BRANCH := (branch EXPRESSION CCL_BLOCK_0 [CCL_BLOCK_1 ...]) ;; Execute STATEMENTs until (break) or (end) is executed. ;; Create a block of STATEMENTs for repeating. The STATEMENTs ;; are executed sequentially until REPEAT or BREAK is executed. ;; If REPEAT statement is executed, STATEMENTs are executed from the ;; start again. If BREAK statements is executed, the execution ;; exits from the block. If neither REPEAT nor BREAK is ;; executed, the execution exits from the block after executing the ;; last STATEMENT. LOOP := (loop STATEMENT [STATEMENT ...]) ;; Terminate the most inner loop. BREAK := (break) REPEAT := ;; Jump to the head of the most inner loop. (repeat) ;; Same as: ((write [REG | integer | string]) ;; (repeat)) | (write-repeat [REG | integer | string]) ;; Same as: ((write REG [ARRAY]) ;; (read REG) ;; (repeat)) | (write-read-repeat REG [ARRAY]) ;; Same as: ((write integer) ;; (read REG) ;; (repeat)) | (write-read-repeat REG integer) READ := ;; Set REG_0 to a byte read from the input text, set REG_1 ;; to the next byte read, and so on. (read REG_0 [REG_1 ...]) ;; Same as: ((read REG) ;; (if (REG OPERATOR ARG) CCL_BLOCK_0 CCL_BLOCK_1)) | (read-if (REG OPERATOR ARG) CCL_BLOCK_0 CCL_BLOCK_1) ;; Same as: ((read REG) ;; (branch REG CCL_BLOCK_0 [CCL_BLOCK_1 ...])) | (read-branch REG CCL_BLOCK_0 [CCL_BLOCK_1 ...]) ;; Read a character from the input text while parsing ;; multibyte representation, set REG_0 to the charset ID of ;; the character, set REG_1 to the code point of the ;; character. If the dimension of charset is two, set REG_1 ;; to ((CODE0 << 7) | CODE1), where CODE0 is the first code ;; point and CODE1 is the second code point. | (read-multibyte-character REG_0 REG_1) WRITE := ;; Write REG_0, REG_1, ... to the output buffer. If REG_N is ;; a multibyte character, write the corresponding multibyte ;; representation. (write REG_0 [REG_1 ...]) ;; Same as: ((r7 = EXPRESSION) ;; (write r7)) | (write EXPRESSION) ;; Write the value of `integer' to the output buffer. If it ;; is a multibyte character, write the corresponding multibyte ;; representation. | (write integer) ;; Write the byte sequence of `string' as is to the output ;; buffer. | (write string) ;; Same as: (write string) | string ;; Provided that the value of REG is N, write Nth element of ;; ARRAY to the output buffer. If it is a multibyte ;; character, write the corresponding multibyte ;; representation. | (write REG ARRAY) ;; Write a multibyte representation of a character whose ;; charset ID is REG_0 and code point is REG_1. If the ;; dimension of the charset is two, REG_1 should be ((CODE0 << ;; 7) | CODE1), where CODE0 is the first code point and CODE1 ;; is the second code point of the character. | (write-multibyte-character REG_0 REG_1) ;; Call CCL program whose name is ccl-program-name. CALL := (call ccl-program-name) ;; Terminate the CCL program. END := (end) ;; CCL registers that can contain any integer value. As r7 is also ;; used by CCL interpreter, its value is changed unexpectedly. REG := r0 | r1 | r2 | r3 | r4 | r5 | r6 | r7 ARG := REG | integer OPERATOR := ;; Normal arithmetic operators (same meaning as C code). + | - | * | / | % ;; Bitwise operators (same meaning as C code) | & | `|' | ^ ;; Shifting operators (same meaning as C code) | << | >> ;; (REG = ARG_0 <8 ARG_1) means: ;; (REG = ((ARG_0 << 8) | ARG_1)) | <8 ;; (REG = ARG_0 >8 ARG_1) means: ;; ((REG = (ARG_0 >> 8)) ;; (r7 = (ARG_0 & 255))) | >8 ;; (REG = ARG_0 // ARG_1) means: ;; ((REG = (ARG_0 / ARG_1)) ;; (r7 = (ARG_0 % ARG_1))) | // ;; Normal comparing operators (same meaning as C code) | < | > | == | <= | >= | != ;; If ARG_0 and ARG_1 are higher and lower byte of Shift-JIS ;; code, and CHAR is the corresponding JISX0208 character, ;; (REG = ARG_0 de-sjis ARG_1) means: ;; ((REG = CODE0) ;; (r7 = CODE1)) ;; where CODE0 is the first code point of CHAR, CODE1 is the ;; second code point of CHAR. | de-sjis ;; If ARG_0 and ARG_1 are the first and second code point of ;; JISX0208 character CHAR, and SJIS is the corresponding ;; Shift-JIS code, ;; (REG = ARG_0 en-sjis ARG_1) means: ;; ((REG = HIGH) ;; (r7 = LOW)) ;; where HIGH is the higher byte of SJIS, LOW is the lower ;; byte of SJIS. | en-sjis ASSIGNMENT_OPERATOR := ;; Same meaning as C code += | -= | *= | /= | %= | &= | `|=' | ^= | <<= | >>= ;; (REG <8= ARG) is the same as: ;; ((REG <<= 8) ;; (REG |= ARG)) | <8= ;; (REG >8= ARG) is the same as: ;; ((r7 = (REG & 255)) ;; (REG >>= 8)) ;; (REG //= ARG) is the same as: ;; ((r7 = (REG % ARG)) ;; (REG /= ARG)) | //= ARRAY := `[' integer ... `]' TRANSLATE := ;; Decode character SRC, translate it by translate table ;; TABLE, and encode it back to DST. TABLE is specified ;; by its id number in REG_0, SRC is specified by its ;; charset id number and codepoint in REG_1 and REG_2 ;; respectively. ;; On encoding, the charset of highest priority is selected. ;; After the execution, DST is specified by its charset ;; id number and codepoint in REG_1 and REG_2 respectively. (translate-character REG_0 REG_1 REG_2) ;; Same as above except for SYMBOL specifying the name of ;; the translate table defined by `define-translation-table'. | (translate-character SYMBOL REG_1 REG_2) LOOKUP := ;; Look up character SRC in hash table TABLE. TABLE is ;; specified by its name in SYMBOL, and SRC is specified by ;; its charset id number and codepoint in REG_1 and REG_2 ;; respectively. ;; If its associated value is an integer, set REG_1 to that ;; value, and set r7 to 1. Otherwise, set r7 to 0. (lookup-character SYMBOL REG_1 REG_2) ;; Look up integer value N in hash table TABLE. TABLE is ;; specified by its name in SYMBOL and N is specified in ;; REG. ;; If its associated value is a character, set REG to that ;; value, and set r7 to 1. Otherwise, set r7 to 0. | (lookup-integer SYMBOL REG(integer)) MAP := ;; The following statements are for internal use only. (iterate-multiple-map REG REG MAP-IDs) | (map-multiple REG REG (MAP-SET)) | (map-single REG REG MAP-ID) MAP-IDs := MAP-ID ... MAP-SET := MAP-IDs | (MAP-IDs) MAP-SET MAP-ID := integer (fn NAME CCL-PROGRAM &optional DOC)Fcheck-ccl-program Check validity of CCL-PROGRAM. If CCL-PROGRAM is a symbol denoting a CCL program, return CCL-PROGRAM, else return nil. If CCL-PROGRAM is a vector and optional arg NAME (symbol) is supplied, register CCL-PROGRAM by name NAME, and return NAME. (fn CCL-PROGRAM &optional NAME)Fccl-execute-with-args Execute CCL-PROGRAM with registers initialized by the remaining args. The return value is a vector of resulting CCL registers. See the documentation of `define-ccl-program' for the detail of CCL program. (fn CCL-PROG &rest ARGS)Fcconv-closure-convert Main entry point for closure conversion. -- FORM is a piece of Elisp code after macroexpansion. -- TOPLEVEL(optional) is a boolean variable, true if we are at the root of AST Returns a form where all lambdas don't have any free variables. (fn FORM)Fcconv-warnings-only Add the warnings that closure conversion would encounter. (fn FORM)Fcfengine3-mode Major mode for editing CFEngine3 input. There are no special keybindings by default. Action blocks are treated as defuns, i.e. \[beginning-of-defun] moves to the action header. (fn)Fcfengine2-mode Major mode for editing CFEngine2 input. There are no special keybindings by default. Action blocks are treated as defuns, i.e. \[beginning-of-defun] moves to the action header. (fn)Fcfengine-auto-mode Choose `cfengine2-mode' or `cfengine3-mode' by buffer contents. (fn)Fchar-fold-to-regexp Return a regexp matching anything that char-folds into STRING. Any character in STRING that has an entry in `char-fold-table' is replaced with that entry (which is a regexp) and other characters are `regexp-quote'd. If the resulting regexp would be too long for Emacs to handle, just return the result of calling `regexp-quote' on STRING. FROM is for internal use. It specifies an index in the STRING from which to start. (fn STRING &optional LAX FROM)Fcheck-declare-file Check veracity of all `declare-function' statements in FILE. See `check-declare-directory' for more information. (fn FILE)Fcheck-declare-directory Check veracity of all `declare-function' statements under directory ROOT. Returns non-nil if any false statements are found. (fn ROOT)Fcheckdoc-list-of-strings-p Return t when OBJ is a list of strings. (fn OBJ)Fcheckdoc Interactively check the entire buffer for style errors. The current status of the check will be displayed in a buffer which the users will view as each check is completed. (fn)Fcheckdoc-interactive Interactively check the current buffer for doc string errors. Prefix argument START-HERE will start the checking from the current point, otherwise the check starts at the beginning of the current buffer. Allows navigation forward and backwards through document errors. Does not check for comment or space warnings. Optional argument SHOWSTATUS indicates that we should update the checkdoc status window instead of the usual behavior. (fn &optional START-HERE SHOWSTATUS)Fcheckdoc-message-interactive Interactively check the current buffer for message string errors. Prefix argument START-HERE will start the checking from the current point, otherwise the check starts at the beginning of the current buffer. Allows navigation forward and backwards through document errors. Does not check for comment or space warnings. Optional argument SHOWSTATUS indicates that we should update the checkdoc status window instead of the usual behavior. (fn &optional START-HERE SHOWSTATUS)Fcheckdoc-eval-current-buffer Evaluate and check documentation for the current buffer. Evaluation is done first because good documentation for something that doesn't work is just not useful. Comments, doc strings, and rogue spacing are all verified. (fn)Fcheckdoc-current-buffer Check current buffer for document, comment, error style, and rogue spaces. With a prefix argument (in Lisp, the argument TAKE-NOTES), store all errors found in a warnings buffer, otherwise stop after the first error. (fn &optional TAKE-NOTES)Fcheckdoc-file Check FILE for document, comment, error style, and rogue spaces. (fn FILE)Fcheckdoc-start Start scanning the current buffer for documentation string style errors. Only documentation strings are checked. Use `checkdoc-continue' to continue checking if an error cannot be fixed. Prefix argument TAKE-NOTES means to collect all the warning messages into a separate buffer. (fn &optional TAKE-NOTES)Fcheckdoc-continue Find the next doc string in the current buffer which has a style error. Prefix argument TAKE-NOTES means to continue through the whole buffer and save warnings in a separate buffer. (fn &optional TAKE-NOTES)Fcheckdoc-comments Find missing comment sections in the current Emacs Lisp file. Prefix argument TAKE-NOTES non-nil means to save warnings in a separate buffer. Otherwise print a message. This returns the error if there is one. (fn &optional TAKE-NOTES)Fcheckdoc-rogue-spaces Find extra spaces at the end of lines in the current file. Prefix argument TAKE-NOTES non-nil means to save warnings in a separate buffer. Otherwise print a message. This returns the error if there is one. Optional argument INTERACT permits more interactive fixing. (fn &optional TAKE-NOTES INTERACT)Fcheckdoc-message-text Scan the buffer for occurrences of the error function, and verify text. Optional argument TAKE-NOTES causes all errors to be logged. (fn &optional TAKE-NOTES)Fcheckdoc-eval-defun Evaluate the current form with `eval-defun' and check its documentation. Evaluation is done first so the form will be read before the documentation is checked. If there is a documentation error, then the display of what was evaluated will be overwritten by the diagnostic message. (fn)Fcheckdoc-defun Examine the doc string of the function or variable under point. Call `error' if the doc string has problems. If NO-ERROR is non-nil, then do not call error, but call `message' instead. If the doc string passes the test, then check the function for rogue white space at the end of each line. (fn &optional NO-ERROR)Fcheckdoc-ispell Check the style and spelling of everything interactively. Calls `checkdoc' with spell-checking turned on. Prefix argument is the same as for `checkdoc' (fn)Fcheckdoc-ispell-current-buffer Check the style and spelling of the current buffer. Calls `checkdoc-current-buffer' with spell-checking turned on. Prefix argument is the same as for `checkdoc-current-buffer' (fn)Fcheckdoc-ispell-interactive Check the style and spelling of the current buffer interactively. Calls `checkdoc-interactive' with spell-checking turned on. Prefix argument is the same as for `checkdoc-interactive' (fn)Fcheckdoc-ispell-message-interactive Check the style and spelling of message text interactively. Calls `checkdoc-message-interactive' with spell-checking turned on. Prefix argument is the same as for `checkdoc-message-interactive' (fn)Fcheckdoc-ispell-message-text Check the style and spelling of message text interactively. Calls `checkdoc-message-text' with spell-checking turned on. Prefix argument is the same as for `checkdoc-message-text' (fn)Fcheckdoc-ispell-start Check the style and spelling of the current buffer. Calls `checkdoc-start' with spell-checking turned on. Prefix argument is the same as for `checkdoc-start' (fn)Fcheckdoc-ispell-continue Check the style and spelling of the current buffer after point. Calls `checkdoc-continue' with spell-checking turned on. Prefix argument is the same as for `checkdoc-continue' (fn)Fcheckdoc-ispell-comments Check the style and spelling of the current buffer's comments. Calls `checkdoc-comments' with spell-checking turned on. Prefix argument is the same as for `checkdoc-comments' (fn)Fcheckdoc-ispell-defun Check the style and spelling of the current defun with Ispell. Calls `checkdoc-defun' with spell-checking turned on. Prefix argument is the same as for `checkdoc-defun' (fn)Fcheckdoc-minor-mode Toggle automatic docstring checking (Checkdoc minor mode). With a prefix argument ARG, enable Checkdoc minor mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. In Checkdoc minor mode, the usual bindings for `eval-defun' which is bound to \<checkdoc-minor-mode-map>\[checkdoc-eval-defun] and `checkdoc-eval-current-buffer' are overridden to include checking of documentation strings. \{checkdoc-minor-mode-map} (fn &optional ARG)Fcheckdoc-package-keywords Find package keywords that aren't in `finder-known-keywords'. (fn)Fdecode-hz-region Decode HZ/ZW encoded text in the current region. Return the length of resulting text. (fn BEG END)Fdecode-hz-buffer Decode HZ/ZW encoded text in the current buffer. (fn)Fencode-hz-region Encode the text in the current region to HZ. Return the length of resulting text. (fn BEG END)Fencode-hz-buffer Encode the text in the current buffer to HZ. (fn)Fpost-read-decode-hz (fn LEN)Fpre-write-encode-hz (fn FROM TO)Frepeat-matching-complex-command Edit and re-evaluate complex command with name matching PATTERN. Matching occurrences are displayed, most recent first, until you select a form for evaluation. If PATTERN is empty (or nil), every form in the command history is offered. The form is placed in the minibuffer for editing and the result is evaluated. (fn &optional PATTERN)Flist-command-history List history of commands that used the minibuffer. The number of commands listed is controlled by `list-command-history-max'. Calls value of `list-command-history-filter' (if non-nil) on each history element to judge if that element should be excluded from the list. The buffer is left in Command History mode. (fn)Fcommand-history Examine commands from `command-history' in a buffer. The number of commands listed is controlled by `list-command-history-max'. The command history is filtered by `list-command-history-filter' if non-nil. Use \<command-history-map>\[command-history-repeat] to repeat the command on the current line. Otherwise much like Emacs-Lisp Mode except that there is no self-insertion and digits provide prefix arguments. Tab does not indent. \{command-history-map} This command always recompiles the Command History listing and runs the normal hook `command-history-hook'. (fn)Fcommon-lisp-indent-function Function to indent the arguments of a Lisp function call. This is suitable for use as the value of the variable `lisp-indent-function'. INDENT-POINT is the point at which the indentation function is called, and STATE is the `parse-partial-sexp' state at that position. Browse the `lisp-indent' customize group for options affecting the behavior of this function. If the indentation point is in a call to a Lisp function, that function's `common-lisp-indent-function' property specifies how this function should indent it. Possible values for this property are: * defun, meaning indent according to `lisp-indent-defun-method'; i.e., like (4 &lambda &body), as explained below. * any other symbol, meaning a function to call. The function should take the arguments: PATH STATE INDENT-POINT SEXP-COLUMN NORMAL-INDENT. PATH is a list of integers describing the position of point in terms of list-structure with respect to the containing lists. For example, in ((a b c (d foo) f) g), foo has a path of (0 3 1). In other words, to reach foo take the 0th element of the outermost list, then the 3rd element of the next list, and finally the 1st element. STATE and INDENT-POINT are as in the arguments to `common-lisp-indent-function'. SEXP-COLUMN is the column of the open parenthesis of the innermost containing list. NORMAL-INDENT is the column the indentation point was originally in. This function should behave like `lisp-indent-259'. * an integer N, meaning indent the first N arguments like function arguments, and any further arguments like a body. This is equivalent to (4 4 ... &body). * a list. The list element in position M specifies how to indent the Mth function argument. If there are fewer elements than function arguments, the last list element applies to all remaining arguments. The accepted list elements are: * nil, meaning the default indentation. * an integer, specifying an explicit indentation. * &lambda. Indent the argument (which may be a list) by 4. * &rest. When used, this must be the penultimate element. The element after this one applies to all remaining arguments. * &body. This is equivalent to &rest lisp-body-indent, i.e., indent all remaining elements by `lisp-body-indent'. * &whole. This must be followed by nil, an integer, or a function symbol. This indentation is applied to the associated argument, and as a base indent for all remaining arguments. For example, an integer P means indent this argument by P, and all remaining arguments by P, plus the value specified by their associated list element. * a symbol. A function to call, with the 6 arguments specified above. * a list, with elements as described above. This applies when the associated function argument is itself a list. Each element of the list specifies how to indent the associated argument. For example, the function `case' has an indent property (4 &rest (&whole 2 &rest 1)), meaning: * indent the first argument by 4. * arguments after the first should be lists, and there may be any number of them. The first list element has an offset of 2, all the rest have an offset of 2+1=3. If the current mode is actually `emacs-lisp-mode', look for a `common-lisp-indent-function-for-elisp' property before looking at `common-lisp-indent-function' and, if set, use its value instead. (fn INDENT-POINT STATE)Vcl-custom-print-functions This is a list of functions that format user objects for printing. Each function is called in turn with three arguments: the object, the stream, and the print level (currently ignored). If it is able to print the object it returns true; otherwise it returns nil and the printer proceeds to the next function on the list. This variable is not used at present, but it is defined in hopes that a future Emacs interpreter will be able to use it.Vcl-old-struct-compat-mode Non-nil if Cl-Old-Struct-Compat mode is enabled. See the `cl-old-struct-compat-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `cl-old-struct-compat-mode'.Fcl-old-struct-compat-mode Enable backward compatibility with old-style structs. This can be needed when using code byte-compiled using the old macro-expansion of `cl-defstruct' that used vectors objects instead of record objects. (fn &optional ARG)Fcl-print-object Dispatcher to print OBJECT on STREAM according to its type. You can add methods to it to customize the output. But if you just want to print something, don't call this directly: call other entry points instead, such as `cl-prin1'. (fn OBJECT STREAM)Fcl-prin1 Print OBJECT on STREAM according to its type. Output is further controlled by the variables `cl-print-readably', `cl-print-compiled', along with output variables for the standard printing functions. See Info node `(elisp)Output Variables'. (fn OBJECT &optional STREAM)Fcl-prin1-to-string Return a string containing the `cl-prin1'-printed representation of OBJECT. (fn OBJECT)Fc-macro-expand Expand C macros in the region, using the C preprocessor. Normally display output in temp buffer, but prefix arg means replace the region with it. `c-macro-preprocessor' specifies the preprocessor to use. Tf the user option `c-macro-prompt-flag' is non-nil prompt for arguments to the preprocessor (e.g. `-DDEBUG -I ./include'), otherwise use `c-macro-cppflags'. Noninteractive args are START, END, SUBST. For use inside Lisp programs, see also `c-macro-expansion'. (fn START END SUBST)Frun-scheme Run an inferior Scheme process, input and output via buffer `*scheme*'. If there is a process already running in `*scheme*', switch to that buffer. With argument, allows you to edit the command line (default is value of `scheme-program-name'). If the file `~/.emacs_SCHEMENAME' or `~/.emacs.d/init_SCHEMENAME.scm' exists, it is given as initial input. Note that this may lose due to a timing error if the Scheme processor discards input when it starts up. Runs the hook `inferior-scheme-mode-hook' (after the `comint-mode-hook' is run). (Type \[describe-mode] in the process buffer for a list of commands.) (fn CMD)Fcolor-name-to-rgb Convert COLOR string to a list of normalized RGB components. COLOR should be a color name (e.g. "white") or an RGB triplet string (e.g. "#ffff1122eecc"). Normally the return value is a list of three floating-point numbers, (RED GREEN BLUE), each between 0.0 and 1.0 inclusive. Optional argument FRAME specifies the frame where the color is to be displayed. If FRAME is omitted or nil, use the selected frame. If FRAME cannot display COLOR, return nil. (fn COLOR &optional FRAME)Vcomint-output-filter-functions Functions to call after output is inserted into the buffer. One possible function is `comint-postoutput-scroll-to-bottom'. These functions get one argument, a string containing the text as originally inserted. Note that this might not be the same as the buffer contents between `comint-last-output-start' and the buffer's `process-mark', if other filter functions have already modified the buffer. See also `comint-preoutput-filter-functions'. You can use `add-hook' to add functions to this list either globally or locally.Fmake-comint-in-buffer Make a Comint process NAME in BUFFER, running PROGRAM. If BUFFER is nil, it defaults to NAME surrounded by `*'s. If there is a running process in BUFFER, it is not restarted. PROGRAM should be one of the following: - a string, denoting an executable program to create via `start-file-process' - a cons pair of the form (HOST . SERVICE), denoting a TCP connection to be opened via `open-network-stream' - nil, denoting a newly-allocated pty. Optional fourth arg STARTFILE is the name of a file, whose contents are sent to the process as its initial input. If PROGRAM is a string, any more args are arguments to PROGRAM. Return the (possibly newly created) process buffer. (fn NAME BUFFER PROGRAM &optional STARTFILE &rest SWITCHES)Fmake-comint Make a Comint process NAME in a buffer, running PROGRAM. The name of the buffer is made by surrounding NAME with `*'s. PROGRAM should be either a string denoting an executable program to create via `start-file-process', or a cons pair of the form (HOST . SERVICE) denoting a TCP connection to be opened via `open-network-stream'. If there is already a running process in that buffer, it is not restarted. Optional third arg STARTFILE is the name of a file, whose contents are sent to the process as its initial input. If PROGRAM is a string, any more args are arguments to PROGRAM. Returns the (possibly newly created) process buffer. (fn NAME PROGRAM &optional STARTFILE &rest SWITCHES)Fcomint-run Run PROGRAM in a Comint buffer and switch to it. The buffer name is made by surrounding the file name of PROGRAM with `*'s. The file name is used to make a symbol name, such as `comint-sh-hook', and any hooks on this symbol are run in the buffer. See `make-comint' and `comint-exec'. (fn PROGRAM)Vcomint-file-name-prefix Prefix prepended to absolute file names taken from process input. This is used by Comint's and shell's completion functions, and by shell's directory tracking functions.Fcomint-redirect-send-command Send COMMAND to process in current buffer, with output to OUTPUT-BUFFER. With prefix arg ECHO, echo output in process buffer. If NO-DISPLAY is non-nil, do not show the output buffer. (fn COMMAND OUTPUT-BUFFER ECHO &optional NO-DISPLAY)Fcomint-redirect-send-command-to-process Send COMMAND to PROCESS, with output to OUTPUT-BUFFER. With prefix arg, echo output in process buffer. If NO-DISPLAY is non-nil, do not show the output buffer. (fn COMMAND OUTPUT-BUFFER PROCESS ECHO &optional NO-DISPLAY)Fcomint-redirect-results-list Send COMMAND to current process. Return a list of expressions in the output which match REGEXP. REGEXP-GROUP is the regular expression group in REGEXP to use. (fn COMMAND REGEXP REGEXP-GROUP)Fcomint-redirect-results-list-from-process Send COMMAND to PROCESS. Return a list of expressions in the output which match REGEXP. REGEXP-GROUP is the regular expression group in REGEXP to use. (fn PROCESS COMMAND REGEXP REGEXP-GROUP)Fcompare-windows Compare text in current window with text in another window. The option `compare-windows-get-window-function' defines how to get another window. Compares the text starting at point in each window, moving over text in each one as far as they match. This command pushes the mark in each window at the prior location of point in that window. If both windows display the same buffer, the mark is pushed twice in that buffer: first in the other window, then in the selected window. A prefix arg means reverse the value of variable `compare-ignore-whitespace'. If `compare-ignore-whitespace' is nil, then a prefix arg means ignore changes in whitespace. If `compare-ignore-whitespace' is non-nil, then a prefix arg means don't ignore changes in whitespace. The variable `compare-windows-whitespace' controls how whitespace is skipped. If `compare-ignore-case' is non-nil, changes in case are also ignored. If `compare-windows-sync' is non-nil, then successive calls of this command work in interlaced mode: on first call it advances points to the next difference, on second call it synchronizes points by skipping the difference, on third call it again advances points to the next difference and so on. (fn IGNORE-WHITESPACE)Vcompilation-mode-hook List of hook functions run by `compilation-mode'.Vcompilation-start-hook Hook run after starting a new compilation process. The hook is run with one argument, the new process.Vcompilation-window-height Number of lines in a compilation window. If nil, use Emacs default.Vcompilation-process-setup-function Function to call to customize the compilation process. This function is called immediately before the compilation process is started. It can be used to set any variables or functions that are used while processing the output of the compilation process.Vcompilation-buffer-name-function Function to compute the name of a compilation buffer. The function receives one argument, the name of the major mode of the compilation buffer. It should return a string. If nil, compute the name with `(concat "*" (downcase major-mode) "*")'.Vcompilation-finish-function Function to call when a compilation process finishes. It is called with two arguments: the compilation buffer, and a string describing how the process finished.Vcompilation-finish-functions Functions to call when a compilation process finishes. Each function is called with two arguments: the compilation buffer, and a string describing how the process finished.Vcompilation-ask-about-save Non-nil means \[compile] asks which buffers to save before compiling. Otherwise, it saves all modified buffers without asking.Vcompilation-search-path List of directories to search for source files named in error messages. Elements should be directory names, not file names of directories. The value nil as an element means to try the default directory.Vcompile-command Last shell command used to do a compilation; default for next compilation. Sometimes it is useful for files to supply local values for this variable. You might also use mode hooks to specify it in certain modes, like this: (add-hook \='c-mode-hook (lambda () (unless (or (file-exists-p "makefile") (file-exists-p "Makefile")) (set (make-local-variable \='compile-command) (concat "make -k " (if buffer-file-name (shell-quote-argument (file-name-sans-extension buffer-file-name)))))))) It's often useful to leave a space at the end of the value.Vcompilation-disable-input If non-nil, send end-of-file as compilation process input. This only affects platforms that support asynchronous processes (see `start-process'); synchronous compilation processes never accept input.Fcompile Compile the program including the current buffer. Default: run `make'. Runs COMMAND, a shell command, in a separate process asynchronously with output going to the buffer `*compilation*'. You can then use the command \[next-error] to find the next error message and move to the source code that caused it. If optional second arg COMINT is t the buffer will be in Comint mode with `compilation-shell-minor-mode'. Interactively, prompts for the command if the variable `compilation-read-command' is non-nil; otherwise uses `compile-command'. With prefix arg, always prompts. Additionally, with universal prefix arg, compilation buffer will be in comint mode, i.e. interactive. To run more than one compilation at once, start one then rename the `*compilation*' buffer to some other name with \[rename-buffer]. Then _switch buffers_ and start the new compilation. It will create a new `*compilation*' buffer. On most systems, termination of the main compilation process kills its subprocesses. The name used for the buffer is actually whatever is returned by the function in `compilation-buffer-name-function', so you can set that to a function that generates a unique name. (fn COMMAND &optional COMINT)Fcompilation-start Run compilation command COMMAND (low level interface). If COMMAND starts with a cd command, that becomes the `default-directory'. The rest of the arguments are optional; for them, nil means use the default. MODE is the major mode to set in the compilation buffer. Mode may also be t meaning use `compilation-shell-minor-mode' under `comint-mode'. If NAME-FUNCTION is non-nil, call it with one argument (the mode name) to determine the buffer name. Otherwise, the default is to reuses the current buffer if it has the proper major mode, else use or create a buffer with name based on the major mode. If HIGHLIGHT-REGEXP is non-nil, `next-error' will temporarily highlight the matching section of the visited source line; the default is to use the global value of `compilation-highlight-regexp'. Returns the compilation buffer created. (fn COMMAND &optional MODE NAME-FUNCTION HIGHLIGHT-REGEXP)Fcompilation-mode Major mode for compilation log buffers. \<compilation-mode-map>To visit the source for a line-numbered error, move point to the error message line and type \[compile-goto-error]. To kill the compilation, type \[kill-compilation]. Runs `compilation-mode-hook' with `run-mode-hooks' (which see). \{compilation-mode-map} (fn &optional NAME-OF-MODE)Fcompilation-shell-minor-mode Toggle Compilation Shell minor mode. With a prefix argument ARG, enable Compilation Shell minor mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Compilation Shell minor mode is enabled, all the error-parsing commands of the Compilation major mode are available but bound to keys that don't collide with Shell mode. See `compilation-mode'. (fn &optional ARG)Fcompilation-minor-mode Toggle Compilation minor mode. With a prefix argument ARG, enable Compilation minor mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Compilation minor mode is enabled, all the error-parsing commands of Compilation major mode are available. See `compilation-mode'. (fn &optional ARG)Fcompilation-next-error-function Advance to the next error message and visit the file where the error was. This is the value of `next-error-function' in Compilation buffers. (fn N &optional RESET)Vdynamic-completion-mode Non-nil if Dynamic-Completion mode is enabled. See the `dynamic-completion-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `dynamic-completion-mode'.Fdynamic-completion-mode Toggle dynamic word-completion on or off. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Fconf-mode Mode for Unix and Windows Conf files and Java properties. Most conf files know only three kinds of constructs: parameter assignments optionally grouped into sections and comments. Yet there is a great range of variation in the exact syntax of conf files. See below for various wrapper commands that set up the details for some of the most widespread variants. This mode sets up font locking, outline, imenu and it provides alignment support through `conf-align-assignments'. If strings come out wrong, try `conf-quote-normal'. Some files allow continuation lines, either with a backslash at the end of line, or by indenting the next line (further). These constructs cannot currently be recognized. Because of this great variety of nuances, which are often not even clearly specified, please don't expect it to get every file quite right. Patches that clearly identify some special case, without breaking the general ones, are welcome. If instead you start this mode with the generic `conf-mode' command, it will parse the buffer. It will generally well identify the first four cases listed below. If the buffer doesn't have enough contents to decide, this is identical to `conf-windows-mode' on Windows, elsewhere to `conf-unix-mode'. See also `conf-space-mode', `conf-colon-mode', `conf-javaprop-mode', `conf-ppd-mode' and `conf-xdefaults-mode'. \{conf-mode-map} (fn)Fconf-unix-mode Conf Mode starter for Unix style Conf files. Comments start with `#'. For details see `conf-mode'. (fn)Fconf-windows-mode Conf Mode starter for Windows style Conf files. Comments start with `;'. For details see `conf-mode'. Example: ; Conf mode font-locks this right on Windows and with \[conf-windows-mode] [ExtShellFolderViews] Default={5984FFE0-28D4-11CF-AE66-08002B2E1262} {5984FFE0-28D4-11CF-AE66-08002B2E1262}={5984FFE0-28D4-11CF-AE66-08002B2E1262} [{5984FFE0-28D4-11CF-AE66-08002B2E1262}] PersistMoniker=file://Folder.htt (fn)Fconf-javaprop-mode Conf Mode starter for Java properties files. Comments start with `#' but are also recognized with `//' or between `/*' and `*/'. For details see `conf-mode'. Example: # Conf mode font-locks this right with \[conf-javaprop-mode] (Java properties) // another kind of comment /* yet another */ name:value name=value name value x.1 = x.2.y.1.z.1 = x.2.y.1.z.2.zz = (fn)Fconf-space-mode Conf Mode starter for space separated conf files. "Assignments" are with ` '. Keywords before the parameters are recognized according to the variable `conf-space-keywords-alist'. Alternatively, you can specify a value for the file local variable `conf-space-keywords'. Use the function `conf-space-keywords' if you want to specify keywords in an interactive fashion instead. For details see `conf-mode'. Example: # Conf mode font-locks this right with \[conf-space-mode] (space separated) image/jpeg jpeg jpg jpe image/png png image/tiff tiff tif # Or with keywords (from a recognized file name): class desktop # Standard multimedia devices add /dev/audio desktop add /dev/mixer desktop (fn)Fconf-space-keywords Enter Conf Space mode using regexp KEYWORDS to match the keywords. See `conf-space-mode'. (fn KEYWORDS)Fconf-colon-mode Conf Mode starter for Colon files. "Assignments" are with `:'. For details see `conf-mode'. Example: # Conf mode font-locks this right with \[conf-colon-mode] (colon) <Multi_key> <exclam> <exclam> : "\241" exclamdown <Multi_key> <c> <slash> : "\242" cent (fn)Fconf-ppd-mode Conf Mode starter for Adobe/CUPS PPD files. Comments start with `*%' and "assignments" are with `:'. For details see `conf-mode'. Example: *% Conf mode font-locks this right with \[conf-ppd-mode] (PPD) *DefaultTransfer: Null *Transfer Null.Inverse: "{ 1 exch sub }" (fn)Fconf-xdefaults-mode Conf Mode starter for Xdefaults files. Comments start with `!' and "assignments" are with `:'. For details see `conf-mode'. Example: ! Conf mode font-locks this right with \[conf-xdefaults-mode] (.Xdefaults) *background: gray99 *foreground: black (fn)Fconf-toml-mode Conf Mode starter for TOML files. Comments start with `#' and "assignments" are with `='. For details see `conf-mode'. Example: # Conf mode font-locks this right with \[conf-toml-mode] [entry] value = "some string" (fn)Fconf-desktop-mode Conf Mode started for freedesktop.org Desktop files. Comments start with `#' and "assignments" are with `='. For details see `conf-mode'. # Conf mode font-locks this correctly with \[conf-desktop-mode] [Desktop Entry] Name=GNU Image Manipulation Program Name[oc]=Editor d'imatge GIMP Exec=gimp-2.8 %U Terminal=false (fn)Fcookie Return a random phrase from PHRASE-FILE. When the phrase file is read in, display STARTMSG at the beginning of load, ENDMSG at the end. Interactively, PHRASE-FILE defaults to `cookie-file', unless that is nil or a prefix argument is used. (fn PHRASE-FILE &optional STARTMSG ENDMSG)Fcookie-insert Insert random phrases from PHRASE-FILE; COUNT of them. When the phrase file is read in, display STARTMSG at the beginning of load, ENDMSG at the end. (fn PHRASE-FILE &optional COUNT STARTMSG ENDMSG)Fcookie-snarf Reads in the PHRASE-FILE, returns it as a vector of strings. Emit STARTMSG and ENDMSG before and after. Caches the result; second and subsequent calls on the same file won't go to disk. (fn PHRASE-FILE &optional STARTMSG ENDMSG)Fcopyright-update Update copyright notice to indicate the current year. With prefix ARG, replace the years in the notice rather than adding the current year after them. If necessary, and `copyright-current-gpl-version' is set, any copying permissions following the copyright are updated as well. If non-nil, INTERACTIVEP tells the function to behave as when it's called interactively. (fn &optional ARG INTERACTIVEP)Fcopyright-fix-years Convert 2 digit years to 4 digit years. Uses heuristic: year >= 50 means 19xx, < 50 means 20xx. If `copyright-year-ranges' (which see) is non-nil, also independently replaces consecutive years with a range. (fn)Fcopyright Insert a copyright by $ORGANIZATION notice at cursor. (fn &optional STR ARG)Fcopyright-update-directory Update copyright notice for all files in DIRECTORY matching MATCH. If FIX is non-nil, run `copyright-fix-years' instead. (fn DIRECTORY MATCH &optional FIX)Fcperl-mode Major mode for editing Perl code. Expression and list commands understand all C brackets. Tab indents for Perl code. Paragraphs are separated by blank lines only. Delete converts tabs to spaces as it moves back. Various characters in Perl almost always come in pairs: {}, (), [], sometimes <>. When the user types the first, she gets the second as well, with optional special formatting done on {}. (Disabled by default.) You can always quote (with \[quoted-insert]) the left "paren" to avoid the expansion. The processing of < is special, since most the time you mean "less". CPerl mode tries to guess whether you want to type pair <>, and inserts is if it appropriate. You can set `cperl-electric-parens-string' to the string that contains the parens from the above list you want to be electrical. Electricity of parens is controlled by `cperl-electric-parens'. You may also set `cperl-electric-parens-mark' to have electric parens look for active mark and "embrace" a region if possible.' CPerl mode provides expansion of the Perl control constructs: if, else, elsif, unless, while, until, continue, do, for, foreach, formy and foreachmy. and POD directives (Disabled by default, see `cperl-electric-keywords'.) The user types the keyword immediately followed by a space, which causes the construct to be expanded, and the point is positioned where she is most likely to want to be. E.g., when the user types a space following "if" the following appears in the buffer: if () { or if () } { } and the cursor is between the parentheses. The user can then type some boolean expression within the parens. Having done that, typing \[cperl-linefeed] places you - appropriately indented - on a new line between the braces (if you typed \[cperl-linefeed] in a POD directive line, then appropriate number of new lines is inserted). If CPerl decides that you want to insert "English" style construct like bite if angry; it will not do any expansion. See also help on variable `cperl-extra-newline-before-brace'. (Note that one can switch the help message on expansion by setting `cperl-message-electric-keyword' to nil.) \[cperl-linefeed] is a convenience replacement for typing carriage return. It places you in the next line with proper indentation, or if you type it inside the inline block of control construct, like foreach (@lines) {print; print} and you are on a boundary of a statement inside braces, it will transform the construct into a multiline and will place you into an appropriately indented blank line. If you need a usual `newline-and-indent' behavior, it is on \[newline-and-indent], see documentation on `cperl-electric-linefeed'. Use \[cperl-invert-if-unless] to change a construction of the form if (A) { B } into B if A; \{cperl-mode-map} Setting the variable `cperl-font-lock' to t switches on font-lock-mode (even with older Emacsen), `cperl-electric-lbrace-space' to t switches on electric space between $ and {, `cperl-electric-parens-string' is the string that contains parentheses that should be electric in CPerl (see also `cperl-electric-parens-mark' and `cperl-electric-parens'), setting `cperl-electric-keywords' enables electric expansion of control structures in CPerl. `cperl-electric-linefeed' governs which one of two linefeed behavior is preferable. You can enable all these options simultaneously (recommended mode of use) by setting `cperl-hairy' to t. In this case you can switch separate options off by setting them to `null'. Note that one may undo the extra whitespace inserted by semis and braces in `auto-newline'-mode by consequent \[cperl-electric-backspace]. If your site has perl5 documentation in info format, you can use commands \[cperl-info-on-current-command] and \[cperl-info-on-command] to access it. These keys run commands `cperl-info-on-current-command' and `cperl-info-on-command', which one is which is controlled by variable `cperl-info-on-command-no-prompt' and `cperl-clobber-lisp-bindings' (in turn affected by `cperl-hairy'). Even if you have no info-format documentation, short one-liner-style help is available on \[cperl-get-help], and one can run perldoc or man via menu. It is possible to show this help automatically after some idle time. This is regulated by variable `cperl-lazy-help-time'. Default with `cperl-hairy' (if the value of `cperl-lazy-help-time' is nil) is 5 secs idle time . It is also possible to switch this on/off from the menu, or via \[cperl-toggle-autohelp]. Requires `run-with-idle-timer'. Use \[cperl-lineup] to vertically lineup some construction - put the beginning of the region at the start of construction, and make region span the needed amount of lines. Variables `cperl-pod-here-scan', `cperl-pod-here-fontify', `cperl-pod-face', `cperl-pod-head-face' control processing of POD and here-docs sections. With capable Emaxen results of scan are used for indentation too, otherwise they are used for highlighting only. Variables controlling indentation style: `cperl-tab-always-indent' Non-nil means TAB in CPerl mode should always reindent the current line, regardless of where in the line point is when the TAB command is used. `cperl-indent-left-aligned-comments' Non-nil means that the comment starting in leftmost column should indent. `cperl-auto-newline' Non-nil means automatically newline before and after braces, and after colons and semicolons, inserted in Perl code. The following \[cperl-electric-backspace] will remove the inserted whitespace. Insertion after colons requires both this variable and `cperl-auto-newline-after-colon' set. `cperl-auto-newline-after-colon' Non-nil means automatically newline even after colons. Subject to `cperl-auto-newline' setting. `cperl-indent-level' Indentation of Perl statements within surrounding block. The surrounding block's indentation is the indentation of the line on which the open-brace appears. `cperl-continued-statement-offset' Extra indentation given to a substatement, such as the then-clause of an if, or body of a while, or just a statement continuation. `cperl-continued-brace-offset' Extra indentation given to a brace that starts a substatement. This is in addition to `cperl-continued-statement-offset'. `cperl-brace-offset' Extra indentation for line if it starts with an open brace. `cperl-brace-imaginary-offset' An open brace following other text is treated as if it the line started this far to the right of the actual line indentation. `cperl-label-offset' Extra indentation for line that is a label. `cperl-min-label-indent' Minimal indentation for line that is a label. Settings for classic indent-styles: K&R BSD=C++ GNU PerlStyle=Whitesmith `cperl-indent-level' 5 4 2 4 `cperl-brace-offset' 0 0 0 0 `cperl-continued-brace-offset' -5 -4 0 0 `cperl-label-offset' -5 -4 -2 -4 `cperl-continued-statement-offset' 5 4 2 4 CPerl knows several indentation styles, and may bulk set the corresponding variables. Use \[cperl-set-style] to do this. Use \[cperl-set-style-back] to restore the memorized preexisting values (both available from menu). See examples in `cperl-style-examples'. Part of the indentation style is how different parts of if/elsif/else statements are broken into lines; in CPerl, this is reflected on how templates for these constructs are created (controlled by `cperl-extra-newline-before-brace'), and how reflow-logic should treat "continuation" blocks of else/elsif/continue, controlled by the same variable, and by `cperl-extra-newline-before-brace-multiline', `cperl-merge-trailing-else', `cperl-indent-region-fix-constructs'. If `cperl-indent-level' is 0, the statement after opening brace in column 0 is indented on `cperl-brace-offset'+`cperl-continued-statement-offset'. Turning on CPerl mode calls the hooks in the variable `cperl-mode-hook' with no args. DO NOT FORGET to read micro-docs (available from `Perl' menu) or as help on variables `cperl-tips', `cperl-problems', `cperl-praise', `cperl-speed'. (fn)Fcperl-perldoc Run `perldoc' on WORD. (fn WORD)Fcperl-perldoc-at-point Run a `perldoc' on the word around point. (fn)Fcpp-highlight-buffer Highlight C code according to preprocessor conditionals. This command pops up a buffer which you should edit to specify what kind of highlighting to use, and the criteria for highlighting. A prefix arg suppresses display of that buffer. (fn ARG)Fcpp-parse-edit Edit display information for cpp conditionals. (fn)Fcompleting-read-multiple Read multiple strings in the minibuffer, with completion. The arguments are the same as those of `completing-read'. \<crm-local-completion-map> Input multiple strings by separating each one with a string that matches the regexp `crm-separator'. For example, if the separator regexp is ",", entering "alice,bob,eve" specifies the strings "alice", "bob", and "eve". We refer to contiguous strings of non-separator-characters as "elements". In this example there are three elements. Completion is available on a per-element basis. For example, if the contents of the minibuffer are "alice,bob,eve" and point is between "l" and "i", pressing \[minibuffer-complete] operates on the element "alice". This function returns a list of the strings that were read, with empty strings removed. (fn PROMPT TABLE &optional PREDICATE REQUIRE-MATCH INITIAL-INPUT HIST DEF INHERIT-INPUT-METHOD)Fcss-mode Major mode to edit Cascading Style Sheets (CSS). \<css-mode-map> This mode provides syntax highlighting, indentation, completion, and documentation lookup for CSS. Use `\[complete-symbol]' to complete CSS properties, property values, pseudo-elements, pseudo-classes, at-rules, bang-rules, and HTML tags, classes and IDs. Completion candidates for HTML class names and IDs are found by looking through open HTML mode buffers. Use `\[info-lookup-symbol]' to look up documentation of CSS properties, at-rules, pseudo-classes, and pseudo-elements on the Mozilla Developer Network (MDN). Use `\[fill-paragraph]' to reformat CSS declaration blocks. It can also be used to fill comments. \{css-mode-map} (fn)Fscss-mode Major mode to edit "Sassy CSS" files. (fn)Fcss-lookup-symbol Display the CSS documentation for SYMBOL, as found on MDN. When this command is used interactively, it picks a default symbol based on the CSS text before point -- either an @-keyword, a property name, a pseudo-class, or a pseudo-element, depending on what is seen near point. (fn SYMBOL)Vcua-mode Non-nil if Cua mode is enabled. See the `cua-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `cua-mode'.Fcua-mode Toggle Common User Access style editing (CUA mode). With a prefix argument ARG, enable CUA mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. CUA mode is a global minor mode. When enabled, typed text replaces the active selection, and you can use C-z, C-x, C-c, and C-v to undo, cut, copy, and paste in addition to the normal Emacs bindings. The C-x and C-c keys only do cut and copy when the region is active, so in most cases, they do not conflict with the normal function of these prefix keys. If you really need to perform a command which starts with one of the prefix keys even when the region is active, you have three options: - press the prefix key twice very quickly (within 0.2 seconds), - press the prefix key and the following key within 0.2 seconds, or - use the SHIFT key with the prefix key, i.e. C-S-x or C-S-c. You can customize `cua-enable-cua-keys' to completely disable the CUA bindings, or `cua-prefix-override-inhibit-delay' to change the prefix fallback behavior. (fn &optional ARG)Fcua-selection-mode Enable CUA selection mode without the C-z/C-x/C-c/C-v bindings. (fn ARG)Fcua-rectangle-mark-mode Toggle the region as rectangular. Activates the region if needed. Only lasts until the region is deactivated. (fn &optional ARG)Vcursor-sensor-inhibit When non-nil, suspend `cursor-sensor-mode' and `cursor-intangible-mode'. By convention, this is a list of symbols where each symbol stands for the "cause" of the suspension.Fcursor-intangible-mode Keep cursor outside of any `cursor-intangible' text property. (fn &optional ARG)Fcursor-sensor-mode Handle the `cursor-sensor-functions' text property. This property should hold a list of functions which react to the motion of the cursor. They're called with three arguments (WINDOW OLDPOS DIR) where WINDOW is the affected window, OLDPOS is the last known position of the cursor and DIR can be `entered' or `left' depending on whether the cursor is entering the area covered by the text-property property or leaving it. (fn &optional ARG)Vcustom-browse-sort-alphabetically If non-nil, sort customization group alphabetically in `custom-browse'.Vcustom-buffer-sort-alphabetically Whether to sort customization groups alphabetically in Custom buffer.Vcustom-menu-sort-alphabetically If non-nil, sort each customization group alphabetically in menus.Fcustomize-set-value Set VARIABLE to VALUE, and return VALUE. VALUE is a Lisp object. If VARIABLE has a `variable-interactive' property, that is used as if it were the arg to `interactive' (which see) to interactively read the value. If VARIABLE has a `custom-type' property, it must be a widget and the `:prompt-value' property of that widget will be used for reading the value. If given a prefix (or a COMMENT argument), also prompt for a comment. (fn VARIABLE VALUE &optional COMMENT)Fcustomize-set-variable Set the default for VARIABLE to VALUE, and return VALUE. VALUE is a Lisp object. If VARIABLE has a `custom-set' property, that is used for setting VARIABLE, otherwise `set-default' is used. If VARIABLE has a `variable-interactive' property, that is used as if it were the arg to `interactive' (which see) to interactively read the value. If VARIABLE has a `custom-type' property, it must be a widget and the `:prompt-value' property of that widget will be used for reading the value. If given a prefix (or a COMMENT argument), also prompt for a comment. (fn VARIABLE VALUE &optional COMMENT)Fcustomize-save-variable Set the default for VARIABLE to VALUE, and save it for future sessions. Return VALUE. If VARIABLE has a `custom-set' property, that is used for setting VARIABLE, otherwise `set-default' is used. If VARIABLE has a `variable-interactive' property, that is used as if it were the arg to `interactive' (which see) to interactively read the value. If VARIABLE has a `custom-type' property, it must be a widget and the `:prompt-value' property of that widget will be used for reading the value. If given a prefix (or a COMMENT argument), also prompt for a comment. (fn VARIABLE VALUE &optional COMMENT)Fcustomize-push-and-save Add ELTS to LIST-VAR and save for future sessions, safely. ELTS should be a list. This function adds each entry to the value of LIST-VAR using `add-to-list'. If Emacs is initialized, call `customize-save-variable' to save the resulting list value now. Otherwise, add an entry to `after-init-hook' to save it after initialization. (fn LIST-VAR ELTS)Fcustomize Select a customization buffer which you can use to set user options. User options are structured into "groups". Initially the top-level group `Emacs' and its immediate subgroups are shown; the contents of those subgroups are initially hidden. (fn)Fcustomize-mode Customize options related to a major or minor mode. By default the current major mode is used. With a prefix argument or if the current major mode has no known group, prompt for the MODE to customize. (fn MODE)Fcustomize-group Customize GROUP, which must be a customization group. If OTHER-WINDOW is non-nil, display in another window. (fn &optional GROUP OTHER-WINDOW)Fcustomize-group-other-window Customize GROUP, which must be a customization group, in another window. (fn &optional GROUP)Fcustomize-option Customize SYMBOL, which must be a user option. (fn SYMBOL)Fcustomize-option-other-window Customize SYMBOL, which must be a user option. Show the buffer in another window, but don't select it. (fn SYMBOL)Vcustomize-package-emacs-version-alist Alist mapping versions of a package to Emacs versions. We use this for packages that have their own names, but are released as part of Emacs itself. Each elements looks like this: (PACKAGE (PVERSION . EVERSION)...) Here PACKAGE is the name of a package, as a symbol. After PACKAGE come one or more elements, each associating a package version PVERSION with the first Emacs version EVERSION in which it (or a subsequent version of PACKAGE) was first released. Both PVERSION and EVERSION are strings. PVERSION should be a string that this package used in the :package-version keyword for `defcustom', `defgroup', and `defface'. For example, the MH-E package updates this alist as follows: (add-to-list \='customize-package-emacs-version-alist \='(MH-E ("6.0" . "22.1") ("6.1" . "22.1") ("7.0" . "22.1") ("7.1" . "22.1") ("7.2" . "22.1") ("7.3" . "22.1") ("7.4" . "22.1") ("8.0" . "22.1"))) The value of PACKAGE needs to be unique and it needs to match the PACKAGE value appearing in the :package-version keyword. Since the user might see the value in an error message, a good choice is the official name of the package, such as MH-E or Gnus.Fcustomize-changed-options Customize all settings whose meanings have changed in Emacs itself. This includes new user options and faces, and new customization groups, as well as older options and faces whose meanings or default values have changed since the previous major Emacs release. With argument SINCE-VERSION (a string), customize all settings that were added or redefined since that version. (fn &optional SINCE-VERSION)Fcustomize-face Customize FACE, which should be a face name or nil. If FACE is nil, customize all faces. If FACE is actually a face-alias, customize the face it is aliased to. If OTHER-WINDOW is non-nil, display in another window. Interactively, when point is on text which has a face specified, suggest to customize that face, if it's customizable. (fn &optional FACE OTHER-WINDOW)Fcustomize-face-other-window Show customization buffer for face FACE in other window. If FACE is actually a face-alias, customize the face it is aliased to. Interactively, when point is on text which has a face specified, suggest to customize that face, if it's customizable. (fn &optional FACE)Fcustomize-unsaved Customize all options and faces set in this session but not saved. (fn)Fcustomize-rogue Customize all user variables modified outside customize. (fn)Fcustomize-saved Customize all saved options and faces. (fn)Fcustomize-apropos Customize loaded options, faces and groups matching PATTERN. PATTERN can be a word, a list of words (separated by spaces), or a regexp (using some regexp special characters). If it is a word, search for matches for that word as a substring. If it is a list of words, search for matches for any two (or more) of those words. If TYPE is `options', include only options. If TYPE is `faces', include only faces. If TYPE is `groups', include only groups. (fn PATTERN &optional TYPE)Fcustomize-apropos-options Customize all loaded customizable options matching REGEXP. (fn REGEXP &optional IGNORED)Fcustomize-apropos-faces Customize all loaded faces matching REGEXP. (fn REGEXP)Fcustomize-apropos-groups Customize all loaded groups matching REGEXP. (fn REGEXP)Fcustom-prompt-customize-unsaved-options Prompt user to customize any unsaved customization options. Return non-nil if user chooses to customize, for use in `kill-emacs-query-functions'. (fn)Fcustom-buffer-create Create a buffer containing OPTIONS. Optional NAME is the name of the buffer. OPTIONS should be an alist of the form ((SYMBOL WIDGET)...), where SYMBOL is a customization option, and WIDGET is a widget for editing that option. DESCRIPTION is unused. (fn OPTIONS &optional NAME DESCRIPTION)Fcustom-buffer-create-other-window Create a buffer containing OPTIONS, and display it in another window. The result includes selecting that window. Optional NAME is the name of the buffer. OPTIONS should be an alist of the form ((SYMBOL WIDGET)...), where SYMBOL is a customization option, and WIDGET is a widget for editing that option. DESCRIPTION is unused. (fn OPTIONS &optional NAME DESCRIPTION)Fcustomize-browse Create a tree browser for the customize hierarchy. (fn &optional GROUP)Vcustom-file File used for storing customization information. The default is nil, which means to use your init file as specified by `user-init-file'. If the value is not nil, it should be an absolute file name. You can set this option through Custom, if you carefully read the last paragraph below. However, usually it is simpler to write something like the following in your init file: (setq custom-file "~/.emacs-custom.el") (load custom-file) Note that both lines are necessary: the first line tells Custom to save all customizations in this file, but does not load it. When you change this variable outside Custom, look in the previous custom file (usually your init file) for the forms `(custom-set-variables ...)' and `(custom-set-faces ...)', and copy them (whichever ones you find) to the new custom file. This will preserve your existing customizations. If you save this option using Custom, Custom will write all currently saved customizations, including the new one for this option itself, into the file you specify, overwriting any `custom-set-variables' and `custom-set-faces' forms already present in that file. It will not delete any customizations from the old custom file. You should do that manually if that is what you want. You also have to put something like (load "CUSTOM-FILE") in your init file, where CUSTOM-FILE is the actual name of the file. Otherwise, Emacs will not load the file when it starts up, and hence will not set `custom-file' to that file either.Fcustom-save-all Save all customizations in `custom-file'. (fn)Fcustomize-save-customized Save all user options which have been set in this session. (fn)Fcustom-menu-create Create menu for customization group SYMBOL. The menu is in a format applicable to `easy-menu-define'. (fn SYMBOL)Fcustomize-menu-create Return a customize menu for customization group SYMBOL. If optional NAME is given, use that as the name of the menu. Otherwise the menu will be named `Customize'. The format is suitable for use with `easy-menu-define'. (fn SYMBOL &optional NAME)Fcustomize-create-theme Create or edit a custom theme. THEME, if non-nil, should be an existing theme to edit. If THEME is `user', the resulting *Custom Theme* buffer also contains a checkbox for removing the theme settings specified in the buffer from the Custom save file. BUFFER, if non-nil, should be a buffer to use; the default is named *Custom Theme*. (fn &optional THEME BUFFER)Fcustom-theme-visit-theme Set up a Custom buffer to edit custom theme THEME. (fn THEME)Fdescribe-theme Display a description of the Custom theme THEME (a symbol). (fn THEME)Fcustomize-themes Display a selectable list of Custom themes. When called from Lisp, BUFFER should be the buffer to use; if omitted, a buffer named *Custom Themes* is used. (fn &optional BUFFER)Fcvs-status-mode Mode used for cvs status output. (fn)Fcwarn-mode Minor mode that highlights suspicious C and C++ constructions. Suspicious constructs are highlighted using `font-lock-warning-face'. Note, in addition to enabling this minor mode, the major mode must be included in the variable `cwarn-configuration'. By default C and C++ modes are included. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Vglobal-cwarn-mode Non-nil if Global Cwarn mode is enabled. See the `global-cwarn-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-cwarn-mode'.Fglobal-cwarn-mode Toggle Cwarn mode in all buffers. With prefix ARG, enable Global Cwarn mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Cwarn mode is enabled in all buffers where `turn-on-cwarn-mode-if-enabled' would do it. See `cwarn-mode' for more information on Cwarn mode. (fn &optional ARG)Fcyrillic-encode-koi8-r-char Return KOI8-R external character code of CHAR if appropriate. (fn CHAR)Fcyrillic-encode-alternativnyj-char Return ALTERNATIVNYJ external character code of CHAR if appropriate. (fn CHAR)Fstandard-display-cyrillic-translit Display a cyrillic buffer using a transliteration. For readability, the table is slightly different from the one used for the input method `cyrillic-translit'. The argument is a string which specifies which language you are using; that affects the choice of transliterations slightly. Possible values are listed in `cyrillic-language-alist'. If the argument is t, we use the default cyrillic transliteration. If the argument is nil, we return the display table to its standard state. (fn &optional CYRILLIC-LANGUAGE)Fdabbrev-completion Completion on current word. Like \[dabbrev-expand] but finds all expansions in the current buffer and presents suggestions for completion. With a prefix argument ARG, it searches all buffers accepted by the function pointed out by `dabbrev-friend-buffer-function' to find the completions. If the prefix argument is 16 (which comes from \[universal-argument] \[universal-argument]), then it searches *all* buffers. (fn &optional ARG)Fdabbrev-expand Expand previous word "dynamically". Expands to the most recent, preceding word for which this is a prefix. If no suitable preceding word is found, words following point are considered. If still no suitable word is found, then look in the buffers accepted by the function pointed out by variable `dabbrev-friend-buffer-function', if `dabbrev-check-other-buffers' says so. Then, if `dabbrev-check-all-buffers' is non-nil, look in all the other buffers, subject to constraints specified by `dabbrev-ignored-buffer-names' and `dabbrev-ignored-regexps'. A positive prefix argument, N, says to take the Nth backward *distinct* possibility. A negative argument says search forward. If the cursor has not moved from the end of the previous expansion and no argument is given, replace the previously-made expansion with the next possible expansion not yet tried. The variable `dabbrev-backward-only' may be used to limit the direction of search to backward if set non-nil. See also `dabbrev-abbrev-char-regexp' and \[dabbrev-completion]. (fn ARG)Fdata-debug-new-buffer Create a new data-debug buffer with NAME. (fn NAME)Fdbus-handle-event Handle events from the D-Bus. EVENT is a D-Bus event, see `dbus-check-event'. HANDLER, being part of the event, is called with arguments ARGS. If the HANDLER returns a `dbus-error', it is propagated as return message. (fn EVENT)Fdcl-mode Major mode for editing DCL-files. This mode indents command lines in blocks. (A block is commands between THEN-ELSE-ENDIF and between lines matching dcl-block-begin-regexp and dcl-block-end-regexp.) Labels are indented to a fixed position unless they begin or end a block. Whole-line comments (matching dcl-comment-line-regexp) are not indented. Data lines are not indented. Key bindings: \{dcl-mode-map} Commands not usually bound to keys: \[dcl-save-nondefault-options] Save changed options \[dcl-save-all-options] Save all options \[dcl-save-option] Save any option \[dcl-save-mode] Save buffer mode Variables controlling indentation style and extra features: dcl-basic-offset Extra indentation within blocks. dcl-continuation-offset Extra indentation for continued lines. dcl-margin-offset Indentation for the first command line in a file or SUBROUTINE. dcl-margin-label-offset Indentation for a label. dcl-comment-line-regexp Lines matching this regexp will not be indented. dcl-block-begin-regexp dcl-block-end-regexp Regexps that match command lines that begin and end, respectively, a block of command lines that will be given extra indentation. Command lines between THEN-ELSE-ENDIF are always indented; these variables make it possible to define other places to indent. Set to nil to disable this feature. dcl-calc-command-indent-function Can be set to a function that customizes indentation for command lines. Two such functions are included in the package: dcl-calc-command-indent-multiple dcl-calc-command-indent-hang dcl-calc-cont-indent-function Can be set to a function that customizes indentation for continued lines. One such function is included in the package: dcl-calc-cont-indent-relative (set by default) dcl-tab-always-indent If t, pressing TAB always indents the current line. If nil, pressing TAB indents the current line if point is at the left margin. dcl-electric-characters Non-nil causes lines to be indented at once when a label, ELSE or ENDIF is typed. dcl-electric-reindent-regexps Use this variable and function dcl-electric-character to customize which words trigger electric indentation. dcl-tempo-comma dcl-tempo-left-paren dcl-tempo-right-paren These variables control the look of expanded templates. dcl-imenu-generic-expression Default value for imenu-generic-expression. The default includes SUBROUTINE labels in the main listing and sub-listings for other labels, CALL, GOTO and GOSUB statements. dcl-imenu-label-labels dcl-imenu-label-goto dcl-imenu-label-gosub dcl-imenu-label-call Change the text that is used as sub-listing labels in imenu. Loading this package calls the value of the variable `dcl-mode-load-hook' with no args, if that value is non-nil. Turning on DCL mode calls the value of the variable `dcl-mode-hook' with no args, if that value is non-nil. The following example uses the default values for all variables: $! This is a comment line that is not indented (it matches $! dcl-comment-line-regexp) $! Next follows the first command line. It is indented dcl-margin-offset. $ i = 1 $ ! Other comments are indented like command lines. $ ! A margin label indented dcl-margin-label-offset: $ label: $ if i.eq.1 $ then $ ! Lines between THEN-ELSE and ELSE-ENDIF are $ ! indented dcl-basic-offset $ loop1: ! This matches dcl-block-begin-regexp... $ ! ...so this line is indented dcl-basic-offset $ text = "This " + - ! is a continued line "lined up with the command line" $ type sys$input Data lines are not indented at all. $ endloop1: ! This matches dcl-block-end-regexp $ endif $ There is some minimal font-lock support (see vars `dcl-font-lock-defaults' and `dcl-font-lock-keywords'). (fn)Fdebug Enter debugger. \<debugger-mode-map>`\[debugger-continue]' returns from the debugger. Arguments are mainly for use when this is called from the internals of the evaluator. You may call with no args, or you may pass nil as the first arg and any other args you like. In that case, the list of args after the first will be printed into the backtrace buffer. (fn &rest ARGS)Fdebug-on-entry Request FUNCTION to invoke debugger each time it is called. When called interactively, prompt for FUNCTION in the minibuffer. This works by modifying the definition of FUNCTION. If you tell the debugger to continue, FUNCTION's execution proceeds. If FUNCTION is a normal function or a macro written in Lisp, you can also step through its execution. FUNCTION can also be a primitive that is not a special form, in which case stepping is not possible. Break-on-entry for primitive functions only works when that function is called from Lisp. Use \[cancel-debug-on-entry] to cancel the effect of this command. Redefining FUNCTION also cancels it. (fn FUNCTION)Fcancel-debug-on-entry Undo effect of \[debug-on-entry] on FUNCTION. If FUNCTION is nil, cancel debug-on-entry for all functions. When called interactively, prompt for FUNCTION in the minibuffer. To specify a nil argument interactively, exit with an empty minibuffer. (fn &optional FUNCTION)Fdebug-on-variable-change Trigger a debugger invocation when VARIABLE is changed. When called interactively, prompt for VARIABLE in the minibuffer. This works by calling `add-variable-watcher' on VARIABLE. If you quit from the debugger, this will abort the change (unless the change is caused by the termination of a let-binding). The watchpoint may be circumvented by C code that changes the variable directly (i.e., not via `set'). Changing the value of the variable (e.g., `setcar' on a list variable) will not trigger watchpoint. Use \[cancel-debug-on-variable-change] to cancel the effect of this command. Uninterning VARIABLE or making it an alias of another symbol also cancels it. (fn VARIABLE)Fcancel-debug-on-variable-change Undo effect of \[debug-on-variable-change] on VARIABLE. If VARIABLE is nil, cancel debug-on-variable-change for all variables. When called interactively, prompt for VARIABLE in the minibuffer. To specify a nil argument interactively, exit with an empty minibuffer. (fn &optional VARIABLE)Fdecipher Format a buffer of ciphertext for cryptanalysis and enter Decipher mode. (fn)Fdecipher-mode Major mode for decrypting monoalphabetic substitution ciphers. Lower-case letters enter plaintext. Upper-case letters are commands. The buffer is made read-only so that normal Emacs commands cannot modify it. The most useful commands are: \<decipher-mode-map> \[decipher-digram-list] Display a list of all digrams & their frequency \[decipher-frequency-count] Display the frequency of each ciphertext letter \[decipher-adjacency-list] Show adjacency list for current letter (lists letters appearing next to it) \[decipher-make-checkpoint] Save the current cipher alphabet (checkpoint) \[decipher-restore-checkpoint] Restore a saved cipher alphabet (checkpoint) (fn)Fdelimit-columns-customize Customization of `columns' group. (fn)Fdelimit-columns-region Prettify all columns in a text region. START and END delimits the text region. (fn START END)Fdelimit-columns-rectangle Prettify all columns in a text rectangle. START and END delimits the corners of text rectangle. (fn START END)Vdelete-selection-mode Non-nil if Delete-Selection mode is enabled. See the `delete-selection-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `delete-selection-mode'.Fdelete-selection-mode Toggle Delete Selection mode. Interactively, with a prefix argument, enable Delete Selection mode if the prefix argument is positive, and disable it otherwise. If called from Lisp, toggle the mode if ARG is `toggle', disable the mode if ARG is a non-positive integer, and enable the mode otherwise (including if ARG is omitted or nil or a positive integer). When Delete Selection mode is enabled, typed text replaces the selection if the selection is active. Otherwise, typed text is just inserted at point regardless of any selection. See `delete-selection-helper' and `delete-selection-pre-hook' for information on adapting behavior of commands in Delete Selection mode. (fn &optional ARG)Fdefine-derived-mode Create a new mode as a variant of an existing mode. The arguments to this command are as follow: CHILD: the name of the command for the derived mode. PARENT: the name of the command for the parent mode (e.g. `text-mode') or nil if there is no parent. NAME: a string which will appear in the status line (e.g. "Hypertext") DOCSTRING: an optional documentation string--if you do not supply one, the function will attempt to invent something useful. BODY: forms to execute just before running the hooks for the new mode. Do not use `interactive' here. BODY can start with a bunch of keyword arguments. The following keyword arguments are currently understood: :group GROUP Declare the customization group that corresponds to this mode. The command `customize-mode' uses this. :syntax-table TABLE Use TABLE instead of the default (CHILD-syntax-table). A nil value means to simply use the same syntax-table as the parent. :abbrev-table TABLE Use TABLE instead of the default (CHILD-abbrev-table). A nil value means to simply use the same abbrev-table as the parent. :after-hook FORM A single lisp form which is evaluated after the mode hooks have been run. It should not be quoted. Here is how you could define LaTeX-Thesis mode as a variant of LaTeX mode: (define-derived-mode LaTeX-thesis-mode LaTeX-mode "LaTeX-Thesis") You could then make new key bindings for `LaTeX-thesis-mode-map' without changing regular LaTeX mode. In this example, BODY is empty, and DOCSTRING is generated by default. On a more complicated level, the following command uses `sgml-mode' as the parent, and then sets the variable `case-fold-search' to nil: (define-derived-mode article-mode sgml-mode "Article" "Major mode for editing technical articles." (setq case-fold-search nil)) Note that if the documentation string had been left out, it would have been generated automatically, with a reference to the keymap. The new mode runs the hook constructed by the function `derived-mode-hook-name'. See Info node `(elisp)Derived Modes' for more details. (fn CHILD PARENT NAME &optional DOCSTRING &rest BODY)Fderived-mode-init-mode-variables Initialize variables for a new MODE. Right now, if they don't already exist, set up a blank keymap, an empty syntax table, and an empty abbrev table -- these will be merged the first time the mode is used. (fn MODE)Fdescribe-text-properties Describe widgets, buttons, overlays, and text properties at POS. POS is taken to be in BUFFER or in current buffer if nil. Interactively, describe them for the character after point. If optional second argument OUTPUT-BUFFER is non-nil, insert the output into that buffer, and don't initialize or clear it otherwise. (fn POS &optional OUTPUT-BUFFER BUFFER)Fdescribe-char Describe position POS (interactively, point) and the char after POS. POS is taken to be in BUFFER, or the current buffer if BUFFER is nil. The information is displayed in buffer `*Help*'. The position information includes POS; the total size of BUFFER; the region limits, if narrowed; the column number; and the horizontal scroll amount, if the buffer is horizontally scrolled. The character information includes: its codepoint; its charset (see `char-charset'), overridden by the `charset' text property at POS, if any; the codepoint of the character in the above charset; the character's script (as defined by `char-script-table') the character's syntax, as produced by `syntax-after' and `internal-describe-syntax-value'; its category (see `char-category-set' and `describe-char-categories'); how to input the character using the keyboard and input methods; how the character is encoded in BUFFER and in BUFFER's file; the font and font glyphs used to display the character; the composition information for displaying the character (if relevant); the character's canonical name and other properties defined by the Unicode Data Base; and widgets, buttons, overlays, and text properties relevant to POS. (fn POS &optional BUFFER)Fdescribe-char-eldoc Return a description of character at point for use by ElDoc mode. Return nil if character at point is a printable ASCII character (i.e. codepoint between 32 and 127 inclusively). Otherwise return a description formatted by `describe-char-eldoc--format' function taking into account value of `eldoc-echo-area-use-multiline-p' variable and width of minibuffer window for width limit. This function is meant to be used as a value of `eldoc-documentation-function' variable. (fn)Vdesktop-save-mode Non-nil if Desktop-Save mode is enabled. See the `desktop-save-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `desktop-save-mode'.Fdesktop-save-mode Toggle desktop saving (Desktop Save mode). With a prefix argument ARG, enable Desktop Save mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Desktop Save mode is enabled, the state of Emacs is saved from one session to another. In particular, Emacs will save the desktop when it exits (this may prompt you; see the option `desktop-save'). The next time Emacs starts, if this mode is active it will restore the desktop. To manually save the desktop at any time, use the command `\[desktop-save]'. To load it, use `\[desktop-read]'. Once a desktop file exists, Emacs will auto-save it according to the option `desktop-auto-save-timeout'. To see all the options you can set, browse the `desktop' customization group. For further details, see info node `(emacs)Saving Emacs Sessions'. (fn &optional ARG)Vdesktop-locals-to-save List of local variables to save for each buffer. The variables are saved only when they really are local. Conventional minor modes are restored automatically; they should not be listed here.Vdesktop-buffer-mode-handlers Alist of major mode specific functions to restore a desktop buffer. Functions listed are called by `desktop-create-buffer' when `desktop-read' evaluates the desktop file. List elements must have the form (MAJOR-MODE . RESTORE-BUFFER-FUNCTION). Buffers with a major mode not specified here, are restored by the default handler `desktop-restore-file-buffer'. Handlers are called with argument list (DESKTOP-BUFFER-FILE-NAME DESKTOP-BUFFER-NAME DESKTOP-BUFFER-MISC) Furthermore, they may use the following variables: `desktop-file-version' `desktop-buffer-major-mode' `desktop-buffer-minor-modes' `desktop-buffer-point' `desktop-buffer-mark' `desktop-buffer-read-only' `desktop-buffer-locals' If a handler returns a buffer, then the saved mode settings and variable values for that buffer are copied into it. Modules that define a major mode that needs a special handler should contain code like (defun foo-restore-desktop-buffer ... (add-to-list \='desktop-buffer-mode-handlers \='(foo-mode . foo-restore-desktop-buffer)) The major mode function must either be autoloaded, or of the form "foobar-mode" and defined in library "foobar", so that desktop can guess how to load the mode's definition.Vdesktop-minor-mode-handlers Alist of functions to restore non-standard minor modes. Functions are called by `desktop-create-buffer' to restore minor modes. List elements must have the form (MINOR-MODE . RESTORE-FUNCTION). Minor modes not specified here, are restored by the standard minor mode function. Handlers are called with argument list (DESKTOP-BUFFER-LOCALS) Furthermore, they may use the following variables: `desktop-file-version' `desktop-buffer-file-name' `desktop-buffer-name' `desktop-buffer-major-mode' `desktop-buffer-minor-modes' `desktop-buffer-point' `desktop-buffer-mark' `desktop-buffer-read-only' `desktop-buffer-misc' When a handler is called, the buffer has been created and the major mode has been set, but local variables listed in desktop-buffer-locals has not yet been created and set. Modules that define a minor mode that needs a special handler should contain code like (defun foo-desktop-restore ... (add-to-list \='desktop-minor-mode-handlers \='(foo-mode . foo-desktop-restore)) The minor mode function must either be autoloaded, or of the form "foobar-mode" and defined in library "foobar", so that desktop can guess how to load the mode's definition. See also `desktop-minor-mode-table'.Fdesktop-clear Empty the Desktop. This kills all buffers except for internal ones and those with names matched by a regular expression in the list `desktop-clear-preserve-buffers'. Furthermore, it clears the variables listed in `desktop-globals-to-clear'. When called interactively and `desktop-restore-frames' is non-nil, it also deletes all frames except the selected one (and its minibuffer frame, if different). (fn)Fdesktop-save Save the desktop in a desktop file. Parameter DIRNAME specifies where to save the desktop file. Optional parameter RELEASE says whether we're done with this desktop. If ONLY-IF-CHANGED is non-nil, compare the current desktop information to that in the desktop file, and if the desktop information has not changed since it was last saved then do not rewrite the file. This function can save the desktop in either format version 208 (which only Emacs 25.1 and later can read) or version 206 (which is readable by any Emacs from version 22.1 onwards). By default, it will use the same format the desktop file had when it was last saved, or version 208 when writing a fresh desktop file. To upgrade a version 206 file to version 208, call this command explicitly with a bare prefix argument: C-u M-x desktop-save. You are recommended to do this once you have firmly upgraded to Emacs 25.1 (or later). To downgrade a version 208 file to version 206, use a double command prefix: C-u C-u M-x desktop-save. Confirmation will be requested in either case. In a non-interactive call, VERSION can be given as an integer, either 206 or 208, which will be accepted as the format version in which to save the file without further confirmation. (fn DIRNAME &optional RELEASE ONLY-IF-CHANGED VERSION)Fdesktop-remove Delete desktop file in `desktop-dirname'. This function also sets `desktop-dirname' to nil. (fn)Fdesktop-read Read and process the desktop file in directory DIRNAME. Look for a desktop file in DIRNAME, or if DIRNAME is omitted, look in directories listed in `desktop-path'. If a desktop file is found, it is processed and `desktop-after-read-hook' is run. If no desktop file is found, clear the desktop and run `desktop-no-desktop-file-hook'. This function is a no-op when Emacs is running in batch mode. It returns t if a desktop file was loaded, nil otherwise. (fn &optional DIRNAME)Fdesktop-load-default Load the `default' start-up library manually. Also inhibit further loading of it. (fn)Fdesktop-change-dir Change to desktop saved in DIRNAME. Kill the desktop as specified by variables `desktop-save-mode' and `desktop-save', then clear the desktop and load the desktop file in directory DIRNAME. (fn DIRNAME)Fdesktop-save-in-desktop-dir Save the desktop in directory `desktop-dirname'. (fn)Fdesktop-revert Revert to the last loaded desktop. (fn)Fgnus-article-outlook-unwrap-lines Unwrap lines that appear to be wrapped citation lines. You can control what lines will be unwrapped by frobbing `gnus-outlook-deuglify-unwrap-min' and `gnus-outlook-deuglify-unwrap-max', indicating the minimum and maximum length of an unwrapped citation line. If NODISPLAY is non-nil, don't redisplay the article buffer. (fn &optional NODISPLAY)Fgnus-article-outlook-repair-attribution Repair a broken attribution line. If NODISPLAY is non-nil, don't redisplay the article buffer. (fn &optional NODISPLAY)Fgnus-outlook-deuglify-article Full deuglify of broken Outlook (Express) articles. Treat dumbquotes, unwrap lines, repair attribution and rearrange citation. If NODISPLAY is non-nil, don't redisplay the article buffer. (fn &optional NODISPLAY)Fgnus-article-outlook-deuglify-article Deuglify broken Outlook (Express) articles and redisplay. (fn)Fdiary Generate the diary window for ARG days starting with the current date. If no argument is provided, the number of days of diary entries is governed by the variable `diary-number-of-entries'. A value of ARG less than 1 does nothing. This function is suitable for execution in an init file. (fn &optional ARG)Fdiary-mail-entries Send a mail message showing diary entries for next NDAYS days. If no prefix argument is given, NDAYS is set to `diary-mail-days'. Mail is sent to the address specified by `diary-mail-addr'. Here is an example of a script to call `diary-mail-entries', suitable for regular scheduling using cron (or at). Note that since `emacs -script' does not load your init file, you should ensure that all relevant variables are set. #!/usr/bin/emacs -script ;; diary-rem.el - run the Emacs diary-reminder (setq diary-mail-days 3 diary-file "/path/to/diary.file" calendar-date-style \='european diary-mail-addr "user@host.name") (diary-mail-entries) # diary-rem.el ends here (fn &optional NDAYS)Fdiary-mode Major mode for editing the diary file. (fn)Vdiff-switches A string or list of strings specifying switches to be passed to diff.Vdiff-command The command to use to run diff.Fdiff Find and display the differences between OLD and NEW files. When called interactively, read NEW, then OLD, using the minibuffer. The default for NEW is the current buffer's file name, and the default for OLD is a backup file for NEW, if one exists. If NO-ASYNC is non-nil, call diff synchronously. When called interactively with a prefix argument, prompt interactively for diff switches. Otherwise, the switches specified in the variable `diff-switches' are passed to the diff command. (fn OLD NEW &optional SWITCHES NO-ASYNC)Fdiff-backup Diff this file with its backup file or vice versa. Uses the latest backup, if there are several numerical backups. If this file is a backup, diff it with its original. The backup file is the first file given to `diff'. With prefix arg, prompt for diff switches. (fn FILE &optional SWITCHES)Fdiff-latest-backup-file Return the latest existing backup of FILE, or nil. (fn FN)Fdiff-buffer-with-file View the differences between BUFFER and its associated file. This requires the external program `diff' to be in your `exec-path'. (fn &optional BUFFER)Fdiff-mode Major mode for viewing/editing context diffs. Supports unified and context diffs as well as (to a lesser extent) normal diffs. When the buffer is read-only, the ESC prefix is not necessary. If you edit the buffer manually, diff-mode will try to update the hunk headers for you on-the-fly. You can also switch between context diff and unified diff with \[diff-context->unified], or vice versa with \[diff-unified->context] and you can also reverse the direction of a diff with \[diff-reverse-direction]. \{diff-mode-map} (fn)Fdiff-minor-mode Toggle Diff minor mode. With a prefix argument ARG, enable Diff minor mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. \{diff-minor-mode-map} (fn &optional ARG)Fdig Query addresses of a DOMAIN using dig, by calling `dig-invoke'. Optional arguments are passed to `dig-invoke'. (fn DOMAIN &optional QUERY-TYPE QUERY-CLASS QUERY-OPTION DIG-OPTION SERVER)Vdired-listing-switches Switches passed to `ls' for Dired. MUST contain the `l' option. May contain all other options that don't contradict `-l'; may contain even `F', `b', `i' and `s'. See also the variable `dired-ls-F-marks-symlinks' concerning the `F' switch. Options that include embedded whitespace must be quoted like this: "--option=value with spaces"; you can use `combine-and-quote-strings' to produce the correct quoting of each option. On systems such as MS-DOS and MS-Windows, which use `ls' emulation in Lisp, some of the `ls' switches are not supported; see the doc string of `insert-directory' in `ls-lisp.el' for more details.Vdired-directory The directory name or wildcard spec that this Dired directory lists. Local to each Dired buffer. May be a list, in which case the car is the directory name and the cdr is the list of files to mention. The directory name must be absolute, but need not be fully expanded.Fdired "Edit" directory DIRNAME--delete, rename, print, etc. some files in it. Optional second argument SWITCHES specifies the `ls' options used. (Interactively, use a prefix argument to be able to specify SWITCHES.) If DIRNAME is a string, Dired displays a list of files in DIRNAME (which may also have shell wildcards appended to select certain files). If DIRNAME is a cons, its first element is taken as the directory name and the rest as an explicit list of files to make directory entries for. In this case, SWITCHES are applied to each of the files separately, and therefore switches that control the order of the files in the produced listing have no effect. \<dired-mode-map>You can flag files for deletion with \[dired-flag-file-deletion] and then delete them by typing \[dired-do-flagged-delete]. Type \[describe-mode] after entering Dired for more info. If DIRNAME is already in a Dired buffer, that buffer is used without refresh. (fn DIRNAME &optional SWITCHES)Fdired-other-window "Edit" directory DIRNAME. Like `dired' but selects in another window. (fn DIRNAME &optional SWITCHES)Fdired-other-frame "Edit" directory DIRNAME. Like `dired' but makes a new frame. (fn DIRNAME &optional SWITCHES)Fdired-noselect Like `dired' but returns the Dired buffer as value, does not select it. (fn DIR-OR-LIST &optional SWITCHES)Fdired-mode Mode for "editing" directory listings. In Dired, you are "editing" a list of the files in a directory and (optionally) its subdirectories, in the format of `ls -lR'. Each directory is a page: use \[backward-page] and \[forward-page] to move pagewise. "Editing" means that you can run shell commands on files, visit, compress, load or byte-compile them, change their file attributes and insert subdirectories into the same buffer. You can "mark" files for later commands or "flag" them for deletion, either file by file or all files matching certain criteria. You can move using the usual cursor motion commands.\<dired-mode-map> The buffer is read-only. Digits are prefix arguments. Type \[dired-flag-file-deletion] to flag a file `D' for deletion. Type \[dired-mark] to Mark a file or subdirectory for later commands. Most commands operate on the marked files and use the current file if no files are marked. Use a numeric prefix argument to operate on the next ARG (or previous -ARG if ARG<0) files, or just `1' to operate on the current file only. Prefix arguments override marks. Mark-using commands display a list of failures afterwards. Type \[dired-summary] to see why something went wrong. Type \[dired-unmark] to Unmark a file or all files of an inserted subdirectory. Type \[dired-unmark-backward] to back up one line and unmark or unflag. Type \[dired-do-flagged-delete] to delete (eXpunge) the files flagged `D'. Type \[dired-find-file] to Find the current line's file (or dired it in another buffer, if it is a directory). Type \[dired-find-file-other-window] to find file or Dired directory in Other window. Type \[dired-maybe-insert-subdir] to Insert a subdirectory in this buffer. Type \[dired-do-rename] to Rename a file or move the marked files to another directory. Type \[dired-do-copy] to Copy files. Type \[dired-sort-toggle-or-edit] to toggle Sorting by name/date or change the `ls' switches. Type \[revert-buffer] to read all currently expanded directories aGain. This retains all marks and hides subdirs again that were hidden before. Use `SPC' and `DEL' to move down and up by lines. If Dired ever gets confused, you can either type \[revert-buffer] to read the directories again, type \[dired-do-redisplay] to relist the file at point or the marked files or a subdirectory, or type \[dired-build-subdir-alist] to parse the buffer again for the directory tree. Customization variables (rename this buffer and type \[describe-variable] on each line for more info): `dired-listing-switches' `dired-trivial-filenames' `dired-marker-char' `dired-del-marker' `dired-keep-marker-rename' `dired-keep-marker-copy' `dired-keep-marker-hardlink' `dired-keep-marker-symlink' Hooks (use \[describe-variable] to see their documentation): `dired-before-readin-hook' `dired-after-readin-hook' `dired-mode-hook' `dired-load-hook' Keybindings: \{dired-mode-map} (fn &optional DIRNAME SWITCHES)Fdirtrack-mode Toggle directory tracking in shell buffers (Dirtrack mode). With a prefix argument ARG, enable Dirtrack mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. This method requires that your shell prompt contain the current working directory at all times, and that you set the variable `dirtrack-list' to match the prompt. This is an alternative to `shell-dirtrack-mode', which works by tracking `cd' and similar commands which change the shell working directory. (fn &optional ARG)Fdirtrack Determine the current directory from the process output for a prompt. This filter function is used by `dirtrack-mode'. It looks for the prompt specified by `dirtrack-list', and calls `shell-process-cd' if the directory seems to have changed away from `default-directory'. (fn INPUT)Fdisassemble Print disassembled code for OBJECT in (optional) BUFFER. OBJECT can be a symbol defined as a function, or a function itself (a lambda expression or a compiled-function object). If OBJECT is not already compiled, we compile it, but do not redefine OBJECT if it is a symbol. (fn OBJECT &optional BUFFER INDENT INTERACTIVE-P)Fmake-display-table Return a new, empty display table. (fn)Fdisplay-table-slot Return the value of the extra slot in DISPLAY-TABLE named SLOT. SLOT may be a number from 0 to 5 inclusive, or a slot name (symbol). Valid symbols are `truncation', `wrap', `escape', `control', `selective-display', and `vertical-border'. (fn DISPLAY-TABLE SLOT)Fset-display-table-slot Set the value of the extra slot in DISPLAY-TABLE named SLOT to VALUE. SLOT may be a number from 0 to 5 inclusive, or a name (symbol). Valid symbols are `truncation', `wrap', `escape', `control', `selective-display', and `vertical-border'. (fn DISPLAY-TABLE SLOT VALUE)Fdescribe-display-table Describe the display table DT in a help buffer. (fn DT)Fdescribe-current-display-table Describe the display table in use in the selected window and buffer. (fn)Fstandard-display-8bit Display characters representing raw bytes in the range L to H literally. On a terminal display, each character in the range is displayed by sending the corresponding byte directly to the terminal. On a graphic display, each character in the range is displayed using the default font by a glyph whose code is the corresponding byte. Note that ASCII printable characters (SPC to TILDA) are displayed in the default way after this call. (fn L H)Fstandard-display-default Display characters in the range L to H using the default notation. (fn L H)Fstandard-display-ascii Display character C using printable string S. (fn C S)Fstandard-display-g1 Display character C as character SC in the g1 character set. This function assumes that your terminal uses the SO/SI characters; it is meaningless for an X frame. (fn C SC)Fstandard-display-graphic Display character C as character GC in graphics character set. This function assumes VT100-compatible escapes; it is meaningless for an X frame. (fn C GC)Fstandard-display-underline Display character C as character UC plus underlining. (fn C UC)Fcreate-glyph Allocate a glyph code to display by sending STRING to the terminal. (fn STRING)Fmake-glyph-code Return a glyph code representing char CHAR with face FACE. (fn CHAR &optional FACE)Fglyph-char Return the character of glyph code GLYPH. (fn GLYPH)Fglyph-face Return the face of glyph code GLYPH, or nil if glyph has default face. (fn GLYPH)Fstandard-display-european Semi-obsolete way to toggle display of ISO 8859 European characters. This function is semi-obsolete; you probably don't need it, or else you probably should use `set-language-environment' or `set-locale-environment'. This function enables European character display if ARG is positive, disables it if negative. Otherwise, it toggles European character display. When this mode is enabled, characters in the range of 160 to 255 display not as octal escapes, but as accented characters. Codes 146 and 160 display as apostrophe and space, even though they are not the ASCII codes for apostrophe and space. Enabling European character display with this command noninteractively from Lisp code also selects Latin-1 as the language environment. This provides increased compatibility for users who call this function in `.emacs'. (fn ARG)Fdisplay-line-numbers-mode Toggle display of line numbers in the buffer. This uses `display-line-numbers' internally. To change the type of line numbers displayed by default, customize `display-line-numbers-type'. To change the type while the mode is on, set `display-line-numbers' directly. (fn &optional ARG)Vglobal-display-line-numbers-mode Non-nil if Global Display-Line-Numbers mode is enabled. See the `global-display-line-numbers-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-display-line-numbers-mode'.Fglobal-display-line-numbers-mode Toggle Display-Line-Numbers mode in all buffers. With prefix ARG, enable Global Display-Line-Numbers mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Display-Line-Numbers mode is enabled in all buffers where `display-line-numbers--turn-on' would do it. See `display-line-numbers-mode' for more information on Display-Line-Numbers mode. (fn &optional ARG)Fdissociated-press Dissociate the text of the current buffer. Output goes in buffer named *Dissociation*, which is redisplayed each time text is added to it. Every so often the user must say whether to continue. If ARG is positive, require ARG chars of continuity. If ARG is negative, require -ARG words of continuity. Default is 2. (fn &optional ARG)Vdnd-protocol-alist The functions to call for different protocols when a drop is made. This variable is used by `dnd-handle-one-url' and `dnd-handle-file-name'. The list contains of (REGEXP . FUNCTION) pairs. The functions shall take two arguments, URL, which is the URL dropped and ACTION which is the action to be performed for the drop (move, copy, link, private or ask). If no match is found here, and the value of `browse-url-browser-function' is a pair of (REGEXP . FUNCTION), those regexps are tried for a match. If no match is found, the URL is inserted as text by calling `dnd-insert-text'. The function shall return the action done (move, copy, link or private) if some action was made, or nil if the URL is ignored.Fdns-mode Major mode for viewing and editing DNS master files. This mode is inherited from text mode. It add syntax highlighting, and some commands for handling DNS master files. Its keymap inherits from `text-mode' and it has the same variables for customizing indentation. It has its own abbrev table and its own syntax table. Turning on DNS mode runs `dns-mode-hook'. (fn)Fdns-mode-soa-increment-serial Locate SOA record and increment the serial field. (fn)Fdoc-view-mode-p Return non-nil if document type TYPE is available for `doc-view'. Document types are symbols like `dvi', `ps', `pdf', or `odf' (any OpenDocument format). (fn TYPE)Fdoc-view-mode Major mode in DocView buffers. DocView Mode is an Emacs document viewer. It displays PDF, PS and DVI files (as PNG images) in Emacs buffers. You can use \<doc-view-mode-map>\[doc-view-toggle-display] to toggle between displaying the document or editing it as text. \{doc-view-mode-map} (fn)Fdoc-view-mode-maybe Switch to `doc-view-mode' if possible. If the required external tools are not available, then fallback to the next best mode. (fn)Fdoc-view-minor-mode Toggle displaying buffer via Doc View (Doc View minor mode). With a prefix argument ARG, enable Doc View minor mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. See the command `doc-view-mode' for more information on this mode. (fn &optional ARG)Fdoc-view-bookmark-jump (fn BMK)Fdoctor Switch to *doctor* buffer and start giving psychotherapy. (fn)Fdouble-mode Toggle special insertion on double keypresses (Double mode). With a prefix argument ARG, enable Double mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Double mode is enabled, some keys will insert different strings when pressed twice. See `double-map' for details. (fn &optional ARG)Fdunnet Switch to *dungeon* buffer and start game. (fn)Fdefine-minor-mode Define a new minor mode MODE. This defines the toggle command MODE and (by default) a control variable MODE (you can override this with the :variable keyword, see below). DOC is the documentation for the mode toggle command. The defined mode command takes one optional (prefix) argument. Interactively with no prefix argument, it toggles the mode. A prefix argument enables the mode if the argument is positive, and disables it otherwise. When called from Lisp, the mode command toggles the mode if the argument is `toggle', disables the mode if the argument is a non-positive integer, and enables the mode otherwise (including if the argument is omitted or nil or a positive integer). If DOC is nil, give the mode command a basic doc-string documenting what its argument does. Optional INIT-VALUE is the initial value of the mode's variable. Optional LIGHTER is displayed in the mode line when the mode is on. Optional KEYMAP is the default keymap bound to the mode keymap. If non-nil, it should be a variable name (whose value is a keymap), or an expression that returns either a keymap or a list of (KEY . BINDING) pairs where KEY and BINDING are suitable for `define-key'. If you supply a KEYMAP argument that is not a symbol, this macro defines the variable MODE-map and gives it the value that KEYMAP specifies. BODY contains code to execute each time the mode is enabled or disabled. It is executed after toggling the mode, and before running MODE-hook. Before the actual body code, you can write keyword arguments, i.e. alternating keywords and values. If you provide BODY, then you must provide (even if just nil) INIT-VALUE, LIGHTER, and KEYMAP, or provide at least one keyword argument, or both; otherwise, BODY would be misinterpreted as the first omitted argument. The following special keywords are supported (other keywords are passed to `defcustom' if the minor mode is global): :group GROUP Custom group name to use in all generated `defcustom' forms. Defaults to MODE without the possible trailing "-mode". Don't use this default group name unless you have written a `defgroup' to define that group properly. :global GLOBAL If non-nil specifies that the minor mode is not meant to be buffer-local, so don't make the variable MODE buffer-local. By default, the mode is buffer-local. :init-value VAL Same as the INIT-VALUE argument. Not used if you also specify :variable. :lighter SPEC Same as the LIGHTER argument. :keymap MAP Same as the KEYMAP argument. :require SYM Same as in `defcustom'. :variable PLACE The location to use instead of the variable MODE to store the state of the mode. This can be simply a different named variable, or a generalized variable. PLACE can also be of the form (GET . SET), where GET is an expression that returns the current state, and SET is a function that takes one argument, the new state, and sets it. If you specify a :variable, this function does not define a MODE variable (nor any of the terms used in :variable). :after-hook A single lisp form which is evaluated after the mode hooks have been run. It should not be quoted. For example, you could write (define-minor-mode foo-mode "If enabled, foo on you!" :lighter " Foo" :require \='foo :global t :group \='hassle :version "27.5" ...BODY CODE...) (fn MODE DOC &optional INIT-VALUE LIGHTER KEYMAP &rest BODY)Fdefine-globalized-minor-mode Make a global mode GLOBAL-MODE corresponding to buffer-local minor MODE. TURN-ON is a function that will be called with no args in every buffer and that should try to turn MODE on if applicable for that buffer. KEYS is a list of CL-style keyword arguments. As the minor mode defined by this function is always global, any :global keyword is ignored. Other keywords have the same meaning as in `define-minor-mode', which see. In particular, :group specifies the custom group. The most useful keywords are those that are passed on to the `defcustom'. It normally makes no sense to pass the :lighter or :keymap keywords to `define-globalized-minor-mode', since these are usually passed to the buffer-local version of the minor mode. If MODE's set-up depends on the major mode in effect when it was enabled, then disabling and reenabling MODE should make MODE work correctly with the current major mode. This is important to prevent problems with derived modes, that is, major modes that call another major mode in their body. When a major mode is initialized, MODE is actually turned on just after running the major mode's hook. However, MODE is not turned on if the hook has explicitly disabled it. (fn GLOBAL-MODE MODE TURN-ON &rest KEYS)Feasy-mmode-define-keymap Return a keymap built from bindings BS. BS must be a list of (KEY . BINDING) where KEY and BINDINGS are suitable for `define-key'. Optional NAME is passed to `make-sparse-keymap'. Optional map M can be used to modify an existing map. ARGS is a list of additional keyword arguments. Valid keywords and arguments are: :name Name of the keymap; overrides NAME argument. :dense Non-nil for a dense keymap. :inherit Parent keymap. :group Ignored. :suppress Non-nil to call `suppress-keymap' on keymap, `nodigits' to suppress digits as prefix arguments. (fn BS &optional NAME M ARGS)Feasy-mmode-defmap Define a constant M whose value is the result of `easy-mmode-define-keymap'. The M, BS, and ARGS arguments are as per that function. DOC is the constant's documentation. (fn M BS DOC &rest ARGS)Feasy-mmode-defsyntax Define variable ST as a syntax-table. CSS contains a list of syntax specifications of the form (CHAR . SYNTAX). (fn ST CSS DOC &rest ARGS)Feasy-menu-define Define a pop-up menu and/or menu bar menu specified by MENU. If SYMBOL is non-nil, define SYMBOL as a function to pop up the submenu defined by MENU, with DOC as its doc string. MAPS, if non-nil, should be a keymap or a list of keymaps; add the submenu defined by MENU to the keymap or each of the keymaps, as a top-level menu bar item. The first element of MENU must be a string. It is the menu bar item name. It may be followed by the following keyword argument pairs: :filter FUNCTION FUNCTION must be a function which, if called with one argument---the list of the other menu items---returns the items to actually display. :visible INCLUDE INCLUDE is an expression. The menu is visible if the expression evaluates to a non-nil value. `:included' is an alias for `:visible'. :active ENABLE ENABLE is an expression. The menu is enabled for selection if the expression evaluates to a non-nil value. `:enable' is an alias for `:active'. The rest of the elements in MENU are menu items. A menu item can be a vector of three elements: [NAME CALLBACK ENABLE] NAME is a string--the menu item name. CALLBACK is a command to run when the item is chosen, or an expression to evaluate when the item is chosen. ENABLE is an expression; the item is enabled for selection if the expression evaluates to a non-nil value. Alternatively, a menu item may have the form: [ NAME CALLBACK [ KEYWORD ARG ]... ] where NAME and CALLBACK have the same meanings as above, and each optional KEYWORD and ARG pair should be one of the following: :keys KEYS KEYS is a string; a keyboard equivalent to the menu item. This is normally not needed because keyboard equivalents are usually computed automatically. KEYS is expanded with `substitute-command-keys' before it is used. :key-sequence KEYS KEYS is a hint for speeding up Emacs's first display of the menu. It should be nil if you know that the menu item has no keyboard equivalent; otherwise it should be a string or vector specifying a keyboard equivalent for the menu item. :active ENABLE ENABLE is an expression; the item is enabled for selection whenever this expression's value is non-nil. `:enable' is an alias for `:active'. :visible INCLUDE INCLUDE is an expression; this item is only visible if this expression has a non-nil value. `:included' is an alias for `:visible'. :label FORM FORM is an expression that is dynamically evaluated and whose value serves as the menu item's label (the default is NAME). :suffix FORM FORM is an expression that is dynamically evaluated and whose value is concatenated with the menu entry's label. :style STYLE STYLE is a symbol describing the type of menu item; it should be `toggle' (a checkbox), or `radio' (a radio button), or any other value (meaning an ordinary menu item). :selected SELECTED SELECTED is an expression; the checkbox or radio button is selected whenever the expression's value is non-nil. :help HELP HELP is a string, the help to display for the menu item. Alternatively, a menu item can be a string. Then that string appears in the menu as unselectable text. A string consisting solely of dashes is displayed as a menu separator. Alternatively, a menu item can be a list with the same format as MENU. This is a submenu. (fn SYMBOL MAPS DOC MENU)Feasy-menu-do-define (fn SYMBOL MAPS DOC MENU)Feasy-menu-create-menu Create a menu called MENU-NAME with items described in MENU-ITEMS. MENU-NAME is a string, the name of the menu. MENU-ITEMS is a list of items possibly preceded by keyword pairs as described in `easy-menu-define'. (fn MENU-NAME MENU-ITEMS)Feasy-menu-change Change menu found at PATH as item NAME to contain ITEMS. PATH is a list of strings for locating the menu that should contain a submenu named NAME. ITEMS is a list of menu items, as in `easy-menu-define'. These items entirely replace the previous items in that submenu. If MAP is specified, it should normally be a keymap; nil stands for the local menu-bar keymap. It can also be a symbol, which has earlier been used as the first argument in a call to `easy-menu-define', or the value of such a symbol. If the menu located by PATH has no submenu named NAME, add one. If the optional argument BEFORE is present, add it just before the submenu named BEFORE, otherwise add it at the end of the menu. To implement dynamic menus, either call this from `menu-bar-update-hook' or use a menu filter. (fn PATH NAME ITEMS &optional BEFORE MAP)Febnf-customize Customization for ebnf group. (fn)Febnf-print-directory Generate and print a PostScript syntactic chart image of DIRECTORY. If DIRECTORY is nil, it's used `default-directory'. The files in DIRECTORY that matches `ebnf-file-suffix-regexp' (which see) are processed. See also `ebnf-print-buffer'. (fn &optional DIRECTORY)Febnf-print-file Generate and print a PostScript syntactic chart image of the file FILE. If optional arg DO-NOT-KILL-BUFFER-WHEN-DONE is non-nil, the buffer isn't killed after process termination. See also `ebnf-print-buffer'. (fn FILE &optional DO-NOT-KILL-BUFFER-WHEN-DONE)Febnf-print-buffer Generate and print a PostScript syntactic chart image of the buffer. When called with a numeric prefix argument (C-u), prompts the user for the name of a file to save the PostScript image in, instead of sending it to the printer. More specifically, the FILENAME argument is treated as follows: if it is nil, send the image to the printer. If FILENAME is a string, save the PostScript image in a file with that name. If FILENAME is a number, prompt the user for the name of the file to save in. (fn &optional FILENAME)Febnf-print-region Generate and print a PostScript syntactic chart image of the region. Like `ebnf-print-buffer', but prints just the current region. (fn FROM TO &optional FILENAME)Febnf-spool-directory Generate and spool a PostScript syntactic chart image of DIRECTORY. If DIRECTORY is nil, it's used `default-directory'. The files in DIRECTORY that matches `ebnf-file-suffix-regexp' (which see) are processed. See also `ebnf-spool-buffer'. (fn &optional DIRECTORY)Febnf-spool-file Generate and spool a PostScript syntactic chart image of the file FILE. If optional arg DO-NOT-KILL-BUFFER-WHEN-DONE is non-nil, the buffer isn't killed after process termination. See also `ebnf-spool-buffer'. (fn FILE &optional DO-NOT-KILL-BUFFER-WHEN-DONE)Febnf-spool-buffer Generate and spool a PostScript syntactic chart image of the buffer. Like `ebnf-print-buffer' except that the PostScript image is saved in a local buffer to be sent to the printer later. Use the command `ebnf-despool' to send the spooled images to the printer. (fn)Febnf-spool-region Generate a PostScript syntactic chart image of the region and spool locally. Like `ebnf-spool-buffer', but spools just the current region. Use the command `ebnf-despool' to send the spooled images to the printer. (fn FROM TO)Febnf-eps-directory Generate EPS files from EBNF files in DIRECTORY. If DIRECTORY is nil, it's used `default-directory'. The files in DIRECTORY that matches `ebnf-file-suffix-regexp' (which see) are processed. See also `ebnf-eps-buffer'. (fn &optional DIRECTORY)Febnf-eps-file Generate an EPS file from EBNF file FILE. If optional arg DO-NOT-KILL-BUFFER-WHEN-DONE is non-nil, the buffer isn't killed after EPS generation. See also `ebnf-eps-buffer'. (fn FILE &optional DO-NOT-KILL-BUFFER-WHEN-DONE)Febnf-eps-buffer Generate a PostScript syntactic chart image of the buffer in an EPS file. Generate an EPS file for each production in the buffer. The EPS file name has the following form: <PREFIX><PRODUCTION>.eps <PREFIX> is given by variable `ebnf-eps-prefix'. The default value is "ebnf--". <PRODUCTION> is the production name. Some characters in the production file name are replaced to produce a valid file name. For example, the production name "A/B + C" is modified to produce "A_B_+_C", and the EPS file name used in this case will be "ebnf--A_B_+_C.eps". WARNING: This function does *NOT* ask any confirmation to override existing files. (fn)Febnf-eps-region Generate a PostScript syntactic chart image of the region in an EPS file. Generate an EPS file for each production in the region. The EPS file name has the following form: <PREFIX><PRODUCTION>.eps <PREFIX> is given by variable `ebnf-eps-prefix'. The default value is "ebnf--". <PRODUCTION> is the production name. Some characters in the production file name are replaced to produce a valid file name. For example, the production name "A/B + C" is modified to produce "A_B_+_C", and the EPS file name used in this case will be "ebnf--A_B_+_C.eps". WARNING: This function does *NOT* ask any confirmation to override existing files. (fn FROM TO)Febnf-syntax-directory Do a syntactic analysis of the files in DIRECTORY. If DIRECTORY is nil, use `default-directory'. Only the files in DIRECTORY that match `ebnf-file-suffix-regexp' (which see) are processed. See also `ebnf-syntax-buffer'. (fn &optional DIRECTORY)Febnf-syntax-file Do a syntactic analysis of the named FILE. If optional arg DO-NOT-KILL-BUFFER-WHEN-DONE is non-nil, the buffer isn't killed after syntax checking. See also `ebnf-syntax-buffer'. (fn FILE &optional DO-NOT-KILL-BUFFER-WHEN-DONE)Febnf-syntax-buffer Do a syntactic analysis of the current buffer. (fn)Febnf-syntax-region Do a syntactic analysis of a region. (fn FROM TO)Febnf-setup Return the current ebnf2ps setup. (fn)Febnf-find-style Return style definition if NAME is already defined; otherwise, return nil. See `ebnf-style-database' documentation. (fn NAME)Febnf-insert-style Insert a new style NAME with inheritance INHERITS and values VALUES. See `ebnf-style-database' documentation. (fn NAME INHERITS &rest VALUES)Febnf-delete-style Delete style NAME. See `ebnf-style-database' documentation. (fn NAME)Febnf-merge-style Merge values of style NAME with style VALUES. See `ebnf-style-database' documentation. (fn NAME &rest VALUES)Febnf-apply-style Set STYLE as the current style. Returns the old style symbol. See `ebnf-style-database' documentation. (fn STYLE)Febnf-reset-style Reset current style. Returns the old style symbol. See `ebnf-style-database' documentation. (fn &optional STYLE)Febnf-push-style Push the current style onto a stack and set STYLE as the current style. Returns the old style symbol. See also `ebnf-pop-style'. See `ebnf-style-database' documentation. (fn &optional STYLE)Febnf-pop-style Pop a style from the stack of pushed styles and set it as the current style. Returns the old style symbol. See also `ebnf-push-style'. See `ebnf-style-database' documentation. (fn)Febrowse-tree-mode Major mode for Ebrowse class tree buffers. Each line corresponds to a class in a class tree. Letters do not insert themselves, they are commands. File operations in the tree buffer work on class tree data structures. E.g.\[save-buffer] writes the tree to the file it was loaded from. Tree mode key bindings: \{ebrowse-tree-mode-map} (fn)Febrowse-electric-choose-tree Return a buffer containing a tree or nil if no tree found or canceled. (fn)Febrowse-member-mode Major mode for Ebrowse member buffers. (fn)Febrowse-tags-view-declaration View declaration of member at point. (fn)Febrowse-tags-find-declaration Find declaration of member at point. (fn)Febrowse-tags-view-definition View definition of member at point. (fn)Febrowse-tags-find-definition Find definition of member at point. (fn)Febrowse-tags-find-declaration-other-window Find declaration of member at point in other window. (fn)Febrowse-tags-view-definition-other-window View definition of member at point in other window. (fn)Febrowse-tags-find-definition-other-window Find definition of member at point in other window. (fn)Febrowse-tags-find-declaration-other-frame Find definition of member at point in other frame. (fn)Febrowse-tags-view-definition-other-frame View definition of member at point in other frame. (fn)Febrowse-tags-find-definition-other-frame Find definition of member at point in other frame. (fn)Febrowse-tags-complete-symbol Perform completion on the C++ symbol preceding point. A second call of this function without changing point inserts the next match. A call with prefix PREFIX reads the symbol to insert from the minibuffer with completion. (fn PREFIX)Febrowse-tags-loop-continue Repeat last operation on files in tree. FIRST-TIME non-nil means this is not a repetition, but the first time. TREE-BUFFER if indirectly specifies which files to loop over. (fn &optional FIRST-TIME TREE-BUFFER)Febrowse-tags-search Search for REGEXP in all files in a tree. If marked classes exist, process marked classes, only. If regular expression is nil, repeat last search. (fn REGEXP)Febrowse-tags-query-replace Query replace FROM with TO in all files of a class tree. With prefix arg, process files of marked classes only. (fn FROM TO)Febrowse-tags-search-member-use Search for call sites of a member. If FIX-NAME is specified, search uses of that member. Otherwise, read a member name from the minibuffer. Searches in all files mentioned in a class tree for something that looks like a function call to the member. (fn &optional FIX-NAME)Febrowse-back-in-position-stack Move backward in the position stack. Prefix arg ARG says how much. (fn ARG)Febrowse-forward-in-position-stack Move forward in the position stack. Prefix arg ARG says how much. (fn ARG)Febrowse-electric-position-menu List positions in the position stack in an electric buffer. (fn)Febrowse-save-tree Save current tree in same file it was loaded from. (fn)Febrowse-save-tree-as Write the current tree data structure to a file. Read the file name from the minibuffer if interactive. Otherwise, FILE-NAME specifies the file to save the tree in. (fn &optional FILE-NAME)Febrowse-statistics Display statistics for a class tree. (fn)Felectric-buffer-list Pop up the Buffer Menu in an "electric" window. If you type SPC or RET (`Electric-buffer-menu-select'), that selects the buffer at point and quits the "electric" window. Otherwise, you can move around in the Buffer Menu, marking buffers to be selected, saved or deleted; these other commands are much like those of `Buffer-menu-mode'. Run hooks in `electric-buffer-menu-mode-hook' on entry. \<electric-buffer-menu-mode-map> \[keyboard-quit] or \[Electric-buffer-menu-quit] -- exit buffer menu, returning to previous window and buffer configuration. If the very first character typed is a space, it also has this effect. \[Electric-buffer-menu-select] -- select buffer of line point is on. Also show buffers marked with m in other windows, deletes buffers marked with "D", and saves those marked with "S". \[Buffer-menu-mark] -- mark buffer to be displayed. \[Buffer-menu-not-modified] -- clear modified-flag on that buffer. \[Buffer-menu-save] -- mark that buffer to be saved. \[Buffer-menu-delete] or \[Buffer-menu-delete-backwards] -- mark that buffer to be deleted. \[Buffer-menu-unmark] -- remove all kinds of marks from current line. \[Buffer-menu-unmark-all] -- remove all kinds of marks from all lines. \[Electric-buffer-menu-mode-view-buffer] -- view buffer, returning when done. \[Buffer-menu-backup-unmark] -- back up a line and remove marks. (fn ARG)FElectric-command-history-redo-expression Edit current history line in minibuffer and execute result. With prefix arg NOCONFIRM, execute current line as-is without editing. (fn &optional NOCONFIRM)Fecomplete-setup Read the .ecompleterc file. (fn)Vglobal-ede-mode Non-nil if Global Ede mode is enabled. See the `global-ede-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-ede-mode'.Fglobal-ede-mode Toggle global EDE (Emacs Development Environment) mode. With a prefix argument ARG, enable global EDE mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. This global minor mode enables `ede-minor-mode' in all buffers in an EDE controlled project. (fn &optional ARG)Vedebug-all-defs If non-nil, evaluating defining forms instruments for Edebug. This applies to `eval-defun', `eval-region', `eval-buffer', and `eval-current-buffer'. `eval-region' is also called by `eval-last-sexp', and `eval-print-last-sexp'. You can use the command `edebug-all-defs' to toggle the value of this variable. You may wish to make it local to each buffer with (make-local-variable \='edebug-all-defs) in your `emacs-lisp-mode-hook'.Vedebug-all-forms Non-nil means evaluation of all forms will instrument for Edebug. This doesn't apply to loading or evaluations in the minibuffer. Use the command `edebug-all-forms' to toggle the value of this option.Fedebug-basic-spec Return t if SPEC uses only extant spec symbols. An extant spec symbol is a symbol that is not a function and has a `edebug-form-spec' property. (fn SPEC)Fedebug-eval-top-level-form Evaluate the top level form point is in, stepping through with Edebug. This is like `eval-defun' except that it steps the code for Edebug before evaluating it. It displays the value in the echo area using `eval-expression' (which see). If you do this on a function definition such as a defun or defmacro, it defines the function and instruments its definition for Edebug, so it will do Edebug stepping when called later. It displays `Edebug: FUNCTION' in the echo area to indicate that FUNCTION is now instrumented for Edebug. If the current defun is actually a call to `defvar' or `defcustom', evaluating it this way resets the variable using its initial value expression even if the variable already has some other value. (Normally `defvar' and `defcustom' do not alter the value if there already is one.) (fn)Fedebug-all-defs Toggle edebugging of all definitions. (fn)Fedebug-all-forms Toggle edebugging of all forms. (fn)Fediff-files Run Ediff on a pair of files, FILE-A and FILE-B. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. (fn FILE-A FILE-B &optional STARTUP-HOOKS)Fediff-files3 Run Ediff on three files, FILE-A, FILE-B, and FILE-C. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. (fn FILE-A FILE-B FILE-C &optional STARTUP-HOOKS)Fediff-current-file Start ediff between current buffer and its file on disk. This command can be used instead of `revert-buffer'. If there is nothing to revert then this command fails. (fn)Fediff-backup Run Ediff on FILE and its backup file. Uses the latest backup, if there are several numerical backups. If this file is a backup, `ediff' it with its original. (fn FILE)Fediff-buffers Run Ediff on a pair of buffers, BUFFER-A and BUFFER-B. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. JOB-NAME is a symbol describing the Ediff job type; it defaults to `ediff-buffers', but can also be one of `ediff-merge-files-with-ancestor', `ediff-last-dir-ancestor', `ediff-last-dir-C', `ediff-buffers3', `ediff-merge-buffers', or `ediff-merge-buffers-with-ancestor'. (fn BUFFER-A BUFFER-B &optional STARTUP-HOOKS JOB-NAME)Fediff-buffers3 Run Ediff on three buffers, BUFFER-A, BUFFER-B, and BUFFER-C. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. JOB-NAME is a symbol describing the Ediff job type; it defaults to `ediff-buffers3', but can also be one of `ediff-merge-files-with-ancestor', `ediff-last-dir-ancestor', `ediff-last-dir-C', `ediff-buffers', `ediff-merge-buffers', or `ediff-merge-buffers-with-ancestor'. (fn BUFFER-A BUFFER-B BUFFER-C &optional STARTUP-HOOKS JOB-NAME)Fediff-directories Run Ediff on a pair of directories, DIR1 and DIR2, comparing files that have the same name in both. The third argument, REGEXP, is nil or a regular expression; only file names that match the regexp are considered. (fn DIR1 DIR2 REGEXP)Fediff-directory-revisions Run Ediff on a directory, DIR1, comparing its files with their revisions. The second argument, REGEXP, is a regular expression that filters the file names. Only the files that are under revision control are taken into account. (fn DIR1 REGEXP)Fediff-directories3 Run Ediff on three directories, DIR1, DIR2, and DIR3, comparing files that have the same name in all three. The last argument, REGEXP, is nil or a regular expression; only file names that match the regexp are considered. (fn DIR1 DIR2 DIR3 REGEXP)Fediff-merge-directories Run Ediff on a pair of directories, DIR1 and DIR2, merging files that have the same name in both. The third argument, REGEXP, is nil or a regular expression; only file names that match the regexp are considered. MERGE-AUTOSTORE-DIR is the directory in which to store merged files. (fn DIR1 DIR2 REGEXP &optional MERGE-AUTOSTORE-DIR)Fediff-merge-directories-with-ancestor Merge files in directories DIR1 and DIR2 using files in ANCESTOR-DIR as ancestors. Ediff merges files that have identical names in DIR1, DIR2. If a pair of files in DIR1 and DIR2 doesn't have an ancestor in ANCESTOR-DIR, Ediff will merge without ancestor. The fourth argument, REGEXP, is nil or a regular expression; only file names that match the regexp are considered. MERGE-AUTOSTORE-DIR is the directory in which to store merged files. (fn DIR1 DIR2 ANCESTOR-DIR REGEXP &optional MERGE-AUTOSTORE-DIR)Fediff-merge-directory-revisions Run Ediff on a directory, DIR1, merging its files with their revisions. The second argument, REGEXP, is a regular expression that filters the file names. Only the files that are under revision control are taken into account. MERGE-AUTOSTORE-DIR is the directory in which to store merged files. (fn DIR1 REGEXP &optional MERGE-AUTOSTORE-DIR)Fediff-merge-directory-revisions-with-ancestor Run Ediff on a directory, DIR1, merging its files with their revisions and ancestors. The second argument, REGEXP, is a regular expression that filters the file names. Only the files that are under revision control are taken into account. MERGE-AUTOSTORE-DIR is the directory in which to store merged files. (fn DIR1 REGEXP &optional MERGE-AUTOSTORE-DIR)Fediff-windows-wordwise Compare WIND-A and WIND-B, which are selected by clicking, wordwise. This compares the portions of text visible in each of the two windows. With prefix argument, DUMB-MODE, or on a non-windowing display, works as follows: If WIND-A is nil, use selected window. If WIND-B is nil, use window next to WIND-A. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. (fn DUMB-MODE &optional WIND-A WIND-B STARTUP-HOOKS)Fediff-windows-linewise Compare WIND-A and WIND-B, which are selected by clicking, linewise. This compares the portions of text visible in each of the two windows. With prefix argument, DUMB-MODE, or on a non-windowing display, works as follows: If WIND-A is nil, use selected window. If WIND-B is nil, use window next to WIND-A. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. (fn DUMB-MODE &optional WIND-A WIND-B STARTUP-HOOKS)Fediff-regions-wordwise Run Ediff on a pair of regions in specified buffers. BUFFER-A and BUFFER-B are the buffers to be compared. Regions (i.e., point and mark) can be set in advance or marked interactively. This function might be slow for large regions. If you find it slow, use `ediff-regions-linewise' instead. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. (fn BUFFER-A BUFFER-B &optional STARTUP-HOOKS)Fediff-regions-linewise Run Ediff on a pair of regions in specified buffers. BUFFER-A and BUFFER-B are the buffers to be compared. Regions (i.e., point and mark) can be set in advance or marked interactively. Each region is enlarged to contain full lines. This function is effective for large regions, over 100-200 lines. For small regions, use `ediff-regions-wordwise'. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. (fn BUFFER-A BUFFER-B &optional STARTUP-HOOKS)Fediff-merge-files Merge two files without ancestor. FILE-A and FILE-B are the names of the files to be merged. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. MERGE-BUFFER-FILE is the name of the file to be associated with the merge buffer.. (fn FILE-A FILE-B &optional STARTUP-HOOKS MERGE-BUFFER-FILE)Fediff-merge-files-with-ancestor Merge two files with ancestor. FILE-A and FILE-B are the names of the files to be merged, and FILE-ANCESTOR is the name of the ancestor file. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. MERGE-BUFFER-FILE is the name of the file to be associated with the merge buffer. (fn FILE-A FILE-B FILE-ANCESTOR &optional STARTUP-HOOKS MERGE-BUFFER-FILE)Fediff-merge-buffers Merge buffers without ancestor. BUFFER-A and BUFFER-B are the buffers to be merged. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. JOB-NAME is a symbol describing the Ediff job type; it defaults to `ediff-merge-buffers', but can also be one of `ediff-merge-files-with-ancestor', `ediff-last-dir-ancestor', `ediff-last-dir-C', `ediff-buffers', `ediff-buffers3', or `ediff-merge-buffers-with-ancestor'. MERGE-BUFFER-FILE is the name of the file to be associated with the merge buffer. (fn BUFFER-A BUFFER-B &optional STARTUP-HOOKS JOB-NAME MERGE-BUFFER-FILE)Fediff-merge-buffers-with-ancestor Merge buffers with ancestor. BUFFER-A and BUFFER-B are the buffers to be merged, and BUFFER-ANCESTOR is their ancestor. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. JOB-NAME is a symbol describing the Ediff job type; it defaults to `ediff-merge-buffers-with-ancestor', but can also be one of `ediff-merge-files-with-ancestor', `ediff-last-dir-ancestor', `ediff-last-dir-C', `ediff-buffers', `ediff-buffers3', or `ediff-merge-buffers'. MERGE-BUFFER-FILE is the name of the file to be associated with the merge buffer. (fn BUFFER-A BUFFER-B BUFFER-ANCESTOR &optional STARTUP-HOOKS JOB-NAME MERGE-BUFFER-FILE)Fediff-merge-revisions Run Ediff by merging two revisions of a file. The file is the optional FILE argument or the file visited by the current buffer. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. MERGE-BUFFER-FILE is the name of the file to be associated with the merge buffer. (fn &optional FILE STARTUP-HOOKS MERGE-BUFFER-FILE)Fediff-merge-revisions-with-ancestor Run Ediff by merging two revisions of a file with a common ancestor. The file is the optional FILE argument or the file visited by the current buffer. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. MERGE-BUFFER-FILE is the name of the file to be associated with the merge buffer. (fn &optional FILE STARTUP-HOOKS MERGE-BUFFER-FILE)Fediff-patch-file Query for a file name, and then run Ediff by patching that file. If optional PATCH-BUF is given, use the patch in that buffer and don't ask the user. If prefix argument ARG, then: if even argument, assume that the patch is in a buffer. If odd -- assume it is in a file. (fn &optional ARG PATCH-BUF)Fediff-patch-buffer Run Ediff by patching the buffer specified at prompt. Without the optional prefix ARG, asks if the patch is in some buffer and prompts for the buffer or a file, depending on the answer. With ARG=1, assumes the patch is in a file and prompts for the file. With ARG=2, assumes the patch is in a buffer and prompts for the buffer. PATCH-BUF is an optional argument, which specifies the buffer that contains the patch. If not given, the user is prompted according to the prefix argument. (fn &optional ARG PATCH-BUF)Fediff-revision Run Ediff by comparing versions of a file. The file is an optional FILE argument or the file entered at the prompt. Default: the file visited by the current buffer. Uses `vc.el' or `rcs.el' depending on `ediff-version-control-package'. STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. (fn &optional FILE STARTUP-HOOKS)Fediff-version Return string describing the version of Ediff. When called interactively, displays the version. (fn)Fediff-documentation Display Ediff's manual. With optional NODE, goes to that node. (fn &optional NODE)Fediff-files-command Call `ediff-files' with the next two command line arguments. (fn)Fediff3-files-command Call `ediff3-files' with the next three command line arguments. (fn)Fediff-merge-command Call `ediff-merge-files' with the next two command line arguments. (fn)Fediff-merge-with-ancestor-command Call `ediff-merge-files-with-ancestor' with the next three command line arguments. (fn)Fediff-directories-command Call `ediff-directories' with the next three command line arguments. (fn)Fediff-directories3-command Call `ediff-directories3' with the next four command line arguments. (fn)Fediff-merge-directories-command Call `ediff-merge-directories' with the next three command line arguments. (fn)Fediff-merge-directories-with-ancestor-command Call `ediff-merge-directories-with-ancestor' with the next four command line arguments. (fn)Fediff-customize (fn)Fediff-show-registry Display Ediff's registry. (fn)Fediff-toggle-multiframe Switch from multiframe display to single-frame display and back. To change the default, set the variable `ediff-window-setup-function', which see. (fn)Fediff-toggle-use-toolbar Enable or disable Ediff toolbar. Works only in versions of Emacs that support toolbars. To change the default, set the variable `ediff-use-toolbar-p', which see. (fn)Fedit-kbd-macro Edit a keyboard macro. At the prompt, type any key sequence which is bound to a keyboard macro. Or, type `\[kmacro-end-and-call-macro]' or RET to edit the last keyboard macro, `\[view-lossage]' to edit the last 300 keystrokes as a keyboard macro, or `\[execute-extended-command]' to edit a macro by its command name. With a prefix argument, format the macro in a more concise way. (fn KEYS &optional PREFIX FINISH-HOOK STORE-HOOK)Fedit-last-kbd-macro Edit the most recently defined keyboard macro. (fn &optional PREFIX)Fedit-named-kbd-macro Edit a keyboard macro which has been given a name by `name-last-kbd-macro'. (fn &optional PREFIX)Fread-kbd-macro Read the region as a keyboard macro definition. The region is interpreted as spelled-out keystrokes, e.g., "M-x abc RET". See documentation for `edmacro-mode' for details. Leading/trailing "C-x (" and "C-x )" in the text are allowed and ignored. The resulting macro is installed as the "current" keyboard macro. In Lisp, may also be called with a single STRING argument in which case the result is returned rather than being installed as the current macro. The result will be a string if possible, otherwise an event vector. Second argument NEED-VECTOR means to return an event vector always. (fn START &optional END)Fformat-kbd-macro Return the keyboard macro MACRO as a human-readable string. This string is suitable for passing to `read-kbd-macro'. Second argument VERBOSE means to put one command per line with comments. If VERBOSE is `1', put everything on one line. If VERBOSE is omitted or nil, use a compact 80-column format. (fn &optional MACRO VERBOSE)Fedt-set-scroll-margins Set scroll margins. Argument TOP is the top margin in number of lines or percent of window. Argument BOTTOM is the bottom margin in number of lines or percent of window. (fn TOP BOTTOM)Fedt-emulation-on Turn on EDT Emulation. (fn)Fwith-electric-help Pop up an "electric" help buffer. THUNK is a function of no arguments which is called to initialize the contents of BUFFER. BUFFER defaults to `*Help*'. BUFFER will be erased before THUNK is called unless NOERASE is non-nil. THUNK will be called while BUFFER is current and with `standard-output' bound to the buffer specified by BUFFER. If THUNK returns nil, we display BUFFER starting at the top, and shrink the window to fit. If THUNK returns non-nil, we don't do those things. After THUNK has been called, this function "electrically" pops up a window in which BUFFER is displayed and allows the user to scroll through that buffer in `electric-help-mode'. The window's height will be at least MINHEIGHT if this value is non-nil. If THUNK returns nil, we display BUFFER starting at the top, and shrink the window to fit if `electric-help-shrink-window' is non-nil. If THUNK returns non-nil, we don't do those things. When the user exits (with `electric-help-exit', or otherwise), the help buffer's window disappears (i.e., we use `save-window-excursion'), and BUFFER is put back into its original major mode. (fn THUNK &optional BUFFER NOERASE MINHEIGHT)Felectric-helpify (fn FUN &optional NAME)Feieio-defclass-autoload Create autoload symbols for the EIEIO class CNAME. SUPERCLASSES are the superclasses that CNAME inherits from. DOC is the docstring for CNAME. This function creates a mock-class for CNAME and adds it into SUPERCLASSES as children. It creates an autoload function for CNAME's constructor. (fn CNAME SUPERCLASSES FILENAME DOC)Velectric-pair-mode Non-nil if Electric-Pair mode is enabled. See the `electric-pair-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `electric-pair-mode'.Felectric-pair-mode Toggle automatic parens pairing (Electric Pair mode). With a prefix argument ARG, enable Electric Pair mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Electric Pair mode is a global minor mode. When enabled, typing an open parenthesis automatically inserts the corresponding closing parenthesis, and vice versa. (Likewise for brackets, etc.). If the region is active, the parentheses (brackets, etc.) are inserted around the region instead. To toggle the mode in a single buffer, use `electric-pair-local-mode'. (fn &optional ARG)Felectric-pair-local-mode Toggle `electric-pair-mode' only in this buffer. (fn &optional ARG)Felide-head Hide header material in buffer according to `elide-head-headers-to-hide'. The header is made invisible with an overlay. With a prefix arg, show an elided material again. This is suitable as an entry on `find-file-hook' or appropriate mode hooks. (fn &optional ARG)Felint-file Lint the file FILE. (fn FILE)Felint-directory Lint all the .el files in DIRECTORY. A complicated directory may require a lot of memory. (fn DIRECTORY)Felint-current-buffer Lint the current buffer. If necessary, this first calls `elint-initialize'. (fn)Felint-defun Lint the function at point. If necessary, this first calls `elint-initialize'. (fn)Felint-initialize Initialize elint. If elint is already initialized, this does nothing, unless optional prefix argument REINIT is non-nil. (fn &optional REINIT)Felp-instrument-function Instrument FUNSYM for profiling. FUNSYM must be a symbol of a defined function. (fn FUNSYM)Felp-instrument-list Instrument, for profiling, all functions in `elp-function-list'. Use optional LIST if provided instead. If called interactively, prompt for LIST in the minibuffer; type "nil" to use `elp-function-list'. (fn &optional LIST)Felp-instrument-package Instrument for profiling, all functions which start with PREFIX. For example, to instrument all ELP functions, do the following: \[elp-instrument-package] RET elp- RET (fn PREFIX)Felp-results Display current profiling results. If `elp-reset-after-results' is non-nil, then current profiling information for all instrumented functions is reset after results are displayed. (fn)Femacs-lock-mode Toggle Emacs Lock mode in the current buffer. If called with a plain prefix argument, ask for the locking mode to be used. With any other prefix ARG, turn mode on if ARG is positive, off otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Initially, if the user does not pass an explicit locking mode, it defaults to `emacs-lock-default-locking-mode' (which see); afterwards, the locking mode most recently set on the buffer is used instead. When called from Elisp code, ARG can be any locking mode: exit -- Emacs cannot exit while the buffer is locked kill -- the buffer cannot be killed, but Emacs can exit as usual all -- the buffer is locked against both actions Other values are interpreted as usual. See also `emacs-lock-unlockable-modes', which exempts buffers under some major modes from being locked under some circumstances. (fn &optional ARG)Freport-emacs-bug Report a bug in GNU Emacs. Prompts for bug subject. Leaves you in a mail buffer. (fn TOPIC &optional UNUSED)Femerge-files Run Emerge on two files. (fn ARG FILE-A FILE-B FILE-OUT &optional STARTUP-HOOKS QUIT-HOOKS)Femerge-files-with-ancestor Run Emerge on two files, giving another file as the ancestor. (fn ARG FILE-A FILE-B FILE-ANCESTOR FILE-OUT &optional STARTUP-HOOKS QUIT-HOOKS)Femerge-buffers Run Emerge on two buffers. (fn BUFFER-A BUFFER-B &optional STARTUP-HOOKS QUIT-HOOKS)Femerge-buffers-with-ancestor Run Emerge on two buffers, giving another buffer as the ancestor. (fn BUFFER-A BUFFER-B BUFFER-ANCESTOR &optional STARTUP-HOOKS QUIT-HOOKS)Femerge-files-command (fn)Femerge-files-with-ancestor-command (fn)Femerge-files-remote (fn FILE-A FILE-B FILE-OUT)Femerge-files-with-ancestor-remote (fn FILE-A FILE-B FILE-ANC FILE-OUT)Femerge-revisions Emerge two RCS revisions of a file. (fn ARG FILE REVISION-A REVISION-B &optional STARTUP-HOOKS QUIT-HOOKS)Femerge-revisions-with-ancestor Emerge two RCS revisions of a file, with another revision as ancestor. (fn ARG FILE REVISION-A REVISION-B ANCESTOR &optional STARTUP-HOOKS QUIT-HOOKS)Femerge-merge-directories (fn A-DIR B-DIR ANCESTOR-DIR OUTPUT-DIR)Fenriched-mode Minor mode for editing text/enriched files. These are files with embedded formatting information in the MIME standard text/enriched format. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Turning the mode on or off runs `enriched-mode-hook'. More information about Enriched mode is available in the file "enriched.txt" in `data-directory'. Commands: \{enriched-mode-map} (fn &optional ARG)Fenriched-encode (fn FROM TO ORIG-BUF)Fenriched-decode (fn FROM TO)Fepa-list-keys List all keys matched with NAME from the public keyring. (fn &optional NAME)Fepa-list-secret-keys List all keys matched with NAME from the private keyring. (fn &optional NAME)Fepa-select-keys Display a user's keyring and ask him to select keys. CONTEXT is an epg-context. PROMPT is a string to prompt with. NAMES is a list of strings to be matched with keys. If it is nil, all the keys are listed. If SECRET is non-nil, list secret keys instead of public keys. (fn CONTEXT PROMPT &optional NAMES SECRET)Fepa-decrypt-file Decrypt DECRYPT-FILE into PLAIN-FILE. If you do not specify PLAIN-FILE, this functions prompts for the value to use. (fn DECRYPT-FILE &optional PLAIN-FILE)Fepa-verify-file Verify FILE. (fn FILE)Fepa-sign-file Sign FILE by SIGNERS keys selected. (fn FILE SIGNERS MODE)Fepa-encrypt-file Encrypt FILE for RECIPIENTS. (fn FILE RECIPIENTS)Fepa-decrypt-region Decrypt the current region between START and END. If MAKE-BUFFER-FUNCTION is non-nil, call it to prepare an output buffer. It should return that buffer. If it copies the input, it should delete the text now being decrypted. It should leave point at the proper place to insert the plaintext. Be careful about using this command in Lisp programs! Since this function operates on regions, it does some tricks such as coding-system detection and unibyte/multibyte conversion. If you are sure how the data in the region should be treated, you should consider using the string based counterpart `epg-decrypt-string', or the file based counterpart `epg-decrypt-file' instead. For example: (let ((context (epg-make-context \='OpenPGP))) (decode-coding-string (epg-decrypt-string context (buffer-substring start end)) \='utf-8)) (fn START END &optional MAKE-BUFFER-FUNCTION)Fepa-decrypt-armor-in-region Decrypt OpenPGP armors in the current region between START and END. Don't use this command in Lisp programs! See the reason described in the `epa-decrypt-region' documentation. (fn START END)Fepa-verify-region Verify the current region between START and END. Don't use this command in Lisp programs! Since this function operates on regions, it does some tricks such as coding-system detection and unibyte/multibyte conversion. If you are sure how the data in the region should be treated, you should consider using the string based counterpart `epg-verify-string', or the file based counterpart `epg-verify-file' instead. For example: (let ((context (epg-make-context \='OpenPGP))) (decode-coding-string (epg-verify-string context (buffer-substring start end)) \='utf-8)) (fn START END)Fepa-verify-cleartext-in-region Verify OpenPGP cleartext signed messages in the current region between START and END. Don't use this command in Lisp programs! See the reason described in the `epa-verify-region' documentation. (fn START END)Fepa-sign-region Sign the current region between START and END by SIGNERS keys selected. Don't use this command in Lisp programs! Since this function operates on regions, it does some tricks such as coding-system detection and unibyte/multibyte conversion. If you are sure how the data should be treated, you should consider using the string based counterpart `epg-sign-string', or the file based counterpart `epg-sign-file' instead. For example: (let ((context (epg-make-context \='OpenPGP))) (epg-sign-string context (encode-coding-string (buffer-substring start end) \='utf-8))) (fn START END SIGNERS MODE)Fepa-encrypt-region Encrypt the current region between START and END for RECIPIENTS. Don't use this command in Lisp programs! Since this function operates on regions, it does some tricks such as coding-system detection and unibyte/multibyte conversion. If you are sure how the data should be treated, you should consider using the string based counterpart `epg-encrypt-string', or the file based counterpart `epg-encrypt-file' instead. For example: (let ((context (epg-make-context \='OpenPGP))) (epg-encrypt-string context (encode-coding-string (buffer-substring start end) \='utf-8) nil)) (fn START END RECIPIENTS SIGN SIGNERS)Fepa-delete-keys Delete selected KEYS. (fn KEYS &optional ALLOW-SECRET)Fepa-import-keys Import keys from FILE. (fn FILE)Fepa-import-keys-region Import keys from the region. (fn START END)Fepa-import-armor-in-region Import keys in the OpenPGP armor format in the current region between START and END. (fn START END)Fepa-export-keys Export selected KEYS to FILE. (fn KEYS FILE)Fepa-insert-keys Insert selected KEYS after the point. (fn KEYS)Fepa-dired-do-decrypt Decrypt marked files. (fn)Fepa-dired-do-verify Verify marked files. (fn)Fepa-dired-do-sign Sign marked files. (fn)Fepa-dired-do-encrypt Encrypt marked files. (fn)Fepa-file-handler (fn OPERATION &rest ARGS)Fepa-file-enable (fn)Fepa-file-disable (fn)Fepa-mail-mode A minor-mode for composing encrypted/clearsigned mails. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Fepa-mail-decrypt Decrypt OpenPGP armors in the current buffer. The buffer is expected to contain a mail message. (fn)Fepa-mail-verify Verify OpenPGP cleartext signed messages in the current buffer. The buffer is expected to contain a mail message. (fn)Fepa-mail-sign Sign the current buffer. The buffer is expected to contain a mail message. (fn START END SIGNERS MODE)Fepa-mail-encrypt Encrypt the outgoing mail message in the current buffer. Takes the recipients from the text in the header in the buffer and translates them through `epa-mail-aliases'. With prefix argument, asks you to select among them interactively and also whether and how to sign. Called from Lisp, the optional argument RECIPIENTS is a list of recipient addresses, t to perform symmetric encryption, or nil meaning use the defaults. SIGNERS is a list of keys to sign the message with. (fn &optional RECIPIENTS SIGNERS)Fepa-mail-import-keys Import keys in the OpenPGP armor format in the current buffer. The buffer is expected to contain a mail message. (fn)Vepa-global-mail-mode Non-nil if Epa-Global-Mail mode is enabled. See the `epa-global-mail-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `epa-global-mail-mode'.Fepa-global-mail-mode Minor mode to hook EasyPG into Mail mode. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Fepg-make-context Return a context object. (fn &optional PROTOCOL ARMOR TEXTMODE INCLUDE-CERTS CIPHER-ALGORITHM DIGEST-ALGORITHM COMPRESS-ALGORITHM)Fepg-find-configuration Find or create a usable configuration to handle PROTOCOL. This function first looks at the existing configuration found by the previous invocation of this function, unless NO-CACHE is non-nil. Then it walks through PROGRAM-ALIST or `epg-config--program-alist'. If `epg-gpg-program' or `epg-gpgsm-program' is already set with custom, use it. Otherwise, it tries the programs listed in the entry until the version requirement is met. (fn PROTOCOL &optional NO-CACHE PROGRAM-ALIST)Fepg-configuration Return a list of internal configuration parameters of `epg-gpg-program'. (fn)Fepg-check-configuration Verify that a sufficient version of GnuPG is installed. (fn CONFIG &optional MINIMUM-VERSION)Fepg-expand-group Look at CONFIG and try to expand GROUP. (fn CONFIG GROUP)Ferc-select-read-args Prompt the user for values of nick, server, port, and password. (fn)Ferc ERC is a powerful, modular, and extensible IRC client. This function is the main entry point for ERC. It permits you to select connection parameters, and then starts ERC. Non-interactively, it takes the keyword arguments (server (erc-compute-server)) (port (erc-compute-port)) (nick (erc-compute-nick)) password (full-name (erc-compute-full-name))) That is, if called with (erc :server "irc.freenode.net" :full-name "Harry S Truman") then the server and full-name will be set to those values, whereas `erc-compute-port', `erc-compute-nick' and `erc-compute-full-name' will be invoked for the values of the other parameters. (fn &key (SERVER (erc-compute-server)) (PORT (erc-compute-port)) (NICK (erc-compute-nick)) PASSWORD (FULL-NAME (erc-compute-full-name)))Ferc-tls Interactively select TLS connection parameters and run ERC. Arguments are the same as for `erc'. (fn &rest R)Ferc-handle-irc-url Use ERC to IRC on HOST:PORT in CHANNEL as USER with PASSWORD. If ERC is already connected to HOST:PORT, simply /join CHANNEL. Otherwise, connect to HOST:PORT as USER and /join CHANNEL. (fn HOST PORT CHANNEL USER PASSWORD)Ferc-cmd-DCC Parser for /dcc command. This figures out the dcc subcommand and calls the appropriate routine to handle it. The function dispatched should be named "erc-dcc-do-FOO-command", where FOO is one of CLOSE, GET, SEND, LIST, CHAT, etc. (fn CMD &rest ARGS)Fpcomplete/erc-mode/DCC Provides completion for the /DCC command. (fn)Verc-ctcp-query-DCC-hook Hook variable for CTCP DCC queries.Ferc-ctcp-query-DCC The function called when a CTCP DCC request is detected by the client. It examines the DCC subcommand, and calls the appropriate routine for that subcommand. (fn PROC NICK LOGIN HOST TO QUERY)Ferc-cmd-ezb Send EZB commands to the EZBouncer verbatim. (fn LINE &optional FORCE)Ferc-ezb-get-login Return an appropriate EZBounce login for SERVER and PORT. Look up entries in `erc-ezb-login-alist'. If the username or password in the alist is nil, prompt for the appropriate values. (fn SERVER PORT)Ferc-ezb-lookup-action (fn MESSAGE)Ferc-ezb-notice-autodetect React on an EZBounce NOTICE request. (fn PROC PARSED)Ferc-ezb-identify Identify to the EZBouncer server. (fn MESSAGE)Ferc-ezb-init-session-list Reset the EZBounce session list to nil. (fn MESSAGE)Ferc-ezb-end-of-session-list Indicate the end of the EZBounce session listing. (fn MESSAGE)Ferc-ezb-add-session Add an EZBounce session to the session list. (fn MESSAGE)Ferc-ezb-select Select an IRC server to use by EZBounce, in ERC style. (fn MESSAGE)Ferc-ezb-select-session Select a detached EZBounce session. (fn)Ferc-ezb-initialize Add EZBouncer convenience functions to ERC. (fn)Ferc-fill Fill a region using the function referenced in `erc-fill-function'. You can put this on `erc-insert-modify-hook' and/or `erc-send-modify-hook'. (fn)Ferc-identd-start Start an identd server listening to port 8113. Port 113 (auth) will need to be redirected to port 8113 on your machine -- using iptables, or a program like redir which can be run from inetd. The idea is to provide a simple identd server when you need one, without having to install one globally on your system. (fn &optional PORT)Ferc-identd-stop (fn &rest IGNORE)Ferc-create-imenu-index (fn)Ferc-logging-enabled Return non-nil if logging is enabled for BUFFER. If BUFFER is nil, the value of `current-buffer' is used. Logging is enabled if `erc-log-channels-directory' is non-nil, the directory is writable (it will be created as necessary) and `erc-enable-logging' returns a non-nil value. (fn &optional BUFFER)Ferc-save-buffer-in-logs Append BUFFER contents to the log file, if logging is enabled. If BUFFER is not provided, current buffer is used. Logging is enabled if `erc-logging-enabled' returns non-nil. This is normally done on exit, to save the unsaved portion of the buffer, since only the text that runs off the buffer limit is logged automatically. You can save every individual message by putting this function on `erc-insert-post-hook'. (fn &optional BUFFER)Ferc-add-pal Add pal interactively to `erc-pals'. (fn)Ferc-delete-pal Delete pal interactively to `erc-pals'. (fn)Ferc-add-fool Add fool interactively to `erc-fools'. (fn)Ferc-delete-fool Delete fool interactively to `erc-fools'. (fn)Ferc-add-keyword Add keyword interactively to `erc-keywords'. (fn)Ferc-delete-keyword Delete keyword interactively to `erc-keywords'. (fn)Ferc-add-dangerous-host Add dangerous-host interactively to `erc-dangerous-hosts'. (fn)Ferc-delete-dangerous-host Delete dangerous-host interactively to `erc-dangerous-hosts'. (fn)Ferc-cmd-WHOLEFT Show who's gone. (fn)Ferc-determine-network Return the name of the network or "Unknown" as a symbol. Use the server parameter NETWORK if provided, otherwise parse the server name and search for a match in `erc-networks-alist'. (fn)Ferc-server-select Interactively select a server to connect to using `erc-server-alist'. (fn)Ferc-cmd-NOTIFY Change `erc-notify-list' or list current notify-list members online. Without args, list the current list of notified people online, with args, toggle notify status of people. (fn &rest ARGS)Fpcomplete/erc-mode/NOTIFY (fn)Ferc-nickserv-identify-mode Set up hooks according to which MODE the user has chosen. (fn MODE)Ferc-nickserv-identify Send an "identify <PASSWORD>" message to NickServ. When called interactively, read the password using `read-passwd'. (fn PASSWORD)Ferc-speedbar-browser Initialize speedbar to display an ERC browser. This will add a speedbar major display mode. (fn)Verc-track-minor-mode Non-nil if Erc-Track minor mode is enabled. See the `erc-track-minor-mode' command for a description of this minor mode.Ferc-track-minor-mode Toggle mode line display of ERC activity (ERC Track minor mode). With a prefix argument ARG, enable ERC Track minor mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. ERC Track minor mode is a global minor mode. It exists for the sole purpose of providing the C-c C-SPC and C-c C-@ keybindings. Make sure that you have enabled the track module, otherwise the keybindings will not do anything useful. (fn &optional ARG)Ferc-truncate-buffer-to-size Truncates the buffer to the size SIZE. If BUFFER is not provided, the current buffer is assumed. The deleted region is logged if `erc-logging-enabled' returns non-nil. (fn SIZE &optional BUFFER)Ferc-truncate-buffer Truncates the current buffer to `erc-max-buffer-size'. Meant to be used in hooks, like `erc-insert-post-hook'. (fn)Ferc-xdcc-add-file Add a file to `erc-xdcc-files'. (fn FILE)Fert-deftest Define NAME (a symbol) as a test. BODY is evaluated as a `progn' when the test is run. It should signal a condition on failure or just return if the test passes. `should', `should-not', `should-error' and `skip-unless' are useful for assertions in BODY. Use `ert' to run tests interactively. Tests that are expected to fail can be marked as such using :expected-result. See `ert-test-result-type-p' for a description of valid values for RESULT-TYPE. (fn NAME () [DOCSTRING] [:expected-result RESULT-TYPE] [:tags \='(TAG...)] BODY...)Fert-run-tests-batch Run the tests specified by SELECTOR, printing results to the terminal. SELECTOR works as described in `ert-select-tests', except if SELECTOR is nil, in which case all tests rather than none will be run; this makes the command line "emacs -batch -l my-tests.el -f ert-run-tests-batch-and-exit" useful. Returns the stats object. (fn &optional SELECTOR)Fert-run-tests-batch-and-exit Like `ert-run-tests-batch', but exits Emacs when done. The exit status will be 0 if all test results were as expected, 1 on unexpected results, or 2 if the tool detected an error outside of the tests (e.g. invalid SELECTOR or bug in the code that runs the tests). (fn &optional SELECTOR)Fert-run-tests-interactively Run the tests specified by SELECTOR and display the results in a buffer. SELECTOR works as described in `ert-select-tests'. OUTPUT-BUFFER-NAME and MESSAGE-FN should normally be nil; they are used for automated self-tests and specify which buffer to use and how to display message. (fn SELECTOR &optional OUTPUT-BUFFER-NAME MESSAGE-FN)Fert-describe-test Display the documentation for TEST-OR-TEST-NAME (a symbol or ert-test). (fn TEST-OR-TEST-NAME)Fert-kill-all-test-buffers Kill all test buffers that are still live. (fn)Feshell-mode Emacs shell interactive mode. (fn)Feshell Create an interactive Eshell buffer. The buffer used for Eshell sessions is determined by the value of `eshell-buffer-name'. If there is already an Eshell session active in that buffer, Emacs will simply switch to it. Otherwise, a new session will begin. A numeric prefix arg (as in `C-u 42 M-x eshell RET') switches to the session with that number, creating it if necessary. A nonnumeric prefix arg means to create a new session. Returns the buffer selected (or created). (fn &optional ARG)Feshell-command Execute the Eshell command string COMMAND. With prefix ARG, insert output into the current buffer at point. (fn &optional COMMAND ARG)Feshell-command-result Execute the given Eshell COMMAND, and return the result. The result might be any Lisp object. If STATUS-VAR is a symbol, it will be set to the exit status of the command. This is the only way to determine whether the value returned corresponding to a successful execution. (fn COMMAND &optional STATUS-VAR)Vtags-file-name File name of tags table. To switch to a new tags table, do not set this variable; instead, invoke `visit-tags-table', which is the only reliable way of setting the value of this variable, whether buffer-local or global. Use the `etags' program to make a tags table file.Vtags-case-fold-search Whether tags operations should be case-sensitive. A value of t means case-insensitive, a value of nil means case-sensitive. Any other value means use the setting of `case-fold-search'.Vtags-table-list List of file names of tags tables to search. An element that is a directory means the file "TAGS" in that directory. To switch to a new list of tags tables, setting this variable is sufficient. If you set this variable, do not also set `tags-file-name'. Use the `etags' program to make a tags table file.Vtags-compression-info-list List of extensions tried by etags when `auto-compression-mode' is on. An empty string means search the non-compressed file.Vtags-add-tables Control whether to add a new tags table to the current list. t means do; nil means don't (always start a new list). Any other value means ask the user whether to add a new tags table to the current list (as opposed to starting a new list).Vfind-tag-hook Hook to be run by \[find-tag] after finding a tag. See `run-hooks'. The value in the buffer in which \[find-tag] is done is used, not the value in the buffer \[find-tag] goes to.Vfind-tag-default-function A function of no arguments used by \[find-tag] to pick a default tag. If nil, and the symbol that is the value of `major-mode' has a `find-tag-default-function' property (see `put'), that is used. Otherwise, `find-tag-default' is used.Ftags-table-mode Major mode for tags table file buffers. (fn)Fvisit-tags-table Tell tags commands to use tags table file FILE. FILE should be the name of a file created with the `etags' program. A directory name is ok too; it means file TAGS in that directory. Normally \[visit-tags-table] sets the global value of `tags-file-name'. With a prefix arg, set the buffer-local value instead. When called from Lisp, if the optional arg LOCAL is non-nil, set the local value. When you find a tag with \[find-tag], the buffer it finds the tag in is given a local value of this variable which is the name of the tags file the tag was in. (fn FILE &optional LOCAL)Fvisit-tags-table-buffer Select the buffer containing the current tags table. Optional arg CONT specifies which tags table to visit. If CONT is a string, visit that file as a tags table. If CONT is t, visit the next table in `tags-table-list'. If CONT is the atom `same', don't look for a new table; just select the buffer visiting `tags-file-name'. If CONT is nil or absent, choose a first buffer from information in `tags-file-name', `tags-table-list', `tags-table-list-pointer'. Optional second arg CBUF, if non-nil, specifies the initial buffer, which is important if that buffer has a local value of `tags-file-name'. Returns t if it visits a tags table, or nil if there are no more in the list. (fn &optional CONT CBUF)Ftags-table-files Return a list of files in the current tags table. Assumes the tags table is the current buffer. The file names are returned as they appeared in the `etags' command that created the table, usually without directory names. (fn)Ftags-lazy-completion-table (fn)Ffind-tag-noselect Find tag (in current tags table) whose name contains TAGNAME. Returns the buffer containing the tag's definition and moves its point there, but does not select the buffer. The default for TAGNAME is the expression in the buffer near point. If second arg NEXT-P is t (interactively, with prefix arg), search for another tag that matches the last tagname or regexp used. When there are multiple matches for a tag, more exact matches are found first. If NEXT-P is the atom `-' (interactively, with prefix arg that is a negative number or just \[negative-argument]), pop back to the previous tag gone to. If third arg REGEXP-P is non-nil, treat TAGNAME as a regexp. A marker representing the point when this command is invoked is pushed onto a ring and may be popped back to with \[pop-tag-mark]. Contrast this with the ring of marks gone to by the command. See documentation of variable `tags-file-name'. (fn TAGNAME &optional NEXT-P REGEXP-P)Ffind-tag Find tag (in current tags table) whose name contains TAGNAME. Select the buffer containing the tag's definition, and move point there. The default for TAGNAME is the expression in the buffer around or before point. If second arg NEXT-P is t (interactively, with prefix arg), search for another tag that matches the last tagname or regexp used. When there are multiple matches for a tag, more exact matches are found first. If NEXT-P is the atom `-' (interactively, with prefix arg that is a negative number or just \[negative-argument]), pop back to the previous tag gone to. If third arg REGEXP-P is non-nil, treat TAGNAME as a regexp. A marker representing the point when this command is invoked is pushed onto a ring and may be popped back to with \[pop-tag-mark]. Contrast this with the ring of marks gone to by the command. See documentation of variable `tags-file-name'. (fn TAGNAME &optional NEXT-P REGEXP-P)Ffind-tag-other-window Find tag (in current tags table) whose name contains TAGNAME. Select the buffer containing the tag's definition in another window, and move point there. The default for TAGNAME is the expression in the buffer around or before point. If second arg NEXT-P is t (interactively, with prefix arg), search for another tag that matches the last tagname or regexp used. When there are multiple matches for a tag, more exact matches are found first. If NEXT-P is negative (interactively, with prefix arg that is a negative number or just \[negative-argument]), pop back to the previous tag gone to. If third arg REGEXP-P is non-nil, treat TAGNAME as a regexp. A marker representing the point when this command is invoked is pushed onto a ring and may be popped back to with \[pop-tag-mark]. Contrast this with the ring of marks gone to by the command. See documentation of variable `tags-file-name'. (fn TAGNAME &optional NEXT-P REGEXP-P)Ffind-tag-other-frame Find tag (in current tags table) whose name contains TAGNAME. Select the buffer containing the tag's definition in another frame, and move point there. The default for TAGNAME is the expression in the buffer around or before point. If second arg NEXT-P is t (interactively, with prefix arg), search for another tag that matches the last tagname or regexp used. When there are multiple matches for a tag, more exact matches are found first. If NEXT-P is negative (interactively, with prefix arg that is a negative number or just \[negative-argument]), pop back to the previous tag gone to. If third arg REGEXP-P is non-nil, treat TAGNAME as a regexp. A marker representing the point when this command is invoked is pushed onto a ring and may be popped back to with \[pop-tag-mark]. Contrast this with the ring of marks gone to by the command. See documentation of variable `tags-file-name'. (fn TAGNAME &optional NEXT-P)Ffind-tag-regexp Find tag (in current tags table) whose name matches REGEXP. Select the buffer containing the tag's definition and move point there. If second arg NEXT-P is t (interactively, with prefix arg), search for another tag that matches the last tagname or regexp used. When there are multiple matches for a tag, more exact matches are found first. If NEXT-P is negative (interactively, with prefix arg that is a negative number or just \[negative-argument]), pop back to the previous tag gone to. If third arg OTHER-WINDOW is non-nil, select the buffer in another window. A marker representing the point when this command is invoked is pushed onto a ring and may be popped back to with \[pop-tag-mark]. Contrast this with the ring of marks gone to by the command. See documentation of variable `tags-file-name'. (fn REGEXP &optional NEXT-P OTHER-WINDOW)Fnext-file Select next file among files in current tags table. A first argument of t (prefix arg, if interactive) initializes to the beginning of the list of files in the tags table. If the argument is neither nil nor t, it is evalled to initialize the list of files. Non-nil second argument NOVISIT means use a temporary buffer to save time and avoid uninteresting warnings. Value is nil if the file was already visited; if the file was newly read in, the value is the filename. (fn &optional INITIALIZE NOVISIT)Ftags-loop-continue Continue last \[tags-search] or \[tags-query-replace] command. Used noninteractively with non-nil argument to begin such a command (the argument is passed to `next-file', which see). Two variables control the processing we do on each file: the value of `tags-loop-scan' is a form to be executed on each file to see if it is interesting (it returns non-nil if so) and `tags-loop-operate' is a form to evaluate to operate on an interesting file. If the latter evaluates to nil, we exit; otherwise we scan the next file. (fn &optional FIRST-TIME)Ftags-search Search through all files listed in tags table for match for REGEXP. Stops when a match is found. To continue searching for next match, use command \[tags-loop-continue]. If FILE-LIST-FORM is non-nil, it should be a form that, when evaluated, will return a list of file names. The search will be restricted to these files. Also see the documentation of the `tags-file-name' variable. (fn REGEXP &optional FILE-LIST-FORM)Ftags-query-replace Do `query-replace-regexp' of FROM with TO on all files listed in tags table. Third arg DELIMITED (prefix arg) means replace only word-delimited matches. If you exit (\[keyboard-quit], RET or q), you can resume the query replace with the command \[tags-loop-continue]. Fourth arg FILE-LIST-FORM non-nil means initialize the replacement loop. If FILE-LIST-FORM is non-nil, it is a form to evaluate to produce the list of files to search. See also the documentation of the variable `tags-file-name'. (fn FROM TO &optional DELIMITED FILE-LIST-FORM)Flist-tags Display list of tags in file FILE. This searches only the first table in the list, and no included tables. FILE should be as it appeared in the `etags' command, usually without a directory specification. (fn FILE &optional NEXT-MATCH)Ftags-apropos Display list of all tags in tags table REGEXP matches. (fn REGEXP)Fselect-tags-table Select a tags table file from a menu of those you have already used. The list of tags tables to select from is stored in `tags-table-set-list'; see the doc of that variable if you want to add names to the list. (fn)Fcomplete-tag Perform tags completion on the text around point. Completes to the set of names listed in the current tags table. The string to complete is chosen in the same way as the default for \[find-tag] (which see). (fn)Fetags--xref-backend (fn)Fsetup-ethiopic-environment-internal (fn)Fethio-sera-to-fidel-buffer Convert the current buffer from SERA to FIDEL. The variable `ethio-primary-language' specifies the primary language and `ethio-secondary-language' specifies the secondary. If the 1st optional argument SECONDARY is non-nil, assume the buffer begins with the secondary language; otherwise with the primary language. If the 2nd optional argument FORCE is non-nil, perform conversion even if the buffer is read-only. See also the descriptions of the variables `ethio-use-colon-for-colon' and `ethio-use-three-dot-question'. (fn &optional SECONDARY FORCE)Fethio-sera-to-fidel-region Convert the characters in region from SERA to FIDEL. The variable `ethio-primary-language' specifies the primary language and `ethio-secondary-language' specifies the secondary. If the 3rd argument SECONDARY is given and non-nil, assume the region begins with the secondary language; otherwise with the primary language. If the 4th argument FORCE is given and non-nil, perform conversion even if the buffer is read-only. See also the descriptions of the variables `ethio-use-colon-for-colon' and `ethio-use-three-dot-question'. (fn BEGIN END &optional SECONDARY FORCE)Fethio-sera-to-fidel-marker Convert the regions surrounded by "<sera>" and "</sera>" from SERA to FIDEL. Assume that each region begins with `ethio-primary-language'. The markers "<sera>" and "</sera>" themselves are not deleted. (fn &optional FORCE)Fethio-fidel-to-sera-buffer Replace all the FIDEL characters in the current buffer to the SERA format. The variable `ethio-primary-language' specifies the primary language and `ethio-secondary-language' specifies the secondary. If the 1st optional argument SECONDARY is non-nil, try to convert the region so that it begins with the secondary language; otherwise with the primary language. If the 2nd optional argument FORCE is non-nil, convert even if the buffer is read-only. See also the descriptions of the variables `ethio-use-colon-for-colon', `ethio-use-three-dot-question', `ethio-quote-vowel-always' and `ethio-numeric-reduction'. (fn &optional SECONDARY FORCE)Fethio-fidel-to-sera-region Replace all the FIDEL characters in the region to the SERA format. The variable `ethio-primary-language' specifies the primary language and `ethio-secondary-language' specifies the secondary. If the 3rd argument SECONDARY is given and non-nil, convert the region so that it begins with the secondary language; otherwise with the primary language. If the 4th argument FORCE is given and non-nil, convert even if the buffer is read-only. See also the descriptions of the variables `ethio-use-colon-for-colon', `ethio-use-three-dot-question', `ethio-quote-vowel-always' and `ethio-numeric-reduction'. (fn BEGIN END &optional SECONDARY FORCE)Fethio-fidel-to-sera-marker Convert the regions surrounded by "<sera>" and "</sera>" from FIDEL to SERA. The markers "<sera>" and "</sera>" themselves are not deleted. (fn &optional FORCE)Fethio-modify-vowel Modify the vowel of the FIDEL that is under the cursor. (fn)Fethio-replace-space Replace ASCII spaces with Ethiopic word separators in the region. In the specified region, replace word separators surrounded by two Ethiopic characters, depending on the first argument CH, which should be 1, 2, or 3. If CH = 1, word separator will be replaced with an ASCII space. If CH = 2, with two ASCII spaces. If CH = 3, with the Ethiopic colon-like word separator. The 2nd and 3rd arguments BEGIN and END specify the region. (fn CH BEGIN END)Fethio-input-special-character This function is deprecated. (fn ARG)Fethio-fidel-to-tex-buffer Convert each fidel characters in the current buffer into a fidel-tex command. (fn)Fethio-tex-to-fidel-buffer Convert fidel-tex commands in the current buffer into fidel chars. (fn)Fethio-fidel-to-java-buffer Convert Ethiopic characters into the Java escape sequences. Each escape sequence is of the form \uXXXX, where XXXX is the character's codepoint (in hex) in Unicode. If `ethio-java-save-lowercase' is non-nil, use [0-9a-f]. Otherwise, [0-9A-F]. (fn)Fethio-java-to-fidel-buffer Convert the Java escape sequences into corresponding Ethiopic characters. (fn)Fethio-find-file Transliterate file content into Ethiopic depending on filename suffix. (fn)Fethio-write-file Transliterate Ethiopic characters in ASCII depending on the file extension. (fn)Fethio-insert-ethio-space Insert the Ethiopic word delimiter (the colon-like character). With ARG, insert that many delimiters. (fn ARG)Fethio-composition-function (fn POS TO FONT-OBJECT STRING)Feudc-set-server Set the directory server to SERVER using PROTOCOL. Unless NO-SAVE is non-nil, the server is saved as the default server for future sessions. (fn SERVER PROTOCOL &optional NO-SAVE)Feudc-get-email Get the email field of NAME from the directory server. If ERROR is non-nil, report an error if there is none. (fn NAME &optional ERROR)Feudc-get-phone Get the phone field of NAME from the directory server. If ERROR is non-nil, report an error if there is none. (fn NAME &optional ERROR)Feudc-expand-inline Query the directory server, and expand the query string before point. The query string consists of the buffer substring from the point back to the preceding comma, colon or beginning of line. The variable `eudc-inline-query-format' controls how to associate the individual inline query words with directory attribute names. After querying the server for the given string, the expansion specified by `eudc-inline-expansion-format' is inserted in the buffer at point. If REPLACE is non-nil, then this expansion replaces the name in the buffer. `eudc-expansion-overwrites-query' being non-nil inverts the meaning of REPLACE. Multiple servers can be tried with the same query until one finds a match, see `eudc-inline-expansion-servers' (fn &optional REPLACE)Feudc-query-form Display a form to query the directory server. If given a non-nil argument GET-FIELDS-FROM-SERVER, the function first queries the server for the existing fields and displays a corresponding form. (fn &optional GET-FIELDS-FROM-SERVER)Feudc-load-eudc Load the Emacs Unified Directory Client. This does nothing except loading eudc by autoload side-effect. (fn)Feudc-display-generic-binary Display a button for unidentified binary DATA. (fn DATA)Feudc-display-url Display URL and make it clickable. (fn URL)Feudc-display-mail Display e-mail address and make it clickable. (fn MAIL)Feudc-display-sound Display a button to play the sound DATA. (fn DATA)Feudc-display-jpeg-inline Display the JPEG DATA inline at point if possible. (fn DATA)Feudc-display-jpeg-as-button Display a button for the JPEG DATA. (fn DATA)Feudc-insert-record-at-point-into-bbdb Insert record at point into the BBDB database. This function can only be called from a directory query result buffer. (fn)Feudc-try-bbdb-insert Call `eudc-insert-record-at-point-into-bbdb' if on a record. (fn)Feudc-edit-hotlist Edit the hotlist of directory servers in a specialized buffer. (fn)Fewoc-create Create an empty ewoc. The ewoc will be inserted in the current buffer at the current position. PRETTY-PRINTER should be a function that takes one argument, an element, and inserts a string representing it in the buffer (at point). The string PRETTY-PRINTER inserts may be empty or span several lines. The PRETTY-PRINTER should use `insert', and not `insert-before-markers'. Optional second and third arguments HEADER and FOOTER are strings, possibly empty, that will always be present at the top and bottom, respectively, of the ewoc. Normally, a newline is automatically inserted after the header, the footer and every node's printed representation. Optional fourth arg NOSEP non-nil inhibits this. (fn PRETTY-PRINTER &optional HEADER FOOTER NOSEP)Veww-suggest-uris List of functions called to form the list of default URIs for `eww'. Each of the elements is a function returning either a string or a list of strings. The results will be joined into a single list with duplicate entries (if any) removed.Feww Fetch URL and render the page. If the input doesn't look like an URL or a domain name, the word(s) will be searched for via `eww-search-prefix'. (fn URL)Feww-open-file Render FILE using EWW. (fn FILE)Feww-search-words Search the web for the text between BEG and END. If region is active (and not whitespace), search the web for the text between BEG and END. Else, prompt the user for a search string. See the `eww-search-prefix' variable for the search engine used. (fn)Feww-mode Mode for browsing the web. (fn)Feww-browse-url (fn URL &optional NEW-WINDOW)Feww-list-bookmarks Display the bookmarks. (fn)Fexecutable-command-find-posix-p Check if PROGRAM handles arguments Posix-style. If PROGRAM is non-nil, use that instead of "find". (fn &optional PROGRAM)Fexecutable-interpret Run script with user-specified args, and collect output in a buffer. While script runs asynchronously, you can use the \[next-error] command to find the next error. The buffer is also in `comint-mode' and `compilation-shell-minor-mode', so that you can answer any prompts. (fn COMMAND)Fexecutable-set-magic Set this buffer's interpreter to INTERPRETER with optional ARGUMENT. The variables `executable-magicless-file-regexp', `executable-prefix-env', `executable-insert', `executable-query' and `executable-chmod' control when and how magic numbers are inserted or replaced and scripts made executable. (fn INTERPRETER &optional ARGUMENT NO-QUERY-FLAG INSERT-FLAG)Fexecutable-make-buffer-file-executable-if-script-p Make file executable according to umask if not already executable. If file already has any execute bits set at all, do not change existing file modes. (fn)Fexpand-add-abbrevs Add a list of abbreviations to abbrev table TABLE. ABBREVS is a list of abbrev definitions; each abbrev description entry has the form (ABBREV EXPANSION ARG). ABBREV is the abbreviation to replace. EXPANSION is the replacement string or a function which will make the expansion. For example, you could use the DMacros or skeleton packages to generate such functions. ARG is an optional argument which can be a number or a list of numbers. If ARG is a number, point is placed ARG chars from the beginning of the expanded text. If ARG is a list of numbers, point is placed according to the first member of the list, but you can visit the other specified positions cyclically with the functions `expand-jump-to-previous-slot' and `expand-jump-to-next-slot'. If ARG is omitted, point is placed at the end of the expanded text. (fn TABLE ABBREVS)Fexpand-abbrev-hook Abbrev hook used to do the expansion job of expand abbrevs. See `expand-add-abbrevs'. Value is non-nil if expansion was done. (fn)Fexpand-jump-to-previous-slot Move the cursor to the previous slot in the last abbrev expansion. This is used only in conjunction with `expand-add-abbrevs'. (fn)Fexpand-jump-to-next-slot Move the cursor to the next slot in the last abbrev expansion. This is used only in conjunction with `expand-add-abbrevs'. (fn)Ff90-mode Major mode for editing Fortran 90,95 code in free format. For fixed format code, use `fortran-mode'. \[f90-indent-line] indents the current line. \[f90-indent-new-line] indents current line and creates a new indented line. \[f90-indent-subprogram] indents the current subprogram. Type \=`? or \=`\[help-command] to display a list of built-in abbrevs for F90 keywords. Key definitions: \{f90-mode-map} Variables controlling indentation style and extra features: `f90-do-indent' Extra indentation within do blocks (default 3). `f90-if-indent' Extra indentation within if/select/where/forall blocks (default 3). `f90-type-indent' Extra indentation within type/enum/interface/block-data blocks (default 3). `f90-program-indent' Extra indentation within program/module/subroutine/function blocks (default 2). `f90-associate-indent' Extra indentation within associate blocks (default 2). `f90-critical-indent' Extra indentation within critical/block blocks (default 2). `f90-continuation-indent' Extra indentation applied to continuation lines (default 5). `f90-comment-region' String inserted by function \[f90-comment-region] at start of each line in region (default "!!!$"). `f90-indented-comment-re' Regexp determining the type of comment to be intended like code (default "!"). `f90-directive-comment-re' Regexp of comment-like directive like "!HPF\\$", not to be indented (default "!hpf\\$"). `f90-break-delimiters' Regexp holding list of delimiters at which lines may be broken (default "[-+*/><=,% \t]"). `f90-break-before-delimiters' Non-nil causes `f90-do-auto-fill' to break lines before delimiters (default t). `f90-beginning-ampersand' Automatic insertion of `&' at beginning of continuation lines (default t). `f90-smart-end' From an END statement, check and fill the end using matching block start. Allowed values are `blink', `no-blink', and nil, which determine whether to blink the matching beginning (default `blink'). `f90-auto-keyword-case' Automatic change of case of keywords (default nil). The possibilities are `downcase-word', `upcase-word', `capitalize-word'. `f90-leave-line-no' Do not left-justify line numbers (default nil). Turning on F90 mode calls the value of the variable `f90-mode-hook' with no args, if that value is non-nil. (fn)Fface-remap-add-relative Add a face remapping entry of FACE to SPECS in the current buffer. Return a cookie which can be used to delete this remapping with `face-remap-remove-relative'. The remaining arguments, SPECS, should form a list of faces. Each list element should be either a face name or a property list of face attribute/value pairs. If more than one face is listed, that specifies an aggregate face, in the same way as in a `face' text property, except for possible priority changes noted below. The face remapping specified by SPECS takes effect alongside the remappings from other calls to `face-remap-add-relative' for the same FACE, as well as the normal definition of FACE (at lowest priority). This function tries to sort multiple remappings for the same face, so that remappings specifying relative face attributes are applied after remappings specifying absolute face attributes. The base (lowest priority) remapping may be set to something other than the normal definition of FACE via `face-remap-set-base'. (fn FACE &rest SPECS)Fface-remap-reset-base Set the base remapping of FACE to the normal definition of FACE. This causes the remappings specified by `face-remap-add-relative' to apply on top of the normal definition of FACE. (fn FACE)Fface-remap-set-base Set the base remapping of FACE in the current buffer to SPECS. This causes the remappings specified by `face-remap-add-relative' to apply on top of the face specification given by SPECS. The remaining arguments, SPECS, should form a list of faces. Each list element should be either a face name or a property list of face attribute/value pairs, like in a `face' text property. If SPECS is empty, call `face-remap-reset-base' to use the normal definition of FACE as the base remapping; note that this is different from SPECS containing a single value nil, which means not to inherit from the global definition of FACE at all. (fn FACE &rest SPECS)Ftext-scale-set Set the scale factor of the default face in the current buffer to LEVEL. If LEVEL is non-zero, `text-scale-mode' is enabled, otherwise it is disabled. LEVEL is a number of steps, with 0 representing the default size. Each step scales the height of the default face by the variable `text-scale-mode-step' (a negative number decreases the height by the same amount). (fn LEVEL)Ftext-scale-increase Increase the height of the default face in the current buffer by INC steps. If the new height is other than the default, `text-scale-mode' is enabled. Each step scales the height of the default face by the variable `text-scale-mode-step' (a negative number of steps decreases the height by the same amount). As a special case, an argument of 0 will remove any scaling currently active. (fn INC)Ftext-scale-decrease Decrease the height of the default face in the current buffer by DEC steps. See `text-scale-increase' for more details. (fn DEC)Ftext-scale-adjust Adjust the height of the default face by INC. INC may be passed as a numeric prefix argument. The actual adjustment made depends on the final component of the key-binding used to invoke the command, with all modifiers removed: +, = Increase the default face height by one step - Decrease the default face height by one step 0 Reset the default face height to the global default After adjusting, continue to read input events and further adjust the face height as long as the input event read (with all modifiers removed) is one of the above characters. Each step scales the height of the default face by the variable `text-scale-mode-step' (a negative number of steps decreases the height by the same amount). As a special case, an argument of 0 will remove any scaling currently active. This command is a special-purpose wrapper around the `text-scale-increase' command which makes repetition convenient even when it is bound in a non-top-level keymap. For binding in a top-level keymap, `text-scale-increase' or `text-scale-decrease' may be more appropriate. (fn INC)Fbuffer-face-mode Minor mode for a buffer-specific default face. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When enabled, the face specified by the variable `buffer-face-mode-face' is used to display the buffer text. (fn &optional ARG)Fbuffer-face-set Enable `buffer-face-mode', using face specs SPECS. Each argument in SPECS should be a face, i.e. either a face name or a property list of face attributes and values. If more than one face is listed, that specifies an aggregate face, like in a `face' text property. If SPECS is nil or omitted, disable `buffer-face-mode'. This function makes the variable `buffer-face-mode-face' buffer local, and sets it to FACE. (fn &rest SPECS)Fbuffer-face-toggle Toggle `buffer-face-mode', using face specs SPECS. Each argument in SPECS should be a face, i.e. either a face name or a property list of face attributes and values. If more than one face is listed, that specifies an aggregate face, like in a `face' text property. If `buffer-face-mode' is already enabled, and is currently using the face specs SPECS, then it is disabled; if `buffer-face-mode' is disabled, or is enabled and currently displaying some other face, then is left enabled, but the face changed to reflect SPECS. This function will make the variable `buffer-face-mode-face' buffer local, and set it to SPECS. (fn &rest SPECS)Fvariable-pitch-mode Variable-pitch default-face mode. An interface to `buffer-face-mode' which uses the `variable-pitch' face. Besides the choice of face, it is the same as `buffer-face-mode'. (fn &optional ARG)Ffeedmail-send-it Send the current mail buffer using the Feedmail package. This is a suitable value for `send-mail-function'. It can be used with various lower-level mechanisms to provide features such as queueing. (fn)Ffeedmail-run-the-queue-no-prompts Like `feedmail-run-the-queue', but suppress confirmation prompts. (fn &optional ARG)Ffeedmail-run-the-queue-global-prompt Like `feedmail-run-the-queue', but with a global confirmation prompt. This is generally most useful if run non-interactively, since you can bail out with an appropriate answer to the global confirmation prompt. (fn &optional ARG)Ffeedmail-run-the-queue Visit each message in the feedmail queue directory and send it out. Return value is a list of three things: number of messages sent, number of messages skipped, and number of non-message things in the queue (commonly backup file names and the like). (fn &optional ARG)Ffeedmail-queue-reminder Perform some kind of reminder activity about queued and draft messages. Called with an optional symbol argument which says what kind of event is triggering the reminder activity. The default is `on-demand', which is what you typically would use if you were putting this in your Emacs start-up or mail hook code. Other recognized values for WHAT-EVENT (these are passed internally by feedmail): after-immediate (a message has just been sent in immediate mode) after-queue (a message has just been queued) after-draft (a message has just been placed in the draft directory) after-run (the queue has just been run, possibly sending messages) WHAT-EVENT is used as a key into the table `feedmail-queue-reminder-alist'. If the associated value is a function, it is called without arguments and is expected to perform the reminder activity. You can supply your own reminder functions by redefining `feedmail-queue-reminder-alist'. If you don't want any reminders, you can set `feedmail-queue-reminder-alist' to nil. (fn &optional WHAT-EVENT)Fffap-next Search buffer for next file or URL, and run ffap. Optional argument BACK says to search backwards. Optional argument WRAP says to try wrapping around if necessary. Interactively: use a single prefix \[universal-argument] to search backwards, double prefix to wrap forward, triple to wrap backwards. Actual search is done by the function `ffap-next-guess'. (fn &optional BACK WRAP)Ffind-file-at-point Find FILENAME, guessing a default from text around point. If `ffap-url-regexp' is not nil, the FILENAME may also be an URL. With a prefix, this command behaves exactly like `ffap-file-finder'. If `ffap-require-prefix' is set, the prefix meaning is reversed. See also the variables `ffap-dired-wildcards', `ffap-newfile-prompt', `ffap-url-unwrap-local', `ffap-url-unwrap-remote', and the functions `ffap-file-at-point' and `ffap-url-at-point'. (fn &optional FILENAME)Fffap-menu Put up a menu of files and URLs mentioned in this buffer. Then set mark, jump to choice, and try to fetch it. The menu is cached in `ffap-menu-alist', and rebuilt by `ffap-menu-rescan'. The optional RESCAN argument (a prefix, interactively) forces a rebuild. Searches with `ffap-menu-regexp'. (fn &optional RESCAN)Fffap-at-mouse Find file or URL guessed from text around mouse click. Interactively, calls `ffap-at-mouse-fallback' if no guess is found. Return value: * if a guess string is found, return it (after finding it) * if the fallback is called, return whatever it returns * otherwise, nil (fn E)Fdired-at-point Start Dired, defaulting to file at point. See `ffap'. If `dired-at-point-require-prefix' is set, the prefix meaning is reversed. (fn &optional FILENAME)Fffap-guess-file-name-at-point Try to get a file name at point. This hook is intended to be put in `file-name-at-point-functions'. (fn)Fffap-bindings Evaluate the forms in variable `ffap-bindings'. (fn)Ffile-cache-add-directory Add all files in DIRECTORY to the file cache. If called from Lisp with a non-nil REGEXP argument is non-nil, only add files whose names match REGEXP. (fn DIRECTORY &optional REGEXP)Ffile-cache-add-directory-list Add DIRECTORIES (a list of directory names) to the file cache. If called interactively, read the directory names one by one. If the optional REGEXP argument is non-nil, only files which match it will be added to the cache. Note that the REGEXP is applied to the files in each directory, not to the directory list itself. (fn DIRECTORIES &optional REGEXP)Ffile-cache-add-file Add FILE to the file cache. (fn FILE)Ffile-cache-add-directory-using-find Use the `find' command to add files to the file cache. Find is run in DIRECTORY. (fn DIRECTORY)Ffile-cache-add-directory-using-locate Use the `locate' command to add files to the file cache. STRING is passed as an argument to the locate command. (fn STRING)Ffile-cache-add-directory-recursively Adds DIR and any subdirectories to the file-cache. This function does not use any external programs. If the optional REGEXP argument is non-nil, only files which match it will be added to the cache. Note that the REGEXP is applied to the files in each directory, not to the directory list itself. (fn DIR &optional REGEXP)Ffile-cache-minibuffer-complete Complete a filename in the minibuffer using a preloaded cache. Filecache does two kinds of substitution: it completes on names in the cache, and, once it has found a unique name, it cycles through the directories that the name is available in. With a prefix argument, the name is considered already unique; only the second substitution (directories) is done. (fn ARG)Ffile-notify-handle-event Handle file system monitoring event. If EVENT is a filewatch event, call its callback. It has the format (file-notify (DESCRIPTOR ACTIONS FILE [FILE1-OR-COOKIE]) CALLBACK) Otherwise, signal a `file-notify-error'. (fn EVENT)Fadd-file-local-variable Add file-local VARIABLE with its VALUE to the Local Variables list. This command deletes all existing settings of VARIABLE (except `mode' and `eval') and adds a new file-local VARIABLE with VALUE to the Local Variables list. If there is no Local Variables list in the current file buffer then this function adds the first line containing the string `Local Variables:' and the last line containing the string `End:'. (fn VARIABLE VALUE &optional INTERACTIVE)Fdelete-file-local-variable Delete all settings of file-local VARIABLE from the Local Variables list. (fn VARIABLE &optional INTERACTIVE)Fadd-file-local-variable-prop-line Add file-local VARIABLE with its VALUE to the -*- line. This command deletes all existing settings of VARIABLE (except `mode' and `eval') and adds a new file-local VARIABLE with VALUE to the -*- line. If there is no -*- line at the beginning of the current file buffer then this function adds it. (fn VARIABLE VALUE &optional INTERACTIVE)Fdelete-file-local-variable-prop-line Delete all settings of file-local VARIABLE from the -*- line. (fn VARIABLE &optional INTERACTIVE)Fadd-dir-local-variable Add directory-local VARIABLE with its VALUE and MODE to .dir-locals.el. (fn MODE VARIABLE VALUE)Fdelete-dir-local-variable Delete all MODE settings of file-local VARIABLE from .dir-locals.el. (fn MODE VARIABLE)Fcopy-file-locals-to-dir-locals Copy file-local variables to .dir-locals.el. (fn)Fcopy-dir-locals-to-file-locals Copy directory-local variables to the Local Variables list. (fn)Fcopy-dir-locals-to-file-locals-prop-line Copy directory-local variables to the -*- line. (fn)Venable-connection-local-variables Non-nil means enable use of connection-local variables.Fconnection-local-set-profiles Add PROFILES for CRITERIA. CRITERIA is a plist identifying a connection and the application using this connection, see `connection-local-criteria-alist'. PROFILES are the names of connection profiles (a symbol). When a connection to a remote server is opened and CRITERIA matches to that server, the connection-local variables from PROFILES are applied to the corresponding process buffer. The variables for a connection profile are defined using `connection-local-set-profile-variables'. (fn CRITERIA &rest PROFILES)Fconnection-local-set-profile-variables Map the symbol PROFILE to a list of variable settings. VARIABLES is a list that declares connection-local variables for the connection profile. An element in VARIABLES is an alist whose elements are of the form (VAR . VALUE). When a connection to a remote server is opened, the server's connection profiles are found. A server may be assigned a connection profile using `connection-local-set-profiles'. Then variables are set in the server's process buffer according to the VARIABLES list of the connection profile. The list is processed in order. (fn PROFILE VARIABLES)Fhack-connection-local-variables-apply Apply connection-local variables identified by CRITERIA. Other local variables, like file-local and dir-local variables, will not be changed. (fn CRITERIA)Fwith-connection-local-profiles Apply connection-local variables according to PROFILES in current buffer. Execute BODY, and unwind connection-local variables. (fn PROFILES &rest BODY)Ffilesets-init Filesets initialization. Set up hooks, load the cache file -- if existing -- and build the menu. (fn)Ffind-cmd Initiate the building of a find command. For example: (find-cmd \='(prune (name ".svn" ".git" ".CVS")) \='(and (or (name "*.pl" "*.pm" "*.t") (mtime "+1")) (fstype "nfs" "ufs")))) `default-directory' is used as the initial search path. The result is a string that should be ready for the command line. (fn &rest SUBFINDS)Ffind-dired Run `find' and go into Dired mode on a buffer of the output. The command run (after changing into DIR) is essentially find . \( ARGS \) -ls except that the car of the variable `find-ls-option' specifies what to use in place of "-ls" as the final argument. (fn DIR ARGS)Ffind-name-dired Search DIR recursively for files matching the globbing pattern PATTERN, and run Dired on those files. PATTERN is a shell wildcard (not an Emacs regexp) and need not be quoted. The default command run (after changing into DIR) is find . -name \='PATTERN\=' -ls See `find-name-arg' to customize the arguments. (fn DIR PATTERN)Ffind-grep-dired Find files in DIR that contain matches for REGEXP and start Dired on output. The command run (after changing into DIR) is find . \( -type f -exec `grep-program' `find-grep-options' \ -e REGEXP {} \; \) -ls where the first string in the value of the variable `find-ls-option' specifies what to use in place of "-ls" as the final argument. (fn DIR REGEXP)Vff-special-constructs List of special constructs recognized by `ff-treat-as-special'. Each element, tried in order, has the form (REGEXP . EXTRACT). If REGEXP matches the current line (from the beginning of the line), `ff-treat-as-special' calls function EXTRACT with no args. If EXTRACT returns nil, keep trying. Otherwise, return the filename that EXTRACT returned.Fff-get-other-file Find the header or source file corresponding to this file. See also the documentation for `ff-find-other-file'. If optional IN-OTHER-WINDOW is non-nil, find the file in another window. (fn &optional IN-OTHER-WINDOW)Fff-find-other-file Find the header or source file corresponding to this file. Being on a `#include' line pulls in that file. If optional IN-OTHER-WINDOW is non-nil, find the file in the other window. If optional IGNORE-INCLUDE is non-nil, ignore being on `#include' lines. Variables of interest include: - `ff-case-fold-search' Non-nil means ignore cases in matches (see `case-fold-search'). If you have extensions in different cases, you will want this to be nil. - `ff-always-in-other-window' If non-nil, always open the other file in another window, unless an argument is given to `ff-find-other-file'. - `ff-ignore-include' If non-nil, ignores #include lines. - `ff-always-try-to-create' If non-nil, always attempt to create the other file if it was not found. - `ff-quiet-mode' If non-nil, traces which directories are being searched. - `ff-special-constructs' A list of regular expressions specifying how to recognize special constructs such as include files etc, and an associated method for extracting the filename from that construct. - `ff-other-file-alist' Alist of extensions to find given the current file's extension. - `ff-search-directories' List of directories searched through with each extension specified in `ff-other-file-alist' that matches this file's extension. - `ff-pre-find-hook' List of functions to be called before the search for the file starts. - `ff-pre-load-hook' List of functions to be called before the other file is loaded. - `ff-post-load-hook' List of functions to be called after the other file is loaded. - `ff-not-found-hook' List of functions to be called if the other file could not be found. - `ff-file-created-hook' List of functions to be called if the other file has been created. (fn &optional IN-OTHER-WINDOW IGNORE-INCLUDE)Fff-mouse-find-other-file Visit the file you click on. (fn EVENT)Fff-mouse-find-other-file-other-window Visit the file you click on in another window. (fn EVENT)Ffind-library Find the Emacs Lisp source of LIBRARY. Interactively, prompt for LIBRARY using the one at or near point. (fn LIBRARY)Ffind-library-other-window Find the Emacs Lisp source of LIBRARY in another window. See `find-library' for more details. (fn LIBRARY)Ffind-library-other-frame Find the Emacs Lisp source of LIBRARY in another frame. See `find-library' for more details. (fn LIBRARY)Ffind-function-search-for-symbol Search for SYMBOL's definition of type TYPE in LIBRARY. Visit the library in a buffer, and return a cons cell (BUFFER . POSITION), or just (BUFFER . nil) if the definition can't be found in the file. If TYPE is nil, look for a function definition. Otherwise, TYPE specifies the kind of definition, and it is interpreted via `find-function-regexp-alist'. The search is done in the source for library LIBRARY. (fn SYMBOL TYPE LIBRARY)Ffind-function-noselect Return a pair (BUFFER . POINT) pointing to the definition of FUNCTION. Finds the source file containing the definition of FUNCTION in a buffer and the point of the definition. The buffer is not selected. If the function definition can't be found in the buffer, returns (BUFFER). If FUNCTION is a built-in function, this function normally attempts to find it in the Emacs C sources; however, if LISP-ONLY is non-nil, signal an error instead. If the file where FUNCTION is defined is not known, then it is searched for in `find-function-source-path' if non-nil, otherwise in `load-path'. (fn FUNCTION &optional LISP-ONLY)Ffind-function Find the definition of the FUNCTION near point. Finds the source file containing the definition of the function near point (selected by `function-called-at-point') in a buffer and places point before the definition. Set mark before moving, if the buffer already existed. The library where FUNCTION is defined is searched for in `find-function-source-path', if non-nil, otherwise in `load-path'. See also `find-function-recenter-line' and `find-function-after-hook'. (fn FUNCTION)Ffind-function-other-window Find, in another window, the definition of FUNCTION near point. See `find-function' for more details. (fn FUNCTION)Ffind-function-other-frame Find, in another frame, the definition of FUNCTION near point. See `find-function' for more details. (fn FUNCTION)Ffind-variable-noselect Return a pair `(BUFFER . POINT)' pointing to the definition of VARIABLE. Finds the library containing the definition of VARIABLE in a buffer and the point of the definition. The buffer is not selected. If the variable's definition can't be found in the buffer, return (BUFFER). The library where VARIABLE is defined is searched for in FILE or `find-function-source-path', if non-nil, otherwise in `load-path'. (fn VARIABLE &optional FILE)Ffind-variable Find the definition of the VARIABLE at or before point. Finds the library containing the definition of the variable near point (selected by `variable-at-point') in a buffer and places point before the definition. Set mark before moving, if the buffer already existed. The library where VARIABLE is defined is searched for in `find-function-source-path', if non-nil, otherwise in `load-path'. See also `find-function-recenter-line' and `find-function-after-hook'. (fn VARIABLE)Ffind-variable-other-window Find, in another window, the definition of VARIABLE near point. See `find-variable' for more details. (fn VARIABLE)Ffind-variable-other-frame Find, in another frame, the definition of VARIABLE near point. See `find-variable' for more details. (fn VARIABLE)Ffind-definition-noselect Return a pair `(BUFFER . POINT)' pointing to the definition of SYMBOL. If the definition can't be found in the buffer, return (BUFFER). TYPE says what type of definition: nil for a function, `defvar' for a variable, `defface' for a face. This function does not switch to the buffer nor display it. The library where SYMBOL is defined is searched for in FILE or `find-function-source-path', if non-nil, otherwise in `load-path'. (fn SYMBOL TYPE &optional FILE)Ffind-face-definition Find the definition of FACE. FACE defaults to the name near point. Finds the Emacs Lisp library containing the definition of the face near point (selected by `variable-at-point') in a buffer and places point before the definition. Set mark before moving, if the buffer already existed. The library where FACE is defined is searched for in `find-function-source-path', if non-nil, otherwise in `load-path'. See also `find-function-recenter-line' and `find-function-after-hook'. (fn FACE)Ffind-function-on-key Find the function that KEY invokes. KEY is a string. Set mark before moving, if the buffer already existed. (fn KEY)Ffind-function-on-key-other-window Find, in the other window, the function that KEY invokes. See `find-function-on-key'. (fn KEY)Ffind-function-on-key-other-frame Find, in the other frame, the function that KEY invokes. See `find-function-on-key'. (fn KEY)Ffind-function-at-point Find directly the function at point in the other window. (fn)Ffind-variable-at-point Find directly the variable at point in the other window. (fn)Ffind-function-setup-keys Define some key bindings for the find-function family of functions. (fn)Ffind-lisp-find-dired Find files in DIR, matching REGEXP. (fn DIR REGEXP)Ffind-lisp-find-dired-subdirectories Find all subdirectories of DIR. (fn DIR)Ffind-lisp-find-dired-filter Change the filter on a `find-lisp-find-dired' buffer to REGEXP. (fn REGEXP)Ffinder-list-keywords Display descriptions of the keywords in the Finder buffer. (fn)Ffinder-commentary Display FILE's commentary section. FILE should be in a form suitable for passing to `locate-library'. (fn FILE)Ffinder-by-keyword Find packages matching a given keyword. (fn)Fenable-flow-control Toggle flow control handling. When handling is enabled, user can type C-s as C-\, and C-q as C-^. With arg, enable flow control mode if arg is positive, otherwise disable. (fn &optional ARGUMENT)Fenable-flow-control-on Enable flow control if using one of a specified set of terminal types. Use `(enable-flow-control-on "vt100" "h19")' to enable flow control on VT-100 and H19 terminals. When flow control is enabled, you must type C-\ to get the effect of a C-s, and type C-^ to get the effect of a C-q. (fn &rest LOSING-TERMINAL-TYPES)Ffill-flowed-encode (fn &optional BUFFER)Ffill-flowed (fn &optional BUFFER DELETE-SPACE)Fflymake-log Log, at level LEVEL, the message MSG formatted with ARGS. LEVEL is passed to `display-warning', which is used to display the warning. If this form is included in a byte-compiled file, the generated warning contains an indication of the file that generated it. (fn LEVEL MSG &rest ARGS)Fflymake-make-diagnostic Make a Flymake diagnostic for BUFFER's region from BEG to END. TYPE is a key to `flymake-diagnostic-types-alist' and TEXT is a description of the problem detected in this region. (fn BUFFER BEG END TYPE TEXT)Fflymake-diagnostics Get Flymake diagnostics in region determined by BEG and END. If neither BEG or END is supplied, use the whole buffer, otherwise if BEG is non-nil and END is nil, consider only diagnostics at BEG. (fn &optional BEG END)Fflymake-diag-region Compute BUFFER's region (BEG . END) corresponding to LINE and COL. If COL is nil, return a region just for LINE. Return nil if the region is invalid. (fn BUFFER LINE &optional COL)Fflymake-mode Toggle Flymake mode on or off. With a prefix argument ARG, enable Flymake mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'. Flymake is an Emacs minor mode for on-the-fly syntax checking. Flymake collects diagnostic information from multiple sources, called backends, and visually annotates the buffer with the results. Flymake performs these checks while the user is editing. The customization variables `flymake-start-on-flymake-mode', `flymake-no-changes-timeout' and `flymake-start-syntax-check-on-newline' determine the exact circumstances whereupon Flymake decides to initiate a check of the buffer. The commands `flymake-goto-next-error' and `flymake-goto-prev-error' can be used to navigate among Flymake diagnostics annotated in the buffer. The visual appearance of each type of diagnostic can be changed in the variable `flymake-diagnostic-types-alist'. Activation or deactivation of backends used by Flymake in each buffer happens via the special hook `flymake-diagnostic-functions'. Some backends may take longer than others to respond or complete, and some may decide to disable themselves if they are not suitable for the current buffer. The commands `flymake-running-backends', `flymake-disabled-backends' and `flymake-reporting-backends' summarize the situation, as does the special *Flymake log* buffer. (fn &optional ARG)Fflymake-mode-on Turn Flymake mode on. (fn)Fflymake-mode-off Turn Flymake mode off. (fn)Fflyspell-prog-mode Turn on `flyspell-mode' for comments and strings. (fn)Fflyspell-mode Toggle on-the-fly spell checking (Flyspell mode). With a prefix argument ARG, enable Flyspell mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Flyspell mode is a buffer-local minor mode. When enabled, it spawns a single Ispell process and checks each word. The default flyspell behavior is to highlight incorrect words. Bindings: \[ispell-word]: correct words (using Ispell). \[flyspell-auto-correct-word]: automatically correct word. \[flyspell-auto-correct-previous-word]: automatically correct the last misspelled word. \[flyspell-correct-word] (or down-mouse-2): popup correct words. Hooks: This runs `flyspell-mode-hook' after flyspell mode is entered or exit. Remark: `flyspell-mode' uses `ispell-mode'. Thus all Ispell options are valid. For instance, a different dictionary can be used by invoking `ispell-change-dictionary'. Consider using the `ispell-parser' to check your text. For instance consider adding: (add-hook \='tex-mode-hook (function (lambda () (setq ispell-parser \='tex)))) in your init file. \[flyspell-region] checks all words inside a region. \[flyspell-buffer] checks the whole buffer. (fn &optional ARG)Fturn-on-flyspell Unconditionally turn on Flyspell mode. (fn)Fturn-off-flyspell Unconditionally turn off Flyspell mode. (fn)Fflyspell-mode-off Turn Flyspell mode off. (fn)Fflyspell-region Flyspell text between BEG and END. Make sure `flyspell-mode' is turned on if you want the highlight of a misspelled word removed when you've corrected it. (fn BEG END)Fflyspell-buffer Flyspell whole buffer. (fn)Fturn-on-follow-mode Turn on Follow mode. Please see the function `follow-mode'. (fn)Fturn-off-follow-mode Turn off Follow mode. Please see the function `follow-mode'. (fn)Ffollow-mode Toggle Follow mode. With a prefix argument ARG, enable Follow mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Follow mode is a minor mode that combines windows into one tall virtual window. This is accomplished by two main techniques: * The windows always displays adjacent sections of the buffer. This means that whenever one window is moved, all the others will follow. (Hence the name Follow mode.) * Should point (cursor) end up outside a window, another window displaying that point is selected, if possible. This makes it possible to walk between windows using normal cursor movement commands. Follow mode comes to its prime when used on a large screen and two or more side-by-side windows are used. The user can, with the help of Follow mode, use these full-height windows as though they were one. Imagine yourself editing a large function, or section of text, and being able to use 144 or 216 lines instead of the normal 72... (your mileage may vary). To split one large window into two side-by-side windows, the commands `\[split-window-right]' or `\[follow-delete-other-windows-and-split]' can be used. Only windows displayed in the same frame follow each other. This command runs the normal hook `follow-mode-hook'. Keys specific to Follow mode: \{follow-mode-map} (fn &optional ARG)Ffollow-scroll-up-window Scroll text in a Follow mode window up by that window's size. The other windows in the window chain will scroll synchronously. If called with no ARG, the `next-screen-context-lines' last lines of the window will be visible after the scroll. If called with an argument, scroll ARG lines up. Negative ARG means scroll downward. Works like `scroll-up' when not in Follow mode. (fn &optional ARG)Ffollow-scroll-down-window Scroll text in a Follow mode window down by that window's size. The other windows in the window chain will scroll synchronously. If called with no ARG, the `next-screen-context-lines' top lines of the window in the chain will be visible after the scroll. If called with an argument, scroll ARG lines down. Negative ARG means scroll upward. Works like `scroll-down' when not in Follow mode. (fn &optional ARG)Ffollow-scroll-up Scroll text in a Follow mode window chain up. If called with no ARG, the `next-screen-context-lines' last lines of the bottom window in the chain will be visible in the top window. If called with an argument, scroll ARG lines up. Negative ARG means scroll downward. Works like `scroll-up' when not in Follow mode. (fn &optional ARG)Ffollow-scroll-down Scroll text in a Follow mode window chain down. If called with no ARG, the `next-screen-context-lines' top lines of the top window in the chain will be visible in the bottom window. If called with an argument, scroll ARG lines down. Negative ARG means scroll upward. Works like `scroll-down' when not in Follow mode. (fn &optional ARG)Ffollow-delete-other-windows-and-split Create two side by side windows and enter Follow mode. Execute this command to display as much as possible of the text in the selected window. All other windows, in the current frame, are deleted and the selected window is split in two side-by-side windows. Follow mode is activated, hence the two windows always will display two successive pages. (If one window is moved, the other one will follow.) If ARG is positive, the leftmost window is selected. If negative, the rightmost is selected. If ARG is nil, the leftmost window is selected if the original window is the first one in the frame. (fn &optional ARG)Ffootnote-mode Toggle Footnote mode. With a prefix argument ARG, enable Footnote mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Footnote mode is a buffer-local minor mode. If enabled, it provides footnote support for `message-mode'. To get started, play around with the following keys: \{footnote-minor-mode-map} (fn &optional ARG)Fforms-mode Major mode to visit files in a field-structured manner using a form. Commands: Equivalent keys in read-only mode: TAB forms-next-field TAB C-c TAB forms-next-field C-c < forms-first-record < C-c > forms-last-record > C-c ? describe-mode ? C-c C-k forms-delete-record C-c C-q forms-toggle-read-only q C-c C-o forms-insert-record C-c C-l forms-jump-record l C-c C-n forms-next-record n C-c C-p forms-prev-record p C-c C-r forms-search-reverse r C-c C-s forms-search-forward s C-c C-x forms-exit x (fn &optional PRIMARY)Fforms-find-file Visit a file in Forms mode. (fn FN)Fforms-find-file-other-window Visit a file in Forms mode in other window. (fn FN)Ffortran-mode Major mode for editing Fortran code in fixed format. For free format code, use `f90-mode'. \[fortran-indent-line] indents the current Fortran line correctly. Note that DO statements must not share a common CONTINUE. Type ;? or ;\[help-command] to display a list of built-in abbrevs for Fortran keywords. Key definitions: \{fortran-mode-map} Variables controlling indentation style and extra features: `fortran-comment-line-start' To use comments starting with `!', set this to the string "!". `fortran-do-indent' Extra indentation within DO blocks (default 3). `fortran-if-indent' Extra indentation within IF blocks (default 3). `fortran-structure-indent' Extra indentation within STRUCTURE, UNION, MAP and INTERFACE blocks. (default 3) `fortran-continuation-indent' Extra indentation applied to continuation statements (default 5). `fortran-comment-line-extra-indent' Amount of extra indentation for text in full-line comments (default 0). `fortran-comment-indent-style' How to indent the text in full-line comments. Allowed values are: nil don't change the indentation `fixed' indent to `fortran-comment-line-extra-indent' beyond the value of either `fortran-minimum-statement-indent-fixed' (fixed format) or `fortran-minimum-statement-indent-tab' (TAB format), depending on the continuation format in use. `relative' indent to `fortran-comment-line-extra-indent' beyond the indentation for a line of code. (default `fixed') `fortran-comment-indent-char' Single-character string to be inserted instead of space for full-line comment indentation (default " "). `fortran-minimum-statement-indent-fixed' Minimum indentation for statements in fixed format mode (default 6). `fortran-minimum-statement-indent-tab' Minimum indentation for statements in TAB format mode (default 9). `fortran-line-number-indent' Maximum indentation for line numbers (default 1). A line number will get less than this much indentation if necessary to avoid reaching column 5. `fortran-check-all-num-for-matching-do' Non-nil causes all numbered lines to be treated as possible "continue" statements (default nil). `fortran-blink-matching-if' Non-nil causes \[fortran-indent-line] on an ENDIF (or ENDDO) statement to blink on the matching IF (or DO [WHILE]). (default nil) `fortran-continuation-string' Single-character string to be inserted in column 5 of a continuation line (default "$"). `fortran-comment-region' String inserted by \[fortran-comment-region] at start of each line in the region (default "c$$$"). `fortran-electric-line-number' Non-nil causes line number digits to be moved to the correct column as typed (default t). `fortran-break-before-delimiters' Non-nil causes lines to be broken before delimiters (default t). Turning on Fortran mode calls the value of the variable `fortran-mode-hook' with no args, if that value is non-nil. (fn)Ffortune-add-fortune Add STRING to a fortune file FILE. Interactively, if called with a prefix argument, read the file name to use. Otherwise use the value of `fortune-file'. (fn STRING FILE)Ffortune-from-region Append the current region to a local fortune-like data file. Interactively, if called with a prefix argument, read the file name to use. Otherwise use the value of `fortune-file'. (fn BEG END FILE)Ffortune-compile Compile fortune file. If called with a prefix asks for the FILE to compile, otherwise uses the value of `fortune-file'. This currently cannot handle directories. (fn &optional FILE)Ffortune-to-signature Create signature from output of the fortune program. If called with a prefix asks for the FILE to choose the fortune from, otherwise uses the value of `fortune-file'. If you want to have fortune choose from a set of files in a directory, call interactively with prefix and choose the directory as the fortune-file. (fn &optional FILE)Ffortune-message Display a fortune cookie to the mini-buffer. If called with a prefix, it has the same behavior as `fortune'. Optional FILE is a fortune file from which a cookie will be selected. (fn &optional FILE)Ffortune Display a fortune cookie. If called with a prefix asks for the FILE to choose the fortune from, otherwise uses the value of `fortune-file'. If you want to have fortune choose from a set of files in a directory, call interactively with prefix and choose the directory as the fortune-file. (fn &optional FILE)Vframeset-session-filter-alist Minimum set of parameters to filter for live (on-session) framesets. DO NOT MODIFY. See `frameset-filter-alist' for a full description.Vframeset-persistent-filter-alist Parameters to filter for persistent framesets. DO NOT MODIFY. See `frameset-filter-alist' for a full description.Vframeset-filter-alist Alist of frame parameters and filtering functions. This alist is the default value of the FILTERS argument of `frameset-save' and `frameset-restore' (which see). Initially, `frameset-filter-alist' is set to, and shares the value of, `frameset-persistent-filter-alist'. You can override any item in this alist by `push'ing a new item onto it. If, for some reason, you intend to modify existing values, do (setq frameset-filter-alist (copy-tree frameset-filter-alist)) before changing anything. On saving, PARAMETERS is the parameter alist of each frame processed, and FILTERED is the parameter alist that gets saved to the frameset. On restoring, PARAMETERS is the parameter alist extracted from the frameset, and FILTERED is the resulting frame parameter alist used to restore the frame. Elements of `frameset-filter-alist' are conses (PARAM . ACTION), where PARAM is a parameter name (a symbol identifying a frame parameter), and ACTION can be: nil The parameter is copied to FILTERED. :never The parameter is never copied to FILTERED. :save The parameter is copied only when saving the frame. :restore The parameter is copied only when restoring the frame. FILTER A filter function. FILTER can be a symbol FILTER-FUN, or a list (FILTER-FUN ARGS...). FILTER-FUN is invoked with (apply FILTER-FUN CURRENT FILTERED PARAMETERS SAVING ARGS) where CURRENT A cons (PARAM . VALUE), where PARAM is the one being filtered and VALUE is its current value. FILTERED The resulting alist (so far). PARAMETERS The complete alist of parameters being filtered, SAVING Non-nil if filtering before saving state, nil if filtering before restoring it. ARGS Any additional arguments specified in the ACTION. FILTER-FUN is allowed to modify items in FILTERED, but no other arguments. It must return: nil Skip CURRENT (do not add it to FILTERED). t Add CURRENT to FILTERED as is. (NEW-PARAM . NEW-VALUE) Add this to FILTERED instead of CURRENT. Frame parameters not on this alist are passed intact, as if they were defined with ACTION = nil.Fframeset-frame-id Return the frame id of FRAME, if it has one; else, return nil. A frame id is a string that uniquely identifies a frame. It is persistent across `frameset-save' / `frameset-restore' invocations, and once assigned is never changed unless the same frame is duplicated (via `frameset-restore'), in which case the newest frame keeps the id and the old frame's is set to nil. (fn FRAME)Fframeset-frame-id-equal-p Return non-nil if FRAME's id matches ID. (fn FRAME ID)Fframeset-frame-with-id Return the live frame with id ID, if exists; else nil. If FRAME-LIST is a list of frames, check these frames only. If nil, check all live frames. (fn ID &optional FRAME-LIST)Fframeset-save Return a frameset for FRAME-LIST, a list of frames. Dead frames and non-frame objects are silently removed from the list. If nil, FRAME-LIST defaults to the output of `frame-list' (all live frames). APP, NAME and DESCRIPTION are optional data; see the docstring of the `frameset' defstruct for details. FILTERS is an alist of parameter filters; if nil, the value of the variable `frameset-filter-alist' is used instead. PREDICATE is a predicate function, which must return non-nil for frames that should be saved; if PREDICATE is nil, all frames from FRAME-LIST are saved. PROPERTIES is a user-defined property list to add to the frameset. (fn FRAME-LIST &key APP NAME DESCRIPTION FILTERS PREDICATE PROPERTIES)Fframeset-restore Restore a FRAMESET into the current display(s). PREDICATE is a function called with two arguments, the parameter alist and the window-state of the frame being restored, in that order (see the docstring of the `frameset' defstruct for additional details). If PREDICATE returns nil, the frame described by that parameter alist and window-state is not restored. FILTERS is an alist of parameter filters; if nil, the value of `frameset-filter-alist' is used instead. REUSE-FRAMES selects the policy to reuse frames when restoring: t All existing frames can be reused. nil No existing frame can be reused. match Only frames with matching frame ids can be reused. PRED A predicate function; it receives as argument a live frame, and must return non-nil to allow reusing it, nil otherwise. FORCE-DISPLAY can be: t Frames are restored in the current display. nil Frames are restored, if possible, in their original displays. delete Frames in other displays are deleted instead of restored. PRED A function called with two arguments, the parameter alist and the window state (in that order). It must return t, nil or `delete', as above but affecting only the frame that will be created from that parameter alist. FORCE-ONSCREEN can be: t Force onscreen only those frames that are fully offscreen. nil Do not force any frame back onscreen. all Force onscreen any frame fully or partially offscreen. PRED A function called with three arguments, - the live frame just restored, - a list (LEFT TOP WIDTH HEIGHT), describing the frame, - a list (LEFT TOP WIDTH HEIGHT), describing the workarea. It must return non-nil to force the frame onscreen, nil otherwise. CLEANUP-FRAMES allows "cleaning up" the frame list after restoring a frameset: t Delete all frames that were not created or restored upon. nil Keep all frames. FUNC A function called with two arguments: - FRAME, a live frame. - ACTION, which can be one of :rejected Frame existed, but was not a candidate for reuse. :ignored Frame existed, was a candidate, but wasn't reused. :reused Frame existed, was a candidate, and restored upon. :created Frame didn't exist, was created and restored upon. Return value is ignored. Note the timing and scope of the operations described above: REUSE-FRAMES affects existing frames; PREDICATE, FILTERS and FORCE-DISPLAY affect the frame being restored before that happens; FORCE-ONSCREEN affects the frame once it has been restored; and CLEANUP-FRAMES affects all frames alive after the restoration, including those that have been reused or created anew. All keyword parameters default to nil. (fn FRAMESET &key PREDICATE FILTERS REUSE-FRAMES FORCE-DISPLAY FORCE-ONSCREEN CLEANUP-FRAMES)Fframeset--jump-to-register Restore frameset from DATA stored in register. Called from `jump-to-register'. Internal use only. (fn DATA)Fframeset--print-register Print basic info about frameset stored in DATA. Called from `list-registers' and `view-register'. Internal use only. (fn DATA)Fframeset-to-register Store the current frameset in register REGISTER. Use \[jump-to-register] to restore the frameset. Argument is a character, naming the register. Interactively, reads the register using `register-read-with-preview'. (fn REGISTER)Vgdb-enable-debug Non-nil if Gdb-Enable-Debug mode is enabled. See the `gdb-enable-debug' command for a description of this minor mode.Fgdb-enable-debug Toggle logging of transaction between Emacs and Gdb. The log is stored in `gdb-debug-log' as an alist with elements whose cons is send, send-item or recv and whose cdr is the string being transferred. This list may grow up to a size of `gdb-debug-log-max' after which the oldest element (at the end of the list) is deleted every time a new one is added (at the front). (fn &optional ARG)Fgdb Run gdb passing it COMMAND-LINE as arguments. If COMMAND-LINE names a program FILE to debug, gdb will run in a buffer named *gud-FILE*, and the directory containing FILE becomes the initial working directory and source-file directory for your debugger. If COMMAND-LINE requests that gdb attaches to a process PID, gdb will run in *gud-PID*, otherwise it will run in *gud*; in these cases the initial working directory is the default-directory of the buffer in which this command was invoked. COMMAND-LINE should include "-i=mi" to use gdb's MI text interface. Note that the old "--annotate" option is no longer supported. If option `gdb-many-windows' is nil (the default value) then gdb just pops up the GUD buffer unless `gdb-show-main' is t. In this case it starts with two windows: one displaying the GUD buffer and the other with the source file with the main routine of the inferior. If option `gdb-many-windows' is t, regardless of the value of `gdb-show-main', the layout below will appear. Keybindings are shown in some of the buffers. Watch expressions appear in the speedbar/slowbar. The following commands help control operation : `gdb-many-windows' - Toggle the number of windows gdb uses. `gdb-restore-windows' - To restore the window layout. See Info node `(emacs)GDB Graphical Interface' for a more detailed description of this mode. +----------------------------------------------------------------------+ | GDB Toolbar | +-----------------------------------+----------------------------------+ | GUD buffer (I/O of GDB) | Locals buffer | | | | | | | | | | +-----------------------------------+----------------------------------+ | Source buffer | I/O buffer (of debugged program) | | | (comint-mode) | | | | | | | | | | | | | | | | | | | +-----------------------------------+----------------------------------+ | Stack buffer | Breakpoints buffer | | RET gdb-select-frame | SPC gdb-toggle-breakpoint | | | RET gdb-goto-breakpoint | | | D gdb-delete-breakpoint | +-----------------------------------+----------------------------------+ (fn COMMAND-LINE)Vgeneric-mode-list A list of mode names for `generic-mode'. Do not add entries to this list directly; use `define-generic-mode' instead (which see).Fdefine-generic-mode Create a new generic mode MODE. MODE is the name of the command for the generic mode; don't quote it. The optional DOCSTRING is the documentation for the mode command. If you do not supply it, `define-generic-mode' uses a default documentation string instead. COMMENT-LIST is a list in which each element is either a character, a string of one or two characters, or a cons cell. A character or a string is set up in the mode's syntax table as a "comment starter". If the entry is a cons cell, the `car' is set up as a "comment starter" and the `cdr' as a "comment ender". (Use nil for the latter if you want comments to end at the end of the line.) Note that the syntax table has limitations about what comment starters and enders are actually possible. KEYWORD-LIST is a list of keywords to highlight with `font-lock-keyword-face'. Each keyword should be a string. FONT-LOCK-LIST is a list of additional expressions to highlight. Each element of this list should have the same form as an element of `font-lock-keywords'. AUTO-MODE-LIST is a list of regular expressions to add to `auto-mode-alist'. These regular expressions are added when Emacs runs the macro expansion. FUNCTION-LIST is a list of functions to call to do some additional setup. The mode command calls these functions just before it runs the mode hook `MODE-hook'. See the file generic-x.el for some examples of `define-generic-mode'. (fn MODE COMMENT-LIST KEYWORD-LIST FONT-LOCK-LIST AUTO-MODE-LIST FUNCTION-LIST &optional DOCSTRING)Fgeneric-mode-internal Go into the generic mode MODE. (fn MODE COMMENT-LIST KEYWORD-LIST FONT-LOCK-LIST FUNCTION-LIST)Fgeneric-mode Enter generic mode MODE. Generic modes provide basic comment and font-lock functionality for "generic" files. (Files which are too small to warrant their own mode, but have comment characters, keywords, and the like.) To define a generic-mode, use the function `define-generic-mode'. Some generic modes are defined in `generic-x.el'. (fn MODE)Fgeneric-make-keywords-list Return a `font-lock-keywords' construct that highlights KEYWORD-LIST. KEYWORD-LIST is a list of keyword strings that should be highlighted with face FACE. This function calculates a regular expression that matches these keywords and concatenates it with PREFIX and SUFFIX. Then it returns a construct based on this regular expression that can be used as an element of `font-lock-keywords'. (fn KEYWORD-LIST FACE &optional PREFIX SUFFIX)Fglasses-mode Minor mode for making identifiers likeThis readable. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When this mode is active, it tries to add virtual separators (like underscores) at places they belong to. (fn &optional ARG)Fgmm-regexp-concat Potentially concat a list of regexps into a single one. The concatenation is done with logical ORs. (fn REGEXP)Fgmm-message If LEVEL is lower than `gmm-verbose' print ARGS using `message'. Guideline for numbers: 1 - error messages 3 - non-serious error messages 5 - messages for things that take a long time 7 - not very important messages on stuff 9 - messages inside loops. (fn LEVEL &rest ARGS)Fgmm-error Beep an error if LEVEL is equal to or less than `gmm-verbose'. ARGS are passed to `message'. (fn LEVEL &rest ARGS)Fgmm-widget-p Non-nil if SYMBOL is a widget. (fn SYMBOL)Fgmm-tool-bar-from-list Make a tool bar from ICON-LIST. Within each entry of ICON-LIST, the first element is a menu command, the second element is an icon file name and the third element is a test function. You can use \[describe-key] <menu-entry> to find out the name of a menu command. The fourth and all following elements are passed as the PROPS argument to the function `tool-bar-local-item'. If ZAP-LIST is a list, remove those item from the default `tool-bar-map'. If it is t, start with a new sparse map. You can use \[describe-key] <icon> to find out the name of an icon item. When \[describe-key] <icon> shows "<tool-bar> <new-file> runs the command find-file", then use `new-file' in ZAP-LIST. DEFAULT-MAP specifies the default key map for ICON-LIST. (fn ICON-LIST ZAP-LIST DEFAULT-MAP)Fgnus-slave-no-server Read network news as a slave, without connecting to the local server. (fn &optional ARG)Fgnus-no-server Read network news. If ARG is a positive number, Gnus will use that as the startup level. If ARG is nil, Gnus will be started at level 2. If ARG is non-nil and not a positive number, Gnus will prompt the user for the name of an NNTP server to use. As opposed to `gnus', this command will not connect to the local server. (fn &optional ARG SLAVE)Fgnus-slave Read news as a slave. (fn &optional ARG)Fgnus-other-frame Pop up a frame to read news. This will call one of the Gnus commands which is specified by the user option `gnus-other-frame-function' (default `gnus') with the argument ARG if Gnus is not running, otherwise pop up a Gnus frame and run the command specified by `gnus-other-frame-resume-function'. The optional second argument DISPLAY should be a standard display string such as "unix:0" to specify where to pop up a frame. If DISPLAY is omitted or the function `make-frame-on-display' is not available, the current display is used. (fn &optional ARG DISPLAY)Fgnus Read network news. If ARG is non-nil and a positive number, Gnus will use that as the startup level. If ARG is non-nil and not a positive number, Gnus will prompt the user for the name of an NNTP server to use. (fn &optional ARG DONT-CONNECT SLAVE)Fgnus-unplugged Start Gnus unplugged. (fn)Fgnus-plugged Start Gnus plugged. (fn)Fgnus-slave-unplugged Read news as a slave unplugged. (fn &optional ARG)Fgnus-agentize Allow Gnus to be an offline newsreader. The gnus-agentize function is now called internally by gnus when gnus-agent is set. If you wish to avoid calling gnus-agentize, customize gnus-agent to nil. This will modify the `gnus-setup-news-hook', and `message-send-mail-real-function' variables, and install the Gnus agent minor mode in all Gnus buffers. (fn)Fgnus-agent-possibly-save-gcc Save GCC if Gnus is unplugged. (fn)Fgnus-agent-rename-group Rename fully-qualified OLD-GROUP as NEW-GROUP. Always updates the agent, even when disabled, as the old agent files would corrupt gnus when the agent was next enabled. Depends upon the caller to determine whether group renaming is supported. (fn OLD-GROUP NEW-GROUP)Fgnus-agent-delete-group Delete fully-qualified GROUP. Always updates the agent, even when disabled, as the old agent files would corrupt gnus when the agent was next enabled. Depends upon the caller to determine whether group deletion is supported. (fn GROUP)Fgnus-agent-get-undownloaded-list Construct list of articles that have not been downloaded. (fn)Fgnus-agent-possibly-alter-active Possibly expand a group's active range to include articles downloaded into the agent. (fn GROUP ACTIVE &optional INFO)Fgnus-agent-find-parameter Search for GROUPs SYMBOL in the group's parameters, the group's topic parameters, the group's category, or the customizable variables. Returns the first non-nil value found. (fn GROUP SYMBOL)Fgnus-agent-batch-fetch Start Gnus and fetch session. (fn)Fgnus-agent-batch Start Gnus, send queue and fetch session. (fn)Fgnus-agent-regenerate Regenerate all agent covered files. CLEAN is obsolete and ignored. (fn &optional CLEAN REREAD)Fgnus-article-prepare-display Make the current buffer look like a nice article. (fn)Fgnus-bookmark-set Set a bookmark for this article. (fn)Fgnus-bookmark-jump Jump to a Gnus bookmark (BMK-NAME). (fn &optional BMK-NAME)Fgnus-bookmark-bmenu-list Display a list of existing Gnus bookmarks. The list is displayed in a buffer named `*Gnus Bookmark List*'. The leftmost column displays a D if the bookmark is flagged for deletion, or > if it is flagged for displaying. (fn)Fgnus-jog-cache Go through all groups and put the articles into the cache. Usage: $ emacs -batch -l ~/.emacs -l gnus -f gnus-jog-cache (fn)Fgnus-cache-generate-active Generate the cache active file. (fn &optional DIRECTORY)Fgnus-cache-generate-nov-databases Generate NOV files recursively starting in DIR. (fn DIR)Fgnus-cache-rename-group Rename OLD-GROUP as NEW-GROUP. Always updates the cache, even when disabled, as the old cache files would corrupt Gnus when the cache was next enabled. It depends on the caller to determine whether group renaming is supported. (fn OLD-GROUP NEW-GROUP)Fgnus-cache-delete-group Delete GROUP from the cache. Always updates the cache, even when disabled, as the old cache files would corrupt gnus when the cache was next enabled. Depends upon the caller to determine whether group deletion is supported. (fn GROUP)Fgnus-delay-article Delay this article by some time. DELAY is a string, giving the length of the time. Possible values are: * <digits><units> for <units> in minutes (`m'), hours (`h'), days (`d'), weeks (`w'), months (`M'), or years (`Y'); * YYYY-MM-DD for a specific date. The time of day is given by the variable `gnus-delay-default-hour', minute and second are zero. * hh:mm for a specific time. Use 24h format. If it is later than this time, then the deadline is tomorrow, else today. (fn DELAY)Fgnus-delay-send-queue Send all the delayed messages that are due now. (fn)Fgnus-delay-initialize Initialize the gnus-delay package. This sets up a key binding in `message-mode' to delay a message. This tells Gnus to look for delayed messages after getting new news. The optional arg NO-KEYMAP is ignored. Checking delayed messages is skipped if optional arg NO-CHECK is non-nil. (fn &optional NO-KEYMAP NO-CHECK)Fgnus-user-format-function-d (fn HEADER)Fgnus-user-format-function-D (fn HEADER)Fturn-on-gnus-dired-mode Convenience method to turn on gnus-dired-mode. (fn)Fgnus-draft-reminder Reminder user if there are unsent drafts. (fn)Fgnus--random-face-with-type Return file from DIR with extension EXT, omitting matches of OMIT, processed by FUN. (fn DIR EXT OMIT FUN)Fgnus-random-x-face Return X-Face header data chosen randomly from `gnus-x-face-directory'. Files matching `gnus-x-face-omit-files' are not considered. (fn)Fgnus-insert-random-x-face-header Insert a random X-Face header from `gnus-x-face-directory'. (fn)Fgnus-x-face-from-file Insert an X-Face header based on an image FILE. Depending on `gnus-convert-image-to-x-face-command' it may accept different input formats. (fn FILE)Fgnus-face-from-file Return a Face header based on an image FILE. Depending on `gnus-convert-image-to-face-command' it may accept different input formats. (fn FILE)Fgnus-convert-face-to-png Convert FACE (which is base64-encoded) to a PNG. The PNG is returned as a string. (fn FACE)Fgnus-convert-png-to-face Convert FILE to a Face. FILE should be a PNG file that's 48x48 and smaller than or equal to 726 bytes. (fn FILE)Fgnus-random-face Return randomly chosen Face from `gnus-face-directory'. Files matching `gnus-face-omit-files' are not considered. (fn)Fgnus-insert-random-face-header Insert a random Face header from `gnus-face-directory'. (fn)Fgnus-treat-from-gravatar Display gravatar in the From header. If gravatar is already displayed, remove it. (fn &optional FORCE)Fgnus-treat-mail-gravatar Display gravatars in the Cc and To headers. If gravatars are already displayed, remove them. (fn &optional FORCE)Fgnus-fetch-group Start Gnus if necessary and enter GROUP. If ARTICLES, display those articles. Returns whether the fetching was successful or not. (fn GROUP &optional ARTICLES)Fgnus-fetch-group-other-frame Pop up a frame and enter GROUP. (fn GROUP)Fgnus-article-html (fn &optional HANDLE)Fgnus-html-prefetch-images (fn SUMMARY)Fgnus-batch-score Run batched scoring. Usage: emacs -batch -l ~/.emacs -l gnus -f gnus-batch-score (fn)Fturn-on-gnus-mailing-list-mode (fn)Fgnus-mailing-list-insinuate Setup group parameters from List-Post header. If FORCE is non-nil, replace the old ones. (fn &optional FORCE)Fgnus-mailing-list-mode Minor mode for providing mailing-list commands. \{gnus-mailing-list-mode-map} (fn &optional ARG)Fgnus-group-split-setup Set up the split for `nnmail-split-fancy'. Sets things up so that nnmail-split-fancy is used for mail splitting, and defines the variable nnmail-split-fancy according with group parameters. If AUTO-UPDATE is non-nil (prefix argument accepted, if called interactively), it makes sure nnmail-split-fancy is re-computed before getting new mail, by adding `gnus-group-split-update' to `nnmail-pre-get-new-mail-hook'. A non-nil CATCH-ALL replaces the current value of `gnus-group-split-default-catch-all-group'. This variable is only used by gnus-group-split-update, and only when its CATCH-ALL argument is nil. This argument may contain any fancy split, that will be added as the last split in a `|' split produced by `gnus-group-split-fancy', unless overridden by any group marked as a catch-all group. Typical uses are as simple as the name of a default mail group, but more elaborate fancy splits may also be useful to split mail that doesn't match any of the group-specified splitting rules. See `gnus-group-split-fancy' for details. (fn &optional AUTO-UPDATE CATCH-ALL)Fgnus-group-split-update Computes nnmail-split-fancy from group params and CATCH-ALL. It does this by calling (gnus-group-split-fancy nil nil CATCH-ALL). If CATCH-ALL is nil, `gnus-group-split-default-catch-all-group' is used instead. This variable is set by `gnus-group-split-setup'. (fn &optional CATCH-ALL)Fgnus-group-split Use information from group parameters in order to split mail. See `gnus-group-split-fancy' for more information. `gnus-group-split' is a valid value for `nnmail-split-methods'. (fn)Fgnus-group-split-fancy Uses information from group parameters in order to split mail. It can be embedded into `nnmail-split-fancy' lists with the SPLIT (: gnus-group-split-fancy GROUPS NO-CROSSPOST CATCH-ALL) GROUPS may be a regular expression or a list of group names, that will be used to select candidate groups. If it is omitted or nil, all existing groups are considered. if NO-CROSSPOST is omitted or nil, a & split will be returned, otherwise, a | split, that does not allow crossposting, will be returned. For each selected group, a SPLIT is composed like this: if SPLIT-SPEC is specified, this split is returned as-is (unless it is nil: in this case, the group is ignored). Otherwise, if TO-ADDRESS, TO-LIST and/or EXTRA-ALIASES are specified, a regexp that matches any of them is constructed (extra-aliases may be a list). Additionally, if SPLIT-REGEXP is specified, the regexp will be extended so that it matches this regexp too, and if SPLIT-EXCLUDE is specified, RESTRICT clauses will be generated. If CATCH-ALL is nil, no catch-all handling is performed, regardless of catch-all marks in group parameters. Otherwise, if there is no selected group whose SPLIT-REGEXP matches the empty string, nor is there a selected group whose SPLIT-SPEC is `catch-all', this fancy split (say, a group name) will be appended to the returned SPLIT list, as the last element of a `|' SPLIT. For example, given the following group parameters: nnml:mail.bar: ((to-address . "bar@femail.com") (split-regexp . ".*@femail\\.com")) nnml:mail.foo: ((to-list . "foo@nowhere.gov") (extra-aliases "foo@localhost" "foo-redist@home") (split-exclude "bugs-foo" "rambling-foo") (admin-address . "foo-request@nowhere.gov")) nnml:mail.others: ((split-spec . catch-all)) Calling (gnus-group-split-fancy nil nil "mail.others") returns: (| (& (any "\\(bar@femail\\.com\\|.*@femail\\.com\\)" "mail.bar") (any "\\(foo@nowhere\\.gov\\|foo@localhost\\|foo-redist@home\\)" - "bugs-foo" - "rambling-foo" "mail.foo")) "mail.others") (fn &optional GROUPS NO-CROSSPOST CATCH-ALL)Fgnus-msg-mail Start editing a mail message to be sent. Like `message-mail', but with Gnus paraphernalia, particularly the Gcc: header for archiving purposes. If Gnus isn't running, a plain `message-mail' setup is used instead. (fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-ACTION YANK-ACTION SEND-ACTIONS RETURN-ACTION)Fgnus-button-mailto Mail to ADDRESS. (fn ADDRESS)Fgnus-button-reply Like `message-reply'. (fn &optional TO-ADDRESS WIDE)Fgnus-notifications Send a notification on new message. This check for new messages that are in group with a level lower or equal to `gnus-notifications-minimum-level' and send a notification using `notifications-notify' for it. This is typically a function to add in `gnus-after-getting-new-news-hook' (fn)Fgnus-treat-from-picon Display picons in the From header. If picons are already displayed, remove them. (fn)Fgnus-treat-mail-picon Display picons in the Cc and To headers. If picons are already displayed, remove them. (fn)Fgnus-treat-newsgroups-picon Display picons in the Newsgroups and Followup-To headers. If picons are already displayed, remove them. (fn)Fgnus-sorted-difference Return a list of elements of LIST1 that do not appear in LIST2. Both lists have to be sorted over <. The tail of LIST1 is not copied. (fn LIST1 LIST2)Fgnus-sorted-ndifference Return a list of elements of LIST1 that do not appear in LIST2. Both lists have to be sorted over <. LIST1 is modified. (fn LIST1 LIST2)Fgnus-sorted-complement Return a list of elements that are in LIST1 or LIST2 but not both. Both lists have to be sorted over <. (fn LIST1 LIST2)Fgnus-intersection (fn LIST1 LIST2)Fgnus-sorted-intersection Return intersection of LIST1 and LIST2. LIST1 and LIST2 have to be sorted over <. (fn LIST1 LIST2)Fgnus-sorted-range-intersection Return intersection of RANGE1 and RANGE2. RANGE1 and RANGE2 have to be sorted over <. (fn RANGE1 RANGE2)Fgnus-sorted-nintersection Return intersection of LIST1 and LIST2 by modifying cdr pointers of LIST1. LIST1 and LIST2 have to be sorted over <. (fn LIST1 LIST2)Fgnus-sorted-union Return union of LIST1 and LIST2. LIST1 and LIST2 have to be sorted over <. (fn LIST1 LIST2)Fgnus-sorted-nunion Return union of LIST1 and LIST2 by modifying cdr pointers of LIST1. LIST1 and LIST2 have to be sorted over <. (fn LIST1 LIST2)Fgnus-add-to-sorted-list Add NUM into sorted LIST by side effect. (fn LIST NUM)Fgnus-registry-initialize Initialize the Gnus registry. (fn)Fgnus-registry-install-hooks Install the registry hooks. (fn)Fgnus-sieve-update Update the Sieve script in gnus-sieve-file, by replacing the region between gnus-sieve-region-start and gnus-sieve-region-end with (gnus-sieve-script gnus-sieve-select-method gnus-sieve-crosspost), then execute gnus-sieve-update-shell-command. See the documentation for these variables and functions for details. (fn)Fgnus-sieve-generate Generate the Sieve script in gnus-sieve-file, by replacing the region between gnus-sieve-region-start and gnus-sieve-region-end with (gnus-sieve-script gnus-sieve-select-method gnus-sieve-crosspost). See the documentation for these variables and functions for details. (fn)Fgnus-sieve-article-add-rule (fn)Fgnus-update-format Update the format specification near point. (fn VAR)Fgnus-declare-backend Declare back end NAME with ABILITIES as a Gnus back end. (fn NAME &rest ABILITIES)Fgnus-summary-bookmark-jump Handler function for record returned by `gnus-summary-bookmark-make-record'. BOOKMARK is a bookmark name or a bookmark record. (fn BOOKMARK)Fgnus-add-configuration Add the window configuration CONF to `gnus-buffer-configuration'. (fn CONF)Vgnutls-min-prime-bits Minimum number of prime bits accepted by GnuTLS for key exchange. During a Diffie-Hellman handshake, if the server sends a prime number with fewer than this number of bits, the handshake is rejected. (The smaller the prime number, the less secure the key exchange is against man-in-the-middle attacks.) A value of nil says to use the default GnuTLS value. The default value of this variable is such that virtually any connection can be established, whether this connection can be considered cryptographically "safe" or not. However, Emacs network security is handled at a higher level via `open-network-stream' and the Network Security Manager. See Info node `(emacs) Network Security'.Fgomoku Start a Gomoku game between you and Emacs. If a game is in progress, this command allows you to resume it. If optional arguments N and M are given, an N by M board is used. If prefix arg is given for N, M is prompted for. You and Emacs play in turn by marking a free square. You mark it with X and Emacs marks it with O. The winner is the first to get five contiguous marks horizontally, vertically or in diagonal. You play by moving the cursor over the square you choose and hitting \<gomoku-mode-map>\[gomoku-human-plays]. This program actually plays a simplified or archaic version of the Gomoku game, and ought to be upgraded to use the full modern rules. Use \[describe-mode] for more info. (fn &optional N M)Fgoto-address-at-point Send to the e-mail address or load the URL at point. Send mail to address at point. See documentation for `goto-address-find-address-at-point'. If no address is found there, then load the URL at or before point. (fn &optional EVENT)Fgoto-address Sets up goto-address functionality in the current buffer. Allows user to use mouse/keyboard command to click to go to a URL or to send e-mail. By default, goto-address binds `goto-address-at-point' to mouse-2 and C-c RET only on URLs and e-mail addresses. Also fontifies the buffer appropriately (see `goto-address-fontify-p' and `goto-address-highlight-p' for more information). (fn)Fgoto-address-mode Minor mode to buttonize URLs and e-mail addresses in the current buffer. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Fgoto-address-prog-mode Like `goto-address-mode', but only for comments and strings. (fn &optional ARG)Fgravatar-retrieve Asynchronously retrieve a gravatar for MAIL-ADDRESS. When finished, call CB as (apply CB GRAVATAR CBARGS), where GRAVATAR is either an image descriptor, or the symbol `error' if the retrieval failed. (fn MAIL-ADDRESS CB &optional CBARGS)Fgravatar-retrieve-synchronously Synchronously retrieve a gravatar for MAIL-ADDRESS. Value is either an image descriptor, or the symbol `error' if the retrieval failed. (fn MAIL-ADDRESS)Vgrep-window-height Number of lines in a grep window. If nil, use `compilation-window-height'.Vgrep-command The default grep command for \[grep]. If the grep program used supports an option to always include file names in its output (such as the `-H' option to GNU grep), it's a good idea to include it when specifying `grep-command'. In interactive usage, the actual value of this variable is set up by `grep-compute-defaults'; to change the default value, use Customize or call the function `grep-apply-setting'.Vgrep-find-command The default find command for \[grep-find]. In interactive usage, the actual value of this variable is set up by `grep-compute-defaults'; to change the default value, use Customize or call the function `grep-apply-setting'.Vgrep-setup-hook List of hook functions run by `grep-process-setup' (see `run-hooks').Vgrep-regexp-alist Regexp used to match grep hits. See `compilation-error-regexp-alist' for format details.Vgrep-program The default grep program for `grep-command' and `grep-find-command'. This variable's value takes effect when `grep-compute-defaults' is called.Vfind-program The default find program. This is used by commands like `grep-find-command', `find-dired' and others.Vxargs-program The default xargs program for `grep-find-command'. See `grep-find-use-xargs'. This variable's value takes effect when `grep-compute-defaults' is called.Vgrep-find-use-xargs How to invoke find and grep. If `exec', use `find -exec {} ;'. If `exec-plus' use `find -exec {} +'. If `gnu', use `find -print0' and `xargs -0'. Any other value means to use `find -print' and `xargs'. This variable's value takes effect when `grep-compute-defaults' is called.Vgrep-history History list for grep.Vgrep-find-history History list for grep-find.Fgrep-process-setup Setup compilation variables and buffer for `grep'. Set up `compilation-exit-message-function' and run `grep-setup-hook'. (fn)Fgrep-compute-defaults (fn)Fgrep-mode Sets `grep-last-buffer' and `compilation-window-height'. (fn)Fgrep Run Grep with user-specified COMMAND-ARGS, collect output in a buffer. While Grep runs asynchronously, you can use \[next-error] (M-x next-error), or \<grep-mode-map>\[compile-goto-error] in the *grep* buffer, to go to the lines where Grep found matches. To kill the Grep job before it finishes, type \[kill-compilation]. Noninteractively, COMMAND-ARGS should specify the Grep command-line arguments. For doing a recursive `grep', see the `rgrep' command. For running Grep in a specific directory, see `lgrep'. This command uses a special history list for its COMMAND-ARGS, so you can easily repeat a grep command. A prefix argument says to default the COMMAND-ARGS based on the current tag the cursor is over, substituting it into the last Grep command in the Grep command history (or into `grep-command' if that history list is empty). (fn COMMAND-ARGS)Fgrep-find Run grep via find, with user-specified args COMMAND-ARGS. Collect output in a buffer. While find runs asynchronously, you can use the \[next-error] command to find the text that grep hits refer to. This command uses a special history list for its arguments, so you can easily repeat a find command. (fn COMMAND-ARGS)Flgrep Run grep, searching for REGEXP in FILES in directory DIR. The search is limited to file names matching shell pattern FILES. FILES may use abbreviations defined in `grep-files-aliases', e.g. entering `ch' is equivalent to `*.[ch]'. As whitespace triggers completion when entering a pattern, including it requires quoting, e.g. `\[quoted-insert]<space>'. With \[universal-argument] prefix, you can edit the constructed shell command line before it is executed. With two \[universal-argument] prefixes, directly edit and run `grep-command'. Collect output in a buffer. While grep runs asynchronously, you can use \[next-error] (M-x next-error), or \<grep-mode-map>\[compile-goto-error] in the grep output buffer, to go to the lines where grep found matches. This command shares argument histories with \[rgrep] and \[grep]. (fn REGEXP &optional FILES DIR CONFIRM)Frgrep Recursively grep for REGEXP in FILES in directory tree rooted at DIR. The search is limited to file names matching shell pattern FILES. FILES may use abbreviations defined in `grep-files-aliases', e.g. entering `ch' is equivalent to `*.[ch]'. As whitespace triggers completion when entering a pattern, including it requires quoting, e.g. `\[quoted-insert]<space>'. With \[universal-argument] prefix, you can edit the constructed shell command line before it is executed. With two \[universal-argument] prefixes, directly edit and run `grep-find-command'. Collect output in a buffer. While the recursive grep is running, you can use \[next-error] (M-x next-error), or \<grep-mode-map>\[compile-goto-error] in the grep output buffer, to visit the lines where matches were found. To kill the job before it finishes, type \[kill-compilation]. This command shares argument histories with \[lgrep] and \[grep-find]. When called programmatically and FILES is nil, REGEXP is expected to specify a command to run. (fn REGEXP &optional FILES DIR CONFIRM)Fzrgrep Recursively grep for REGEXP in gzipped FILES in tree rooted at DIR. Like `rgrep' but uses `zgrep' for `grep-program', sets the default file name to `*.gz', and sets `grep-highlight-matches' to `always'. (fn REGEXP &optional FILES DIR CONFIRM TEMPLATE)Fgud-gdb Run gdb passing it COMMAND-LINE as arguments. If COMMAND-LINE names a program FILE to debug, gdb will run in a buffer named *gud-FILE*, and the directory containing FILE becomes the initial working directory and source-file directory for your debugger. If COMMAND-LINE requests that gdb attaches to a process PID, gdb will run in *gud-PID*, otherwise it will run in *gud*; in these cases the initial working directory is the default-directory of the buffer in which this command was invoked. (fn COMMAND-LINE)Fsdb Run sdb on program FILE in buffer *gud-FILE*. The directory containing FILE becomes the initial working directory and source-file directory for your debugger. (fn COMMAND-LINE)Fdbx Run dbx on program FILE in buffer *gud-FILE*. The directory containing FILE becomes the initial working directory and source-file directory for your debugger. (fn COMMAND-LINE)Fxdb Run xdb on program FILE in buffer *gud-FILE*. The directory containing FILE becomes the initial working directory and source-file directory for your debugger. You can set the variable `gud-xdb-directories' to a list of program source directories if your program contains sources from more than one directory. (fn COMMAND-LINE)Fperldb Run perldb on program FILE in buffer *gud-FILE*. The directory containing FILE becomes the initial working directory and source-file directory for your debugger. (fn COMMAND-LINE)Fpdb Run pdb on program FILE in buffer `*gud-FILE*'. The directory containing FILE becomes the initial working directory and source-file directory for your debugger. (fn COMMAND-LINE)Fguiler Run guiler on program FILE in buffer `*gud-FILE*'. The directory containing FILE becomes the initial working directory and source-file directory for your debugger. (fn COMMAND-LINE)Fjdb Run jdb with command line COMMAND-LINE in a buffer. The buffer is named "*gud*" if no initial class is given or "*gud-<initial-class-basename>*" if there is. If the "-classpath" switch is given, omit all whitespace between it and its value. See `gud-jdb-use-classpath' and `gud-jdb-classpath' documentation for information on how jdb accesses source files. Alternatively (if `gud-jdb-use-classpath' is nil), see `gud-jdb-directories' for the original source file access method. For general information about commands available to control jdb from gud, see `gud-mode'. (fn COMMAND-LINE)Fgdb-script-mode Major mode for editing GDB scripts. (fn)Vgud-tooltip-mode Non-nil if Gud-Tooltip mode is enabled. See the `gud-tooltip-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `gud-tooltip-mode'.Fgud-tooltip-mode Toggle the display of GUD tooltips. With a prefix argument ARG, enable the feature if ARG is positive, and disable it otherwise. If called from Lisp, enable it if ARG is omitted or nil. (fn &optional ARG)Fgv-get Build the code that applies DO to PLACE. PLACE must be a valid generalized variable. DO must be a function; it will be called with 2 arguments: GETTER and SETTER, where GETTER is a (copyable) Elisp expression that returns the value of PLACE, and SETTER is a function which returns the code to set PLACE when called with a (not necessarily copyable) Elisp expression that returns the value to set it to. DO must return an Elisp expression. (fn PLACE DO)Fgv-letplace Build the code manipulating the generalized variable PLACE. GETTER will be bound to a copyable expression that returns the value of PLACE. SETTER will be bound to a function that takes an expression V and returns a new expression that sets PLACE to V. BODY should return some Elisp expression E manipulating PLACE via GETTER and SETTER. The returned value will then be an Elisp expression that first evaluates all the parts of PLACE that can be evaluated and then runs E. (fn (GETTER SETTER) PLACE &rest BODY)Fgv-define-expander Use HANDLER to handle NAME as a generalized var. NAME is a symbol: the name of a function, macro, or special form. HANDLER is a function which takes an argument DO followed by the same arguments as NAME. DO is a function as defined in `gv-get'. (fn NAME HANDLER)Fgv--defun-declaration (fn SYMBOL NAME ARGS HANDLER &optional FIX)Fgv-define-setter Define a setter method for generalized variable NAME. This macro is an easy-to-use substitute for `gv-define-expander' that works well for simple place forms. Assignments of VAL to (NAME ARGS...) are expanded by binding the argument forms (VAL ARGS...) according to ARGLIST, then executing BODY, which must return a Lisp form that does the assignment. The first arg in ARGLIST (the one that receives VAL) receives an expression which can do arbitrary things, whereas the other arguments are all guaranteed to be pure and copyable. Example use: (gv-define-setter aref (v a i) \=`(aset ,a ,i ,v)) (fn NAME ARGLIST &rest BODY)Fgv-define-simple-setter Define a simple setter method for generalized variable NAME. This macro is an easy-to-use substitute for `gv-define-expander' that works well for simple place forms. Assignments of VAL to (NAME ARGS...) are turned into calls of the form (SETTER ARGS... VAL). If FIX-RETURN is non-nil, then SETTER is not assumed to return VAL and instead the assignment is turned into something equivalent to (let ((temp VAL)) (SETTER ARGS... temp) temp) so as to preserve the semantics of `setf'. (fn NAME SETTER &optional FIX-RETURN)Fsetf Set each PLACE to the value of its VAL. This is a generalized version of `setq'; the PLACEs may be symbolic references such as (car x) or (aref x i), as well as plain symbols. For example, (setf (cadr x) y) is equivalent to (setcar (cdr x) y). The return value is the last VAL in the list. (fn PLACE VAL PLACE VAL ...)Fgv-ref Return a reference to PLACE. This is like the `&' operator of the C language. Note: this only works reliably with lexical binding mode, except for very simple PLACEs such as (symbol-function \='foo) which will also work in dynamic binding mode. (fn PLACE)Fhandwrite Turns the buffer into a "handwritten" document. The functions `handwrite-10pt', `handwrite-11pt', `handwrite-12pt' and `handwrite-13pt' set up for various sizes of output. Variables: `handwrite-linespace' (default 12) `handwrite-fontsize' (default 11) `handwrite-numlines' (default 60) `handwrite-pagenumbering' (default nil) (fn)Fhanoi Towers of Hanoi diversion. Use NRINGS rings. (fn NRINGS)Fhanoi-unix Towers of Hanoi, UNIX doomsday version. Displays 32-ring towers that have been progressing at one move per second since 1970-01-01 00:00:00 GMT. Repent before ring 31 moves. (fn)Fhanoi-unix-64 Like hanoi-unix, but pretend to have a 64-bit clock. This is, necessarily (as of Emacs 20.3), a crock. When the current-time interface is made s2G-compliant, hanoi.el will need to be updated. (fn)Fhashcash-insert-payment Insert X-Payment and X-Hashcash headers with a payment for ARG (fn ARG)Fhashcash-insert-payment-async Insert X-Payment and X-Hashcash headers with a payment for ARG Only start calculation. Results are inserted when ready. (fn ARG)Fhashcash-verify-payment Verify a hashcash payment (fn TOKEN &optional RESOURCE AMOUNT)Fmail-add-payment Add X-Payment: and X-Hashcash: headers with a hashcash payment for each recipient address. Prefix arg sets default payment temporarily. Set ASYNC to t to start asynchronous calculation. (See `mail-add-payment-async'). (fn &optional ARG ASYNC)Fmail-add-payment-async Add X-Payment: and X-Hashcash: headers with a hashcash payment for each recipient address. Prefix arg sets default payment temporarily. Calculation is asynchronous. (fn &optional ARG)Fmail-check-payment Look for a valid X-Payment: or X-Hashcash: header. Prefix arg sets default accept amount temporarily. (fn &optional ARG)Fhelp-at-pt-string Return the help-echo string at point. Normally, the string produced by the `help-echo' text or overlay property, or nil, is returned. If KBD is non-nil, `kbd-help' is used instead, and any `help-echo' property is ignored. In this case, the return value can also be t, if that is the value of the `kbd-help' property. (fn &optional KBD)Fhelp-at-pt-kbd-string Return the keyboard help string at point. If the `kbd-help' text or overlay property at point produces a string, return it. Otherwise, use the `help-echo' property. If this produces no string either, return nil. (fn)Fdisplay-local-help Display local help in the echo area. This displays a short help message, namely the string produced by the `kbd-help' property at point. If `kbd-help' does not produce a string, but the `help-echo' property does, then that string is printed instead. A numeric argument ARG prevents display of a message in case there is no help. While ARG can be used interactively, it is mainly meant for use from Lisp. (fn &optional ARG)Fhelp-at-pt-cancel-timer Cancel any timer set by `help-at-pt-set-timer'. This disables `help-at-pt-display-when-idle'. (fn)Fhelp-at-pt-set-timer Enable `help-at-pt-display-when-idle'. This is done by setting a timer, if none is currently active. (fn)Vhelp-at-pt-display-when-idle Automatically show local help on point-over. If the value is t, the string obtained from any `kbd-help' or `help-echo' property at point is automatically printed in the echo area, if nothing else is already displayed there, or after a quit. If both `kbd-help' and `help-echo' produce help strings, `kbd-help' is used. If the value is a list, the help only gets printed if there is a text or overlay property at point that is included in this list. Suggested properties are `keymap', `local-map', `button' and `kbd-help'. Any value other than t or a non-empty list disables the feature. This variable only takes effect after a call to `help-at-pt-set-timer'. The help gets printed after Emacs has been idle for `help-at-pt-timer-delay' seconds. You can call `help-at-pt-cancel-timer' to cancel the timer set by, and the effect of, `help-at-pt-set-timer'. When this variable is set through Custom, `help-at-pt-set-timer' is called automatically, unless the value is `never', in which case `help-at-pt-cancel-timer' is called. Specifying an empty list of properties through Custom will set the timer, thus enabling buffer local values. It sets the actual value to nil. Thus, Custom distinguishes between a nil value and other values that disable the feature, which Custom identifies with `never'. The default is `never'.Fscan-buf-move-to-region Go to the start of the next region with non-nil PROP property. Then run HOOK, which should be a quoted symbol that is a normal hook variable, or an expression evaluating to such a symbol. Adjacent areas with different non-nil PROP properties are considered different regions. With numeric argument ARG, move to the start of the ARGth next such region, then run HOOK. If ARG is negative, move backward. If point is already in a region, then that region does not count toward ARG. If ARG is 0 and point is inside a region, move to the start of that region. If ARG is 0 and point is not in a region, print a message to that effect, but do not move point and do not run HOOK. If there are not enough regions to move over, an error results and the number of available regions is mentioned in the error message. Point is not moved and HOOK is not run. (fn PROP &optional ARG HOOK)Fscan-buf-next-region Go to the start of the next region with non-nil help-echo. Print the help found there using `display-local-help'. Adjacent areas with different non-nil help-echo properties are considered different regions. With numeric argument ARG, move to the start of the ARGth next help-echo region. If ARG is negative, move backward. If point is already in a help-echo region, then that region does not count toward ARG. If ARG is 0 and point is inside a help-echo region, move to the start of that region. If ARG is 0 and point is not in such a region, just print a message to that effect. If there are not enough regions to move over, an error results and the number of available regions is mentioned in the error message. A potentially confusing subtlety is that point can be in a help-echo region without any local help being available. This is because `help-echo' can be a function evaluating to nil. This rarely happens in practice. (fn &optional ARG)Fscan-buf-previous-region Go to the start of the previous region with non-nil help-echo. Print the help found there using `display-local-help'. Adjacent areas with different non-nil help-echo properties are considered different regions. With numeric argument ARG, behaves like `scan-buf-next-region' with argument -ARG. (fn &optional ARG)Fdescribe-function Display the full documentation of FUNCTION (a symbol). When called from lisp, FUNCTION may also be a function object. (fn FUNCTION)Fhelp-C-file-name Return the name of the C file where SUBR-OR-VAR is defined. KIND should be `var' for a variable or `subr' for a subroutine. (fn SUBR-OR-VAR KIND)Ffind-lisp-object-file-name Guess the file that defined the Lisp object OBJECT, of type TYPE. OBJECT should be a symbol associated with a function, variable, or face; alternatively, it can be a function definition. If TYPE is `defvar', search for a variable definition. If TYPE is `defface', search for a face definition. If TYPE is not a symbol, search for a function definition. The return value is the absolute name of a readable file where OBJECT is defined. If several such files exist, preference is given to a file found via `load-path'. The return value can also be `C-source', which means that OBJECT is a function or variable defined in C. If no suitable file is found, return nil. (fn OBJECT TYPE)Fdescribe-function-1 (fn FUNCTION)Fvariable-at-point Return the bound variable symbol found at or before point. Return 0 if there is no such symbol. If ANY-SYMBOL is non-nil, don't insist the symbol be bound. (fn &optional ANY-SYMBOL)Fdescribe-variable Display the full documentation of VARIABLE (a symbol). Returns the documentation as a string, also. If VARIABLE has a buffer-local value in BUFFER or FRAME (default to the current buffer and current frame), it is displayed along with the global value. (fn VARIABLE &optional BUFFER FRAME)Fdescribe-symbol Display the full documentation of SYMBOL. Will show the info of SYMBOL as a function, variable, and/or face. Optional arguments BUFFER and FRAME specify for which buffer and frame to show the information about SYMBOL; they default to the current buffer and the selected frame, respectively. (fn SYMBOL &optional BUFFER FRAME)Fdescribe-syntax Describe the syntax specifications in the syntax table of BUFFER. The descriptions are inserted in a help buffer, which is then displayed. BUFFER defaults to the current buffer. (fn &optional BUFFER)Fdescribe-categories Describe the category specifications in the current category table. The descriptions are inserted in a buffer, which is then displayed. If BUFFER is non-nil, then describe BUFFER's category table instead. BUFFER should be a buffer or a buffer name. (fn &optional BUFFER)Fdoc-file-to-man Produce an nroff buffer containing the doc-strings from the DOC file. (fn FILE)Fdoc-file-to-info Produce a texinfo buffer with sorted doc-strings from the DOC file. (fn FILE)Vthree-step-help Non-nil means give more info about Help command in three steps. The three steps are simple prompt, prompt with all options, and window listing and describing the options. A value of nil means skip the middle step, so that \[help-command] \[help-command] gives the window that lists the options.Fhelp-mode Major mode for viewing help text and navigating references in it. Entry to this mode runs the normal hook `help-mode-hook'. Commands: \{help-mode-map} (fn)Fhelp-mode-setup Enter Help Mode in the current buffer. (fn)Fhelp-mode-finish Finalize Help Mode setup in current buffer. (fn)Fhelp-setup-xref Invoked from commands using the "*Help*" buffer to install some xref info. ITEM is a (FUNCTION . ARGS) pair appropriate for recreating the help buffer after following a reference. INTERACTIVE-P is non-nil if the calling command was invoked interactively. In this case the stack of items for help buffer "back" buttons is cleared. This should be called very early, before the output buffer is cleared, because we want to record the "previous" position of point so we can restore it properly when going back. (fn ITEM INTERACTIVE-P)Fhelp-buffer Return the name of a buffer for inserting help. If `help-xref-following' is non-nil, this is the name of the current buffer. Signal an error if this buffer is not derived from `help-mode'. Otherwise, return "*Help*", creating a buffer with that name if it does not already exist. (fn)Fhelp-make-xrefs Parse and hyperlink documentation cross-references in the given BUFFER. Find cross-reference information in a buffer and activate such cross references for selection with `help-follow'. Cross-references have the canonical form `...' and the type of reference may be disambiguated by the preceding word(s) used in `help-xref-symbol-regexp'. Faces only get cross-referenced if preceded or followed by the word `face'. Variables without variable documentation do not get cross-referenced, unless preceded by the word `variable' or `option'. If the variable `help-xref-mule-regexp' is non-nil, find also cross-reference information related to multilingual environment (e.g., coding-systems). This variable is also used to disambiguate the type of reference as the same way as `help-xref-symbol-regexp'. A special reference `back' is made to return back through a stack of help buffers. Variable `help-back-label' specifies the text for that. (fn &optional BUFFER)Fhelp-xref-button Make a hyperlink for cross-reference text previously matched. MATCH-NUMBER is the subexpression of interest in the last matched regexp. TYPE is the type of button to use. Any remaining arguments are passed to the button's help-function when it is invoked. See `help-make-xrefs'. (fn MATCH-NUMBER TYPE &rest ARGS)Fhelp-insert-xref-button Insert STRING and make a hyperlink from cross-reference text on it. TYPE is the type of button to use. Any remaining arguments are passed to the button's help-function when it is invoked. See `help-make-xrefs'. (fn STRING TYPE &rest ARGS)Fhelp-xref-on-pp Add xrefs for symbols in `pp's output between FROM and TO. (fn FROM TO)Fhelp-bookmark-jump Jump to help-mode bookmark BOOKMARK. Handler function for record returned by `help-bookmark-make-record'. BOOKMARK is a bookmark name or a bookmark record. (fn BOOKMARK)FHelper-describe-bindings Describe local key bindings of current mode. (fn)FHelper-help Provide help for current mode. (fn)Fhexl-mode \<hexl-mode-map>A mode for editing binary files in hex dump format. This is not an ordinary major mode; it alters some aspects of the current mode's behavior, but not all; also, you can exit Hexl mode and return to the previous mode using `hexl-mode-exit'. This function automatically converts a buffer into the hexl format using the function `hexlify-buffer'. Each line in the buffer has an "address" (displayed in hexadecimal) representing the offset into the file that the characters on this line are at and 16 characters from the file (displayed as hexadecimal values grouped every `hexl-bits' bits, and as their ASCII values). If any of the characters (displayed as ASCII characters) are unprintable (control or meta characters) they will be replaced by periods. If `hexl-mode' is invoked with an argument the buffer is assumed to be in hexl format. A sample format: HEX ADDR: 0011 2233 4455 6677 8899 aabb ccdd eeff ASCII-TEXT -------- ---- ---- ---- ---- ---- ---- ---- ---- ---------------- 00000000: 5468 6973 2069 7320 6865 786c 2d6d 6f64 This is hexl-mod 00000010: 652e 2020 4561 6368 206c 696e 6520 7265 e. Each line re 00000020: 7072 6573 656e 7473 2031 3620 6279 7465 presents 16 byte 00000030: 7320 6173 2068 6578 6164 6563 696d 616c s as hexadecimal 00000040: 2041 5343 4949 0a61 6e64 2070 7269 6e74 ASCII.and print 00000050: 6162 6c65 2041 5343 4949 2063 6861 7261 able ASCII chara 00000060: 6374 6572 732e 2020 416e 7920 636f 6e74 cters. Any cont 00000070: 726f 6c20 6f72 206e 6f6e 2d41 5343 4949 rol or non-ASCII 00000080: 2063 6861 7261 6374 6572 730a 6172 6520 characters.are 00000090: 6469 7370 6c61 7965 6420 6173 2070 6572 displayed as per 000000a0: 696f 6473 2069 6e20 7468 6520 7072 696e iods in the prin 000000b0: 7461 626c 6520 6368 6172 6163 7465 7220 table character 000000c0: 7265 6769 6f6e 2e0a region.. Movement is as simple as movement in a normal Emacs text buffer. Most cursor movement bindings are the same: use \[hexl-backward-char], \[hexl-forward-char], \[hexl-next-line], and \[hexl-previous-line] to move the cursor left, right, down, and up. Advanced cursor movement commands (ala \[hexl-beginning-of-line], \[hexl-end-of-line], \[hexl-beginning-of-buffer], and \[hexl-end-of-buffer]) are also supported. There are several ways to change text in hexl mode: ASCII characters (character between space (0x20) and tilde (0x7E)) are bound to self-insert so you can simply type the character and it will insert itself (actually overstrike) into the buffer. \[hexl-quoted-insert] followed by another keystroke allows you to insert the key even if it isn't bound to self-insert. An octal number can be supplied in place of another key to insert the octal number's ASCII representation. \[hexl-insert-hex-char] will insert a given hexadecimal value (if it is between 0 and 0xFF) into the buffer at the current point. \[hexl-insert-octal-char] will insert a given octal value (if it is between 0 and 0377) into the buffer at the current point. \[hexl-insert-decimal-char] will insert a given decimal value (if it is between 0 and 255) into the buffer at the current point. \[hexl-mode-exit] will exit `hexl-mode'. Note: saving the file with any of the usual Emacs commands will actually convert it back to binary format while saving. You can use \[hexl-find-file] to visit a file in Hexl mode. \[describe-bindings] for advanced commands. (fn &optional ARG)Fhexl-find-file Edit file FILENAME as a binary file in hex dump format. Switch to a buffer visiting file FILENAME, creating one if none exists, and edit the file in `hexl-mode'. (fn FILENAME)Fhexlify-buffer Convert a binary buffer to hexl format. This discards the buffer's undo information. (fn)Fhi-lock-mode Toggle selective highlighting of patterns (Hi Lock mode). With a prefix argument ARG, enable Hi Lock mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Hi Lock mode is automatically enabled when you invoke any of the highlighting commands listed below, such as \[highlight-regexp]. To enable Hi Lock mode in all buffers, use `global-hi-lock-mode' or add (global-hi-lock-mode 1) to your init file. In buffers where Font Lock mode is enabled, patterns are highlighted using font lock. In buffers where Font Lock mode is disabled, patterns are applied using overlays; in this case, the highlighting will not be updated as you type. When Hi Lock mode is enabled, a "Regexp Highlighting" submenu is added to the "Edit" menu. The commands in the submenu, which can be called interactively, are: \[highlight-regexp] REGEXP FACE Highlight matches of pattern REGEXP in current buffer with FACE. \[highlight-phrase] PHRASE FACE Highlight matches of phrase PHRASE in current buffer with FACE. (PHRASE can be any REGEXP, but spaces will be replaced by matches to whitespace and initial lower-case letters will become case insensitive.) \[highlight-lines-matching-regexp] REGEXP FACE Highlight lines containing matches of REGEXP in current buffer with FACE. \[highlight-symbol-at-point] Highlight the symbol found near point without prompting, using the next available face automatically. \[unhighlight-regexp] REGEXP Remove highlighting on matches of REGEXP in current buffer. \[hi-lock-write-interactive-patterns] Write active REGEXPs into buffer as comments (if possible). They may be read the next time file is loaded or when the \[hi-lock-find-patterns] command is issued. The inserted regexps are in the form of font lock keywords. (See `font-lock-keywords'.) They may be edited and re-loaded with \[hi-lock-find-patterns], any valid `font-lock-keywords' form is acceptable. When a file is loaded the patterns are read if `hi-lock-file-patterns-policy' is `ask' and the user responds y to the prompt, or if `hi-lock-file-patterns-policy' is bound to a function and that function returns t. \[hi-lock-find-patterns] Re-read patterns stored in buffer (in the format produced by \[hi-lock-write-interactive-patterns]). When hi-lock is started and if the mode is not excluded or patterns rejected, the beginning of the buffer is searched for lines of the form: Hi-lock: FOO where FOO is a list of patterns. The patterns must start before position (number of characters into buffer) `hi-lock-file-patterns-range'. Patterns will be read until Hi-lock: end is found. A mode is excluded if it's in the list `hi-lock-exclude-modes'. (fn &optional ARG)Vglobal-hi-lock-mode Non-nil if Global Hi-Lock mode is enabled. See the `global-hi-lock-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-hi-lock-mode'.Fglobal-hi-lock-mode Toggle Hi-Lock mode in all buffers. With prefix ARG, enable Global Hi-Lock mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Hi-Lock mode is enabled in all buffers where `turn-on-hi-lock-if-enabled' would do it. See `hi-lock-mode' for more information on Hi-Lock mode. (fn &optional ARG)Fhi-lock-line-face-buffer Highlight all lines that match REGEXP using FACE. The lines that match REGEXP will be displayed by merging the attributes of FACE with any other face attributes of text in those lines. Interactively, prompt for REGEXP using `read-regexp', then FACE. Use the global history list for FACE. Use Font lock mode, if enabled, to highlight REGEXP. Otherwise, use overlays for highlighting. If overlays are used, the highlighting will not update as you type. (fn REGEXP &optional FACE)Fhi-lock-face-buffer Set face of each match of REGEXP to FACE. Interactively, prompt for REGEXP using `read-regexp', then FACE. Use the global history list for FACE. Use Font lock mode, if enabled, to highlight REGEXP. Otherwise, use overlays for highlighting. If overlays are used, the highlighting will not update as you type. (fn REGEXP &optional FACE)Fhi-lock-face-phrase-buffer Set face of each match of phrase REGEXP to FACE. Interactively, prompt for REGEXP using `read-regexp', then FACE. Use the global history list for FACE. When called interactively, replace whitespace in user-provided regexp with arbitrary whitespace, and make initial lower-case letters case-insensitive, before highlighting with `hi-lock-set-pattern'. Use Font lock mode, if enabled, to highlight REGEXP. Otherwise, use overlays for highlighting. If overlays are used, the highlighting will not update as you type. (fn REGEXP &optional FACE)Fhi-lock-face-symbol-at-point Highlight each instance of the symbol at point. Uses the next face from `hi-lock-face-defaults' without prompting, unless you use a prefix argument. Uses `find-tag-default-as-symbol-regexp' to retrieve the symbol at point. This uses Font lock mode if it is enabled; otherwise it uses overlays, in which case the highlighting will not update as you type. (fn)Fhi-lock-unface-buffer Remove highlighting of each match to REGEXP set by hi-lock. Interactively, prompt for REGEXP, accepting only regexps previously inserted by hi-lock interactive functions. If REGEXP is t (or if \[universal-argument] was specified interactively), then remove all hi-lock highlighting. (fn REGEXP)Fhi-lock-write-interactive-patterns Write interactively added patterns, if any, into buffer at point. Interactively added patterns are those normally specified using `highlight-regexp' and `highlight-lines-matching-regexp'; they can be found in variable `hi-lock-interactive-patterns'. (fn)Fhide-ifdef-mode Toggle features to hide/show #ifdef blocks (Hide-Ifdef mode). With a prefix argument ARG, enable Hide-Ifdef mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Hide-Ifdef mode is a buffer-local minor mode for use with C and C-like major modes. When enabled, code within #ifdef constructs that the C preprocessor would eliminate may be hidden from view. Several variables affect how the hiding is done: `hide-ifdef-env' An association list of defined and undefined symbols for the current project. Initially, the global value of `hide-ifdef-env' is used. This variable was a buffer-local variable, which limits hideif to parse only one C/C++ file at a time. We've extended hideif to support parsing a C/C++ project containing multiple C/C++ source files opened simultaneously in different buffers. Therefore `hide-ifdef-env' can no longer be buffer local but must be global. `hide-ifdef-define-alist' An association list of defined symbol lists. Use `hide-ifdef-set-define-alist' to save the current `hide-ifdef-env' and `hide-ifdef-use-define-alist' to set the current `hide-ifdef-env' from one of the lists in `hide-ifdef-define-alist'. `hide-ifdef-lines' Set to non-nil to not show #if, #ifdef, #ifndef, #else, and #endif lines when hiding. `hide-ifdef-initially' Indicates whether `hide-ifdefs' should be called when Hide-Ifdef mode is activated. `hide-ifdef-read-only' Set to non-nil if you want to make buffers read only while hiding. After `show-ifdefs', read-only status is restored to previous value. \{hide-ifdef-mode-map} (fn &optional ARG)Vhs-special-modes-alist Alist for initializing the hideshow variables for different modes. Each element has the form (MODE START END COMMENT-START FORWARD-SEXP-FUNC ADJUST-BEG-FUNC). If non-nil, hideshow will use these values as regexps to define blocks and comments, respectively for major mode MODE. START, END and COMMENT-START are regular expressions. A block is defined as text surrounded by START and END. As a special case, START may be a list of the form (COMPLEX-START MDATA-SELECTOR), where COMPLEX-START is a regexp w/ multiple parts and MDATA-SELECTOR an integer that specifies which sub-match is the proper place to adjust point, before calling `hs-forward-sexp-func'. Point is adjusted to the beginning of the specified match. For example, see the `hs-special-modes-alist' entry for `bibtex-mode'. For some major modes, `forward-sexp' does not work properly. In those cases, FORWARD-SEXP-FUNC specifies another function to use instead. See the documentation for `hs-adjust-block-beginning' to see what is the use of ADJUST-BEG-FUNC. If any of the elements is left nil or omitted, hideshow tries to guess appropriate values. The regexps should not contain leading or trailing whitespace. Case does not matter.Fhs-minor-mode Minor mode to selectively hide/show code and comment blocks. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When hideshow minor mode is on, the menu bar is augmented with hideshow commands and the hideshow commands are enabled. The value (hs . t) is added to `buffer-invisibility-spec'. The main commands are: `hs-hide-all', `hs-show-all', `hs-hide-block', `hs-show-block', `hs-hide-level' and `hs-toggle-hiding'. There is also `hs-hide-initial-comment-block' and `hs-mouse-toggle-hiding'. Turning hideshow minor mode off reverts the menu bar and the variables to default values and disables the hideshow commands. Lastly, the normal hook `hs-minor-mode-hook' is run using `run-hooks'. Key bindings: \{hs-minor-mode-map} (fn &optional ARG)Fturn-off-hideshow Unconditionally turn off `hs-minor-mode'. (fn)Fhighlight-changes-mode Toggle highlighting changes in this buffer (Highlight Changes mode). With a prefix argument ARG, enable Highlight Changes mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Highlight Changes is enabled, changes are marked with a text property. Normally they are displayed in a distinctive face, but command \[highlight-changes-visible-mode] can be used to toggle this on and off. Other functions for buffers in this mode include: \[highlight-changes-next-change] - move point to beginning of next change \[highlight-changes-previous-change] - move to beginning of previous change \[highlight-changes-remove-highlight] - remove the change face from the region \[highlight-changes-rotate-faces] - rotate different "ages" of changes through various faces. \[highlight-compare-with-file] - mark text as changed by comparing this buffer with the contents of a file \[highlight-compare-buffers] highlights differences between two buffers. (fn &optional ARG)Fhighlight-changes-visible-mode Toggle visibility of highlighting due to Highlight Changes mode. With a prefix argument ARG, enable Highlight Changes Visible mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Highlight Changes Visible mode only has an effect when Highlight Changes mode is on. When enabled, the changed text is displayed in a distinctive face. The default value can be customized with variable `highlight-changes-visibility-initial-state'. This command does not itself set Highlight Changes mode. (fn &optional ARG)Fhighlight-changes-remove-highlight Remove the change face from the region between BEG and END. This allows you to manually remove highlighting from uninteresting changes. (fn BEG END)Fhighlight-changes-next-change Move to the beginning of the next change, if in Highlight Changes mode. (fn)Fhighlight-changes-previous-change Move to the beginning of the previous change, if in Highlight Changes mode. (fn)Fhighlight-changes-rotate-faces Rotate the faces if in Highlight Changes mode and the changes are visible. Current changes are displayed in the face described by the first element of `highlight-changes-face-list', one level older changes are shown in face described by the second element, and so on. Very old changes remain shown in the last face in the list. You can automatically rotate colors when the buffer is saved by adding this function to `write-file-functions' as a buffer-local value. To do this, eval the following in the buffer to be saved: (add-hook \='write-file-functions \='highlight-changes-rotate-faces nil t) (fn)Fhighlight-compare-buffers Compare two buffers and highlight the differences. The default is the current buffer and the one in the next window. If either buffer is modified and is visiting a file, you are prompted to save the file. Unless the buffer is unmodified and visiting a file, the buffer is written to a temporary file for comparison. If a buffer is read-only, differences will be highlighted but no property changes are made, so \[highlight-changes-next-change] and \[highlight-changes-previous-change] will not work. (fn BUF-A BUF-B)Fhighlight-compare-with-file Compare this buffer with a file, and highlight differences. If the buffer has a backup filename, it is used as the default when this function is called interactively. If the current buffer is visiting the file being compared against, it also will have its differences highlighted. Otherwise, the file is read in temporarily but the buffer is deleted. If the buffer is read-only, differences will be highlighted but no property changes are made, so \[highlight-changes-next-change] and \[highlight-changes-previous-change] will not work. (fn FILE-B)Vglobal-highlight-changes-mode Non-nil if Global Highlight-Changes mode is enabled. See the `global-highlight-changes-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-highlight-changes-mode'.Fglobal-highlight-changes-mode Toggle Highlight-Changes mode in all buffers. With prefix ARG, enable Global Highlight-Changes mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Highlight-Changes mode is enabled in all buffers where `highlight-changes-mode-turn-on' would do it. See `highlight-changes-mode' for more information on Highlight-Changes mode. (fn &optional ARG)Vhippie-expand-try-functions-list The list of expansion functions tried in order by `hippie-expand'. To change the behavior of `hippie-expand', remove, change the order of, or insert functions in this list.Fhippie-expand Try to expand text before point, using multiple methods. The expansion functions in `hippie-expand-try-functions-list' are tried in order, until a possible expansion is found. Repeated application of `hippie-expand' inserts successively possible expansions. With a positive numeric argument, jumps directly to the ARG next function in this list. With a negative argument or just \[universal-argument], undoes the expansion. (fn ARG)Fmake-hippie-expand-function Construct a function similar to `hippie-expand'. Make it use the expansion functions in TRY-LIST. An optional second argument VERBOSE non-nil makes the function verbose. (fn TRY-LIST &optional VERBOSE)Fhl-line-mode Toggle highlighting of the current line (Hl-Line mode). With a prefix argument ARG, enable Hl-Line mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Hl-Line mode is a buffer-local minor mode. If `hl-line-sticky-flag' is non-nil, Hl-Line mode highlights the line about the buffer's point in all windows. Caveat: the buffer's point might be different from the point of a non-selected window. Hl-Line mode uses the function `hl-line-highlight' on `post-command-hook' in this case. When `hl-line-sticky-flag' is nil, Hl-Line mode highlights the line about point in the selected window only. In this case, it uses the function `hl-line-maybe-unhighlight' in addition to `hl-line-highlight' on `post-command-hook'. (fn &optional ARG)Vglobal-hl-line-mode Non-nil if Global Hl-Line mode is enabled. See the `global-hl-line-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-hl-line-mode'.Fglobal-hl-line-mode Toggle line highlighting in all buffers (Global Hl-Line mode). With a prefix argument ARG, enable Global Hl-Line mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. If `global-hl-line-sticky-flag' is non-nil, Global Hl-Line mode highlights the line about the current buffer's point in all live windows. Global-Hl-Line mode uses the functions `global-hl-line-highlight' and `global-hl-line-maybe-unhighlight' on `post-command-hook'. (fn &optional ARG)Vholiday-general-holidays General holidays. Default value is for the United States. See the documentation for `calendar-holidays' for details.Vholiday-oriental-holidays Oriental holidays. See the documentation for `calendar-holidays' for details.Vholiday-local-holidays Local holidays. See the documentation for `calendar-holidays' for details.Vholiday-other-holidays User defined holidays. See the documentation for `calendar-holidays' for details.Vholiday-hebrew-holidays Jewish holidays. See the documentation for `calendar-holidays' for details.Vholiday-christian-holidays Christian holidays. See the documentation for `calendar-holidays' for details.Vholiday-islamic-holidays Islamic holidays. See the documentation for `calendar-holidays' for details.Vholiday-bahai-holidays Bahá’í holidays. See the documentation for `calendar-holidays' for details.Vholiday-solar-holidays Sun-related holidays. See the documentation for `calendar-holidays' for details.Fholidays Display the holidays for last month, this month, and next month. If called with an optional prefix argument ARG, prompts for month and year. This function is suitable for execution in an init file. (fn &optional ARG)Flist-holidays Display holidays for years Y1 to Y2 (inclusive). Y2 defaults to Y1. The optional list of holidays L defaults to `calendar-holidays'. If you want to control what holidays are displayed, use a different list. For example, (list-holidays 2006 2006 (append holiday-general-holidays holiday-local-holidays)) will display holidays for the year 2006 defined in the two mentioned lists, and nothing else. When called interactively, this command offers a choice of holidays, based on the variables `holiday-solar-holidays' etc. See the documentation of `calendar-holidays' for a list of the variables that control the choices, as well as a description of the format of a holiday list. The optional LABEL is used to label the buffer created. (fn Y1 &optional Y2 L LABEL)Fhtmlfontify-buffer Create a new buffer, named for the current buffer + a .html extension, containing an inline CSS-stylesheet and formatted CSS-markup HTML that reproduces the look of the current Emacs buffer as closely as possible. Dangerous characters in the existing buffer are turned into HTML entities, so you should even be able to do HTML-within-HTML fontified display. You should, however, note that random control or non-ASCII characters such as ^L (U+000C FORM FEED (FF)) or ¤ (U+00A4 CURRENCY SIGN) won't get mapped yet. If the SRCDIR and FILE arguments are set, lookup etags derived entries in the `hfy-tags-cache' and add HTML anchors and hyperlinks as appropriate. (fn &optional SRCDIR FILE)Fhtmlfontify-copy-and-link-dir Trawl SRCDIR and write fontified-and-hyperlinked output in DSTDIR. F-EXT and L-EXT specify values for `hfy-extn' and `hfy-link-extn'. You may also want to set `hfy-page-header' and `hfy-page-footer'. (fn SRCDIR DSTDIR &optional F-EXT L-EXT)Fdefine-ibuffer-column Define a column SYMBOL for use with `ibuffer-formats'. BODY will be called with `buffer' bound to the buffer object, and `mark' bound to the current mark on the buffer. The original ibuffer buffer will be bound to `ibuffer-buf'. If NAME is given, it will be used as a title for the column. Otherwise, the title will default to a capitalized version of the SYMBOL's name. PROPS is a plist of additional properties to add to the text, such as `mouse-face'. And SUMMARIZER, if given, is a function which will be passed a list of all the strings in its column; it should return a string to display at the bottom. If HEADER-MOUSE-MAP is given, it will be used as a keymap for the title of the column. Note that this macro expands into a `defun' for a function named ibuffer-make-column-NAME. If INLINE is non-nil, then the form will be inlined into the compiled format versions. This means that if you change its definition, you should explicitly call `ibuffer-recompile-formats'. (fn SYMBOL (&key NAME INLINE PROPS SUMMARIZER) &rest BODY)Fdefine-ibuffer-sorter Define a method of sorting named NAME. DOCUMENTATION is the documentation of the function, which will be called `ibuffer-do-sort-by-NAME'. DESCRIPTION is a short string describing the sorting method. For sorting, the forms in BODY will be evaluated with `a' bound to one buffer object, and `b' bound to another. BODY should return a non-nil value if and only if `a' is "less than" `b'. (fn NAME DOCUMENTATION (&key DESCRIPTION) &rest BODY)Fdefine-ibuffer-op Generate a function which operates on a buffer. OP becomes the name of the function; if it doesn't begin with `ibuffer-do-', then that is prepended to it. When an operation is performed, this function will be called once for each marked buffer, with that buffer current. ARGS becomes the formal parameters of the function. DOCUMENTATION becomes the docstring of the function. INTERACTIVE becomes the interactive specification of the function. MARK describes which type of mark (:deletion, or nil) this operation uses. :deletion means the function operates on buffers marked for deletion, otherwise it acts on normally marked buffers. MODIFIER-P describes how the function modifies buffers. This is used to set the modification flag of the Ibuffer buffer itself. Valid values are: nil - the function never modifiers buffers t - the function it always modifies buffers :maybe - attempt to discover this information by comparing the buffer's modification flag. DANGEROUS is a boolean which should be set if the user should be prompted before performing this operation. OPSTRING is a string which will be displayed to the user after the operation is complete, in the form: "Operation complete; OPSTRING x buffers" ACTIVE-OPSTRING is a string which will be displayed to the user in a confirmation message, in the form: "Really ACTIVE-OPSTRING x buffers?" BEFORE is a form to evaluate before start the operation. AFTER is a form to evaluate once the operation is complete. COMPLEX means this function is special; if COMPLEX is nil BODY evaluates once for each marked buffer, MBUF, with MBUF current and saving the point. If COMPLEX is non-nil, BODY evaluates without requiring MBUF current. BODY define the operation; they are forms to evaluate per each marked buffer. BODY is evaluated with `buf' bound to the buffer object. (fn OP ARGS DOCUMENTATION (&key INTERACTIVE MARK MODIFIER-P DANGEROUS OPSTRING ACTIVE-OPSTRING BEFORE AFTER COMPLEX) &rest BODY)Fdefine-ibuffer-filter Define a filter named NAME. DOCUMENTATION is the documentation of the function. READER is a form which should read a qualifier from the user. DESCRIPTION is a short string describing the filter. BODY should contain forms which will be evaluated to test whether or not a particular buffer should be displayed or not. The forms in BODY will be evaluated with BUF bound to the buffer object, and QUALIFIER bound to the current value of the filter. (fn NAME DOCUMENTATION (&key READER DESCRIPTION) &rest BODY)Fibuffer-list-buffers Display a list of buffers, in another window. If optional argument FILES-ONLY is non-nil, then add a filter for buffers which are visiting a file. (fn &optional FILES-ONLY)Fibuffer-other-window Like `ibuffer', but displayed in another window by default. If optional argument FILES-ONLY is non-nil, then add a filter for buffers which are visiting a file. (fn &optional FILES-ONLY)Fibuffer Begin using Ibuffer to edit a list of buffers. Type `h' after entering ibuffer for more information. All arguments are optional. OTHER-WINDOW-P says to use another window. NAME specifies the name of the buffer (defaults to "*Ibuffer*"). QUALIFIERS is an initial set of filtering qualifiers to use; see `ibuffer-filtering-qualifiers'. NOSELECT means don't select the Ibuffer buffer. SHRINK means shrink the buffer to minimal size. The special value `onewindow' means always use another window. FILTER-GROUPS is an initial set of filtering groups to use; see `ibuffer-filter-groups'. FORMATS is the value to use for `ibuffer-formats'. If specified, then the variable `ibuffer-formats' will have that value locally in this buffer. (fn &optional OTHER-WINDOW-P NAME QUALIFIERS NOSELECT SHRINK FILTER-GROUPS FORMATS)Fibuffer-jump Call Ibuffer and set point at the line listing the current buffer. If optional arg OTHER-WINDOW is non-nil, then use another window. (fn &optional OTHER-WINDOW)Ficalendar-export-file Export diary file to iCalendar format. All diary entries in the file DIARY-FILENAME are converted to iCalendar format. The result is appended to the file ICAL-FILENAME. (fn DIARY-FILENAME ICAL-FILENAME)Ficalendar-export-region Export region in diary file to iCalendar format. All diary entries in the region from MIN to MAX in the current buffer are converted to iCalendar format. The result is appended to the file ICAL-FILENAME. This function attempts to return t if something goes wrong. In this case an error string which describes all the errors and problems is written into the buffer `*icalendar-errors*'. (fn MIN MAX ICAL-FILENAME)Ficalendar-import-file Import an iCalendar file and append to a diary file. Argument ICAL-FILENAME output iCalendar file. Argument DIARY-FILENAME input `diary-file'. Optional argument NON-MARKING determines whether events are created as non-marking or not. (fn ICAL-FILENAME DIARY-FILENAME &optional NON-MARKING)Ficalendar-import-buffer Extract iCalendar events from current buffer. This function searches the current buffer for the first iCalendar object, reads it and adds all VEVENT elements to the diary DIARY-FILE. It will ask for each appointment whether to add it to the diary unless DO-NOT-ASK is non-nil. When called interactively, DO-NOT-ASK is nil, so that you are asked for each event. NON-MARKING determines whether diary events are created as non-marking. Return code t means that importing worked well, return code nil means that an error has occurred. Error messages will be in the buffer `*icalendar-errors*'. (fn &optional DIARY-FILE DO-NOT-ASK NON-MARKING)Vicomplete-mode Non-nil if Icomplete mode is enabled. See the `icomplete-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `icomplete-mode'.Ficomplete-mode Toggle incremental minibuffer completion (Icomplete mode). With a prefix argument ARG, enable Icomplete mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When this global minor mode is enabled, typing in the minibuffer continuously displays a list of possible completions that match the string you have typed. See `icomplete-completions' for a description of how prospective completions are displayed. For more information, see Info node `(emacs)Icomplete'. For options you can set, `\[customize-group] icomplete'. You can use the following key bindings to navigate and select completions: \{icomplete-minibuffer-map} (fn &optional ARG)Ficon-mode Major mode for editing Icon code. Expression and list commands understand all Icon brackets. Tab indents for Icon code. Paragraphs are separated by blank lines only. Delete converts tabs to spaces as it moves back. \{icon-mode-map} Variables controlling indentation style: icon-tab-always-indent Non-nil means TAB in Icon mode should always reindent the current line, regardless of where in the line point is when the TAB command is used. icon-auto-newline Non-nil means automatically newline before and after braces inserted in Icon code. icon-indent-level Indentation of Icon statements within surrounding block. The surrounding block's indentation is the indentation of the line on which the open-brace appears. icon-continued-statement-offset Extra indentation given to a substatement, such as the then-clause of an if or body of a while. icon-continued-brace-offset Extra indentation given to a brace that starts a substatement. This is in addition to `icon-continued-statement-offset'. icon-brace-offset Extra indentation for line if it starts with an open brace. icon-brace-imaginary-offset An open brace following other text is treated as if it were this far to the right of the start of its line. Turning on Icon mode calls the value of the variable `icon-mode-hook' with no args, if that value is non-nil. (fn)Fidlwave-shell Run an inferior IDL, with I/O through buffer `(idlwave-shell-buffer)'. If buffer exists but shell process is not running, start new IDL. If buffer exists and shell process is running, just switch to the buffer. When called with a prefix ARG, or when `idlwave-shell-use-dedicated-frame' is non-nil, the shell buffer and the source buffers will be in separate frames. The command to run comes from variable `idlwave-shell-explicit-file-name', with options taken from `idlwave-shell-command-line-options'. The buffer is put in `idlwave-shell-mode', providing commands for sending input and controlling the IDL job. See help on `idlwave-shell-mode'. See also the variable `idlwave-shell-prompt-pattern'. (Type \[describe-mode] in the shell buffer for a list of commands.) (fn &optional ARG QUICK)Fidlwave-mode Major mode for editing IDL source files (version 6.1_em22). The main features of this mode are 1. Indentation and Formatting -------------------------- Like other Emacs programming modes, C-j inserts a newline and indents. TAB is used for explicit indentation of the current line. To start a continuation line, use \[idlwave-split-line]. This function can also be used in the middle of a line to split the line at that point. When used inside a long constant string, the string is split at that point with the `+' concatenation operator. Comments are indented as follows: `;;;' Indentation remains unchanged. `;;' Indent like the surrounding code `;' Indent to a minimum column. The indentation of comments starting in column 0 is never changed. Use \[idlwave-fill-paragraph] to refill a paragraph inside a comment. The indentation of the second line of the paragraph relative to the first will be retained. Use \[idlwave-auto-fill-mode] to toggle auto-fill mode for these comments. When the variable `idlwave-fill-comment-line-only' is nil, code can also be auto-filled and auto-indented. To convert pre-existing IDL code to your formatting style, mark the entire buffer with \[mark-whole-buffer] and execute \[idlwave-expand-region-abbrevs]. Then mark the entire buffer again followed by \[indent-region] (`indent-region'). 2. Routine Info ------------ IDLWAVE displays information about the calling sequence and the accepted keyword parameters of a procedure or function with \[idlwave-routine-info]. \[idlwave-find-module] jumps to the source file of a module. These commands know about system routines, all routines in idlwave-mode buffers and (when the idlwave-shell is active) about all modules currently compiled under this shell. It also makes use of pre-compiled or custom-scanned user and library catalogs many popular libraries ship with by default. Use \[idlwave-update-routine-info] to update this information, which is also used for completion (see item 4). 3. Online IDL Help --------------- \[idlwave-context-help] displays the IDL documentation relevant for the system variable, keyword, or routines at point. A single key stroke gets you directly to the right place in the docs. See the manual to configure where and how the HTML help is displayed. 4. Completion ---------- \[idlwave-complete] completes the names of procedures, functions class names, keyword parameters, system variables and tags, class tags, structure tags, filenames and much more. It is context sensitive and figures out what is expected at point. Lower case strings are completed in lower case, other strings in mixed or upper case. 5. Code Templates and Abbreviations -------------------------------- Many Abbreviations are predefined to expand to code fragments and templates. The abbreviations start generally with a `\'. Some examples: \pr PROCEDURE template \fu FUNCTION template \c CASE statement template \sw SWITCH statement template \f FOR loop template \r REPEAT Loop template \w WHILE loop template \i IF statement template \elif IF-ELSE statement template \b BEGIN For a full list, use \[idlwave-list-abbrevs]. Some templates also have direct keybindings - see the list of keybindings below. \[idlwave-doc-header] inserts a documentation header at the beginning of the current program unit (pro, function or main). Change log entries can be added to the current program unit with \[idlwave-doc-modification]. 6. Automatic Case Conversion ------------------------- The case of reserved words and some abbrevs is controlled by `idlwave-reserved-word-upcase' and `idlwave-abbrev-change-case'. 7. Automatic END completion ------------------------ If the variable `idlwave-expand-generic-end' is non-nil, each END typed will be converted to the specific version, like ENDIF, ENDFOR, etc. 8. Hooks ----- Loading idlwave.el runs `idlwave-load-hook'. Turning on `idlwave-mode' runs `idlwave-mode-hook'. 9. Documentation and Customization ------------------------------- Info documentation for this package is available. Use \[idlwave-info] to display (complain to your sysadmin if that does not work). For Postscript, PDF, and HTML versions of the documentation, check IDLWAVE's homepage at URL `http://github.com/jdtsmith/idlwave'. IDLWAVE has customize support - see the group `idlwave'. 10.Keybindings ----------- Here is a list of all keybindings of this mode. If some of the key bindings below show with ??, use \[describe-key] followed by the key sequence to see what the key sequence does. \{idlwave-mode-map} (fn)Vido-mode Determines for which buffer/file Ido should be enabled. The following values are possible: - `buffer': Turn only on Ido buffer behavior (switching, killing, displaying...) - `file': Turn only on Ido file behavior (finding, writing, inserting...) - `both': Turn on Ido buffer and file behavior. - nil: Turn off any Ido switching. Setting this variable directly does not take effect; use either \[customize] or the function `ido-mode'.Fido-mode Toggle Ido mode on or off. With ARG, turn Ido mode on if arg is positive, off otherwise. Turning on Ido mode will remap (via a minor-mode keymap) the default keybindings for the `find-file' and `switch-to-buffer' families of commands to the Ido versions of these functions. However, if ARG arg equals `files', remap only commands for files, or if it equals `buffers', remap only commands for buffer switching. This function also adds a hook to the minibuffer. (fn &optional ARG)Fido-switch-buffer Switch to another buffer. The buffer is displayed according to `ido-default-buffer-method' -- the default is to show it in the same window, unless it is already visible in another frame. As you type in a string, all of the buffers matching the string are displayed if substring-matching is used (default). Look at `ido-enable-prefix' and `ido-toggle-prefix'. When you have found the buffer you want, it can then be selected. As you type, most keys have their normal keybindings, except for the following: \<ido-buffer-completion-map> RET Select the buffer at the front of the list of matches. If the list is empty, possibly prompt to create new buffer. \[ido-select-text] Use the current input string verbatim. \[ido-next-match] Put the first element at the end of the list. \[ido-prev-match] Put the last element at the start of the list. \[ido-complete] Complete a common suffix to the current string that matches all buffers. If there is only one match, select that buffer. If there is no common suffix, show a list of all matching buffers in a separate window. \[ido-edit-input] Edit input string. \[ido-fallback-command] Fallback to non-ido version of current command. \[ido-toggle-regexp] Toggle regexp searching. \[ido-toggle-prefix] Toggle between substring and prefix matching. \[ido-toggle-case] Toggle case-sensitive searching of buffer names. \[ido-completion-help] Show list of matching buffers in separate window. \[ido-enter-find-file] Drop into `ido-find-file'. \[ido-kill-buffer-at-head] Kill buffer at head of buffer list. \[ido-toggle-ignore] Toggle ignoring buffers listed in `ido-ignore-buffers'. (fn)Fido-switch-buffer-other-window Switch to another buffer and show it in another window. The buffer name is selected interactively by typing a substring. For details of keybindings, see `ido-switch-buffer'. (fn)Fido-display-buffer Display a buffer in another window but don't select it. The buffer name is selected interactively by typing a substring. For details of keybindings, see `ido-switch-buffer'. (fn)Fido-display-buffer-other-frame Display a buffer preferably in another frame. The buffer name is selected interactively by typing a substring. For details of keybindings, see `ido-switch-buffer'. (fn)Fido-kill-buffer Kill a buffer. The buffer name is selected interactively by typing a substring. For details of keybindings, see `ido-switch-buffer'. (fn)Fido-insert-buffer Insert contents of a buffer in current buffer after point. The buffer name is selected interactively by typing a substring. For details of keybindings, see `ido-switch-buffer'. (fn)Fido-switch-buffer-other-frame Switch to another buffer and show it in another frame. The buffer name is selected interactively by typing a substring. For details of keybindings, see `ido-switch-buffer'. (fn)Fido-find-file-in-dir Switch to another file starting from DIR. (fn DIR)Fido-find-file Edit file with name obtained via minibuffer. The file is displayed according to `ido-default-file-method' -- the default is to show it in the same window, unless it is already visible in another frame. The file name is selected interactively by typing a substring. As you type in a string, all of the filenames matching the string are displayed if substring-matching is used (default). Look at `ido-enable-prefix' and `ido-toggle-prefix'. When you have found the filename you want, it can then be selected. As you type, most keys have their normal keybindings, except for the following: \<ido-file-completion-map> RET Select the file at the front of the list of matches. If the list is empty, possibly prompt to create new file. \[ido-select-text] Use the current input string verbatim. \[ido-next-match] Put the first element at the end of the list. \[ido-prev-match] Put the last element at the start of the list. \[ido-complete] Complete a common suffix to the current string that matches all files. If there is only one match, select that file. If there is no common suffix, show a list of all matching files in a separate window. \[ido-magic-delete-char] Open the specified directory in Dired mode. \[ido-edit-input] Edit input string (including directory). \[ido-prev-work-directory] Go to previous directory in work directory history. \[ido-next-work-directory] Go to next directory in work directory history. \[ido-merge-work-directories] Search for file in the work directory history. \[ido-forget-work-directory] Remove current directory from the work directory history. \[ido-prev-work-file] Cycle to previous file in work file history. \[ido-next-work-file] Cycle to next file in work file history. \[ido-wide-find-file-or-pop-dir] Prompt for a file and use find to locate it. \[ido-wide-find-dir-or-delete-dir] Prompt for a directory and use find to locate it. \[ido-make-directory] Prompt for a directory to create in current directory. \[ido-fallback-command] Fallback to non-Ido version of current command. \[ido-toggle-regexp] Toggle regexp searching. \[ido-toggle-prefix] Toggle between substring and prefix matching. \[ido-toggle-case] Toggle case-sensitive searching of file names. \[ido-toggle-literal] Toggle literal reading of this file. \[ido-completion-help] Show list of matching files in separate window. \[ido-toggle-ignore] Toggle ignoring files listed in `ido-ignore-files'. (fn)Fido-find-file-other-window Switch to another file and show it in another window. The file name is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-find-alternate-file Find another file, select its buffer, kill previous buffer. The file name is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-find-alternate-file-other-window Find file as a replacement for the file in the next window. The file name is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-find-file-read-only Edit file read-only with name obtained via minibuffer. The file name is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-find-file-read-only-other-window Edit file read-only in other window with name obtained via minibuffer. The file name is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-find-file-read-only-other-frame Edit file read-only in other frame with name obtained via minibuffer. The file name is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-display-file Display a file in another window but don't select it. The file name is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-find-file-other-frame Switch to another file and show it in another frame. The file name is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-write-file Write current buffer to a file. The file name is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-insert-file Insert contents of file in current buffer. The file name is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-dired Call `dired' the Ido way. The directory is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-dired-other-window "Edit" a directory. Like `ido-dired' but selects in another window. The directory is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-dired-other-frame "Edit" a directory. Like `ido-dired' but makes a new frame. The directory is selected interactively by typing a substring. For details of keybindings, see `ido-find-file'. (fn)Fido-read-buffer Ido replacement for the built-in `read-buffer'. Return the name of a buffer selected. PROMPT is the prompt to give to the user. DEFAULT if given is the default buffer to be selected, which will go to the front of the list. If REQUIRE-MATCH is non-nil, an existing buffer must be selected. (fn PROMPT &optional DEFAULT REQUIRE-MATCH PREDICATE)Fido-read-file-name Ido replacement for the built-in `read-file-name'. Read file name, prompting with PROMPT and completing in directory DIR. See `read-file-name' for additional parameters. (fn PROMPT &optional DIR DEFAULT-FILENAME MUSTMATCH INITIAL PREDICATE)Fido-read-directory-name Ido replacement for the built-in `read-directory-name'. Read directory name, prompting with PROMPT and completing in directory DIR. See `read-directory-name' for additional parameters. (fn PROMPT &optional DIR DEFAULT-DIRNAME MUSTMATCH INITIAL)Fido-completing-read Ido replacement for the built-in `completing-read'. Read a string in the minibuffer with Ido-style completion. PROMPT is a string to prompt with; normally it ends in a colon and a space. CHOICES is a list of strings which are the possible completions. PREDICATE and INHERIT-INPUT-METHOD are currently ignored; they are included to be compatible with `completing-read'. If REQUIRE-MATCH is non-nil, the user is not allowed to exit unless the input is (or completes to) an element of CHOICES or is null. If the input is null, `ido-completing-read' returns DEF, or an empty string if DEF is nil, regardless of the value of REQUIRE-MATCH. If INITIAL-INPUT is non-nil, insert it in the minibuffer initially, with point positioned at the end. HIST, if non-nil, specifies a history list. DEF, if non-nil, is the default value. (fn PROMPT CHOICES &optional PREDICATE REQUIRE-MATCH INITIAL-INPUT HIST DEF INHERIT-INPUT-METHOD)Fielm Interactively evaluate Emacs Lisp expressions. Switches to the buffer `*ielm*', or creates it if it does not exist. See `inferior-emacs-lisp-mode' for details. (fn)Fiimage-mode Toggle Iimage mode on or off. With a prefix argument ARG, enable Iimage mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'. \{iimage-mode-map} (fn &optional ARG)Fimage-type-from-data Determine the image type from image data DATA. Value is a symbol specifying the image type or nil if type cannot be determined. (fn DATA)Fimage-type-from-buffer Determine the image type from data in the current buffer. Value is a symbol specifying the image type or nil if type cannot be determined. (fn)Fimage-type-from-file-header Determine the type of image file FILE from its first few bytes. Value is a symbol specifying the image type, or nil if type cannot be determined. (fn FILE)Fimage-type-from-file-name Determine the type of image file FILE from its name. Value is a symbol specifying the image type, or nil if type cannot be determined. (fn FILE)Fimage-type Determine and return image type. SOURCE is an image file name or image data. Optional TYPE is a symbol describing the image type. If TYPE is omitted or nil, try to determine the image type from its first few bytes of image data. If that doesn't work, and SOURCE is a file name, use its file extension as image type. Optional DATA-P non-nil means SOURCE is a string containing image data. (fn SOURCE &optional TYPE DATA-P)Fimage-type-available-p Return non-nil if image type TYPE is available. Image types are symbols like `xbm' or `jpeg'. (fn TYPE)Fimage-type-auto-detected-p Return t if the current buffer contains an auto-detectable image. This function is intended to be used from `magic-fallback-mode-alist'. The buffer is considered to contain an auto-detectable image if its beginning matches an image type in `image-type-header-regexps', and that image type is present in `image-type-auto-detectable' with a non-nil value. If that value is non-nil, but not t, then the image type must be available. (fn)Fcreate-image Create an image. FILE-OR-DATA is an image file name or image data. Optional TYPE is a symbol describing the image type. If TYPE is omitted or nil, try to determine the image type from its first few bytes of image data. If that doesn't work, and FILE-OR-DATA is a file name, use its file extension as image type. Optional DATA-P non-nil means FILE-OR-DATA is a string containing image data. Optional PROPS are additional image attributes to assign to the image, like, e.g. `:mask MASK'. If the property `:scale' is not given and the display has a high resolution (more exactly, when the average width of a character in the default font is more than 10 pixels), the image is automatically scaled up in proportion to the default font. Value is the image created, or nil if images of type TYPE are not supported. Images should not be larger than specified by `max-image-size'. Image file names that are not absolute are searched for in the "images" sub-directory of `data-directory' and `x-bitmap-file-path' (in that order). (fn FILE-OR-DATA &optional TYPE DATA-P &rest PROPS)Fput-image Put image IMAGE in front of POS in the current buffer. IMAGE must be an image created with `create-image' or `defimage'. IMAGE is displayed by putting an overlay into the current buffer with a `before-string' STRING that has a `display' property whose value is the image. STRING is defaulted if you omit it. The overlay created will have the `put-image' property set to t. POS may be an integer or marker. AREA is where to display the image. AREA nil or omitted means display it in the text area, a value of `left-margin' means display it in the left marginal area, a value of `right-margin' means display it in the right marginal area. (fn IMAGE POS &optional STRING AREA)Finsert-image Insert IMAGE into current buffer at point. IMAGE is displayed by inserting STRING into the current buffer with a `display' property whose value is the image. STRING defaults to a single space if you omit it. AREA is where to display the image. AREA nil or omitted means display it in the text area, a value of `left-margin' means display it in the left marginal area, a value of `right-margin' means display it in the right marginal area. SLICE specifies slice of IMAGE to insert. SLICE nil or omitted means insert whole image. SLICE is a list (X Y WIDTH HEIGHT) specifying the X and Y positions and WIDTH and HEIGHT of image area to insert. A float value 0.0 - 1.0 means relative to the width or height of the image; integer values are taken as pixel values. (fn IMAGE &optional STRING AREA SLICE)Finsert-sliced-image Insert IMAGE into current buffer at point. IMAGE is displayed by inserting STRING into the current buffer with a `display' property whose value is the image. The default STRING is a single space. AREA is where to display the image. AREA nil or omitted means display it in the text area, a value of `left-margin' means display it in the left marginal area, a value of `right-margin' means display it in the right marginal area. The image is automatically split into ROWS x COLS slices. (fn IMAGE &optional STRING AREA ROWS COLS)Fremove-images Remove images between START and END in BUFFER. Remove only images that were put in BUFFER with calls to `put-image'. BUFFER nil or omitted means use the current buffer. (fn START END &optional BUFFER)Ffind-image Find an image, choosing one of a list of image specifications. SPECS is a list of image specifications. Each image specification in SPECS is a property list. The contents of a specification are image type dependent. All specifications must at least contain the properties `:type TYPE' and either `:file FILE' or `:data DATA', where TYPE is a symbol specifying the image type, e.g. `xbm', FILE is the file to load the image from, and DATA is a string containing the actual image data. The specification whose TYPE is supported, and FILE exists, is used to construct the image specification to be returned. Return nil if no specification is satisfied. The image is looked for in `image-load-path'. Image files should not be larger than specified by `max-image-size'. (fn SPECS)Fdefimage Define SYMBOL as an image, and return SYMBOL. SPECS is a list of image specifications. DOC is an optional documentation string. Each image specification in SPECS is a property list. The contents of a specification are image type dependent. All specifications must at least contain the properties `:type TYPE' and either `:file FILE' or `:data DATA', where TYPE is a symbol specifying the image type, e.g. `xbm', FILE is the file to load the image from, and DATA is a string containing the actual image data. The first image specification whose TYPE is supported, and FILE exists, is used to define SYMBOL. Example: (defimage test-image ((:type xpm :file "~/test1.xpm") (:type xbm :file "~/test1.xbm"))) (fn SYMBOL SPECS &optional DOC)Fimagemagick-register-types Register file types that can be handled by ImageMagick. This function is called at startup, after loading the init file. It registers the ImageMagick types returned by `imagemagick-filter-types'. Registered image types are added to `auto-mode-alist', so that Emacs visits them in Image mode. They are also added to `image-type-file-name-regexps', so that the `image-type' function recognizes these files as having image type `imagemagick'. If Emacs is compiled without ImageMagick support, this does nothing. (fn)Fimage-dired-dired-toggle-marked-thumbs Toggle thumbnails in front of file names in the dired buffer. If no marked file could be found, insert or hide thumbnails on the current line. ARG, if non-nil, specifies the files to use instead of the marked files. If ARG is an integer, use the next ARG (or previous -ARG, if ARG<0) files. (fn &optional ARG)Fimage-dired-dired-with-window-configuration Open directory DIR and create a default window configuration. Convenience command that: - Opens dired in folder DIR - Splits windows in most useful (?) way - Set `truncate-lines' to t After the command has finished, you would typically mark some image files in dired and type \[image-dired-display-thumbs] (`image-dired-display-thumbs'). If called with prefix argument ARG, skip splitting of windows. The current window configuration is saved and can be restored by calling `image-dired-restore-window-configuration'. (fn DIR &optional ARG)Fimage-dired-display-thumbs Display thumbnails of all marked files, in `image-dired-thumbnail-buffer'. If a thumbnail image does not exist for a file, it is created on the fly. With prefix argument ARG, display only thumbnail for file at point (this is useful if you have marked some files but want to show another one). Recommended usage is to split the current frame horizontally so that you have the dired buffer in the left window and the `image-dired-thumbnail-buffer' buffer in the right window. With optional argument APPEND, append thumbnail to thumbnail buffer instead of erasing it first. Optional argument DO-NOT-POP controls if `pop-to-buffer' should be used or not. If non-nil, use `display-buffer' instead of `pop-to-buffer'. This is used from functions like `image-dired-next-line-and-display' and `image-dired-previous-line-and-display' where we do not want the thumbnail buffer to be selected. (fn &optional ARG APPEND DO-NOT-POP)Fimage-dired-show-all-from-dir Make a preview buffer for all images in DIR and display it. If the number of files in DIR matching `image-file-name-regexp' exceeds `image-dired-show-all-from-dir-max-files', a warning will be displayed. (fn DIR)Fimage-dired-tag-files Tag marked file(s) in dired. With prefix ARG, tag file at point. (fn ARG)Fimage-dired-delete-tag Remove tag for selected file(s). With prefix argument ARG, remove tag from file at point. (fn ARG)Fimage-dired-jump-thumbnail-buffer Jump to thumbnail buffer. (fn)Fimage-dired-minor-mode Setup easy-to-use keybindings for the commands to be used in dired mode. Note that n, p and <down> and <up> will be hijacked and bound to `image-dired-dired-x-line'. (fn &optional ARG)Fimage-dired-display-thumbs-append Append thumbnails to `image-dired-thumbnail-buffer'. (fn)Fimage-dired-display-thumb Shorthand for `image-dired-display-thumbs' with prefix argument. (fn)Fimage-dired-dired-display-external Display file at point using an external viewer. (fn)Fimage-dired-dired-display-image Display current image file. See documentation for `image-dired-display-image' for more information. With prefix argument ARG, display image in its original size. (fn &optional ARG)Fimage-dired-dired-comment-files Add comment to current or marked files in dired. (fn)Fimage-dired-mark-tagged-files Use regexp to mark files with matching tag. A `tag' is a keyword, a piece of meta data, associated with an image file and stored in image-dired's database file. This command lets you input a regexp and this will be matched against all tags on all image files in the database file. The files that have a matching tag will be marked in the dired buffer. (fn)Fimage-dired-dired-edit-comment-and-tags Edit comment and tags of current or marked image files. Edit comment and tags for all marked image files in an easy-to-use form. (fn)Vimage-file-name-extensions A list of image-file filename extensions. Filenames having one of these extensions are considered image files, in addition to those matching `image-file-name-regexps'. See `auto-image-file-mode'; if `auto-image-file-mode' is enabled, setting this variable directly does not take effect unless `auto-image-file-mode' is re-enabled; this happens automatically when the variable is set using \[customize].Vimage-file-name-regexps List of regexps matching image-file filenames. Filenames matching one of these regexps are considered image files, in addition to those with an extension in `image-file-name-extensions'. See function `auto-image-file-mode'; if `auto-image-file-mode' is enabled, setting this variable directly does not take effect unless `auto-image-file-mode' is re-enabled; this happens automatically when the variable is set using \[customize].Fimage-file-name-regexp Return a regular expression matching image-file filenames. (fn)Finsert-image-file Insert the image file FILE into the current buffer. Optional arguments VISIT, BEG, END, and REPLACE are interpreted as for the command `insert-file-contents'. Return list of absolute file name and number of characters inserted. (fn FILE &optional VISIT BEG END REPLACE)Vauto-image-file-mode Non-nil if Auto-Image-File mode is enabled. See the `auto-image-file-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `auto-image-file-mode'.Fauto-image-file-mode Toggle visiting of image files as images (Auto Image File mode). With a prefix argument ARG, enable Auto Image File mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. An image file is one whose name has an extension in `image-file-name-extensions', or matches a regexp in `image-file-name-regexps'. (fn &optional ARG)Fimage-mode Major mode for image files. You can use \<image-mode-map>\[image-toggle-display] or \<image-mode-map>\[image-toggle-hex-display] to toggle between display as an image and display as text or hex. Key bindings: \{image-mode-map} (fn)Fimage-minor-mode Toggle Image minor mode in this buffer. With a prefix argument ARG, enable Image minor mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Image minor mode provides the key \<image-mode-map>\[image-toggle-display], to switch back to `image-mode' and display an image file as the actual image. (fn &optional ARG)Fimage-mode-to-text Set a non-image mode as major mode in combination with image minor mode. A non-mage major mode found from `auto-mode-alist' or fundamental mode displays an image file as text. (fn)Fimage-bookmark-jump (fn BMK)Vimenu-sort-function The function to use for sorting the index mouse-menu. Affects only the mouse index menu. Set this to nil if you don't want any sorting (faster). The items in the menu are then presented in the order they were found in the buffer. Set it to `imenu--sort-by-name' if you want alphabetic sorting. The function should take two arguments and return t if the first element should come before the second. The arguments are cons cells; (NAME . POSITION). Look at `imenu--sort-by-name' for an example.Vimenu-generic-expression List of definition matchers for creating an Imenu index. Each element of this list should have the form (MENU-TITLE REGEXP INDEX [FUNCTION] [ARGUMENTS...]) MENU-TITLE should be nil (in which case the matches for this element are put in the top level of the buffer index) or a string (which specifies the title of a submenu into which the matches are put). REGEXP is a regular expression matching a definition construct which is to be displayed in the menu. REGEXP may also be a function of no arguments. If REGEXP is a function, it is expected to search backwards, return non-nil if it finds a definition construct, and set `match-data' for that construct. INDEX is an integer specifying which subexpression of REGEXP matches the definition's name; this subexpression is displayed as the menu item. FUNCTION, if present, specifies a function to call when the index item is selected by the user. This function is called with arguments consisting of the item name, the buffer position, and the ARGUMENTS. The variable `imenu-case-fold-search' determines whether or not the regexp matches are case sensitive, and `imenu-syntax-alist' can be used to alter the syntax table for the search. If non-nil this pattern is passed to `imenu--generic-function' to create a buffer index. For example, see the value of `fortran-imenu-generic-expression' used by `fortran-mode' with `imenu-syntax-alist' set locally so that characters which normally have "symbol" syntax are considered to have "word" syntax during matching.Vimenu-create-index-function The function to use for creating an index alist of the current buffer. It should be a function that takes no arguments and returns an index alist of the current buffer. The function is called within a `save-excursion'. See `imenu--index-alist' for the format of the buffer index alist.Vimenu-prev-index-position-function Function for finding the next index position. If `imenu-create-index-function' is set to `imenu-default-create-index-function', then you must set this variable to a function that will find the next index, looking backwards in the file. The function should leave point at the place to be connected to the index and it should return nil when it doesn't find another index.Vimenu-extract-index-name-function Function for extracting the index item name, given a position. This function is called after `imenu-prev-index-position-function' finds a position for an index item, with point at that position. It should return the name for that index item.Vimenu-name-lookup-function Function to compare string with index item. This function will be called with two strings, and should return non-nil if they match. If nil, comparison is done with `string='. Set this to some other function for more advanced comparisons, such as "begins with" or "name matches and number of arguments match".Vimenu-default-goto-function The default function called when selecting an Imenu item. The function in this variable is called when selecting a normal index-item.Fimenu-add-to-menubar Add an `imenu' entry to the menu bar for the current buffer. NAME is a string used to name the menu bar item. See the command `imenu' for more information. (fn NAME)Fimenu-add-menubar-index Add an Imenu "Index" entry on the menu bar for the current buffer. A trivial interface to `imenu-add-to-menubar' suitable for use in a hook. (fn)Fimenu Jump to a place in the buffer chosen using a buffer menu or mouse menu. INDEX-ITEM specifies the position. See `imenu-choose-buffer-index' for more information. (fn INDEX-ITEM)Findian-compose-region Compose the region according to `composition-function-table'. (fn FROM TO)Findian-compose-string (fn STRING)Fin-is13194-post-read-conversion (fn LEN)Fin-is13194-pre-write-conversion (fn FROM TO)Findian-2-column-to-ucs-region Convert old Emacs Devanagari characters to UCS. (fn FROM TO)Finferior-lisp Run an inferior Lisp process, input and output via buffer `*inferior-lisp*'. If there is a process already running in `*inferior-lisp*', just switch to that buffer. With argument, allows you to edit the command line (default is value of `inferior-lisp-program'). Runs the hooks from `inferior-lisp-mode-hook' (after the `comint-mode-hook' is run). (Type \[describe-mode] in the process buffer for a list of commands.) (fn CMD)VInfo-default-directory-list Default list of directories to search for Info documentation files. They are searched in the order they are given in the list. Therefore, the directory of Info files that come with Emacs normally should come last (so that local files override standard ones), unless Emacs is installed into a non-standard directory. In the latter case, the directory of Info files that come with Emacs should be first in this list. Once Info is started, the list of directories to search comes from the variable `Info-directory-list'. This variable `Info-default-directory-list' is used as the default for initializing `Info-directory-list' when Info is started, unless the environment variable INFOPATH is set. Although this is a customizable variable, that is mainly for technical reasons. Normally, you should either set INFOPATH or customize `Info-additional-directory-list', rather than changing this variable.Finfo-other-window Like `info' but show the Info buffer in another window. (fn &optional FILE-OR-NODE BUFFER)Finfo Enter Info, the documentation browser. Optional argument FILE-OR-NODE specifies the file to examine; the default is the top-level directory of Info. Called from a program, FILE-OR-NODE may specify an Info node of the form "(FILENAME)NODENAME". Optional argument BUFFER specifies the Info buffer name; the default buffer name is *info*. If BUFFER exists, just switch to BUFFER. Otherwise, create a new buffer with the top-level Info directory. In interactive use, a non-numeric prefix argument directs this command to read a file name from the minibuffer. A numeric prefix argument of N selects an Info buffer named "*info*<N>". The search path for Info files is in the variable `Info-directory-list'. The top-level Info directory is made by combining all the files named `dir' in all the directories in that path. See a list of available Info commands in `Info-mode'. (fn &optional FILE-OR-NODE BUFFER)Finfo-emacs-manual Display the Emacs manual in Info mode. (fn)Finfo-emacs-bug Display the "Reporting Bugs" section of the Emacs manual in Info mode. (fn)Finfo-standalone Run Emacs as a standalone Info reader. Usage: emacs -f info-standalone [filename] In standalone mode, \<Info-mode-map>\[Info-exit] exits Emacs itself. (fn)FInfo-on-current-buffer Use Info mode to browse the current Info buffer. With a prefix arg, this queries for the node name to visit first; otherwise, that defaults to `Top'. (fn &optional NODENAME)FInfo-directory Go to the Info directory node. (fn)FInfo-index Look up a string TOPIC in the index for this manual and go to that entry. If there are no exact matches to the specified topic, this chooses the first match which is a case-insensitive substring of a topic. Use the \<Info-mode-map>\[Info-index-next] command to see the other matches. Give an empty topic name to go to the Index node itself. (fn TOPIC)Finfo-apropos Grovel indices of all known Info files on your system for STRING. Build a menu of the possible matches. (fn STRING)Finfo-finder Display descriptions of the keywords in the Finder virtual manual. In interactive use, a prefix argument directs this command to read a list of keywords separated by comma. After that, it displays a node with a list of packages that contain all specified keywords. (fn &optional KEYWORDS)FInfo-mode Info mode provides commands for browsing through the Info documentation tree. Documentation in Info is divided into "nodes", each of which discusses one topic and contains references to other nodes which discuss related topics. Info has commands to follow the references and show you other nodes. \<Info-mode-map>\[Info-help] Invoke the Info tutorial. \[Info-exit] Quit Info: reselect previously selected buffer. Selecting other nodes: \[Info-mouse-follow-nearest-node] Follow a node reference you click on. This works with menu items, cross references, and the "next", "previous" and "up", depending on where you click. \[Info-follow-nearest-node] Follow a node reference near point, like \[Info-mouse-follow-nearest-node]. \[Info-next] Move to the "next" node of this node. \[Info-prev] Move to the "previous" node of this node. \[Info-up] Move "up" from this node. \[Info-menu] Pick menu item specified by name (or abbreviation). Picking a menu item causes another node to be selected. \[Info-directory] Go to the Info directory node. \[Info-top-node] Go to the Top node of this file. \[Info-final-node] Go to the final node in this file. \[Info-backward-node] Go backward one node, considering all nodes as forming one sequence. \[Info-forward-node] Go forward one node, considering all nodes as forming one sequence. \[Info-next-reference] Move cursor to next cross-reference or menu item. \[Info-prev-reference] Move cursor to previous cross-reference or menu item. \[Info-follow-reference] Follow a cross reference. Reads name of reference. \[Info-history-back] Move back in history to the last node you were at. \[Info-history-forward] Move forward in history to the node you returned from after using \[Info-history-back]. \[Info-history] Go to menu of visited nodes. \[Info-toc] Go to table of contents of the current Info file. Moving within a node: \[Info-scroll-up] Normally, scroll forward a full screen. Once you scroll far enough in a node that its menu appears on the screen but after point, the next scroll moves into its first subnode. When after all menu items (or if there is no menu), move up to the parent node. \[Info-scroll-down] Normally, scroll backward. If the beginning of the buffer is already visible, try to go to the previous menu entry, or up if there is none. \[beginning-of-buffer] Go to beginning of node. Advanced commands: \[Info-search] Search through this Info file for specified regexp, and select the node in which the next occurrence is found. \[Info-search-case-sensitively] Search through this Info file for specified regexp case-sensitively. \[isearch-forward], \[isearch-forward-regexp] Use Isearch to search through multiple Info nodes. \[Info-index] Search for a topic in this manual's Index and go to index entry. \[Info-index-next] (comma) Move to the next match from a previous \<Info-mode-map>\[Info-index] command. \[Info-virtual-index] Look for a string and display the index node with results. \[info-apropos] Look for a string in the indices of all manuals. \[Info-goto-node] Move to node specified by name. You may include a filename as well, as (FILENAME)NODENAME. 1 .. 9 Pick first ... ninth item in node's menu. Every third `*' is highlighted to help pick the right number. \[Info-copy-current-node-name] Put name of current Info node in the kill ring. \[clone-buffer] Select a new cloned Info buffer in another window. \[universal-argument] \[info] Move to new Info file with completion. \[universal-argument] N \[info] Select Info buffer with prefix number in the name *info*<N>. (fn)FInfo-goto-emacs-command-node Go to the Info node in the Emacs manual for command COMMAND. The command is found by looking up in Emacs manual's indices or in another manual found via COMMAND's `info-file' property or the variable `Info-file-list-for-emacs'. COMMAND must be a symbol or string. (fn COMMAND)FInfo-goto-emacs-key-command-node Go to the node in the Emacs manual which describes the command bound to KEY. KEY is a string. Interactively, if the binding is `execute-extended-command', a command is read. The command is found by looking up in Emacs manual's indices or in another manual found via COMMAND's `info-file' property or the variable `Info-file-list-for-emacs'. (fn KEY)FInfo-speedbar-browser Initialize speedbar to display an Info node browser. This will add a speedbar major display mode. (fn)FInfo-bookmark-jump This implements the `handler' function interface for the record type returned by `Info-bookmark-make-record', which see. (fn BMK)Finfo-display-manual Display an Info buffer displaying MANUAL. If there is an existing Info buffer for MANUAL, display it. Otherwise, visit the manual in a new Info buffer. In interactive use, a prefix argument directs this command to limit the completion alternatives to currently visited manuals. (fn MANUAL)Finfo-lookup-reset Throw away all cached data. This command is useful if the user wants to start at the beginning without quitting Emacs, for example, after some Info documents were updated on the system. (fn)Finfo-lookup-symbol Display the definition of SYMBOL, as found in the relevant manual. When this command is called interactively, it reads SYMBOL from the minibuffer. In the minibuffer, use M-n to yank the default argument value into the minibuffer so you can edit it. The default symbol is the one found at point. With prefix arg MODE a query for the symbol help mode is offered. (fn SYMBOL &optional MODE)Finfo-lookup-file Display the documentation of a file. When this command is called interactively, it reads FILE from the minibuffer. In the minibuffer, use M-n to yank the default file name into the minibuffer so you can edit it. The default file name is the one found at point. With prefix arg MODE a query for the file help mode is offered. (fn FILE &optional MODE)Finfo-complete-symbol Perform completion on symbol preceding point. (fn &optional MODE)Finfo-complete-file Perform completion on file preceding point. (fn &optional MODE)Finfo-xref-check Check external references in FILENAME, an info document. Interactively from an `Info-mode' or `texinfo-mode' buffer the current info file is the default. Results are shown in a `compilation-mode' buffer. The format is a bit rough, but there shouldn't be many problems normally. The file:line:column: is the info document, but of course normally any correction should be made in the original .texi file. Finding the right place in the .texi is a manual process. When a target info file doesn't exist there's obviously no way to validate node references within it. A message is given for missing target files once per source document. It could be simply that you don't have the target installed, or it could be a mistake in the reference. Indirect info files are understood, just pass the top-level foo.info to `info-xref-check' and it traverses all sub-files. Compressed info files are accepted too as usual for `Info-mode'. "makeinfo" checks references internal to an info document, but not external references, which makes it rather easy for mistakes to creep in or node name changes to go unnoticed. `Info-validate' doesn't check external references either. (fn FILENAME)Finfo-xref-check-all Check external references in all info documents in the info path. `Info-directory-list' and `Info-additional-directory-list' are the info paths. See `info-xref-check' for how each file is checked. The search for "all" info files is rather permissive, since info files don't necessarily have a ".info" extension and in particular the Emacs manuals normally don't. If you have a source code directory in `Info-directory-list' then a lot of extraneous files might be read. This will be time consuming but should be harmless. (fn)Finfo-xref-check-all-custom Check info references in all customize groups and variables. Info references can be in `custom-manual' or `info-link' entries of the `custom-links' for a variable. Any `custom-load' autoloads in variables are loaded in order to get full link information. This will be a lot of Lisp packages and can take a long time. (fn)Finfo-xref-docstrings Check docstring info node references in source files. The given files are searched for docstring hyperlinks like Info node `(elisp)Documentation Tips' and those links checked by attempting to visit the target nodes as per `info-xref-check' does. Interactively filenames are read as a wildcard pattern like "foo*.el", with the current file as a default. Usually this will be lisp sources, but anything with such hyperlinks can be checked, including the Emacs .c sources (or the etc/DOC file of all builtins). Because info node hyperlinks are found by a simple regexp search in the files, the Lisp code checked doesn't have to be loaded, and links can be in the file commentary or elsewhere too. Even .elc files can usually be checked successfully if you don't have the sources handy. (fn FILENAME-LIST)FInfo-tagify Create or update Info file tag table in current buffer or in a region. (fn &optional INPUT-BUFFER-NAME)VInfo-split-threshold The number of characters by which `Info-split' splits an info file.FInfo-split Split an info file into an indirect file plus bounded-size subfiles. Each subfile will be up to the number of characters that `Info-split-threshold' specifies, plus one node. To use this command, first visit a large Info file that has a tag table. The buffer is modified into a (small) indirect info file which should be saved in place of the original visited file. The subfiles are written in the same directory the original file is in, with names generated by appending `-' and a number to the original file name. The indirect file still functions as an Info file, but it contains just the tag table and a directory of subfiles. (fn)FInfo-validate Check current buffer for validity as an Info file. Check that every node pointer points to an existing node. (fn)Fbatch-info-validate Runs `Info-validate' on the files remaining on the command line. Must be used only with -batch, and kills Emacs on completion. Each file will be processed even if an error occurred previously. For example, invoke "emacs -batch -f batch-info-validate $info/ ~/*.info" (fn)Fdefine-inline Define an inline function NAME with arguments ARGS and body in BODY. This is like `defmacro', but has several advantages. See Info node `(elisp)Defining Functions' for more details. (fn NAME ARGS &rest BODY)Finversion-require-emacs Declare that you need either EMACS-VER, XEMACS-VER or SXEMACS-ver. Only checks one based on which kind of Emacs is being run. (fn EMACS-VER XEMACS-VER SXEMACS-VER)Fisearch-toggle-specified-input-method Select an input method and turn it on in interactive search. (fn)Fisearch-toggle-input-method Toggle input method in interactive search. (fn)Fisearch-process-search-multibyte-characters (fn LAST-CHAR &optional COUNT)Fisearchb-activate Active isearchb mode for subsequent alphanumeric keystrokes. Executing this command again will terminate the search; or, if the search has not yet begun, will toggle to the last buffer accessed via isearchb. (fn)Fiso-spanish Translate net conventions for Spanish to ISO 8859-1. Translate the region between FROM and TO using the table `iso-spanish-trans-tab'. Optional arg BUFFER is ignored (for use in `format-alist'). (fn FROM TO &optional BUFFER)Fiso-german Translate net conventions for German to ISO 8859-1. Translate the region FROM and TO using the table `iso-german-trans-tab'. Optional arg BUFFER is ignored (for use in `format-alist'). (fn FROM TO &optional BUFFER)Fiso-iso2tex Translate ISO 8859-1 characters to TeX sequences. Translate the region between FROM and TO using the table `iso-iso2tex-trans-tab'. Optional arg BUFFER is ignored (for use in `format-alist'). (fn FROM TO &optional BUFFER)Fiso-tex2iso Translate TeX sequences to ISO 8859-1 characters. Translate the region between FROM and TO using the table `iso-tex2iso-trans-tab'. Optional arg BUFFER is ignored (for use in `format-alist'). (fn FROM TO &optional BUFFER)Fiso-gtex2iso Translate German TeX sequences to ISO 8859-1 characters. Translate the region between FROM and TO using the table `iso-gtex2iso-trans-tab'. Optional arg BUFFER is ignored (for use in `format-alist'). (fn FROM TO &optional BUFFER)Fiso-iso2gtex Translate ISO 8859-1 characters to German TeX sequences. Translate the region between FROM and TO using the table `iso-iso2gtex-trans-tab'. Optional arg BUFFER is ignored (for use in `format-alist'). (fn FROM TO &optional BUFFER)Fiso-iso2duden Translate ISO 8859-1 characters to Duden sequences. Translate the region between FROM and TO using the table `iso-iso2duden-trans-tab'. Optional arg BUFFER is ignored (for use in `format-alist'). (fn FROM TO &optional BUFFER)Fiso-iso2sgml Translate ISO 8859-1 characters in the region to SGML entities. Use entities from "ISO 8879:1986//ENTITIES Added Latin 1//EN". Optional arg BUFFER is ignored (for use in `format-alist'). (fn FROM TO &optional BUFFER)Fiso-sgml2iso Translate SGML entities in the region to ISO 8859-1 characters. Use entities from "ISO 8879:1986//ENTITIES Added Latin 1//EN". Optional arg BUFFER is ignored (for use in `format-alist'). (fn FROM TO &optional BUFFER)Fiso-cvt-read-only Warn that format is read-only. (fn &rest IGNORE)Fiso-cvt-write-only Warn that format is write-only. (fn &rest IGNORE)Fiso-cvt-define-menu Add submenus to the File menu, to convert to and from various formats. (fn)Vispell-personal-dictionary File name of your personal spelling dictionary, or nil. If nil, the default personal dictionary for your spelling checker is used.Vispell-menu-map Key map for ispell menu.Vispell-skip-region-alist Alist expressing beginning and end of regions not to spell check. The alist key must be a regular expression. Valid forms include: (KEY) - just skip the key. (KEY . REGEXP) - skip to the end of REGEXP. REGEXP may be string or symbol. (KEY REGEXP) - skip to end of REGEXP. REGEXP must be a string. (KEY FUNCTION ARGS) - FUNCTION called with ARGS returns end of region.Vispell-tex-skip-alists Lists of regions to be skipped in TeX mode. First list is used raw. Second list has key placed inside \begin{}. Delete or add any regions you want to be automatically selected for skipping in latex mode.Vispell-html-skip-alists Lists of start and end keys to skip in HTML buffers. Same format as `ispell-skip-region-alist'. Note - substrings of other matches must come last (e.g. "<[tT][tT]/" and "<[^ \t\n>]").Fispell-word Check spelling of word under or before the cursor. If the word is not found in dictionary, display possible corrections in a window allowing you to choose one. If optional argument FOLLOWING is non-nil or if `ispell-following-word' is non-nil when called interactively, then the following word (rather than preceding) is checked when the cursor is not over a word. When the optional argument QUIETLY is non-nil or `ispell-quietly' is non-nil when called interactively, non-corrective messages are suppressed. With a prefix argument (or if CONTINUE is non-nil), resume interrupted spell-checking of a buffer or region. Interactively, in Transient Mark mode when the mark is active, call `ispell-region' to check the active region for spelling errors. Word syntax is controlled by the definition of the chosen dictionary, which is in `ispell-local-dictionary-alist' or `ispell-dictionary-alist'. This will check or reload the dictionary. Use \[ispell-change-dictionary] or \[ispell-region] to update the Ispell process. Return values: nil word is correct or spelling is accepted. 0 word is inserted into buffer-local definitions. "word" word corrected from word list. ("word" arg) word is hand entered. quit spell session exited. (fn &optional FOLLOWING QUIETLY CONTINUE REGION)Fispell-pdict-save Check to see if the personal dictionary has been modified. If so, ask if it needs to be saved. (fn &optional NO-QUERY FORCE-SAVE)Fispell-help Display a list of the options available when a misspelling is encountered. Selections are: DIGIT: Replace the word with a digit offered in the *Choices* buffer. SPC: Accept word this time. `i': Accept word and insert into private dictionary. `a': Accept word for this session. `A': Accept word and place in `buffer-local dictionary'. `r': Replace word with typed-in value. Rechecked. `R': Replace word with typed-in value. Query-replaced in buffer. Rechecked. `?': Show these commands. `x': Exit spelling buffer. Move cursor to original point. `X': Exit spelling buffer. Leaves cursor at the current point, and permits the aborted check to be completed later. `q': Quit spelling session (Kills ispell process). `l': Look up typed-in replacement in alternate dictionary. Wildcards okay. `u': Like `i', but the word is lower-cased first. `m': Place typed-in value in personal dictionary, then recheck current word. `C-l': Redraw screen. `C-r': Recursive edit. `C-z': Suspend Emacs or iconify frame. (fn)Fispell-kill-ispell Kill current Ispell process (so that you may start a fresh one). With NO-ERROR, just return non-nil if there was no Ispell running. With CLEAR, buffer session localwords are cleaned. (fn &optional NO-ERROR CLEAR)Fispell-change-dictionary Change to dictionary DICT for Ispell. With a prefix arg, set it "globally", for all buffers. Without a prefix arg, set it "locally", just for this buffer. By just answering RET you can find out what the current dictionary is. (fn DICT &optional ARG)Fispell-region Interactively check a region for spelling errors. Return nil if spell session was terminated, otherwise returns shift offset amount for last line processed. (fn REG-START REG-END &optional RECHECKP SHIFT)Fispell-comments-and-strings Check comments and strings in the current buffer for spelling errors. (fn)Fispell-buffer Check the current buffer for spelling errors interactively. (fn)Fispell-buffer-with-debug `ispell-buffer' with some output sent to `ispell-debug-buffer' buffer. If APPEND is non-n il, append the info to previous buffer if exists. (fn &optional APPEND)Fispell-continue Continue a halted spelling session beginning with the current word. (fn)Fispell-complete-word Try to complete the word before or at point. If optional INTERIOR-FRAG is non-nil, then the word may be a character sequence inside of a word. Standard ispell choices are then available. (fn &optional INTERIOR-FRAG)Fispell-complete-word-interior-frag Completes word matching character sequence inside a word. (fn)Fispell Interactively check a region or buffer for spelling errors. If `transient-mark-mode' is on, and a region is active, spell-check that region. Otherwise spell-check the buffer. Ispell dictionaries are not distributed with Emacs. If you are looking for a dictionary, please see the distribution of the GNU ispell program, or do an Internet search; there are various dictionaries available on the net. (fn)Fispell-minor-mode Toggle last-word spell checking (Ispell minor mode). With a prefix argument ARG, enable Ispell minor mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Ispell minor mode is a buffer-local minor mode. When enabled, typing SPC or RET warns you if the previous word is incorrectly spelled. All the buffer-local variables and dictionaries are ignored. To read them into the running Ispell process, type \[ispell-word] SPC. For spell-checking "on the fly", not just after typing SPC or RET, use `flyspell-mode'. (fn &optional ARG)Fispell-message Check the spelling of a mail message or news post. Don't check spelling of message headers except the Subject field. Don't check included messages. To abort spell checking of a message region and send the message anyway, use the `x' command. (Any subsequent regions will be checked.) The `X' command aborts sending the message so that you can edit the buffer. To spell-check whenever a message is sent, include the appropriate lines in your init file: (add-hook \='message-send-hook #\='ispell-message) ;; GNUS 5 (add-hook \='news-inews-hook #\='ispell-message) ;; GNUS 4 (add-hook \='mail-send-hook #\='ispell-message) (add-hook \='mh-before-send-letter-hook #\='ispell-message) You can bind this to the key C-c i in GNUS or mail by adding to `news-reply-mode-hook' or `mail-mode-hook' the following lambda expression: (function (lambda () (local-set-key "\C-ci" \='ispell-message))) (fn)Fsetup-japanese-environment-internal (fn)Fjapanese-katakana Convert argument to Katakana and return that. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. Optional argument HANKAKU t means to convert to `hankaku' Katakana (`japanese-jisx0201-kana'), in which case return value may be a string even if OBJ is a character if two Katakanas are necessary to represent OBJ. (fn OBJ &optional HANKAKU)Fjapanese-hiragana Convert argument to Hiragana and return that. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. (fn OBJ)Fjapanese-hankaku Convert argument to `hankaku' and return that. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. Optional argument ASCII-ONLY non-nil means to return only ASCII character. (fn OBJ &optional ASCII-ONLY)Fjapanese-zenkaku Convert argument to `zenkaku' and return that. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. (fn OBJ)Fjapanese-katakana-region Convert Japanese `hiragana' chars in the region to `katakana' chars. Optional argument HANKAKU t means to convert to `hankaku katakana' character of which charset is `japanese-jisx0201-kana'. (fn FROM TO &optional HANKAKU)Fjapanese-hiragana-region Convert Japanese `katakana' chars in the region to `hiragana' chars. (fn FROM TO)Fjapanese-hankaku-region Convert Japanese `zenkaku' chars in the region to `hankaku' chars. `Zenkaku' chars belong to `japanese-jisx0208' `Hankaku' chars belong to `ascii' or `japanese-jisx0201-kana'. Optional argument ASCII-ONLY non-nil means to convert only to ASCII char. (fn FROM TO &optional ASCII-ONLY)Fjapanese-zenkaku-region Convert hankaku' chars in the region to Japanese `zenkaku' chars. `Zenkaku' chars belong to `japanese-jisx0208' `Hankaku' chars belong to `ascii' or `japanese-jisx0201-kana'. Optional argument KATAKANA-ONLY non-nil means to convert only KATAKANA char. (fn FROM TO &optional KATAKANA-ONLY)Fread-hiragana-string Read a Hiragana string from the minibuffer, prompting with string PROMPT. If non-nil, second arg INITIAL-INPUT is a string to insert before reading. (fn PROMPT &optional INITIAL-INPUT)Vjka-compr-inhibit Non-nil means inhibit automatic uncompression temporarily. Lisp programs can bind this to t to do that. It is not recommended to set this variable permanently to anything but nil.Fjka-compr-handler (fn OPERATION &rest ARGS)Fjka-compr-uninstall Uninstall jka-compr. This removes the entries in `file-name-handler-alist' and `auto-mode-alist' and `inhibit-local-variables-suffixes' that were added by `jka-compr-installed'. (fn)Fjs-mode Major mode for editing JavaScript. (fn)Fjs-jsx-mode Major mode for editing JSX. To customize the indentation for this mode, set the SGML offset variables (`sgml-basic-offset', `sgml-attribute-offset' et al.) locally, like so: (defun set-jsx-indentation () (setq-local sgml-basic-offset js-indent-level)) (add-hook \='js-jsx-mode-hook #\='set-jsx-indentation) (fn)Vkeypad-setup Specifies the keypad setup for unshifted keypad keys when NumLock is off. When selecting the plain numeric keypad setup, the character returned by the decimal key must be specified.Vkeypad-numlock-setup Specifies the keypad setup for unshifted keypad keys when NumLock is on. When selecting the plain numeric keypad setup, the character returned by the decimal key must be specified.Vkeypad-shifted-setup Specifies the keypad setup for shifted keypad keys when NumLock is off. When selecting the plain numeric keypad setup, the character returned by the decimal key must be specified.Vkeypad-numlock-shifted-setup Specifies the keypad setup for shifted keypad keys when NumLock is off. When selecting the plain numeric keypad setup, the character returned by the decimal key must be specified.Fkeypad-setup Set keypad bindings in `function-key-map' according to SETUP. If optional second argument NUMLOCK is non-nil, the NumLock On bindings are changed. Otherwise, the NumLock Off bindings are changed. If optional third argument SHIFT is non-nil, the shifted keypad keys are bound. Setup Binding ------------------------------------------------------------- `prefix' Command prefix argument, i.e. M-0 .. M-9 and M-- `S-cursor' Bind shifted keypad keys to the shifted cursor movement keys. `cursor' Bind keypad keys to the cursor movement keys. `numeric' Plain numeric keypad, i.e. 0 .. 9 and . (or DECIMAL arg) `none' Removes all bindings for keypad keys in function-key-map; this enables any user-defined bindings for the keypad keys in the global and local keymaps. If SETUP is `numeric' and the optional fourth argument DECIMAL is non-nil, the decimal key on the keypad is mapped to DECIMAL instead of `.' (fn SETUP &optional NUMLOCK SHIFT DECIMAL)Fkinsoku Go to a line breaking position near point by doing `kinsoku' processing. LINEBEG is a buffer position we can't break a line before. `Kinsoku' processing is to prohibit specific characters to be placed at beginning of line or at end of line. Characters not to be placed at beginning and end of line have character category `>' and `<' respectively. This restriction is dissolved by making a line longer or shorter. `Kinsoku' is a Japanese word which originally means ordering to stay in one place, and is used for the text processing described above in the context of text formatting. (fn LINEBEG)Vkkc-after-update-conversion-functions Functions to run after a conversion is selected in `japanese' input method. With this input method, a user can select a proper conversion from candidate list. Each time he changes the selection, functions in this list are called with two arguments; starting and ending buffer positions that contains the current selection.Fkkc-region Convert Kana string in the current region to Kanji-Kana mixed string. Users can select a desirable conversion interactively. When called from a program, expects two arguments, positions FROM and TO (integers or markers) specifying the target region. When it returns, the point is at the tail of the selected conversion, and the return value is the length of the conversion. (fn FROM TO)Fkmacro-exec-ring-item Execute item ITEM from the macro ring. ARG is the number of times to execute the item. (fn ITEM ARG)Fkmacro-start-macro Record subsequent keyboard input, defining a keyboard macro. The commands are recorded even as they are executed. Use \[kmacro-end-macro] to finish recording and make the macro available. Use \[kmacro-end-and-call-macro] to execute the macro. Non-nil arg (prefix arg) means append to last macro defined. With \[universal-argument] prefix, append to last keyboard macro defined. Depending on `kmacro-execute-before-append', this may begin by re-executing the last macro as if you typed it again. Otherwise, it sets `kmacro-counter' to ARG or 0 if missing before defining the macro. Use \[kmacro-insert-counter] to insert (and increment) the macro counter. The counter value can be set or modified via \[kmacro-set-counter] and \[kmacro-add-counter]. The format of the counter can be modified via \[kmacro-set-format]. Use \[kmacro-name-last-macro] to give it a name that will remain valid even after another macro is defined. Use \[kmacro-bind-to-key] to bind it to a key sequence. (fn ARG)Fkmacro-end-macro Finish defining a keyboard macro. The definition was started by \[kmacro-start-macro]. The macro is now available for use via \[kmacro-call-macro], or it can be given a name with \[kmacro-name-last-macro] and then invoked under that name. With numeric arg, repeat macro now that many times, counting the definition just completed as the first repetition. An argument of zero means repeat until error. (fn ARG)Fkmacro-call-macro Call the keyboard MACRO that you defined with \[kmacro-start-macro]. A prefix argument serves as a repeat count. Zero means repeat until error. MACRO defaults to `last-kbd-macro'. When you call the macro, you can call the macro again by repeating just the last key in the key sequence that you used to call this command. See `kmacro-call-repeat-key' and `kmacro-call-repeat-with-arg' for details on how to adjust or disable this behavior. To give a macro a name so you can call it even after defining others, use \[kmacro-name-last-macro]. (fn ARG &optional NO-REPEAT END-MACRO MACRO)Fkmacro-start-macro-or-insert-counter Record subsequent keyboard input, defining a keyboard macro. The commands are recorded even as they are executed. Initializes the macro's `kmacro-counter' to ARG (or 0 if no prefix arg) before defining the macro. With \[universal-argument], appends to current keyboard macro (keeping the current value of `kmacro-counter'). When used during defining/executing a macro, inserts the current value of `kmacro-counter' and increments the counter value by ARG (or by 1 if no prefix argument). With just \[universal-argument], inserts the previous value of `kmacro-counter', and does not modify the counter; this is different from incrementing the counter by zero. (The previous value of the counter is the one it had before the last increment.) The macro counter can be set directly via \[kmacro-set-counter] and \[kmacro-add-counter]. The format of the inserted value of the counter can be controlled via \[kmacro-set-format]. (fn ARG)Fkmacro-end-or-call-macro End kbd macro if currently being defined; else call last kbd macro. With numeric prefix ARG, repeat macro that many times. With \[universal-argument], call second macro in macro ring. (fn ARG &optional NO-REPEAT)Fkmacro-end-and-call-macro Call last keyboard macro, ending it first if currently being defined. With numeric prefix ARG, repeat macro that many times. Zero argument means repeat until there is an error. To give a macro a name, so you can call it even after defining other macros, use \[kmacro-name-last-macro]. (fn ARG &optional NO-REPEAT)Fkmacro-end-call-mouse Move point to the position clicked with the mouse and call last kbd macro. If kbd macro currently being defined end it before activating it. (fn EVENT)Vdefault-korean-keyboard The kind of Korean keyboard for Korean input method. "" for 2, "3" for 3.Fsetup-korean-environment-internal (fn)Flao-compose-string (fn STR)Flao-transcribe-single-roman-syllable-to-lao Transcribe a Romanized Lao syllable in the region FROM and TO to Lao string. Only the first syllable is transcribed. The value has the form: (START END LAO-STRING), where START and END are the beginning and end positions of the Roman Lao syllable, LAO-STRING is the Lao character transcription of it. Optional 3rd arg STR, if non-nil, is a string to search for Roman Lao syllable. In that case, FROM and TO are indexes to STR. (fn FROM TO &optional STR)Flao-transcribe-roman-to-lao-string Transcribe Romanized Lao string STR to Lao character string. (fn STR)Flao-composition-function (fn GSTRING)Flao-compose-region (fn FROM TO)Vlatex-inputenc-coding-alist Mapping from LaTeX encodings in "inputenc.sty" to Emacs coding systems. LaTeX encodings are specified with "\usepackage[encoding]{inputenc}". Used by the function `latexenc-find-file-coding-system'.Flatexenc-inputenc-to-coding-system Return the corresponding coding-system for the specified input encoding. Return nil if no matching coding system can be found. (fn INPUTENC)Flatexenc-coding-system-to-inputenc Return the corresponding input encoding for the specified coding system. Return nil if no matching input encoding can be found. (fn CS)Flatexenc-find-file-coding-system Determine the coding system of a LaTeX file if it uses "inputenc.sty". The mapping from LaTeX's "inputenc.sty" encoding names to Emacs coding system names is determined from `latex-inputenc-coding-alist'. (fn ARG-LIST)Vlatin1-display Set up Latin-1/ASCII display for ISO8859 character sets. This is done for each character set in the list `latin1-display-sets', if no font is available to display it. Characters are displayed using the corresponding Latin-1 characters where they match. Otherwise ASCII sequences are used, mostly following the Latin prefix input methods. Some different ASCII sequences are used if `latin1-display-mnemonic' is non-nil. This option also treats some characters in the `mule-unicode-...' charsets if you don't have a Unicode font with which to display them. Setting this variable directly does not take effect; use either \[customize] or the function `latin1-display'.Flatin1-display Set up Latin-1/ASCII display for the arguments character SETS. See option `latin1-display' for the method. The members of the list must be in `latin1-display-sets'. With no arguments, reset the display for all of `latin1-display-sets'. See also `latin1-display-setup'. (fn &rest SETS)Vlatin1-display-ucs-per-lynx Set up Latin-1/ASCII display for Unicode characters. This uses the transliterations of the Lynx browser. The display isn't changed if the display can render Unicode characters. Setting this variable directly does not take effect; use either \[customize] or the function `latin1-display'.Fld-script-mode A major mode to edit GNU ld script files (fn)Fless-css-mode Major mode for editing Less files (http://lesscss.org/). Special commands: \{less-css-mode-map} (fn)Flet-alist Let-bind dotted symbols to their cdrs in ALIST and execute BODY. Dotted symbol is any symbol starting with a `.'. Only those present in BODY are let-bound and this search is done at compile time. For instance, the following code (let-alist alist (if (and .title .body) .body .site .site.contents)) essentially expands to (let ((.title (cdr (assq \='title alist))) (.body (cdr (assq \='body alist))) (.site (cdr (assq \='site alist))) (.site.contents (cdr (assq \='contents (cdr (assq \='site alist)))))) (if (and .title .body) .body .site .site.contents)) If you nest `let-alist' invocations, the inner one can't access the variables of the outer one. You can, however, access alists inside the original alist by using dots inside the symbol, as displayed in the example above. (fn ALIST &rest BODY)Flife Run Conway's Life simulation. The starting pattern is randomly selected. Prefix arg (optional first arg non-nil from a program) is the number of seconds to sleep between generations (this defaults to 1). (fn &optional SLEEPTIME)Flinum-mode Toggle display of line numbers in the left margin (Linum mode). With a prefix argument ARG, enable Linum mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Linum mode is a buffer-local minor mode. (fn &optional ARG)Vglobal-linum-mode Non-nil if Global Linum mode is enabled. See the `global-linum-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-linum-mode'.Fglobal-linum-mode Toggle Linum mode in all buffers. With prefix ARG, enable Global Linum mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Linum mode is enabled in all buffers where `linum-on' would do it. See `linum-mode' for more information on Linum mode. (fn &optional ARG)Funload-feature Unload the library that provided FEATURE. If the feature is required by any other loaded code, and prefix arg FORCE is nil, raise an error. Standard unloading activities include restoring old autoloads for functions defined by the library, undoing any additions that the library has made to hook variables or to `auto-mode-alist', undoing ELP profiling of functions in that library, unproviding any features provided by the library, and canceling timers held in variables defined by the library. If a function `FEATURE-unload-function' is defined, this function calls it with no arguments, before doing anything else. That function can do whatever is appropriate to undo the loading of the library. If `FEATURE-unload-function' returns non-nil, that suppresses the standard unloading of the library. Otherwise the standard unloading proceeds. `FEATURE-unload-function' has access to the package's list of definitions in the variable `unload-function-defs-list' and could remove symbols from it in the event that the package has done something strange, such as redefining an Emacs function. (fn FEATURE &optional FORCE)Vlocate-ls-subdir-switches `ls' switches for inserting subdirectories in `*Locate*' buffers. This should contain the "-l" switch, but not the "-F" or "-b" switches.Flocate Run the program `locate', putting results in `*Locate*' buffer. Pass it SEARCH-STRING as argument. Interactively, prompt for SEARCH-STRING. With prefix arg ARG, prompt for the exact shell command to run instead. This program searches for those file names in a database that match SEARCH-STRING and normally outputs all matching absolute file names, one per line. The database normally consists of all files on your system, or of all files that you have access to. Consult the documentation of the program for the details about how it determines which file names match SEARCH-STRING. (Those details vary highly with the version.) You can specify another program for this command to run by customizing the variables `locate-command' or `locate-make-command-line'. The main use of FILTER is to implement `locate-with-filter'. See the docstring of that function for its meaning. After preparing the results buffer, this runs `dired-mode-hook' and then `locate-post-command-hook'. (fn SEARCH-STRING &optional FILTER ARG)Flocate-with-filter Run the executable program `locate' with a filter. This function is similar to the function `locate', which see. The difference is that, when invoked interactively, the present function prompts for both SEARCH-STRING and FILTER. It passes SEARCH-STRING to the locate executable program. It produces a `*Locate*' buffer that lists only those lines in the output of the locate program that contain a match for the regular expression FILTER; this is often useful to constrain a big search. ARG is the interactive prefix arg, which has the same effect as in `locate'. When called from Lisp, this function is identical with `locate', except that FILTER is not optional. (fn SEARCH-STRING FILTER &optional ARG)Flog-edit Setup a buffer to enter a log message. The buffer is put in mode MODE or `log-edit-mode' if MODE is nil. \<log-edit-mode-map> If SETUP is non-nil, erase the buffer and run `log-edit-hook'. Set mark and point around the entire contents of the buffer, so that it is easy to kill the contents of the buffer with \[kill-region]. Once the user is done editing the message, invoking the command \[log-edit-done] (`log-edit-done') will call CALLBACK to do the actual commit. PARAMS if non-nil is an alist of variables and buffer-local values to give them in the Log Edit buffer. Possible keys and associated values: `log-edit-listfun' -- function taking no arguments that returns the list of files that are concerned by the current operation (using relative names); `log-edit-diff-function' -- function taking no arguments that displays a diff of the files concerned by the current operation. `vc-log-fileset' -- the VC fileset to be committed (if any). If BUFFER is non-nil `log-edit' will jump to that buffer, use it to edit the log message and go back to the current buffer when done. Otherwise, it uses the current buffer. (fn CALLBACK &optional SETUP PARAMS BUFFER MODE &rest IGNORE)Flog-view-mode Major mode for browsing CVS log output. (fn)Vlpr-windows-system Non-nil if running on MS-DOS or MS Windows.Vlpr-lp-system Non-nil if running on a system type that uses the "lp" command.Vprinter-name The name of a local printer to which data is sent for printing. (Note that PostScript files are sent to `ps-printer-name', which see.) On Unix-like systems, a string value should be a name understood by lpr's -P option; otherwise the value should be nil. On MS-DOS and MS-Windows systems, a string value is taken as the name of a printer device or port, provided `lpr-command' is set to "". Typical non-default settings would be "LPT1" to "LPT3" for parallel printers, or "COM1" to "COM4" or "AUX" for serial printers, or "//hostname/printer" for a shared network printer. You can also set it to the name of a file, in which case the output gets appended to that file. If you want to discard the printed output, set this to "NUL".Vlpr-switches List of strings to pass as extra options for the printer program. It is recommended to set `printer-name' instead of including an explicit switch on this list. See `lpr-command'.Vlpr-command Name of program for printing a file. On MS-DOS and MS-Windows systems, if the value is an empty string then Emacs will write directly to the printer port named by `printer-name'. The programs `print' and `nprint' (the standard print programs on Windows NT and Novell Netware respectively) are handled specially, using `printer-name' as the destination for output; any other program is treated like `lpr' except that an explicit filename is given as the last argument.Flpr-buffer Print buffer contents without pagination or page headers. See the variables `lpr-switches' and `lpr-command' for customization of the printer command. (fn)Fprint-buffer Paginate and print buffer contents. The variable `lpr-headers-switches' controls how to paginate. If it is nil (the default), we run the `pr' program (or whatever program `lpr-page-header-program' specifies) to paginate. `lpr-page-header-switches' specifies the switches for that program. Otherwise, the switches in `lpr-headers-switches' are used in the print command itself; we expect them to request pagination. See the variables `lpr-switches' and `lpr-command' for further customization of the printer command. (fn)Flpr-region Print region contents without pagination or page headers. See the variables `lpr-switches' and `lpr-command' for customization of the printer command. (fn START END)Fprint-region Paginate and print the region contents. The variable `lpr-headers-switches' controls how to paginate. If it is nil (the default), we run the `pr' program (or whatever program `lpr-page-header-program' specifies) to paginate. `lpr-page-header-switches' specifies the switches for that program. Otherwise, the switches in `lpr-headers-switches' are used in the print command itself; we expect them to request pagination. See the variables `lpr-switches' and `lpr-command' for further customization of the printer command. (fn START END)Vls-lisp-support-shell-wildcards Non-nil means ls-lisp treats file patterns as shell wildcards. Otherwise they are treated as Emacs regexps (for backward compatibility).Flunar-phases Display the quarters of the moon for last month, this month, and next month. If called with an optional prefix argument ARG, prompts for month and year. This function is suitable for execution in an init file. (fn &optional ARG)Fm4-mode A major mode to edit m4 macro files. (fn)Fname-last-kbd-macro Assign a name to the last keyboard macro defined. Argument SYMBOL is the name to define. The symbol's function definition becomes the keyboard macro string. Such a "function" cannot be called from Lisp, but it is a valid editor command. (fn SYMBOL)Finsert-kbd-macro Insert in buffer the definition of kbd macro MACRONAME, as Lisp code. MACRONAME should be a symbol. Optional second arg KEYS means also record the keys it is on (this is the prefix argument, when calling interactively). This Lisp code will, when executed, define the kbd macro with the same definition it has now. If you say to record the keys, the Lisp code will also rebind those keys to the macro. Only global key bindings are recorded since executing this Lisp code always makes global bindings. To save a kbd macro, visit a file of Lisp code such as your `~/.emacs', use this command, and then save the file. (fn MACRONAME &optional KEYS)Fkbd-macro-query Query user during kbd macro execution. With prefix argument, enters recursive edit, reading keyboard commands even within a kbd macro. You can give different commands each time the macro executes. Without prefix argument, asks whether to continue running the macro. Your options are: \<query-replace-map> \[act] Finish this iteration normally and continue with the next. \[skip] Skip the rest of this iteration, and start the next. \[exit] Stop the macro entirely right now. \[recenter] Redisplay the screen, then ask again. \[edit] Enter recursive edit; ask again when you exit from that. (fn FLAG)Fapply-macro-to-region-lines Apply last keyboard macro to all lines in the region. For each line that begins in the region, move to the beginning of the line, and run the last keyboard macro. When called from lisp, this function takes two arguments TOP and BOTTOM, describing the current region. TOP must be before BOTTOM. The optional third argument MACRO specifies a keyboard macro to execute. This is useful for quoting or unquoting included text, adding and removing comments, or producing tables where the entries are regular. For example, in Usenet articles, sections of text quoted from another author are indented, or have each line start with `>'. To quote a section of text, define a keyboard macro which inserts `>', put point and mark at opposite ends of the quoted section, and use `\[apply-macro-to-region-lines]' to mark the entire section. Suppose you wanted to build a keyword table in C where each entry looked like this: { "foo", foo_data, foo_function }, { "bar", bar_data, bar_function }, { "baz", baz_data, baz_function }, You could enter the names in this format: foo bar baz and write a macro to massage a word into a table entry: \C-x ( \M-d { "\C-y", \C-y_data, \C-y_function }, \C-x ) and then select the region of un-tablified names and use `\[apply-macro-to-region-lines]' to build the table from the names. (fn TOP BOTTOM &optional MACRO)Fmail-extract-address-components Extract full name and canonical address from ADDRESS. ADDRESS should be in RFC 822 (or later) format. Returns a list of the form (FULL-NAME CANONICAL-ADDRESS). If no name can be extracted, FULL-NAME will be nil. Also see `mail-extr-ignore-single-names' and `mail-extr-ignore-realname-equals-mailbox-name'. If the optional argument ALL is non-nil, then ADDRESS can contain zero or more recipients, separated by commas, and we return a list of the form ((FULL-NAME CANONICAL-ADDRESS) ...) with one element for each recipient. If ALL is nil, then if ADDRESS contains more than one recipients, all but the first is ignored. ADDRESS may be a string or a buffer. If it is a buffer, the visible (narrowed) portion of the buffer will be interpreted as the address. (This feature exists so that the clever caller might be able to avoid consing a string.) (fn ADDRESS &optional ALL)Fwhat-domain Convert mail domain DOMAIN to the country it corresponds to. (fn DOMAIN)Fmail-hist-define-keys Define keys for accessing mail header history. For use in hooks. (fn)Fmail-hist-enable (fn)Vmail-hist-keep-history Non-nil means keep a history for headers and text of outgoing mail.Fmail-hist-put-headers-into-history Put headers and contents of this message into mail header history. Each header has its own independent history, as does the body of the message. This function normally would be called when the message is sent. (fn)Vmail-use-rfc822 If non-nil, use a full, hairy RFC 822 (or later) parser on mail addresses. Otherwise, (the default) use a smaller, somewhat faster, and often correct parser.Vmail-dont-reply-to-names Regexp specifying addresses to prune from a reply message. If this is nil, it is set the first time you compose a reply, to a value which excludes your own email address. Matching addresses are excluded from the CC field in replies, and also the To field, unless this would leave an empty To field.Fmail-file-babyl-p Return non-nil if FILE is a Babyl file. (fn FILE)Fmail-quote-printable Convert a string to the "quoted printable" Q encoding if necessary. If the string contains only ASCII characters and no troublesome ones, we return it unconverted. If the optional argument WRAPPER is non-nil, we add the wrapper characters =?ISO-8859-1?Q?....?=. (fn STRING &optional WRAPPER)Fmail-quote-printable-region Convert the region to the "quoted printable" Q encoding. If the optional argument WRAPPER is non-nil, we add the wrapper characters =?ISO-8859-1?Q?....?=. (fn BEG END &optional WRAPPER)Fmail-unquote-printable Undo the "quoted printable" encoding. If the optional argument WRAPPER is non-nil, we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=. (fn STRING &optional WRAPPER)Fmail-unquote-printable-region Undo the "quoted printable" encoding in buffer from BEG to END. If the optional argument WRAPPER is non-nil, we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=. On encountering malformed quoted-printable text, exits with an error, unless NOERROR is non-nil, in which case it continues, and returns nil when finished. Returns non-nil on successful completion. If UNIBYTE is non-nil, insert converted characters as unibyte. That is useful if you are going to character code decoding afterward, as Rmail does. (fn BEG END &optional WRAPPER NOERROR UNIBYTE)Fmail-fetch-field Return the value of the header field whose type is FIELD-NAME. If second arg LAST is non-nil, use the last field of type FIELD-NAME. If third arg ALL is non-nil, concatenate all such fields with commas between. If 4th arg LIST is non-nil, return a list of all such fields. The buffer should be narrowed to just the header, else false matches may be returned from the message body. (fn FIELD-NAME &optional LAST ALL LIST)Vmail-abbrevs-mode Non-nil if Mail-Abbrevs mode is enabled. See the `mail-abbrevs-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `mail-abbrevs-mode'.Fmail-abbrevs-mode Toggle abbrev expansion of mail aliases (Mail Abbrevs mode). With a prefix argument ARG, enable Mail Abbrevs mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Mail Abbrevs mode is a global minor mode. When enabled, abbrev-like expansion is performed when editing certain mail headers (those specified by `mail-abbrev-mode-regexp'), based on the entries in your `mail-personal-alias-file'. (fn &optional ARG)Fmail-abbrevs-setup Initialize use of the `mailabbrev' package. (fn)Fbuild-mail-abbrevs Read mail aliases from personal mail alias file and set `mail-abbrevs'. By default this is the file specified by `mail-personal-alias-file'. (fn &optional FILE RECURSIVEP)Fdefine-mail-abbrev Define NAME as a mail alias abbrev that translates to DEFINITION. If DEFINITION contains multiple addresses, separate them with commas. Optional argument FROM-MAILRC-FILE means that DEFINITION comes from a mailrc file. In that case, addresses are separated with spaces and addresses with embedded spaces are surrounded by double-quotes. (fn NAME DEFINITION &optional FROM-MAILRC-FILE)Vmail-complete-style Specifies how \[mail-complete] formats the full name when it completes. If nil, they contain just the return address like: king@grassland.com If `parens', they look like: king@grassland.com (Elvis Parsley) If `angles', they look like: Elvis Parsley <king@grassland.com>Fexpand-mail-aliases Expand all mail aliases in suitable header fields found between BEG and END. If interactive, expand in header fields. Suitable header fields are `To', `From', `CC' and `BCC', `Reply-to', and their `Resent-' variants. Optional second arg EXCLUDE may be a regular expression defining text to be removed from alias expansions. (fn BEG END &optional EXCLUDE)Fdefine-mail-alias Define NAME as a mail alias that translates to DEFINITION. This means that sending a message to NAME will actually send to DEFINITION. Normally, the addresses in DEFINITION must be separated by commas. If FROM-MAILRC-FILE is non-nil, then addresses in DEFINITION can be separated by spaces; an address can contain spaces if it is quoted with double-quotes. (fn NAME DEFINITION &optional FROM-MAILRC-FILE)Fmail-completion-at-point-function Compute completion data for mail aliases. For use on `completion-at-point-functions'. (fn)Fmail-complete Perform completion on header field or word preceding point. Completable headers are according to `mail-complete-alist'. If none matches current header, calls `mail-complete-function' and passes prefix ARG if any. (fn ARG)Fmailclient-send-it Pass current buffer on to the system's mail client. Suitable value for `send-mail-function'. The mail client is taken to be the handler of mailto URLs. (fn)Fmakefile-mode Major mode for editing standard Makefiles. If you are editing a file for a different make, try one of the variants `makefile-automake-mode', `makefile-gmake-mode', `makefile-makepp-mode', `makefile-bsdmake-mode' or, `makefile-imake-mode'. All but the last should be correctly chosen based on the file name, except if it is *.mk. This function ends by invoking the function(s) `makefile-mode-hook'. It is strongly recommended to use `font-lock-mode', because that provides additional parsing information. This is used for example to see that a rule action `echo foo: bar' is a not rule dependency, despite the colon. \{makefile-mode-map} In the browser, use the following keys: \{makefile-browser-map} Makefile mode can be configured by modifying the following variables: `makefile-browser-buffer-name': Name of the macro- and target browser buffer. `makefile-target-colon': The string that gets appended to all target names inserted by `makefile-insert-target'. ":" or "::" are quite common values. `makefile-macro-assign': The string that gets appended to all macro names inserted by `makefile-insert-macro'. The normal value should be " = ", since this is what standard make expects. However, newer makes such as dmake allow a larger variety of different macro assignments, so you might prefer to use " += " or " := " . `makefile-tab-after-target-colon': If you want a TAB (instead of a space) to be appended after the target colon, then set this to a non-nil value. `makefile-browser-leftmost-column': Number of blanks to the left of the browser selection mark. `makefile-browser-cursor-column': Column in which the cursor is positioned when it moves up or down in the browser. `makefile-browser-selected-mark': String used to mark selected entries in the browser. `makefile-browser-unselected-mark': String used to mark unselected entries in the browser. `makefile-browser-auto-advance-after-selection-p': If this variable is set to a non-nil value the cursor will automagically advance to the next line after an item has been selected in the browser. `makefile-pickup-everything-picks-up-filenames-p': If this variable is set to a non-nil value then `makefile-pickup-everything' also picks up filenames as targets (i.e. it calls `makefile-pickup-filenames-as-targets'), otherwise filenames are omitted. `makefile-cleanup-continuations': If this variable is set to a non-nil value then Makefile mode will assure that no line in the file ends with a backslash (the continuation character) followed by any whitespace. This is done by silently removing the trailing whitespace, leaving the backslash itself intact. IMPORTANT: Please note that enabling this option causes Makefile mode to MODIFY A FILE WITHOUT YOUR CONFIRMATION when "it seems necessary". `makefile-browser-hook': A function or list of functions to be called just before the browser is entered. This is executed in the makefile buffer. `makefile-special-targets-list': List of special targets. You will be offered to complete on one of those in the minibuffer whenever you enter a `.'. at the beginning of a line in Makefile mode. (fn)Fmakefile-automake-mode An adapted `makefile-mode' that knows about automake. (fn)Fmakefile-gmake-mode An adapted `makefile-mode' that knows about gmake. (fn)Fmakefile-makepp-mode An adapted `makefile-mode' that knows about makepp. (fn)Fmakefile-bsdmake-mode An adapted `makefile-mode' that knows about BSD make. (fn)Fmakefile-imake-mode An adapted `makefile-mode' that knows about imake. (fn)Fmake-command-summary Make a summary of current key bindings in the buffer *Summary*. Previous contents of that buffer are killed first. (fn)Fman Get a Un*x manual page and put it in a buffer. This command is the top-level command in the man package. It runs a Un*x command to retrieve and clean a manpage in the background and places the results in a `Man-mode' browsing buffer. The variable `Man-width' defines the number of columns in formatted manual pages. The buffer is displayed immediately. The variable `Man-notify-method' defines how the buffer is displayed. If a buffer already exists for this man page, it will be displayed without running the man command. For a manpage from a particular section, use either of the following. "cat(1)" is how cross-references appear and is passed to man as "1 cat". cat(1) 1 cat To see manpages from all sections related to a subject, use an "all pages" option (which might be "-a" if it's not the default), then step through with `Man-next-manpage' (\<Man-mode-map>\[Man-next-manpage]) etc. Add to `Man-switches' to make this option permanent. -a chmod An explicit filename can be given too. Use -l if it might otherwise look like a page name. /my/file/name.1.gz -l somefile.1 An "apropos" query with -k gives a buffer of matching page names or descriptions. The pattern argument is usually an "grep -E" style regexp. -k pattern (fn MAN-ARGS)Fman-follow Get a Un*x manual page of the item under point and put it in a buffer. (fn MAN-ARGS)FMan-bookmark-jump Default bookmark handler for Man buffers. (fn BOOKMARK)Fmaster-mode Toggle Master mode. With a prefix argument ARG, enable Master mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Master mode is enabled, you can scroll the slave buffer using the following commands: \{master-mode-map} The slave buffer is stored in the buffer-local variable `master-of'. You can set this variable using `master-set-slave'. You can show yourself the value of `master-of' by calling `master-show-slave'. (fn &optional ARG)Vminibuffer-depth-indicate-mode Non-nil if Minibuffer-Depth-Indicate mode is enabled. See the `minibuffer-depth-indicate-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `minibuffer-depth-indicate-mode'.Fminibuffer-depth-indicate-mode Toggle Minibuffer Depth Indication mode. With a prefix argument ARG, enable Minibuffer Depth Indication mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Minibuffer Depth Indication mode is a global minor mode. When enabled, any recursive use of the minibuffer will show the recursion depth in the minibuffer prompt. This is only useful if `enable-recursive-minibuffers' is non-nil. (fn &optional ARG)Fmessage-mode Major mode for editing mail and news to be sent. Like Text Mode but with these additional commands:\<message-mode-map> C-c C-s `message-send' (send the message) C-c C-c `message-send-and-exit' C-c C-d Postpone sending the message C-c C-k Kill the message C-c C-f move to a header field (and create it if there isn't): C-c C-f C-t move to To C-c C-f C-s move to Subject C-c C-f C-c move to Cc C-c C-f C-b move to Bcc C-c C-f C-w move to Fcc C-c C-f C-r move to Reply-To C-c C-f C-u move to Summary C-c C-f C-n move to Newsgroups C-c C-f C-k move to Keywords C-c C-f C-d move to Distribution C-c C-f C-o move to From ("Originator") C-c C-f C-f move to Followup-To C-c C-f C-m move to Mail-Followup-To C-c C-f C-e move to Expires C-c C-f C-i cycle through Importance values C-c C-f s change subject and append "(was: <Old Subject>)" C-c C-f x crossposting with FollowUp-To header and note in body C-c C-f t replace To: header with contents of Cc: or Bcc: C-c C-f a Insert X-No-Archive: header and a note in the body C-c C-t `message-insert-to' (add a To header to a news followup) C-c C-l `message-to-list-only' (removes all but list address in to/cc) C-c C-n `message-insert-newsgroups' (add a Newsgroup header to a news reply) C-c C-b `message-goto-body' (move to beginning of message text). C-c C-i `message-goto-signature' (move to the beginning of the signature). C-c C-w `message-insert-signature' (insert `message-signature-file' file). C-c C-y `message-yank-original' (insert current message, if any). C-c C-q `message-fill-yanked-message' (fill what was yanked). C-c C-e `message-elide-region' (elide the text between point and mark). C-c C-v `message-delete-not-region' (remove the text outside the region). C-c C-z `message-kill-to-signature' (kill the text up to the signature). C-c C-r `message-caesar-buffer-body' (rot13 the message body). C-c C-a `mml-attach-file' (attach a file as MIME). C-c C-u `message-insert-or-toggle-importance' (insert or cycle importance). C-c M-n `message-insert-disposition-notification-to' (request receipt). C-c M-m `message-mark-inserted-region' (mark region with enclosing tags). C-c M-f `message-mark-insert-file' (insert file marked with enclosing tags). M-RET `message-newline-and-reformat' (break the line and reformat). (fn)Fmessage-mail Start editing a mail message to be sent. OTHER-HEADERS is an alist of header/value pairs. CONTINUE says whether to continue editing a message already being composed. SWITCH-FUNCTION is a function used to switch to and display the mail buffer. (fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-FUNCTION YANK-ACTION SEND-ACTIONS RETURN-ACTION &rest IGNORED)Fmessage-news Start editing a news article to be sent. (fn &optional NEWSGROUPS SUBJECT)Fmessage-reply Start editing a reply to the article in the current buffer. (fn &optional TO-ADDRESS WIDE SWITCH-FUNCTION)Fmessage-wide-reply Make a "wide" reply to the message in the current buffer. (fn &optional TO-ADDRESS)Fmessage-followup Follow up to the message in the current buffer. If TO-NEWSGROUPS, use that as the new Newsgroups line. (fn &optional TO-NEWSGROUPS)Fmessage-cancel-news Cancel an article you posted. If ARG, allow editing of the cancellation message. (fn &optional ARG)Fmessage-supersede Start composing a message to supersede the current message. This is done simply by taking the old article and adding a Supersedes header line with the old Message-ID. (fn)Fmessage-recover Reread contents of current buffer from its last auto-save file. (fn)Fmessage-forward Forward the current message via mail. Optional NEWS will use news to forward instead of mail. Optional DIGEST will use digest to forward. (fn &optional NEWS DIGEST)Fmessage-forward-make-body (fn FORWARD-BUFFER &optional DIGEST)Fmessage-forward-rmail-make-body (fn FORWARD-BUFFER)Fmessage-insinuate-rmail Let RMAIL use message to forward. (fn)Fmessage-resend Resend the current article to ADDRESS. (fn ADDRESS)Fmessage-bounce Re-mail the current message. This only makes sense if the current message is a bounce message that contains some mail you have written which has been bounced back to you. (fn)Fmessage-mail-other-window Like `message-mail' command, but display mail buffer in another window. (fn &optional TO SUBJECT)Fmessage-mail-other-frame Like `message-mail' command, but display mail buffer in another frame. (fn &optional TO SUBJECT)Fmessage-news-other-window Start editing a news article to be sent. (fn &optional NEWSGROUPS SUBJECT)Fmessage-news-other-frame Start editing a news article to be sent. (fn &optional NEWSGROUPS SUBJECT)Fmessage-bold-region Bold all nonblank characters in the region. Works by overstriking characters. Called from program, takes two arguments START and END which specify the range to operate on. (fn START END)Fmessage-unbold-region Remove all boldness (overstruck characters) in the region. Called from program, takes two arguments START and END which specify the range to operate on. (fn START END)Fmetafont-mode Major mode for editing Metafont sources. (fn)Fmetapost-mode Major mode for editing MetaPost sources. (fn)Fmetamail-interpret-header Interpret a header part of a MIME message in current buffer. Its body part is not interpreted at all. (fn)Fmetamail-interpret-body Interpret a body part of a MIME message in current buffer. Optional argument VIEWMODE specifies the value of the EMACS_VIEW_MODE environment variable (defaulted to 1). Optional argument NODISPLAY non-nil means buffer is not redisplayed as output is inserted. Its header part is not interpreted at all. (fn &optional VIEWMODE NODISPLAY)Fmetamail-buffer Process current buffer through `metamail'. Optional argument VIEWMODE specifies the value of the EMACS_VIEW_MODE environment variable (defaulted to 1). Optional argument BUFFER specifies a buffer to be filled (nil means current). Optional argument NODISPLAY non-nil means buffer is not redisplayed as output is inserted. (fn &optional VIEWMODE BUFFER NODISPLAY)Fmetamail-region Process current region through `metamail'. Optional argument VIEWMODE specifies the value of the EMACS_VIEW_MODE environment variable (defaulted to 1). Optional argument BUFFER specifies a buffer to be filled (nil means current). Optional argument NODISPLAY non-nil means buffer is not redisplayed as output is inserted. (fn BEG END &optional VIEWMODE BUFFER NODISPLAY)Fmh-smail Compose a message with the MH mail system. See `mh-send' for more details on composing mail. (fn)Fmh-smail-other-window Compose a message with the MH mail system in other window. See `mh-send' for more details on composing mail. (fn)Fmh-smail-batch Compose a message with the MH mail system. This function does not prompt the user for any header fields, and thus is suitable for use by programs that want to create a mail buffer. Users should use \[mh-smail] to compose mail. Optional arguments for setting certain fields include TO, SUBJECT, and OTHER-HEADERS. Additional arguments are IGNORED. This function remains for Emacs 21 compatibility. New applications should use `mh-user-agent-compose'. (fn &optional TO SUBJECT OTHER-HEADERS &rest IGNORED)Fmh-user-agent-compose Set up mail composition draft with the MH mail system. This is the `mail-user-agent' entry point to MH-E. This function conforms to the contract specified by `define-mail-user-agent' which means that this function should accept the same arguments as `compose-mail'. The optional arguments TO and SUBJECT specify recipients and the initial Subject field, respectively. OTHER-HEADERS is an alist specifying additional header fields. Elements look like (HEADER . VALUE) where both HEADER and VALUE are strings. CONTINUE, SWITCH-FUNCTION, YANK-ACTION, SEND-ACTIONS, and RETURN-ACTION and any additional arguments are IGNORED. (fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-FUNCTION YANK-ACTION SEND-ACTIONS RETURN-ACTION &rest IGNORED)Fmh-send-letter Save draft and send message. When you are all through editing a message, you send it with this command. You can give a prefix argument ARG to monitor the first stage of the delivery; this output can be found in a buffer called "*MH-E Mail Delivery*". The hook `mh-before-send-letter-hook' is run at the beginning of this command. For example, if you want to check your spelling in your message before sending, add the function `ispell-message'. Unless `mh-insert-auto-fields' had previously been called manually, the function `mh-insert-auto-fields' is called to insert fields based upon the recipients. If fields are added, you are given a chance to see and to confirm these fields before the message is actually sent. You can do away with this confirmation by turning off the option `mh-auto-fields-prompt-flag'. In case the MH "send" program is installed under a different name, use `mh-send-prog' to tell MH-E the name. The hook `mh-annotate-msg-hook' is run after annotating the message and scan line. (fn &optional ARG)Fmh-fully-kill-draft Quit editing and delete draft message. If for some reason you are not happy with the draft, you can use this command to kill the draft buffer and delete the draft message. Use the command \[kill-buffer] if you don't want to delete the draft message. (fn)Fmh-version Display version information about MH-E and the MH mail handling system. (fn)Fmh-rmail Incorporate new mail with MH. Scan an MH folder if ARG is non-nil. This function is an entry point to MH-E, the Emacs interface to the MH mail system. (fn &optional ARG)Fmh-nmail Check for new mail in inbox folder. Scan an MH folder if ARG is non-nil. This function is an entry point to MH-E, the Emacs interface to the MH mail system. (fn &optional ARG)Fmh-folder-mode Major MH-E mode for "editing" an MH folder scan listing.\<mh-folder-mode-map> You can show the message the cursor is pointing to, and step through the messages. Messages can be marked for deletion or refiling into another folder; these commands are executed all at once with a separate command. Options that control this mode can be changed with \[customize-group]; specify the "mh" group. In particular, please see the `mh-scan-format-file' option if you wish to modify scan's format. When a folder is visited, the hook `mh-folder-mode-hook' is run. Ranges ====== Many commands that operate on individual messages, such as `mh-forward' or `mh-refile-msg' take a RANGE argument. This argument can be used in several ways. If you provide the prefix argument (\[universal-argument]) to these commands, then you will be prompted for the message range. This can be any valid MH range which can include messages, sequences, and the abbreviations (described in the mh(1) man page): <num1>-<num2> Indicates all messages in the range <num1> to <num2>, inclusive. The range must be nonempty. <num>:N <num>:+N <num>:-N Up to N messages beginning with (or ending with) message num. Num may be any of the predefined symbols: first, prev, cur, next or last. first:N prev:N next:N last:N The first, previous, next or last messages, if they exist. all All of the messages. For example, a range that shows all of these things is `1 2 3 5-10 last:5 unseen'. If the option `transient-mark-mode' is set to t and you set a region in the MH-Folder buffer, then the MH-E command will perform the operation on all messages in that region. \{mh-folder-mode-map} (fn)Fmhtml-mode Major mode based on `html-mode', but works with embedded JS and CSS. Code inside a <script> element is indented using the rules from `js-mode'; and code inside a <style> element is indented using the rules from `css-mode'. (fn)Vmidnight-mode Non-nil if Midnight mode is enabled. See the `midnight-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `midnight-mode'.Fmidnight-mode Non-nil means run `midnight-hook' at midnight. (fn &optional ARG)Fclean-buffer-list Kill old buffers that have not been displayed recently. The relevant variables are `clean-buffer-list-delay-general', `clean-buffer-list-delay-special', `clean-buffer-list-kill-buffer-names', `clean-buffer-list-kill-never-buffer-names', `clean-buffer-list-kill-regexps' and `clean-buffer-list-kill-never-regexps'. While processing buffers, this procedure displays messages containing the current date/time, buffer name, how many seconds ago it was displayed (can be nil if the buffer was never displayed) and its lifetime, i.e., its "age" when it will be purged. (fn)Fmidnight-delay-set Modify `midnight-timer' according to `midnight-delay'. Sets the first argument SYMB (which must be symbol `midnight-delay') to its second argument TM. (fn SYMB TM)Vminibuffer-electric-default-mode Non-nil if Minibuffer-Electric-Default mode is enabled. See the `minibuffer-electric-default-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `minibuffer-electric-default-mode'.Fminibuffer-electric-default-mode Toggle Minibuffer Electric Default mode. With a prefix argument ARG, enable Minibuffer Electric Default mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Minibuffer Electric Default mode is a global minor mode. When enabled, minibuffer prompts that show a default value only show the default when it's applicable -- that is, when hitting RET would yield the default value. If the user modifies the input such that hitting RET would enter a non-default value, the prompt is modified to remove the default indication. (fn &optional ARG)Fcopy-from-above-command Copy characters from previous nonblank line, starting just above point. Copy ARG characters, but not past the end of that line. If no argument given, copy the entire rest of the line. The characters copied are inserted in the buffer before point. (fn &optional ARG)Fzap-up-to-char Kill up to, but not including ARGth occurrence of CHAR. Case is ignored if `case-fold-search' is non-nil in the current buffer. Goes backward if ARG is negative; error if CHAR not found. Ignores CHAR at point. (fn ARG CHAR)Fmark-beginning-of-buffer Set mark at the beginning of the buffer. (fn)Fmark-end-of-buffer Set mark at the end of the buffer. (fn)Fupcase-char Uppercasify ARG chars starting from point. Point doesn't move. (fn ARG)Fforward-to-word Move forward until encountering the beginning of a word. With argument, do this that many times. (fn ARG)Fbackward-to-word Move backward until encountering the end of a word. With argument, do this that many times. (fn ARG)Fbutterfly Use butterflies to flip the desired bit on the drive platter. Open hands and let the delicate wings flap once. The disturbance ripples outward, changing the flow of the eddy currents in the upper atmosphere. These cause momentary pockets of higher-pressure air to form, which act as lenses that deflect incoming cosmic rays, focusing them to strike the drive platter and flip the desired bit. You can type `M-x butterfly C-M-c' to run it. This is a permuted variation of `C-x M-c M-butterfly' from url `http://xkcd.com/378/'. (fn)Flist-dynamic-libraries Display a list of all dynamic libraries known to Emacs. (These are the libraries listed in `dynamic-library-alist'.) If optional argument LOADED-ONLY-P (interactively, prefix arg) is non-nil, only libraries already loaded are listed. Optional argument BUFFER specifies a buffer to use, instead of "*Dynamic Libraries*". The return value is always nil. (fn &optional LOADED-ONLY-P BUFFER)Vmulti-isearch-next-buffer-function Function to call to get the next buffer to search. When this variable is set to a function that returns a buffer, then after typing another \[isearch-forward] or \[isearch-backward] at a failing search, the search goes to the next buffer in the series and continues searching for the next occurrence. This function should return the next buffer (it doesn't need to switch to it), or nil if it can't find the next buffer (when it reaches the end of the search space). The first argument of this function is the current buffer where the search is currently searching. It defines the base buffer relative to which this function should find the next buffer. When the isearch direction is backward (when option `isearch-forward' is nil), this function should return the previous buffer to search. If the second argument of this function WRAP is non-nil, then it should return the first buffer in the series; and for the backward search, it should return the last buffer in the series.Vmulti-isearch-next-buffer-current-function The currently active function to get the next buffer to search. Initialized from `multi-isearch-next-buffer-function' when Isearch starts.Vmulti-isearch-current-buffer The buffer where the search is currently searching. The value is nil when the search still is in the initial buffer.Vmulti-isearch-buffer-list Sequence of buffers visited by multiple buffers Isearch. This is nil if Isearch is not currently searching more than one buffer.Vmulti-isearch-file-list Sequence of files visited by multiple file buffers Isearch.Fmulti-isearch-setup Set up isearch to search multiple buffers. Intended to be added to `isearch-mode-hook'. (fn)Fmulti-isearch-buffers Start multi-buffer Isearch on a list of BUFFERS. This list can contain live buffers or their names. Interactively read buffer names to search, one by one, ended with RET. With a prefix argument, ask for a regexp, and search in buffers whose names match the specified regexp. (fn BUFFERS)Fmulti-isearch-buffers-regexp Start multi-buffer regexp Isearch on a list of BUFFERS. This list can contain live buffers or their names. Interactively read buffer names to search, one by one, ended with RET. With a prefix argument, ask for a regexp, and search in buffers whose names match the specified regexp. (fn BUFFERS)Fmulti-isearch-files Start multi-buffer Isearch on a list of FILES. Relative file names in this list are expanded to absolute file names using the current buffer's value of `default-directory'. Interactively read file names to search, one by one, ended with RET. With a prefix argument, ask for a wildcard, and search in file buffers whose file names match the specified wildcard. (fn FILES)Fmulti-isearch-files-regexp Start multi-buffer regexp Isearch on a list of FILES. Relative file names in this list are expanded to absolute file names using the current buffer's value of `default-directory'. Interactively read file names to search, one by one, ended with RET. With a prefix argument, ask for a wildcard, and search in file buffers whose file names match the specified wildcard. (fn FILES)Fmixal-mode Major mode for the mixal asm language. (fn)Fmm-default-file-encoding Return a default encoding for FILE. (fn FILE)Fmm-extern-cache-contents Put the external-body part of HANDLE into its cache. (fn HANDLE)Fmm-inline-external-body Show the external-body part of HANDLE. This function replaces the buffer of HANDLE with a buffer contains the entire message. If NO-DISPLAY is nil, display it. Otherwise, do nothing after replacing. (fn HANDLE &optional NO-DISPLAY)Fmm-inline-partial Show the partial part of HANDLE. This function replaces the buffer of HANDLE with a buffer contains the entire message. If NO-DISPLAY is nil, display it. Otherwise, do nothing after replacing. (fn HANDLE &optional NO-DISPLAY)Fmm-url-insert-file-contents Insert file contents of URL. If `mm-url-use-external' is non-nil, use `mm-url-program'. (fn URL)Fmm-url-insert-file-contents-external Insert file contents of URL using `mm-url-program'. (fn URL)Fmm-uu-dissect Dissect the current buffer and return a list of uu handles. The optional NOHEADER means there's no header in the buffer. MIME-TYPE specifies a MIME type and parameters, which defaults to the value of `mm-uu-text-plain-type'. (fn &optional NOHEADER MIME-TYPE)Fmm-uu-dissect-text-parts Dissect text parts and put uu handles into HANDLE. Assume text has been decoded if DECODED is non-nil. (fn HANDLE &optional DECODED)Fmml-to-mime Translate the current buffer from MML to MIME. (fn)Fmml-attach-file Attach a file to the outgoing MIME message. The file is not inserted or encoded until you send the message with `\[message-send-and-exit]' or `\[message-send]' in Message mode, or `\[mail-send-and-exit]' or `\[mail-send]' in Mail mode. FILE is the name of the file to attach. TYPE is its content-type, a string of the form "type/subtype". DESCRIPTION is a one-line description of the attachment. The DISPOSITION specifies how the attachment is intended to be displayed. It can be either "inline" (displayed automatically within the message body) or "attachment" (separate from the body). If given a prefix interactively, no prompting will be done for the TYPE, DESCRIPTION or DISPOSITION values. Instead defaults will be computed and used. (fn FILE &optional TYPE DESCRIPTION DISPOSITION)Fmml1991-encrypt (fn CONT &optional SIGN)Fmml1991-sign (fn CONT)Fmml2015-decrypt (fn HANDLE CTL)Fmml2015-decrypt-test (fn HANDLE CTL)Fmml2015-verify (fn HANDLE CTL)Fmml2015-verify-test (fn HANDLE CTL)Fmml2015-encrypt (fn CONT &optional SIGN)Fmml2015-sign (fn CONT)Fmml2015-self-encrypt (fn)Fm2-mode This is a mode intended to support program development in Modula-2. All control constructs of Modula-2 can be reached by typing C-c followed by the first character of the construct. \<m2-mode-map> \[m2-begin] begin \[m2-case] case \[m2-definition] definition \[m2-else] else \[m2-for] for \[m2-header] header \[m2-if] if \[m2-module] module \[m2-loop] loop \[m2-or] or \[m2-procedure] procedure Control-c Control-w with \[m2-record] record \[m2-stdio] stdio \[m2-type] type \[m2-until] until \[m2-var] var \[m2-while] while \[m2-export] export \[m2-import] import \[m2-begin-comment] begin-comment \[m2-end-comment] end-comment \[suspend-emacs] suspend Emacs \[m2-toggle] toggle \[m2-compile] compile \[m2-next-error] next-error \[m2-link] link `m2-indent' controls the number of spaces for each indentation. `m2-compile-command' holds the command to compile a Modula-2 program. `m2-link-command' holds the command to link a Modula-2 program. (fn)Fmorse-region Convert all text in a given region to morse code. (fn BEG END)Funmorse-region Convert morse coded text in region to ordinary ASCII text. (fn BEG END)Fnato-region Convert all text in a given region to NATO phonetic alphabet. (fn BEG END)Fdenato-region Convert NATO phonetic alphabet in region to ordinary ASCII text. (fn BEG END)Fmouse-drag-throw "Throw" the page according to a mouse drag. A "throw" is scrolling the page at a speed relative to the distance from the original mouse click to the current mouse location. Try it; you'll like it. It's easier to observe than to explain. If the mouse is clicked and released in the same place of time we assume that the user didn't want to scroll but wanted to whatever mouse-2 used to do, so we pass it through. Throw scrolling was inspired (but is not identical to) the "hand" option in MacPaint, or the middle button in Tk text widgets. If `mouse-throw-with-scroll-bar' is non-nil, then this command scrolls in the opposite direction. (Different people have different ideas about which direction is natural. Perhaps it has to do with which hemisphere you're in.) To test this function, evaluate: (global-set-key [down-mouse-2] \='mouse-drag-throw) (fn START-EVENT)Fmouse-drag-drag "Drag" the page according to a mouse drag. Drag scrolling moves the page according to the movement of the mouse. You "grab" the character under the mouse and move it around. If the mouse is clicked and released in the same place of time we assume that the user didn't want to scroll but wanted to whatever mouse-2 used to do, so we pass it through. Drag scrolling is identical to the "hand" option in MacPaint, or the middle button in Tk text widgets. To test this function, evaluate: (global-set-key [down-mouse-2] \='mouse-drag-drag) (fn START-EVENT)Fmpc Main entry point for MPC. (fn)Fmpuz Multiplication puzzle with GNU Emacs. (fn)Vmsb-mode Non-nil if Msb mode is enabled. See the `msb-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `msb-mode'.Fmsb-mode Toggle Msb mode. With a prefix argument ARG, enable Msb mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. This mode overrides the binding(s) of `mouse-buffer-menu' to provide a different buffer menu using the function `msb'. (fn &optional ARG)Flist-character-sets Display a list of all character sets. The D column contains the dimension of this character set. The CH column contains the number of characters in a block of this character set. The FINAL-BYTE column contains an ISO-2022 <final-byte> to use in the designation escape sequence for this character set in ISO-2022-based coding systems. With prefix ARG, the output format gets more cryptic, but still shows the full information. (fn ARG)Fread-charset Read a character set from the minibuffer, prompting with string PROMPT. It must be an Emacs character set listed in the variable `charset-list'. Optional arguments are DEFAULT-VALUE and INITIAL-INPUT. DEFAULT-VALUE, if non-nil, is the default value. INITIAL-INPUT, if non-nil, is a string inserted in the minibuffer initially. See the documentation of the function `completing-read' for the detailed meanings of these arguments. (fn PROMPT &optional DEFAULT-VALUE INITIAL-INPUT)Flist-charset-chars Display a list of characters in character set CHARSET. (fn CHARSET)Fdescribe-character-set Display information about built-in character set CHARSET. (fn CHARSET)Fdescribe-coding-system Display information about CODING-SYSTEM. (fn CODING-SYSTEM)Fdescribe-current-coding-system-briefly Display coding systems currently used in a brief format in echo area. The format is "F[..],K[..],T[..],P>[..],P<[..], default F[..],P<[..],P<[..]", where mnemonics of the following coding systems come in this order in place of `..': `buffer-file-coding-system' (of the current buffer) eol-type of `buffer-file-coding-system' (of the current buffer) Value returned by `keyboard-coding-system' eol-type of `keyboard-coding-system' Value returned by `terminal-coding-system'. eol-type of `terminal-coding-system' `process-coding-system' for read (of the current buffer, if any) eol-type of `process-coding-system' for read (of the current buffer, if any) `process-coding-system' for write (of the current buffer, if any) eol-type of `process-coding-system' for write (of the current buffer, if any) default `buffer-file-coding-system' eol-type of default `buffer-file-coding-system' `default-process-coding-system' for read eol-type of `default-process-coding-system' for read `default-process-coding-system' for write eol-type of `default-process-coding-system' (fn)Fdescribe-current-coding-system Display coding systems currently used, in detail. (fn)Flist-coding-systems Display a list of all coding systems. This shows the mnemonic letter, name, and description of each coding system. With prefix ARG, the output format gets more cryptic, but still contains full information about each coding system. (fn &optional ARG)Flist-coding-categories Display a list of all coding categories. (fn)Fdescribe-font Display information about a font whose name is FONTNAME. The font must be already used by Emacs. (fn FONTNAME)Fdescribe-fontset Display information about FONTSET. This shows which font is used for which character(s). (fn FONTSET)Flist-fontsets Display a list of all fontsets. This shows the name, size, and style of each fontset. With prefix arg, also list the fonts contained in each fontset; see the function `describe-fontset' for the format of the list. (fn ARG)Flist-input-methods Display information about all input methods. (fn)Fmule-diag Display diagnosis of the multilingual environment (Mule). This shows various information related to the current multilingual environment, including lists of input methods, coding systems, character sets, and fontsets (if Emacs is running under a window system which uses fontsets). (fn)Ffont-show-log Show log of font listing and opening. Prefix arg LIMIT says how many fonts to show for each listing. The default is 20. If LIMIT is negative, do not limit the listing. (fn &optional LIMIT)Fstore-substring Embed OBJ (string or character) at index IDX of STRING. (fn STRING IDX OBJ)Ftruncate-string-to-width Truncate string STR to end at column END-COLUMN. The optional 3rd arg START-COLUMN, if non-nil, specifies the starting column; that means to return the characters occupying columns START-COLUMN ... END-COLUMN of STR. Both END-COLUMN and START-COLUMN are specified in terms of character display width in the current buffer; see also `char-width'. The optional 4th arg PADDING, if non-nil, specifies a padding character (which should have a display width of 1) to add at the end of the result if STR doesn't reach column END-COLUMN, or if END-COLUMN comes in the middle of a character in STR. PADDING is also added at the beginning of the result if column START-COLUMN appears in the middle of a character in STR. If PADDING is nil, no padding is added in these cases, so the resulting string may be narrower than END-COLUMN. If ELLIPSIS is non-nil, it should be a string which will replace the end of STR (including any padding) if it extends beyond END-COLUMN, unless the display width of STR is equal to or less than the display width of ELLIPSIS. If it is non-nil and not a string, then ELLIPSIS defaults to `truncate-string-ellipsis'. (fn STR END-COLUMN &optional START-COLUMN PADDING ELLIPSIS)Fnested-alist-p Return t if OBJ is a nested alist. Nested alist is a list of the form (ENTRY . BRANCHES), where ENTRY is any Lisp object, and BRANCHES is a list of cons cells of the form (KEY-ELEMENT . NESTED-ALIST). You can use a nested alist to store any Lisp object (ENTRY) for a key sequence KEYSEQ, where KEYSEQ is a sequence of KEY-ELEMENT. KEYSEQ can be a string, a vector, or a list.Fset-nested-alist Set ENTRY for KEYSEQ in a nested alist ALIST. Optional 4th arg LEN non-nil means the first LEN elements in KEYSEQ are considered. Optional 5th argument BRANCHES if non-nil is branches for a keyseq longer than KEYSEQ. See the documentation of `nested-alist-p' for more detail. (fn KEYSEQ ENTRY ALIST &optional LEN BRANCHES)Flookup-nested-alist Look up key sequence KEYSEQ in nested alist ALIST. Return the definition. Optional 3rd argument LEN specifies the length of KEYSEQ. Optional 4th argument START specifies index of the starting key. The returned value is normally a nested alist of which car part is the entry for KEYSEQ. If ALIST is not deep enough for KEYSEQ, return number which is how many key elements at the front of KEYSEQ it takes to reach a leaf in ALIST. Optional 5th argument NIL-FOR-TOO-LONG non-nil means return nil even if ALIST is not deep enough. (fn KEYSEQ ALIST &optional LEN START NIL-FOR-TOO-LONG)Fcoding-system-post-read-conversion Return the value of CODING-SYSTEM's `post-read-conversion' property. (fn CODING-SYSTEM)Fcoding-system-pre-write-conversion Return the value of CODING-SYSTEM's `pre-write-conversion' property. (fn CODING-SYSTEM)Fcoding-system-translation-table-for-decode Return the value of CODING-SYSTEM's `decode-translation-table' property. (fn CODING-SYSTEM)Fcoding-system-translation-table-for-encode Return the value of CODING-SYSTEM's `encode-translation-table' property. (fn CODING-SYSTEM)Fwith-coding-priority Execute BODY like `progn' with CODING-SYSTEMS at the front of priority list. CODING-SYSTEMS is a list of coding systems. See `set-coding-system-priority'. This affects the implicit sorting of lists of coding systems returned by operations such as `find-coding-systems-region'. (fn CODING-SYSTEMS &rest BODY)Fdetect-coding-with-priority Detect a coding system of the text between FROM and TO with PRIORITY-LIST. PRIORITY-LIST is an alist of coding categories vs the corresponding coding systems ordered by priority. (fn FROM TO PRIORITY-LIST)Fdetect-coding-with-language-environment Detect a coding system for the text between FROM and TO with LANG-ENV. The detection takes into account the coding system priorities for the language environment LANG-ENV. (fn FROM TO LANG-ENV)Fchar-displayable-p Return non-nil if we should be able to display CHAR. On a multi-font display, the test is only whether there is an appropriate font from the selected frame's fontset to display CHAR's charset in general. Since fonts may be specified on a per-character basis, this may not be accurate. (fn CHAR)Ffilepos-to-bufferpos Try to return the buffer position corresponding to a particular file position. The file position is given as a (0-based) BYTE count. The function presumes the file is encoded with CODING-SYSTEM, which defaults to `buffer-file-coding-system'. QUALITY can be: `approximate', in which case we may cut some corners to avoid excessive work. `exact', in which case we may end up re-(en/de)coding a large part of the file/buffer, this can be expensive and slow. nil, in which case we may return nil rather than an approximation. (fn BYTE &optional QUALITY CODING-SYSTEM)Fbufferpos-to-filepos Try to return the file byte corresponding to a particular buffer POSITION. Value is the file position given as a (0-based) byte count. The function presumes the file is encoded with CODING-SYSTEM, which defaults to `buffer-file-coding-system'. QUALITY can be: `approximate', in which case we may cut some corners to avoid excessive work. `exact', in which case we may end up re-(en/de)coding a large part of the file/buffer, this can be expensive and slow. nil, in which case we may return nil rather than an approximation. (fn POSITION &optional QUALITY CODING-SYSTEM)Fifconfig Run `ifconfig-program' and display diagnostic output. (fn)Fiwconfig Run `iwconfig-program' and display diagnostic output. (fn)Fnetstat Run `netstat-program' and display diagnostic output. (fn)Farp Run `arp-program' and display diagnostic output. (fn)Froute Run `route-program' and display diagnostic output. (fn)Ftraceroute Run `traceroute-program' for TARGET. (fn TARGET)Fping Ping HOST. If your system's ping continues until interrupted, you can try setting `ping-program-options'. (fn HOST)Fnslookup-host Look up the DNS information for HOST (name or IP address). Optional argument NAME-SERVER says which server to use for DNS resolution. Interactively, prompt for NAME-SERVER if invoked with prefix argument. This command uses `nslookup-program' for looking up the DNS information. (fn HOST &optional NAME-SERVER)Fnslookup Run `nslookup-program'. (fn)Fdns-lookup-host Look up the DNS information for HOST (name or IP address). Optional argument NAME-SERVER says which server to use for DNS resolution. Interactively, prompt for NAME-SERVER if invoked with prefix argument. This command uses `dns-lookup-program' for looking up the DNS information. (fn HOST &optional NAME-SERVER)Frun-dig Look up DNS information for HOST (name or IP address). Optional argument NAME-SERVER says which server to use for DNS resolution. Interactively, prompt for NAME-SERVER if invoked with prefix argument. This command uses `dig-program' for looking up the DNS information. (fn HOST &optional NAME-SERVER)Fftp Run `ftp-program' to connect to HOST. (fn HOST)Ffinger Finger USER on HOST. This command uses `finger-X.500-host-regexps' and `network-connection-service-alist', which see. (fn USER HOST)Fwhois Send SEARCH-STRING to server defined by the `whois-server-name' variable. If `whois-guess-server' is non-nil, then try to deduce the correct server from SEARCH-STRING. With argument, prompt for whois server. The port is deduced from `network-connection-service-alist'. (fn ARG SEARCH-STRING)Fwhois-reverse-lookup (fn)Fnetwork-connection-to-service Open a network connection to SERVICE on HOST. This command uses `network-connection-service-alist', which see. (fn HOST SERVICE)Fnetwork-connection Open a network connection to HOST on PORT. (fn HOST PORT)Fnetrc-credentials Return a user name/password pair. Port specifications will be prioritized in the order they are listed in the PORTS list. (fn MACHINE &rest PORTS)Fopen-network-stream Open a TCP connection to HOST, optionally with encryption. Normally, return a network process object; with a non-nil :return-list parameter, return a list instead (see below). Input and output work as for subprocesses; `delete-process' closes it. NAME is the name for the process. It is modified if necessary to make it unique. BUFFER is a buffer or buffer name to associate with the process. Process output goes at end of that buffer. BUFFER may be nil, meaning that the process is not associated with any buffer. HOST is the name or IP address of the host to connect to. SERVICE is the name of the service desired, or an integer or integer string specifying a port number to connect to. The remaining PARAMETERS should be a sequence of keywords and values: :type specifies the connection type, one of the following: nil or `network' -- Begin with an ordinary network connection, and if the parameters :success and :capability-command are also supplied, try to upgrade to an encrypted connection via STARTTLS. Even if that fails (e.g. if HOST does not support TLS), retain an unencrypted connection. `plain' -- An ordinary, unencrypted network connection. `starttls' -- Begin with an ordinary connection, and try upgrading via STARTTLS. If that fails for any reason, drop the connection; in that case the returned object is a killed process. `tls' -- A TLS connection. `ssl' -- Equivalent to `tls'. `shell' -- A shell connection. :return-list specifies this function's return value. If omitted or nil, return a process object. A non-nil means to return (PROC . PROPS), where PROC is a process object and PROPS is a plist of connection properties, with these keywords: :greeting -- the greeting returned by HOST (a string), or nil. :capabilities -- a string representing HOST's capabilities, or nil if none could be found. :type -- the resulting connection type; `plain' (unencrypted) or `tls' (TLS-encrypted). :end-of-command specifies a regexp matching the end of a command. :end-of-capability specifies a regexp matching the end of the response to the command specified for :capability-command. It defaults to the regexp specified for :end-of-command. :success specifies a regexp matching a message indicating a successful STARTTLS negotiation. For instance, the default should be "^3" for an NNTP connection. :capability-command specifies a command used to query the HOST for its capabilities. For instance, for IMAP this should be "1 CAPABILITY\r\n". :starttls-function specifies a function for handling STARTTLS. This function should take one parameter, the response to the capability command, and should return the command to switch on STARTTLS if the server supports STARTTLS, and nil otherwise. :always-query-capabilities says whether to query the server for capabilities, even if we're doing a `plain' network connection. :client-certificate should either be a list where the first element is the certificate key file name, and the second element is the certificate file name itself, or t, which means that `auth-source' will be queried for the key and the certificate. This parameter will only be used when doing TLS or STARTTLS connections. :use-starttls-if-possible is a boolean that says to do opportunistic STARTTLS upgrades even if Emacs doesn't have built-in TLS functionality. :warn-unless-encrypted is a boolean which, if :return-list is non-nil, is used warn the user if the connection isn't encrypted. :nogreeting is a boolean that can be used to inhibit waiting for a greeting from the server. :nowait, if non-nil, says the connection should be made asynchronously, if possible. :shell-command is a format-spec string that can be used if :type is `shell'. It has two specs, %s for host and %p for port number. Example: "ssh gateway nc %s %p". :tls-parameters is a list that should be supplied if you're opening a TLS connection. The first element is the TLS type (either `gnutls-x509pki' or `gnutls-anon'), and the remaining elements should be a keyword list accepted by gnutls-boot (as returned by `gnutls-boot-parameters'). (fn NAME BUFFER HOST SERVICE &rest PARAMETERS)Fnewsticker-running-p Check whether newsticker is running. Return t if newsticker is running, nil otherwise. Newsticker is considered to be running if the newsticker timer list is not empty. (fn)Fnewsticker-start Start the newsticker. Start the timers for display and retrieval. If the newsticker, i.e. the timers, are running already a warning message is printed unless DO-NOT-COMPLAIN-IF-RUNNING is not nil. Run `newsticker-start-hook' if newsticker was not running already. (fn &optional DO-NOT-COMPLAIN-IF-RUNNING)Fnewsticker-plainview Start newsticker plainview. (fn)Fnewsticker-show-news Start reading news. You may want to bind this to a key. (fn)Fnewsticker-ticker-running-p Check whether newsticker's actual ticker is running. Return t if ticker is running, nil otherwise. Newsticker is considered to be running if the newsticker timer list is not empty. (fn)Fnewsticker-start-ticker Start newsticker's ticker (but not the news retrieval). Start display timer for the actual ticker if wanted and not running already. (fn)Fnewsticker-treeview Start newsticker treeview. (fn)Fnndiary-generate-nov-databases Generate NOV databases in all nndiary directories. (fn &optional SERVER)Fnndoc-add-type Add document DEFINITION to the list of nndoc document definitions. If POSITION is nil or `last', the definition will be added as the last checked definition, if t or `first', add as the first definition, and if any other symbol, add after that symbol in the alist. (fn DEFINITION &optional POSITION)Fnnfolder-generate-active-file Look for mbox folders in the nnfolder directory and make them into groups. This command does not work if you use short group names. (fn)Fnnml-generate-nov-databases Generate NOV databases in all nnml directories. (fn &optional SERVER)Vdisabled-command-function Function to call to handle disabled commands. If nil, the feature is disabled, i.e., all commands work normally.Fdisabled-command-function (fn &optional CMD KEYS)Fenable-command Allow COMMAND to be executed without special confirmation from now on. COMMAND must be a symbol. This command alters the user's .emacs file so that this will apply to future sessions. (fn COMMAND)Fdisable-command Require special confirmation to execute COMMAND from now on. COMMAND must be a symbol. This command alters your init file so that this choice applies to future sessions. (fn COMMAND)Fnroff-mode Major mode for editing text intended for nroff to format. \{nroff-mode-map} Turning on Nroff mode runs `text-mode-hook', then `nroff-mode-hook'. Also, try `nroff-electric-mode', for automatically inserting closing requests for requests that are used in matched pairs. (fn)Fnxml-mode Major mode for editing XML. \[nxml-finish-element] finishes the current element by inserting an end-tag. C-c C-i closes a start-tag with `>' and then inserts a balancing end-tag leaving point between the start-tag and end-tag. \[nxml-balanced-close-start-tag-block] is similar but for block rather than inline elements: the start-tag, point, and end-tag are all left on separate lines. If `nxml-slash-auto-complete-flag' is non-nil, then inserting a `</' automatically inserts the rest of the end-tag. \[completion-at-point] performs completion on the symbol preceding point. \[nxml-dynamic-markup-word] uses the contents of the current buffer to choose a tag to put around the word preceding point. Sections of the document can be displayed in outline form. The variable `nxml-section-element-name-regexp' controls when an element is recognized as a section. The same key sequences that change visibility in outline mode are used except that they start with C-c C-o instead of C-c. Validation is provided by the related minor-mode `rng-validate-mode'. This also makes completion schema- and context- sensitive. Element names, attribute names, attribute values and namespace URIs can all be completed. By default, `rng-validate-mode' is automatically enabled. You can toggle it using \[rng-validate-mode] or change the default by customizing `rng-nxml-auto-validate-flag'. \[indent-for-tab-command] indents the current line appropriately. This can be customized using the variable `nxml-child-indent' and the variable `nxml-attribute-indent'. \[nxml-insert-named-char] inserts a character reference using the character's name (by default, the Unicode name). \[universal-argument] \[nxml-insert-named-char] inserts the character directly. The Emacs commands that normally operate on balanced expressions will operate on XML markup items. Thus \[forward-sexp] will move forward across one markup item; \[backward-sexp] will move backward across one markup item; \[kill-sexp] will kill the following markup item; \[mark-sexp] will mark the following markup item. By default, each tag each treated as a single markup item; to make the complete element be treated as a single markup item, set the variable `nxml-sexp-element-flag' to t. For more details, see the function `nxml-forward-balanced-item'. \[nxml-backward-up-element] and \[nxml-down-element] move up and down the element structure. Many aspects this mode can be customized using \[customize-group] nxml RET. (fn)Foctave-mode Major mode for editing Octave code. Octave is a high-level language, primarily intended for numerical computations. It provides a convenient command line interface for solving linear and nonlinear problems numerically. Function definitions can also be stored in files and used in batch mode. See Info node `(octave-mode) Using Octave Mode' for more details. Key bindings: \{octave-mode-map} (fn)Finferior-octave Run an inferior Octave process, I/O via `inferior-octave-buffer'. This buffer is put in Inferior Octave mode. See `inferior-octave-mode'. Unless ARG is non-nil, switches to this buffer. The elements of the list `inferior-octave-startup-args' are sent as command line arguments to the inferior Octave process on startup. Additional commands to be executed on startup can be provided either in the file specified by `inferior-octave-startup-file' or by the default startup file, `~/.emacs-octave'. (fn &optional ARG)Fopascal-mode Major mode for editing OPascal code.\<opascal-mode-map> \[opascal-find-unit] - Search for a OPascal source file. \[opascal-fill-comment] - Fill the current comment. \[opascal-new-comment-line] - If in a // comment, do a new comment line. \[indent-region] also works for indenting a whole region. Customization: `opascal-indent-level' (default 3) Indentation of OPascal statements with respect to containing block. `opascal-compound-block-indent' (default 0) Extra indentation for blocks in compound statements. `opascal-case-label-indent' (default 0) Extra indentation for case statement labels. `opascal-search-path' (default .) Directories to search when finding external units. `opascal-verbose' (default nil) If true then OPascal token processing progress is reported to the user. Coloring: `opascal-keyword-face' (default `font-lock-keyword-face') Face used to color OPascal keywords. (fn)Forg-babel-do-load-languages Load the languages defined in `org-babel-load-languages'. (fn SYM VALUE)Forg-babel-load-file Load Emacs Lisp source code blocks in the Org FILE. This function exports the source code using `org-babel-tangle' and then loads the resulting file using `load-file'. With prefix arg (noninteractively: 2nd arg) COMPILE the tangled Emacs Lisp file to byte-code before it is loaded. (fn FILE &optional COMPILE)Forg-version Show the Org version. Interactively, or when MESSAGE is non-nil, show it in echo area. With prefix argument, or when HERE is non-nil, insert it at point. In non-interactive uses, a reduced version string is output unless FULL is given. (fn &optional HERE FULL MESSAGE)Fturn-on-orgtbl Unconditionally turn on `orgtbl-mode'. (fn)Forg-clock-persistence-insinuate Set up hooks for clock persistence. (fn)Forg-mode Outline-based notes management and organizer, alias "Carsten's outline-mode for keeping track of everything." Org mode develops organizational tasks around a NOTES file which contains information about projects as plain text. Org mode is implemented on top of Outline mode, which is ideal to keep the content of large files well structured. It supports ToDo items, deadlines and time stamps, which magically appear in the diary listing of the Emacs calendar. Tables are easily created with a built-in table editor. Plain text URL-like links connect to websites, emails (VM), Usenet messages (Gnus), BBDB entries, and any files related to the project. For printing and sharing of notes, an Org file (or a part of it) can be exported as a structured ASCII or HTML file. The following commands are available: \{org-mode-map} (fn)Forg-cycle TAB-action and visibility cycling for Org mode. This is the command invoked in Org mode by the `TAB' key. Its main purpose is outline visibility cycling, but it also invokes other actions in special contexts. When this function is called with a `\[universal-argument]' prefix, rotate the entire buffer through 3 states (global cycling) 1. OVERVIEW: Show only top-level headlines. 2. CONTENTS: Show all headlines of all levels, but no body text. 3. SHOW ALL: Show everything. With a `\[universal-argument] \[universal-argument]' prefix argument, switch to the startup visibility, determined by the variable `org-startup-folded', and by any VISIBILITY properties in the buffer. With a `\[universal-argument] \[universal-argument] \[universal-argument]' prefix argument, show the entire buffer, including any drawers. When inside a table, re-align the table and move to the next field. When point is at the beginning of a headline, rotate the subtree started by this line through 3 different states (local cycling) 1. FOLDED: Only the main headline is shown. 2. CHILDREN: The main headline and the direct children are shown. From this state, you can move to one of the children and zoom in further. 3. SUBTREE: Show the entire subtree, including body text. If there is no subtree, switch directly from CHILDREN to FOLDED. When point is at the beginning of an empty headline and the variable `org-cycle-level-after-item/entry-creation' is set, cycle the level of the headline by demoting and promoting it to likely levels. This speeds up creation document structure by pressing `TAB' once or several times right after creating a new headline. When there is a numeric prefix, go up to a heading with level ARG, do a `show-subtree' and return to the previous cursor position. If ARG is negative, go up that many levels. When point is not at the beginning of a headline, execute the global binding for `TAB', which is re-indenting the line. See the option `org-cycle-emulate-tab' for details. As a special case, if point is at the beginning of the buffer and there is no headline in line 1, this function will act as if called with prefix arg (`\[universal-argument] TAB', same as `S-TAB') also when called without prefix arg, but only if the variable `org-cycle-global-at-bob' is t. (fn &optional ARG)Forg-global-cycle Cycle the global visibility. For details see `org-cycle'. With `\[universal-argument]' prefix ARG, switch to startup visibility. With a numeric prefix, show all headlines up to that level. (fn &optional ARG)Forgstruct-mode Toggle the minor mode `orgstruct-mode'. This mode is for using Org mode structure commands in other modes. The following keys behave as if Org mode were active, if the cursor is on a headline, or on a plain list item (both as defined by Org mode). (fn &optional ARG)Fturn-on-orgstruct Unconditionally turn on `orgstruct-mode'. (fn)Fturn-on-orgstruct++ Unconditionally turn on `orgstruct++-mode'. (fn)Forg-run-like-in-org-mode Run a command, pretending that the current buffer is in Org mode. This will temporarily bind local variables that are typically bound in Org mode to the values they have in Org mode, and then interactively call CMD. (fn CMD)Forg-store-link Store an org-link to the current location. \<org-mode-map> This link is added to `org-stored-links' and can later be inserted into an Org buffer with `org-insert-link' (`\[org-insert-link]'). For some link types, a `\[universal-argument]' prefix ARG is interpreted. A single `\[universal-argument]' negates `org-context-in-file-links' for file links or `org-gnus-prefer-web-links' for links to Usenet articles. A `\[universal-argument] \[universal-argument]' prefix ARG forces skipping storing functions that are not part of Org core. A `\[universal-argument] \[universal-argument] \[universal-argument]' prefix ARG forces storing a link for each line in the active region. (fn ARG)Forg-insert-link-global Insert a link like Org mode does. This command can be called in any mode to insert a link in Org syntax. (fn)Forg-open-at-point-global Follow a link or time-stamp like Org mode does. This command can be called in any mode to follow an external link or a time-stamp that has Org mode syntax. Its behavior is undefined when called on internal links (e.g., fuzzy links). Raise an error when there is nothing to follow. (fn)Forg-open-link-from-string Open a link in the string S, as if it was in Org mode. (fn S &optional ARG REFERENCE-BUFFER)Forg-switchb Switch between Org buffers. With `\[universal-argument]' prefix, restrict available buffers to files. With `\[universal-argument] \[universal-argument]' prefix, restrict available buffers to agenda files. (fn &optional ARG)Forg-cycle-agenda-files Cycle through the files in `org-agenda-files'. If the current buffer visits an agenda file, find the next one in the list. If the current buffer does not, find the first agenda file. (fn)Forg-submit-bug-report Submit a bug report on Org via mail. Don't hesitate to report any problems or inaccurate documentation. If you don't have setup sending mail from (X)Emacs, please copy the output buffer into your mail program, as it gives us important information about your Org version and configuration. (fn)Forg-reload Reload all Org Lisp files. With prefix arg UNCOMPILED, load the uncompiled versions. (fn &optional UNCOMPILED)Forg-customize Call the customize function with org as argument. (fn)Forg-toggle-sticky-agenda Toggle `org-agenda-sticky'. (fn &optional ARG)Forg-agenda Dispatch agenda commands to collect entries to the agenda buffer. Prompts for a command to execute. Any prefix arg will be passed on to the selected command. The default selections are: a Call `org-agenda-list' to display the agenda for current day or week. t Call `org-todo-list' to display the global todo list. T Call `org-todo-list' to display the global todo list, select only entries with a specific TODO keyword (the user gets a prompt). m Call `org-tags-view' to display headlines with tags matching a condition (the user is prompted for the condition). M Like `m', but select only TODO entries, no ordinary headlines. e Export views to associated files. s Search entries for keywords. S Search entries for keywords, only with TODO keywords. / Multi occur across all agenda files and also files listed in `org-agenda-text-search-extra-files'. < Restrict agenda commands to buffer, subtree, or region. Press several times to get the desired effect. > Remove a previous restriction. # List "stuck" projects. ! Configure what "stuck" means. C Configure custom agenda commands. More commands can be added by configuring the variable `org-agenda-custom-commands'. In particular, specific tags and TODO keyword searches can be pre-defined in this way. If the current buffer is in Org mode and visiting a file, you can also first press `<' once to indicate that the agenda should be temporarily (until the next use of `\[org-agenda]') restricted to the current file. Pressing `<' twice means to restrict to the current subtree or region (if active). (fn &optional ARG ORG-KEYS RESTRICTION)Forg-batch-agenda Run an agenda command in batch mode and send the result to STDOUT. If CMD-KEY is a string of length 1, it is used as a key in `org-agenda-custom-commands' and triggers this command. If it is a longer string it is used as a tags/todo match string. Parameters are alternating variable names and values that will be bound before running the agenda command. (fn CMD-KEY &rest PARAMETERS)Forg-batch-agenda-csv Run an agenda command in batch mode and send the result to STDOUT. If CMD-KEY is a string of length 1, it is used as a key in `org-agenda-custom-commands' and triggers this command. If it is a longer string it is used as a tags/todo match string. Parameters are alternating variable names and values that will be bound before running the agenda command. The output gives a line for each selected agenda item. Each item is a list of comma-separated values, like this: category,head,type,todo,tags,date,time,extra,priority-l,priority-n category The category of the item head The headline, without TODO kwd, TAGS and PRIORITY type The type of the agenda entry, can be todo selected in TODO match tagsmatch selected in tags match diary imported from diary deadline a deadline on given date scheduled scheduled on given date timestamp entry has timestamp on given date closed entry was closed on given date upcoming-deadline warning about deadline past-scheduled forwarded scheduled item block entry has date block including g. date todo The todo keyword, if any tags All tags including inherited ones, separated by colons date The relevant date, like 2007-2-14 time The time, like 15:00-16:50 extra Sting with extra planning info priority-l The priority letter if any was given priority-n The computed numerical priority agenda-day The day in the agenda where this is listed (fn CMD-KEY &rest PARAMETERS)Forg-store-agenda-views Store agenda views. (fn &rest PARAMETERS)Forg-batch-store-agenda-views Run all custom agenda commands that have a file argument. (fn &rest PARAMETERS)Forg-agenda-list Produce a daily/weekly view from all files in variable `org-agenda-files'. The view will be for the current day or week, but from the overview buffer you will be able to go to other days/weeks. With a numeric prefix argument in an interactive call, the agenda will span ARG days. Lisp programs should instead specify SPAN to change the number of days. SPAN defaults to `org-agenda-span'. START-DAY defaults to TODAY, or to the most recent match for the weekday given in `org-agenda-start-on-weekday'. When WITH-HOUR is non-nil, only include scheduled and deadline items if they have an hour specification like [h]h:mm. (fn &optional ARG START-DAY SPAN WITH-HOUR)Forg-search-view Show all entries that contain a phrase or words or regular expressions. With optional prefix argument TODO-ONLY, only consider entries that are TODO entries. The argument STRING can be used to pass a default search string into this function. If EDIT-AT is non-nil, it means that the user should get a chance to edit this string, with cursor at position EDIT-AT. The search string can be viewed either as a phrase that should be found as is, or it can be broken into a number of snippets, each of which must match in a Boolean way to select an entry. The default depends on the variable `org-agenda-search-view-always-boolean'. Even if this is turned off (the default) you can always switch to Boolean search dynamically by preceding the first word with "+" or "-". The default is a direct search of the whole phrase, where each space in the search string can expand to an arbitrary amount of whitespace, including newlines. If using a Boolean search, the search string is split on whitespace and each snippet is searched separately, with logical AND to select an entry. Words prefixed with a minus must *not* occur in the entry. Words without a prefix or prefixed with a plus must occur in the entry. Matching is case-insensitive. Words are enclosed by word delimiters (i.e. they must match whole words, not parts of a word) if `org-agenda-search-view-force-full-words' is set (default is nil). Boolean search snippets enclosed by curly braces are interpreted as regular expressions that must or (when preceded with "-") must not match in the entry. Snippets enclosed into double quotes will be taken as a whole, to include whitespace. - If the search string starts with an asterisk, search only in headlines. - If (possibly after the leading star) the search string starts with an exclamation mark, this also means to look at TODO entries only, an effect that can also be achieved with a prefix argument. - If (possibly after star and exclamation mark) the search string starts with a colon, this will mean that the (non-regexp) snippets of the Boolean search must match as full words. This command searches the agenda files, and in addition the files listed in `org-agenda-text-search-extra-files' unless a restriction lock is active. (fn &optional TODO-ONLY STRING EDIT-AT)Forg-todo-list Show all (not done) TODO entries from all agenda file in a single list. The prefix arg can be used to select a specific TODO keyword and limit the list to these. When using `\[universal-argument]', you will be prompted for a keyword. A numeric prefix directly selects the Nth keyword in `org-todo-keywords-1'. (fn &optional ARG)Forg-tags-view Show all headlines for all `org-agenda-files' matching a TAGS criterion. The prefix arg TODO-ONLY limits the search to TODO entries. (fn &optional TODO-ONLY MATCH)Forg-agenda-list-stuck-projects Create agenda view for projects that are stuck. Stuck projects are project that have no next actions. For the definitions of what a project is and how to check if it stuck, customize the variable `org-stuck-projects'. (fn &rest IGNORE)Forg-diary Return diary information from org files. This function can be used in a "sexp" diary entry in the Emacs calendar. It accesses org files and extracts information from those files to be listed in the diary. The function accepts arguments specifying what items should be listed. For a list of arguments allowed here, see the variable `org-agenda-entry-types'. The call in the diary file should look like this: &%%(org-diary) ~/path/to/some/orgfile.org Use a separate line for each org file to check. Or, if you omit the file name, all files listed in `org-agenda-files' will be checked automatically: &%%(org-diary) If you don't give any arguments (as in the example above), the default value of `org-agenda-entry-types' is used: (:deadline :scheduled :timestamp :sexp). So the example above may also be written as &%%(org-diary :deadline :timestamp :sexp :scheduled) The function expects the lisp variables `entry' and `date' to be provided by the caller, because this is how the calendar works. Don't use this function from a program - use `org-agenda-get-day-entries' instead. (fn &rest ARGS)Forg-agenda-check-for-timestamp-as-reason-to-ignore-todo-item Do we have a reason to ignore this TODO entry because it has a time stamp? (fn &optional END)Forg-agenda-set-restriction-lock Set restriction lock for agenda, to current subtree or file. Restriction will be the file if TYPE is `file', or if type is the universal prefix \='(4), or if the cursor is before the first headline in the file. Otherwise, restriction will be to the current subtree. (fn &optional TYPE)Forg-calendar-goto-agenda Compute the Org agenda for the calendar date displayed at the cursor. This is a command that has to be installed in `calendar-mode-map'. (fn)Forg-agenda-to-appt Activate appointments found in `org-agenda-files'. With a `\[universal-argument]' prefix, refresh the list of appointments. If FILTER is t, interactively prompt the user for a regular expression, and filter out entries that don't match it. If FILTER is a string, use this string as a regular expression for filtering entries out. If FILTER is a function, filter out entries against which calling the function returns nil. This function takes one argument: an entry from `org-agenda-get-day-entries'. FILTER can also be an alist with the car of each cell being either `headline' or `category'. For example: \='((headline "IMPORTANT") (category "Work")) will only add headlines containing IMPORTANT or headlines belonging to the "Work" category. ARGS are symbols indicating what kind of entries to consider. By default `org-agenda-to-appt' will use :deadline*, :scheduled* (i.e., deadlines and scheduled items with a hh:mm specification) and :timestamp entries. See the docstring of `org-diary' for details and examples. If an entry has a APPT_WARNTIME property, its value will be used to override `appt-message-warning-time'. (fn &optional REFRESH FILTER &rest ARGS)Forg-capture-string Capture STRING with the template selected by KEYS. (fn STRING &optional KEYS)Forg-capture Capture something. \<org-capture-mode-map> This will let you select a template from `org-capture-templates', and then file the newly captured information. The text is immediately inserted at the target location, and an indirect buffer is shown where you can edit it. Pressing `\[org-capture-finalize]' brings you back to the previous state of Emacs, so that you can continue your work. When called interactively with a `\[universal-argument]' prefix argument GOTO, don't capture anything, just go to the file/headline where the selected template stores its notes. With a `\[universal-argument] \[universal-argument]' prefix argument, go to the last note stored. When called with a `C-0' (zero) prefix, insert a template at point. When called with a `C-1' (one) prefix, force prompting for a date when a datetree entry is made. ELisp programs can set KEYS to a string associated with a template in `org-capture-templates'. In this case, interactive selection will be bypassed. If `org-capture-use-agenda-date' is non-nil, capturing from the agenda will use the date at point as the default date. Then, a `C-1' prefix will tell the capture process to use the HH:MM time of the day at point (if any) or the current HH:MM time. (fn &optional GOTO KEYS)Forg-capture-import-remember-templates Set `org-capture-templates' to be similar to `org-remember-templates'. (fn)Forg-columns-remove-overlays Remove all currently active column overlays. (fn)Forg-columns-get-format-and-top-level (fn)Forg-columns Turn on column view on an Org mode file. Column view applies to the whole buffer if point is before the first headline. Otherwise, it applies to the first ancestor setting "COLUMNS" property. If there is none, it defaults to the current headline. With a `\[universal-argument]' prefix argument, turn on column view for the whole buffer unconditionally. When COLUMNS-FMT-STRING is non-nil, use it as the column format. (fn &optional GLOBAL COLUMNS-FMT-STRING)Forg-columns-compute Summarize the values of PROPERTY hierarchically. Also update existing values for PROPERTY according to the first column specification. (fn PROPERTY)Forg-dblock-write:columnview Write the column view table. PARAMS is a property list of parameters: :id the :ID: property of the entry where the columns view should be built. When the symbol `local', call locally. When `global' call column view with the cursor at the beginning of the buffer (usually this means that the whole buffer switches to column view). When "file:path/to/file.org", invoke column view at the start of that file. Otherwise, the ID is located using `org-id-find'. :hlines When t, insert a hline before each item. When a number, insert a hline before each level <= that number. :indent When non-nil, indent each ITEM field according to its level. :vlines When t, make each column a colgroup to enforce vertical lines. :maxlevel When set to a number, don't capture headlines below this level. :skip-empty-rows When t, skip rows where all specifiers other than ITEM are empty. :width apply widths specified in columns format using <N> specifiers. :format When non-nil, specify the column view format to use. (fn PARAMS)Forg-columns-insert-dblock Create a dynamic block capturing a column view table. (fn)Forg-agenda-columns Turn on or update column view in the agenda. (fn)Forg-check-version Try very hard to provide sensible version strings. (fn)Forg-duration-set-regexps Set duration related regexps. (fn)Forg-duration-p Non-nil when string S is a time duration. (fn S)Forg-duration-to-minutes Return number of minutes of DURATION string. When optional argument CANONICAL is non-nil, ignore `org-duration-units' and use standard time units value. A bare number is translated into minutes. The empty string is translated into 0.0. Return value as a float. Raise an error if duration format is not recognized. (fn DURATION &optional CANONICAL)Forg-duration-from-minutes Return duration string for a given number of MINUTES. Format duration according to `org-duration-format' or FMT, when non-nil. When optional argument CANONICAL is non-nil, ignore `org-duration-units' and use standard time units value. Raise an error if expected format is unknown. (fn MINUTES &optional FMT CANONICAL)Forg-duration-h:mm-only-p Non-nil when every duration in TIMES has "H:MM" or "H:MM:SS" format. TIMES is a list of duration strings. Return nil if any duration is expressed with units, as defined in `org-duration-units'. Otherwise, if any duration is expressed with "H:MM:SS" format, return `h:mm:ss'. Otherwise, return `h:mm'. (fn TIMES)Forg-lint Check current Org buffer for syntax mistakes. By default, run all checkers. With a `\[universal-argument]' prefix ARG, select one category of checkers only. With a `\[universal-argument] \[universal-argument]' prefix, run one precise checker by its name. ARG can also be a list of checker names, as symbols, to run. (fn &optional ARG)Forg-load-noerror-mustsuffix Load FILE with optional arguments NOERROR and MUSTSUFFIX. (fn FILE)Forg-release The release version of Org. Inserted by installing Org mode or when a release is made. (fn)Forg-git-version The Git version of Org mode. Inserted by installing Org or when a release is made. (fn)Foutline-mode Set major mode for editing outlines with selective display. Headings are lines which start with asterisks: one for major headings, two for subheadings, etc. Lines not starting with asterisks are body lines. Body text or subheadings under a heading can be made temporarily invisible, or visible again. Invisible lines are attached to the end of the heading, so they move with it, if the line is killed and yanked back. A heading with text hidden under it is marked with an ellipsis (...). \{outline-mode-map} The commands `outline-hide-subtree', `outline-show-subtree', `outline-show-children', `outline-hide-entry', `outline-show-entry', `outline-hide-leaves', and `outline-show-branches' are used when point is on a heading line. The variable `outline-regexp' can be changed to control what is a heading. A line is a heading if `outline-regexp' matches something at the beginning of the line. The longer the match, the deeper the level. Turning on outline mode calls the value of `text-mode-hook' and then of `outline-mode-hook', if they are non-nil. (fn)Foutline-minor-mode Toggle Outline minor mode. With a prefix argument ARG, enable Outline minor mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. See the command `outline-mode' for more information on this mode. (fn &optional ARG)Vpackage-enable-at-startup Whether to activate installed packages when Emacs starts. If non-nil, packages are activated after reading the init file and before `after-init-hook'. Activation is not done if `user-init-file' is nil (e.g. Emacs was started with "-q"). Even if the value is nil, you can type \[package-initialize] to activate the package system at any time.Fpackage-initialize Load Emacs Lisp packages, and activate them. The variable `package-load-list' controls which packages to load. If optional arg NO-ACTIVATE is non-nil, don't activate packages. If `user-init-file' does not mention `(package-initialize)', add it to the file. If called as part of loading `user-init-file', set `package-enable-at-startup' to nil, to prevent accidentally loading packages twice. It is not necessary to adjust `load-path' or `require' the individual packages after calling `package-initialize' -- this is taken care of by `package-initialize'. (fn &optional NO-ACTIVATE)Fpackage-import-keyring Import keys from FILE. (fn &optional FILE)Fpackage-refresh-contents Download descriptions of all configured ELPA packages. For each archive configured in the variable `package-archives', inform Emacs about the latest versions of all packages it offers, and make them available for download. Optional argument ASYNC specifies whether to perform the downloads in the background. (fn &optional ASYNC)Fpackage-install Install the package PKG. PKG can be a `package-desc' or a symbol naming one of the available packages in an archive in `package-archives'. Interactively, prompt for its name. If called interactively or if DONT-SELECT nil, add PKG to `package-selected-packages'. If PKG is a `package-desc' and it is already installed, don't try to install it but still mark it as selected. (fn PKG &optional DONT-SELECT)Fpackage-install-from-buffer Install a package from the current buffer. The current buffer is assumed to be a single .el or .tar file or a directory. These must follow the packaging guidelines (see info node `(elisp)Packaging'). Specially, if current buffer is a directory, the -pkg.el description file is not mandatory, in which case the information is derived from the main .el file in the directory. Downloads and installs required packages as needed. (fn)Fpackage-install-file Install a package from a file. The file can either be a tar file, an Emacs Lisp file, or a directory. (fn FILE)Fpackage-install-selected-packages Ensure packages in `package-selected-packages' are installed. If some packages are not installed propose to install them. (fn)Fpackage-reinstall Reinstall package PKG. PKG should be either a symbol, the package name, or a `package-desc' object. (fn PKG)Fpackage-autoremove Remove packages that are no more needed. Packages that are no more needed by other packages in `package-selected-packages' and their dependencies will be deleted. (fn)Fdescribe-package Display the full documentation of PACKAGE (a symbol). (fn PACKAGE)Flist-packages Display a list of packages. This first fetches the updated list of packages before displaying, unless a prefix argument NO-FETCH is specified. The list is displayed in a buffer named `*Packages*', and includes the package's version, availability status, and a short description. (fn &optional NO-FETCH)Vshow-paren-mode Non-nil if Show-Paren mode is enabled. See the `show-paren-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `show-paren-mode'.Fshow-paren-mode Toggle visualization of matching parens (Show Paren mode). With a prefix argument ARG, enable Show Paren mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Show Paren mode is a global minor mode. When enabled, any matching parenthesis is highlighted in `show-paren-style' after `show-paren-delay' seconds of Emacs idle time. (fn &optional ARG)Fparse-time-string Parse the time-string STRING into (SEC MIN HOUR DAY MON YEAR DOW DST TZ). STRING should be something resembling an RFC 822 (or later) date-time, e.g., "Fri, 25 Mar 2016 16:24:56 +0100", but this function is somewhat liberal in what format it accepts, and will attempt to return a "likely" value even for somewhat malformed strings. The values returned are identical to those of `decode-time', but any values that are unknown are returned as nil. (fn STRING)Fpascal-mode Major mode for editing Pascal code.\<pascal-mode-map> TAB indents for Pascal code. Delete converts tabs to spaces as it moves back. \[completion-at-point] completes the word around current point with respect to position in code \[completion-help-at-point] shows all possible completions at this point. Other useful functions are: \[pascal-mark-defun] - Mark function. \[pascal-insert-block] - insert begin ... end; \[pascal-star-comment] - insert (* ... *) \[pascal-comment-area] - Put marked area in a comment, fixing nested comments. \[pascal-uncomment-area] - Uncomment an area commented with \[pascal-comment-area]. \[pascal-beg-of-defun] - Move to beginning of current function. \[pascal-end-of-defun] - Move to end of current function. \[pascal-goto-defun] - Goto function prompted for in the minibuffer. \[pascal-outline-mode] - Enter `pascal-outline-mode'. Variables controlling indentation/edit style: `pascal-indent-level' (default 3) Indentation of Pascal statements with respect to containing block. `pascal-case-indent' (default 2) Indentation for case statements. `pascal-auto-newline' (default nil) Non-nil means automatically newline after semicolons and the punctuation mark after an end. `pascal-indent-nested-functions' (default t) Non-nil means nested functions are indented. `pascal-tab-always-indent' (default t) Non-nil means TAB in Pascal mode should always reindent the current line, regardless of where in the line point is when the TAB command is used. `pascal-auto-endcomments' (default t) Non-nil means a comment { ... } is set after the ends which ends cases and functions. The name of the function or case will be set between the braces. `pascal-auto-lineup' (default t) List of contexts where auto lineup of :'s or ='s should be done. See also the user variables `pascal-type-keywords', `pascal-start-keywords' and `pascal-separator-keywords'. (fn)Vpassword-cache Whether to cache passwords.Vpassword-cache-expiry How many seconds passwords are cached, or nil to disable expiring. Whether passwords are cached at all is controlled by `password-cache'.Fpassword-in-cache-p Check if KEY is in the cache. (fn KEY)Fpcase Evaluate EXP to get EXPVAL; try passing control to one of CASES. CASES is a list of elements of the form (PATTERN CODE...). For the first CASE whose PATTERN "matches" EXPVAL, evaluate its CODE..., and return the value of the last form. If no CASE has a PATTERN that matches, return nil. Each PATTERN expands, in essence, to a predicate to call on EXPVAL. When the return value of that call is non-nil, PATTERN matches. PATTERN can take one of the forms: _ matches anything. \='VAL matches if EXPVAL is `equal' to VAL. KEYWORD shorthand for \='KEYWORD INTEGER shorthand for \='INTEGER STRING shorthand for \='STRING SYMBOL matches anything and binds it to SYMBOL. If a SYMBOL is used twice in the same pattern the second occurrence becomes an `eq'uality test. (pred FUN) matches if FUN called on EXPVAL returns non-nil. (app FUN PAT) matches if FUN called on EXPVAL matches PAT. (guard BOOLEXP) matches if BOOLEXP evaluates to non-nil. (let PAT EXPR) matches if EXPR matches PAT. (and PAT...) matches if all the patterns match. (or PAT...) matches if any of the patterns matches. FUN in `pred' and `app' can take one of the forms: SYMBOL or (lambda ARGS BODY) call it with one argument (F ARG1 .. ARGn) call F with ARG1..ARGn and EXPVAL as n+1'th argument FUN, BOOLEXP, EXPR, and subsequent PAT can refer to variables bound earlier in the pattern by a SYMBOL pattern. Additional patterns can be defined using `pcase-defmacro'. See Info node `(elisp) Pattern-Matching Conditional' in the Emacs Lisp manual for more information and examples. (fn EXP &rest CASES)Fpcase-exhaustive The exhaustive version of `pcase' (which see). If EXP fails to match any of the patterns in CASES, an error is signaled. (fn EXP &rest CASES)Fpcase-lambda Like `lambda' but allow each argument to be a pattern. I.e. accepts the usual &optional and &rest keywords, but every formal argument can be any pattern accepted by `pcase' (a mere variable name being but a special case of it). (fn LAMBDA-LIST &rest BODY)Fpcase-let* Like `let*', but supports destructuring BINDINGS using `pcase' patterns. As with `pcase-let', BINDINGS are of the form (PATTERN EXP), but the EXP in each binding in BINDINGS can use the results of the destructuring bindings that precede it in BINDINGS' order. Each EXP should match (i.e. be of compatible structure) to its respective PATTERN; a mismatch may signal an error or may go undetected, binding variables to arbitrary values, such as nil. (fn BINDINGS &rest BODY)Fpcase-let Like `let', but supports destructuring BINDINGS using `pcase' patterns. BODY should be a list of expressions, and BINDINGS should be a list of bindings of the form (PATTERN EXP). All EXPs are evaluated first, and then used to perform destructuring bindings by matching each EXP against its respective PATTERN. Then BODY is evaluated with those bindings in effect. Each EXP should match (i.e. be of compatible structure) to its respective PATTERN; a mismatch may signal an error or may go undetected, binding variables to arbitrary values, such as nil. (fn BINDINGS &rest BODY)Fpcase-dolist Eval BODY once for each set of bindings defined by PATTERN and LIST elements. PATTERN should be a `pcase' pattern describing the structure of LIST elements, and LIST is a list of objects that match PATTERN, i.e. have a structure that is compatible with PATTERN. For each element of LIST, this macro binds the variables in PATTERN to the corresponding subfields of the LIST element, and then evaluates BODY with these bindings in effect. The destructuring bindings of variables in PATTERN to the subfields of the elements of LIST is performed as if by `pcase-let'. (fn (PATTERN LIST) BODY...)Fpcase-defmacro Define a new kind of pcase PATTERN, by macro expansion. Patterns of the form (NAME ...) will be expanded according to this macro. By convention, DOC should use "EXPVAL" to stand for the result of evaluating EXP (first arg to `pcase'). (fn NAME ARGS [DOC] &rest BODY...)Fpcomplete/cvs Completion rules for the `cvs' command. (fn)Fpcomplete/gzip Completion for `gzip'. (fn)Fpcomplete/bzip2 Completion for `bzip2'. (fn)Fpcomplete/make Completion for GNU `make'. (fn)Fpcomplete/tar Completion for the GNU tar utility. (fn)Fpcomplete/find Completion for the GNU find utility. (fn)Fpcomplete/kill Completion for GNU/Linux `kill', using /proc filesystem. (fn)Fpcomplete/umount Completion for GNU/Linux `umount'. (fn)Fpcomplete/mount Completion for GNU/Linux `mount'. (fn)Fpcomplete/rpm Completion for the `rpm' command. (fn)Fpcomplete/cd Completion for `cd'. (fn)Fpcomplete/rmdir Completion for `rmdir'. (fn)Fpcomplete/rm Completion for `rm'. (fn)Fpcomplete/xargs Completion for `xargs'. (fn)Fpcomplete/which Completion for `which'. (fn)Fpcomplete/chown Completion for the `chown' command. (fn)Fpcomplete/chgrp Completion for the `chgrp' command. (fn)Fpcomplete/ssh Completion rules for the `ssh' command. (fn)Fpcomplete/scp Completion rules for the `scp' command. Includes files as well as host names followed by a colon. (fn)Fpcomplete/tlmgr Completion for the `tlmgr' command. (fn)Fpcomplete/ack Completion for the `ack' command. Start an argument with `-' to complete short options and `--' for long options. (fn)Fpcomplete/ag Completion for the `ag' command. (fn)Fpcomplete Support extensible programmable completion. To use this function, just bind the TAB key to it, or add it to your completion functions list (it should occur fairly early in the list). (fn &optional INTERACTIVELY)Fpcomplete-reverse If cycling completion is in use, cycle backwards. (fn)Fpcomplete-expand-and-complete Expand the textual value of the current argument. This will modify the current buffer. (fn)Fpcomplete-continue Complete without reference to any cycling completions. (fn)Fpcomplete-expand Expand the textual value of the current argument. This will modify the current buffer. (fn)Fpcomplete-help Display any help information relative to the current argument. (fn)Fpcomplete-list Show the list of possible completions for the current argument. (fn)Fpcomplete-comint-setup Setup a comint buffer to use pcomplete. COMPLETEF-SYM should be the symbol where the dynamic-complete-functions are kept. For comint mode itself, this is `comint-dynamic-complete-functions'. (fn COMPLETEF-SYM)Fpcomplete-shell-setup Setup `shell-mode' to use pcomplete. (fn)Fcvs-checkout Run a `cvs checkout MODULES' in DIR. Feed the output to a *cvs* buffer, display it in the current window, and run `cvs-mode' on it. With a prefix argument, prompt for cvs FLAGS to use. (fn MODULES DIR FLAGS &optional ROOT)Fcvs-quickdir Open a *cvs* buffer on DIR without running cvs. With a prefix argument, prompt for a directory to use. A prefix arg >8 (ex: \[universal-argument] \[universal-argument]), prevents reuse of an existing *cvs* buffer. Optional argument NOSHOW if non-nil means not to display the buffer. FLAGS is ignored. (fn DIR &optional FLAGS NOSHOW)Fcvs-examine Run a `cvs -n update' in the specified DIRECTORY. That is, check what needs to be done, but don't change the disc. Feed the output to a *cvs* buffer and run `cvs-mode' on it. With a prefix argument, prompt for a directory and cvs FLAGS to use. A prefix arg >8 (ex: \[universal-argument] \[universal-argument]), prevents reuse of an existing *cvs* buffer. Optional argument NOSHOW if non-nil means not to display the buffer. (fn DIRECTORY FLAGS &optional NOSHOW)Fcvs-update Run a `cvs update' in the current working DIRECTORY. Feed the output to a *cvs* buffer and run `cvs-mode' on it. With a \[universal-argument] prefix argument, prompt for a directory to use. A prefix arg >8 (ex: \[universal-argument] \[universal-argument]), prevents reuse of an existing *cvs* buffer. The prefix is also passed to `cvs-flags-query' to select the FLAGS passed to cvs. (fn DIRECTORY FLAGS)Fcvs-status Run a `cvs status' in the current working DIRECTORY. Feed the output to a *cvs* buffer and run `cvs-mode' on it. With a prefix argument, prompt for a directory and cvs FLAGS to use. A prefix arg >8 (ex: \[universal-argument] \[universal-argument]), prevents reuse of an existing *cvs* buffer. Optional argument NOSHOW if non-nil means not to display the buffer. (fn DIRECTORY FLAGS &optional NOSHOW)Vcvs-dired-action The action to be performed when opening a CVS directory. Sensible values are `cvs-examine', `cvs-status' and `cvs-quickdir'.Vcvs-dired-use-hook Whether or not opening a CVS directory should run PCL-CVS. A value of nil means never do it. `always' means to always do it unless a prefix argument is given to the command that prompted the opening of the directory. Anything else means to do it only if the prefix arg is equal to this value.Fcvs-dired-noselect Run `cvs-examine' if DIR is a CVS administrative directory. The exact behavior is determined also by `cvs-dired-use-hook'.Vcvs-global-menu Global menu used by PCL-CVS.Fperl-flymake Perl backend for Flymake. Launches `perl-flymake-command' (which see) and passes to its standard input the contents of the current buffer. The output of this command is analyzed for error and warning messages. (fn REPORT-FN &rest ARGS)Fperl-mode Major mode for editing Perl code. Expression and list commands understand all Perl brackets. Tab indents for Perl code. Comments are delimited with # ... \n. Paragraphs are separated by blank lines only. Delete converts tabs to spaces as it moves back. \{perl-mode-map} Variables controlling indentation style: `perl-tab-always-indent' Non-nil means TAB in Perl mode should always indent the current line, regardless of where in the line point is when the TAB command is used. `perl-tab-to-comment' Non-nil means that for lines which don't need indenting, TAB will either delete an empty comment, indent an existing comment, move to end-of-line, or if at end-of-line already, create a new comment. `perl-nochange' Lines starting with this regular expression are not auto-indented. `perl-indent-level' Indentation of Perl statements within surrounding block. The surrounding block's indentation is the indentation of the line on which the open-brace appears. `perl-continued-statement-offset' Extra indentation given to a substatement, such as the then-clause of an if or body of a while. `perl-continued-brace-offset' Extra indentation given to a brace that starts a substatement. This is in addition to `perl-continued-statement-offset'. `perl-brace-offset' Extra indentation for line if it starts with an open brace. `perl-brace-imaginary-offset' An open brace following other text is treated as if it were this far to the right of the start of its line. `perl-label-offset' Extra indentation for line that is a label. `perl-indent-continued-arguments' Offset of argument lines relative to usual indentation. Various indentation styles: K&R BSD BLK GNU LW perl-indent-level 5 8 0 2 4 perl-continued-statement-offset 5 8 4 2 4 perl-continued-brace-offset 0 0 0 0 -4 perl-brace-offset -5 -8 0 0 0 perl-brace-imaginary-offset 0 0 4 0 0 perl-label-offset -5 -8 -2 -2 -2 Turning on Perl mode runs the normal hook `perl-mode-hook'. (fn)Fpicture-mode Switch to Picture mode, in which a quarter-plane screen model is used. \<picture-mode-map> Printing characters replace instead of inserting themselves with motion afterwards settable by these commands: Move left after insertion: \[picture-movement-left] Move right after insertion: \[picture-movement-right] Move up after insertion: \[picture-movement-up] Move down after insertion: \[picture-movement-down] Move northwest (nw) after insertion: \[picture-movement-nw] Move northeast (ne) after insertion: \[picture-movement-ne] Move southwest (sw) after insertion: \[picture-movement-sw] Move southeast (se) after insertion: \[picture-movement-se] Move westnorthwest (wnw) after insertion: C-u \[picture-movement-nw] Move eastnortheast (ene) after insertion: C-u \[picture-movement-ne] Move westsouthwest (wsw) after insertion: C-u \[picture-movement-sw] Move eastsoutheast (ese) after insertion: C-u \[picture-movement-se] The current direction is displayed in the mode line. The initial direction is right. Whitespace is inserted and tabs are changed to spaces when required by movement. You can move around in the buffer with these commands: Move vertically to SAME column in previous line: \[picture-move-down] Move vertically to SAME column in next line: \[picture-move-up] Move to column following last non-whitespace character: \[picture-end-of-line] Move right, inserting spaces if required: \[picture-forward-column] Move left changing tabs to spaces if required: \[picture-backward-column] Move in direction of current picture motion: \[picture-motion] Move opposite to current picture motion: \[picture-motion-reverse] Move to beginning of next line: \[next-line] You can edit tabular text with these commands: Move to column beneath (or at) next interesting character (see variable `picture-tab-chars'): \[picture-tab-search] Move to next stop in tab stop list: \[picture-tab] Set tab stops according to context of this line: \[picture-set-tab-stops] (With ARG, resets tab stops to default value.) Change the tab stop list: \[edit-tab-stops] You can manipulate text with these commands: Clear ARG columns after point without moving: \[picture-clear-column] Delete char at point: \[picture-delete-char] Clear ARG columns backward: \[picture-backward-clear-column] Clear ARG lines, advancing over them: \[picture-clear-line] (the cleared text is saved in the kill ring) Open blank line(s) beneath current line: \[picture-open-line] You can manipulate rectangles with these commands: Clear a rectangle and save it: \[picture-clear-rectangle] Clear a rectangle, saving in a named register: \[picture-clear-rectangle-to-register] Insert currently saved rectangle at point: \[picture-yank-rectangle] Insert rectangle from named register: \[picture-yank-rectangle-from-register] Draw a rectangular box around mark and point: \[picture-draw-rectangle] Copies a rectangle to a register: \[copy-rectangle-to-register] Undo effects of rectangle overlay commands: \[undo] You can return to the previous mode with \[picture-mode-exit], which also strips trailing whitespace from every line. Stripping is suppressed by supplying an argument. Entry to this mode calls the value of `picture-mode-hook' if non-nil. Note that Picture mode commands will work outside of Picture mode, but they are not by default assigned to keys. (fn)Vpixel-scroll-mode Non-nil if Pixel-Scroll mode is enabled. See the `pixel-scroll-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `pixel-scroll-mode'.Fpixel-scroll-mode A minor mode to scroll text pixel-by-pixel. With a prefix argument ARG, enable Pixel Scroll mode if ARG is positive, and disable it otherwise. If called from Lisp, enable Pixel Scroll mode if ARG is omitted or nil. (fn &optional ARG)Fplstore-open Create a plstore instance associated with FILE. (fn FILE)Fplstore-mode Major mode for editing PLSTORE files. (fn)Fpo-find-file-coding-system Return a (DECODING . ENCODING) pair, according to PO file's charset. Called through `file-coding-system-alist', before the file is visited for real. (fn ARG-LIST)Fpong Play pong and waste time. This is an implementation of the classical game pong. Move left and right bats and try to bounce the ball to your opponent. pong-mode keybindings:\<pong-mode-map> \{pong-mode-map} (fn)Fpop3-movemail Transfer contents of a maildrop to the specified FILE. Use streaming commands. (fn FILE)Fpp-to-string Return a string containing the pretty-printed representation of OBJECT. OBJECT can be any Lisp object. Quoting characters are used as needed to make output that `read' can handle, whenever this is possible. (fn OBJECT)Fpp-buffer Prettify the current buffer with printed representation of a Lisp object. (fn)Fpp Output the pretty-printed representation of OBJECT, any Lisp object. Quoting characters are printed as needed to make output that `read' can handle, whenever this is possible. Output stream is STREAM, or value of `standard-output' (which see). (fn OBJECT &optional STREAM)Fpp-eval-expression Evaluate EXPRESSION and pretty-print its value. Also add the value to the front of the list in the variable `values'. (fn EXPRESSION)Fpp-macroexpand-expression Macroexpand EXPRESSION and pretty-print its value. (fn EXPRESSION)Fpp-eval-last-sexp Run `pp-eval-expression' on sexp before point. With argument, pretty-print output into current buffer. Ignores leading comment characters. (fn ARG)Fpp-macroexpand-last-sexp Run `pp-macroexpand-expression' on sexp before point. With argument, pretty-print output into current buffer. Ignores leading comment characters. (fn ARG)Fpr-interface Activate the printing interface buffer. If BUFFER is nil, the current buffer is used for printing. For more information, type \[pr-interface-help]. (fn &optional BUFFER)Fpr-ps-directory-preview Preview directory using ghostview. Interactively, the command prompts for N-UP printing number, a directory, a file name regexp for matching and, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the PostScript image in that file instead of saving it in a temporary file. Noninteractively, if N-UP is nil, prompts for N-UP printing number. If DIR is nil, prompts for DIRectory. If FILE-REGEXP is nil, prompts for FILE(name)-REGEXP. The argument FILENAME is treated as follows: if it's nil, save the image in a temporary file. If FILENAME is a string, save the PostScript image in a file with that name. If FILENAME is t, prompts for a file name. See also documentation for `pr-list-directory'. (fn N-UP DIR FILE-REGEXP &optional FILENAME)Fpr-ps-directory-using-ghostscript Print directory using PostScript through ghostscript. Interactively, the command prompts for N-UP printing number, a directory, a file name regexp for matching and, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the PostScript image in that file instead of saving it in a temporary file. Noninteractively, if N-UP is nil, prompts for N-UP printing number. If DIR is nil, prompts for DIRectory. If FILE-REGEXP is nil, prompts for FILE(name)-REGEXP. The argument FILENAME is treated as follows: if it's nil, save the image in a temporary file. If FILENAME is a string, save the PostScript image in a file with that name. If FILENAME is t, prompts for a file name. See also documentation for `pr-list-directory'. (fn N-UP DIR FILE-REGEXP &optional FILENAME)Fpr-ps-directory-print Print directory using PostScript printer. Interactively, the command prompts for N-UP printing number, a directory, a file name regexp for matching and, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the PostScript image in that file instead of saving it in a temporary file. Noninteractively, if N-UP is nil, prompts for N-UP printing number. If DIR is nil, prompts for DIRectory. If FILE-REGEXP is nil, prompts for FILE(name)-REGEXP. The argument FILENAME is treated as follows: if it's nil, save the image in a temporary file. If FILENAME is a string, save the PostScript image in a file with that name. If FILENAME is t, prompts for a file name. See also documentation for `pr-list-directory'. (fn N-UP DIR FILE-REGEXP &optional FILENAME)Fpr-ps-directory-ps-print Print directory using PostScript printer or through ghostscript. It depends on `pr-print-using-ghostscript'. Interactively, the command prompts for N-UP printing number, a directory, a file name regexp for matching and, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the PostScript image in that file instead of saving it in a temporary file. Noninteractively, if N-UP is nil, prompts for N-UP printing number. If DIR is nil, prompts for DIRectory. If FILE-REGEXP is nil, prompts for FILE(name)-REGEXP. The argument FILENAME is treated as follows: if it's nil, save the image in a temporary file. If FILENAME is a string, save the PostScript image in a file with that name. If FILENAME is t, prompts for a file name. See also documentation for `pr-list-directory'. (fn N-UP DIR FILE-REGEXP &optional FILENAME)Fpr-ps-buffer-preview Preview buffer using ghostview. Interactively, the command prompts for N-UP printing number and, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the PostScript image in that file instead of saving it in a temporary file. Noninteractively, if N-UP is nil, prompts for N-UP printing number. The argument FILENAME is treated as follows: if it's nil, save the image in a temporary file. If FILENAME is a string, save the PostScript image in a file with that name. If FILENAME is t, prompts for a file name. (fn N-UP &optional FILENAME)Fpr-ps-buffer-using-ghostscript Print buffer using PostScript through ghostscript. Interactively, the command prompts for N-UP printing number and, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the PostScript image in that file instead of sending it to the printer. Noninteractively, if N-UP is nil, prompts for N-UP printing number. The argument FILENAME is treated as follows: if it's nil, send the image to the printer. If FILENAME is a string, save the PostScript image in a file with that name. If FILENAME is t, prompts for a file name. (fn N-UP &optional FILENAME)Fpr-ps-buffer-print Print buffer using PostScript printer. Interactively, the command prompts for N-UP printing number and, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the PostScript image in that file instead of sending it to the printer. Noninteractively, if N-UP is nil, prompts for N-UP printing number. The argument FILENAME is treated as follows: if it's nil, send the image to the printer. If FILENAME is a string, save the PostScript image in a file with that name. If FILENAME is t, prompts for a file name. (fn N-UP &optional FILENAME)Fpr-ps-buffer-ps-print Print buffer using PostScript printer or through ghostscript. It depends on `pr-print-using-ghostscript'. Interactively, the command prompts for N-UP printing number and, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the PostScript image in that file instead of sending it to the printer. Noninteractively, if N-UP is nil, prompts for N-UP printing number. The argument FILENAME is treated as follows: if it's nil, send the image to the printer. If FILENAME is a string, save the PostScript image in a file with that name. If FILENAME is t, prompts for a file name. (fn N-UP &optional FILENAME)Fpr-ps-region-preview Preview region using ghostview. See also `pr-ps-buffer-preview'. (fn N-UP &optional FILENAME)Fpr-ps-region-using-ghostscript Print region using PostScript through ghostscript. See also `pr-ps-buffer-using-ghostscript'. (fn N-UP &optional FILENAME)Fpr-ps-region-print Print region using PostScript printer. See also `pr-ps-buffer-print'. (fn N-UP &optional FILENAME)Fpr-ps-region-ps-print Print region using PostScript printer or through ghostscript. See also `pr-ps-buffer-ps-print'. (fn N-UP &optional FILENAME)Fpr-ps-mode-preview Preview major mode using ghostview. See also `pr-ps-buffer-preview'. (fn N-UP &optional FILENAME)Fpr-ps-mode-using-ghostscript Print major mode using PostScript through ghostscript. See also `pr-ps-buffer-using-ghostscript'. (fn N-UP &optional FILENAME)Fpr-ps-mode-print Print major mode using PostScript printer. See also `pr-ps-buffer-print'. (fn N-UP &optional FILENAME)Fpr-ps-mode-ps-print Print major mode using PostScript or through ghostscript. See also `pr-ps-buffer-ps-print'. (fn N-UP &optional FILENAME)Fpr-printify-directory Replace nonprinting characters in directory with printable representations. The printable representations use ^ (for ASCII control characters) or hex. The characters tab, linefeed, space, return and formfeed are not affected. Interactively, the command prompts for a directory and a file name regexp for matching. Noninteractively, if DIR is nil, prompts for DIRectory. If FILE-REGEXP is nil, prompts for FILE(name)-REGEXP. See also documentation for `pr-list-directory'. (fn &optional DIR FILE-REGEXP)Fpr-printify-buffer Replace nonprinting characters in buffer with printable representations. The printable representations use ^ (for ASCII control characters) or hex. The characters tab, linefeed, space, return and formfeed are not affected. (fn)Fpr-printify-region Replace nonprinting characters in region with printable representations. The printable representations use ^ (for ASCII control characters) or hex. The characters tab, linefeed, space, return and formfeed are not affected. (fn)Fpr-txt-directory Print directory using text printer. Interactively, the command prompts for a directory and a file name regexp for matching. Noninteractively, if DIR is nil, prompts for DIRectory. If FILE-REGEXP is nil, prompts for FILE(name)-REGEXP. See also documentation for `pr-list-directory'. (fn &optional DIR FILE-REGEXP)Fpr-txt-buffer Print buffer using text printer. (fn)Fpr-txt-region Print region using text printer. (fn)Fpr-txt-mode Print major mode using text printer. (fn)Fpr-despool-preview Preview spooled PostScript. Interactively, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the spooled PostScript image in that file instead of saving it in a temporary file. Noninteractively, the argument FILENAME is treated as follows: if it is nil, save the image in a temporary file. If FILENAME is a string, save the PostScript image in a file with that name. (fn &optional FILENAME)Fpr-despool-using-ghostscript Print spooled PostScript using ghostscript. Interactively, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the spooled PostScript image in that file instead of sending it to the printer. Noninteractively, the argument FILENAME is treated as follows: if it is nil, send the image to the printer. If FILENAME is a string, save the PostScript image in a file with that name. (fn &optional FILENAME)Fpr-despool-print Send the spooled PostScript to the printer. Interactively, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the spooled PostScript image in that file instead of sending it to the printer. Noninteractively, the argument FILENAME is treated as follows: if it is nil, send the image to the printer. If FILENAME is a string, save the PostScript image in a file with that name. (fn &optional FILENAME)Fpr-despool-ps-print Send the spooled PostScript to the printer or use ghostscript to print it. Interactively, when you use a prefix argument (C-u), the command prompts the user for a file name, and saves the spooled PostScript image in that file instead of sending it to the printer. Noninteractively, the argument FILENAME is treated as follows: if it is nil, send the image to the printer. If FILENAME is a string, save the PostScript image in a file with that name. (fn &optional FILENAME)Fpr-ps-file-preview Preview PostScript file FILENAME. (fn FILENAME)Fpr-ps-file-up-preview Preview PostScript file FILENAME. (fn N-UP IFILENAME &optional OFILENAME)Fpr-ps-file-using-ghostscript Print PostScript file FILENAME using ghostscript. (fn FILENAME)Fpr-ps-file-print Print PostScript file FILENAME. (fn FILENAME)Fpr-ps-file-ps-print Send PostScript file FILENAME to printer or use ghostscript to print it. (fn FILENAME)Fpr-ps-file-up-ps-print Process a PostScript file IFILENAME and send it to printer. Interactively, the command prompts for N-UP printing number, for an input PostScript file IFILENAME and, when you use a prefix argument (C-u), the command prompts the user for an output PostScript file name OFILENAME, and saves the PostScript image in that file instead of sending it to the printer. Noninteractively, if N-UP is nil, prompts for N-UP printing number. The argument IFILENAME is treated as follows: if it's t, prompts for an input PostScript file name; otherwise, it *must* be a string that it's an input PostScript file name. The argument OFILENAME is treated as follows: if it's nil, send the image to the printer. If OFILENAME is a string, save the PostScript image in a file with that name. If OFILENAME is t, prompts for a file name. (fn N-UP IFILENAME &optional OFILENAME)Fpr-toggle-file-duplex Toggle duplex for PostScript file. (fn)Fpr-toggle-file-tumble Toggle tumble for PostScript file. If tumble is off, produces a printing suitable for binding on the left or right. If tumble is on, produces a printing suitable for binding at the top or bottom. (fn)Fpr-toggle-file-landscape Toggle landscape for PostScript file. (fn)Fpr-toggle-ghostscript Toggle printing using ghostscript. (fn)Fpr-toggle-faces Toggle printing with faces. (fn)Fpr-toggle-spool Toggle spooling. (fn)Fpr-toggle-duplex Toggle duplex. (fn)Fpr-toggle-tumble Toggle tumble. If tumble is off, produces a printing suitable for binding on the left or right. If tumble is on, produces a printing suitable for binding at the top or bottom. (fn)Fpr-toggle-landscape Toggle landscape. (fn)Fpr-toggle-upside-down Toggle upside-down. (fn)Fpr-toggle-line Toggle line number. (fn)Fpr-toggle-zebra Toggle zebra stripes. (fn)Fpr-toggle-header Toggle printing header. (fn)Fpr-toggle-header-frame Toggle printing header frame. (fn)Fpr-toggle-lock Toggle menu lock. (fn)Fpr-toggle-region Toggle whether the region is automagically detected. (fn)Fpr-toggle-mode Toggle auto mode. (fn)Fpr-customize Customization of the `printing' group. (fn &rest IGNORE)Flpr-customize Customization of the `lpr' group. (fn &rest IGNORE)Fpr-help Help for the printing package. (fn &rest IGNORE)Fpr-ps-name Interactively select a PostScript printer. (fn)Fpr-txt-name Interactively select a text printer. (fn)Fpr-ps-utility Interactively select a PostScript utility. (fn)Fpr-show-ps-setup Show current ps-print settings. (fn &rest IGNORE)Fpr-show-pr-setup Show current printing settings. (fn &rest IGNORE)Fpr-show-lpr-setup Show current lpr settings. (fn &rest IGNORE)Fpr-ps-fast-fire Fast fire function for PostScript printing. If a region is active, the region will be printed instead of the whole buffer. Also if the current major-mode is defined in `pr-mode-alist', the settings in `pr-mode-alist' will be used, that is, the current buffer or region will be printed using `pr-ps-mode-ps-print'. Interactively, you have the following situations: M-x pr-ps-fast-fire RET The command prompts the user for a N-UP value and printing will immediately be done using the current active printer. C-u M-x pr-ps-fast-fire RET C-u 0 M-x pr-ps-fast-fire RET The command prompts the user for a N-UP value and also for a current PostScript printer, then printing will immediately be done using the new current active printer. C-u 1 M-x pr-ps-fast-fire RET The command prompts the user for a N-UP value and also for a file name, and saves the PostScript image in that file instead of sending it to the printer. C-u 2 M-x pr-ps-fast-fire RET The command prompts the user for a N-UP value, then for a current PostScript printer and, finally, for a file name. Then change the active printer to that chosen by user and saves the PostScript image in that file instead of sending it to the printer. Noninteractively, the argument N-UP should be a positive integer greater than zero and the argument SELECT is treated as follows: If it's nil, send the image to the printer. If it's a list or an integer lesser or equal to zero, the command prompts the user for a current PostScript printer, then printing will immediately be done using the new current active printer. If it's an integer equal to 1, the command prompts the user for a file name and saves the PostScript image in that file instead of sending it to the printer. If it's an integer greater or equal to 2, the command prompts the user for a current PostScript printer and for a file name. Then change the active printer to that chosen by user and saves the PostScript image in that file instead of sending it to the printer. If it's a symbol which it's defined in `pr-ps-printer-alist', it's the new active printer and printing will immediately be done using the new active printer. Otherwise, send the image to the printer. Note that this command always behaves as if `pr-auto-region' and `pr-auto-mode' are both set to t. (fn N-UP &optional SELECT)Fpr-txt-fast-fire Fast fire function for text printing. If a region is active, the region will be printed instead of the whole buffer. Also if the current major-mode is defined in `pr-mode-alist', the settings in `pr-mode-alist' will be used, that is, the current buffer or region will be printed using `pr-txt-mode'. Interactively, when you use a prefix argument (C-u), the command prompts the user for a new active text printer. Noninteractively, the argument SELECT-PRINTER is treated as follows: If it's nil, the printing is sent to the current active text printer. If it's a symbol which it's defined in `pr-txt-printer-alist', it's the new active printer and printing will immediately be done using the new active printer. If it's non-nil, the command prompts the user for a new active text printer. Note that this command always behaves as if `pr-auto-region' and `pr-auto-mode' are both set to t. (fn &optional SELECT-PRINTER)Fproced Generate a listing of UNIX system processes. \<proced-mode-map> If invoked with optional ARG, do not select the window displaying the process information. This function runs the normal hook `proced-post-display-hook'. See `proced-mode' for a description of features available in Proced buffers. (fn &optional ARG)Fprofiler-start Start/restart profilers. MODE can be one of `cpu', `mem', or `cpu+mem'. If MODE is `cpu' or `cpu+mem', time-based profiler will be started. Also, if MODE is `mem' or `cpu+mem', then memory profiler will be started. (fn MODE)Fprofiler-find-profile Open profile FILENAME. (fn FILENAME)Fprofiler-find-profile-other-window Open profile FILENAME. (fn FILENAME)Fprofiler-find-profile-other-frame Open profile FILENAME. (fn FILENAME)Fproject-current Return the project instance in DIR or `default-directory'. When no project found in DIR, and MAYBE-PROMPT is non-nil, ask the user for a different directory to look in. If that directory is not a part of a detectable project either, return a `transient' project instance rooted in it. (fn &optional MAYBE-PROMPT DIR)Fproject-find-regexp Find all matches for REGEXP in the current project's roots. With \[universal-argument] prefix, you can specify the directory to search in, and the file name pattern to search for. The pattern may use abbreviations defined in `grep-files-aliases', e.g. entering `ch' is equivalent to `*.[ch]'. As whitespace triggers completion when entering a pattern, including it requires quoting, e.g. `\[quoted-insert]<space>'. (fn REGEXP)Fproject-or-external-find-regexp Find all matches for REGEXP in the project roots or external roots. With \[universal-argument] prefix, you can specify the file name pattern to search for. (fn REGEXP)Fproject-find-file Visit a file (with completion) in the current project's roots. The completion default is the filename at point, if one is recognized. (fn)Fproject-or-external-find-file Visit a file (with completion) in the current project's roots or external roots. The completion default is the filename at point, if one is recognized. (fn)Fprolog-mode Major mode for editing Prolog code. Blank lines and `%%...' separate paragraphs. `%'s starts a comment line and comments can also be enclosed in /* ... */. If an optional argument SYSTEM is non-nil, set up mode for the given system. To find out what version of Prolog mode you are running, enter `\[prolog-mode-version]'. Commands: \{prolog-mode-map} (fn)Fmercury-mode Major mode for editing Mercury programs. Actually this is just customized `prolog-mode'. (fn)Frun-prolog Run an inferior Prolog process, input and output via buffer *prolog*. With prefix argument ARG, restart the Prolog process if running before. (fn ARG)Vbdf-directory-list List of directories to search for `BDF' font files. The default value is ("/usr/local/share/emacs/fonts/bdf").Fps-mode Major mode for editing PostScript with GNU Emacs. Entry to this mode calls `ps-mode-hook'. The following variables hold user options, and can be set through the `customize' command: `ps-mode-tab' `ps-mode-paper-size' `ps-mode-print-function' `ps-run-prompt' `ps-run-font-lock-keywords-2' `ps-run-x' `ps-run-dumb' `ps-run-init' `ps-run-error-line-numbers' `ps-run-tmp-dir' Type \[describe-variable] for documentation on these options. \{ps-mode-map} When starting an interactive PostScript process with \[ps-run-start], a second window will be displayed, and `ps-run-mode-hook' will be called. The keymap for this second window is: \{ps-run-mode-map} When Ghostscript encounters an error it displays an error message with a file position. Clicking mouse-2 on this number will bring point to the corresponding spot in the PostScript window, if input to the interpreter was sent from that window. Typing \<ps-run-mode-map>\[ps-run-goto-error] when the cursor is at the number has the same effect. (fn)Vps-page-dimensions-database List associating a symbolic paper type to its width, height and doc media. See `ps-paper-type'.Vps-paper-type Specify the size of paper to format for. Should be one of the paper types defined in `ps-page-dimensions-database', for example `letter', `legal' or `a4'.Vps-print-color-p Specify how buffer's text color is printed. Valid values are: nil Do not print colors. t Print colors. black-white Print colors on black/white printer. See also `ps-black-white-faces'. Any other value is treated as t.Fps-print-customize Customization of ps-print group. (fn)Fps-print-buffer Generate and print a PostScript image of the buffer. Interactively, when you use a prefix argument (\[universal-argument]), the command prompts the user for a file name, and saves the PostScript image in that file instead of sending it to the printer. Noninteractively, the argument FILENAME is treated as follows: if it is nil, send the image to the printer. If FILENAME is a string, save the PostScript image in a file with that name. (fn &optional FILENAME)Fps-print-buffer-with-faces Generate and print a PostScript image of the buffer. Like `ps-print-buffer', but includes font, color, and underline information in the generated image. This command works only if you are using a window system, so it has a way to determine color values. (fn &optional FILENAME)Fps-print-region Generate and print a PostScript image of the region. Like `ps-print-buffer', but prints just the current region. (fn FROM TO &optional FILENAME)Fps-print-region-with-faces Generate and print a PostScript image of the region. Like `ps-print-region', but includes font, color, and underline information in the generated image. This command works only if you are using a window system, so it has a way to determine color values. (fn FROM TO &optional FILENAME)Fps-spool-buffer Generate and spool a PostScript image of the buffer. Like `ps-print-buffer' except that the PostScript image is saved in a local buffer to be sent to the printer later. Use the command `ps-despool' to send the spooled images to the printer. (fn)Fps-spool-buffer-with-faces Generate and spool a PostScript image of the buffer. Like the command `ps-spool-buffer', but includes font, color, and underline information in the generated image. This command works only if you are using a window system, so it has a way to determine color values. Use the command `ps-despool' to send the spooled images to the printer. (fn)Fps-spool-region Generate a PostScript image of the region and spool locally. Like `ps-spool-buffer', but spools just the current region. Use the command `ps-despool' to send the spooled images to the printer. (fn FROM TO)Fps-spool-region-with-faces Generate a PostScript image of the region and spool locally. Like `ps-spool-region', but includes font, color, and underline information in the generated image. This command works only if you are using a window system, so it has a way to determine color values. Use the command `ps-despool' to send the spooled images to the printer. (fn FROM TO)Fps-despool Send the spooled PostScript to the printer. Interactively, when you use a prefix argument (\[universal-argument]), the command prompts the user for a file name, and saves the spooled PostScript image in that file instead of sending it to the printer. Noninteractively, the argument FILENAME is treated as follows: if it is nil, send the image to the printer. If FILENAME is a string, save the PostScript image in a file with that name. (fn &optional FILENAME)Fps-line-lengths Display the correspondence between a line length and a font size. Done using the current ps-print setup. Try: pr -t file | awk \='{printf "%3d %s ", length($0), $0}\=' | sort -r | head (fn)Fps-nb-pages-buffer Display number of pages to print this buffer, for various font heights. The table depends on the current ps-print setup. (fn NB-LINES)Fps-nb-pages-region Display number of pages to print the region, for various font heights. The table depends on the current ps-print setup. (fn NB-LINES)Fps-setup Return the current PostScript-generation setup. (fn)Fps-extend-face-list Extend face in ALIST-SYM. If optional MERGE-P is non-nil, extensions in FACE-EXTENSION-LIST are merged with face extension in ALIST-SYM; otherwise, overrides. If optional ALIST-SYM is nil, `ps-print-face-extension-alist' is used; otherwise, it should be an alist symbol. The elements in FACE-EXTENSION-LIST are like those for `ps-extend-face'. See `ps-extend-face' for documentation. (fn FACE-EXTENSION-LIST &optional MERGE-P ALIST-SYM)Fps-extend-face Extend face in ALIST-SYM. If optional MERGE-P is non-nil, extensions in FACE-EXTENSION list are merged with face extensions in ALIST-SYM; otherwise, overrides. If optional ALIST-SYM is nil, `ps-print-face-extension-alist' is used; otherwise, it should be an alist symbol. The elements of FACE-EXTENSION list have the form: (FACE-NAME FOREGROUND BACKGROUND EXTENSION...) FACE-NAME is a face name symbol. FOREGROUND and BACKGROUND may be nil or a string that denotes the foreground and background colors respectively. EXTENSION is one of the following symbols: bold - use bold font. italic - use italic font. underline - put a line under text. strikeout - like underline, but the line is in middle of text. overline - like underline, but the line is over the text. shadow - text will have a shadow. box - text will be surrounded by a box. outline - print characters as hollow outlines. If EXTENSION is any other symbol, it is ignored. (fn FACE-EXTENSION &optional MERGE-P ALIST-SYM)Fpulse-momentary-highlight-one-line Highlight the line around POINT, unhighlighting before next command. Optional argument FACE specifies the face to do the highlighting. (fn POINT &optional FACE)Fpulse-momentary-highlight-region Highlight between START and END, unhighlighting before next command. Optional argument FACE specifies the face to do the highlighting. (fn START END &optional FACE)Frun-python Run an inferior Python process. Argument CMD defaults to `python-shell-calculate-command' return value. When called interactively with `prefix-arg', it allows the user to edit such value and choose whether the interpreter should be DEDICATED for the current buffer. When numeric prefix arg is other than 0 or 4 do not SHOW. For a given buffer and same values of DEDICATED, if a process is already running for it, it will do nothing. This means that if the current buffer is using a global process, the user is still able to switch it to use a dedicated one. Runs the hook `inferior-python-mode-hook' after `comint-mode-hook' is run. (Type \[describe-mode] in the process buffer for a list of commands.) (fn &optional CMD DEDICATED SHOW)Fpython-mode Major mode for editing Python files. \{python-mode-map} (fn)Fquoted-printable-decode-region Decode quoted-printable in the region between FROM and TO, per RFC 2045. If CODING-SYSTEM is non-nil, decode bytes into characters with that coding-system. Interactively, you can supply the CODING-SYSTEM argument with \[universal-coding-system-argument]. The CODING-SYSTEM argument is a historical hangover and is deprecated. QP encodes raw bytes and should be decoded into raw bytes. Decoding them into characters should be done separately. (fn FROM TO &optional CODING-SYSTEM)Fquail-title Return the title of the current Quail package. (fn)Fquail-use-package Start using Quail package PACKAGE-NAME. The remaining arguments are LIBRARIES to be loaded before using the package. This activates input method defined by PACKAGE-NAME by running `quail-activate', which see. (fn PACKAGE-NAME &rest LIBRARIES)Fquail-define-package Define NAME as a new Quail package for input LANGUAGE. TITLE is a string to be displayed at mode-line to indicate this package. Optional arguments are GUIDANCE, DOCSTRING, TRANSLATION-KEYS, FORGET-LAST-SELECTION, DETERMINISTIC, KBD-TRANSLATE, SHOW-LAYOUT, CREATE-DECODE-MAP, MAXIMUM-SHORTEST, OVERLAY-PLIST, UPDATE-TRANSLATION-FUNCTION, CONVERSION-KEYS and SIMPLE. GUIDANCE specifies how a guidance string is shown in echo area. If it is t, list of all possible translations for the current key is shown with the currently selected translation being highlighted. If it is an alist, the element has the form (CHAR . STRING). Each character in the current key is searched in the list and the corresponding string is shown. If it is nil, the current key is shown. DOCSTRING is the documentation string of this package. The command `describe-input-method' shows this string while replacing the form \=\<VAR> in the string by the value of VAR. That value should be a string. For instance, the form \=\<quail-translation-docstring> is replaced by a description about how to select a translation from a list of candidates. TRANSLATION-KEYS specifies additional key bindings used while translation region is active. It is an alist of single key character vs. corresponding command to be called. FORGET-LAST-SELECTION non-nil means a selected translation is not kept for the future to translate the same key. If this flag is nil, a translation selected for a key is remembered so that it can be the first candidate when the same key is entered later. DETERMINISTIC non-nil means the first candidate of translation is selected automatically without allowing users to select another translation for a key. In this case, unselected translations are of no use for an interactive use of Quail but can be used by some other programs. If this flag is non-nil, FORGET-LAST-SELECTION is also set to t. KBD-TRANSLATE non-nil means input characters are translated from a user's keyboard layout to the standard keyboard layout. See the documentation of `quail-keyboard-layout' and `quail-keyboard-layout-standard' for more detail. SHOW-LAYOUT non-nil means the function `quail-help' (as used by the command `describe-input-method') should show the user's keyboard layout visually with translated characters. If KBD-TRANSLATE is set, it is desirable to also set this flag, unless this package defines no translations for single character keys. CREATE-DECODE-MAP non-nil means decode map is also created. A decode map is an alist of translations and corresponding original keys. Although this map is not used by Quail itself, it can be used by some other programs. For instance, Vietnamese supporting needs this map to convert Vietnamese text to VIQR format which uses only ASCII characters to represent Vietnamese characters. MAXIMUM-SHORTEST non-nil means break key sequence to get maximum length of the shortest sequence. When we don't have a translation of key "..ABCD" but have translations of "..AB" and "CD..", break the key at "..AB" and start translation of "CD..". Hangul packages, for instance, use this facility. If this flag is nil, we break the key just at "..ABC" and start translation of "D..". OVERLAY-PLIST if non-nil is a property list put on an overlay which covers Quail translation region. UPDATE-TRANSLATION-FUNCTION if non-nil is a function to call to update the current translation region according to a new translation data. By default, a translated text or a user's key sequence (if no translation for it) is inserted. CONVERSION-KEYS specifies additional key bindings used while conversion region is active. It is an alist of single key character vs. corresponding command to be called. If SIMPLE is non-nil, then we do not alter the meanings of commands such as C-f, C-b, C-n, C-p and TAB; they are treated as non-Quail commands. (fn NAME LANGUAGE TITLE &optional GUIDANCE DOCSTRING TRANSLATION-KEYS FORGET-LAST-SELECTION DETERMINISTIC KBD-TRANSLATE SHOW-LAYOUT CREATE-DECODE-MAP MAXIMUM-SHORTEST OVERLAY-PLIST UPDATE-TRANSLATION-FUNCTION CONVERSION-KEYS SIMPLE)Fquail-set-keyboard-layout Set the current keyboard layout to the same as keyboard KBD-TYPE. Since some Quail packages depends on a physical layout of keys (not characters generated by them), those are created by assuming the standard layout defined in `quail-keyboard-layout-standard'. This function tells Quail system the layout of your keyboard so that what you type is correctly handled. (fn KBD-TYPE)Fquail-show-keyboard-layout Show the physical layout of the keyboard type KEYBOARD-TYPE. The variable `quail-keyboard-layout-type' holds the currently selected keyboard type. (fn &optional KEYBOARD-TYPE)Fquail-define-rules Define translation rules of the current Quail package. Each argument is a list of KEY and TRANSLATION. KEY is a string meaning a sequence of keystrokes to be translated. TRANSLATION is a character, a string, a vector, a Quail map, or a function. If it is a character, it is the sole translation of KEY. If it is a string, each character is a candidate for the translation. If it is a vector, each element (string or character) is a candidate for the translation. In these cases, a key specific Quail map is generated and assigned to KEY. If TRANSLATION is a Quail map or a function symbol which returns a Quail map, it is used to handle KEY. The first argument may be an alist of annotations for the following rules. Each element has the form (ANNOTATION . VALUE), where ANNOTATION is a symbol indicating the annotation type. Currently the following annotation types are supported. append -- the value non-nil means that the following rules should be appended to the rules of the current Quail package. face -- the value is a face to use for displaying TRANSLATIONs in candidate list. advice -- the value is a function to call after one of RULES is selected. The function is called with one argument, the selected TRANSLATION string, after the TRANSLATION is inserted. no-decode-map --- the value non-nil means that decoding map is not generated for the following translations. (fn &rest RULES)Fquail-install-map Install the Quail map MAP in the current Quail package. Optional 2nd arg NAME, if non-nil, is a name of Quail package for which to install MAP. The installed map can be referred by the function `quail-map'. (fn MAP &optional NAME)Fquail-install-decode-map Install the Quail decode map DECODE-MAP in the current Quail package. Optional 2nd arg NAME, if non-nil, is a name of Quail package for which to install MAP. The installed decode map can be referred by the function `quail-decode-map'. (fn DECODE-MAP &optional NAME)Fquail-defrule Add one translation rule, KEY to TRANSLATION, in the current Quail package. KEY is a string meaning a sequence of keystrokes to be translated. TRANSLATION is a character, a string, a vector, a Quail map, a function, or a cons. It it is a character, it is the sole translation of KEY. If it is a string, each character is a candidate for the translation. If it is a vector, each element (string or character) is a candidate for the translation. If it is a cons, the car is one of the above and the cdr is a function to call when translating KEY (the return value is assigned to the variable `quail-current-data'). If the cdr part is not a function, the value itself is assigned to `quail-current-data'. In these cases, a key specific Quail map is generated and assigned to KEY. If TRANSLATION is a Quail map or a function symbol which returns a Quail map, it is used to handle KEY. Optional 3rd argument NAME, if specified, says which Quail package to define this translation rule in. The default is to define it in the current Quail package. Optional 4th argument APPEND, if non-nil, appends TRANSLATION to the current translations for KEY instead of replacing them. (fn KEY TRANSLATION &optional NAME APPEND)Fquail-defrule-internal Define KEY as TRANS in a Quail map MAP. If Optional 4th arg APPEND is non-nil, TRANS is appended to the current translations for KEY instead of replacing them. Optional 5th arg DECODE-MAP is a Quail decode map. Optional 6th arg PROPS is a property list annotating TRANS. See the function `quail-define-rules' for the detail. (fn KEY TRANS MAP &optional APPEND DECODE-MAP PROPS)Fquail-update-leim-list-file Update entries for Quail packages in `LEIM' list file in directory DIRNAME. DIRNAME is a directory containing Emacs input methods; normally, it should specify the `leim' subdirectory of the Emacs source tree. It searches for Quail packages under `quail' subdirectory of DIRNAME, and update the file "leim-list.el" in DIRNAME. When called from a program, the remaining arguments are additional directory names to search for Quail packages under `quail' subdirectory of each directory. (fn DIRNAME &rest DIRNAMES)Fhangul-input-method-activate Activate Hangul input method INPUT-METHOD. FUNC is a function to handle input key. HELP-TEXT is a text set in `hangul-input-method-help-text'. (fn INPUT-METHOD FUNC HELP-TEXT &rest ARGS)Fucs-input-activate Activate UCS input method. With ARG, activate UCS input method if and only if ARG is positive. While this input method is active, the variable `input-method-function' is bound to the function `ucs-input-method'. (fn &optional ARG)Vquickurl-reread-hook-postfix Example `quickurl-postfix' text that adds a local variable to the `quickurl-url-file' so that if you edit it by hand it will ensure that `quickurl-urls' is updated with the new URL list. To make use of this do something like: (setq quickurl-postfix quickurl-reread-hook-postfix) in your init file (after loading/requiring quickurl).Fquickurl Insert a URL based on LOOKUP. If not supplied LOOKUP is taken to be the word at point in the current buffer, this default action can be modified via `quickurl-grab-lookup-function'. (fn &optional LOOKUP)Fquickurl-ask Insert a URL, with `completing-read' prompt, based on LOOKUP. (fn LOOKUP)Fquickurl-add-url Allow the user to interactively add a new URL associated with WORD. See `quickurl-grab-url' for details on how the default word/URL combination is decided. (fn WORD URL COMMENT)Fquickurl-browse-url Browse the URL associated with LOOKUP. If not supplied LOOKUP is taken to be the word at point in the current buffer, this default action can be modified via `quickurl-grab-lookup-function'. (fn &optional LOOKUP)Fquickurl-browse-url-ask Browse the URL, with `completing-read' prompt, associated with LOOKUP. (fn LOOKUP)Fquickurl-edit-urls Pull `quickurl-url-file' into a buffer for hand editing. (fn)Fquickurl-list-mode A mode for browsing the quickurl URL list. The key bindings for `quickurl-list-mode' are: \{quickurl-list-mode-map} (fn)Fquickurl-list Display `quickurl-list' as a formatted list using `quickurl-list-mode'. (fn)Frcirc Connect to all servers in `rcirc-server-alist'. Do not connect to a server if it is already connected. If ARG is non-nil, instead prompt for connection parameters. (fn ARG)Frcirc-connect (fn SERVER &optional PORT NICK USER-NAME FULL-NAME STARTUP-CHANNELS PASSWORD ENCRYPTION SERVER-ALIAS)Vrcirc-track-minor-mode Non-nil if Rcirc-Track minor mode is enabled. See the `rcirc-track-minor-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `rcirc-track-minor-mode'.Frcirc-track-minor-mode Global minor mode for tracking activity in rcirc buffers. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Fre-builder Construct a regexp interactively. This command makes the current buffer the "target" buffer of the regexp builder. It displays a buffer named "*RE-Builder*" in another window, initially containing an empty regexp. As you edit the regexp in the "*RE-Builder*" buffer, the matching parts of the target buffer will be highlighted. (fn)Vrecentf-mode Non-nil if Recentf mode is enabled. See the `recentf-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `recentf-mode'.Frecentf-mode Toggle "Open Recent" menu (Recentf mode). With a prefix argument ARG, enable Recentf mode if ARG is positive, and disable it otherwise. If called from Lisp, enable Recentf mode if ARG is omitted or nil. When Recentf mode is enabled, a "Open Recent" submenu is displayed in the "File" menu, containing a list of files that were operated on recently. (fn &optional ARG)Fdelete-rectangle Delete (don't save) text in the region-rectangle. The same range of columns is deleted in each line starting with the line where the region begins and ending with the line where the region ends. When called from a program the rectangle's corners are START and END. With a prefix (or a FILL) argument, also fill lines where nothing has to be deleted. (fn START END &optional FILL)Fdelete-extract-rectangle Delete the contents of the rectangle with corners at START and END. Return it as a list of strings, one for each line of the rectangle. When called from a program the rectangle's corners are START and END. With an optional FILL argument, also fill lines where nothing has to be deleted. (fn START END &optional FILL)Fextract-rectangle Return the contents of the rectangle with corners at START and END. Return it as a list of strings, one for each line of the rectangle. (fn START END)Fkill-rectangle Delete the region-rectangle and save it as the last killed one. When called from a program the rectangle's corners are START and END. You might prefer to use `delete-extract-rectangle' from a program. With a prefix (or a FILL) argument, also fill lines where nothing has to be deleted. If the buffer is read-only, Emacs will beep and refrain from deleting the rectangle, but put it in `killed-rectangle' anyway. This means that you can use this command to copy text from a read-only buffer. (If the variable `kill-read-only-ok' is non-nil, then this won't even beep.) (fn START END &optional FILL)Fcopy-rectangle-as-kill Copy the region-rectangle and save it as the last killed one. (fn START END)Fyank-rectangle Yank the last killed rectangle with upper left corner at point. (fn)Finsert-rectangle Insert text of RECTANGLE with upper left corner at point. RECTANGLE's first line is inserted at point, its second line is inserted at a point vertically under point, etc. RECTANGLE should be a list of strings. After this command, the mark is at the upper left corner and point is at the lower right corner. (fn RECTANGLE)Fopen-rectangle Blank out the region-rectangle, shifting text right. The text previously in the region is not overwritten by the blanks, but instead winds up to the right of the rectangle. When called from a program the rectangle's corners are START and END. With a prefix (or a FILL) argument, fill with blanks even if there is no text on the right side of the rectangle. (fn START END &optional FILL)Fdelete-whitespace-rectangle Delete all whitespace following a specified column in each line. The left edge of the rectangle specifies the position in each line at which whitespace deletion should begin. On each line in the rectangle, all contiguous whitespace starting at that column is deleted. When called from a program the rectangle's corners are START and END. With a prefix (or a FILL) argument, also fill too short lines. (fn START END &optional FILL)Fstring-rectangle Replace rectangle contents with STRING on each line. The length of STRING need not be the same as the rectangle width. When called interactively and option `rectangle-preview' is non-nil, display the result as the user enters the string into the minibuffer. Called from a program, takes three args; START, END and STRING. (fn START END STRING)Fstring-insert-rectangle Insert STRING on each line of region-rectangle, shifting text right. When called from a program, the rectangle's corners are START and END. The left edge of the rectangle specifies the column for insertion. This command does not delete or overwrite any existing text. (fn START END STRING)Fclear-rectangle Blank out the region-rectangle. The text previously in the region is overwritten with blanks. When called from a program the rectangle's corners are START and END. With a prefix (or a FILL) argument, also fill with blanks the parts of the rectangle which were empty. (fn START END &optional FILL)Frectangle-number-lines Insert numbers in front of the region-rectangle. START-AT, if non-nil, should be a number from which to begin counting. FORMAT, if non-nil, should be a format string to pass to `format' along with the line count. When called interactively with a prefix argument, prompt for START-AT and FORMAT. (fn START END START-AT &optional FORMAT)Frectangle-mark-mode Toggle the region as rectangular. Activates the region if needed. Only lasts until the region is deactivated. (fn &optional ARG)Frefill-mode Toggle automatic refilling (Refill mode). With a prefix argument ARG, enable Refill mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Refill mode is a buffer-local minor mode. When enabled, the current paragraph is refilled as you edit. Self-inserting characters only cause refilling if they would cause auto-filling. For true "word wrap" behavior, use `visual-line-mode' instead. (fn &optional ARG)Fturn-on-reftex Turn on RefTeX mode. (fn)Freftex-mode Minor mode with distinct support for \label, \ref and \cite in LaTeX. \<reftex-mode-map>A Table of Contents of the entire (multifile) document with browsing capabilities is available with `\[reftex-toc]'. Labels can be created with `\[reftex-label]' and referenced with `\[reftex-reference]'. When referencing, you get a menu with all labels of a given type and context of the label definition. The selected label is inserted as a \ref macro. Citations can be made with `\[reftex-citation]' which will use a regular expression to pull out a *formatted* list of articles from your BibTeX database. The selected citation is inserted as a \cite macro. Index entries can be made with `\[reftex-index-selection-or-word]' which indexes the word at point or the current selection. More general index entries are created with `\[reftex-index]'. `\[reftex-display-index]' displays the compiled index. Most command have help available on the fly. This help is accessed by pressing `?' to any prompt mentioning this feature. Extensive documentation about RefTeX is available in Info format. You can view this information with `\[reftex-info]'. \{reftex-mode-map} Under X, these and other functions will also be available as `Ref' menu on the menu bar. ------------------------------------------------------------------------------ (fn &optional ARG)Freftex-reset-scanning-information Reset the symbols containing information from buffer scanning. This enforces rescanning the buffer on next use. (fn)Fregexp-opt Return a regexp to match a string in the list STRINGS. Each string should be unique in STRINGS and should not contain any regexps, quoted or not. Optional PAREN specifies how the returned regexp is surrounded by grouping constructs. The optional argument PAREN can be any of the following: a string the resulting regexp is preceded by PAREN and followed by \), e.g. use "\\(?1:" to produce an explicitly numbered group. `words' the resulting regexp is surrounded by \=\<\( and \)\>. `symbols' the resulting regexp is surrounded by \_<\( and \)\_>. non-nil the resulting regexp is surrounded by \( and \). nil the resulting regexp is surrounded by \(?: and \), if it is necessary to ensure that a postfix operator appended to it will apply to the whole expression. The resulting regexp is equivalent to but usually more efficient than that of a simplified version: (defun simplified-regexp-opt (strings &optional paren) (let ((parens (cond ((stringp paren) (cons paren "\\)")) ((eq paren \='words) \='("\\\=<\\(" . "\\)\\>")) ((eq paren \='symbols) \='("\\_<\\(" . "\\)\\_>")) ((null paren) \='("\\(?:" . "\\)")) (t \='("\\(" . "\\)"))))) (concat (car parens) (mapconcat \='regexp-quote strings "\\|") (cdr parens)))) (fn STRINGS &optional PAREN)Fregexp-opt-depth Return the depth of REGEXP. This means the number of non-shy regexp grouping constructs (parenthesized expressions) in REGEXP. (fn REGEXP)Fremember Remember an arbitrary piece of data. INITIAL is the text to initially place in the *Remember* buffer, or nil to bring up a blank *Remember* buffer. With a prefix or a visible region, use the region as INITIAL. (fn &optional INITIAL)Fremember-other-frame Call `remember' in another frame. (fn &optional INITIAL)Fremember-clipboard Remember the contents of the current clipboard. Most useful for remembering things from other applications. (fn)Fremember-diary-extract-entries Extract diary entries from the region. (fn)Fremember-notes Return the notes buffer, creating it if needed, and maybe switch to it. This buffer is for notes that you want to preserve across Emacs sessions. The notes are saved in `remember-data-file'. If a buffer is already visiting that file, just return it. Otherwise, create the buffer, and rename it to `remember-notes-buffer-name', unless a buffer of that name already exists. Set the major mode according to `remember-notes-initial-major-mode', and enable `remember-notes-mode' minor mode. Use \<remember-notes-mode-map>\[remember-notes-save-and-bury-buffer] to save and bury the notes buffer. Interactively, or if SWITCH-TO is non-nil, switch to the buffer. Return the buffer. Set `initial-buffer-choice' to `remember-notes' to visit your notes buffer when Emacs starts. Set `remember-notes-buffer-name' to "*scratch*" to turn the *scratch* buffer into your notes buffer. (fn &optional SWITCH-TO)Frepeat Repeat most recently executed command. If REPEAT-ARG is non-nil (interactively, with a prefix argument), supply a prefix argument to that command. Otherwise, give the command the same prefix argument it was given before, if any. If this command is invoked by a multi-character key sequence, it can then be repeated by repeating the final character of that sequence. This behavior can be modified by the global variable `repeat-on-final-keystroke'. `repeat' ignores commands bound to input events. Hence the term "most recently executed command" shall be read as "most recently executed command not bound to an input event". (fn REPEAT-ARG)Freporter-submit-bug-report Begin submitting a bug report via email. ADDRESS is the email address for the package's maintainer. PKGNAME is the name of the package (if you want to include version numbers, you must put them into PKGNAME before calling this function). Optional PRE-HOOKS and POST-HOOKS are passed to `reporter-dump-state'. Optional SALUTATION is inserted at the top of the mail buffer, and point is left after the salutation. VARLIST is the list of variables to dump (see `reporter-dump-state' for details). The optional argument PRE-HOOKS and POST-HOOKS are passed to `reporter-dump-state'. Optional argument SALUTATION is text to be inserted at the top of the mail buffer; in that case, point is left after that text. This function prompts for a summary if `reporter-prompt-for-summary-p' is non-nil. This function does not send a message; it uses the given information to initialize a message, which the user can then edit and finally send (or decline to send). The variable `mail-user-agent' controls which mail-sending package is used for editing and sending the message. (fn ADDRESS PKGNAME VARLIST &optional PRE-HOOKS POST-HOOKS SALUTATION)Freposition-window Make the current definition and/or comment visible. Further invocations move it to the top of the window or toggle the visibility of comments that precede it. Point is left unchanged unless prefix ARG is supplied. If the definition is fully onscreen, it is moved to the top of the window. If it is partly offscreen, the window is scrolled to get the definition (or as much as will fit) onscreen, unless point is in a comment which is also partly offscreen, in which case the scrolling attempts to get as much of the comment onscreen as possible. Initially `reposition-window' attempts to make both the definition and preceding comments visible. Further invocations toggle the visibility of the comment lines. If ARG is non-nil, point may move in order to make the whole defun visible (if only part could otherwise be made so), to make the defun line visible (if point is in code and it could not be made so, or if only comments, including the first comment line, are visible), or to make the first comment line visible (if point is in a comment). (fn &optional ARG)Freveal-mode Toggle uncloaking of invisible text near point (Reveal mode). With a prefix argument ARG, enable Reveal mode if ARG is positive, and disable it otherwise. If called from Lisp, enable Reveal mode if ARG is omitted or nil. Reveal mode is a buffer-local minor mode. When enabled, it reveals invisible text around point. (fn &optional ARG)Vglobal-reveal-mode Non-nil if Global Reveal mode is enabled. See the `global-reveal-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-reveal-mode'.Fglobal-reveal-mode Toggle Reveal mode in all buffers (Global Reveal mode). Reveal mode renders invisible text around point visible again. With a prefix argument ARG, enable Global Reveal mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Fring-p Return t if X is a ring; nil otherwise. (fn X)Fmake-ring Make a ring that can contain SIZE elements. (fn SIZE)Frlogin Open a network login connection via `rlogin' with args INPUT-ARGS. INPUT-ARGS should start with a host name; it may also contain other arguments for `rlogin'. Input is sent line-at-a-time to the remote connection. Communication with the remote host is recorded in a buffer `*rlogin-HOST*' (or `*rlogin-USER@HOST*' if the remote username differs). If a prefix argument is given and the buffer `*rlogin-HOST*' already exists, a new buffer with a different connection will be made. When called from a program, if the optional second argument BUFFER is a string or buffer, it specifies the buffer to use. The variable `rlogin-program' contains the name of the actual program to run. It can be a relative or absolute path. The variable `rlogin-explicit-args' is a list of arguments to give to the rlogin when starting. They are added after any arguments given in INPUT-ARGS. If the default value of `rlogin-directory-tracking-mode' is t, then the default directory in that buffer is set to a remote (FTP) file name to access your home directory on the remote machine. Occasionally this causes an error, if you cannot access the home directory on that machine. This error is harmless as long as you don't try to use that default directory. If `rlogin-directory-tracking-mode' is neither t nor nil, then the default directory is initially set up to your (local) home directory. This is useful if the remote machine and your local machine share the same files via NFS. This is the default. If you wish to change directory tracking styles during a session, use the function `rlogin-directory-tracking-mode' rather than simply setting the variable. (fn INPUT-ARGS &optional BUFFER)Vrmail-file-name Name of user's primary mail file.Vrmail-spool-directory Name of directory used by system mailer for delivering new mail. Its name should end with a slash.Frmail-movemail-variant-p Return t if the current movemail variant is any of VARIANTS. Currently known variants are `emacs' and `mailutils'. (fn &rest VARIANTS)Vrmail-user-mail-address-regexp Regexp matching user mail addresses. If non-nil, this variable is used to identify the correspondent when receiving new mail. If it matches the address of the sender, the recipient is taken as correspondent of a mail. If nil (default value), your `user-login-name' and `user-mail-address' are used to exclude yourself as correspondent. Usually you don't have to set this variable, except if you collect mails sent by you under different user names. Then it should be a regexp matching your mail addresses. Setting this variable has an effect only before reading a mail.Vrmail-default-dont-reply-to-names Regexp specifying part of the default value of `mail-dont-reply-to-names'. This is used when the user does not set `mail-dont-reply-to-names' explicitly.Vrmail-ignored-headers Regexp to match header fields that Rmail should normally hide. (See also `rmail-nonignored-headers', which overrides this regexp.) This variable is used for reformatting the message header, which normally happens once for each message, when you view the message for the first time in Rmail. To make a change in this variable take effect for a message that you have already viewed, go to that message and type \[rmail-toggle-header] twice.Vrmail-displayed-headers Regexp to match Header fields that Rmail should display. If nil, display all header fields except those matched by `rmail-ignored-headers'.Vrmail-retry-ignored-headers Headers that should be stripped when retrying a failed message.Vrmail-highlighted-headers Regexp to match Header fields that Rmail should normally highlight. A value of nil means don't highlight. Uses the face `rmail-highlight'.Vrmail-primary-inbox-list List of files that are inboxes for your primary mail file `rmail-file-name'. If this is nil, uses the environment variable MAIL. If that is unset, uses a file named by the function `user-login-name' in the directory `rmail-spool-directory' (whose value depends on the operating system). For example, "/var/mail/USER".Vrmail-secondary-file-directory Directory for additional secondary Rmail files.Vrmail-secondary-file-regexp Regexp for which files are secondary Rmail files.Vrmail-mode-hook List of functions to call when Rmail is invoked.Vrmail-show-message-hook List of functions to call when Rmail displays a message.Vrmail-file-coding-system Coding system used in RMAIL file. This is set to nil by default.Vrmail-insert-mime-forwarded-message-function Function to insert a message in MIME format so it can be forwarded. This function is called if `rmail-enable-mime' and `rmail-enable-mime-composing' are non-nil. It is called with one argument FORWARD-BUFFER, which is a buffer containing the message to forward. The current buffer is the outgoing mail buffer.Frmail Read and edit incoming mail. Moves messages into file named by `rmail-file-name' and edits that file in RMAIL Mode. Type \[describe-mode] once editing that file, for a list of RMAIL commands. May be called with file name as argument; then performs rmail editing on that file, but does not copy any new mail into the file. Interactively, if you supply a prefix argument, then you have a chance to specify a file name with the minibuffer. If `rmail-display-summary' is non-nil, make a summary for this RMAIL file. (fn &optional FILE-NAME-ARG)Frmail-mode Rmail Mode is used by \<rmail-mode-map>\[rmail] for editing Rmail files. All normal editing commands are turned off. Instead, these commands are available: \[rmail-beginning-of-message] Move point to front of this message. \[rmail-end-of-message] Move point to bottom of this message. \[scroll-up] Scroll to next screen of this message. \[scroll-down] Scroll to previous screen of this message. \[rmail-next-undeleted-message] Move to Next non-deleted message. \[rmail-previous-undeleted-message] Move to Previous non-deleted message. \[rmail-next-message] Move to Next message whether deleted or not. \[rmail-previous-message] Move to Previous message whether deleted or not. \[rmail-first-message] Move to the first message in Rmail file. \[rmail-last-message] Move to the last message in Rmail file. \[rmail-show-message] Jump to message specified by numeric position in file. \[rmail-search] Search for string and show message it is found in. \[rmail-delete-forward] Delete this message, move to next nondeleted. \[rmail-delete-backward] Delete this message, move to previous nondeleted. \[rmail-undelete-previous-message] Undelete message. Tries current message, then earlier messages till a deleted message is found. \[rmail-edit-current-message] Edit the current message. \[rmail-cease-edit] to return to Rmail. \[rmail-expunge] Expunge deleted messages. \[rmail-expunge-and-save] Expunge and save the file. \[rmail-quit] Quit Rmail: expunge, save, then switch to another buffer. \[save-buffer] Save without expunging. \[rmail-get-new-mail] Move new mail from system spool directory into this file. \[rmail-mail] Mail a message (same as \[mail-other-window]). \[rmail-continue] Continue composing outgoing message started before. \[rmail-reply] Reply to this message. Like \[rmail-mail] but initializes some fields. \[rmail-retry-failure] Send this message again. Used on a mailer failure message. \[rmail-forward] Forward this message to another user. \[rmail-output] Output (append) this message to another mail file. \[rmail-output-as-seen] Output (append) this message to file as it's displayed. \[rmail-output-body-to-file] Save message body to a file. Default filename comes from Subject line. \[rmail-input] Input Rmail file. Run Rmail on that file. \[rmail-add-label] Add label to message. It will be displayed in the mode line. \[rmail-kill-label] Kill label. Remove a label from current message. \[rmail-next-labeled-message] Move to Next message with specified label (label defaults to last one specified). Standard labels: filed, unseen, answered, forwarded, deleted. Any other label is present only if you add it with \[rmail-add-label]. \[rmail-previous-labeled-message] Move to Previous message with specified label \[rmail-summary] Show headers buffer, with a one line summary of each message. \[rmail-summary-by-labels] Summarize only messages with particular label(s). \[rmail-summary-by-recipients] Summarize only messages with particular recipient(s). \[rmail-summary-by-regexp] Summarize only messages with particular regexp(s). \[rmail-summary-by-topic] Summarize only messages with subject line regexp(s). \[rmail-toggle-header] Toggle display of complete header. (fn)Frmail-input Run Rmail on file FILENAME. (fn FILENAME)Frmail-set-remote-password Set PASSWORD to be used for retrieving mail from a POP or IMAP server. (fn PASSWORD)Frmail-output Append this message to mail file FILE-NAME. Writes mbox format, unless FILE-NAME exists and is Babyl format, in which case it writes Babyl. Interactively, the default file name comes from `rmail-default-file', which is updated to the name you use in this command. In all uses, if FILE-NAME is not absolute, it is expanded with the directory part of `rmail-default-file'. If a buffer is visiting FILE-NAME, adds the text to that buffer rather than saving the file directly. If the buffer is an Rmail buffer, updates it accordingly. This command always outputs the complete message header, even if the header display is currently pruned. Optional prefix argument COUNT (default 1) says to output that many consecutive messages, starting with the current one (ignoring deleted messages). If `rmail-delete-after-output' is non-nil, deletes messages after output. The optional third argument NOATTRIBUTE, if non-nil, says not to set the `filed' attribute, and not to display a "Wrote file" message (if writing a file directly). Set the optional fourth argument NOT-RMAIL non-nil if you call this from a non-Rmail buffer. In this case, COUNT is ignored. (fn FILE-NAME &optional COUNT NOATTRIBUTE NOT-RMAIL)Frmail-output-as-seen Append this message to mbox file named FILE-NAME. The details are as for `rmail-output', except that: i) the header is output as currently seen ii) this function cannot write to Babyl files iii) an Rmail buffer cannot be visiting FILE-NAME Note that if NOT-RMAIL is non-nil, there is no difference between this function and `rmail-output'. This argument may be removed in future, so you should call `rmail-output' directly in that case. (fn FILE-NAME &optional COUNT NOATTRIBUTE NOT-RMAIL)Frmail-output-body-to-file Write this message body to the file FILE-NAME. Interactively, the default file name comes from either the message "Subject" header, or from `rmail-default-body-file'. Updates the value of `rmail-default-body-file' accordingly. In all uses, if FILE-NAME is not absolute, it is expanded with the directory part of `rmail-default-body-file'. Note that this overwrites FILE-NAME (after confirmation), rather than appending to it. Deletes the message after writing if `rmail-delete-after-output' is non-nil. (fn FILE-NAME)Fread-multiple-choice Ask user a multiple choice question. PROMPT should be a string that will be displayed as the prompt. CHOICES is a list of (KEY NAME [DESCRIPTION]). KEY is a character to be entered. NAME is a short name for the entry to be displayed while prompting (if there's room, it might be shortened). DESCRIPTION is an optional longer explanation that will be displayed in a help buffer if the user requests more help. This function translates user input into responses by consulting the bindings in `query-replace-map'; see the documentation of that variable for more information. In this case, the useful bindings are `recenter', `scroll-up', and `scroll-down'. If the user enters `recenter', `scroll-up', or `scroll-down' responses, perform the requested window recentering or scrolling and ask again. When `use-dialog-box' is t (the default), this function can pop up a dialog window to collect the user input. That functionality requires `display-popup-menus-p' to return t. Otherwise, a text dialog will be used. The return value is the matching entry from the CHOICES list. Usage example: (read-multiple-choice "Continue connecting?" \='((?a "always") (?s "session only") (?n "no"))) (fn PROMPT CHOICES)Frng-c-load-schema Load a schema in RELAX NG compact syntax from FILENAME. Return a pattern. (fn FILENAME)Frng-nxml-mode-init Initialize `nxml-mode' to take advantage of `rng-validate-mode'. This is typically called from `nxml-mode-hook'. Validation will be enabled if `rng-nxml-auto-validate-flag' is non-nil. (fn)Frng-validate-mode Minor mode performing continual validation against a RELAX NG schema. Checks whether the buffer is a well-formed XML 1.0 document, conforming to the XML Namespaces Recommendation and valid against a RELAX NG schema. The mode-line indicates whether it is or not. Any parts of the buffer that cause it not to be are considered errors and are highlighted with face `rng-error'. A description of each error is available as a tooltip. \[rng-next-error] goes to the next error after point. Clicking mouse-1 on the word `Invalid' in the mode-line goes to the first error in the buffer. If the buffer changes, then it will be automatically rechecked when Emacs becomes idle; the rechecking will be paused whenever there is input pending. By default, uses a vacuous schema that allows any well-formed XML document. A schema can be specified explicitly using \[rng-set-schema-file-and-validate], or implicitly based on the buffer's file name or on the root element name. In each case the schema must be a RELAX NG schema using the compact schema (such schemas conventionally have a suffix of `.rnc'). The variable `rng-schema-locating-files' specifies files containing rules to use for finding the schema. (fn &optional ARG NO-CHANGE-SCHEMA)Frng-xsd-compile Provides W3C XML Schema as a RELAX NG datatypes library. NAME is a symbol giving the local name of the datatype. PARAMS is a list of pairs (PARAM-NAME . PARAM-VALUE) where PARAM-NAME is a symbol giving the name of the parameter and PARAM-VALUE is a string giving its value. If NAME or PARAMS are invalid, it calls `rng-dt-error' passing it arguments in the same style as format; the value from `rng-dt-error' will be returned. Otherwise, it returns a list. The first member of the list is t if any string is a legal value for the datatype and nil otherwise. The second argument is a symbol; this symbol will be called as a function passing it a string followed by the remaining members of the list. The function must return an object representing the value of the datatype that was represented by the string, or nil if the string is not a representation of any value. The object returned can be any convenient non-nil value, provided that, if two strings represent the same value, the returned objects must be equal. (fn NAME PARAMS)Frobin-define-package Define a robin package. NAME is the string of this robin package. DOCSTRING is the documentation string of this robin package. Each RULE is of the form (INPUT OUTPUT) where INPUT is a string and OUTPUT is either a character or a string. RULES are not evaluated. If there already exists a robin package whose name is NAME, the new one replaces the old one. (fn NAME DOCSTRING &rest RULES)Frobin-modify-package Change a rule in an already defined robin package. NAME is the string specifying a robin package. INPUT is a string that specifies the input pattern. OUTPUT is either a character or a string to be generated. (fn NAME INPUT OUTPUT)Frobin-use-package Start using robin package NAME, which is a string. (fn NAME)Frot13 ROT13 encrypt OBJECT, a buffer or string. If OBJECT is a buffer, encrypt the region between START and END. If OBJECT is a string, encrypt it in its entirety, ignoring START and END, and return the encrypted string. (fn OBJECT &optional START END)Frot13-string Return ROT13 encryption of STRING. (fn STRING)Frot13-region ROT13 encrypt the region between START and END in current buffer. (fn START END)Frot13-other-window Display current buffer in ROT13 in another window. The text itself is not modified, only the way it is displayed is affected. To terminate the ROT13 display, delete that window. As long as that window is not deleted, any buffer displayed in it will become instantly encoded in ROT13. See also `toggle-rot13-mode'. (fn)Ftoggle-rot13-mode Toggle the use of ROT13 encoding for the current window. (fn)Frst-mode Major mode for editing reStructuredText documents. \<rst-mode-map> Turning on `rst-mode' calls the normal hooks `text-mode-hook' and `rst-mode-hook'. This mode also supports font-lock highlighting. \{rst-mode-map} (fn)Frst-minor-mode Toggle ReST minor mode. With a prefix argument ARG, enable ReST minor mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When ReST minor mode is enabled, the ReST mode keybindings are installed on top of the major mode bindings. Use this for modes derived from Text mode, like Mail mode. (fn &optional ARG)Fruby-mode Major mode for editing Ruby code. (fn)Vruler-mode Non-nil if Ruler mode is enabled. Use the command `ruler-mode' to change this variable.Fruler-mode Toggle display of ruler in header line (Ruler mode). With a prefix argument ARG, enable Ruler mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Frx-to-string Parse and produce code for regular expression FORM. FORM is a regular expression in sexp form. NO-GROUP non-nil means don't put shy groups around the result. (fn FORM &optional NO-GROUP)Frx Translate regular expressions REGEXPS in sexp form to a regexp string. REGEXPS is a non-empty sequence of forms of the sort listed below. Note that `rx' is a Lisp macro; when used in a Lisp program being compiled, the translation is performed by the compiler. See `rx-to-string' for how to do such a translation at run-time. The following are valid subforms of regular expressions in sexp notation. STRING matches string STRING literally. CHAR matches character CHAR literally. `not-newline', `nonl' matches any character except a newline. `anything' matches any character `(any SET ...)' `(in SET ...)' `(char SET ...)' matches any character in SET .... SET may be a character or string. Ranges of characters can be specified as `A-Z' in strings. Ranges may also be specified as conses like `(?A . ?Z)'. SET may also be the name of a character class: `digit', `control', `hex-digit', `blank', `graph', `print', `alnum', `alpha', `ascii', `nonascii', `lower', `punct', `space', `upper', `word', or one of their synonyms. `(not (any SET ...))' matches any character not in SET ... `line-start', `bol' matches the empty string, but only at the beginning of a line in the text being matched `line-end', `eol' is similar to `line-start' but matches only at the end of a line `string-start', `bos', `bot' matches the empty string, but only at the beginning of the string being matched against. `string-end', `eos', `eot' matches the empty string, but only at the end of the string being matched against. `buffer-start' matches the empty string, but only at the beginning of the buffer being matched against. Actually equivalent to `string-start'. `buffer-end' matches the empty string, but only at the end of the buffer being matched against. Actually equivalent to `string-end'. `point' matches the empty string, but only at point. `word-start', `bow' matches the empty string, but only at the beginning of a word. `word-end', `eow' matches the empty string, but only at the end of a word. `word-boundary' matches the empty string, but only at the beginning or end of a word. `(not word-boundary)' `not-word-boundary' matches the empty string, but not at the beginning or end of a word. `symbol-start' matches the empty string, but only at the beginning of a symbol. `symbol-end' matches the empty string, but only at the end of a symbol. `digit', `numeric', `num' matches 0 through 9. `control', `cntrl' matches ASCII control characters. `hex-digit', `hex', `xdigit' matches 0 through 9, a through f and A through F. `blank' matches horizontal whitespace, as defined by Annex C of the Unicode Technical Standard #18. In particular, it matches spaces, tabs, and other characters whose Unicode `general-category' property indicates they are spacing separators. `graphic', `graph' matches graphic characters--everything except whitespace, ASCII and non-ASCII control characters, surrogates, and codepoints unassigned by Unicode. `printing', `print' matches whitespace and graphic characters. `alphanumeric', `alnum' matches alphabetic characters and digits. For multibyte characters, it matches characters whose Unicode `general-category' property indicates they are alphabetic or decimal number characters. `letter', `alphabetic', `alpha' matches alphabetic characters. For multibyte characters, it matches characters whose Unicode `general-category' property indicates they are alphabetic characters. `ascii' matches ASCII (unibyte) characters. `nonascii' matches non-ASCII (multibyte) characters. `lower', `lower-case' matches anything lower-case, as determined by the current case table. If `case-fold-search' is non-nil, this also matches any upper-case letter. `upper', `upper-case' matches anything upper-case, as determined by the current case table. If `case-fold-search' is non-nil, this also matches any lower-case letter. `punctuation', `punct' matches punctuation. (But at present, for multibyte characters, it matches anything that has non-word syntax.) `space', `whitespace', `white' matches anything that has whitespace syntax. `word', `wordchar' matches anything that has word syntax. `not-wordchar' matches anything that has non-word syntax. `(syntax SYNTAX)' matches a character with syntax SYNTAX. SYNTAX must be one of the following symbols, or a symbol corresponding to the syntax character, e.g. `\.' for `\s.'. `whitespace' (\s- in string notation) `punctuation' (\s.) `word' (\sw) `symbol' (\s_) `open-parenthesis' (\s() `close-parenthesis' (\s)) `expression-prefix' (\s') `string-quote' (\s") `paired-delimiter' (\s$) `escape' (\s\) `character-quote' (\s/) `comment-start' (\s<) `comment-end' (\s>) `string-delimiter' (\s|) `comment-delimiter' (\s!) `(not (syntax SYNTAX))' matches a character that doesn't have syntax SYNTAX. `(category CATEGORY)' matches a character with category CATEGORY. CATEGORY must be either a character to use for C, or one of the following symbols. `consonant' (\c0 in string notation) `base-vowel' (\c1) `upper-diacritical-mark' (\c2) `lower-diacritical-mark' (\c3) `tone-mark' (\c4) `symbol' (\c5) `digit' (\c6) `vowel-modifying-diacritical-mark' (\c7) `vowel-sign' (\c8) `semivowel-lower' (\c9) `not-at-end-of-line' (\c<) `not-at-beginning-of-line' (\c>) `alpha-numeric-two-byte' (\cA) `chinese-two-byte' (\cC) `greek-two-byte' (\cG) `japanese-hiragana-two-byte' (\cH) `indian-two-byte' (\cI) `japanese-katakana-two-byte' (\cK) `korean-hangul-two-byte' (\cN) `cyrillic-two-byte' (\cY) `combining-diacritic' (\c^) `ascii' (\ca) `arabic' (\cb) `chinese' (\cc) `ethiopic' (\ce) `greek' (\cg) `korean' (\ch) `indian' (\ci) `japanese' (\cj) `japanese-katakana' (\ck) `latin' (\cl) `lao' (\co) `tibetan' (\cq) `japanese-roman' (\cr) `thai' (\ct) `vietnamese' (\cv) `hebrew' (\cw) `cyrillic' (\cy) `can-break' (\c|) `(not (category CATEGORY))' matches a character that doesn't have category CATEGORY. `(and SEXP1 SEXP2 ...)' `(: SEXP1 SEXP2 ...)' `(seq SEXP1 SEXP2 ...)' `(sequence SEXP1 SEXP2 ...)' matches what SEXP1 matches, followed by what SEXP2 matches, etc. `(submatch SEXP1 SEXP2 ...)' `(group SEXP1 SEXP2 ...)' like `and', but makes the match accessible with `match-end', `match-beginning', and `match-string'. `(submatch-n N SEXP1 SEXP2 ...)' `(group-n N SEXP1 SEXP2 ...)' like `group', but make it an explicitly-numbered group with group number N. `(or SEXP1 SEXP2 ...)' `(| SEXP1 SEXP2 ...)' matches anything that matches SEXP1 or SEXP2, etc. If all args are strings, use `regexp-opt' to optimize the resulting regular expression. `(minimal-match SEXP)' produce a non-greedy regexp for SEXP. Normally, regexps matching zero or more occurrences of something are "greedy" in that they match as much as they can, as long as the overall regexp can still match. A non-greedy regexp matches as little as possible. `(maximal-match SEXP)' produce a greedy regexp for SEXP. This is the default. Below, `SEXP ...' represents a sequence of regexp forms, treated as if enclosed in `(and ...)'. `(zero-or-more SEXP ...)' `(0+ SEXP ...)' matches zero or more occurrences of what SEXP ... matches. `(* SEXP ...)' like `zero-or-more', but always produces a greedy regexp, independent of `rx-greedy-flag'. `(*? SEXP ...)' like `zero-or-more', but always produces a non-greedy regexp, independent of `rx-greedy-flag'. `(one-or-more SEXP ...)' `(1+ SEXP ...)' matches one or more occurrences of SEXP ... `(+ SEXP ...)' like `one-or-more', but always produces a greedy regexp. `(+? SEXP ...)' like `one-or-more', but always produces a non-greedy regexp. `(zero-or-one SEXP ...)' `(optional SEXP ...)' `(opt SEXP ...)' matches zero or one occurrences of A. `(? SEXP ...)' like `zero-or-one', but always produces a greedy regexp. `(?? SEXP ...)' like `zero-or-one', but always produces a non-greedy regexp. `(repeat N SEXP)' `(= N SEXP ...)' matches N occurrences. `(>= N SEXP ...)' matches N or more occurrences. `(repeat N M SEXP)' `(** N M SEXP ...)' matches N to M occurrences. `(backref N)' matches what was matched previously by submatch N. `(eval FORM)' evaluate FORM and insert result. If result is a string, `regexp-quote' it. `(regexp REGEXP)' include REGEXP in string notation in the result. (fn &rest REGEXPS)Vsavehist-mode Non-nil if Savehist mode is enabled. See the `savehist-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `savehist-mode'.Fsavehist-mode Toggle saving of minibuffer history (Savehist mode). With a prefix argument ARG, enable Savehist mode if ARG is positive, and disable it otherwise. If called from Lisp, also enable the mode if ARG is omitted or nil. When Savehist mode is enabled, minibuffer history is saved to `savehist-file' periodically and when exiting Emacs. When Savehist mode is enabled for the first time in an Emacs session, it loads the previous minibuffer histories from `savehist-file'. The variable `savehist-autosave-interval' controls the periodicity of saving minibuffer histories. If `savehist-save-minibuffer-history' is non-nil (the default), all recorded minibuffer histories will be saved. You can arrange for additional history variables to be saved and restored by customizing `savehist-additional-variables', which by default is an empty list. For example, to save the history of commands invoked via \[execute-extended-command], add `command-history' to the list in `savehist-additional-variables'. Alternatively, you could customize `savehist-save-minibuffer-history' to nil, and add to `savehist-additional-variables' only those history variables you want to save. To ignore some history variables, add their symbols to the list in `savehist-ignored-variables'. This mode should normally be turned on from your Emacs init file. Calling it at any other time replaces your current minibuffer histories, which is probably undesirable. (fn &optional ARG)Vsave-place-mode Non-nil if Save-Place mode is enabled. See the `save-place-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `save-place-mode'.Fsave-place-mode Non-nil means automatically save place in each file. This means when you visit a file, point goes to the last place where it was when you previously visited the same file. (fn &optional ARG)Fsave-place-local-mode Toggle whether to save your place in this file between sessions. If this mode is enabled, point is recorded when you kill the buffer or exit Emacs. Visiting this file again will go to that position, even in a later Emacs session. If called with a prefix arg, the mode is enabled if and only if the argument is positive. To save places automatically in all files, put this in your init file: (save-place-mode 1) (fn &optional ARG)Fscheme-mode Major mode for editing Scheme code. Editing commands are similar to those of `lisp-mode'. In addition, if an inferior Scheme process is running, some additional commands will be defined, for evaluating expressions and controlling the interpreter, and the state of the process will be displayed in the mode line of all Scheme buffers. The names of commands that interact with the Scheme process start with "xscheme-" if you use the MIT Scheme-specific `xscheme' package; for more information see the documentation for `xscheme-interaction-mode'. Use \[run-scheme] to start an inferior Scheme using the more general `cmuscheme' package. Commands: Delete converts tabs to spaces as it moves back. Blank lines separate paragraphs. Semicolons start comments. \{scheme-mode-map} (fn)Fdsssl-mode Major mode for editing DSSSL code. Editing commands are similar to those of `lisp-mode'. Commands: Delete converts tabs to spaces as it moves back. Blank lines separate paragraphs. Semicolons start comments. \{scheme-mode-map} Entering this mode runs the hooks `scheme-mode-hook' and then `dsssl-mode-hook' and inserts the value of `dsssl-sgml-declaration' if that variable's value is a string. (fn)Fgnus-score-mode Mode for editing Gnus score files. This mode is an extended emacs-lisp mode. \{gnus-score-mode-map} (fn)Vscroll-all-mode Non-nil if Scroll-All mode is enabled. See the `scroll-all-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `scroll-all-mode'.Fscroll-all-mode Toggle shared scrolling in same-frame windows (Scroll-All mode). With a prefix argument ARG, enable Scroll-All mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Scroll-All mode is enabled, scrolling commands invoked in one window apply to all visible windows in the same frame. (fn &optional ARG)Fscroll-lock-mode Buffer-local minor mode for pager-like scrolling. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When enabled, keys that normally move point by line or paragraph will scroll the buffer by the respective amount of lines instead and point will be kept vertically fixed relative to window boundaries during scrolling. (fn &optional ARG)Vsemantic-default-submodes List of auxiliary Semantic minor modes enabled by `semantic-mode'. The possible elements of this list include the following: `global-semanticdb-minor-mode' - Maintain tag database. `global-semantic-idle-scheduler-mode' - Reparse buffer when idle. `global-semantic-idle-summary-mode' - Show summary of tag at point. `global-semantic-idle-completions-mode' - Show completions when idle. `global-semantic-decoration-mode' - Additional tag decorations. `global-semantic-highlight-func-mode' - Highlight the current tag. `global-semantic-stickyfunc-mode' - Show current fun in header line. `global-semantic-mru-bookmark-mode' - Provide `switch-to-buffer'-like keybinding for tag names. `global-cedet-m3-minor-mode' - A mouse 3 context menu. `global-semantic-idle-local-symbol-highlight-mode' - Highlight references of the symbol under point. The following modes are more targeted at people who want to see some internal information of the semantic parser in action: `global-semantic-highlight-edits-mode' - Visualize incremental parser by highlighting not-yet parsed changes. `global-semantic-show-unmatched-syntax-mode' - Highlight unmatched lexical syntax tokens. `global-semantic-show-parser-state-mode' - Display the parser cache state.Vsemantic-mode Non-nil if Semantic mode is enabled. See the `semantic-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `semantic-mode'.Fsemantic-mode Toggle parser features (Semantic mode). With a prefix argument ARG, enable Semantic mode if ARG is positive, and disable it otherwise. If called from Lisp, enable Semantic mode if ARG is omitted or nil. In Semantic mode, Emacs parses the buffers you visit for their semantic content. This information is used by a variety of auxiliary minor modes, listed in `semantic-default-submodes'; all the minor modes in this list are also enabled when you enable Semantic mode. \{semantic-mode-map} (fn &optional ARG)Fbovine-grammar-mode Major mode for editing Bovine grammars. (fn)Fwisent-grammar-mode Major mode for editing Wisent grammars. (fn)Vmail-from-style Specifies how "From:" fields look. If nil, they contain just the return address like: king@grassland.com If `parens', they look like: king@grassland.com (Elvis Parsley) If `angles', they look like: Elvis Parsley <king@grassland.com> Otherwise, most addresses look like `angles', but they look like `parens' if `angles' would need quoting and `parens' would not.Vmail-specify-envelope-from If non-nil, specify the envelope-from address when sending mail. The value used to specify it is whatever is found in the variable `mail-envelope-from', with `user-mail-address' as fallback. On most systems, specifying the envelope-from address is a privileged operation. This variable affects sendmail and smtpmail -- if you use feedmail to send mail, see instead the variable `feedmail-deduce-envelope-from'.Vmail-self-blind Non-nil means insert BCC to self in messages to be sent. This is done when the message is initialized, so you can remove or alter the BCC field to override the default.Vmail-interactive Non-nil means when sending a message wait for and display errors. Otherwise, let mailer send back a message to report errors.Vsend-mail-function Function to call to send the current buffer as mail. The headers should be delimited by a line which is not a valid RFC 822 (or later) header or continuation line, that matches the variable `mail-header-separator'. This is used by the default mail-sending commands. See also `message-send-mail-function' for use with the Message package.Vmail-header-separator Line used to separate headers from text in messages being composed.Vmail-archive-file-name Name of file to write all outgoing messages in, or nil for none. This is normally an mbox file, but for backwards compatibility may also be a Babyl file.Vmail-default-reply-to Address to insert as default Reply-to field of outgoing messages. If nil, it will be initialized from the REPLYTO environment variable when you first send mail.Vmail-personal-alias-file If non-nil, the name of the user's personal mail alias file. This file typically should be in same format as the `.mailrc' file used by the `Mail' or `mailx' program. This file need not actually exist.Vmail-setup-hook Normal hook, run each time a new outgoing message is initialized.Vmail-aliases Alist of mail address aliases, or t meaning should be initialized from your mail aliases file. (The file's name is normally `~/.mailrc', but `mail-personal-alias-file' can specify a different file name.) The alias definitions in the file have this form: alias ALIAS MEANINGVmail-yank-prefix Prefix insert on lines of yanked message being replied to. If this is nil, use indentation, as specified by `mail-indentation-spaces'.Vmail-indentation-spaces Number of spaces to insert at the beginning of each cited line. Used by `mail-yank-original' via `mail-indent-citation'.Vmail-citation-hook Hook for modifying a citation just inserted in the mail buffer. Each hook function can find the citation between (point) and (mark t), and should leave point and mark around the citation text as modified. The hook functions can find the header of the cited message in the variable `mail-citation-header', whether or not this is included in the cited portion of the message. If this hook is entirely empty (nil), a default action is taken instead of no action.Vmail-citation-prefix-regexp Regular expression to match a citation prefix plus whitespace. It should match whatever sort of citation prefixes you want to handle, with whitespace before and after; it should also match just whitespace. The default value matches citations like `foo-bar>' plus whitespace.Vmail-signature Text inserted at end of mail buffer when a message is initialized. If t, it means to insert the contents of the file `mail-signature-file'. If a string, that string is inserted. (To make a proper signature, the string should begin with \n\n-- \n, which is the standard way to delimit a signature in a message.) Otherwise, it should be an expression; it is evaluated and should insert whatever you want to insert.Vmail-signature-file File containing the text inserted at end of mail buffer.Vmail-default-directory Value of `default-directory' for Mail mode buffers. This directory is used for auto-save files of Mail mode buffers. Note that Message mode does not use this variable; it auto-saves in `message-auto-save-directory'.Vmail-default-headers A string containing header lines, to be inserted in outgoing messages. It can contain newlines, and should end in one. It is inserted before you edit the message, so you can edit or delete the lines.Fsendmail-query-once Query for `send-mail-function' and send mail with it. This also saves the value of `send-mail-function' via Customize. (fn)Fsendmail-user-agent-compose (fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-FUNCTION YANK-ACTION SEND-ACTIONS RETURN-ACTION &rest IGNORED)Fmail-mode Major mode for editing mail to be sent. Like Text Mode but with these additional commands: \[mail-send] mail-send (send the message) \[mail-send-and-exit] mail-send-and-exit (send the message and exit) Here are commands that move to a header field (and create it if there isn't): \[mail-to] move to To: \[mail-subject] move to Subj: \[mail-bcc] move to BCC: \[mail-cc] move to CC: \[mail-fcc] move to FCC: \[mail-reply-to] move to Reply-To: \[mail-mail-reply-to] move to Mail-Reply-To: \[mail-mail-followup-to] move to Mail-Followup-To: \[mail-text] move to message text. \[mail-signature] mail-signature (insert `mail-signature-file' file). \[mail-yank-original] mail-yank-original (insert current message, in Rmail). \[mail-fill-yanked-message] mail-fill-yanked-message (fill what was yanked). \[mail-insert-file] insert a text file into the message. \[mail-add-attachment] attach to the message a file as binary attachment. Turning on Mail mode runs the normal hooks `text-mode-hook' and `mail-mode-hook' (in that order). (fn)Vmail-mailing-lists List of mailing list addresses the user is subscribed to. The variable is used to trigger insertion of the "Mail-Followup-To" header when sending a message to a mailing list.Vsendmail-coding-system Coding system for encoding the outgoing mail. This has higher priority than the default `buffer-file-coding-system' and `default-sendmail-coding-system', but lower priority than the local value of `buffer-file-coding-system'. See also the function `select-message-coding-system'.Vdefault-sendmail-coding-system Default coding system for encoding the outgoing mail. This variable is used only when `sendmail-coding-system' is nil. This variable is set/changed by the command `set-language-environment'. User should not set this variable manually, instead use `sendmail-coding-system' to get a constant encoding of outgoing mails regardless of the current language environment. See also the function `select-message-coding-system'.Fmail Edit a message to be sent. Prefix arg means resume editing (don't erase). When this function returns, the buffer `*mail*' is selected. The value is t if the message was newly initialized; otherwise, nil. Optionally, the signature file `mail-signature-file' can be inserted at the end; see the variable `mail-signature'. \<mail-mode-map> While editing message, type \[mail-send-and-exit] to send the message and exit. Various special commands starting with C-c are available in sendmail mode to move to message header fields: \{mail-mode-map} If `mail-self-blind' is non-nil, a BCC to yourself is inserted when the message is initialized. If `mail-default-reply-to' is non-nil, it should be an address (a string); a Reply-to: field with that address is inserted. If `mail-archive-file-name' is non-nil, an FCC field with that file name is inserted. The normal hook `mail-setup-hook' is run after the message is initialized. It can add more default fields to the message. The first argument, NOERASE, determines what to do when there is an existing modified `*mail*' buffer. If NOERASE is nil, the existing mail buffer is used, and the user is prompted whether to keep the old contents or to erase them. If NOERASE has the value `new', a new mail buffer will be created instead of using the old one. Any other non-nil value means to always select the old buffer without erasing the contents. The second through fifth arguments, TO, SUBJECT, IN-REPLY-TO and CC, specify if non-nil the initial contents of those header fields. These arguments should not have final newlines. The sixth argument REPLYBUFFER is a buffer which contains an original message being replied to, or else an action of the form (FUNCTION . ARGS) which says how to insert the original. Or it can be nil, if not replying to anything. The seventh argument ACTIONS is a list of actions to take if/when the message is sent. Each action looks like (FUNCTION . ARGS); when the message is sent, we apply FUNCTION to ARGS. This is how Rmail arranges to mark messages `answered'. (fn &optional NOERASE TO SUBJECT IN-REPLY-TO CC REPLYBUFFER ACTIONS RETURN-ACTION)Fmail-other-window Like `mail' command, but display mail buffer in another window. (fn &optional NOERASE TO SUBJECT IN-REPLY-TO CC REPLYBUFFER SENDACTIONS)Fmail-other-frame Like `mail' command, but display mail buffer in another frame. (fn &optional NOERASE TO SUBJECT IN-REPLY-TO CC REPLYBUFFER SENDACTIONS)Vserver-name The name of the Emacs server, if this Emacs process creates one. The command `server-start' makes use of this. It should not be changed while a server is running. If this is a file name with no leading directories, Emacs will create a socket file by that name under `server-socket-dir' if `server-use-tcp' is nil, else under `server-auth-dir'. If this is an absolute file name, it specifies where the socket file will be created. To have emacsclient connect to the same socket, use the "-s" switch for local non-TCP sockets, and the "-f" switch otherwise.Fserver-start Allow this Emacs process to be a server for client processes. This starts a server communications subprocess through which client "editors" can send your editing commands to this Emacs job. To use the server, set up the program `emacsclient' in the Emacs distribution as your standard "editor". Optional argument LEAVE-DEAD (interactively, a prefix arg) means just kill any existing server communications subprocess. If a server is already running, restart it. If clients are running, ask the user for confirmation first, unless optional argument INHIBIT-PROMPT is non-nil. To force-start a server, do \[server-force-delete] and then \[server-start]. To check from a Lisp program whether a server is running, use the `server-process' variable. (fn &optional LEAVE-DEAD INHIBIT-PROMPT)Fserver-force-delete Unconditionally delete connection file for server NAME. If server is running, it is first stopped. NAME defaults to `server-name'. With argument, ask for NAME. (fn &optional NAME)Vserver-mode Non-nil if Server mode is enabled. See the `server-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `server-mode'.Fserver-mode Toggle Server mode. With a prefix argument ARG, enable Server mode if ARG is positive, and disable it otherwise. If called from Lisp, enable Server mode if ARG is omitted or nil. Server mode runs a process that accepts commands from the `emacsclient' program. See Info node `Emacs server' and `server-start' for details. (fn &optional ARG)Fserver-save-buffers-kill-terminal Offer to save each buffer, then kill the current client. With ARG non-nil, silently save all file-visiting buffers, then kill. If emacsclient was started with a list of filenames to edit, then only these files will be asked to be saved. (fn ARG)Fses-mode Major mode for Simple Emacs Spreadsheet. When you invoke SES in a new buffer, it is divided into cells that you can enter data into. You can navigate the cells with the arrow keys and add more cells with the tab key. The contents of these cells can be numbers, text, or Lisp expressions. (To enter text, enclose it in double quotes.) In an expression, you can use cell coordinates to refer to the contents of another cell. For example, you can sum a range of cells with `(+ A1 A2 A3)'. There are specialized functions like `ses+' (addition for ranges with empty cells), `ses-average' (for performing calculations on cells), and `ses-range' and `ses-select' (for extracting ranges of cells). Each cell also has a print function that controls how it is displayed. Each SES buffer is divided into a print area and a data area. Normally, you can simply use SES to look at and manipulate the print area, and let SES manage the data area outside the visible region. See "ses-example.ses" (in `data-directory') for an example spreadsheet, and the Info node `(ses)Top.' In the following, note the separate keymaps for cell editing mode and print mode specifications. Key definitions: \{ses-mode-map} These key definitions are active only in the print area (the visible part): \{ses-mode-print-map} These are active only in the minibuffer, when entering or editing a formula: \{ses-mode-edit-map} (fn)Fsgml-mode Major mode for editing SGML documents. Makes > match <. Keys <, &, SPC within <>, ", / and \=' can be electric depending on `sgml-quick-keys'. An argument of N to a tag-inserting command means to wrap it around the next N words. In Transient Mark mode, when the mark is active, N defaults to -1, which means to wrap it around the current region. If you like upcased tags, put (setq sgml-transformation-function \='upcase) in your init file. Use \[sgml-validate] to validate your document with an SGML parser. Do \[describe-variable] sgml- SPC to see available variables. Do \[describe-key] on the following bindings to discover what they do. \{sgml-mode-map} (fn)Fhtml-mode Major mode based on SGML mode for editing HTML documents. This allows inserting skeleton constructs used in hypertext documents with completion. See below for an introduction to HTML. Use \[browse-url-of-buffer] to see how this comes out. See also `sgml-mode' on which this is based. Do \[describe-variable] html- SPC and \[describe-variable] sgml- SPC to see available variables. To write fairly well formatted pages you only need to know few things. Most browsers have a function to read the source code of the page being seen, so you can imitate various tricks. Here's a very short HTML primer which you can also view with a browser to see what happens: <title>A Title Describing Contents</title> should be on every page. Pages can have <h1>Very Major Headlines</h1> through <h6>Very Minor Headlines</h6> <hr> Parts can be separated with horizontal rules. <p>Paragraphs only need an opening tag. Line breaks and multiple spaces are ignored unless the text is <pre>preformatted.</pre> Text can be marked as <b>bold</b>, <i>italic</i> or <u>underlined</u> using the normal M-o or Edit/Text Properties/Face commands. Pages can have <a name="SOMENAME">named points</a> and can link other points to them with <a href="#SOMENAME">see also somename</a>. In the same way <a href="URL">see also URL</a> where URL is a filename relative to current directory, or absolute as in `http://www.cs.indiana.edu/elisp/w3/docs.html'. Images in many formats can be inlined with <img src="URL">. If you mainly create your own documents, `sgml-specials' might be interesting. But note that some HTML 2 browsers can't handle `''. To work around that, do: (eval-after-load "sgml-mode" \='(aset sgml-char-names ?\=' nil)) \{html-mode-map} (fn)Fsh-mode Major mode for editing shell scripts. This mode works for many shells, since they all have roughly the same syntax, as far as commands, arguments, variables, pipes, comments etc. are concerned. Unless the file's magic number indicates the shell, your usual shell is assumed. Since filenames rarely give a clue, they are not further analyzed. This mode adapts to the variations between shells (see `sh-set-shell') by means of an inheritance based feature lookup (see `sh-feature'). This mechanism applies to all variables (including skeletons) that pertain to shell-specific features. Shell script files can use the `sh-shell' local variable to indicate the shell variant to be used for the file. The default style of this mode is that of Rosenblatt's Korn shell book. The syntax of the statements varies with the shell being used. The following commands are available, based on the current shell's syntax: \<sh-mode-map> \[sh-case] case statement \[sh-for] for loop \[sh-function] function definition \[sh-if] if statement \[sh-indexed-loop] indexed loop from 1 to n \[sh-while-getopts] while getopts loop \[sh-repeat] repeat loop \[sh-select] select loop \[sh-until] until loop \[sh-while] while loop For sh and rc shells indentation commands are: \[sh-show-indent] Show the variable controlling this line's indentation. \[sh-set-indent] Set then variable controlling this line's indentation. \[sh-learn-line-indent] Change the indentation variable so this line would indent to the way it currently is. \[sh-learn-buffer-indent] Set the indentation variables so the buffer indents as it currently is indented. \[backward-delete-char-untabify] Delete backward one position, even if it was a tab. \[sh-end-of-command] Go to end of successive commands. \[sh-beginning-of-command] Go to beginning of successive commands. \[sh-set-shell] Set this buffer's shell, and maybe its magic number. \[sh-execute-region] Have optional header and region be executed in a subshell. `sh-electric-here-document-mode' controls whether insertion of two unquoted < insert a here document. You can control this behavior by modifying `sh-mode-hook'. If you generally program a shell different from your login shell you can set `sh-shell-file' accordingly. If your shell's file name doesn't correctly indicate what shell it is use `sh-alias-alist' to translate. If your shell gives error messages with line numbers, you can use \[executable-interpret] with your script for an edit-interpret-debug cycle. (fn)Flist-load-path-shadows Display a list of Emacs Lisp files that shadow other files. If STRINGP is non-nil, returns any shadows as a string. Otherwise, if interactive shows any shadows in a `*Shadows*' buffer; else prints messages listing any shadows. This function lists potential load path problems. Directories in the `load-path' variable are searched, in order, for Emacs Lisp files. When a previously encountered file name is found again, a message is displayed indicating that the later file is "hidden" by the earlier. For example, suppose `load-path' is set to ("/usr/share/emacs/site-lisp" "/usr/share/emacs/24.3/lisp") and that each of these directories contains a file called XXX.el. Then XXX.el in the site-lisp directory is referred to by all of: (require \='XXX), (autoload .... "XXX"), (load-library "XXX") etc. The first XXX.el file prevents Emacs from seeing the second (unless the second is loaded explicitly via `load-file'). When not intended, such shadowings can be the source of subtle problems. For example, the above situation may have arisen because the XXX package was not distributed with versions of Emacs prior to 24.3. A system administrator downloaded XXX from elsewhere and installed it. Later, XXX was updated and included in the Emacs distribution. Unless the system administrator checks for this, the new version of XXX will be hidden behind the old (which may no longer work with the new Emacs version). This function performs these checks and flags all possible shadowings. Because a .el file may exist without a corresponding .elc (or vice-versa), these suffixes are essentially ignored. A file XXX.elc in an early directory (that does not contain XXX.el) is considered to shadow a later file XXX.el, and vice-versa. Shadowings are located by calling the (non-interactive) companion function, `load-path-shadows-find'. (fn &optional STRINGP)Fshadow-define-cluster Edit (or create) the definition of a cluster NAME. This is a group of hosts that share directories, so that copying to or from one of them is sufficient to update the file on all of them. Clusters are defined by a name, the network address of a primary host (the one we copy files to), and a regular expression that matches the hostnames of all the sites in the cluster. (fn NAME)Fshadow-define-literal-group Declare a single file to be shared between sites. It may have different filenames on each site. When this file is edited, the new version will be copied to each of the other locations. Sites can be specific hostnames, or names of clusters (see `shadow-define-cluster'). (fn)Fshadow-define-regexp-group Make each of a group of files be shared between hosts. Prompts for regular expression; files matching this are shared between a list of sites, which are also prompted for. The filenames must be identical on all hosts (if they aren't, use `shadow-define-literal-group' instead of this function). Each site can be either a hostname or the name of a cluster (see `shadow-define-cluster'). (fn)Fshadow-initialize Set up file shadowing. (fn)Vshell-dumb-shell-regexp Regexp to match shells that don't save their command history, and don't handle the backslash as a quote character. For shells that match this regexp, Emacs will write out the command history when the shell finishes, and won't remove backslashes when it unquotes shell arguments.Fshell Run an inferior shell, with I/O through BUFFER (which defaults to `*shell*'). Interactively, a prefix arg means to prompt for BUFFER. If `default-directory' is a remote file name, it is also prompted to change if called with a prefix arg. If BUFFER exists but shell process is not running, make new shell. If BUFFER exists and shell process is running, just switch to BUFFER. Program used comes from variable `explicit-shell-file-name', or (if that is nil) from the ESHELL environment variable, or (if that is nil) from `shell-file-name'. If a file `~/.emacs_SHELLNAME' exists, or `~/.emacs.d/init_SHELLNAME.sh', it is given as initial input (but this may be lost, due to a timing error, if the shell discards input when it starts up). The buffer is put in Shell mode, giving commands for sending input and controlling the subjobs of the shell. See `shell-mode'. See also the variable `shell-prompt-pattern'. To specify a coding system for converting non-ASCII characters in the input and output to the shell, use \[universal-coding-system-argument] before \[shell]. You can also specify this with \[set-buffer-process-coding-system] in the shell buffer, after you start the shell. The default comes from `process-coding-system-alist' and `default-process-coding-system'. The shell file name (sans directories) is used to make a symbol name such as `explicit-csh-args'. If that symbol is a variable, its value is used as a list of arguments when invoking the shell. Otherwise, one argument `-i' is passed to the shell. (Type \[describe-mode] in the shell buffer for a list of commands.) (fn &optional BUFFER)Fshr-render-region Display the HTML rendering of the region between BEGIN and END. (fn BEGIN END &optional BUFFER)Fshr-insert-document Render the parsed document DOM into the current buffer. DOM should be a parse tree as generated by `libxml-parse-html-region' or similar. (fn DOM)Fsieve-manage (fn SERVER &optional PORT)Fsieve-upload (fn &optional NAME)Fsieve-upload-and-bury (fn &optional NAME)Fsieve-upload-and-kill (fn &optional NAME)Fsieve-mode Major mode for editing Sieve code. This is much like C mode except for the syntax of comments. Its keymap inherits from C mode's and it has the same variables for customizing indentation. It has its own abbrev table and its own syntax table. Turning on Sieve mode runs `sieve-mode-hook'. (fn)Fsimula-mode Major mode for editing SIMULA code. \{simula-mode-map} Variables controlling indentation style: `simula-tab-always-indent' Non-nil means TAB in SIMULA mode should always reindent the current line, regardless of where in the line point is when the TAB command is used. `simula-indent-level' Indentation of SIMULA statements with respect to containing block. `simula-substatement-offset' Extra indentation after DO, THEN, ELSE, WHEN and OTHERWISE. `simula-continued-statement-offset' 3 Extra indentation for lines not starting a statement or substatement, e.g. a nested FOR-loop. If value is a list, each line in a multiple- line continued statement will have the car of the list extra indentation with respect to the previous line of the statement. `simula-label-offset' -4711 Offset of SIMULA label lines relative to usual indentation. `simula-if-indent' (0 . 0) Extra indentation of THEN and ELSE with respect to the starting IF. Value is a cons cell, the car is extra THEN indentation and the cdr extra ELSE indentation. IF after ELSE is indented as the starting IF. `simula-inspect-indent' (0 . 0) Extra indentation of WHEN and OTHERWISE with respect to the corresponding INSPECT. Value is a cons cell, the car is extra WHEN indentation and the cdr extra OTHERWISE indentation. `simula-electric-indent' nil If this variable is non-nil, `simula-indent-line' will check the previous line to see if it has to be reindented. `simula-abbrev-keyword' `upcase' Determine how SIMULA keywords will be expanded. Value is one of the symbols `upcase', `downcase', `capitalize', (as in) `abbrev-table', or nil if they should not be changed. `simula-abbrev-stdproc' `abbrev-table' Determine how standard SIMULA procedure and class names will be expanded. Value is one of the symbols `upcase', `downcase', `capitalize', (as in) `abbrev-table', or nil if they should not be changed. Turning on SIMULA mode calls the value of the variable simula-mode-hook with no arguments, if that value is non-nil. (fn)Vskeleton-filter-function Function for transforming a skeleton proxy's aliases' variable value.Fdefine-skeleton Define a user-configurable COMMAND that enters a statement skeleton. DOCUMENTATION is that of the command. SKELETON is as defined under `skeleton-insert'. (fn COMMAND DOCUMENTATION &rest SKELETON)Fskeleton-proxy-new Insert SKELETON. Prefix ARG allows wrapping around words or regions (see `skeleton-insert'). If no ARG was given, but the region is visible, ARG defaults to -1 depending on `skeleton-autowrap'. An ARG of M-0 will prevent this just for once. This command can also be an abbrev expansion (3rd and 4th columns in \[edit-abbrevs] buffer: "" command-name). Optional second argument STR may also be a string which will be the value of `str' whereas the skeleton's interactor is then ignored. (fn SKELETON &optional STR ARG)Fskeleton-insert Insert the complex statement skeleton SKELETON describes very concisely. With optional second argument REGIONS, wrap first interesting point (`_') in skeleton around next REGIONS words, if REGIONS is positive. If REGIONS is negative, wrap REGIONS preceding interregions into first REGIONS interesting positions (successive `_'s) in skeleton. An interregion is the stretch of text between two contiguous marked points. If you marked A B C [] (where [] is the cursor) in alphabetical order, the 3 interregions are simply the last 3 regions. But if you marked B A [] C, the interregions are B-A, A-[], []-C. The optional third argument STR, if specified, is the value for the variable `str' within the skeleton. When this is non-nil, the interactor gets ignored, and this should be a valid skeleton element. When done with skeleton, but before going back to `_'-point, add a newline (unless `skeleton-end-newline' is nil) and run the hook `skeleton-end-hook'. SKELETON is made up as (INTERACTOR ELEMENT ...). INTERACTOR may be nil if not needed, a prompt-string or an expression for complex read functions. If ELEMENT is a string or a character it gets inserted (see also `skeleton-transformation-function'). Other possibilities are: \n go to next line and indent according to mode, unless this is the first/last element of a skeleton and point is at bol/eol _ interesting point, interregion here - interesting point, no interregion interaction, overrides interesting point set by _ > indent line (or interregion if > _) according to major mode @ add position to `skeleton-positions' & do next ELEMENT if previous moved point | do next ELEMENT if previous didn't move point -NUM delete NUM preceding characters (see `skeleton-untabify') resume: skipped, continue here if quit is signaled nil skipped After termination, point will be positioned at the last occurrence of - or at the first occurrence of _ or at the end of the inserted text. Note that \n as the last element of the skeleton only inserts a newline if not at eol. If you want to unconditionally insert a newline at the end of the skeleton, use "\n" instead. Likewise with \n as the first element when at bol. Further elements can be defined via `skeleton-further-elements'. ELEMENT may itself be a SKELETON with an INTERACTOR. The user is prompted repeatedly for different inputs. The SKELETON is processed as often as the user enters a non-empty string. \[keyboard-quit] terminates skeleton insertion, but continues after `resume:' and positions at `_' if any. If INTERACTOR in such a subskeleton is a prompt-string which contains a ".. %s .." it is formatted with `skeleton-subprompt'. Such an INTERACTOR may also be a list of strings with the subskeleton being repeated once for each string. Quoted Lisp expressions are evaluated for their side-effects. Other Lisp expressions are evaluated and the value treated as above. Note that expressions may not return t since this implies an endless loop. Modes can define other symbols by locally setting them to any valid skeleton element. The following local variables are available: str first time: read a string according to INTERACTOR then: insert previously read string once more help help-form during interaction with the user or nil input initial input (string or cons with index) while reading str v1, v2 local variables for memorizing anything you want (fn SKELETON &optional REGIONS STR)Fskeleton-pair-insert-maybe Insert the character you type ARG times. With no ARG, if `skeleton-pair' is non-nil, pairing can occur. If the region is visible the pair is wrapped around it depending on `skeleton-autowrap'. Else, if `skeleton-pair-on-word' is non-nil or we are not before or inside a word, and if `skeleton-pair-filter-function' returns nil, pairing is performed. Pairing is also prohibited if we are right after a quoting character such as backslash. If a match is found in `skeleton-pair-alist', that is inserted, else the defaults are used. These are (), [], {}, <> and (grave accent, apostrophe) for the paired ones, and the same character twice for the others. (fn ARG)Fsmerge-refine-regions Show fine differences in the two regions BEG1..END1 and BEG2..END2. PROPS-C is an alist of properties to put (via overlays) on the changes. PROPS-R is an alist of properties to put on removed characters. PROPS-A is an alist of properties to put on added characters. If PROPS-R and PROPS-A are nil, put PROPS-C on all changes. If PROPS-C is nil, but PROPS-R and PROPS-A are non-nil, put PROPS-A on added characters, PROPS-R on removed characters. If PROPS-C, PROPS-R and PROPS-A are non-nil, put PROPS-C on changed characters, PROPS-A on added characters, and PROPS-R on removed characters. If non-nil, PREPROC is called with no argument in a buffer that contains a copy of a region, just before preparing it to for `diff'. It can be used to replace chars to try and eliminate some spurious differences. (fn BEG1 END1 BEG2 END2 PROPS-C &optional PREPROC PROPS-R PROPS-A)Fsmerge-ediff Invoke ediff to resolve the conflicts. NAME-UPPER, NAME-LOWER, and NAME-BASE, if non-nil, are used for the buffer names. (fn &optional NAME-UPPER NAME-LOWER NAME-BASE)Fsmerge-mode Minor mode to simplify editing output from the diff3 program. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. \{smerge-mode-map} (fn &optional ARG)Fsmerge-start-session Turn on `smerge-mode' and move point to first conflict marker. If no conflict maker is found, turn off `smerge-mode'. (fn)Fsmiley-region Replace in the region `smiley-regexp-alist' matches with corresponding images. A list of images is returned. (fn START END)Fsmiley-buffer Run `smiley-region' at the BUFFER, specified in the argument or interactively. If there's no argument, do it at the current buffer. (fn &optional BUFFER)Fsmtpmail-send-it (fn)Fsmtpmail-send-queued-mail Send mail that was queued as a result of setting `smtpmail-queue-mail'. (fn)Fsnake Play the Snake game. Move the snake around without colliding with its tail or with the border. Eating dots causes the snake to get longer. Snake mode keybindings: \<snake-mode-map> \[snake-start-game] Starts a new game of Snake \[snake-end-game] Terminates the current game \[snake-pause-game] Pauses (or resumes) the current game \[snake-move-left] Makes the snake move left \[snake-move-right] Makes the snake move right \[snake-move-up] Makes the snake move up \[snake-move-down] Makes the snake move down (fn)Fsnmp-mode Major mode for editing SNMP MIBs. Expression and list commands understand all C brackets. Tab indents for C code. Comments start with -- and end with newline or another --. Delete converts tabs to spaces as it moves back. \{snmp-mode-map} Turning on snmp-mode runs the hooks in `snmp-common-mode-hook', then `snmp-mode-hook'. (fn)Fsnmpv2-mode Major mode for editing SNMPv2 MIBs. Expression and list commands understand all C brackets. Tab indents for C code. Comments start with -- and end with newline or another --. Delete converts tabs to spaces as it moves back. \{snmp-mode-map} Turning on snmp-mode runs the hooks in `snmp-common-mode-hook', then `snmpv2-mode-hook'. (fn)Fsunrise-sunset Local time of sunrise and sunset for today. Accurate to a few seconds. If called with an optional prefix argument ARG, prompt for date. If called with an optional double prefix argument, prompt for longitude, latitude, time zone, and date, and always use standard time. This function is suitable for execution in an init file. (fn &optional ARG)Fsolitaire Play Solitaire. To play Solitaire, type \[solitaire]. \<solitaire-mode-map> Move around the board using the cursor keys. Move stones using \[solitaire-move] followed by a direction key. Undo moves using \[solitaire-undo]. Check for possible moves using \[solitaire-do-check]. (The variable `solitaire-auto-eval' controls whether to automatically check after each move or undo.) What is Solitaire? I don't know who invented this game, but it seems to be rather old and its origin seems to be northern Africa. Here's how to play: Initially, the board will look similar to this: Le Solitaire ============ o o o o o o o o o o o o o o o o . o o o o o o o o o o o o o o o o Let's call the o's stones and the .'s holes. One stone fits into one hole. As you can see, all holes but one are occupied by stones. The aim of the game is to get rid of all but one stone, leaving that last one in the middle of the board if you're cool. A stone can be moved if there is another stone next to it, and a hole after that one. Thus there must be three fields in a row, either horizontally or vertically, up, down, left or right, which look like this: o o . Then the first stone is moved to the hole, jumping over the second, which therefore is taken away. The above thus `evaluates' to: . . o That's all. Here's the board after two moves: o o o . o o o o . o o o o o . o o o o o o o o o o o o o o o o o o Pick your favorite shortcuts: \{solitaire-mode-map} (fn ARG)Fsort-subr General text sorting routine to divide buffer into records and sort them. We divide the accessible portion of the buffer into disjoint pieces called sort records. A portion of each sort record (perhaps all of it) is designated as the sort key. The records are rearranged in the buffer in order by their sort keys. The records may or may not be contiguous. Usually the records are rearranged in order of ascending sort key. If REVERSE is non-nil, they are rearranged in order of descending sort key. The variable `sort-fold-case' determines whether alphabetic case affects the sort order. The next four arguments are functions to be called to move point across a sort record. They will be called many times from within sort-subr. NEXTRECFUN is called with point at the end of the previous record. It moves point to the start of the next record. It should move point to the end of the buffer if there are no more records. The first record is assumed to start at the position of point when sort-subr is called. ENDRECFUN is called with point within the record. It should move point to the end of the record. STARTKEYFUN moves from the start of the record to the start of the key. It may return either a non-nil value to be used as the key, or else the key is the substring between the values of point after STARTKEYFUN and ENDKEYFUN are called. If STARTKEYFUN is nil, the key starts at the beginning of the record. ENDKEYFUN moves from the start of the sort key to the end of the sort key. ENDKEYFUN may be nil if STARTKEYFUN returns a value or if it would be the same as ENDRECFUN. PREDICATE, if non-nil, is the predicate function for comparing keys; it is called with two arguments, the keys to compare, and should return non-nil if the first key should sort before the second key. If PREDICATE is nil, comparison is done with `<' if the keys are numbers, with `compare-buffer-substrings' if the keys are cons cells (the car and cdr of each cons cell are taken as start and end positions), and with `string<' otherwise. (fn REVERSE NEXTRECFUN ENDRECFUN &optional STARTKEYFUN ENDKEYFUN PREDICATE)Fsort-lines Sort lines in region alphabetically; argument means descending order. Called from a program, there are three arguments: REVERSE (non-nil means reverse order), BEG and END (region to sort). The variable `sort-fold-case' determines whether alphabetic case affects the sort order. (fn REVERSE BEG END)Fsort-paragraphs Sort paragraphs in region alphabetically; argument means descending order. Called from a program, there are three arguments: REVERSE (non-nil means reverse order), BEG and END (region to sort). The variable `sort-fold-case' determines whether alphabetic case affects the sort order. (fn REVERSE BEG END)Fsort-pages Sort pages in region alphabetically; argument means descending order. Called from a program, there are three arguments: REVERSE (non-nil means reverse order), BEG and END (region to sort). The variable `sort-fold-case' determines whether alphabetic case affects the sort order. (fn REVERSE BEG END)Fsort-numeric-fields Sort lines in region numerically by the ARGth field of each line. Fields are separated by whitespace and numbered from 1 up. Specified field must contain a number in each line of the region, which may begin with "0x" or "0" for hexadecimal and octal values. Otherwise, the number is interpreted according to sort-numeric-base. With a negative arg, sorts by the ARGth field counted from the right. Called from a program, there are three arguments: FIELD, BEG and END. BEG and END specify region to sort. (fn FIELD BEG END)Fsort-fields Sort lines in region lexicographically by the ARGth field of each line. Fields are separated by whitespace and numbered from 1 up. With a negative arg, sorts by the ARGth field counted from the right. Called from a program, there are three arguments: FIELD, BEG and END. BEG and END specify region to sort. The variable `sort-fold-case' determines whether alphabetic case affects the sort order. (fn FIELD BEG END)Fsort-regexp-fields Sort the text in the region lexicographically. If called interactively, prompt for two regular expressions, RECORD-REGEXP and KEY-REGEXP. RECORD-REGEXP specifies the textual units to be sorted. For example, to sort lines, RECORD-REGEXP would be "^.*$". KEY-REGEXP specifies the part of each record (i.e. each match for RECORD-REGEXP) to be used for sorting. If it is "\\digit", use the digit'th "\\(...\\)" match field specified by RECORD-REGEXP. If it is "\\&", use the whole record. Otherwise, KEY-REGEXP should be a regular expression with which to search within the record. If a match for KEY-REGEXP is not found within a record, that record is ignored. With a negative prefix arg, sort in reverse order. The variable `sort-fold-case' determines whether alphabetic case affects the sort order. For example: to sort lines in the region by the first word on each line starting with the letter "f", RECORD-REGEXP would be "^.*$" and KEY would be "\\=\<f\\w*\\>" (fn REVERSE RECORD-REGEXP KEY-REGEXP BEG END)Fsort-columns Sort lines in region alphabetically by a certain range of columns. For the purpose of this command, the region BEG...END includes the entire line that point is in and the entire line the mark is in. The column positions of point and mark bound the range of columns to sort on. A prefix argument means sort into REVERSE order. The variable `sort-fold-case' determines whether alphabetic case affects the sort order. Note that `sort-columns' rejects text that contains tabs, because tabs could be split across the specified columns and it doesn't know how to handle that. Also, when possible, it uses the `sort' utility program, which doesn't understand tabs. Use \[untabify] to convert tabs to spaces before sorting. (fn REVERSE &optional BEG END)Freverse-region Reverse the order of lines in a region. From a program takes two point or marker arguments, BEG and END. (fn BEG END)Fdelete-duplicate-lines Delete all but one copy of any identical lines in the region. Non-interactively, arguments BEG and END delimit the region. Normally it searches forwards, keeping the first instance of each identical line. If REVERSE is non-nil (interactively, with a C-u prefix), it searches backwards and keeps the last instance of each repeated line. Identical lines need not be adjacent, unless the argument ADJACENT is non-nil (interactively, with a C-u C-u prefix). This is a more efficient mode of operation, and may be useful on large regions that have already been sorted. If the argument KEEP-BLANKS is non-nil (interactively, with a C-u C-u C-u prefix), it retains repeated blank lines. Returns the number of deleted lines. Interactively, or if INTERACTIVE is non-nil, it also prints a message describing the number of deletions. (fn BEG END &optional REVERSE ADJACENT KEEP-BLANKS INTERACTIVE)Fspam-initialize Install the spam.el hooks and do other initialization. When SYMBOLS is given, set those variables to t. This is so you can call `spam-initialize' before you set spam-use-* variables on explicitly, and matters only if you need the extra headers installed through `spam-necessary-extra-headers'. (fn &rest SYMBOLS)Fspam-report-process-queue Report all queued requests from `spam-report-requests-file'. If FILE is given, use it instead of `spam-report-requests-file'. If KEEP is t, leave old requests in the file. If KEEP is the symbol `ask', query before flushing the queue file. (fn &optional FILE KEEP)Fspam-report-url-ping-mm-url Ping a host through HTTP, addressing a specific GET resource. Use the external program specified in `mm-url-program' to connect to server. (fn HOST REPORT)Fspam-report-url-to-file Collect spam report requests in `spam-report-requests-file'. Customize `spam-report-url-ping-function' to use this function. (fn HOST REPORT)Fspam-report-agentize Add spam-report support to the Agent. Spam reports will be queued with \[spam-report-url-to-file] when the Agent is unplugged, and will be submitted in a batch when the Agent is plugged. (fn)Fspam-report-deagentize Remove spam-report support from the Agent. Spam reports will be queued with the method used when \[spam-report-agentize] was run. (fn)Fspeedbar-frame-mode Enable or disable speedbar. Positive ARG means turn on, negative turn off. A nil ARG means toggle. Once the speedbar frame is activated, a buffer in `speedbar-mode' will be displayed. Currently, only one speedbar is supported at a time. `speedbar-before-popup-hook' is called before popping up the speedbar frame. `speedbar-before-delete-hook' is called before the frame is deleted. (fn &optional ARG)Fspeedbar-get-focus Change frame focus to or from the speedbar frame. If the selected frame is not speedbar, then speedbar frame is selected. If the speedbar frame is active, then select the attached frame. (fn)Fspook Adds that special touch of class to your outgoing mail. (fn)Fsnarf-spooks Return a vector containing the lines from `spook-phrases-file'. (fn)Fsql-add-product-keywords Add highlighting KEYWORDS for SQL PRODUCT. PRODUCT should be a symbol, the name of a SQL product, such as `oracle'. KEYWORDS should be a list; see the variable `font-lock-keywords'. By default they are added at the beginning of the current highlighting list. If optional argument APPEND is `set', they are used to replace the current highlighting list. If APPEND is any other non-nil value, they are added at the end of the current highlighting list. For example: (sql-add-product-keywords \='ms \='(("\\b\\w+_t\\b" . font-lock-type-face))) adds a fontification pattern to fontify identifiers ending in `_t' as data types. (fn PRODUCT KEYWORDS &optional APPEND)Fsql-mode Major mode to edit SQL. You can send SQL statements to the SQLi buffer using \[sql-send-region]. Such a buffer must exist before you can do this. See `sql-help' on how to create SQLi buffers. \{sql-mode-map} Customization: Entry to this mode runs the `sql-mode-hook'. When you put a buffer in SQL mode, the buffer stores the last SQLi buffer created as its destination in the variable `sql-buffer'. This will be the buffer \[sql-send-region] sends the region to. If this SQLi buffer is killed, \[sql-send-region] is no longer able to determine where the strings should be sent to. You can set the value of `sql-buffer' using \[sql-set-sqli-buffer]. For information on how to create multiple SQLi buffers, see `sql-interactive-mode'. Note that SQL doesn't have an escape character unless you specify one. If you specify backslash as escape character in SQL, you must tell Emacs. Here's how to do that in your init file: (add-hook \='sql-mode-hook (lambda () (modify-syntax-entry ?\\ "." sql-mode-syntax-table))) (fn)Fsql-connect Connect to an interactive session using CONNECTION settings. See `sql-connection-alist' to see how to define connections and their settings. The user will not be prompted for any login parameters if a value is specified in the connection settings. (fn CONNECTION &optional BUF-NAME)Fsql-product-interactive Run PRODUCT interpreter as an inferior process. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. To specify the SQL product, prefix the call with \[universal-argument]. To set the buffer name as well, prefix the call to \[sql-product-interactive] with \[universal-argument] \[universal-argument]. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional PRODUCT NEW-NAME)Fsql-oracle Run sqlplus by Oracle as an inferior process. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-oracle-program'. Login uses the variables `sql-user', `sql-password', and `sql-database' as defaults, if set. Additional command line parameters can be stored in the list `sql-oracle-options'. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. To set the buffer name directly, use \[universal-argument] before \[sql-oracle]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. To specify a coding system for converting non-ASCII characters in the input and output to the process, use \[universal-coding-system-argument] before \[sql-oracle]. You can also specify this with \[set-buffer-process-coding-system] in the SQL buffer, after you start the process. The default comes from `process-coding-system-alist' and `default-process-coding-system'. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-sybase Run isql by Sybase as an inferior process. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-sybase-program'. Login uses the variables `sql-server', `sql-user', `sql-password', and `sql-database' as defaults, if set. Additional command line parameters can be stored in the list `sql-sybase-options'. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. To set the buffer name directly, use \[universal-argument] before \[sql-sybase]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. To specify a coding system for converting non-ASCII characters in the input and output to the process, use \[universal-coding-system-argument] before \[sql-sybase]. You can also specify this with \[set-buffer-process-coding-system] in the SQL buffer, after you start the process. The default comes from `process-coding-system-alist' and `default-process-coding-system'. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-informix Run dbaccess by Informix as an inferior process. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-informix-program'. Login uses the variable `sql-database' as default, if set. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. To set the buffer name directly, use \[universal-argument] before \[sql-informix]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. To specify a coding system for converting non-ASCII characters in the input and output to the process, use \[universal-coding-system-argument] before \[sql-informix]. You can also specify this with \[set-buffer-process-coding-system] in the SQL buffer, after you start the process. The default comes from `process-coding-system-alist' and `default-process-coding-system'. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-sqlite Run sqlite as an inferior process. SQLite is free software. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-sqlite-program'. Login uses the variables `sql-user', `sql-password', `sql-database', and `sql-server' as defaults, if set. Additional command line parameters can be stored in the list `sql-sqlite-options'. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. To set the buffer name directly, use \[universal-argument] before \[sql-sqlite]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. To specify a coding system for converting non-ASCII characters in the input and output to the process, use \[universal-coding-system-argument] before \[sql-sqlite]. You can also specify this with \[set-buffer-process-coding-system] in the SQL buffer, after you start the process. The default comes from `process-coding-system-alist' and `default-process-coding-system'. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-mysql Run mysql by TcX as an inferior process. Mysql versions 3.23 and up are free software. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-mysql-program'. Login uses the variables `sql-user', `sql-password', `sql-database', and `sql-server' as defaults, if set. Additional command line parameters can be stored in the list `sql-mysql-options'. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. To set the buffer name directly, use \[universal-argument] before \[sql-mysql]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. To specify a coding system for converting non-ASCII characters in the input and output to the process, use \[universal-coding-system-argument] before \[sql-mysql]. You can also specify this with \[set-buffer-process-coding-system] in the SQL buffer, after you start the process. The default comes from `process-coding-system-alist' and `default-process-coding-system'. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-solid Run solsql by Solid as an inferior process. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-solid-program'. Login uses the variables `sql-user', `sql-password', and `sql-server' as defaults, if set. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. To set the buffer name directly, use \[universal-argument] before \[sql-solid]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. To specify a coding system for converting non-ASCII characters in the input and output to the process, use \[universal-coding-system-argument] before \[sql-solid]. You can also specify this with \[set-buffer-process-coding-system] in the SQL buffer, after you start the process. The default comes from `process-coding-system-alist' and `default-process-coding-system'. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-ingres Run sql by Ingres as an inferior process. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-ingres-program'. Login uses the variable `sql-database' as default, if set. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. To set the buffer name directly, use \[universal-argument] before \[sql-ingres]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. To specify a coding system for converting non-ASCII characters in the input and output to the process, use \[universal-coding-system-argument] before \[sql-ingres]. You can also specify this with \[set-buffer-process-coding-system] in the SQL buffer, after you start the process. The default comes from `process-coding-system-alist' and `default-process-coding-system'. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-ms Run osql by Microsoft as an inferior process. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-ms-program'. Login uses the variables `sql-user', `sql-password', `sql-database', and `sql-server' as defaults, if set. Additional command line parameters can be stored in the list `sql-ms-options'. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. To set the buffer name directly, use \[universal-argument] before \[sql-ms]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. To specify a coding system for converting non-ASCII characters in the input and output to the process, use \[universal-coding-system-argument] before \[sql-ms]. You can also specify this with \[set-buffer-process-coding-system] in the SQL buffer, after you start the process. The default comes from `process-coding-system-alist' and `default-process-coding-system'. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-postgres Run psql by Postgres as an inferior process. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-postgres-program'. Login uses the variables `sql-database' and `sql-server' as default, if set. Additional command line parameters can be stored in the list `sql-postgres-options'. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. To set the buffer name directly, use \[universal-argument] before \[sql-postgres]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. To specify a coding system for converting non-ASCII characters in the input and output to the process, use \[universal-coding-system-argument] before \[sql-postgres]. You can also specify this with \[set-buffer-process-coding-system] in the SQL buffer, after you start the process. The default comes from `process-coding-system-alist' and `default-process-coding-system'. If your output lines end with ^M, your might try undecided-dos as a coding system. If this doesn't help, Try to set `comint-output-filter-functions' like this: (setq comint-output-filter-functions (append comint-output-filter-functions \='(comint-strip-ctrl-m))) (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-interbase Run isql by Interbase as an inferior process. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-interbase-program'. Login uses the variables `sql-user', `sql-password', and `sql-database' as defaults, if set. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. To set the buffer name directly, use \[universal-argument] before \[sql-interbase]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. To specify a coding system for converting non-ASCII characters in the input and output to the process, use \[universal-coding-system-argument] before \[sql-interbase]. You can also specify this with \[set-buffer-process-coding-system] in the SQL buffer, after you start the process. The default comes from `process-coding-system-alist' and `default-process-coding-system'. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-db2 Run db2 by IBM as an inferior process. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-db2-program'. There is not automatic login. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. If you use \[sql-accumulate-and-indent] to send multiline commands to db2, newlines will be escaped if necessary. If you don't want that, set `comint-input-sender' back to `comint-simple-send' by writing an after advice. See the elisp manual for more information. To set the buffer name directly, use \[universal-argument] before \[sql-db2]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. To specify a coding system for converting non-ASCII characters in the input and output to the process, use \[universal-coding-system-argument] before \[sql-db2]. You can also specify this with \[set-buffer-process-coding-system] in the SQL buffer, after you start the process. The default comes from `process-coding-system-alist' and `default-process-coding-system'. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-linter Run inl by RELEX as an inferior process. If buffer `*SQL*' exists but no process is running, make a new process. If buffer exists and a process is running, just switch to buffer `*SQL*'. Interpreter used comes from variable `sql-linter-program' - usually `inl'. Login uses the variables `sql-user', `sql-password', `sql-database' and `sql-server' as defaults, if set. Additional command line parameters can be stored in the list `sql-linter-options'. Run inl -h to get help on parameters. `sql-database' is used to set the LINTER_MBX environment variable for local connections, `sql-server' refers to the server name from the `nodetab' file for the network connection (dbc_tcp or friends must run for this to work). If `sql-password' is an empty string, inl will use an empty password. The buffer is put in SQL interactive mode, giving commands for sending input. See `sql-interactive-mode'. To set the buffer name directly, use \[universal-argument] before \[sql-linter]. Once session has started, \[sql-rename-buffer] can be called separately to rename the buffer. (Type \[describe-mode] in the SQL buffer for a list of commands.) (fn &optional BUFFER)Fsql-vertica Run vsql as an inferior process. (fn &optional BUFFER)Fsrecode-template-mode Major-mode for writing SRecode macros. (fn)Fstarttls-open-stream Open a TLS connection for a port to a host. Returns a subprocess object to represent the connection. Input and output work as for subprocesses; `delete-process' closes it. Args are NAME BUFFER HOST PORT. NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer (or `buffer-name') to associate with the process. Process output goes at end of that buffer, unless you specify a filter function to handle the output. BUFFER may be also nil, meaning that this process is not associated with any buffer Third arg is name of the host to connect to, or its IP address. Fourth arg PORT is an integer specifying a port to connect to. If `starttls-use-gnutls' is nil, this may also be a service name, but GnuTLS requires a port number. (fn NAME BUFFER HOST PORT)Fstrokes-global-set-stroke Interactively give STROKE the global binding as COMMAND. Works just like `global-set-key', except for strokes. COMMAND is a symbol naming an interactively-callable function. STROKE is a list of sampled positions on the stroke grid as described in the documentation for the `strokes-define-stroke' function. See also `strokes-global-set-stroke-string'. (fn STROKE COMMAND)Fstrokes-read-stroke Read a simple stroke (interactively) and return the stroke. Optional PROMPT in minibuffer displays before and during stroke reading. This function will display the stroke interactively as it is being entered in the strokes buffer if the variable `strokes-use-strokes-buffer' is non-nil. Optional EVENT is acceptable as the starting event of the stroke. (fn &optional PROMPT EVENT)Fstrokes-read-complex-stroke Read a complex stroke (interactively) and return the stroke. Optional PROMPT in minibuffer displays before and during stroke reading. Note that a complex stroke allows the user to pen-up and pen-down. This is implemented by allowing the user to paint with button 1 or button 2 and then complete the stroke with button 3. Optional EVENT is acceptable as the starting event of the stroke. (fn &optional PROMPT EVENT)Fstrokes-do-stroke Read a simple stroke from the user and then execute its command. This must be bound to a mouse event. (fn EVENT)Fstrokes-do-complex-stroke Read a complex stroke from the user and then execute its command. This must be bound to a mouse event. (fn EVENT)Fstrokes-describe-stroke Displays the command which STROKE maps to, reading STROKE interactively. (fn STROKE)Fstrokes-help Get instruction on using the Strokes package. (fn)Fstrokes-load-user-strokes Load user-defined strokes from file named by `strokes-file'. (fn)Fstrokes-list-strokes Pop up a buffer containing an alphabetical listing of strokes in STROKES-MAP. With CHRONOLOGICAL prefix arg (\[universal-argument]) list strokes chronologically by command name. If STROKES-MAP is not given, `strokes-global-map' will be used instead. (fn &optional CHRONOLOGICAL STROKES-MAP)Vstrokes-mode Non-nil if Strokes mode is enabled. See the `strokes-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `strokes-mode'.Fstrokes-mode Toggle Strokes mode, a global minor mode. With a prefix argument ARG, enable Strokes mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. \<strokes-mode-map> Strokes are pictographic mouse gestures which invoke commands. Strokes are invoked with \[strokes-do-stroke]. You can define new strokes with \[strokes-global-set-stroke]. See also \[strokes-do-complex-stroke] for `complex' strokes. To use strokes for pictographic editing, such as Chinese/Japanese, use \[strokes-compose-complex-stroke], which draws strokes and inserts them. Encode/decode your strokes with \[strokes-encode-buffer], \[strokes-decode-buffer]. \{strokes-mode-map} (fn &optional ARG)Fstrokes-decode-buffer Decode stroke strings in BUFFER and display their corresponding glyphs. Optional BUFFER defaults to the current buffer. Optional FORCE non-nil will ignore the buffer's read-only status. (fn &optional BUFFER FORCE)Fstrokes-compose-complex-stroke Read a complex stroke and insert its glyph into the current buffer. (fn)Fstudlify-region Studlify-case the region. (fn BEGIN END)Fstudlify-word Studlify-case the current word, or COUNT words if given an argument. (fn COUNT)Fstudlify-buffer Studlify-case the current buffer. (fn)Fsubword-mode Toggle subword movement and editing (Subword mode). With a prefix argument ARG, enable Subword mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Subword mode is a buffer-local minor mode. Enabling it changes the definition of a word so that word-based commands stop inside symbols with mixed uppercase and lowercase letters, e.g. "GtkWidget", "EmacsFrameClass", "NSGraphicsContext". Here we call these mixed case symbols `nomenclatures'. Each capitalized (or completely uppercase) part of a nomenclature is called a `subword'. Here are some examples: Nomenclature Subwords =========================================================== GtkWindow => "Gtk" and "Window" EmacsFrameClass => "Emacs", "Frame" and "Class" NSGraphicsContext => "NS", "Graphics" and "Context" This mode changes the definition of a word so that word commands treat nomenclature boundaries as word boundaries. (fn &optional ARG)Vglobal-subword-mode Non-nil if Global Subword mode is enabled. See the `global-subword-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-subword-mode'.Fglobal-subword-mode Toggle Subword mode in all buffers. With prefix ARG, enable Global Subword mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Subword mode is enabled in all buffers where `(lambda nil (subword-mode 1))' would do it. See `subword-mode' for more information on Subword mode. (fn &optional ARG)Fsuperword-mode Toggle superword movement and editing (Superword mode). With a prefix argument ARG, enable Superword mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Superword mode is a buffer-local minor mode. Enabling it changes the definition of words such that symbols characters are treated as parts of words: e.g., in `superword-mode', "this_is_a_symbol" counts as one word. \{superword-mode-map} (fn &optional ARG)Vglobal-superword-mode Non-nil if Global Superword mode is enabled. See the `global-superword-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-superword-mode'.Fglobal-superword-mode Toggle Superword mode in all buffers. With prefix ARG, enable Global Superword mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Superword mode is enabled in all buffers where `(lambda nil (superword-mode 1))' would do it. See `superword-mode' for more information on Superword mode. (fn &optional ARG)Fsc-cite-original Workhorse citing function which performs the initial citation. This is callable from the various mail and news readers' reply function according to the agreed upon standard. See the associated info node `(SC)Top' for more details. `sc-cite-original' does not do any yanking of the original message but it does require a few things: 1) The reply buffer is the current buffer. 2) The original message has been yanked and inserted into the reply buffer. 3) Verbose mail headers from the original message have been inserted into the reply buffer directly before the text of the original message. 4) Point is at the beginning of the verbose headers. 5) Mark is at the end of the body of text to be cited. The region need not be active (and typically isn't when this function is called). Also, the hook `sc-pre-hook' is run before, and `sc-post-hook' is run after the guts of this function. (fn)Vgpm-mouse-mode Non-nil if Gpm-Mouse mode is enabled. See the `gpm-mouse-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `gpm-mouse-mode'.Fgpm-mouse-mode Toggle mouse support in GNU/Linux consoles (GPM Mouse mode). With a prefix argument ARG, enable GPM Mouse mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. This allows the use of the mouse when operating on a GNU/Linux console, in the same way as you can use the mouse under X11. It relies on the `gpm' daemon being activated. Note that when `gpm-mouse-mode' is enabled, you cannot use the mouse to transfer text between Emacs and other programs which use GPM. This is due to limitations in GPM and the Linux kernel. (fn &optional ARG)Funtabify Convert all tabs in region to multiple spaces, preserving columns. If called interactively with prefix ARG, convert for the entire buffer. Called non-interactively, the region is specified by arguments START and END, rather than by the position of point and mark. The variable `tab-width' controls the spacing of tab stops. (fn START END &optional ARG)Ftabify Convert multiple spaces in region to tabs when possible. A group of spaces is partially replaced by tabs when this can be done without changing the column they end at. If called interactively with prefix ARG, convert for the entire buffer. Called non-interactively, the region is specified by arguments START and END, rather than by the position of point and mark. The variable `tab-width' controls the spacing of tab stops. (fn START END &optional ARG)Ftable-insert Insert an editable text table. Insert a table of specified number of COLUMNS and ROWS. Optional parameter CELL-WIDTH and CELL-HEIGHT can specify the size of each cell. The cell size is uniform across the table if the specified size is a number. They can be a list of numbers to specify different size for each cell. When called interactively, the list of number is entered by simply listing all the numbers with space characters delimiting them. Examples: \[table-insert] inserts a table at the current point location. Suppose we have the following situation where `-!-' indicates the location of point. -!- Type \[table-insert] and hit ENTER key. As it asks table specification, provide 3 for number of columns, 1 for number of rows, 5 for cell width and 1 for cell height. Now you shall see the next table and the point is automatically moved to the beginning of the first cell. +-----+-----+-----+ |-!- | | | +-----+-----+-----+ Inside a table cell, there are special key bindings. \<table-cell-map> M-9 \[table-widen-cell] (or \[universal-argument] 9 \[table-widen-cell]) widens the first cell by 9 character width, which results as +--------------+-----+-----+ |-!- | | | +--------------+-----+-----+ Type TAB \[table-widen-cell] then type TAB M-2 M-7 \[table-widen-cell] (or \[universal-argument] 2 7 \[table-widen-cell]). Typing TAB moves the point forward by a cell. The result now looks like this: +--------------+------+--------------------------------+ | | |-!- | +--------------+------+--------------------------------+ If you knew each width of the columns prior to the table creation, what you could have done better was to have had given the complete width information to `table-insert'. Cell width(s): 14 6 32 instead of Cell width(s): 5 This would have eliminated the previously mentioned width adjustment work all together. If the point is in the last cell type S-TAB S-TAB to move it to the first cell. Now type \[table-heighten-cell] which heighten the row by a line. +--------------+------+--------------------------------+ |-!- | | | | | | | +--------------+------+--------------------------------+ Type \[table-insert-row-column] and tell it to insert a row. +--------------+------+--------------------------------+ |-!- | | | | | | | +--------------+------+--------------------------------+ | | | | | | | | +--------------+------+--------------------------------+ Move the point under the table as shown below. +--------------+------+--------------------------------+ | | | | | | | | +--------------+------+--------------------------------+ | | | | | | | | +--------------+------+--------------------------------+ -!- Type M-x table-insert-row instead of \[table-insert-row-column]. \[table-insert-row-column] does not work when the point is outside of the table. This insertion at outside of the table effectively appends a row at the end. +--------------+------+--------------------------------+ | | | | | | | | +--------------+------+--------------------------------+ | | | | | | | | +--------------+------+--------------------------------+ |-!- | | | | | | | +--------------+------+--------------------------------+ Text editing inside the table cell produces reasonably expected results. +--------------+------+--------------------------------+ | | | | | | | | +--------------+------+--------------------------------+ | | |Text editing inside the table | | | |cell produces reasonably | | | |expected results.-!- | +--------------+------+--------------------------------+ | | | | | | | | +--------------+------+--------------------------------+ Inside a table cell has a special keymap. \{table-cell-map} (fn COLUMNS ROWS &optional CELL-WIDTH CELL-HEIGHT)Ftable-insert-row Insert N table row(s). When point is in a table the newly inserted row(s) are placed above the current row. When point is outside of the table it must be below the table within the table width range, then the newly created row(s) are appended at the bottom of the table. (fn N)Ftable-insert-column Insert N table column(s). When point is in a table the newly inserted column(s) are placed left of the current column. When point is outside of the table it must be right side of the table within the table height range, then the newly created column(s) are appended at the right of the table. (fn N)Ftable-insert-row-column Insert row(s) or column(s). See `table-insert-row' and `table-insert-column'. (fn ROW-COLUMN N)Ftable-recognize Recognize all tables within the current buffer and activate them. Scans the entire buffer and recognizes valid table cells. If the optional numeric prefix argument ARG is negative the tables in the buffer become inactive, meaning the tables become plain text and loses all the table specific features. (fn &optional ARG)Ftable-unrecognize (fn)Ftable-recognize-region Recognize all tables within region. BEG and END specify the region to work on. If the optional numeric prefix argument ARG is negative the tables in the region become inactive, meaning the tables become plain text and lose all the table specific features. (fn BEG END &optional ARG)Ftable-unrecognize-region (fn BEG END)Ftable-recognize-table Recognize a table at point. If the optional numeric prefix argument ARG is negative the table becomes inactive, meaning the table becomes plain text and loses all the table specific features. (fn &optional ARG)Ftable-unrecognize-table (fn)Ftable-recognize-cell Recognize a table cell that contains current point. Probe the cell dimension and prepare the cell information. The optional two arguments FORCE and NO-COPY are for internal use only and must not be specified. When the optional numeric prefix argument ARG is negative the cell becomes inactive, meaning that the cell becomes plain text and loses all the table specific features. (fn &optional FORCE NO-COPY ARG)Ftable-unrecognize-cell (fn)Ftable-heighten-cell Heighten the current cell by N lines by expanding the cell vertically. Heightening is done by adding blank lines at the bottom of the current cell. Other cells aligned horizontally with the current one are also heightened in order to keep the rectangular table structure. The optional argument NO-COPY is internal use only and must not be specified. (fn N &optional NO-COPY NO-UPDATE)Ftable-shorten-cell Shorten the current cell by N lines by shrinking the cell vertically. Shortening is done by removing blank lines from the bottom of the cell and possibly from the top of the cell as well. Therefore, the cell must have some bottom/top blank lines to be shorten effectively. This is applicable to all the cells aligned horizontally with the current one because they are also shortened in order to keep the rectangular table structure. (fn N)Ftable-widen-cell Widen the current cell by N columns and expand the cell horizontally. Some other cells in the same table are widen as well to keep the table's rectangle structure. (fn N &optional NO-COPY NO-UPDATE)Ftable-narrow-cell Narrow the current cell by N columns and shrink the cell horizontally. Some other cells in the same table are narrowed as well to keep the table's rectangle structure. (fn N)Ftable-forward-cell Move point forward to the beginning of the next cell. With argument ARG, do it ARG times; a negative argument ARG = -N means move backward N cells. Do not specify NO-RECOGNIZE and UNRECOGNIZE. They are for internal use only. Sample Cell Traveling Order (In Irregular Table Cases) You can actually try how it works in this buffer. Press \[table-recognize] and go to cells in the following tables and press \[table-forward-cell] or TAB key. +-----+--+ +--+-----+ +--+--+--+ +--+--+--+ +---------+ +--+---+--+ |0 |1 | |0 |1 | |0 |1 |2 | |0 |1 |2 | |0 | |0 |1 |2 | +--+--+ | | +--+--+ +--+ | | | | +--+ +----+----+ +--+-+-+--+ |2 |3 | | | |2 |3 | |3 +--+ | | +--+3 | |1 |2 | |3 |4 | | +--+--+ +--+--+ | +--+4 | | | |4 +--+ +--+-+-+--+ +----+----+ | |4 | |4 | | |5 | | | | | |5 | |3 |4 |5 | |5 | +--+-----+ +-----+--+ +--+--+--+ +--+--+--+ +--+---+--+ +---------+ +--+--+--+ +--+--+--+ +--+--+--+ +--+--+--+ |0 |1 |2 | |0 |1 |2 | |0 |1 |2 | |0 |1 |2 | | | | | | +--+ | | | | | +--+ +--+ +--+ +--+ +--+3 +--+ | +--+ | |3 +--+4 | |3 | |4 | |4 +--+5 | | |3 | | +--+5 +--+ | | | | | |6 | | | | | | |6 | |7 | +--+--+--+ +--+--+--+ +--+--+--+ +--+--+--+ +--+--+--+ +--+--+--+ +--+--+--+--+ +--+-----+--+ +--+--+--+--+ |0 |1 |2 | |0 |1 |2 | |0 |1 |2 |3 | |0 |1 |2 | |0 |1 |2 |3 | | +--+ | | +--+ | | +--+--+ | | | | | | +--+--+ | | |3 +--+ +--+3 | | +--+4 +--+ +--+ +--+ +--+4 +--+ +--+ |4 | |4 | +--+ |5 +--+--+6 | |3 +--+--+4 | |5 | |6 | |5 +--+ | | +--+5 | | |7 |8 | | | |5 |6 | | | | | | | |6 | | | |6 | | +--+--+--+--+ +--+--+--+--+ +--+-----+--+ +--+--+--+ +--+--+--+ (fn &optional ARG NO-RECOGNIZE UNRECOGNIZE)Ftable-backward-cell Move backward to the beginning of the previous cell. With argument ARG, do it ARG times; a negative argument ARG = -N means move forward N cells. (fn &optional ARG)Ftable-span-cell Span current cell into adjacent cell in DIRECTION. DIRECTION is one of symbols; right, left, above or below. (fn DIRECTION)Ftable-split-cell-vertically Split current cell vertically. Creates a cell above and a cell below the current point location. (fn)Ftable-split-cell-horizontally Split current cell horizontally. Creates a cell on the left and a cell on the right of the current point location. (fn)Ftable-split-cell Split current cell in ORIENTATION. ORIENTATION is a symbol either horizontally or vertically. (fn ORIENTATION)Ftable-justify Justify contents of a cell, a row of cells or a column of cells. WHAT is a symbol `cell', `row' or `column'. JUSTIFY is a symbol `left', `center', `right', `top', `middle', `bottom' or `none'. (fn WHAT JUSTIFY)Ftable-justify-cell Justify cell contents. JUSTIFY is a symbol `left', `center' or `right' for horizontal, or `top', `middle', `bottom' or `none' for vertical. When optional PARAGRAPH is non-nil the justify operation is limited to the current paragraph, otherwise the entire cell contents is justified. (fn JUSTIFY &optional PARAGRAPH)Ftable-justify-row Justify cells of a row. JUSTIFY is a symbol `left', `center' or `right' for horizontal, or `top', `middle', `bottom' or `none' for vertical. (fn JUSTIFY)Ftable-justify-column Justify cells of a column. JUSTIFY is a symbol `left', `center' or `right' for horizontal, or `top', `middle', `bottom' or `none' for vertical. (fn JUSTIFY)Ftable-fixed-width-mode Cell width is fixed when this is non-nil. Normally it should be nil for allowing automatic cell width expansion that widens a cell when it is necessary. When non-nil, typing in a cell does not automatically expand the cell width. A word that is too long to fit in a cell is chopped into multiple lines. The chopped location is indicated by `table-word-continuation-char'. This variable's value can be toggled by \[table-fixed-width-mode] at run-time. (fn &optional ARG)Ftable-query-dimension Return the dimension of the current cell and the current table. The result is a list (cw ch tw th c r cells) where cw is the cell width, ch is the cell height, tw is the table width, th is the table height, c is the number of columns, r is the number of rows and cells is the total number of cells. The cell dimension excludes the cell frame while the table dimension includes the table frame. The columns and the rows are counted by the number of cell boundaries. Therefore the number tends to be larger than it appears for the tables with non-uniform cell structure (heavily spanned and split). When optional WHERE is provided the cell and table at that location is reported. (fn &optional WHERE)Ftable-generate-source Generate source of the current table in the specified language. LANGUAGE is a symbol that specifies the language to describe the structure of the table. It must be either `html', `latex' or `cals'. The resulted source text is inserted into DEST-BUFFER and the buffer object is returned. When DEST-BUFFER is omitted or nil the default buffer specified in `table-dest-buffer-name' is used. In this case the content of the default buffer is erased prior to the generation. When DEST-BUFFER is non-nil it is expected to be either a destination buffer or a name of the destination buffer. In this case the generated result is inserted at the current point in the destination buffer and the previously existing contents in the buffer are untouched. References used for this implementation: HTML: URL `http://www.w3.org' LaTeX: URL `http://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/Tables.html' CALS (DocBook DTD): URL `http://www.oasis-open.org/html/a502.htm' URL `http://www.oreilly.com/catalog/docbook/chapter/book/table.html#AEN114751' (fn LANGUAGE &optional DEST-BUFFER CAPTION)Ftable-insert-sequence Travel cells forward while inserting a specified sequence string in each cell. STR is the base string from which the sequence starts. When STR is an empty string then each cell content is erased. When STR ends with numerical characters (they may optionally be surrounded by a pair of parentheses) they are incremented as a decimal number. Otherwise the last character in STR is incremented in ASCII code order. N is the number of sequence elements to insert. When N is negative the cell traveling direction is backward. When N is zero it travels forward entire table. INCREMENT is the increment between adjacent sequence elements and can be a negative number for effectively decrementing. INTERVAL is the number of cells to travel between sequence element insertion which is normally 1. When zero or less is given for INTERVAL it is interpreted as number of cells per row so that sequence is placed straight down vertically as long as the table's cell structure is uniform. JUSTIFY is a symbol `left', `center' or `right' that specifies justification of the inserted string. Example: (progn (table-insert 16 3 5 1) (table-forward-cell 15) (table-insert-sequence "D0" -16 1 1 \='center) (table-forward-cell 16) (table-insert-sequence "A[0]" -16 1 1 \='center) (table-forward-cell 1) (table-insert-sequence "-" 16 0 1 \='center)) (progn (table-insert 16 8 5 1) (table-insert-sequence "@" 0 1 2 \='right) (table-forward-cell 1) (table-insert-sequence "64" 0 1 2 \='left)) (fn STR N INCREMENT INTERVAL JUSTIFY)Ftable-delete-row Delete N row(s) of cells. Delete N rows of cells from current row. The current row is the row contains the current cell where point is located. Each row must consists from cells of same height. (fn N)Ftable-delete-column Delete N column(s) of cells. Delete N columns of cells from current column. The current column is the column contains the current cell where point is located. Each column must consists from cells of same width. (fn N)Ftable-capture Convert plain text into a table by capturing the text in the region. Create a table with the text in region as cell contents. BEG and END specify the region. The text in the region is replaced with a table. The removed text is inserted in the table. When optional COL-DELIM-REGEXP and ROW-DELIM-REGEXP are provided the region contents is parsed and separated into individual cell contents by using the delimiter regular expressions. This parsing determines the number of columns and rows of the table automatically. If COL-DELIM-REGEXP and ROW-DELIM-REGEXP are omitted the result table has only one cell and the entire region contents is placed in that cell. Optional JUSTIFY is one of `left', `center' or `right', which specifies the cell justification. Optional MIN-CELL-WIDTH specifies the minimum cell width. Optional COLUMNS specify the number of columns when ROW-DELIM-REGEXP is not specified. Example 1: 1, 2, 3, 4 5, 6, 7, 8 , 9, 10 Running `table-capture' on above 3 line region with COL-DELIM-REGEXP "," and ROW-DELIM-REGEXP "\n" creates the following table. In this example the cells are centered and minimum cell width is specified as 5. +-----+-----+-----+-----+ | 1 | 2 | 3 | 4 | +-----+-----+-----+-----+ | 5 | 6 | 7 | 8 | +-----+-----+-----+-----+ | | 9 | 10 | | +-----+-----+-----+-----+ Note: In case the function is called interactively user must use \[quoted-insert] `quoted-insert' in order to enter "\n" successfully. COL-DELIM-REGEXP at the end of each row is optional. Example 2: This example shows how a table can be used for text layout editing. Let `table-capture' capture the following region starting from -!- and ending at -*-, that contains three paragraphs and two item name headers. This time specify empty string for both COL-DELIM-REGEXP and ROW-DELIM-REGEXP. -!-`table-capture' is a powerful command however mastering its power requires some practice. Here is a list of items what it can do. Parse Cell Items By using column delimiter regular expression and raw delimiter regular expression, it parses the specified text area and extracts cell items from non-table text and then forms a table out of them. Capture Text Area When no delimiters are specified it creates a single cell table. The text in the specified region is placed in that cell.-*- Now the entire content is captured in a cell which is itself a table like this. +-----------------------------------------------------------------+ |`table-capture' is a powerful command however mastering its power| |requires some practice. Here is a list of items what it can do. | | | |Parse Cell Items By using column delimiter regular | | expression and raw delimiter regular | | expression, it parses the specified text | | area and extracts cell items from | | non-table text and then forms a table out | | of them. | | | |Capture Text Area When no delimiters are specified it | | creates a single cell table. The text in | | the specified region is placed in that | | cell. | +-----------------------------------------------------------------+ By splitting the cell appropriately we now have a table consisting of paragraphs occupying its own cell. Each cell can now be edited independently. +-----------------------------------------------------------------+ |`table-capture' is a powerful command however mastering its power| |requires some practice. Here is a list of items what it can do. | +---------------------+-------------------------------------------+ |Parse Cell Items |By using column delimiter regular | | |expression and raw delimiter regular | | |expression, it parses the specified text | | |area and extracts cell items from | | |non-table text and then forms a table out | | |of them. | +---------------------+-------------------------------------------+ |Capture Text Area |When no delimiters are specified it | | |creates a single cell table. The text in | | |the specified region is placed in that | | |cell. | +---------------------+-------------------------------------------+ By applying `table-release', which does the opposite process, the contents become once again plain text. `table-release' works as companion command to `table-capture' this way. (fn BEG END &optional COL-DELIM-REGEXP ROW-DELIM-REGEXP JUSTIFY MIN-CELL-WIDTH COLUMNS)Ftable-release Convert a table into plain text by removing the frame from a table. Remove the frame from a table and deactivate the table. This command converts a table into plain text without frames. It is a companion to `table-capture' which does the opposite process. (fn)Ftalk-connect Connect to display DISPLAY for the Emacs talk group. (fn DISPLAY)Ftalk Connect to the Emacs talk group from the current X display or tty frame. (fn)Ftar-mode Major mode for viewing a tar file as a dired-like listing of its contents. You can move around using the usual cursor motion commands. Letters no longer insert themselves. Type `e' to pull a file out of the tar file and into its own buffer; or click mouse-2 on the file's line in the Tar mode buffer. Type `c' to copy an entry from the tar file into another file on disk. If you edit a sub-file of this archive (as with the `e' command) and save it with \[save-buffer], the contents of that buffer will be saved back into the tar-file buffer; in this way you can edit a file inside of a tar archive without extracting it and re-archiving it. See also: variables `tar-update-datestamp' and `tar-anal-blocksize'. \{tar-mode-map} (fn)Ftcl-mode Major mode for editing Tcl code. Expression and list commands understand all Tcl brackets. Tab indents for Tcl code. Paragraphs are separated by blank lines only. Delete converts tabs to spaces as it moves back. Variables controlling indentation style: `tcl-indent-level' Indentation of Tcl statements within surrounding block. `tcl-continued-indent-level' Indentation of continuation line relative to first line of command. Variables controlling user interaction with mode (see variable documentation for details): `tcl-tab-always-indent' Controls action of TAB key. `tcl-auto-newline' Non-nil means automatically newline before and after braces, brackets, and semicolons inserted in Tcl code. `tcl-use-smart-word-finder' If not nil, use a smarter, Tcl-specific way to find the current word when looking up help on a Tcl command. Turning on Tcl mode runs `tcl-mode-hook'. Read the documentation for `tcl-mode-hook' to see what kinds of interesting hook functions already exist. (fn)Finferior-tcl Run inferior Tcl process. Prefix arg means enter program name interactively. See documentation for function `inferior-tcl-mode' for more information. (fn CMD)Ftcl-help-on-word Get help on Tcl command. Default is word at point. Prefix argument means invert sense of `tcl-use-smart-word-finder'. (fn COMMAND &optional ARG)Ftelnet Open a network login connection to host named HOST (a string). Optional arg PORT specifies alternative port to connect to. Interactively, use \[universal-argument] prefix to be prompted for port number. Communication with HOST is recorded in a buffer `*PROGRAM-HOST*' where PROGRAM is the telnet program being used. This program is controlled by the contents of the global variable `telnet-host-properties', falling back on the value of the global variable `telnet-program'. Normally input is edited in Emacs and sent a line at a time. (fn HOST &optional PORT)Frsh Open a network login connection to host named HOST (a string). Communication with HOST is recorded in a buffer `*rsh-HOST*'. Normally input is edited in Emacs and sent a line at a time. (fn HOST)Fmake-term Make a term process NAME in a buffer, running PROGRAM. The name of the buffer is made by surrounding NAME with `*'s. If there is already a running process in that buffer, it is not restarted. Optional third arg STARTFILE is the name of a file to send the contents of to the process. Any more args are arguments to PROGRAM. (fn NAME PROGRAM &optional STARTFILE &rest SWITCHES)Fterm Start a terminal-emulator in a new buffer. The buffer is in Term mode; see `term-mode' for the commands to use in that buffer. \<term-raw-map>Type \[switch-to-buffer] to switch to another buffer. (fn PROGRAM)Fansi-term Start a terminal-emulator in a new buffer. This is almost the same as `term' apart from always creating a new buffer, and `C-x' being marked as a `term-escape-char'. (fn PROGRAM &optional NEW-BUFFER-NAME)Fserial-term Start a terminal-emulator for a serial port in a new buffer. PORT is the path or name of the serial port. For example, this could be "/dev/ttyS0" on Unix. On Windows, this could be "COM1" or "\\.\COM10". SPEED is the speed of the serial port in bits per second. 9600 is a common value. SPEED can be nil, see `serial-process-configure' for details. The buffer is in Term mode; see `term-mode' for the commands to use in that buffer. \<term-raw-map>Type \[switch-to-buffer] to switch to another buffer. (fn PORT SPEED)Ftestcover-start Uses edebug to instrument all macros and functions in FILENAME, then changes the instrumentation from edebug to testcover--much faster, no problems with type-ahead or post-command-hook, etc. If BYTE-COMPILE is non-nil, byte-compiles each function after instrumenting. (fn FILENAME &optional BYTE-COMPILE)Ftestcover-this-defun Start coverage on function under point. (fn)Ftetris Play the Tetris game. Shapes drop from the top of the screen, and the user has to move and rotate the shape to fit in with those at the bottom of the screen so as to form complete rows. tetris-mode keybindings: \<tetris-mode-map> \[tetris-start-game] Starts a new game of Tetris \[tetris-end-game] Terminates the current game \[tetris-pause-game] Pauses (or resumes) the current game \[tetris-move-left] Moves the shape one square to the left \[tetris-move-right] Moves the shape one square to the right \[tetris-rotate-prev] Rotates the shape clockwise \[tetris-rotate-next] Rotates the shape anticlockwise \[tetris-move-bottom] Drops the shape to the bottom of the playing area (fn)Vtex-shell-file-name If non-nil, the shell file name to run in the subshell used to run TeX.Vtex-directory Directory in which temporary files are written. You can make this `/tmp' if your TEXINPUTS has no relative directories in it and you don't try to apply \[tex-region] or \[tex-buffer] when there are `\input' commands with relative directories.Vtex-first-line-header-regexp Regexp for matching a first line which `tex-region' should include. If this is non-nil, it should be a regular expression string; if it matches the first line of the file, `tex-region' always includes the first line in the TeX run.Vtex-main-file The main TeX source file which includes this buffer's file. The command `tex-file' runs TeX on the file specified by `tex-main-file' if the variable is non-nil.Vtex-offer-save If non-nil, ask about saving modified buffers before \[tex-file] is run.Vtex-run-command Command used to run TeX subjob. TeX Mode sets `tex-command' to this string. See the documentation of that variable.Vlatex-run-command Command used to run LaTeX subjob. LaTeX Mode sets `tex-command' to this string. See the documentation of that variable.Vslitex-run-command Command used to run SliTeX subjob. SliTeX Mode sets `tex-command' to this string. See the documentation of that variable.Vtex-start-options TeX options to use when starting TeX. These immediately precede the commands in `tex-start-commands' and the input file name, with no separating space and are not shell-quoted. If nil, TeX runs with no options. See the documentation of `tex-command'.Vtex-start-commands TeX commands to use when starting TeX. They are shell-quoted and precede the input file name, with a separating space. If nil, no commands are used. See the documentation of `tex-command'.Vlatex-block-names User defined LaTeX block names. Combined with `latex-standard-block-names' for minibuffer completion.Vtex-bibtex-command Command used by `tex-bibtex-file' to gather bibliographic data. If this string contains an asterisk (`*'), that is replaced by the file name; otherwise, the file name, preceded by blank, is added at the end.Vtex-dvi-print-command Command used by \[tex-print] to print a .dvi file. If this string contains an asterisk (`*'), that is replaced by the file name; otherwise, the file name, preceded by blank, is added at the end.Vtex-alt-dvi-print-command Command used by \[tex-print] with a prefix arg to print a .dvi file. If this string contains an asterisk (`*'), that is replaced by the file name; otherwise, the file name, preceded by blank, is added at the end. If two printers are not enough of a choice, you can set the variable `tex-alt-dvi-print-command' to an expression that asks what you want; for example, (setq tex-alt-dvi-print-command \='(format "lpr -P%s" (read-string "Use printer: "))) would tell \[tex-print] with a prefix argument to ask you which printer to use.Vtex-dvi-view-command Command used by \[tex-view] to display a `.dvi' file. If it is a string, that specifies the command directly. If this string contains an asterisk (`*'), that is replaced by the file name; otherwise, the file name, preceded by a space, is added at the end. If the value is a form, it is evaluated to get the command to use.Vtex-show-queue-command Command used by \[tex-show-print-queue] to show the print queue. Should show the queue(s) that \[tex-print] puts jobs on.Vtex-default-mode Mode to enter for a new file that might be either TeX or LaTeX. This variable is used when it can't be determined whether the file is plain TeX or LaTeX or what because the file contains no commands. Normally set to either `plain-tex-mode' or `latex-mode'.Vtex-open-quote String inserted by typing \[tex-insert-quote] to open a quotation.Vtex-close-quote String inserted by typing \[tex-insert-quote] to close a quotation.Ftex-mode Major mode for editing files of input for TeX, LaTeX, or SliTeX. Tries to determine (by looking at the beginning of the file) whether this file is for plain TeX, LaTeX, or SliTeX and calls `plain-tex-mode', `latex-mode', or `slitex-mode', respectively. If it cannot be determined, such as if there are no commands in the file, the value of `tex-default-mode' says which mode to use. (fn)Fplain-tex-mode Major mode for editing files of input for plain TeX. Makes $ and } display the characters they match. Makes " insert \=`\=` when it seems to be the beginning of a quotation, and \='\=' when it appears to be the end; it inserts " only after a \. Use \[tex-region] to run TeX on the current region, plus a "header" copied from the top of the file (containing macro definitions, etc.), running TeX under a special subshell. \[tex-buffer] does the whole buffer. \[tex-file] saves the buffer and then processes the file. \[tex-print] prints the .dvi file made by any of these. \[tex-view] previews the .dvi file made by any of these. \[tex-bibtex-file] runs bibtex on the file of the current buffer. Use \[tex-validate-buffer] to check buffer for paragraphs containing mismatched $'s or braces. Special commands: \{plain-tex-mode-map} Mode variables: tex-run-command Command string used by \[tex-region] or \[tex-buffer]. tex-directory Directory in which to create temporary files for TeX jobs run by \[tex-region] or \[tex-buffer]. tex-dvi-print-command Command string used by \[tex-print] to print a .dvi file. tex-alt-dvi-print-command Alternative command string used by \[tex-print] (when given a prefix argument) to print a .dvi file. tex-dvi-view-command Command string used by \[tex-view] to preview a .dvi file. tex-show-queue-command Command string used by \[tex-show-print-queue] to show the print queue that \[tex-print] put your job on. Entering Plain-tex mode runs the hook `text-mode-hook', then the hook `tex-mode-hook', and finally the hook `plain-tex-mode-hook'. When the special subshell is initiated, the hook `tex-shell-hook' is run. (fn)Flatex-mode Major mode for editing files of input for LaTeX. Makes $ and } display the characters they match. Makes " insert \=`\=` when it seems to be the beginning of a quotation, and \='\=' when it appears to be the end; it inserts " only after a \. Use \[tex-region] to run LaTeX on the current region, plus the preamble copied from the top of the file (containing \documentstyle, etc.), running LaTeX under a special subshell. \[tex-buffer] does the whole buffer. \[tex-file] saves the buffer and then processes the file. \[tex-print] prints the .dvi file made by any of these. \[tex-view] previews the .dvi file made by any of these. \[tex-bibtex-file] runs bibtex on the file of the current buffer. Use \[tex-validate-buffer] to check buffer for paragraphs containing mismatched $'s or braces. Special commands: \{latex-mode-map} Mode variables: latex-run-command Command string used by \[tex-region] or \[tex-buffer]. tex-directory Directory in which to create temporary files for LaTeX jobs run by \[tex-region] or \[tex-buffer]. tex-dvi-print-command Command string used by \[tex-print] to print a .dvi file. tex-alt-dvi-print-command Alternative command string used by \[tex-print] (when given a prefix argument) to print a .dvi file. tex-dvi-view-command Command string used by \[tex-view] to preview a .dvi file. tex-show-queue-command Command string used by \[tex-show-print-queue] to show the print queue that \[tex-print] put your job on. Entering Latex mode runs the hook `text-mode-hook', then `tex-mode-hook', and finally `latex-mode-hook'. When the special subshell is initiated, `tex-shell-hook' is run. (fn)Fslitex-mode Major mode for editing files of input for SliTeX. Makes $ and } display the characters they match. Makes " insert \=`\=` when it seems to be the beginning of a quotation, and \='\=' when it appears to be the end; it inserts " only after a \. Use \[tex-region] to run SliTeX on the current region, plus the preamble copied from the top of the file (containing \documentstyle, etc.), running SliTeX under a special subshell. \[tex-buffer] does the whole buffer. \[tex-file] saves the buffer and then processes the file. \[tex-print] prints the .dvi file made by any of these. \[tex-view] previews the .dvi file made by any of these. \[tex-bibtex-file] runs bibtex on the file of the current buffer. Use \[tex-validate-buffer] to check buffer for paragraphs containing mismatched $'s or braces. Special commands: \{slitex-mode-map} Mode variables: slitex-run-command Command string used by \[tex-region] or \[tex-buffer]. tex-directory Directory in which to create temporary files for SliTeX jobs run by \[tex-region] or \[tex-buffer]. tex-dvi-print-command Command string used by \[tex-print] to print a .dvi file. tex-alt-dvi-print-command Alternative command string used by \[tex-print] (when given a prefix argument) to print a .dvi file. tex-dvi-view-command Command string used by \[tex-view] to preview a .dvi file. tex-show-queue-command Command string used by \[tex-show-print-queue] to show the print queue that \[tex-print] put your job on. Entering SliTeX mode runs the hook `text-mode-hook', then the hook `tex-mode-hook', then the hook `latex-mode-hook', and finally the hook `slitex-mode-hook'. When the special subshell is initiated, the hook `tex-shell-hook' is run. (fn)Ftex-start-shell (fn)Fdoctex-mode Major mode to edit DocTeX files. (fn)Ftexinfo-format-buffer Process the current buffer as texinfo code, into an Info file. The Info file output is generated in a buffer visiting the Info file name specified in the @setfilename command. Non-nil argument (prefix, if interactive) means don't make tag table and don't split the file if large. You can use `Info-tagify' and `Info-split' to do these manually. (fn &optional NOSPLIT)Ftexinfo-format-region Convert the current region of the Texinfo file to Info format. This lets you see what that part of the file will look like in Info. The command is bound to \[texinfo-format-region]. The text that is converted to Info is stored in a temporary buffer. (fn REGION-BEGINNING REGION-END)Ftexi2info Convert the current buffer (written in Texinfo code) into an Info file. The Info file output is generated in a buffer visiting the Info file names specified in the @setfilename command. This function automatically updates all node pointers and menus, and creates a master menu. This work is done on a temporary buffer that is automatically removed when the Info file is created. The original Texinfo source buffer is not changed. Non-nil argument (prefix, if interactive) means don't split the file if large. You can use `Info-split' to do this manually. (fn &optional NOSPLIT)Vtexinfo-open-quote String inserted by typing \[texinfo-insert-quote] to open a quotation.Vtexinfo-close-quote String inserted by typing \[texinfo-insert-quote] to close a quotation.Ftexinfo-mode Major mode for editing Texinfo files. It has these extra commands: \{texinfo-mode-map} These are files that are used as input for TeX to make printed manuals and also to be turned into Info files with \[makeinfo-buffer] or the `makeinfo' program. These files must be written in a very restricted and modified version of TeX input format. Editing commands are like text-mode except that the syntax table is set up so expression commands skip Texinfo bracket groups. To see what the Info version of a region of the Texinfo file will look like, use \[makeinfo-region], which runs `makeinfo' on the current region. You can show the structure of a Texinfo file with \[texinfo-show-structure]. This command shows the structure of a Texinfo file by listing the lines with the @-sign commands for @chapter, @section, and the like. These lines are displayed in another window called the *Occur* window. In that window, you can position the cursor over one of the lines and use \[occur-mode-goto-occurrence], to jump to the corresponding spot in the Texinfo file. In addition, Texinfo mode provides commands that insert various frequently used @-sign commands into the buffer. You can use these commands to save keystrokes. And you can insert balanced braces with \[texinfo-insert-braces] and later use the command \[up-list] to move forward past the closing brace. Also, Texinfo mode provides functions for automatically creating or updating menus and node pointers. These functions * insert the `Next', `Previous' and `Up' pointers of a node, * insert or update the menu for a section, and * create a master menu for a Texinfo source file. Here are the functions: texinfo-update-node \[texinfo-update-node] texinfo-every-node-update \[texinfo-every-node-update] texinfo-sequential-node-update texinfo-make-menu \[texinfo-make-menu] texinfo-all-menus-update \[texinfo-all-menus-update] texinfo-master-menu texinfo-indent-menu-description (column &optional region-p) The `texinfo-column-for-description' variable specifies the column to which menu descriptions are indented. Passed an argument (a prefix argument, if interactive), the `texinfo-update-node' and `texinfo-make-menu' functions do their jobs in the region. To use the updating commands, you must structure your Texinfo file hierarchically, such that each `@node' line, with the exception of the Top node, is accompanied by some kind of section line, such as an `@chapter' or `@section' line. If the file has a `top' node, it must be called `top' or `Top' and be the first node in the file. Entering Texinfo mode calls the value of `text-mode-hook', and then the value of `texinfo-mode-hook'. (fn)Fthai-compose-region Compose Thai characters in the region. When called from a program, expects two arguments, positions (integers or markers) specifying the region. (fn BEG END)Fthai-compose-string Compose Thai characters in STRING and return the resulting string. (fn STRING)Fthai-compose-buffer Compose Thai characters in the current buffer. (fn)Fthai-composition-function (fn GSTRING)Fforward-thing Move forward to the end of the Nth next THING. THING should be a symbol specifying a type of syntactic entity. Possibilities include `symbol', `list', `sexp', `defun', `filename', `url', `email', `word', `sentence', `whitespace', `line', and `page'. (fn THING &optional N)Fbounds-of-thing-at-point Determine the start and end buffer locations for the THING at point. THING should be a symbol specifying a type of syntactic entity. Possibilities include `symbol', `list', `sexp', `defun', `filename', `url', `email', `word', `sentence', `whitespace', `line', and `page'. See the file `thingatpt.el' for documentation on how to define a valid THING. Return a cons cell (START . END) giving the start and end positions of the thing found. (fn THING)Fthing-at-point Return the THING at point. THING should be a symbol specifying a type of syntactic entity. Possibilities include `symbol', `list', `sexp', `defun', `filename', `url', `email', `word', `sentence', `whitespace', `line', `number', and `page'. When the optional argument NO-PROPERTIES is non-nil, strip text properties from the return value. See the file `thingatpt.el' for documentation on how to define a symbol as a valid THING. (fn THING &optional NO-PROPERTIES)Fsexp-at-point Return the sexp at point, or nil if none is found. (fn)Fsymbol-at-point Return the symbol at point, or nil if none is found. (fn)Fnumber-at-point Return the number at point, or nil if none is found. (fn)Flist-at-point Return the Lisp list at point, or nil if none is found. If IGNORE-COMMENT-OR-STRING is non-nil comments and strings are treated as white space. (fn &optional IGNORE-COMMENT-OR-STRING)Fthumbs-find-thumb Display the thumbnail for IMG. (fn IMG)Fthumbs-show-from-dir Make a preview buffer for all images in DIR. Optional argument REG to select file matching a regexp, and SAME-WINDOW to show thumbs in the same window. (fn DIR &optional REG SAME-WINDOW)Fthumbs-dired-show-marked In dired, make a thumbs buffer with marked files. (fn)Fthumbs-dired-show In dired, make a thumbs buffer with all files in current directory. (fn)Fthumbs-dired-setroot In dired, call the setroot program on the image at point. (fn)Ftibetan-char-p Check if char CH is Tibetan character. Returns non-nil if CH is Tibetan. Otherwise, returns nil. (fn CH)Ftibetan-tibetan-to-transcription Transcribe Tibetan string STR and return the corresponding Roman string. (fn STR)Ftibetan-transcription-to-tibetan Convert Tibetan Roman string STR to Tibetan character string. The returned string has no composition information. (fn STR)Ftibetan-compose-string Compose Tibetan string STR. (fn STR)Ftibetan-compose-region Compose Tibetan text the region BEG and END. (fn BEG END)Ftibetan-decompose-region Decompose Tibetan text in the region FROM and TO. This is different from decompose-region because precomposed Tibetan characters are decomposed into normal Tibetan character sequences. (fn FROM TO)Ftibetan-decompose-string Decompose Tibetan string STR. This is different from decompose-string because precomposed Tibetan characters are decomposed into normal Tibetan character sequences. (fn STR)Ftibetan-decompose-buffer Decomposes Tibetan characters in the buffer into their components. See also the documentation of the function `tibetan-decompose-region'. (fn)Ftibetan-compose-buffer Composes Tibetan character components in the buffer. See also docstring of the function tibetan-compose-region. (fn)Ftibetan-post-read-conversion (fn LEN)Ftibetan-pre-write-conversion (fn FROM TO)Ftibetan-pre-write-canonicalize-for-unicode (fn FROM TO)Ftildify-region Add hard spaces in the region between BEG and END. See variables `tildify-pattern', `tildify-space-string', and `tildify-ignored-environments-alist' for information about configuration parameters. This function performs no refilling of the changed text. If DONT-ASK is set, or called interactively with prefix argument, user won't be prompted for confirmation of each substitution. (fn BEG END &optional DONT-ASK)Ftildify-buffer Add hard spaces in the current buffer. See variables `tildify-pattern', `tildify-space-string', and `tildify-ignored-environments-alist' for information about configuration parameters. This function performs no refilling of the changed text. If DONT-ASK is set, or called interactively with prefix argument, user won't be prompted for confirmation of each substitution. (fn &optional DONT-ASK)Ftildify-space Convert space before point into a hard space if the context is right. If * character before point is a space character, * character before that has "w" character syntax (i.e. it's a word constituent), * `tildify-space-pattern' matches when `looking-back' (no more than 10 characters) from before the space character, and * all predicates in `tildify-space-predicates' return non-nil, replace the space character with value of `tildify-space-string' and return t. Otherwise, if * `tildify-double-space-undos' variable is non-nil, * character before point is a space character, and * text before that is a hard space as defined by `tildify-space-string' variable, remove the hard space and leave only the space character. This function is meant to be used as a `post-self-insert-hook'. (fn)Ftildify-mode Adds electric behavior to space character. When space is inserted into a buffer in a position where hard space is required instead (determined by `tildify-space-pattern' and `tildify-space-predicates'), that space character is replaced by a hard space specified by `tildify-space-string'. Converting of the space is done by `tildify-space'. When `tildify-mode' is enabled, if `tildify-string-alist' specifies a hard space representation for current major mode, the `tildify-space-string' buffer-local variable will be set to the representation. (fn &optional ARG)Vdisplay-time-day-and-date Non-nil means \[display-time] should display day and date as well as time.Fdisplay-time Enable display of time, load level, and mail flag in mode lines. This display updates automatically every minute. If `display-time-day-and-date' is non-nil, the current day and date are displayed as well. This runs the normal hook `display-time-hook' after each update. (fn)Vdisplay-time-mode Non-nil if Display-Time mode is enabled. See the `display-time-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `display-time-mode'.Fdisplay-time-mode Toggle display of time, load level, and mail flag in mode lines. With a prefix argument ARG, enable Display Time mode if ARG is positive, and disable it otherwise. If called from Lisp, enable it if ARG is omitted or nil. When Display Time mode is enabled, it updates every minute (you can control the number of seconds between updates by customizing `display-time-interval'). If `display-time-day-and-date' is non-nil, the current day and date are displayed as well. This runs the normal hook `display-time-hook' after each update. (fn &optional ARG)Fdisplay-time-world Enable updating display of times in various time zones. `display-time-world-list' specifies the zones. To turn off the world time display, go to that window and type `q'. (fn)Femacs-uptime Return a string giving the uptime of this instance of Emacs. FORMAT is a string to format the result, using `format-seconds'. For example, the Unix uptime command format is "%D, %z%2h:%.2m". (fn &optional FORMAT)Femacs-init-time Return a string giving the duration of the Emacs initialization. (fn)Fdate-to-time Parse a string DATE that represents a date-time and return a time value. DATE should be in one of the forms recognized by `parse-time-string'. If DATE lacks timezone information, GMT is assumed. (fn DATE)Fseconds-to-time Convert SECONDS to a time value. (fn SECONDS)Fdays-to-time Convert DAYS into a time value. (fn DAYS)Ftime-since Return the time elapsed since TIME. TIME should be either a time value or a date-time string. (fn TIME)Fdate-to-day Return the number of days between year 1 and DATE. DATE should be a date-time string. (fn DATE)Fdays-between Return the number of days between DATE1 and DATE2. DATE1 and DATE2 should be date-time strings. (fn DATE1 DATE2)Fdate-leap-year-p Return t if YEAR is a leap year. (fn YEAR)Ftime-to-day-in-year Return the day number within the year corresponding to TIME. (fn TIME)Ftime-to-days The number of days between the Gregorian date 0001-12-31bce and TIME. TIME should be a time value. The Gregorian date Sunday, December 31, 1bce is imaginary. (fn TIME)Fsafe-date-to-time Parse a string DATE that represents a date-time and return a time value. If DATE is malformed, return a time value of zeros. (fn DATE)Fformat-seconds Use format control STRING to format the number SECONDS. The valid format specifiers are: %y is the number of (365-day) years. %d is the number of days. %h is the number of hours. %m is the number of minutes. %s is the number of seconds. %z is a non-printing control flag (see below). %% is a literal "%". Upper-case specifiers are followed by the unit-name (e.g. "years"). Lower-case specifiers return only the unit. "%" may be followed by a number specifying a width, with an optional leading "." for zero-padding. For example, "%.3Y" will return something of the form "001 year". The "%z" specifier does not print anything. When it is used, specifiers must be given in order of decreasing size. To the left of "%z", nothing is output until the first non-zero unit is encountered. This function does not work for SECONDS greater than `most-positive-fixnum'. (fn STRING SECONDS)Fseconds-to-string Convert the time interval in seconds to a short string. (fn DELAY)Ftime-stamp Update the time stamp string(s) in the buffer. A template in a file can be automatically updated with a new time stamp every time you save the file. Add this line to your init file: (add-hook \='before-save-hook \='time-stamp) or customize `before-save-hook' through Custom. Normally the template must appear in the first 8 lines of a file and look like one of the following: Time-stamp: <> Time-stamp: " " The time stamp is written between the brackets or quotes: Time-stamp: <2001-02-18 10:20:51 gildea> The time stamp is updated only if the variable `time-stamp-active' is non-nil. The format of the time stamp is set by the variable `time-stamp-pattern' or `time-stamp-format'. The variables `time-stamp-pattern', `time-stamp-line-limit', `time-stamp-start', `time-stamp-end', `time-stamp-count', and `time-stamp-inserts-lines' control finding the template. (fn)Ftime-stamp-toggle-active Toggle `time-stamp-active', setting whether \[time-stamp] updates a buffer. With ARG, turn time stamping on if and only if arg is positive. (fn &optional ARG)Vtimeclock-mode-line-display Non-nil if Timeclock-Mode-Line-Display mode is enabled. See the `timeclock-mode-line-display' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `timeclock-mode-line-display'.Ftimeclock-mode-line-display Toggle display of the amount of time left today in the mode line. If `timeclock-use-display-time' is non-nil (the default), then the function `display-time-mode' must be active, and the mode line will be updated whenever the time display is updated. Otherwise, the timeclock will use its own sixty second timer to do its updating. With prefix ARG, turn mode line display on if and only if ARG is positive. Returns the new status of timeclock mode line display (non-nil means on). (fn &optional ARG)Ftimeclock-in Clock in, recording the current time moment in the timelog. With a numeric prefix ARG, record the fact that today has only that many hours in it to be worked. If ARG is a non-numeric prefix argument (non-nil, but not a number), 0 is assumed (working on a holiday or weekend). *If not called interactively, ARG should be the number of _seconds_ worked today*. This feature only has effect the first time this function is called within a day. PROJECT is the project being clocked into. If PROJECT is nil, and FIND-PROJECT is non-nil -- or the user calls `timeclock-in' interactively -- call the function `timeclock-get-project-function' to discover the name of the project. (fn &optional ARG PROJECT FIND-PROJECT)Ftimeclock-out Clock out, recording the current time moment in the timelog. If a prefix ARG is given, the user has completed the project that was begun during the last time segment. REASON is the user's reason for clocking out. If REASON is nil, and FIND-REASON is non-nil -- or the user calls `timeclock-out' interactively -- call the function `timeclock-get-reason-function' to discover the reason. (fn &optional ARG REASON FIND-REASON)Ftimeclock-status-string Report the overall timeclock status at the present moment. If SHOW-SECONDS is non-nil, display second resolution. If TODAY-ONLY is non-nil, the display will be relative only to time worked today, ignoring the time worked on previous days. (fn &optional SHOW-SECONDS TODAY-ONLY)Ftimeclock-change Change to working on a different project. This clocks out of the current project, then clocks in on a new one. With a prefix ARG, consider the previous project as finished at the time of changeover. PROJECT is the name of the last project you were working on. (fn &optional ARG PROJECT)Ftimeclock-query-out Ask the user whether to clock out. This is a useful function for adding to `kill-emacs-query-functions'. (fn)Ftimeclock-reread-log Re-read the timeclock, to account for external changes. Returns the new value of `timeclock-discrepancy'. (fn)Ftimeclock-workday-remaining-string Return a string representing the amount of time left today. Display second resolution if SHOW-SECONDS is non-nil. If TODAY-ONLY is non-nil, the display will be relative only to time worked today. See `timeclock-relative' for more information about the meaning of "relative to today". (fn &optional SHOW-SECONDS TODAY-ONLY)Ftimeclock-workday-elapsed-string Return a string representing the amount of time worked today. Display seconds resolution if SHOW-SECONDS is non-nil. If RELATIVE is non-nil, the amount returned will be relative to past time worked. (fn &optional SHOW-SECONDS)Ftimeclock-when-to-leave-string Return a string representing the end of today's workday. This string is relative to the value of `timeclock-workday'. If SHOW-SECONDS is non-nil, the value printed/returned will include seconds. If TODAY-ONLY is non-nil, the value returned will be relative only to the time worked today, and not to past time. (fn &optional SHOW-SECONDS TODAY-ONLY)Flist-timers List all timers in a buffer. (fn &optional IGNORE-AUTO NONCONFIRM)Ftitdic-convert Convert a TIT dictionary of FILENAME into a Quail package. Optional argument DIRNAME if specified is the directory name under which the generated Quail package is saved. (fn FILENAME &optional DIRNAME)Fbatch-titdic-convert Run `titdic-convert' on the files remaining on the command line. Use this from the command line, with `-batch'; it won't work in an interactive Emacs. For example, invoke "emacs -batch -f batch-titdic-convert XXX.tit" to generate Quail package file "xxx.el" from TIT dictionary file "XXX.tit". To get complete usage, invoke "emacs -batch -f batch-titdic-convert -h". (fn &optional FORCE)Ftmm-menubar Text-mode emulation of looking and choosing from a menubar. See the documentation for `tmm-prompt'. X-POSITION, if non-nil, specifies a horizontal position within the menu bar; we make that menu bar item (the one at that position) the default choice. Note that \[menu-bar-open] by default drops down TTY menus; if you want it to invoke `tmm-menubar' instead, customize the variable `tty-menu-open-use-tmm' to a non-nil value. (fn &optional X-POSITION)Ftmm-menubar-mouse Text-mode emulation of looking and choosing from a menubar. This command is used when you click the mouse in the menubar on a console which has no window system but does have a mouse. See the documentation for `tmm-prompt'. (fn EVENT)Ftmm-prompt Text-mode emulation of calling the bindings in keymap. Creates a text-mode menu of possible choices. You can access the elements in the menu in two ways: *) via history mechanism from minibuffer; *) Or via completion-buffer that is automatically shown. The last alternative is currently a hack, you cannot use mouse reliably. MENU is like the MENU argument to `x-popup-menu': either a keymap or an alist of alists. DEFAULT-ITEM, if non-nil, specifies an initial default choice. Its value should be an event that has a binding in MENU. (fn MENU &optional IN-POPUP DEFAULT-ITEM)Ftodo-show Visit a todo file and display one of its categories. When invoked in Todo mode, Todo Archive mode or Todo Filtered Items mode, or when invoked anywhere else with a prefix argument, prompt for which todo file to visit. When invoked outside of a Todo mode buffer without a prefix argument, visit `todo-default-todo-file'. Subsequent invocations from outside of Todo mode revisit this file or, with option `todo-show-current-file' non-nil (the default), whichever todo file was last visited. If you call this command before you have created any todo file in the current format, and you have a todo file in old format, it will ask you whether to convert that file and show it. Otherwise, calling this command before any todo file exists prompts for a file name and an initial category (defaulting to `todo-initial-file' and `todo-initial-category'), creates both of these, visits the file and displays the category, and if option `todo-add-item-if-new-category' is non-nil (the default), prompts for the first item. The first invocation of this command on an existing todo file interacts with the option `todo-show-first': if its value is `first' (the default), show the first category in the file; if its value is `table', show the table of categories in the file; if its value is one of `top', `diary' or `regexp', show the corresponding saved top priorities, diary items, or regexp items file, if any. Subsequent invocations always show the file's current (i.e., last displayed) category. In Todo mode just the category's unfinished todo items are shown by default. The done items are hidden, but typing `\[todo-toggle-view-done-items]' displays them below the todo items. With non-nil user option `todo-show-with-done' both todo and done items are always shown on visiting a category. (fn &optional SOLICIT-FILE INTERACTIVE)Ftodo-mode Major mode for displaying, navigating and editing todo lists. \{todo-mode-map} (fn)Ftodo-archive-mode Major mode for archived todo categories. \{todo-archive-mode-map} (fn)Ftodo-filtered-items-mode Mode for displaying and reprioritizing top priority Todo. \{todo-filtered-items-mode-map} (fn)Ftoggle-tool-bar-mode-from-frame Toggle tool bar on or off, based on the status of the current frame. See `tool-bar-mode' for more information. (fn &optional ARG)Ftool-bar-add-item Add an item to the tool bar. ICON names the image, DEF is the key definition and KEY is a symbol for the fake function key in the menu keymap. Remaining arguments PROPS are additional items to add to the menu item specification. See Info node `(elisp)Tool Bar'. Items are added from left to right. ICON is the base name of a file containing the image to use. The function will first try to use low-color/ICON.xpm if `display-color-cells' is less or equal to 256, then ICON.xpm, then ICON.pbm, and finally ICON.xbm, using `find-image'. Use this function only to make bindings in the global value of `tool-bar-map'. To define items in any other map, use `tool-bar-local-item'. (fn ICON DEF KEY &rest PROPS)Ftool-bar-local-item Add an item to the tool bar in map MAP. ICON names the image, DEF is the key definition and KEY is a symbol for the fake function key in the menu keymap. Remaining arguments PROPS are additional items to add to the menu item specification. See Info node `(elisp)Tool Bar'. Items are added from left to right. ICON is the base name of a file containing the image to use. The function will first try to use low-color/ICON.xpm if `display-color-cells' is less or equal to 256, then ICON.xpm, then ICON.pbm, and finally ICON.xbm, using `find-image'. (fn ICON DEF KEY MAP &rest PROPS)Ftool-bar-add-item-from-menu Define tool bar binding for COMMAND in keymap MAP using the given ICON. This makes a binding for COMMAND in `tool-bar-map', copying its binding from the menu bar in MAP (which defaults to `global-map'), but modifies the binding by adding an image specification for ICON. It finds ICON just like `tool-bar-add-item'. PROPS are additional properties to add to the binding. MAP must contain appropriate binding for `[menu-bar]' which holds a keymap. Use this function only to make bindings in the global value of `tool-bar-map'. To define items in any other map, use `tool-bar-local-item-from-menu'. (fn COMMAND ICON &optional MAP &rest PROPS)Ftool-bar-local-item-from-menu Define local tool bar binding for COMMAND using the given ICON. This makes a binding for COMMAND in IN-MAP, copying its binding from the menu bar in FROM-MAP (which defaults to `global-map'), but modifies the binding by adding an image specification for ICON. It finds ICON just like `tool-bar-add-item'. PROPS are additional properties to add to the binding. FROM-MAP must contain appropriate binding for `[menu-bar]' which holds a keymap. (fn COMMAND ICON IN-MAP &optional FROM-MAP &rest PROPS)Ftq-create Create and return a transaction queue communicating with PROCESS. PROCESS should be a subprocess capable of sending and receiving streams of bytes. It may be a local process, or it may be connected to a tcp server on another machine. (fn PROCESS)Vtrace-buffer Trace output will by default go to that buffer.Ftrace-values Helper function to get internal values. You can call this function to add internal values in the trace buffer. (fn &rest VALUES)Ftrace-function-foreground Trace calls to function FUNCTION. With a prefix argument, also prompt for the trace buffer (default `trace-buffer'), and a Lisp expression CONTEXT. Tracing a function causes every call to that function to insert into BUFFER Lisp-style trace messages that display the function's arguments and return values. It also evaluates CONTEXT, if that is non-nil, and inserts its value too. For example, you can use this to track the current buffer, or position of point. This function creates BUFFER if it does not exist. This buffer will popup whenever FUNCTION is called. Do not use this function to trace functions that switch buffers, or do any other display-oriented stuff - use `trace-function-background' instead. To stop tracing a function, use `untrace-function' or `untrace-all'. (fn FUNCTION &optional BUFFER CONTEXT)Ftrace-function-background Trace calls to function FUNCTION, quietly. This is like `trace-function-foreground', but without popping up the output buffer or changing the window configuration. (fn FUNCTION &optional BUFFER CONTEXT)Vtramp-mode Whether Tramp is enabled. If it is set to nil, all remote file names are used literally.Vtramp-initial-file-name-regexp Value for `tramp-file-name-regexp' for autoload. It must match the initial `tramp-syntax' settings.Vtramp-file-name-regexp Regular expression matching file names handled by Tramp. This regexp should match Tramp file names but no other file names. When calling `tramp-register-file-name-handlers', the initial value is overwritten by the car of `tramp-file-name-structure'.Vtramp-autoload-file-name-regexp Regular expression matching file names handled by Tramp autoload. It must match the initial `tramp-syntax' settings. It should not match file names at root of the underlying local file system, like "/sys" or "/C:".Ftramp-autoload-file-name-handler Load Tramp file name handler, and perform OPERATION.Ftramp-register-autoload-file-name-handlers Add Tramp file name handlers to `file-name-handler-alist' during autoload.Ftramp-unload-file-name-handlers Unload Tramp file name handlers from `file-name-handler-alist'.Vtramp-completion-mode If non-nil, external packages signal that they are in file name completion.Ftramp-unload-tramp Discard Tramp from loading remote files. (fn)Ftramp-ftp-enable-ange-ftp Reenable Ange-FTP, when Tramp is unloaded. (fn)Fhelp-with-tutorial Select the Emacs learn-by-doing tutorial. If there is a tutorial version written in the language of the selected language environment, that version is used. If there's no tutorial in that language, `TUTORIAL' is selected. With ARG, you are asked to choose which language. If DONT-ASK-FOR-REVERT is non-nil the buffer is reverted without any question when restarting the tutorial. If any of the standard Emacs key bindings that are used in the tutorial have been changed then an explanatory note about this is shown in the beginning of the tutorial buffer. When the tutorial buffer is killed the content and the point position in the buffer is saved so that the tutorial may be resumed later. (fn &optional ARG DONT-ASK-FOR-REVERT)Ftai-viet-composition-function (fn FROM TO FONT-OBJECT STRING)F2C-two-columns Split current window vertically for two-column editing. \<global-map>When called the first time, associates a buffer with the current buffer in two-column minor mode (use \[describe-mode] once in the mode, for details.). It runs `2C-other-buffer-hook' in the new buffer. When called again, restores the screen layout with the current buffer first and the associated buffer to its right. (fn &optional BUFFER)F2C-associate-buffer Associate another buffer with this one in two-column minor mode. Can also be used to associate a just previously visited file, by accepting the proposed default buffer. (See \[describe-mode] .) (fn)F2C-split Split a two-column text at point, into two buffers in two-column minor mode. Point becomes the local value of `2C-window-width'. Only lines that have the ARG same preceding characters at that column get split. The ARG preceding characters without any leading whitespace become the local value for `2C-separator'. This way lines that continue across both columns remain untouched in the first buffer. This function can be used with a prototype line, to set up things. You write the first line of each column and then split that line. E.g.: First column's text sSs Second column's text \___/\ / \ 5 character Separator You type M-5 \[2C-split] with the point here. (See \[describe-mode] .) (fn ARG)Vtype-break-mode Non-nil if Type-Break mode is enabled. See the `type-break-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `type-break-mode'.Ftype-break-mode Enable or disable typing-break mode. This is a minor mode, but it is global to all buffers by default. When this mode is enabled, the user is encouraged to take typing breaks at appropriate intervals; either after a specified amount of time or when the user has exceeded a keystroke threshold. When the time arrives, the user is asked to take a break. If the user refuses at that time, Emacs will ask again in a short period of time. The idea is to give the user enough time to find a good breaking point in his or her work, but be sufficiently annoying to discourage putting typing breaks off indefinitely. A negative prefix argument disables this mode. No argument or any non-negative argument enables it. The user may enable or disable this mode by setting the variable of the same name, though setting it in that way doesn't reschedule a break or reset the keystroke counter. If the mode was previously disabled and is enabled as a consequence of calling this function, it schedules a break with `type-break-schedule' to make sure one occurs (the user can call that command to reschedule the break at any time). It also initializes the keystroke counter. The variable `type-break-interval' specifies the number of seconds to schedule between regular typing breaks. This variable doesn't directly affect the time schedule; it simply provides a default for the `type-break-schedule' command. If set, the variable `type-break-good-rest-interval' specifies the minimum amount of time which is considered a reasonable typing break. Whenever that time has elapsed, typing breaks are automatically rescheduled for later even if Emacs didn't prompt you to take one first. Also, if a break is ended before this much time has elapsed, the user will be asked whether or not to continue. A nil value for this variable prevents automatic break rescheduling, making `type-break-interval' an upper bound on the time between breaks. In this case breaks will be prompted for as usual before the upper bound if the keystroke threshold is reached. If `type-break-good-rest-interval' is nil and `type-break-good-break-interval' is set, then confirmation is required to interrupt a break before `type-break-good-break-interval' seconds have passed. This provides for an upper bound on the time between breaks together with confirmation of interruptions to these breaks. The variable `type-break-keystroke-threshold' is used to determine the thresholds at which typing breaks should be considered. You can use the command `type-break-guesstimate-keystroke-threshold' to try to approximate good values for this. There are several variables that affect how or when warning messages about imminent typing breaks are displayed. They include: `type-break-mode-line-message-mode' `type-break-time-warning-intervals' `type-break-keystroke-warning-intervals' `type-break-warning-repeat' `type-break-warning-countdown-string' `type-break-warning-countdown-string-type' There are several variables that affect if, how, and when queries to begin a typing break occur. They include: `type-break-query-mode' `type-break-query-function' `type-break-query-interval' The command `type-break-statistics' prints interesting things. Finally, a file (named `type-break-file-name') is used to store information across Emacs sessions. This provides recovery of the break status between sessions and after a crash. Manual changes to the file may result in problems. (fn &optional ARG)Ftype-break Take a typing break. During the break, a demo selected from the functions listed in `type-break-demo-functions' is run. After the typing break is finished, the next break is scheduled as per the function `type-break-schedule'. (fn)Ftype-break-statistics Print statistics about typing breaks in a temporary buffer. This includes the last time a typing break was taken, when the next one is scheduled, the keystroke thresholds and the current keystroke count, etc. (fn)Ftype-break-guesstimate-keystroke-threshold Guess values for the minimum/maximum keystroke threshold for typing breaks. If called interactively, the user is prompted for their guess as to how many words per minute they usually type. This value should not be your maximum WPM, but your average. Of course, this is harder to gauge since it can vary considerably depending on what you are doing. For example, one tends to type less when debugging a program as opposed to writing documentation. (Perhaps a separate program should be written to estimate average typing speed.) From that, this command sets the values in `type-break-keystroke-threshold' based on a fairly simple algorithm involving assumptions about the average length of words (5). For the minimum threshold, it uses about a fifth of the computed maximum threshold. When called from Lisp programs, the optional args WORDLEN and FRAC can be used to override the default assumption about average word length and the fraction of the maximum threshold to which to set the minimum threshold. FRAC should be the inverse of the fractional value; for example, a value of 2 would mean to use one half, a value of 4 would mean to use one quarter, etc. (fn WPM &optional WORDLEN FRAC)Fuce-reply-to-uce Compose a reply to unsolicited commercial email (UCE). Sets up a reply buffer addressed to: the sender, his postmaster, his abuse@ address, and the postmaster of the mail relay used. You might need to set `uce-mail-reader' before using this. (fn &optional IGNORED)Fucs-normalize-NFD-region Normalize the current region by the Unicode NFD. (fn FROM TO)Fucs-normalize-NFD-string Normalize the string STR by the Unicode NFD. (fn STR)Fucs-normalize-NFC-region Normalize the current region by the Unicode NFC. (fn FROM TO)Fucs-normalize-NFC-string Normalize the string STR by the Unicode NFC. (fn STR)Fucs-normalize-NFKD-region Normalize the current region by the Unicode NFKD. (fn FROM TO)Fucs-normalize-NFKD-string Normalize the string STR by the Unicode NFKD. (fn STR)Fucs-normalize-NFKC-region Normalize the current region by the Unicode NFKC. (fn FROM TO)Fucs-normalize-NFKC-string Normalize the string STR by the Unicode NFKC. (fn STR)Fucs-normalize-HFS-NFD-region Normalize the current region by the Unicode NFD and Mac OS's HFS Plus. (fn FROM TO)Fucs-normalize-HFS-NFD-string Normalize the string STR by the Unicode NFD and Mac OS's HFS Plus. (fn STR)Fucs-normalize-HFS-NFC-region Normalize the current region by the Unicode NFC and Mac OS's HFS Plus. (fn FROM TO)Fucs-normalize-HFS-NFC-string Normalize the string STR by the Unicode NFC and Mac OS's HFS Plus. (fn STR)Funderline-region Underline all nonblank characters in the region. Works by overstriking underscores. Called from program, takes two arguments START and END which specify the range to operate on. (fn START END)Fununderline-region Remove all underlining (overstruck underscores) in the region. Called from program, takes two arguments START and END which specify the range to operate on. (fn START END)Fbatch-unrmail Convert old-style Rmail Babyl files to mbox format. Specify the input Rmail Babyl file names as command line arguments. For each Rmail file, the corresponding output file name is made by adding `.mail' at the end. For example, invoke `emacs -batch -f batch-unrmail RMAIL'. (fn)Funrmail Convert old-style Rmail Babyl file FILE to mbox format file TO-FILE. The variable `unrmail-mbox-format' controls which mbox format to use. (fn FILE TO-FILE)Funsafep Return nil if evaluating FORM couldn't possibly do any harm. Otherwise result is a reason why FORM is unsafe. UNSAFEP-VARS is a list of symbols with local bindings. (fn FORM &optional UNSAFEP-VARS)Furl-retrieve Retrieve URL asynchronously and call CALLBACK with CBARGS when finished. URL is either a string or a parsed URL. If it is a string containing characters that are not valid in a URI, those characters are percent-encoded; see `url-encode-url'. CALLBACK is called when the object has been completely retrieved, with the current buffer containing the object, and any MIME headers associated with it. It is called as (apply CALLBACK STATUS CBARGS). STATUS is a plist representing what happened during the request, with most recent events first, or an empty list if no events have occurred. Each pair is one of: (:redirect REDIRECTED-TO) - the request was redirected to this URL (:error (ERROR-SYMBOL . DATA)) - an error occurred. The error can be signaled with (signal ERROR-SYMBOL DATA). Return the buffer URL will load into, or nil if the process has already completed (i.e. URL was a mailto URL or similar; in this case the callback is not called). The variables `url-request-data', `url-request-method' and `url-request-extra-headers' can be dynamically bound around the request; dynamic binding of other variables doesn't necessarily take effect. If SILENT, then don't message progress reports and the like. If INHIBIT-COOKIES, cookies will neither be stored nor sent to the server. If URL is a multibyte string, it will be encoded as utf-8 and URL-encoded before it's used. (fn URL CALLBACK &optional CBARGS SILENT INHIBIT-COOKIES)Furl-retrieve-synchronously Retrieve URL synchronously. Return the buffer containing the data, or nil if there are no data associated with it (the case for dired, info, or mailto URLs that need no further processing). URL is either a string or a parsed URL. If SILENT is non-nil, don't do any messaging while retrieving. If INHIBIT-COOKIES is non-nil, refuse to store cookies. If TIMEOUT is passed, it should be a number that says (in seconds) how long to wait for a response before giving up. (fn URL &optional SILENT INHIBIT-COOKIES TIMEOUT)Furl-get-authentication Return an authorization string suitable for use in the WWW-Authenticate header in an HTTP/1.0 request. URL is the url you are requesting authorization to. This can be either a string representing the URL, or the parsed representation returned by `url-generic-parse-url' REALM is the realm at a specific site we are looking for. This should be a string specifying the exact realm, or nil or the symbol `any' to specify that the filename portion of the URL should be used as the realm TYPE is the type of authentication to be returned. This is either a string representing the type (basic, digest, etc), or nil or the symbol `any' to specify that any authentication is acceptable. If requesting `any' the strongest matching authentication will be returned. If this is wrong, it's no big deal, the error from the server will specify exactly what type of auth to use PROMPT is boolean - specifies whether to ask the user for a username/password if one cannot be found in the cache (fn URL REALM TYPE PROMPT &optional ARGS)Furl-register-auth-scheme Register an HTTP authentication method. TYPE is a string or symbol specifying the name of the method. This should be the same thing you expect to get returned in an Authenticate header in HTTP/1.0 - it will be downcased. FUNCTION is the function to call to get the authorization information. This defaults to `url-?-auth', where ? is TYPE. RATING a rating between 1 and 10 of the strength of the authentication. This is used when asking for the best authentication for a specific URL. The item with the highest rating is returned. (fn TYPE &optional FUNCTION RATING)Furl-store-in-cache Store buffer BUFF in the cache. (fn &optional BUFF)Furl-is-cached Return non-nil if the URL is cached. The actual return value is the last modification time of the cache file. (fn URL)Furl-cache-extract Extract FNAM from the local disk cache. (fn FNAM)Furl-cid (fn URL)Furl-dav-supported-p Return WebDAV protocol version supported by URL. Returns nil if WebDAV is not supported. (fn URL)Furl-dav-request Perform WebDAV operation METHOD on URL. Return the parsed responses. Automatically creates an XML request body if TAG is non-nil. BODY is the XML document fragment to be enclosed by <TAG></TAG>. DEPTH is how deep the request should propagate. Default is 0, meaning it should apply only to URL. A negative number means to use `Infinity' for the depth. Not all WebDAV servers support this depth though. HEADERS is an assoc list of extra headers to send in the request. NAMESPACES is an assoc list of (NAMESPACE . EXPANSION), and these are added to the <TAG> element. The DAV=DAV: namespace is automatically added to this list, so most requests can just pass in nil. (fn URL METHOD TAG BODY &optional DEPTH HEADERS NAMESPACES)Furl-dav-vc-registered (fn URL)Furl-file Handle file: and ftp: URLs. (fn URL CALLBACK CBARGS)Furl-gateway-nslookup-host Attempt to resolve the given HOST using nslookup if possible. (fn HOST)Furl-open-stream Open a stream to HOST, possibly via a gateway. Args per `open-network-stream'. Will not make a connection if `url-gateway-unplugged' is non-nil. Might do a non-blocking connection; use `process-status' to check. Optional arg GATEWAY-METHOD specifies the gateway to be used, overriding the value of `url-gateway-method'. (fn NAME BUFFER HOST SERVICE &optional GATEWAY-METHOD)Vurl-handler-mode Non-nil if Url-Handler mode is enabled. See the `url-handler-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `url-handler-mode'.Furl-handler-mode Toggle using `url' library for URL filenames (URL Handler mode). With a prefix argument ARG, enable URL Handler mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Furl-file-handler Function called from the `file-name-handler-alist' routines. OPERATION is what needs to be done (`file-exists-p', etc). ARGS are the arguments that would have been passed to OPERATION. (fn OPERATION &rest ARGS)Furl-copy-file Copy URL to NEWNAME. Both args must be strings. Signal a `file-already-exists' error if file NEWNAME already exists, unless a third argument OK-IF-ALREADY-EXISTS is supplied and non-nil. A number as third arg means request confirmation if NEWNAME already exists. This is what happens in interactive use with M-x. Fourth arg KEEP-TIME non-nil means give the new file the same last-modified time as the old one. (This works on only some systems.) Args PRESERVE-UID-GID and PRESERVE-PERMISSIONS are ignored. A prefix arg makes KEEP-TIME non-nil. (fn URL NEWNAME &optional OK-IF-ALREADY-EXISTS KEEP-TIME PRESERVE-UID-GID PRESERVE-PERMISSIONS)Furl-file-local-copy Copy URL into a temporary file on this machine. Returns the name of the local copy, or nil, if FILE is directly accessible. (fn URL &rest IGNORED)Furl-insert-buffer-contents Insert the contents of BUFFER into current buffer. This is like `url-insert', but also decodes the current buffer as if it had been inserted from a file named URL. (fn BUFFER URL &optional VISIT BEG END REPLACE)Furl-insert-file-contents (fn URL &optional VISIT BEG END REPLACE)Furl-irc (fn URL)Furl-ldap Perform an LDAP search specified by URL. The return value is a buffer displaying the search results in HTML. URL can be a URL string, or a URL record of the type returned by `url-generic-parse-url'. (fn URL)Furl-mail (fn &rest ARGS)Furl-mailto Handle the mailto: URL syntax. (fn URL)Furl-man Fetch a Unix manual page URL. (fn URL)Furl-info Fetch a GNU Info URL. (fn URL)Furl-generic-emulator-loader (fn URL)Furl-data Fetch a data URL (RFC 2397). (fn URL)Furl-news (fn URL)Furl-snews (fn URL)FisPlainHostName (fn HOST)FdnsDomainIs (fn HOST DOM)FdnsResolve (fn HOST)FisResolvable (fn HOST)FisInNet (fn IP NET MASK)Furl-ns-prefs (fn &optional FILE)Furl-ns-user-pref (fn KEY &optional DEFAULT)Furl-recreate-url Recreate a URL string from the parsed URLOBJ. (fn URLOBJ)Furl-generic-parse-url Return an URL-struct of the parts of URL. The CL-style struct contains the following fields: TYPE is the URI scheme (string or nil). USER is the user name (string or nil). PASSWORD is the password (string [deprecated] or nil). HOST is the host (a registered name, IP literal in square brackets, or IPv4 address in dotted-decimal form). PORTSPEC is the specified port (a number), or nil. FILENAME is the path AND the query component of the URI. TARGET is the fragment identifier component (used to refer to a subordinate resource, e.g. a part of a webpage). ATTRIBUTES is nil; this slot originally stored the attribute and value alists for IMAP URIs, but this feature was removed since it conflicts with RFC 3986. FULLNESS is non-nil if the hierarchical sequence component of the URL starts with two slashes, "//". The parser follows RFC 3986, except that it also tries to handle URIs that are not fully specified (e.g. lacking TYPE), and it does not check for or perform %-encoding. Here is an example. The URL foo://bob:pass@example.com:42/a/b/c.dtb?type=animal&name=narwhal#nose parses to TYPE = "foo" USER = "bob" PASSWORD = "pass" HOST = "example.com" PORTSPEC = 42 FILENAME = "/a/b/c.dtb?type=animal&name=narwhal" TARGET = "nose" ATTRIBUTES = nil FULLNESS = t (fn URL)Furl-setup-privacy-info Setup variables that expose info about you and your system. (fn)Furl-queue-retrieve Retrieve URL asynchronously and call CALLBACK with CBARGS when finished. This is like `url-retrieve' (which see for details of the arguments), but with limits on the degree of parallelism. The variable `url-queue-parallel-processes' sets the number of concurrent processes. The variable `url-queue-timeout' sets a timeout. (fn URL CALLBACK &optional CBARGS SILENT INHIBIT-COOKIES)Vurl-tramp-protocols List of URL protocols for which the work is handled by Tramp. They must also be covered by `url-handler-regexp'.Furl-tramp-file-handler Function called from the `file-name-handler-alist' routines. OPERATION is what needs to be done. ARGS are the arguments that would have been passed to OPERATION. (fn OPERATION &rest ARGS)Vurl-debug What types of debug messages from the URL library to show. Debug messages are logged to the *URL-DEBUG* buffer. If t, all messages will be logged. If a number, all messages will be logged, as well shown via `message'. If a list, it is a list of the types of messages to be logged.Furl-debug (fn TAG &rest ARGS)Furl-parse-args (fn STR &optional NODOWNCASE)Furl-insert-entities-in-string Convert HTML markup-start characters to entity references in STRING. Also replaces the " character, so that the result may be safely used as an attribute value in a tag. Returns a new string with the result of the conversion. Replaces these characters as follows: & ==> & < ==> < > ==> > " ==> " (fn STRING)Furl-normalize-url Return a "normalized" version of URL. Strips out default port numbers, etc. (fn URL)Furl-lazy-message Just like `message', but is a no-op if called more than once a second. Will not do anything if `url-show-status' is nil. (fn &rest ARGS)Furl-get-normalized-date Return a date string that most HTTP servers can understand. (fn &optional SPECIFIED-TIME)Furl-eat-trailing-space Remove spaces/tabs at the end of a string. (fn X)Furl-strip-leading-spaces Remove spaces at the front of a string. (fn X)Furl-display-percentage (fn FMT PERC &rest ARGS)Furl-percentage (fn X Y)Furl-file-directory Return the directory part of FILE, for a URL. (fn FILE)Furl-file-nondirectory Return the nondirectory part of FILE, for a URL. (fn FILE)Furl-parse-query-string (fn QUERY &optional DOWNCASE ALLOW-NEWLINES)Furl-build-query-string Build a query-string. Given a QUERY in the form: ((key1 val1) (key2 val2) (key3 val1 val2) (key4) (key5 "")) (This is the same format as produced by `url-parse-query-string') This will return a string "key1=val1&key2=val2&key3=val1&key3=val2&key4&key5". Keys may be strings or symbols; if they are symbols, the symbol name will be used. When SEMICOLONS is given, the separator will be ";". When KEEP-EMPTY is given, empty values will show as "key=" instead of just "key" as in the example above. (fn QUERY &optional SEMICOLONS KEEP-EMPTY)Furl-unhex-string Remove %XX embedded spaces, etc in a URL. If optional second argument ALLOW-NEWLINES is non-nil, then allow the decoding of carriage returns and line feeds in the string, which is normally forbidden in URL encoding. (fn STR &optional ALLOW-NEWLINES)Furl-hexify-string URI-encode STRING and return the result. If STRING is multibyte, it is first converted to a utf-8 byte string. Each byte corresponding to an allowed character is left as-is, while all other bytes are converted to a three-character string: "%" followed by two upper-case hex digits. The allowed characters are specified by ALLOWED-CHARS. If this argument is nil, the list `url-unreserved-chars' determines the allowed characters. Otherwise, ALLOWED-CHARS should be a vector whose Nth element is non-nil if character N is allowed. (fn STRING &optional ALLOWED-CHARS)Furl-encode-url Return a properly URI-encoded version of URL. This function also performs URI normalization, e.g. converting the scheme to lowercase if it is uppercase. Apart from normalization, if URL is already URI-encoded, this function should return it unchanged. (fn URL)Furl-file-extension Return the filename extension of FNAME. If optional argument X is t, then return the basename of the file with the extension stripped off. (fn FNAME &optional X)Furl-truncate-url-for-viewing Return a shortened version of URL that is WIDTH characters wide or less. WIDTH defaults to the current frame width. (fn URL &optional WIDTH)Furl-view-url View the current document's URL. Optional argument NO-SHOW means just return the URL, don't show it in the minibuffer. This uses `url-current-object', set locally to the buffer. (fn &optional NO-SHOW)Fask-user-about-lock Ask user what to do when he wants to edit FILE but it is locked by OPPONENT. This function has a choice of three things to do: do (signal \='file-locked (list FILE OPPONENT)) to refrain from editing the file return t (grab the lock on the file) return nil (edit the file even though it is locked). You can redefine this function to choose among those three alternatives in any way you like. (fn FILE OPPONENT)Fuserlock--ask-user-about-supersession-threat (fn FN)Fask-user-about-supersession-threat Ask a user who is about to modify an obsolete buffer what to do. This function has two choices: it can return, in which case the modification of the buffer will proceed, or it can (signal \='file-supersession (file)), in which case the proposed buffer modification will not be made. You can rewrite this to use any criterion you like to choose which one to do. The buffer in question is current when this function is called. (fn FN)Futf-7-post-read-conversion (fn LEN)Futf-7-imap-post-read-conversion (fn LEN)Futf-7-pre-write-conversion (fn FROM TO)Futf-7-imap-pre-write-conversion (fn FROM TO)Futf7-encode Encode UTF-7 STRING. Use IMAP modification if FOR-IMAP is non-nil. (fn STRING &optional FOR-IMAP)Fuudecode-decode-region-external Uudecode region between START and END using external program. If FILE-NAME is non-nil, save the result to FILE-NAME. The program used is specified by `uudecode-decoder-program'. (fn START END &optional FILE-NAME)Fuudecode-decode-region-internal Uudecode region between START and END without using an external program. If FILE-NAME is non-nil, save the result to FILE-NAME. (fn START END &optional FILE-NAME)Fuudecode-decode-region Uudecode region between START and END. If FILE-NAME is non-nil, save the result to FILE-NAME. (fn START END &optional FILE-NAME)Vvc-checkout-hook Normal hook (list of functions) run after checking out a file. See `run-hooks'.Vvc-checkin-hook Normal hook (list of functions) run after commit or file checkin. See also `log-edit-done-hook'.Vvc-before-checkin-hook Normal hook (list of functions) run before a commit or a file checkin. See `run-hooks'.Fvc-responsible-backend Return the name of a backend system that is responsible for FILE. If FILE is already registered, return the backend of FILE. If FILE is not registered, then the first backend in `vc-handled-backends' that declares itself responsible for FILE is returned. Note that if FILE is a symbolic link, it will not be resolved -- the responsible backend system for the symbolic link itself will be reported. (fn FILE)Fvc-next-action Do the next logical version control operation on the current fileset. This requires that all files in the current VC fileset be in the same state. If not, signal an error. For merging-based version control systems: If every file in the VC fileset is not registered for version control, register the fileset (but don't commit). If every work file in the VC fileset is added or changed, pop up a *vc-log* buffer to commit the fileset. For a centralized version control system, if any work file in the VC fileset is out of date, offer to update the fileset. For old-style locking-based version control systems, like RCS: If every file is not registered, register the file(s). If every file is registered and unlocked, check out (lock) the file(s) for editing. If every file is locked by you and has changes, pop up a *vc-log* buffer to check in the changes. Leave a read-only copy of each changed file after checking in. If every file is locked by you and unchanged, unlock them. If every file is locked by someone else, offer to steal the lock. (fn VERBOSE)Fvc-register Register into a version control system. If VC-FILESET is given, register the files in that fileset. Otherwise register the current file. If COMMENT is present, use that as an initial comment. The version control system to use is found by cycling through the list `vc-handled-backends'. The first backend in that list which declares itself responsible for the file (usually because other files in that directory are already registered under that backend) will be used to register the file. If no backend declares itself responsible, the first backend that could register the file is used. (fn &optional VC-FILESET COMMENT)Fvc-version-diff Report diffs between revisions REV1 and REV2 in the repository history. This compares two revisions of the current fileset. If REV1 is nil, it defaults to the current revision, i.e. revision of the last commit. If REV2 is nil, it defaults to the work tree, i.e. the current state of each file in the fileset. (fn FILES REV1 REV2)Fvc-diff Display diffs between file revisions. Normally this compares the currently selected fileset with their working revisions. With a prefix argument HISTORIC, it reads two revision designators specifying which revisions to compare. The optional argument NOT-URGENT non-nil means it is ok to say no to saving the buffer. (fn &optional HISTORIC NOT-URGENT)Fvc-version-ediff Show differences between REV1 and REV2 of FILES using ediff. This compares two revisions of the files in FILES. Currently, only a single file's revisions can be compared, i.e. FILES can specify only one file name. If REV1 is nil, it defaults to the current revision, i.e. revision of the last commit. If REV2 is nil, it defaults to the work tree, i.e. the current state of each file in FILES. (fn FILES REV1 REV2)Fvc-ediff Display diffs between file revisions using ediff. Normally this compares the currently selected fileset with their working revisions. With a prefix argument HISTORIC, it reads two revision designators specifying which revisions to compare. The optional argument NOT-URGENT non-nil means it is ok to say no to saving the buffer. (fn HISTORIC &optional NOT-URGENT)Fvc-root-diff Display diffs between VC-controlled whole tree revisions. Normally, this compares the tree corresponding to the current fileset with the working revision. With a prefix argument HISTORIC, prompt for two revision designators specifying which revisions to compare. The optional argument NOT-URGENT non-nil means it is ok to say no to saving the buffer. (fn HISTORIC &optional NOT-URGENT)Fvc-root-dir Return the root directory for the current VC tree. Return nil if the root directory cannot be identified. (fn)Fvc-revision-other-window Visit revision REV of the current file in another window. If the current file is named `F', the revision is named `F.~REV~'. If `F.~REV~' already exists, use it instead of checking it out again. (fn REV)Fvc-insert-headers Insert headers into a file for use with a version control system. Headers desired are inserted at point, and are pulled from the variable `vc-BACKEND-header'. (fn)Fvc-merge Perform a version control merge operation. You must be visiting a version controlled file, or in a `vc-dir' buffer. On a distributed version control system, this runs a "merge" operation to incorporate changes from another branch onto the current branch, prompting for an argument list. On a non-distributed version control system, this merges changes between two revisions into the current fileset. This asks for two revisions to merge from in the minibuffer. If the first revision is a branch number, then merge all changes from that branch. If the first revision is empty, merge the most recent changes from the current branch. (fn)Fvc-message-unresolved-conflicts Display a message indicating unresolved conflicts in FILENAME. (fn FILENAME)Fvc-create-tag Descending recursively from DIR, make a tag called NAME. For each registered file, the working revision becomes part of the named configuration. If the prefix argument BRANCHP is given, the tag is made as a new branch and the files are checked out in that new branch. (fn DIR NAME BRANCHP)Fvc-retrieve-tag For each file in or below DIR, retrieve their tagged version NAME. NAME can name a branch, in which case this command will switch to the named branch in the directory DIR. Interactively, prompt for DIR only for VCS that works at file level; otherwise use the repository root of the current buffer. If NAME is empty, it refers to the latest revisions of the current branch. If locking is used for the files in DIR, then there must not be any locked files at or below DIR (but if NAME is empty, locked files are allowed and simply skipped). (fn DIR NAME)Fvc-print-log List the change log of the current fileset in a window. If WORKING-REVISION is non-nil, leave point at that revision. If LIMIT is non-nil, it should be a number specifying the maximum number of revisions to show; the default is `vc-log-show-limit'. When called interactively with a prefix argument, prompt for WORKING-REVISION and LIMIT. (fn &optional WORKING-REVISION LIMIT)Fvc-print-root-log List the change log for the current VC controlled tree in a window. If LIMIT is non-nil, it should be a number specifying the maximum number of revisions to show; the default is `vc-log-show-limit'. When called interactively with a prefix argument, prompt for LIMIT. (fn &optional LIMIT)Fvc-print-branch-log Show the change log for BRANCH in a window. (fn BRANCH)Fvc-log-incoming Show a log of changes that will be received with a pull operation from REMOTE-LOCATION. When called interactively with a prefix argument, prompt for REMOTE-LOCATION. (fn &optional REMOTE-LOCATION)Fvc-log-outgoing Show a log of changes that will be sent with a push operation to REMOTE-LOCATION. When called interactively with a prefix argument, prompt for REMOTE-LOCATION. (fn &optional REMOTE-LOCATION)Fvc-region-history Show the history of the region between FROM and TO. If called interactively, show the history between point and mark. (fn FROM TO)Fvc-revert Revert working copies of the selected fileset to their repository contents. This asks for confirmation if the buffer contents are not identical to the working revision (except for keyword expansion). (fn)Fvc-pull Update the current fileset or branch. You must be visiting a version controlled file, or in a `vc-dir' buffer. On a distributed version control system, this runs a "pull" operation to update the current branch, prompting for an argument list if required. Optional prefix ARG forces a prompt for the VCS command to run. On a non-distributed version control system, update the current fileset to the tip revisions. For each unchanged and unlocked file, this simply replaces the work file with the latest revision on its branch. If the file contains changes, any changes in the tip revision are merged into the working file. (fn &optional ARG)Fvc-push Push the current branch. You must be visiting a version controlled file, or in a `vc-dir' buffer. On a distributed version control system, this runs a "push" operation on the current branch, prompting for the precise command if required. Optional prefix ARG non-nil forces a prompt for the VCS command to run. On a non-distributed version control system, this signals an error. It also signals an error in a Bazaar bound branch. (fn &optional ARG)Fvc-switch-backend Make BACKEND the current version control system for FILE. FILE must already be registered in BACKEND. The change is not permanent, only for the current session. This function only changes VC's perspective on FILE, it does not register or unregister it. By default, this command cycles through the registered backends. To get a prompt, use a prefix argument. (fn FILE BACKEND)Fvc-transfer-file Transfer FILE to another version control system NEW-BACKEND. If NEW-BACKEND has a higher precedence than FILE's current backend (i.e. it comes earlier in `vc-handled-backends'), then register FILE in NEW-BACKEND, using the revision number from the current backend as the base level. If NEW-BACKEND has a lower precedence than the current backend, then commit all changes that were made under the current backend to NEW-BACKEND, and unregister FILE from the current backend. (If FILE is not yet registered under NEW-BACKEND, register it.) (fn FILE NEW-BACKEND)Fvc-delete-file Delete file and mark it as such in the version control system. If called interactively, read FILE, defaulting to the current buffer's file name if it's under version control. (fn FILE)Fvc-rename-file Rename file OLD to NEW in both work area and repository. If called interactively, read OLD and NEW, defaulting OLD to the current buffer's file name if it's under version control. (fn OLD NEW)Fvc-update-change-log Find change log file and add entries from recent version control logs. Normally, find log entries for all registered files in the default directory. With prefix arg of \[universal-argument], only find log entries for the current buffer's file. With any numeric prefix arg, find log entries for all currently visited files that are under version control. This puts all the entries in the log for the default directory, which may not be appropriate. From a program, any ARGS are assumed to be filenames for which log entries should be gathered. (fn &rest ARGS)Fvc-branch-part Return the branch part of a revision number REV. (fn REV)Fvc-annotate Display the edit history of the current FILE using colors. This command creates a buffer that shows, for each line of the current file, when it was last edited and by whom. Additionally, colors are used to show the age of each line--blue means oldest, red means youngest, and intermediate colors indicate intermediate ages. By default, the time scale stretches back one year into the past; everything that is older than that is shown in blue. With a prefix argument, this command asks two questions in the minibuffer. First, you may enter a revision number REV; then the buffer displays and annotates that revision instead of the working revision (type RET in the minibuffer to leave that default unchanged). Then, you are prompted for the time span in days which the color range should cover. For example, a time span of 20 days means that changes over the past 20 days are shown in red to blue, according to their age, and everything that is older than that is shown in blue. If MOVE-POINT-TO is given, move the point to that line. If VC-BK is given used that VC backend. Customization variables: `vc-annotate-menu-elements' customizes the menu elements of the mode-specific menu. `vc-annotate-color-map' and `vc-annotate-very-old-color' define the mapping of time to colors. `vc-annotate-background' specifies the background color. `vc-annotate-background-mode' specifies whether the color map should be applied to the background or to the foreground. (fn FILE REV &optional DISPLAY-MODE BUF MOVE-POINT-TO VC-BK)Vvc-bzr-admin-dirname Name of the directory containing Bzr repository status files.Vvc-bzr-admin-checkout-format-file Name of the format file in a .bzr directory.Fvc-dir Show the VC status for "interesting" files in and below DIR. This allows you to mark files and perform VC operations on them. The list omits files which are up to date, with no changes in your copy or the repository, if there is nothing in particular to say about them. Preparing the list of file status takes time; when the buffer first appears, it has only the first few lines of summary information. The file lines appear later. Optional second argument BACKEND specifies the VC backend to use. Interactively, a prefix argument means to ask for the backend. These are the commands available for use in the file status buffer: \{vc-dir-mode-map} (fn DIR &optional BACKEND)Fvc-do-command Execute a slave command, notifying user and checking for errors. Output from COMMAND goes to BUFFER, or the current buffer if BUFFER is t. If the destination buffer is not already current, set it up properly and erase it. The command is considered successful if its exit status does not exceed OKSTATUS (if OKSTATUS is nil, that means to ignore error status, if it is `async', that means not to wait for termination of the subprocess; if it is t it means to ignore all execution errors). FILE-OR-LIST is the name of a working file; it may be a list of files or be nil (to execute commands that don't expect a file name or set of files). If an optional list of FLAGS is present, that is inserted into the command line before the filename. Return the return value of the slave command in the synchronous case, and the process object in the asynchronous case. (fn BUFFER OKSTATUS COMMAND FILE-OR-LIST &rest FLAGS)Vvc-mtn-admin-dir Name of the monotone directory.Vvc-mtn-admin-format Name of the monotone directory's format file.Vvc-rcs-master-templates Where to look for RCS master files. For a description of possible values, see `vc-check-master-templates'.Vvc-sccs-master-templates Where to look for SCCS master files. For a description of possible values, see `vc-check-master-templates'.Fvc-sccs-search-project-dir Return the name of a master file in the SCCS project directory. Does not check whether the file exists but returns nil if it does not find any project directory.Vvc-src-master-templates Where to look for SRC master files. For a description of possible values, see `vc-check-master-templates'.Fvera-mode Major mode for editing Vera code. Usage: ------ INDENTATION: Typing `TAB' at the beginning of a line indents the line. The amount of indentation is specified by option `vera-basic-offset'. Indentation can be done for an entire region (`M-C-\') or buffer (menu). `TAB' always indents the line if option `vera-intelligent-tab' is nil. WORD/COMMAND COMPLETION: Typing `TAB' after a (not completed) word looks for a word in the buffer or a Vera keyword that starts alike, inserts it and adjusts case. Re-typing `TAB' toggles through alternative word completions. Typing `TAB' after a non-word character inserts a tabulator stop (if not at the beginning of a line). `M-TAB' always inserts a tabulator stop. COMMENTS: `C-c C-c' comments out a region if not commented out, and uncomments a region if already commented out. HIGHLIGHTING (fontification): Vera keywords, predefined types and constants, function names, declaration names, directives, as well as comments and strings are highlighted using different colors. VERA VERSION: OpenVera 1.4 and Vera version 6.2.8. Maintenance: ------------ To submit a bug report, use the corresponding menu entry within Vera Mode. Add a description of the problem and include a reproducible test case. Feel free to send questions and enhancement requests to <reto@gnu.org>. Official distribution is at URL `http://www.iis.ee.ethz.ch/~zimmi/emacs/vera-mode.html' The Vera Mode Maintainer Reto Zimmermann <reto@gnu.org> Key bindings: ------------- \{vera-mode-map} (fn)Fverilog-mode Major mode for editing Verilog code. \<verilog-mode-map> See \[describe-function] verilog-auto (\[verilog-auto]) for details on how AUTOs can improve coding efficiency. Use \[verilog-faq] for a pointer to frequently asked questions. NEWLINE, TAB indents for Verilog code. Delete converts tabs to spaces as it moves back. Supports highlighting. Turning on Verilog mode calls the value of the variable `verilog-mode-hook' with no args, if that value is non-nil. Variables controlling indentation/edit style: variable `verilog-indent-level' (default 3) Indentation of Verilog statements with respect to containing block. `verilog-indent-level-module' (default 3) Absolute indentation of Module level Verilog statements. Set to 0 to get initial and always statements lined up on the left side of your screen. `verilog-indent-level-declaration' (default 3) Indentation of declarations with respect to containing block. Set to 0 to get them list right under containing block. `verilog-indent-level-behavioral' (default 3) Indentation of first begin in a task or function block Set to 0 to get such code to lined up underneath the task or function keyword. `verilog-indent-level-directive' (default 1) Indentation of \=`ifdef/\=`endif blocks. `verilog-cexp-indent' (default 1) Indentation of Verilog statements broken across lines i.e.: if (a) begin `verilog-case-indent' (default 2) Indentation for case statements. `verilog-auto-newline' (default nil) Non-nil means automatically newline after semicolons and the punctuation mark after an end. `verilog-auto-indent-on-newline' (default t) Non-nil means automatically indent line after newline. `verilog-tab-always-indent' (default t) Non-nil means TAB in Verilog mode should always reindent the current line, regardless of where in the line point is when the TAB command is used. `verilog-indent-begin-after-if' (default t) Non-nil means to indent begin statements following a preceding if, else, while, for and repeat statements, if any. Otherwise, the begin is lined up with the preceding token. If t, you get: if (a) begin // amount of indent based on `verilog-cexp-indent' otherwise you get: if (a) begin `verilog-auto-endcomments' (default t) Non-nil means a comment /* ... */ is set after the ends which ends cases, tasks, functions and modules. The type and name of the object will be set between the braces. `verilog-minimum-comment-distance' (default 10) Minimum distance (in lines) between begin and end required before a comment will be inserted. Setting this variable to zero results in every end acquiring a comment; the default avoids too many redundant comments in tight quarters. `verilog-auto-lineup' (default `declarations') List of contexts where auto lineup of code should be done. Variables controlling other actions: `verilog-linter' (default `surelint') Unix program to call to run the lint checker. This is the default command for \[compile-command] and \[verilog-auto-save-compile]. See \[customize] for the complete list of variables. AUTO expansion functions are, in part: \[verilog-auto] Expand AUTO statements. \[verilog-delete-auto] Remove the AUTOs. \[verilog-inject-auto] Insert AUTOs for the first time. Some other functions are: \[completion-at-point] Complete word with appropriate possibilities. \[verilog-mark-defun] Mark function. \[verilog-beg-of-defun] Move to beginning of current function. \[verilog-end-of-defun] Move to end of current function. \[verilog-label-be] Label matching begin ... end, fork ... join, etc statements. \[verilog-comment-region] Put marked area in a comment. \[verilog-uncomment-region] Uncomment an area commented with \[verilog-comment-region]. \[verilog-insert-block] Insert begin ... end. \[verilog-star-comment] Insert /* ... */. \[verilog-sk-always] Insert an always @(AS) begin .. end block. \[verilog-sk-begin] Insert a begin .. end block. \[verilog-sk-case] Insert a case block, prompting for details. \[verilog-sk-for] Insert a for (...) begin .. end block, prompting for details. \[verilog-sk-generate] Insert a generate .. endgenerate block. \[verilog-sk-header] Insert a header block at the top of file. \[verilog-sk-initial] Insert an initial begin .. end block. \[verilog-sk-fork] Insert a fork begin .. end .. join block. \[verilog-sk-module] Insert a module .. (/*AUTOARG*/);.. endmodule block. \[verilog-sk-ovm-class] Insert an OVM Class block. \[verilog-sk-uvm-object] Insert an UVM Object block. \[verilog-sk-uvm-component] Insert an UVM Component block. \[verilog-sk-primitive] Insert a primitive .. (.. );.. endprimitive block. \[verilog-sk-repeat] Insert a repeat (..) begin .. end block. \[verilog-sk-specify] Insert a specify .. endspecify block. \[verilog-sk-task] Insert a task .. begin .. end endtask block. \[verilog-sk-while] Insert a while (...) begin .. end block, prompting for details. \[verilog-sk-casex] Insert a casex (...) item: begin.. end endcase block, prompting for details. \[verilog-sk-casez] Insert a casez (...) item: begin.. end endcase block, prompting for details. \[verilog-sk-if] Insert an if (..) begin .. end block. \[verilog-sk-else-if] Insert an else if (..) begin .. end block. \[verilog-sk-comment] Insert a comment block. \[verilog-sk-assign] Insert an assign .. = ..; statement. \[verilog-sk-function] Insert a function .. begin .. end endfunction block. \[verilog-sk-input] Insert an input declaration, prompting for details. \[verilog-sk-output] Insert an output declaration, prompting for details. \[verilog-sk-state-machine] Insert a state machine definition, prompting for details. \[verilog-sk-inout] Insert an inout declaration, prompting for details. \[verilog-sk-wire] Insert a wire declaration, prompting for details. \[verilog-sk-reg] Insert a register declaration, prompting for details. \[verilog-sk-define-signal] Define signal under point as a register at the top of the module. All key bindings can be seen in a Verilog-buffer with \[describe-bindings]. Key bindings specific to `verilog-mode-map' are: \{verilog-mode-map} (fn)Fvhdl-mode Major mode for editing VHDL code. Usage: ------ TEMPLATE INSERTION (electrification): After typing a VHDL keyword and entering `SPC', you are prompted for arguments while a template is generated for that VHDL construct. Typing `RET' or `C-g' at the first (mandatory) prompt aborts the current template generation. Optional arguments are indicated by square brackets and removed if the queried string is left empty. Prompts for mandatory arguments remain in the code if the queried string is left empty. They can be queried again by `C-c C-t C-q'. Enabled electrification is indicated by `/e' in the mode line. Typing `M-SPC' after a keyword inserts a space without calling the template generator. Automatic template generation (i.e. electrification) can be disabled (enabled) by typing `C-c C-m C-e' or by setting option `vhdl-electric-mode' (see OPTIONS). Template generators can be invoked from the VHDL menu, by key bindings, by typing `C-c C-i C-c' and choosing a construct, or by typing the keyword (i.e. first word of menu entry not in parenthesis) and `SPC'. The following abbreviations can also be used: arch, attr, cond, conf, comp, cons, func, inst, pack, sig, var. Template styles can be customized in customization group `vhdl-template' (see OPTIONS). HEADER INSERTION: A file header can be inserted by `C-c C-t C-h'. A file footer (template at the end of the file) can be inserted by `C-c C-t C-f'. See customization group `vhdl-header'. STUTTERING: Double striking of some keys inserts cumbersome VHDL syntax elements. Stuttering can be disabled (enabled) by typing `C-c C-m C-s' or by option `vhdl-stutter-mode'. Enabled stuttering is indicated by `/s' in the mode line. The stuttering keys and their effects are: ;; --> " : " [ --> ( -- --> comment ;;; --> " := " [[ --> [ --CR --> comment-out code .. --> " => " ] --> ) --- --> horizontal line ,, --> " <= " ]] --> ] ---- --> display comment == --> " == " \='\=' --> \" WORD COMPLETION: Typing `TAB' after a (not completed) word looks for a VHDL keyword or a word in the buffer that starts alike, inserts it and adjusts case. Re-typing `TAB' toggles through alternative word completions. This also works in the minibuffer (i.e. in template generator prompts). Typing `TAB' after `(' looks for and inserts complete parenthesized expressions (e.g. for array index ranges). All keywords as well as standard types and subprograms of VHDL have predefined abbreviations (e.g., type "std" and `TAB' will toggle through all standard types beginning with "std"). Typing `TAB' after a non-word character indents the line if at the beginning of a line (i.e. no preceding non-blank characters), and inserts a tabulator stop otherwise. `M-TAB' always inserts a tabulator stop. COMMENTS: `--' puts a single comment. `---' draws a horizontal line for separating code segments. `----' inserts a display comment, i.e. two horizontal lines with a comment in between. `--CR' comments out code on that line. Re-hitting CR comments out following lines. `C-c C-c' comments out a region if not commented out, uncomments a region if already commented out. Option `comment-style' defines where the comment characters should be placed (beginning of line, indent, etc.). You are prompted for comments after object definitions (i.e. signals, variables, constants, ports) and after subprogram and process specifications if option `vhdl-prompt-for-comments' is non-nil. Comments are automatically inserted as additional labels (e.g. after begin statements) and as help comments if `vhdl-self-insert-comments' is non-nil. Inline comments (i.e. comments after a piece of code on the same line) are indented at least to `vhdl-inline-comment-column'. Comments go at maximum to `vhdl-end-comment-column'. `RET' after a space in a comment will open a new comment line. Typing beyond `vhdl-end-comment-column' in a comment automatically opens a new comment line. `M-q' re-fills multi-line comments. INDENTATION: `TAB' indents a line if at the beginning of the line. The amount of indentation is specified by option `vhdl-basic-offset'. `C-c C-i C-l' always indents the current line (is bound to `TAB' if option `vhdl-intelligent-tab' is nil). If a region is active, `TAB' indents the entire region. Indentation can be done for a group of lines (`C-c C-i C-g'), a region (`M-C-\') or the entire buffer (menu). Argument and port lists are indented normally (nil) or relative to the opening parenthesis (non-nil) according to option `vhdl-argument-list-indent'. If option `vhdl-indent-tabs-mode' is nil, spaces are used instead of tabs. `\[tabify]' and `\[untabify]' allow the conversion of spaces to tabs and vice versa. Syntax-based indentation can be very slow in large files. Option `vhdl-indent-syntax-based' allows you to use faster but simpler indentation. Option `vhdl-indent-comment-like-next-code-line' controls whether comment lines are indented like the preceding or like the following code line. ALIGNMENT: The alignment functions align operators, keywords, and inline comments to beautify the code. `C-c C-a C-a' aligns a group of consecutive lines separated by blank lines, `C-c C-a C-i' a block of lines with same indent. `C-c C-a C-l' aligns all lines belonging to a list enclosed by a pair of parentheses (e.g. port clause/map, argument list), and `C-c C-a C-d' all lines within the declarative part of a design unit. `C-c C-a M-a' aligns an entire region. `C-c C-a C-c' aligns inline comments for a group of lines, and `C-c C-a M-c' for a region. If option `vhdl-align-groups' is non-nil, groups of code lines separated by special lines (see option `vhdl-align-group-separate') are aligned individually. If option `vhdl-align-same-indent' is non-nil, blocks of lines with same indent are aligned separately. Some templates are automatically aligned after generation if option `vhdl-auto-align' is non-nil. Alignment tries to align inline comments at `vhdl-inline-comment-column' and tries inline comment not to exceed `vhdl-end-comment-column'. `C-c C-x M-w' fixes up whitespace in a region. That is, operator symbols are surrounded by one space, and multiple spaces are eliminated. CODE FILLING: Code filling allows you to condense code (e.g. sensitivity lists or port maps) by removing comments and newlines and re-wrapping so that all lines are maximally filled (block filling). `C-c C-f C-f' fills a list enclosed by parenthesis, `C-c C-f C-g' a group of lines separated by blank lines, `C-c C-f C-i' a block of lines with same indent, and `C-c C-f M-f' an entire region. CODE BEAUTIFICATION: `C-c M-b' and `C-c C-b' beautify the code of a region or of the entire buffer respectively. This includes indentation, alignment, and case fixing. Code beautification can also be run non-interactively using the command: emacs -batch -l ~/.emacs filename.vhd -f vhdl-beautify-buffer PORT TRANSLATION: Generic and port clauses from entity or component declarations can be copied (`C-c C-p C-w') and pasted as entity and component declarations, as component instantiations and corresponding internal constants and signals, as a generic map with constants as actual generics, and as internal signal initializations (menu). To include formals in component instantiations, see option `vhdl-association-list-with-formals'. To include comments in pasting, see options `vhdl-include-...-comments'. A clause with several generic/port names on the same line can be flattened (`C-c C-p C-f') so that only one name per line exists. The direction of ports can be reversed (`C-c C-p C-r'), i.e., inputs become outputs and vice versa, which can be useful in testbenches. (This reversion is done on the internal data structure and is only reflected in subsequent paste operations.) Names for actual ports, instances, testbenches, and design-under-test instances can be derived from existing names according to options `vhdl-...-name'. See customization group `vhdl-port'. SUBPROGRAM TRANSLATION: Similar functionality exists for copying/pasting the interface of subprograms (function/procedure). A subprogram interface can be copied and then pasted as a subprogram declaration, body or call (uses association list with formals). TESTBENCH GENERATION: A copied port can also be pasted as a testbench. The generated testbench includes an entity, an architecture, and an optional configuration. The architecture contains the component declaration and instantiation of the DUT as well as internal constant and signal declarations. Additional user-defined templates can be inserted. The names used for entity/architecture/configuration/DUT as well as the file structure to be generated can be customized. See customization group `vhdl-testbench'. KEY BINDINGS: Key bindings (`C-c ...') exist for most commands (see in menu). VHDL MENU: All commands can be found in the VHDL menu including their key bindings. FILE BROWSER: The speedbar allows browsing of directories and file contents. It can be accessed from the VHDL menu and is automatically opened if option `vhdl-speedbar-auto-open' is non-nil. In speedbar, open files and directories with `mouse-2' on the name and browse/rescan their contents with `mouse-2'/`S-mouse-2' on the `+'. DESIGN HIERARCHY BROWSER: The speedbar can also be used for browsing the hierarchy of design units contained in the source files of the current directory or the specified projects (see option `vhdl-project-alist'). The speedbar can be switched between file, directory hierarchy and project hierarchy browsing mode in the speedbar menu or by typing `f', `h' or `H' in speedbar. In speedbar, open design units with `mouse-2' on the name and browse their hierarchy with `mouse-2' on the `+'. Ports can directly be copied from entities and components (in packages). Individual design units and complete designs can directly be compiled ("Make" menu entry). The hierarchy is automatically updated upon saving a modified source file when option `vhdl-speedbar-update-on-saving' is non-nil. The hierarchy is only updated for projects that have been opened once in the speedbar. The hierarchy is cached between Emacs sessions in a file (see options in group `vhdl-speedbar'). Simple design consistency checks are done during scanning, such as multiple declarations of the same unit or missing primary units that are required by secondary units. STRUCTURAL COMPOSITION: Enables simple structural composition. `C-c C-m C-n' creates a skeleton for a new component. Subcomponents (i.e. component declaration and instantiation) can be automatically placed from a previously read port (`C-c C-m C-p') or directly from the hierarchy browser (`P'). Finally, all subcomponents can be automatically connected using internal signals and ports (`C-c C-m C-w') following these rules: - subcomponent actual ports with same name are considered to be connected by a signal (internal signal or port) - signals that are only inputs to subcomponents are considered as inputs to this component -> input port created - signals that are only outputs from subcomponents are considered as outputs from this component -> output port created - signals that are inputs to AND outputs from subcomponents are considered as internal connections -> internal signal created Purpose: With appropriate naming conventions it is possible to create higher design levels with only a few mouse clicks or key strokes. A new design level can be created by simply generating a new component, placing the required subcomponents from the hierarchy browser, and wiring everything automatically. Note: Automatic wiring only works reliably on templates of new components and component instantiations that were created by VHDL mode. Component declarations can be placed in a components package (option `vhdl-use-components-package') which can be automatically generated for an entire directory or project (`C-c C-m M-p'). The VHDL'93 direct component instantiation is also supported (option `vhdl-use-direct-instantiation'). Configuration declarations can automatically be generated either from the menu (`C-c C-m C-f') (for the architecture the cursor is in) or from the speedbar menu (for the architecture under the cursor). The configurations can optionally be hierarchical (i.e. include all component levels of a hierarchical design, option `vhdl-compose-configuration-hierarchical') or include subconfigurations (option `vhdl-compose-configuration-use-subconfiguration'). For subcomponents in hierarchical configurations, the most-recently-analyzed (mra) architecture is selected. If another architecture is desired, it can be marked as most-recently-analyzed (speedbar menu) before generating the configuration. Note: Configurations of subcomponents (i.e. hierarchical configuration declarations) are currently not considered when displaying configurations in speedbar. See the options group `vhdl-compose' for all relevant user options. SOURCE FILE COMPILATION: The syntax of the current buffer can be analyzed by calling a VHDL compiler (menu, `C-c C-k'). The compiler to be used is specified by option `vhdl-compiler'. The available compilers are listed in option `vhdl-compiler-alist' including all required compilation command, command options, compilation directory, and error message syntax information. New compilers can be added. All the source files of an entire design can be compiled by the `make' command (menu, `C-c M-C-k') if an appropriate Makefile exists. MAKEFILE GENERATION: Makefiles can be generated automatically by an internal generation routine (`C-c M-k'). The library unit dependency information is obtained from the hierarchy browser. Makefile generation can be customized for each compiler in option `vhdl-compiler-alist'. Makefile generation can also be run non-interactively using the command: emacs -batch -l ~/.emacs -l vhdl-mode [-compiler compilername] [-project projectname] -f vhdl-generate-makefile The Makefile's default target "all" compiles the entire design, the target "clean" removes it and the target "library" creates the library directory if not existent. These target names can be customized by option `vhdl-makefile-default-targets'. The Makefile also includes a target for each primary library unit which allows selective compilation of this unit, its secondary units and its subhierarchy (example: compilation of a design specified by a configuration). User specific parts can be inserted into a Makefile with option `vhdl-makefile-generation-hook'. Limitations: - Only library units and dependencies within the current library are considered. Makefiles for designs that span multiple libraries are not (yet) supported. - Only one-level configurations are supported (also hierarchical), but configurations that go down several levels are not. - The "others" keyword in configurations is not supported. PROJECTS: Projects can be defined in option `vhdl-project-alist' and a current project be selected using option `vhdl-project' (permanently) or from the menu or speedbar (temporarily). For each project, title and description strings (for the file headers), source files/directories (for the hierarchy browser and Makefile generation), library name, and compiler-dependent options, exceptions and compilation directory can be specified. Compilation settings overwrite the settings of option `vhdl-compiler-alist'. Project setups can be exported (i.e. written to a file) and imported. Imported setups are not automatically saved in `vhdl-project-alist' but can be saved afterwards in its customization buffer. When starting Emacs with VHDL Mode (i.e. load a VHDL file or use "emacs -l vhdl-mode") in a directory with an existing project setup file, it is automatically loaded and its project activated if option `vhdl-project-auto-load' is non-nil. Names/paths of the project setup files can be specified in option `vhdl-project-file-name'. Multiple project setups can be automatically loaded from global directories. This is an alternative to specifying project setups with option `vhdl-project-alist'. SPECIAL MENUES: As an alternative to the speedbar, an index menu can be added (set option `vhdl-index-menu' to non-nil) or made accessible as a mouse menu (e.g. add "(global-set-key [S-down-mouse-3] \='imenu)" to your start-up file) for browsing the file contents (is not populated if buffer is larger than 256000). Also, a source file menu can be added (set option `vhdl-source-file-menu' to non-nil) for browsing the current directory for VHDL source files. VHDL STANDARDS: The VHDL standards to be used are specified in option `vhdl-standard'. Available standards are: VHDL'87/'93(02)/'08, VHDL-AMS, and Math Packages. KEYWORD CASE: Lower and upper case for keywords and standardized types, attributes, and enumeration values is supported. If the option `vhdl-upper-case-keywords' is set to non-nil, keywords can be typed in lower case and are converted into upper case automatically (not for types, attributes, and enumeration values). The case of keywords, types, attributes,and enumeration values can be fixed for an entire region (menu) or buffer (`C-c C-x C-c') according to the options `vhdl-upper-case-{keywords,types,attributes,enum-values}'. HIGHLIGHTING (fontification): Keywords and standardized types, attributes, enumeration values, and function names (controlled by option `vhdl-highlight-keywords'), as well as comments, strings, and template prompts are highlighted using different colors. Unit, subprogram, signal, variable, constant, parameter and generic/port names in declarations as well as labels are highlighted if option `vhdl-highlight-names' is non-nil. Additional reserved words or words with a forbidden syntax (e.g. words that should be avoided) can be specified in option `vhdl-forbidden-words' or `vhdl-forbidden-syntax' and be highlighted in a warning color (option `vhdl-highlight-forbidden-words'). Verilog keywords are highlighted as forbidden words if option `vhdl-highlight-verilog-keywords' is non-nil. Words with special syntax can be highlighted by specifying their syntax and color in option `vhdl-special-syntax-alist' and by setting option `vhdl-highlight-special-words' to non-nil. This allows you to establish some naming conventions (e.g. to distinguish different kinds of signals or other objects by using name suffices) and to support them visually. Option `vhdl-highlight-case-sensitive' can be set to non-nil in order to support case-sensitive highlighting. However, keywords are then only highlighted if written in lower case. Code between "translate_off" and "translate_on" pragmas is highlighted using a different background color if option `vhdl-highlight-translate-off' is non-nil. For documentation and customization of the used colors see customization group `vhdl-highlight-faces' (`\[customize-group]'). For highlighting of matching parenthesis, see customization group `paren-showing'. Automatic buffer highlighting is turned on/off by option `global-font-lock-mode' (`font-lock-auto-fontify' in XEmacs). USER MODELS: VHDL models (templates) can be specified by the user and made accessible in the menu, through key bindings (`C-c C-m ...'), or by keyword electrification. See option `vhdl-model-alist'. HIDE/SHOW: The code of blocks, processes, subprograms, component declarations and instantiations, generic/port clauses, and configuration declarations can be hidden using the `Hide/Show' menu or by pressing `S-mouse-2' within the code (see customization group `vhdl-menu'). XEmacs: limited functionality due to old `hideshow.el' package. CODE UPDATING: - Sensitivity List: `C-c C-u C-s' updates the sensitivity list of the current process, `C-c C-u M-s' of all processes in the current buffer. Limitations: - Only declared local signals (ports, signals declared in architecture and blocks) are automatically inserted. - Global signals declared in packages are not automatically inserted. Insert them once manually (will be kept afterwards). - Out parameters of procedures are considered to be read. Use option `vhdl-entity-file-name' to specify the entity file name (used to obtain the port names). Use option `vhdl-array-index-record-field-in-sensitivity-list' to specify whether to include array indices and record fields in sensitivity lists. CODE FIXING: `C-c C-x C-p' fixes the closing parenthesis of a generic/port clause (e.g., if the closing parenthesis is on the wrong line or is missing). PRINTING: PostScript printing with different faces (an optimized set of faces is used if `vhdl-print-customize-faces' is non-nil) or colors (if `ps-print-color-p' is non-nil) is possible using the standard Emacs PostScript printing commands. Option `vhdl-print-two-column' defines appropriate default settings for nice landscape two-column printing. The paper format can be set by option `ps-paper-type'. Do not forget to switch `ps-print-color-p' to nil for printing on black-and-white printers. OPTIONS: User options allow customization of VHDL Mode. All options are accessible from the "Options" menu entry. Simple options (switches and choices) can directly be changed, while for complex options a customization buffer is opened. Changed options can be saved for future sessions using the "Save Options" menu entry. Options and their detailed descriptions can also be accessed by using the "Customize" menu entry or the command `\[customize-option]' (`\[customize-group]' for groups). Some customizations only take effect after some action (read the NOTE in the option documentation). Customization can also be done globally (i.e. site-wide, read the INSTALL file). Not all options are described in this documentation, so go and see what other useful user options there are (`\[vhdl-customize]' or menu)! FILE EXTENSIONS: As default, files with extensions ".vhd" and ".vhdl" are automatically recognized as VHDL source files. To add an extension ".xxx", add the following line to your Emacs start-up file (`.emacs'): (push \='("\\.xxx\\\='" . vhdl-mode) auto-mode-alist) HINTS: - To start Emacs with open VHDL hierarchy browser without having to load a VHDL file first, use the command: emacs -l vhdl-mode -f speedbar-frame-mode - Type `C-g C-g' to interrupt long operations or if Emacs hangs. - Some features only work on properly indented code. RELEASE NOTES: See also the release notes (menu) for added features in new releases. Maintenance: ------------ To submit a bug report, enter `\[vhdl-submit-bug-report]' within VHDL Mode. Add a description of the problem and include a reproducible test case. Questions and enhancement requests can be sent to <reto@gnu.org>. The `vhdl-mode-announce' mailing list informs about new VHDL Mode releases. The `vhdl-mode-victims' mailing list informs about new VHDL Mode beta releases. You are kindly invited to participate in beta testing. Subscribe to above mailing lists by sending an email to <reto@gnu.org>. VHDL Mode is officially distributed at http://www.iis.ee.ethz.ch/~zimmi/emacs/vhdl-mode.html where the latest version can be found. Known problems: --------------- - XEmacs: Incorrect start-up when automatically opening speedbar. - XEmacs: Indentation in XEmacs 21.4 (and higher). - Indentation incorrect for new 'postponed' VHDL keyword. - Indentation incorrect for 'protected body' construct. The VHDL Mode Authors Reto Zimmermann and Rod Whitby Key bindings: ------------- \{vhdl-mode-map} (fn)Fviet-encode-viscii-char Return VISCII character code of CHAR if appropriate. (fn CHAR)Fviet-decode-viqr-region Convert `VIQR' mnemonics of the current region to Vietnamese characters. When called from a program, expects two arguments, positions (integers or markers) specifying the stretch of the region. (fn FROM TO)Fviet-decode-viqr-buffer Convert `VIQR' mnemonics of the current buffer to Vietnamese characters. (fn)Fviet-encode-viqr-region Convert Vietnamese characters of the current region to `VIQR' mnemonics. When called from a program, expects two arguments, positions (integers or markers) specifying the stretch of the region. (fn FROM TO)Fviet-encode-viqr-buffer Convert Vietnamese characters of the current buffer to `VIQR' mnemonics. (fn)Fviqr-post-read-conversion (fn LEN)Fviqr-pre-write-conversion (fn FROM TO)Vview-remove-frame-by-deleting Determine how View mode removes a frame no longer needed. If nil, make an icon of the frame. If non-nil, delete the frame.Vview-mode Non-nil if View mode is enabled. Don't change this variable directly, you must change it by one of the functions that enable or disable view mode.Fkill-buffer-if-not-modified Like `kill-buffer', but does nothing if the buffer is modified. (fn BUF)Fview-file View FILE in View mode, returning to previous buffer when done. Emacs commands editing the buffer contents are not available; instead, a special set of commands (mostly letters and punctuation) are defined for moving around in the buffer. Space scrolls forward, Delete scrolls backward. For a list of all View commands, type H or h while viewing. This command runs the normal hook `view-mode-hook'. (fn FILE)Fview-file-other-window View FILE in View mode in another window. When done, return that window to its previous buffer, and kill the buffer visiting FILE if unmodified and if it wasn't visited before. Emacs commands editing the buffer contents are not available; instead, a special set of commands (mostly letters and punctuation) are defined for moving around in the buffer. Space scrolls forward, Delete scrolls backward. For a list of all View commands, type H or h while viewing. This command runs the normal hook `view-mode-hook'. (fn FILE)Fview-file-other-frame View FILE in View mode in another frame. When done, kill the buffer visiting FILE if unmodified and if it wasn't visited before; also, maybe delete other frame and/or return to previous buffer. Emacs commands editing the buffer contents are not available; instead, a special set of commands (mostly letters and punctuation) are defined for moving around in the buffer. Space scrolls forward, Delete scrolls backward. For a list of all View commands, type H or h while viewing. This command runs the normal hook `view-mode-hook'. (fn FILE)Fview-buffer View BUFFER in View mode, returning to previous buffer when done. Emacs commands editing the buffer contents are not available; instead, a special set of commands (mostly letters and punctuation) are defined for moving around in the buffer. Space scrolls forward, Delete scrolls backward. For a list of all View commands, type H or h while viewing. This command runs the normal hook `view-mode-hook'. Optional argument EXIT-ACTION is either nil or a function with buffer as argument. This function is called when finished viewing buffer. Use this argument instead of explicitly setting `view-exit-action'. Do not set EXIT-ACTION to `kill-buffer' when BUFFER visits a file: Users may suspend viewing in order to modify the buffer. Exiting View mode will then discard the user's edits. Setting EXIT-ACTION to `kill-buffer-if-not-modified' avoids this. This function does not enable View mode if the buffer's major-mode has a `special' mode-class, because such modes usually have their own View-like bindings. (fn BUFFER &optional EXIT-ACTION)Fview-buffer-other-window View BUFFER in View mode in another window. Emacs commands editing the buffer contents are not available; instead, a special set of commands (mostly letters and punctuation) are defined for moving around in the buffer. Space scrolls forward, Delete scrolls backward. For a list of all View commands, type H or h while viewing. This command runs the normal hook `view-mode-hook'. Optional argument NOT-RETURN is ignored. Optional argument EXIT-ACTION is either nil or a function with buffer as argument. This function is called when finished viewing buffer. Use this argument instead of explicitly setting `view-exit-action'. This function does not enable View mode if the buffer's major-mode has a `special' mode-class, because such modes usually have their own View-like bindings. (fn BUFFER &optional NOT-RETURN EXIT-ACTION)Fview-buffer-other-frame View BUFFER in View mode in another frame. Emacs commands editing the buffer contents are not available; instead, a special set of commands (mostly letters and punctuation) are defined for moving around in the buffer. Space scrolls forward, Delete scrolls backward. For a list of all View commands, type H or h while viewing. This command runs the normal hook `view-mode-hook'. Optional argument NOT-RETURN is ignored. Optional argument EXIT-ACTION is either nil or a function with buffer as argument. This function is called when finished viewing buffer. Use this argument instead of explicitly setting `view-exit-action'. This function does not enable View mode if the buffer's major-mode has a `special' mode-class, because such modes usually have their own View-like bindings. (fn BUFFER &optional NOT-RETURN EXIT-ACTION)Fview-mode Toggle View mode, a minor mode for viewing text but not editing it. With a prefix argument ARG, enable View mode if ARG is positive, and disable it otherwise. If called from Lisp, enable View mode if ARG is omitted or nil. When View mode is enabled, commands that do not change the buffer contents are available as usual. Kill commands save text but do not delete it from the buffer. Most other commands beep and tell the user that the buffer is read-only. \<view-mode-map> The following additional commands are provided. Most commands take prefix arguments. Page commands default to "page size" lines which is almost a whole window, or number of lines set by \[View-scroll-page-forward-set-page-size] or \[View-scroll-page-backward-set-page-size]. Half page commands default to and set "half page size" lines which initially is half a window full. Search commands default to a repeat count of one. H, h, ? This message. Digits provide prefix arguments. \[negative-argument] negative prefix argument. \[beginning-of-buffer] move to the beginning of buffer. > move to the end of buffer. \[View-scroll-to-buffer-end] scroll so that buffer end is at last line of window. SPC scroll forward "page size" lines. With prefix scroll forward prefix lines. DEL, S-SPC scroll backward "page size" lines. With prefix scroll backward prefix lines. \[View-scroll-page-forward-set-page-size] like \[View-scroll-page-forward] but with prefix sets "page size" to prefix. \[View-scroll-page-backward-set-page-size] like \[View-scroll-page-backward] but with prefix sets "page size" to prefix. \[View-scroll-half-page-forward] scroll forward "half page size" lines. With prefix, sets "half page size" to prefix lines and scrolls forward that much. \[View-scroll-half-page-backward] scroll backward "half page size" lines. With prefix, sets "half page size" to prefix lines and scrolls backward that much. RET, LFD scroll forward one line. With prefix scroll forward prefix line(s). y scroll backward one line. With prefix scroll backward prefix line(s). \[View-revert-buffer-scroll-page-forward] revert-buffer if necessary and scroll forward. Use this to view a changing file. \[what-line] prints the current line number. \[View-goto-percent] goes prefix argument (default 100) percent into buffer. \[View-goto-line] goes to line given by prefix argument (default first line). . set the mark. x exchanges point and mark. \[View-back-to-mark] return to mark and pops mark ring. Mark ring is pushed at start of every successful search and when jump to line occurs. The mark is set on jump to buffer start or end. \[point-to-register] save current position in character register. \=' go to position saved in character register. s do forward incremental search. r do reverse incremental search. \[View-search-regexp-forward] searches forward for regular expression, starting after current page. ! and @ have a special meaning at the beginning of the regexp. ! means search for a line with no match for regexp. @ means start search at beginning (end for backward search) of buffer. \ searches backward for regular expression, starting before current page. \[View-search-last-regexp-forward] searches forward for last regular expression. p searches backward for last regular expression. \[View-quit] quit View mode, restoring this window and buffer to previous state. \[View-quit] is the normal way to leave view mode. \[View-exit] exit View mode but stay in current buffer. Use this if you started viewing a buffer (file) and find out you want to edit it. This command restores the previous read-only status of the buffer. \[View-exit-and-edit] exit View mode, and make the current buffer editable even if it was not editable before entry to View mode. \[View-quit-all] quit View mode, restoring all windows to previous state. \[View-leave] quit View mode and maybe switch buffers, but don't kill this buffer. \[View-kill-and-leave] quit View mode, kill current buffer and go back to other buffer. The effect of \[View-leave], \[View-quit] and \[View-kill-and-leave] depends on how view-mode was entered. If it was entered by view-file, view-file-other-window, view-file-other-frame, or \[dired-view-file] (\[view-file], \[view-file-other-window], \[view-file-other-frame], or the Dired mode v command), then \[View-quit] will try to kill the current buffer. If view-mode was entered from another buffer, by \[view-buffer], \[view-buffer-other-window], \[view-buffer-other frame], \[view-file], \[view-file-other-window], or \[view-file-other-frame], then \[View-leave], \[View-quit] and \[View-kill-and-leave] will return to that buffer. Entry to view-mode runs the normal hook `view-mode-hook'. (fn &optional ARG)Fview-return-to-alist-update Update `view-return-to-alist' of buffer BUFFER. Remove from `view-return-to-alist' all entries referencing dead windows. Optional argument ITEM non-nil means add ITEM to `view-return-to-alist' after purging. For a description of items that can be added see the RETURN-TO-ALIST argument of the function `view-mode-exit'. If `view-return-to-alist' contains an entry for the selected window, purge that entry from `view-return-to-alist' before adding ITEM. (fn BUFFER &optional ITEM)Fview-mode-enter Enter View mode and set up exit from view mode depending on optional arguments. Optional argument QUIT-RESTORE if non-nil must specify a valid entry for quitting and restoring any window showing the current buffer. This entry replaces any parameter installed by `display-buffer' and is used by `view-mode-exit'. Optional argument EXIT-ACTION, if non-nil, must specify a function that takes a buffer as argument. This function will be called by `view-mode-exit'. For a list of all View commands, type H or h while viewing. This function runs the normal hook `view-mode-hook'. (fn &optional QUIT-RESTORE EXIT-ACTION)FView-exit-and-edit Exit View mode and make the current buffer editable. (fn)Ftoggle-viper-mode Toggle Viper on/off. If Viper is enabled, turn it off. Otherwise, turn it on. (fn)Fviper-mode Turn on Viper emulation of Vi in Emacs. See Info node `(viper)Top'. (fn)Vwarning-prefix-function Function to generate warning prefixes. This function, if non-nil, is called with two arguments, the severity level and its entry in `warning-levels', and should return the entry that should actually be used. The warnings buffer is current when this function is called and the function can insert text in it. This text becomes the beginning of the warning.Vwarning-series Non-nil means treat multiple `display-warning' calls as a series. A marker indicates a position in the warnings buffer which is the start of the current series; it means that additional warnings in the same buffer should not move point. If t, the next warning begins a series (and stores a marker here). A symbol with a function definition is like t, except also call that function before the next warning.Vwarning-fill-prefix Non-nil means fill each warning text using this string as `fill-prefix'.Vwarning-type-format Format for displaying the warning type in the warning message. The result of formatting the type this way gets included in the message under the control of the string in `warning-levels'.Fdisplay-warning Display a warning message, MESSAGE. TYPE is the warning type: either a custom group name (a symbol), or a list of symbols whose first element is a custom group name. (The rest of the symbols represent subcategories, for warning purposes only, and you can use whatever symbols you like.) LEVEL should be either :debug, :warning, :error, or :emergency (but see `warning-minimum-level' and `warning-minimum-log-level'). Default is :warning. :emergency -- a problem that will seriously impair Emacs operation soon if you do not attend to it promptly. :error -- data or circumstances that are inherently wrong. :warning -- data or circumstances that are not inherently wrong, but raise suspicion of a possible problem. :debug -- info for debugging only. BUFFER-NAME, if specified, is the name of the buffer for logging the warning. By default, it is `*Warnings*'. If this function has to create the buffer, it disables undo in the buffer. See the `warnings' custom group for user customization features. See also `warning-series', `warning-prefix-function' and `warning-fill-prefix' for additional programming features. (fn TYPE MESSAGE &optional LEVEL BUFFER-NAME)Flwarn Display a warning message made from (format-message MESSAGE ARGS...). \<special-mode-map> Aside from generating the message with `format-message', this is equivalent to `display-warning'. TYPE is the warning type: either a custom group name (a symbol), or a list of symbols whose first element is a custom group name. (The rest of the symbols represent subcategories and can be whatever you like.) LEVEL should be either :debug, :warning, :error, or :emergency (but see `warning-minimum-level' and `warning-minimum-log-level'). :emergency -- a problem that will seriously impair Emacs operation soon if you do not attend to it promptly. :error -- invalid data or circumstances. :warning -- suspicious data or circumstances. :debug -- info for debugging only. (fn TYPE LEVEL MESSAGE &rest ARGS)Fwarn Display a warning message made from (format-message MESSAGE ARGS...). Aside from generating the message with `format-message', this is equivalent to `display-warning', using `emacs' as the type and `:warning' as the level. (fn MESSAGE &rest ARGS)Fwdired-change-to-wdired-mode Put a Dired buffer in Writable Dired (WDired) mode. \<wdired-mode-map> In WDired mode, you can edit the names of the files in the buffer, the target of the links, and the permission bits of the files. After typing \[wdired-finish-edit], Emacs modifies the files and directories to reflect your edits. See `wdired-mode'. (fn)Fwebjump Jumps to a Web site from a programmable hotlist. See the documentation for the `webjump-sites' variable for how to customize the hotlist. Please submit bug reports and other feedback to the author, Neil W. Van Dyke <nwv@acm.org>. (fn)Vwhich-function-mode Non-nil if Which-Function mode is enabled. See the `which-function-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `which-function-mode'.Fwhich-function-mode Toggle mode line display of current function (Which Function mode). With a prefix argument ARG, enable Which Function mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Which Function mode is a global minor mode. When enabled, the current function name is continuously displayed in the mode line, in certain major modes. (fn &optional ARG)Fwhitespace-mode Toggle whitespace visualization (Whitespace mode). With a prefix argument ARG, enable Whitespace mode if ARG is positive, and disable it otherwise. If called from Lisp, also enables the mode if ARG is omitted or nil, and toggles it if ARG is `toggle'. See also `whitespace-style', `whitespace-newline' and `whitespace-display-mappings'. (fn &optional ARG)Fwhitespace-newline-mode Toggle newline visualization (Whitespace Newline mode). With a prefix argument ARG, enable Whitespace Newline mode if ARG is positive, and disable it otherwise. If called from Lisp, also enables the mode if ARG is omitted or nil, and toggles it if ARG is `toggle'. Use `whitespace-newline-mode' only for NEWLINE visualization exclusively. For other visualizations, including NEWLINE visualization together with (HARD) SPACEs and/or TABs, please, use `whitespace-mode'. See also `whitespace-newline' and `whitespace-display-mappings'. (fn &optional ARG)Vglobal-whitespace-mode Non-nil if Global Whitespace mode is enabled. See the `global-whitespace-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-whitespace-mode'.Fglobal-whitespace-mode Toggle whitespace visualization globally (Global Whitespace mode). With a prefix argument ARG, enable Global Whitespace mode if ARG is positive, and disable it otherwise. If called from Lisp, also enables the mode if ARG is omitted or nil, and toggles it if ARG is `toggle'. See also `whitespace-style', `whitespace-newline' and `whitespace-display-mappings'. (fn &optional ARG)Vglobal-whitespace-newline-mode Non-nil if Global Whitespace-Newline mode is enabled. See the `global-whitespace-newline-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `global-whitespace-newline-mode'.Fglobal-whitespace-newline-mode Toggle global newline visualization (Global Whitespace Newline mode). With a prefix argument ARG, enable Global Whitespace Newline mode if ARG is positive, and disable it otherwise. If called from Lisp, also enables the mode if ARG is omitted or nil, and toggles it if ARG is `toggle'. Use `global-whitespace-newline-mode' only for NEWLINE visualization exclusively. For other visualizations, including NEWLINE visualization together with (HARD) SPACEs and/or TABs, please use `global-whitespace-mode'. See also `whitespace-newline' and `whitespace-display-mappings'. (fn &optional ARG)Fwhitespace-toggle-options Toggle local `whitespace-mode' options. If local whitespace-mode is off, toggle the option given by ARG and turn on local whitespace-mode. If local whitespace-mode is on, toggle the option given by ARG and restart local whitespace-mode. Interactively, it reads one of the following chars: CHAR MEANING (VIA FACES) f toggle face visualization t toggle TAB visualization s toggle SPACE and HARD SPACE visualization r toggle trailing blanks visualization l toggle "long lines" visualization L toggle "long lines" tail visualization n toggle NEWLINE visualization e toggle empty line at bob and/or eob visualization C-i toggle indentation SPACEs visualization (via `indent-tabs-mode') I toggle indentation SPACEs visualization i toggle indentation TABs visualization C-t toggle big indentation visualization C-a toggle SPACEs after TAB visualization (via `indent-tabs-mode') A toggle SPACEs after TAB: SPACEs visualization a toggle SPACEs after TAB: TABs visualization C-b toggle SPACEs before TAB visualization (via `indent-tabs-mode') B toggle SPACEs before TAB: SPACEs visualization b toggle SPACEs before TAB: TABs visualization (VIA DISPLAY TABLE) T toggle TAB visualization S toggle SPACEs before TAB visualization N toggle NEWLINE visualization x restore `whitespace-style' value ? display brief help Non-interactively, ARG should be a symbol or a list of symbols. The valid symbols are: face toggle face visualization tabs toggle TAB visualization spaces toggle SPACE and HARD SPACE visualization trailing toggle trailing blanks visualization lines toggle "long lines" visualization lines-tail toggle "long lines" tail visualization newline toggle NEWLINE visualization empty toggle empty line at bob and/or eob visualization indentation toggle indentation SPACEs visualization indentation::tab toggle indentation SPACEs visualization indentation::space toggle indentation TABs visualization big-indent toggle big indentation visualization space-after-tab toggle SPACEs after TAB visualization space-after-tab::tab toggle SPACEs after TAB: SPACEs visualization space-after-tab::space toggle SPACEs after TAB: TABs visualization space-before-tab toggle SPACEs before TAB visualization space-before-tab::tab toggle SPACEs before TAB: SPACEs visualization space-before-tab::space toggle SPACEs before TAB: TABs visualization tab-mark toggle TAB visualization space-mark toggle SPACEs before TAB visualization newline-mark toggle NEWLINE visualization whitespace-style restore `whitespace-style' value See `whitespace-style' and `indent-tabs-mode' for documentation. (fn ARG)Fglobal-whitespace-toggle-options Toggle global `whitespace-mode' options. If global whitespace-mode is off, toggle the option given by ARG and turn on global whitespace-mode. If global whitespace-mode is on, toggle the option given by ARG and restart global whitespace-mode. Interactively, it accepts one of the following chars: CHAR MEANING (VIA FACES) f toggle face visualization t toggle TAB visualization s toggle SPACE and HARD SPACE visualization r toggle trailing blanks visualization l toggle "long lines" visualization L toggle "long lines" tail visualization n toggle NEWLINE visualization e toggle empty line at bob and/or eob visualization C-i toggle indentation SPACEs visualization (via `indent-tabs-mode') I toggle indentation SPACEs visualization i toggle indentation TABs visualization C-t toggle big indentation visualization C-a toggle SPACEs after TAB visualization (via `indent-tabs-mode') A toggle SPACEs after TAB: SPACEs visualization a toggle SPACEs after TAB: TABs visualization C-b toggle SPACEs before TAB visualization (via `indent-tabs-mode') B toggle SPACEs before TAB: SPACEs visualization b toggle SPACEs before TAB: TABs visualization (VIA DISPLAY TABLE) T toggle TAB visualization S toggle SPACEs before TAB visualization N toggle NEWLINE visualization x restore `whitespace-style' value ? display brief help Non-interactively, ARG should be a symbol or a list of symbols. The valid symbols are: face toggle face visualization tabs toggle TAB visualization spaces toggle SPACE and HARD SPACE visualization trailing toggle trailing blanks visualization lines toggle "long lines" visualization lines-tail toggle "long lines" tail visualization newline toggle NEWLINE visualization empty toggle empty line at bob and/or eob visualization indentation toggle indentation SPACEs visualization indentation::tab toggle indentation SPACEs visualization indentation::space toggle indentation TABs visualization big-indent toggle big indentation visualization space-after-tab toggle SPACEs after TAB visualization space-after-tab::tab toggle SPACEs after TAB: SPACEs visualization space-after-tab::space toggle SPACEs after TAB: TABs visualization space-before-tab toggle SPACEs before TAB visualization space-before-tab::tab toggle SPACEs before TAB: SPACEs visualization space-before-tab::space toggle SPACEs before TAB: TABs visualization tab-mark toggle TAB visualization space-mark toggle SPACEs before TAB visualization newline-mark toggle NEWLINE visualization whitespace-style restore `whitespace-style' value See `whitespace-style' and `indent-tabs-mode' for documentation. (fn ARG)Fwhitespace-cleanup Cleanup some blank problems in all buffer or at region. It usually applies to the whole buffer, but in transient mark mode when the mark is active, it applies to the region. It also applies to the region when it is not in transient mark mode, the mark is active and \[universal-argument] was pressed just before calling `whitespace-cleanup' interactively. See also `whitespace-cleanup-region'. The problems cleaned up are: 1. empty lines at beginning of buffer. 2. empty lines at end of buffer. If `whitespace-style' includes the value `empty', remove all empty lines at beginning and/or end of buffer. 3. `tab-width' or more SPACEs at beginning of line. If `whitespace-style' includes the value `indentation': replace `tab-width' or more SPACEs at beginning of line by TABs, if `indent-tabs-mode' is non-nil; otherwise, replace TABs by SPACEs. If `whitespace-style' includes the value `indentation::tab', replace `tab-width' or more SPACEs at beginning of line by TABs. If `whitespace-style' includes the value `indentation::space', replace TABs by SPACEs. 4. SPACEs before TAB. If `whitespace-style' includes the value `space-before-tab': replace SPACEs by TABs, if `indent-tabs-mode' is non-nil; otherwise, replace TABs by SPACEs. If `whitespace-style' includes the value `space-before-tab::tab', replace SPACEs by TABs. If `whitespace-style' includes the value `space-before-tab::space', replace TABs by SPACEs. 5. SPACEs or TABs at end of line. If `whitespace-style' includes the value `trailing', remove all SPACEs or TABs at end of line. 6. `tab-width' or more SPACEs after TAB. If `whitespace-style' includes the value `space-after-tab': replace SPACEs by TABs, if `indent-tabs-mode' is non-nil; otherwise, replace TABs by SPACEs. If `whitespace-style' includes the value `space-after-tab::tab', replace SPACEs by TABs. If `whitespace-style' includes the value `space-after-tab::space', replace TABs by SPACEs. See `whitespace-style', `indent-tabs-mode' and `tab-width' for documentation. (fn)Fwhitespace-cleanup-region Cleanup some blank problems at region. The problems cleaned up are: 1. `tab-width' or more SPACEs at beginning of line. If `whitespace-style' includes the value `indentation': replace `tab-width' or more SPACEs at beginning of line by TABs, if `indent-tabs-mode' is non-nil; otherwise, replace TABs by SPACEs. If `whitespace-style' includes the value `indentation::tab', replace `tab-width' or more SPACEs at beginning of line by TABs. If `whitespace-style' includes the value `indentation::space', replace TABs by SPACEs. 2. SPACEs before TAB. If `whitespace-style' includes the value `space-before-tab': replace SPACEs by TABs, if `indent-tabs-mode' is non-nil; otherwise, replace TABs by SPACEs. If `whitespace-style' includes the value `space-before-tab::tab', replace SPACEs by TABs. If `whitespace-style' includes the value `space-before-tab::space', replace TABs by SPACEs. 3. SPACEs or TABs at end of line. If `whitespace-style' includes the value `trailing', remove all SPACEs or TABs at end of line. 4. `tab-width' or more SPACEs after TAB. If `whitespace-style' includes the value `space-after-tab': replace SPACEs by TABs, if `indent-tabs-mode' is non-nil; otherwise, replace TABs by SPACEs. If `whitespace-style' includes the value `space-after-tab::tab', replace SPACEs by TABs. If `whitespace-style' includes the value `space-after-tab::space', replace TABs by SPACEs. See `whitespace-style', `indent-tabs-mode' and `tab-width' for documentation. (fn START END)Fwhitespace-report Report some whitespace problems in buffer. Perform `whitespace-report-region' on the current buffer. (fn &optional FORCE REPORT-IF-BOGUS)Fwhitespace-report-region Report some whitespace problems in a region. Return nil if there is no whitespace problem; otherwise, return non-nil. If FORCE is non-nil or \[universal-argument] was pressed just before calling `whitespace-report-region' interactively, it forces all classes of whitespace problem to be considered significant. If REPORT-IF-BOGUS is t, it reports only when there are any whitespace problems in buffer; if it is `never', it does not report problems. Report if some of the following whitespace problems exist: * If `indent-tabs-mode' is non-nil: empty 1. empty lines at beginning of buffer. empty 2. empty lines at end of buffer. trailing 3. SPACEs or TABs at end of line. indentation 4. line starts with `tab-width' or more SPACEs. space-before-tab 5. SPACEs before TAB. space-after-tab 6. `tab-width' or more SPACEs after TAB. * If `indent-tabs-mode' is nil: empty 1. empty lines at beginning of buffer. empty 2. empty lines at end of buffer. trailing 3. SPACEs or TABs at end of line. indentation 4. TABS at beginning of line. space-before-tab 5. SPACEs before TAB. space-after-tab 6. `tab-width' or more SPACEs after TAB. See `whitespace-style' for documentation. See also `whitespace-cleanup' and `whitespace-cleanup-region' for cleaning up these problems. (fn START END &optional FORCE REPORT-IF-BOGUS)Fwidget-browse-at Browse the widget under point. (fn POS)Fwidget-browse Create a widget browser for WIDGET. (fn WIDGET)Fwidget-browse-other-window Show widget browser for WIDGET in other window. (fn &optional WIDGET)Fwidget-minor-mode Minor mode for traversing widgets. With a prefix argument ARG, enable the mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Fwidgetp Return non-nil if WIDGET is a widget. (fn WIDGET)Fwidget-prompt-value Prompt for a value matching WIDGET, using PROMPT. The current value is assumed to be VALUE, unless UNBOUND is non-nil. (fn WIDGET PROMPT &optional VALUE UNBOUND)Fwidget-create Create widget of TYPE. The optional ARGS are additional keyword arguments. (fn TYPE &rest ARGS)Fwidget-delete Delete WIDGET. (fn WIDGET)Fwidget-insert Call `insert' with ARGS even if surrounding text is read only. (fn &rest ARGS)Vwidget-keymap Keymap containing useful binding for buffers containing widgets. Recommended as a parent keymap for modes using widgets. Note that such modes will need to require wid-edit.Fwidget-setup Setup current buffer so editing string widgets works. (fn)Fwindmove-left Select the window to the left of the current one. With no prefix argument, or with prefix argument equal to zero, "left" is relative to the position of point in the window; otherwise it is relative to the top edge (for positive ARG) or the bottom edge (for negative ARG) of the current window. If no window is at the desired location, an error is signaled. (fn &optional ARG)Fwindmove-up Select the window above the current one. With no prefix argument, or with prefix argument equal to zero, "up" is relative to the position of point in the window; otherwise it is relative to the left edge (for positive ARG) or the right edge (for negative ARG) of the current window. If no window is at the desired location, an error is signaled. (fn &optional ARG)Fwindmove-right Select the window to the right of the current one. With no prefix argument, or with prefix argument equal to zero, "right" is relative to the position of point in the window; otherwise it is relative to the top edge (for positive ARG) or the bottom edge (for negative ARG) of the current window. If no window is at the desired location, an error is signaled. (fn &optional ARG)Fwindmove-down Select the window below the current one. With no prefix argument, or with prefix argument equal to zero, "down" is relative to the position of point in the window; otherwise it is relative to the left edge (for positive ARG) or the right edge (for negative ARG) of the current window. If no window is at the desired location, an error is signaled. (fn &optional ARG)Fwindmove-default-keybindings Set up keybindings for `windmove'. Keybindings are of the form MODIFIER-{left,right,up,down}. Default MODIFIER is `shift'. (fn &optional MODIFIER)Vwinner-mode Non-nil if Winner mode is enabled. See the `winner-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `winner-mode'.Fwinner-mode Toggle Winner mode on or off. With a prefix argument ARG, enable Winner mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'. Winner mode is a global minor mode that records the changes in the window configuration (i.e. how the frames are partitioned into windows) so that the changes can be "undone" using the command `winner-undo'. By default this one is bound to the key sequence `C-c <left>'. If you change your mind (while undoing), you can press `C-c <right>' (calling `winner-redo'). (fn &optional ARG)Vwoman-locale String specifying a manual page locale, or nil. If a manual page is available in the specified locale (e.g. "sv_SE.ISO8859-1"), it will be offered in preference to the default version. Normally, `set-locale-environment' sets this at startup.Fwoman Browse UN*X man page for TOPIC (Without using external Man program). The major browsing mode used is essentially the standard Man mode. Choose the filename for the man page using completion, based on the topic selected from the directories specified in `woman-manpath' and `woman-path'. The directory expansions and topics are cached for speed. With a prefix argument, force the caches to be updated (e.g. to re-interpret the current directory). Used non-interactively, arguments are optional: if given then TOPIC should be a topic string and non-nil RE-CACHE forces re-caching. (fn &optional TOPIC RE-CACHE)Fwoman-dired-find-file In dired, run the WoMan man-page browser on this file. (fn)Fwoman-find-file Find, decode and browse a specific UN*X man-page source file FILE-NAME. Use existing buffer if possible; reformat only if prefix arg given. When called interactively, optional argument REFORMAT forces reformatting of an existing WoMan buffer formatted earlier. No external programs are used, except that `gunzip' will be used to decompress the file if appropriate. See the documentation for the `woman' command for further details. (fn FILE-NAME &optional REFORMAT)Fwoman-bookmark-jump Default bookmark handler for Woman buffers. (fn BOOKMARK)Fxml-parse-file Parse the well-formed XML file FILE. Return the top node with all its children. If PARSE-DTD is non-nil, the DTD is parsed rather than skipped. If PARSE-NS is non-nil, then QNAMES are expanded. By default, the variable `xml-default-ns' is the mapping from namespaces to URIs, and expanded names will be returned as a cons ("namespace:" . "foo"). If PARSE-NS is an alist, it will be used as the mapping from namespace to URIs instead. If it is the symbol `symbol-qnames', expanded names will be returned as a plain symbol `namespace:foo' instead of a cons. Both features can be combined by providing a cons cell (symbol-qnames . ALIST). (fn FILE &optional PARSE-DTD PARSE-NS)Fxml-parse-region Parse the region from BEG to END in BUFFER. Return the XML parse tree, or raise an error if the region does not contain well-formed XML. If BEG is nil, it defaults to `point-min'. If END is nil, it defaults to `point-max'. If BUFFER is nil, it defaults to the current buffer. If PARSE-DTD is non-nil, parse the DTD and return it as the first element of the list. If PARSE-NS is non-nil, then QNAMES are expanded. By default, the variable `xml-default-ns' is the mapping from namespaces to URIs, and expanded names will be returned as a cons ("namespace:" . "foo"). If PARSE-NS is an alist, it will be used as the mapping from namespace to URIs instead. If it is the symbol `symbol-qnames', expanded names will be returned as a plain symbol `namespace:foo' instead of a cons. Both features can be combined by providing a cons cell (symbol-qnames . ALIST). (fn &optional BEG END BUFFER PARSE-DTD PARSE-NS)Fxmltok-get-declared-encoding-position Return the position of the encoding in the XML declaration at point. If there is a well-formed XML declaration starting at point and it contains an encoding declaration, then return (START . END) where START and END are the positions of the start and the end of the encoding name; if there is no encoding declaration return the position where and encoding declaration could be inserted. If there is XML that is not well-formed that looks like an XML declaration, return nil. Otherwise, return t. If LIMIT is non-nil, then do not consider characters beyond LIMIT. (fn &optional LIMIT)Fxref-find-backend (fn)Fxref-pop-marker-stack Pop back to where \[xref-find-definitions] was last invoked. (fn)Fxref-marker-stack-empty-p Return t if the marker stack is empty; nil otherwise. (fn)Fxref-find-definitions Find the definition of the identifier at point. With prefix argument or when there's no identifier at point, prompt for it. If sufficient information is available to determine a unique definition for IDENTIFIER, display it in the selected window. Otherwise, display the list of the possible definitions in a buffer where the user can select from the list. (fn IDENTIFIER)Fxref-find-definitions-other-window Like `xref-find-definitions' but switch to the other window. (fn IDENTIFIER)Fxref-find-definitions-other-frame Like `xref-find-definitions' but switch to the other frame. (fn IDENTIFIER)Fxref-find-references Find references to the identifier at point. This command might prompt for the identifier as needed, perhaps offering the symbol at point as the default. With prefix argument, or if `xref-prompt-for-identifier' is t, always prompt for the identifier. If `xref-prompt-for-identifier' is nil, prompt only if there's no usable symbol at point. (fn IDENTIFIER)Fxref-find-apropos Find all meaningful symbols that match PATTERN. The argument has the same meaning as in `apropos'. (fn PATTERN)Fxref-collect-matches Collect matches for REGEXP inside FILES in DIR. FILES is a string with glob patterns separated by spaces. IGNORES is a list of glob patterns. (fn REGEXP FILES DIR IGNORES)Vxterm-mouse-mode Non-nil if Xterm-Mouse mode is enabled. See the `xterm-mouse-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `xterm-mouse-mode'.Fxterm-mouse-mode Toggle XTerm mouse mode. With a prefix argument ARG, enable XTerm mouse mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Turn it on to use Emacs mouse commands, and off to use xterm mouse commands. This works in terminal emulators compatible with xterm. It only works for simple uses of the mouse. Basically, only non-modified single clicks are supported. When turned on, the normal xterm mouse functionality for such clicks is still available by holding down the SHIFT key while pressing the mouse button. (fn &optional ARG)Fxwidget-webkit-browse-url Ask xwidget-webkit to browse URL. NEW-SESSION specifies whether to create a new xwidget-webkit session. Interactively, URL defaults to the string looking like a url around point. (fn URL &optional NEW-SESSION)Fyenc-decode-region Yenc decode region between START and END using an internal decoder. (fn START END)Fyenc-extract-filename Extract file name from an yenc header. (fn)Fzone Zone out, completely. (fn)Sloadup.el Sabbrev.elc Fabbrev-mode Toggle Abbrev mode in the current buffer. With a prefix argument ARG, enable Abbrev mode if ARG is positive, and disable it otherwise. If called from Lisp, enable Abbrev mode if ARG is omitted or nil. In Abbrev mode, inserting an abbreviation causes it to expand and be replaced by its expansion. (fn &optional ARG)Vedit-abbrevs-mode-map Keymap used in `edit-abbrevs'.Fkill-all-abbrevs Undefine all defined abbrevs.Fcopy-abbrev-table Make a new abbrev-table with the same abbrevs as TABLE. Does not copy property lists. (fn TABLE)Finsert-abbrevs Insert after point a description of all defined abbrevs. Mark is set after the inserted text.Flist-abbrevs Display a list of defined abbrevs. If LOCAL is non-nil, interactively when invoked with a prefix arg, display only local, i.e. mode-specific, abbrevs. Otherwise display all abbrevs. (fn &optional LOCAL)Fabbrev-table-name Value is the name of abbrev table TABLE. (fn TABLE)Fprepare-abbrev-list-buffer (fn &optional LOCAL)Fedit-abbrevs Alter abbrev definitions by editing a list of them. Selects a buffer containing a list of abbrev definitions with point located in the abbrev table for the current buffer, and turns on `edit-abbrevs-mode' in that buffer. You can edit them and type \<edit-abbrevs-map>\[edit-abbrevs-redefine] to redefine abbrevs according to your editing. The abbrevs editing buffer contains a header line for each abbrev table, which is the abbrev table name in parentheses. This is followed by one line per abbrev in that table: NAME USECOUNT EXPANSION HOOK where NAME and EXPANSION are strings with quotes, USECOUNT is an integer, and HOOK is any valid function or may be omitted (it is usually omitted).Fedit-abbrevs-redefine Redefine abbrevs according to current buffer contents.Fdefine-abbrevs Define abbrevs according to current visible buffer contents. See documentation of `edit-abbrevs' for info on the format of the text you must have in the buffer. With argument, eliminate all abbrev definitions except the ones defined from the buffer now. (fn &optional ARG)Fread-abbrev-file Read abbrev definitions from file written with `write-abbrev-file'. Optional argument FILE is the name of the file to read; it defaults to the value of `abbrev-file-name'. Optional second argument QUIETLY non-nil means don't display a message. (fn &optional FILE QUIETLY)Fquietly-read-abbrev-file Read abbrev definitions from file written with `write-abbrev-file'. Optional argument FILE is the name of the file to read; it defaults to the value of `abbrev-file-name'. Does not display any message. (fn &optional FILE)Fwrite-abbrev-file Write all user-level abbrev definitions to a file of Lisp code. This does not include system abbrevs; it includes only the abbrev tables listed in listed in `abbrev-table-name-list'. The file written can be loaded in another session to define the same abbrevs. The argument FILE is the file name to write. If omitted or nil, the file specified in `abbrev-file-name' is used. If VERBOSE is non-nil, display a message indicating where abbrevs have been saved. (fn &optional FILE VERBOSE)Fabbrev-edit-save-to-file Save all user-level abbrev definitions in current buffer to FILE. (fn FILE)Fabbrev-edit-save-buffer Save all user-level abbrev definitions in current buffer. The saved abbrevs are written to the file specified by `abbrev-file-name'.Fadd-mode-abbrev Define mode-specific abbrev for last word(s) before point. Argument is how many words before point form the expansion; or zero means the region is the expansion. A negative argument means to undefine the specified abbrev. Reads the abbreviation in the minibuffer. Don't use this function in a Lisp program; use `define-abbrev' instead. (fn ARG)Fadd-global-abbrev Define global (all modes) abbrev for last word(s) before point. The prefix argument specifies the number of words before point that form the expansion; or zero means the region is the expansion. A negative argument means to undefine the specified abbrev. This command uses the minibuffer to read the abbreviation. Don't use this function in a Lisp program; use `define-abbrev' instead. (fn ARG)Fadd-abbrev (fn TABLE TYPE ARG)Finverse-add-mode-abbrev Define last word before point as a mode-specific abbrev. With prefix argument N, defines the Nth word before point. This command uses the minibuffer to read the expansion. Expands the abbreviation after defining it. (fn N)Finverse-add-global-abbrev Define last word before point as a global (mode-independent) abbrev. With prefix argument N, defines the Nth word before point. This command uses the minibuffer to read the expansion. Expands the abbreviation after defining it. (fn N)Finverse-add-abbrev (fn TABLE TYPE ARG)Fabbrev-prefix-mark Mark current point as the beginning of an abbrev. Abbrev to be expanded starts here rather than at beginning of word. This way, you can expand an abbrev with a prefix: insert the prefix, use this command, then insert the abbrev. This command inserts a temporary hyphen after the prefix (until the intended abbrev expansion occurs). If the prefix is itself an abbrev, this command expands it, unless ARG is non-nil. Interactively, ARG is the prefix argument. (fn &optional ARG)Fexpand-region-abbrevs For abbrev occurrence in the region, offer to expand it. The user is asked to type `y' or `n' for each occurrence. A prefix argument means don't query; expand all abbrevs. (fn START END &optional NOQUERY)Fabbrev-table-get Get the PROP property of abbrev table TABLE. (fn TABLE PROP)Fabbrev-table-put Set the PROP property of abbrev table TABLE to VAL. (fn TABLE PROP VAL)Vabbrev-table-name-list List of symbols whose values are abbrev tables.Fmake-abbrev-table Create a new, empty abbrev table object. PROPS is a list of properties. (fn &optional PROPS)Fabbrev-table-p Return non-nil if OBJECT is an abbrev table. (fn OBJECT)Fabbrev-table-empty-p Return nil if there are no abbrev symbols in OBJECT. If IGNORE-SYSTEM is non-nil, system definitions are ignored. (fn OBJECT &optional IGNORE-SYSTEM)Vglobal-abbrev-table The abbrev table whose abbrevs affect all buffers. Each buffer may also have a local abbrev table. If it does, the local table overrides the global one for any particular abbrev defined in both.Vabbrev-minor-mode-table-alist Alist of abbrev tables to use for minor modes. Each element looks like (VARIABLE . ABBREV-TABLE); ABBREV-TABLE is active whenever VARIABLE's value is non-nil. ABBREV-TABLE can also be a list of abbrev tables.Vfundamental-mode-abbrev-table The abbrev table of mode-specific abbrevs for Fundamental Mode.Vabbrevs-changed Set non-nil by defining or altering any word abbrevs. This causes `save-some-buffers' to offer to save the abbrevs.Vabbrev-start-location Buffer position for `expand-abbrev' to use as the start of the abbrev. When nil, use the word before point as the abbrev. Calling `expand-abbrev' sets this to nil.Vabbrev-start-location-buffer Buffer that `abbrev-start-location' has been set for. Trying to expand an abbrev in any other buffer clears `abbrev-start-location'.Vlast-abbrev The abbrev-symbol of the last abbrev expanded. See `abbrev-symbol'.Vlast-abbrev-text The exact text of the last abbrev expanded. It is nil if the abbrev has already been unexpanded.Vlast-abbrev-location The location of the start of the last abbrev expanded.Fclear-abbrev-table Undefine all abbrevs in abbrev table TABLE, leaving it empty. (fn TABLE)Fdefine-abbrev Define an abbrev in TABLE named NAME, to expand to EXPANSION and call HOOK. NAME must be a string, and should be lower-case. EXPANSION should usually be a string. To undefine an abbrev, define it with EXPANSION = nil. If HOOK is non-nil, it should be a function of no arguments; it is called after EXPANSION is inserted. If EXPANSION is not a string (and not nil), the abbrev is a special one, which does not expand in the usual way but only runs HOOK. If HOOK is a non-nil symbol with a non-nil `no-self-insert' property, it can control whether the character that triggered abbrev expansion is inserted. If such a HOOK returns non-nil, the character is not inserted. If such a HOOK returns nil, then so does `abbrev-insert' (and `expand-abbrev'), as if no abbrev expansion had taken place. PROPS is a property list. The following properties are special: - `:count': the value for the abbrev's usage-count, which is incremented each time the abbrev is used (the default is zero). - `:system': if non-nil, says that this is a "system" abbreviation which should not be saved in the user's abbreviation file. Unless `:system' is `force', a system abbreviation will not overwrite a non-system abbreviation of the same name. - `:case-fixed': non-nil means that abbreviations are looked up without case-folding, and the expansion is not capitalized/upcased. - `:enable-function': a function of no argument which returns non-nil if the abbrev should be used for a particular call of `expand-abbrev'. An obsolete but still supported calling form is: (define-abbrev TABLE NAME EXPANSION &optional HOOK COUNT SYSTEM). (fn TABLE NAME EXPANSION &optional HOOK &rest PROPS)Fabbrev--check-chars Check if the characters in ABBREV have word syntax in either the current (if global is nil) or standard syntax table. (fn ABBREV GLOBAL)Fdefine-global-abbrev Define ABBREV as a global abbreviation for EXPANSION. The characters in ABBREV must all be word constituents in the standard syntax table. (fn ABBREV EXPANSION)Fdefine-mode-abbrev Define ABBREV as a mode-specific abbreviation for EXPANSION. The characters in ABBREV must all be word-constituents in the current mode. (fn ABBREV EXPANSION)Fabbrev--active-tables Return the list of abbrev tables currently active. TABLES if non-nil overrides the usual rules. It can hold either a single abbrev table or a list of abbrev tables. (fn &optional TABLES)Fabbrev--symbol Return the symbol representing abbrev named ABBREV in TABLE. This symbol's name is ABBREV, but it is not the canonical symbol of that name; it is interned in the abbrev-table TABLE rather than the normal obarray. The value is nil if that abbrev is not defined. (fn ABBREV TABLE)Fabbrev-symbol Return the symbol representing abbrev named ABBREV. This symbol's name is ABBREV, but it is not the canonical symbol of that name; it is interned in an abbrev-table rather than the normal obarray. The value is nil if that abbrev is not defined. Optional second arg TABLE is abbrev table to look it up in. The default is to try buffer's mode-specific abbrev table, then global table. (fn ABBREV &optional TABLE)Fabbrev-expansion Return the string that ABBREV expands into in the current buffer. Optionally specify an abbrev table as second arg; then ABBREV is looked up in that table only. (fn ABBREV &optional TABLE)Fabbrev--before-point Try and find an abbrev before point. Return it if found, nil otherwise.Fabbrev-insert Insert abbrev ABBREV at point. If non-nil, NAME is the name by which this abbrev was found. If non-nil, WORDSTART is the place where to insert the abbrev. If WORDEND is non-nil, the abbrev replaces the previous text between WORDSTART and WORDEND. Return ABBREV if the expansion should be considered as having taken place. The return value can be influenced by a `no-self-insert' property; see `define-abbrev' for details. (fn ABBREV &optional NAME WORDSTART WORDEND)Vabbrev-expand-functions Wrapper hook around `abbrev--default-expand'.Vabbrev-expand-function Function that `expand-abbrev' uses to perform abbrev expansion. Takes no argument and should return the abbrev symbol if expansion took place.Fexpand-abbrev Expand the abbrev before point, if there is an abbrev there. Effective when explicitly called even when `abbrev-mode' is nil. Before doing anything else, runs `pre-abbrev-expand-hook'. Calls the value of `abbrev-expand-function' with no argument to do the work, and returns whatever it does. (That return value should be the abbrev symbol if expansion occurred, else nil.)Fabbrev--default-expand Default function to use for `abbrev-expand-function'. This also respects the obsolete wrapper hook `abbrev-expand-functions'. (See `with-wrapper-hook' for details about wrapper hooks.) Calls `abbrev-insert' to insert any expansion, and returns what it does.Funexpand-abbrev Undo the expansion of the last abbrev that expanded. This differs from ordinary undo in that other editing done since then is not undone.Fabbrev--write Write the abbrev in a `read'able form. Only writes the non-system abbrevs. Presumes that `standard-output' points to `current-buffer'. (fn SYM)Fabbrev--describe (fn SYM)Finsert-abbrev-table-description Insert before point a full description of abbrev table named NAME. NAME is a symbol whose value is an abbrev table. If optional 2nd arg READABLE is non-nil, a human-readable description is inserted. Otherwise the description is an expression, a call to `define-abbrev-table', which would define the abbrev table NAME exactly as it is currently defined. Abbrevs marked as "system abbrevs" are omitted. (fn NAME &optional READABLE)Fdefine-abbrev-table Define TABLENAME (a symbol) as an abbrev table name. Define abbrevs in it according to DEFINITIONS, which is a list of elements of the form (ABBREVNAME EXPANSION ...) that are passed to `define-abbrev'. PROPS is a property list to apply to the table. Properties with special meaning: - `:parents' contains a list of abbrev tables from which this table inherits abbreviations. - `:case-fixed' non-nil means that abbreviations are looked up without case-folding, and the expansion is not capitalized/upcased. - `:regexp' is a regular expression that specifies how to extract the name of the abbrev before point. The submatch 1 is treated as the potential name of an abbrev. If :regexp is nil, the default behavior uses `backward-word' and `forward-word' to extract the name of the abbrev, which can therefore only be a single word. - `:enable-function' can be set to a function of no argument which returns non-nil if and only if the abbrevs in this table should be used for this instance of `expand-abbrev'. (fn TABLENAME DEFINITIONS &optional DOCSTRING &rest PROPS)Fabbrev-table-menu Return a menu that shows all abbrevs in TABLE. Selecting an entry runs `abbrev-insert'. PROMPT is the prompt to use for the keymap. SORTFUN is passed to `sort' to change the default ordering. (fn TABLE &optional PROMPT SORTFUN)Fedit-abbrevs-mode Major mode for editing the list of abbrev definitions. This mode is for editing abbrevs in a buffer prepared by `edit-abbrevs', which see. This mode runs the hook `edit-abbrevs-mode-hook', as the final or penultimate step during initialization. \{edit-abbrevs-mode-map}Sbindings.elc Fmake-mode-line-mouse-map Return a keymap with single entry for mouse key MOUSE on the mode line. MOUSE is defined to run function FUNCTION with no args in the buffer corresponding to the mode line clicked.Fmode-line-toggle-read-only Like toggling `read-only-mode', for the mode-line.Fmode-line-toggle-modified Toggle the buffer-modified flag from the mode-line.Fmode-line-widen Widen a buffer from the mode-line.Vmode-line-coding-system-map Local keymap for the coding-system part of the mode line.Fmode-line-change-eol Cycle through the various possible kinds of end-of-line styles.Vmode-line-default-help-echo Default help text for the mode line. If the value is a string, it specifies the tooltip or echo area message to display when the mouse is moved over the mode line. If the text at the mouse position has a `help-echo' text property, that overrides this variable.Vmode-line-front-space Mode line construct to put at the front of the mode line. By default, this construct is displayed right at the beginning of the mode line, except that if there is a memory-full message, it is displayed first.Fmode-line-mule-info-help-echo Return help text specifying WINDOW's buffer coding system.Vmode-line-mule-info Mode line construct to report the multilingual environment. Normally it displays current input method (if any activated) and mnemonics of the following coding systems: coding system for saving or writing the current buffer coding system for keyboard input (on a text terminal) coding system for terminal output (on a text terminal)Vmode-line-client Mode line construct for identifying emacsclient frames.Fmode-line-read-only-help-echo Return help text specifying WINDOW's buffer read-only status.Fmode-line-modified-help-echo Return help text specifying WINDOW's buffer modification status.Vmode-line-modified Mode line construct for displaying whether current buffer is modified.Vmode-line-remote Mode line construct to indicate a remote buffer.Fmode-line-frame-control Compute mode line construct for frame identification. Value is used for `mode-line-frame-identification', which see.Vmode-line-frame-identification Mode line construct to describe the current frame.Vmode-line-process Mode line construct for displaying info on process status. Normally nil in most modes, since there is no process to display.Fbindings--define-key Define KEY in keymap MAP according to ITEM from a menu. This is like `define-key', but it takes the definition from the specified menu item, and makes pure copies of as much as possible of the menu's data.Vmode-line-mode-menu Menu of mode operations in the mode line.Vmode-line-major-mode-keymap Keymap to display on major mode.Vmode-line-minor-mode-keymap Keymap to display on minor modes.Vmode-line-modes Mode line construct for displaying major and minor modes.Vmode-line-column-line-number-mode-map Keymap to display on column and line numbers.Vmode-line-position Mode line construct for displaying the position in the buffer. Normally displays the buffer percentage and, optionally, the buffer size, the line number and the column number.Vmode-line-buffer-identification-keymap Keymap for what is displayed by `mode-line-buffer-identification'.Fpropertized-buffer-identification Return a list suitable for `mode-line-buffer-identification'. FMT is a format specifier such as "%12b". This function adds text properties for face, help-echo, and local-map to it.Vmode-line-buffer-identification Mode line construct for identifying the buffer being displayed. Its default value is ("%12b") with some text properties added. Major modes that edit things other than ordinary files may change this (e.g. Info, Dired,...)Vmode-line-misc-info Mode line construct for miscellaneous information. By default, this shows the information specified by `global-mode-string'.Vmode-line-end-spaces Mode line construct to put at the end of the mode line.Fmode-line-unbury-buffer Call `unbury-buffer' in this window.Fmode-line-bury-buffer Like `bury-buffer', but temporarily select EVENT's window.Fmode-line-other-buffer Switch to the most recently selected buffer other than the current one.Fmode-line-next-buffer Like `next-buffer', but temporarily select EVENT's window.Fmode-line-previous-buffer Like `previous-buffer', but temporarily select EVENT's window.Fbound-and-true-p Return the value of symbol VAR if it is bound, else nil.Fmode-line-minor-mode-help Describe minor mode for EVENT on minor modes area of the mode line.Vminor-mode-alist Alist saying how to show minor modes in the mode line. Each element looks like (VARIABLE STRING); STRING is included in the mode line if VARIABLE's value is non-nil. Actually, STRING need not be a string; any mode-line construct is okay. See `mode-line-format'.Fcomplete-symbol Perform completion on the text around point. The completion method is determined by `completion-at-point-functions'. With a prefix argument, this command does completion within the collection of symbols listed in the index of the manual for the language you are using.Fright-char Move point N characters to the right (to the left if N is negative). On reaching beginning or end of buffer, stop and signal error. If `visual-order-cursor-movement' is non-nil, this always moves to the right on display, wherever that is in the buffer. Otherwise, depending on the bidirectional context, this may move one position either forward or backward in the buffer. This is in contrast with \[forward-char] and \[backward-char], which see.Fleft-char Move point N characters to the left (to the right if N is negative). On reaching beginning or end of buffer, stop and signal error. If `visual-order-cursor-movement' is non-nil, this always moves to the left on display, wherever that is in the buffer. Otherwise, depending on the bidirectional context, this may move one position either backward or forward in the buffer. This is in contrast with \[forward-char] and \[backward-char], which see.Fright-word Move point N words to the right (to the left if N is negative). Depending on the bidirectional context, this may move either forward or backward in the buffer. This is in contrast with \[forward-word] and \[backward-word], which see. Value is normally t. If an edge of the buffer or a field boundary is reached, point is left there and the function returns nil. Field boundaries are not noticed if `inhibit-field-text-motion' is non-nil.Fleft-word Move point N words to the left (to the right if N is negative). Depending on the bidirectional context, this may move either backward or forward in the buffer. This is in contrast with \[backward-word] and \[forward-word], which see. Value is normally t. If an edge of the buffer or a field boundary is reached, point is left there and the function returns nil. Field boundaries are not noticed if `inhibit-field-text-motion' is non-nil.Vnarrow-map Keymap for narrowing commands.Vgoto-map Keymap for navigation commands.Vsearch-map Keymap for search related commands.Vmode-specific-map Keymap for characters following C-c.Vctl-x-r-map Keymap for subcommands of C-x r.Vabbrev-map Keymap for abbrev commands.Sbuff-menu.elc VBuffer-menu-marker-char The mark character for marked buffers.VBuffer-menu-del-char Character used to flag buffers for deletion.VBuffer-menu-files-only Non-nil if the current Buffer Menu lists only file buffers. This is set by the prefix argument to `buffer-menu' and related commands.VBuffer-menu-mode-map Local keymap for `Buffer-menu-mode' buffers.FBuffer-menu-mode Major mode for Buffer Menu buffers. The Buffer Menu is invoked by the commands \[list-buffers], \[buffer-menu], and \[buffer-menu-other-window]. See `buffer-menu' for a description of its contents. In Buffer Menu mode, the following commands are defined: \<Buffer-menu-mode-map> \[quit-window] Remove the Buffer Menu from the display. \[Buffer-menu-this-window] Select current line's buffer in place of the buffer menu. \[Buffer-menu-other-window] Select that buffer in another window, so the Buffer Menu remains visible in its window. \[Buffer-menu-view] Select current line's buffer, in View mode. \[Buffer-menu-view-other-window] Select that buffer in another window, in view-mode. \[Buffer-menu-switch-other-window] Make another window display that buffer. \[Buffer-menu-mark] Mark current line's buffer to be displayed. \[Buffer-menu-select] Select current line's buffer. Also show buffers marked with m, in other windows. \[Buffer-menu-1-window] Select that buffer in full-frame window. \[Buffer-menu-2-window] Select that buffer in one window, together with the buffer selected before this one in another window. \[Buffer-menu-isearch-buffers] Incremental search in the marked buffers. \[Buffer-menu-isearch-buffers-regexp] Isearch for regexp in the marked buffers. \[Buffer-menu-multi-occur] Show lines matching regexp in the marked buffers. \[Buffer-menu-visit-tags-table] visit-tags-table this buffer. \[Buffer-menu-not-modified] Clear modified-flag on that buffer. \[Buffer-menu-save] Mark that buffer to be saved, and move down. \[Buffer-menu-delete] Mark that buffer to be deleted, and move down. \[Buffer-menu-delete-backwards] Mark that buffer to be deleted, and move up. \[Buffer-menu-execute] Delete or save marked buffers. \[Buffer-menu-unmark] Remove all marks from current line. With prefix argument, also move up one line. \[Buffer-menu-unmark-all-buffers] Remove a particular mark from all lines. \[Buffer-menu-unmark-all] Remove all marks from all lines. \[Buffer-menu-backup-unmark] Back up a line and remove marks. \[Buffer-menu-toggle-read-only] Toggle read-only status of buffer on this line. \[revert-buffer] Update the list of buffers. \[Buffer-menu-toggle-files-only] Toggle whether the menu displays only file buffers. \[Buffer-menu-bury] Bury the buffer listed on this line. In addition to any hooks its parent mode `tabulated-list-mode' might have run, this mode runs the hook `Buffer-menu-mode-hook', as the final or penultimate step during initialization.Fbuffer-menu Switch to the Buffer Menu. By default, the Buffer Menu lists all buffers except those whose names start with a space (which are for internal use). With prefix argument ARG, show only buffers that are visiting files. In the Buffer Menu, the first column (denoted "C") shows "." for the buffer from which you came, ">" for buffers you mark to be displayed, and "D" for those you mark for deletion. The "R" column has a "%" if the buffer is read-only. The "M" column has a "*" if it is modified, or "S" if you have marked it for saving. The remaining columns show the buffer name, the buffer size in characters, its major mode, and the visited file name (if any). See `Buffer-menu-mode' for the keybindings available the Buffer Menu. (fn &optional ARG)Fbuffer-menu-other-window Display the Buffer Menu in another window. See `buffer-menu' for a description of the Buffer Menu. By default, all buffers are listed except those whose names start with a space (which are for internal use). With prefix argument ARG, show only buffers that are visiting files. (fn &optional ARG)Flist-buffers Display a list of existing buffers. The list is displayed in a buffer named "*Buffer List*". See `buffer-menu' for a description of the Buffer Menu. By default, all buffers are listed except those whose names start with a space (which are for internal use). With prefix argument ARG, show only buffers that are visiting files. (fn &optional ARG)FBuffer-menu-toggle-files-only Toggle whether the current buffer-menu displays only file buffers. With a positive ARG, display only file buffers. With zero or negative ARG, display other buffers as well. (fn ARG)FBuffer-menu-buffer Return the buffer described by the current Buffer Menu line. If there is no buffer here, return nil if ERROR-IF-NON-EXISTENT-P is nil or omitted, and signal an error otherwise. (fn &optional ERROR-IF-NON-EXISTENT-P)FBuffer-menu-mark Mark the Buffer menu entry at point for later display. It will be displayed by the \<Buffer-menu-mode-map>\[Buffer-menu-select] command.FBuffer-menu-unmark Cancel all requested operations on buffer on this line and move down. Optional prefix arg means move up. (fn &optional BACKUP)FBuffer-menu-unmark-all-buffers Cancel a requested operation on all buffers. MARK is the character to flag the operation on the buffers. When called interactively prompt for MARK; RET remove all marks. (fn MARK)FBuffer-menu-unmark-all Cancel all requested operations on buffers.FBuffer-menu-backup-unmark Move up and cancel all requested operations on buffer on line above.FBuffer-menu-delete Mark the buffer on this Buffer Menu buffer line for deletion. A subsequent \<Buffer-menu-mode-map>`\[Buffer-menu-execute]' command will delete it. If prefix argument ARG is non-nil, it specifies the number of buffers to delete; a negative ARG means to delete backwards. (fn &optional ARG)FBuffer-menu-delete-backwards Mark the buffer on this Buffer Menu line for deletion, and move up. A subsequent \<Buffer-menu-mode-map>`\[Buffer-menu-execute]' command will delete the marked buffer. Prefix ARG means move that many lines. (fn &optional ARG)FBuffer-menu-save Mark the buffer on this Buffer Menu line for saving. A subsequent \<Buffer-menu-mode-map>`\[Buffer-menu-execute]' command will save it.FBuffer-menu-not-modified Mark the buffer on this line as unmodified (no changes to save). If ARG is non-nil (interactively, with a prefix argument), mark it as modified. (fn &optional ARG)FBuffer-menu-execute Save and/or delete marked buffers in the Buffer Menu. Buffers marked with \<Buffer-menu-mode-map>`\[Buffer-menu-save]' are saved. Buffers marked with \<Buffer-menu-mode-map>`\[Buffer-menu-delete]' are deleted.FBuffer-menu-select Select this line's buffer; also, display buffers marked with `>'. You can mark buffers with the \<Buffer-menu-mode-map>`\[Buffer-menu-mark]' command. This command deletes and replaces all the previously existing windows in the selected frame.FBuffer-menu-marked-buffers Return the list of buffers marked with `Buffer-menu-mark'. If UNMARK is non-nil, unmark them. (fn &optional UNMARK)FBuffer-menu-isearch-buffers Search for a string through all marked buffers using Isearch.FBuffer-menu-isearch-buffers-regexp Search for a regexp through all marked buffers using Isearch.FBuffer-menu-multi-occur Show all lines in marked buffers containing a match for a regexp. (fn REGEXP &optional NLINES)FBuffer-menu-visit-tags-table Visit the tags table in the buffer on this line. See `visit-tags-table'.FBuffer-menu-1-window Select this line's buffer, alone, in full frame.FBuffer-menu-this-window Select this line's buffer in this window.FBuffer-menu-other-window Select this line's buffer in other window, leaving buffer menu visible.FBuffer-menu-switch-other-window Make the other window select this line's buffer. The current window remains selected.FBuffer-menu-2-window Select this line's buffer, with previous buffer in second window.FBuffer-menu-toggle-read-only Toggle read-only status of buffer on this line. This behaves like invoking \[read-only-mode] in that buffer.FBuffer-menu-bury Bury the buffer listed on this line.FBuffer-menu-view View this line's buffer in View mode.FBuffer-menu-view-other-window View this line's buffer in View mode in another window.Flist-buffers-noselect Create and return a Buffer Menu buffer. This is called by `buffer-menu' and others as a subroutine. If FILES-ONLY is non-nil, show only file-visiting buffers. If BUFFER-LIST is non-nil, it should be a list of buffers; it means list those buffers and no others. (fn &optional FILES-ONLY BUFFER-LIST)FBuffer-menu-mouse-select Select the buffer whose line you click on. (fn EVENT)Flist-buffers--refresh (fn &optional BUFFER-LIST OLD-BUFFER)Ftabulated-list-entry-size-> (fn ENTRY1 ENTRY2)FBuffer-menu--pretty-name (fn NAME)FBuffer-menu--pretty-file-name (fn FILE)Sbutton.elc Vbutton-map Keymap used by buttons.Vbutton-buffer-map Keymap useful for buffers containing buttons. Mode-specific keymaps may want to use this as their parent keymap.Fbutton-category-symbol Return the symbol used by button-type TYPE to store properties. Buttons inherit them by setting their `category' property to that symbol.Fdefine-button-type Define a `button type' called NAME (a symbol). The remaining arguments form a sequence of PROPERTY VALUE pairs, specifying properties to use as defaults for buttons with this type (a button's type may be set by giving it a `type' property when creating the button, using the :type keyword argument). In addition, the keyword argument :supertype may be used to specify a button-type from which NAME inherits its default property values (however, the inheritance happens only when NAME is defined; subsequent changes to a supertype are not reflected in its subtypes).Fbutton-type-put Set the button-type TYPE's PROP property to VAL.Fbutton-type-get Get the property of button-type TYPE named PROP.Fbutton-type-subtype-p Return t if button-type TYPE is a subtype of SUPERTYPE.Fbutton-start Return the position at which BUTTON starts.Fbutton-end Return the position at which BUTTON ends.Fbutton-get Get the property of button BUTTON named PROP.Fbutton-put Set BUTTON's PROP property to VAL.Fbutton-activate Call BUTTON's `action' property. If USE-MOUSE-ACTION is non-nil, invoke the button's `mouse-action' property instead of `action'; if the button has no `mouse-action', the value of `action' is used instead. The action can either be a marker or a function. If it's a marker then goto it. Otherwise if it is a function then it is called with BUTTON as only argument. BUTTON is either an overlay, a buffer position, or (for buttons in the mode-line or header-line) a string.Fbutton-label Return BUTTON's text label.Fbutton-type Return BUTTON's button-type.Fbutton-has-type-p Return t if BUTTON has button-type TYPE, or one of TYPE's subtypes.Fbutton--area-button-p Return non-nil if BUTTON is an area button. Such area buttons are used for buttons in the mode-line and header-line.Fmake-button Make a button from BEG to END in the current buffer. The remaining arguments form a sequence of PROPERTY VALUE pairs, specifying properties to add to the button. In addition, the keyword argument :type may be used to specify a button-type from which to inherit other properties; see `define-button-type'. Also see `make-text-button', `insert-button'.Finsert-button Insert a button with the label LABEL. The remaining arguments form a sequence of PROPERTY VALUE pairs, specifying properties to add to the button. In addition, the keyword argument :type may be used to specify a button-type from which to inherit other properties; see `define-button-type'. Also see `insert-text-button', `make-button'.Fmake-text-button Make a button from BEG to END in the current buffer. The remaining arguments form a sequence of PROPERTY VALUE pairs, specifying properties to add to the button. In addition, the keyword argument :type may be used to specify a button-type from which to inherit other properties; see `define-button-type'. This function is like `make-button', except that the button is actually part of the text instead of being a property of the buffer. That is, this function uses text properties, the other uses overlays. Creating large numbers of buttons can also be somewhat faster using `make-text-button'. Note, however, that if there is an existing face property at the site of the button, the button face may not be visible. You may want to use `make-button' in that case. BEG can also be a string, in which case it is made into a button. Also see `insert-text-button'.Finsert-text-button Insert a button with the label LABEL. The remaining arguments form a sequence of PROPERTY VALUE pairs, specifying properties to add to the button. In addition, the keyword argument :type may be used to specify a button-type from which to inherit other properties; see `define-button-type'. This function is like `insert-button', except that the button is actually part of the text instead of being a property of the buffer. Creating large numbers of buttons can also be somewhat faster using `insert-text-button'. Also see `make-text-button'.Fbutton-at Return the button at position POS in the current buffer, or nil. If the button at POS is a text property button, the return value is a marker pointing to POS.Fnext-button Return the next button after position POS in the current buffer. If COUNT-CURRENT is non-nil, count any button at POS in the search, instead of starting at the next button.Fprevious-button Return the previous button before position POS in the current buffer. If COUNT-CURRENT is non-nil, count any button at POS in the search, instead of starting at the next button.Fpush-button Perform the action specified by a button at location POS. POS may be either a buffer position or a mouse-event. If USE-MOUSE-ACTION is non-nil, invoke the button's `mouse-action' property instead of its `action' property; if the button has no `mouse-action', the value of `action' is used instead. The action in both cases may be either a function to call or a marker to display and is invoked using `button-activate' (which see). POS defaults to point, except when `push-button' is invoked interactively as the result of a mouse-event, in which case, the mouse event is used. If there's no button at POS, do nothing and return nil, otherwise return t.Fforward-button Move to the Nth next button, or Nth previous button if N is negative. If N is 0, move to the start of any button at point. If WRAP is non-nil, moving past either end of the buffer continues from the other end. If DISPLAY-MESSAGE is non-nil, the button's help-echo string is displayed. Any button with a non-nil `skip' property is skipped over. Returns the button found.Fbackward-button Move to the Nth previous button, or Nth next button if N is negative. If N is 0, move to the start of any button at point. If WRAP is non-nil, moving past either end of the buffer continues from the other end. If DISPLAY-MESSAGE is non-nil, the button's help-echo string is displayed. Any button with a non-nil `skip' property is skipped over. Returns the button found.Scase-table.elc Fdescribe-buffer-case-table Describe the case table of the current buffer.Fcase-table-get-table Return the TABLE of CASE-TABLE. TABLE can be `down', `up', `eqv' or `canon'. (fn CASE-TABLE TABLE)Fget-upcase-table Return the upcase table of CASE-TABLE. (fn CASE-TABLE)Fcopy-case-table (fn CASE-TABLE)Fset-case-syntax-delims Make characters L and R a matching pair of non-case-converting delimiters. This sets the entries for L and R in TABLE, which is a string that will be used as the downcase part of a case table. It also modifies `standard-syntax-table' to indicate left and right delimiters. (fn L R TABLE)Fset-case-syntax-pair Make characters UC and LC a pair of inter-case-converting letters. This sets the entries for characters UC and LC in TABLE, which is a string that will be used as the downcase part of a case table. It also modifies `standard-syntax-table' to give them the syntax of word constituents. (fn UC LC TABLE)Fset-upcase-syntax Make character UC an upcase of character LC. It also modifies `standard-syntax-table' to give them the syntax of word constituents. (fn UC LC TABLE)Fset-downcase-syntax Make character LC a downcase of character UC. It also modifies `standard-syntax-table' to give them the syntax of word constituents. (fn UC LC TABLE)Fset-case-syntax Make character C case-invariant with syntax SYNTAX. This sets the entry for character C in TABLE, which is a string that will be used as the downcase part of a case table. It also modifies `standard-syntax-table'. SYNTAX should be " ", "w", "." or "_". (fn C SYNTAX TABLE)Scomposite.elc Vreference-point-alist Alist of symbols vs integer codes of glyph reference points. A glyph reference point symbol is to be used to specify a composition rule in COMPONENTS argument to such functions as `compose-region'. The meaning of glyph reference point codes is as follows: 0----1----2 <---- ascent 0:tl or top-left | | 1:tc or top-center | | 2:tr or top-right | | 3:Bl or base-left 9:cl or center-left 9 10 11 <---- center 4:Bc or base-center 10:cc or center-center | | 5:Br or base-right 11:cr or center-right --3----4----5-- <-- baseline 6:bl or bottom-left | | 7:bc or bottom-center 6----7----8 <---- descent 8:br or bottom-right Glyph reference point symbols are to be used to specify a composition rule of the form (GLOBAL-REF-POINT . NEW-REF-POINT), where GLOBAL-REF-POINT is a reference point in the overall glyphs already composed, and NEW-REF-POINT is a reference point in the new glyph to be added. For instance, if GLOBAL-REF-POINT is `br' (bottom-right) and NEW-REF-POINT is `tc' (top-center), the overall glyph is updated as follows (the point `*' corresponds to both reference points): +-------+--+ <--- new ascent | | | | global| | | glyph | | -- | | |-- <--- baseline (doesn't change) +----+--*--+ | | new | | |glyph| +----+-----+ <--- new descent A composition rule may have the form (GLOBAL-REF-POINT NEW-REF-POINT XOFF YOFF), where XOFF and YOFF specify how much to shift NEW-REF-POINT from GLOBAL-REF-POINT. In this case, XOFF and YOFF are integers in the range -100..100 representing the shifting percentage against the font size.Fencode-composition-rule Encode composition rule RULE into an integer value. RULE is a cons of global and new reference point symbols (see `reference-point-alist').Fcompose-region Compose characters in the current region. Characters are composed relatively, i.e. composed by overstriking or stacking depending on ascent, descent and other metrics of glyphs. For instance, if the region has three characters "XYZ", X is regarded as BASE glyph, and Y is displayed: (1) above BASE if Y's descent value is not positive (2) below BASE if Y's ascent value is not positive (3) on BASE (i.e. at the BASE position) otherwise and Z is displayed with the same rule while regarding the whole XY glyphs as BASE. When called from a program, expects these four arguments. First two arguments START and END are positions (integers or markers) specifying the region. Optional 3rd argument COMPONENTS, if non-nil, is a character, a string or a vector or list of integers and rules. If it is a character, it is an alternate character to display instead of the text in the region. If it is a string, the elements are alternate characters. In this case, TAB element has a special meaning. If the first character is TAB, the glyphs are displayed with left padding space so that no pixel overlaps with the previous column. If the last character is TAB, the glyphs are displayed with right padding space so that no pixel overlaps with the following column. If it is a vector or list, it is a sequence of alternate characters and composition rules, where (2N)th elements are characters and (2N+1)th elements are composition rules to specify how to compose (2N+2)th elements with previously composed N glyphs. A composition rule is a cons of global and new glyph reference point symbols. See the documentation of `reference-point-alist' for more details. Optional 4th argument MODIFICATION-FUNC is a function to call to adjust the composition when it gets invalid because of a change of text in the composition.Fdecompose-region Decompose text in the current region. When called from a program, expects two arguments, positions (integers or markers) specifying the region.Fcompose-string Compose characters in string STRING. The return value is STRING with the `composition' property put on all the characters in it. Optional 2nd and 3rd arguments START and END specify the range of STRING to be composed. They default to the beginning and the end of STRING respectively. Optional 4th argument COMPONENTS, if non-nil, is a character or a sequence (vector, list, or string) of integers. See the function `compose-region' for more detail. Optional 5th argument MODIFICATION-FUNC is a function to call to adjust the composition when it gets invalid because of a change of text in the composition.Fdecompose-string Return STRING where `composition' property is removed.Fcompose-chars Return a string from arguments in which all characters are composed. For relative composition, arguments are characters. For rule-based composition, Mth (where M is odd) arguments are characters, and Nth (where N is even) arguments are composition rules. A composition rule is a cons of glyph reference points of the form (GLOBAL-REF-POINT . NEW-REF-POINT). See the documentation of `reference-point-alist' for more detail.Ffind-composition Return information about a composition at or near buffer position POS. If the character at POS has `composition' property, the value is a list (FROM TO VALID-P). FROM and TO specify the range of text that has the same `composition' property, VALID-P is t if this composition is valid, and nil if not. If there's no composition at POS, and the optional 2nd argument LIMIT is non-nil, search for a composition toward the position given by LIMIT. If no composition is found, return nil. Optional 3rd argument STRING, if non-nil, is a string to look for a composition in; nil means the current buffer. If a valid composition is found and the optional 4th argument DETAIL-P is non-nil, the return value is a list of the form (FROM TO COMPONENTS RELATIVE-P MOD-FUNC WIDTH) COMPONENTS is a vector of integers, the meaning depends on RELATIVE-P. RELATIVE-P is t if the composition method is relative, else nil. If RELATIVE-P is t, COMPONENTS is a vector of characters to be composed. If RELATIVE-P is nil, COMPONENTS is a vector of characters and composition rules as described in `compose-region'. MOD-FUNC is a modification function of the composition. WIDTH is a number of columns the composition occupies on the screen. When Automatic Composition mode is on, this function also finds a chunk of text that is automatically composed. If such a chunk is found closer to POS than the position that has `composition' property, the value is a list of FROM, TO, and a glyph-string that specifies how the chunk is to be composed; DETAIL-P is ignored in this case. See the function `composition-get-gstring' for the format of the glyph-string.Fcompose-chars-after Compose characters in current buffer after position POS. It looks up the char-table `composition-function-table' (which see) by a character at POS, and compose characters after POS according to the contents of `composition-function-table'. Optional 2nd arg LIMIT, if non-nil, limits characters to compose. Optional 3rd arg OBJECT, if non-nil, is a string that contains the text to compose. In that case, POS and LIMIT index into the string. This function is the default value of `compose-chars-after-function'.Fcompose-last-chars Compose last characters. The argument is a parameterized event of the form (compose-last-chars N COMPONENTS), where N is the number of characters before point to compose, COMPONENTS, if non-nil, is the same as the argument to `compose-region' (which see). If it is nil, `compose-chars-after' is called, and that function finds a proper rule to compose the target characters. This function is intended to be used from input methods. The global keymap binds special event `compose-last-chars' to this function. Input method may generate an event (compose-last-chars N COMPONENTS) after a sequence of character events.Fcompose-gstring-for-graphic Compose glyph-string GSTRING for graphic display. Combining characters are composed with the preceding base character. If the preceding character is not a base character, each combining character is composed as a spacing character by a padding space before and/or after the character. All non-spacing characters have this function in `composition-function-table' unless overwritten.Fcompose-gstring-for-terminal Compose glyph-string GSTRING for terminal display. Non-spacing characters are composed with the preceding base character. If the preceding character is not a base character, each non-spacing character is composed as a spacing character by prepending a space before it.Fauto-compose-chars Compose the characters at FROM by FUNC. FUNC is called with one argument GSTRING which is built for characters in the region FROM (inclusive) and TO (exclusive). If the character are composed on a graphic display, FONT-OBJECT is a font to use. Otherwise, FONT-OBJECT is nil, and the function `compose-gstring-for-terminal' is used instead of FUNC. If STRING is non-nil, it is a string, and FROM and TO are indices into the string. In that case, compose characters in the string. The value is a gstring containing information for shaping the characters. This function is the default value of `auto-composition-function' (which see).Fauto-composition-mode Toggle Auto Composition mode. With a prefix argument ARG, enable Auto Composition mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Auto Composition mode is enabled, text characters are automatically composed by functions registered in `composition-function-table'. You can use `global-auto-composition-mode' to turn on Auto Composition mode in all buffers (this is the default).Fglobal-auto-composition-mode Toggle Auto Composition mode in all buffers. With a prefix argument ARG, enable it if ARG is positive, and disable it otherwise. If called from Lisp, enable it if ARG is omitted or nil. For more information on Auto Composition mode, see `auto-composition-mode' .Scus-face.elc Fcustom-declare-face Like `defface', but with FACE evaluated as a normal argument.Vcustom-face-attributes Alist of face attributes. The elements are of the form (KEY TYPE PRE-FILTER POST-FILTER), where KEY is the name of the attribute, TYPE is a widget type for editing the attribute, PRE-FILTER is a function to make the attribute's value suitable for the customization widget, and POST-FILTER is a function to make the customized value suitable for storing. PRE-FILTER and POST-FILTER are optional. The PRE-FILTER should take a single argument, the attribute value as stored, and should return a value for customization (using the customization type TYPE). The POST-FILTER should also take a single argument, the value after being customized, and should return a value suitable for setting the given face attribute.Fcustom-face-attributes-get For FACE on FRAME, return an alternating list describing its attributes. The list has the form (KEYWORD VALUE KEYWORD VALUE...). Each keyword should be listed in `custom-face-attributes'. If FRAME is nil, use the global defaults for FACE.Fcustom-set-faces Apply a list of face specs for user customizations. This works by calling `custom-theme-set-faces' for the `user' theme, a special theme referring to settings made via Customize. The arguments should be a list where each entry has the form: (FACE SPEC [NOW [COMMENT]]) See the documentation of `custom-theme-set-faces' for details.Fcustom-theme-set-faces Apply a list of face specs associated with theme THEME. THEME should be a theme name (a symbol). The special theme named `user' refers to user settings applied via Customize. The remaining ARGS should be a list where each entry is a list of the form: (FACE SPEC [NOW [COMMENT]]) FACE should be a face name (a symbol). If FACE is a face alias, the setting refers to the parent face. SPEC should be a face spec. For details, see `defface'. NOW, if present and non-nil, forces the face settings to take immediate effect in the Emacs display; in particular, FACE is initialized as a face if it is not yet one. If NOW is omitted or nil, the caller is responsible for making the settings take effect later, by calling `custom-theme-recalc-face' or `face-spec-recalc'. COMMENT is a string comment about FACE. This function works by calling `custom-push-theme' to record each SPEC in each FACE's `theme-face' property, and in THEME's `theme-settings' property. If FACE has not already been customized, it also stores SPEC in the `saved-face' property. If THEME has a non-nil `theme-immediate' property, this is equivalent to providing the NOW argument to all faces in the argument list.Fcustom-theme-reset-faces Reset the specs in THEME of some faces to their specs in other themes. Each of the arguments ARGS has this form: (FACE IGNORED) This means reset FACE. The argument IGNORED is ignored.Fcustom-reset-faces Reset the specs of some faces to their specs in specified themes. This creates settings in the `user' theme. Each of the arguments ARGS has this form: (FACE FROM-THEME) This means reset FACE to its value in FROM-THEME.Scus-start.elc Fminibuffer-prompt-properties--setter (fn SYMBOL VALUE)Scustom.elc Vcustom-define-hook Hook called after defining each customize option.Vcustom-dont-initialize Non-nil means `defcustom' should not initialize the variable. That is used for the sake of `custom-make-dependencies'. Users should not set it.Vcustom-current-group-alist Alist of (FILE . GROUP) indicating the current group to use for FILE.Fcustom-initialize-default Initialize SYMBOL with EXP. This will do nothing if symbol already has a default binding. Otherwise, if symbol has a `saved-value' property, it will evaluate the car of that and use it as the default binding for symbol. Otherwise, EXP will be evaluated and used as the default binding for symbol.Fcustom-initialize-set Initialize SYMBOL based on EXP. If the symbol doesn't have a default binding already, then set it using its `:set' function (or `set-default' if it has none). The value is either the value in the symbol's `saved-value' property, if any, or the value of EXP.Fcustom-initialize-reset Initialize SYMBOL based on EXP. Set the symbol, using its `:set' function (or `set-default' if it has none). The value is either the symbol's current value (as obtained using the `:get' function), if any, or the value in the symbol's `saved-value' property if any, or (last of all) the value of EXP.Fcustom-initialize-changed Initialize SYMBOL with EXP. Like `custom-initialize-reset', but only use the `:set' function if not using the standard setting. For the standard setting, use `set-default'.Vcustom-delayed-init-variables List of variables whose initialization is pending.Fcustom-initialize-delay Delay initialization of SYMBOL to the next Emacs start. This is used in files that are preloaded (or for autoloaded variables), so that the initialization is done in the run-time context rather than the build-time context. This also has the side-effect that the (delayed) initialization is performed with the :set function. For variables in preloaded files, you can simply use this function for the :initialize property. For autoloaded variables, you will also need to add an autoload stanza calling this function, and another one setting the standard-value property. Or you can wrap the defcustom in a progn, to force the autoloader to include all of it.Fcustom-declare-variable Like `defcustom', but SYMBOL and DEFAULT are evaluated as normal arguments. DEFAULT should be an expression to evaluate to compute the default value, not the default value itself. DEFAULT is stored as SYMBOL's standard value, in SYMBOL's property `standard-value'. At the same time, SYMBOL's property `force-value' is set to nil, as the value is no longer rogue.Fdefcustom Declare SYMBOL as a customizable variable. SYMBOL is the variable name; it should not be quoted. STANDARD is an expression specifying the variable's standard value. It should not be quoted. It is evaluated once by `defcustom', and the value is assigned to SYMBOL if the variable is unbound. The expression itself is also stored, so that Customize can re-evaluate it later to get the standard value. DOC is the variable documentation. This macro uses `defvar' as a subroutine, which also marks the variable as "special", so that it is always dynamically bound even when `lexical-binding' is t. The remaining arguments to `defcustom' should have the form [KEYWORD VALUE]... The following keywords are meaningful: :type VALUE should be a widget type for editing the symbol's value. Every `defcustom' should specify a value for this keyword. :options VALUE should be a list of valid members of the widget type. :initialize VALUE should be a function used to initialize the variable. It takes two arguments, the symbol and value given in the `defcustom' call. The default is `custom-initialize-reset'. :set VALUE should be a function to set the value of the symbol when using the Customize user interface. It takes two arguments, the symbol to set and the value to give it. The function should not modify its value argument destructively. The default choice of function is `set-default'. :get VALUE should be a function to extract the value of symbol. The function takes one argument, a symbol, and should return the current value for that symbol. The default choice of function is `default-value'. :require VALUE should be a feature symbol. If you save a value for this option, then when your init file loads the value, it does (require VALUE) first. :set-after VARIABLES Specifies that SYMBOL should be set after the list of variables VARIABLES when both have been customized. :risky Set SYMBOL's `risky-local-variable' property to VALUE. :safe Set SYMBOL's `safe-local-variable' property to VALUE. See Info node `(elisp) File Local Variables'. The following common keywords are also meaningful. :group VALUE should be a customization group. Add SYMBOL (or FACE with `defface') to that group. :link LINK-DATA Include an external link after the documentation string for this item. This is a sentence containing an active field which references some other documentation. There are several alternatives you can use for LINK-DATA: (custom-manual INFO-NODE) Link to an Info node; INFO-NODE is a string which specifies the node name, as in "(emacs)Top". (info-link INFO-NODE) Like `custom-manual' except that the link appears in the customization buffer with the Info node name. (url-link URL) Link to a web page; URL is a string which specifies the URL. (emacs-commentary-link LIBRARY) Link to the commentary section of LIBRARY. (emacs-library-link LIBRARY) Link to an Emacs Lisp LIBRARY file. (file-link FILE) Link to FILE. (function-link FUNCTION) Link to the documentation of FUNCTION. (variable-link VARIABLE) Link to the documentation of VARIABLE. (custom-group-link GROUP) Link to another customization GROUP. You can specify the text to use in the customization buffer by adding `:tag NAME' after the first element of the LINK-DATA; for example, (info-link :tag "foo" "(emacs)Top") makes a link to the Emacs manual which appears in the buffer as `foo'. An item can have more than one external link; however, most items have none at all. :version VALUE should be a string specifying that the variable was first introduced, or its default value was changed, in Emacs version VERSION. :package-version VALUE should be a list with the form (PACKAGE . VERSION) specifying that the variable was first introduced, or its default value was changed, in PACKAGE version VERSION. This keyword takes priority over :version. For packages which are bundled with Emacs releases, the PACKAGE and VERSION must appear in the alist `customize-package-emacs-version-alist'. Since PACKAGE must be unique and the user might see it in an error message, a good choice is the official name of the package, such as MH-E or Gnus. :tag LABEL Use LABEL, a string, instead of the item's name, to label the item in customization menus and buffers. :load FILE Load file FILE (a string) before displaying this customization item. Loading is done with `load', and only if the file is not already loaded. If SYMBOL has a local binding, then this form affects the local binding. This is normally not what you want. Thus, if you need to load a file defining variables with this form, or with `defvar' or `defconst', you should always load that file _outside_ any bindings for these variables. (`defvar' and `defconst' behave similarly in this respect.) See Info node `(elisp) Customization' in the Emacs Lisp manual for more information.Fdefface Declare FACE as a customizable face that defaults to SPEC. FACE does not need to be quoted. Third argument DOC is the face documentation. If FACE has been set with `custom-theme-set-faces', set the face attributes as specified by that function, otherwise set the face attributes according to SPEC. The remaining arguments should have the form [KEYWORD VALUE]... For a list of valid keywords, see the common keywords listed in `defcustom'. SPEC should be a "face spec", i.e., an alist of the form ((DISPLAY . ATTS)...) where DISPLAY is a form specifying conditions to match certain terminals and ATTS is a property list (ATTR VALUE ATTR VALUE...) specifying face attributes and values for frames on those terminals. On each terminal, the first element with a matching DISPLAY specification takes effect, and the remaining elements in SPEC are disregarded. As a special exception, in the first element of SPEC, DISPLAY can be the special value `default'. Then the ATTS in that element act as defaults for all the following elements. For backward compatibility, elements of SPEC can be written as (DISPLAY ATTS) instead of (DISPLAY . ATTS). Each DISPLAY can have the following values: - `default' (only in the first element). - The symbol t, which matches all terminals. - An alist of conditions. Each alist element must have the form (REQ ITEM...). A matching terminal must satisfy each specified condition by matching one of its ITEMs. Each REQ must be one of the following: - `type' (the terminal type). Each ITEM must be one of the values returned by `window-system'. Under X, additional allowed values are `motif', `lucid', `gtk' and `x-toolkit'. - `class' (the terminal's color support). Each ITEM should be one of `color', `grayscale', or `mono'. - `background' (what color is used for the background text) Each ITEM should be one of `light' or `dark'. - `min-colors' (the minimum number of supported colors) Each ITEM should be an integer, which is compared with the result of `display-color-cells'. - `supports' (match terminals supporting certain attributes). Each ITEM should be a list of face attributes. See `display-supports-face-attributes-p' for more information on exactly how testing is done. In the ATTS property list, possible attributes are `:family', `:width', `:height', `:weight', `:slant', `:underline', `:overline', `:strike-through', `:box', `:foreground', `:background', `:stipple', `:inverse-video', and `:inherit'. See Info node `(elisp) Faces' in the Emacs Lisp manual for more information.Fcustom-declare-group Like `defgroup', but SYMBOL is evaluated as a normal argument.Fdefgroup Declare SYMBOL as a customization group containing MEMBERS. SYMBOL does not need to be quoted. Third argument DOC is the group documentation. This should be a short description of the group, beginning with a capital and ending with a period. Words other than the first should not be capitalized, if they are not usually written so. MEMBERS should be an alist of the form ((NAME WIDGET)...) where NAME is a symbol and WIDGET is a widget for editing that symbol. Useful widgets are `custom-variable' for editing variables, `custom-face' for editing faces, and `custom-group' for editing groups. The remaining arguments should have the form [KEYWORD VALUE]... For a list of valid keywords, see the common keywords listed in `defcustom'. See Info node `(elisp) Customization' in the Emacs Lisp manual for more information.Fcustom-add-to-group To existing GROUP add a new OPTION of type WIDGET. If there already is an entry for OPTION and WIDGET, nothing is done.Fcustom-group-of-mode Return the custom group corresponding to the major or minor MODE. If no such group is found, return nil.Fcustom-handle-all-keywords For customization option SYMBOL, handle keyword arguments ARGS. Third argument TYPE is the custom option type.Fcustom-handle-keyword For customization option SYMBOL, handle KEYWORD with VALUE. Fourth argument TYPE is the custom option type.Fcustom-add-dependencies To the custom option SYMBOL, add dependencies specified by VALUE. VALUE should be a list of symbols. For each symbol in that list, this specifies that SYMBOL should be set after the specified symbol, if both appear in constructs like `custom-set-variables'.Fcustom-add-option To the variable SYMBOL add OPTION. If SYMBOL's custom type is a hook, OPTION should be a hook member. If SYMBOL's custom type is an alist, OPTION specifies a symbol to offer to the user as a possible key in the alist. For other custom types, this has no effect.Fcustom-add-link To the custom option SYMBOL add the link WIDGET.Fcustom-add-version To the custom option SYMBOL add the version VERSION.Fcustom-add-package-version To the custom option SYMBOL add the package version VERSION.Fcustom-add-load To the custom option SYMBOL add the dependency LOAD. LOAD should be either a library file name, or a feature name.Fcustom-autoload Mark SYMBOL as autoloaded custom variable and add dependency LOAD. If NOSET is non-nil, don't bother autoloading LOAD when setting the variable.Fcustom-variable-p Return non-nil if VARIABLE is a customizable variable. A customizable variable is either (i) a variable whose property list contains a non-nil `standard-value' or `custom-autoload' property, or (ii) an alias for another customizable variable.Fcustom-note-var-changed Inform Custom that VARIABLE has been set (changed). VARIABLE is a symbol that names a user option. The result is that the change is treated as having been made through Custom.Vcustom-load-recursion Hack to avoid recursive dependencies.Fcustom-load-symbol Load all dependencies for SYMBOL.Vcustom-local-buffer Non-nil, in a Customization buffer, means customize a specific buffer. If this variable is non-nil, it should be a buffer, and it means customize the local bindings of that buffer. This variable is a permanent local, and it normally has a local binding in every Customization buffer.Fcustom-set-default Default :set function for a customizable variable. Normally, this sets the default value of VARIABLE to VALUE, but if `custom-local-buffer' is non-nil, this sets the local binding in that buffer instead.Fcustom-set-minor-mode :set function for minor mode variables. Normally, this sets the default value of VARIABLE to nil if VALUE is nil and to t otherwise, but if `custom-local-buffer' is non-nil, this sets the local binding in that buffer instead.Fcustom-quote Quote SEXP if it is not self quoting.Fcustomize-mark-to-save Mark SYMBOL for later saving. If the default value of SYMBOL is different from the standard value, set the `saved-value' property to a list whose car evaluates to the default value. Otherwise, set it to nil. To actually save the value, call `custom-save-all'. Return non-nil if the `saved-value' property actually changed.Fcustomize-mark-as-set Mark current value of SYMBOL as being set from customize. If the default value of SYMBOL is different from the saved value if any, or else if it is different from the standard value, set the `customized-value' property to a list whose car evaluates to the default value. Otherwise, set it to nil. Return non-nil if the `customized-value' property actually changed.Fcustom-reevaluate-setting Reset the value of SYMBOL by re-evaluating its saved or standard value. Use the :set function to do so. This is useful for customizable options that are defined before their standard value can really be computed. E.g. dumped variables whose default depends on run-time information.Vcustom-known-themes Themes that have been defined with `deftheme'. The default value is the list (user changed). The theme `changed' contains the settings before custom themes are applied. The theme `user' contains all the settings the user customized and saved. Additional themes declared with the `deftheme' macro will be added to the front of this list.Fcustom-theme-p Non-nil when THEME has been defined.Fcustom-check-theme Check whether THEME is valid, and signal an error if it is not.Fcustom-push-theme Record VALUE for face or variable SYMBOL in custom theme THEME. PROP is `theme-face' for a face, `theme-value' for a variable. MODE can be either the symbol `set' or the symbol `reset'. If it is the symbol `set', then VALUE is the value to use. If it is the symbol `reset', then SYMBOL will be removed from THEME (VALUE is ignored). See `custom-known-themes' for a list of known themes.Fcustom-fix-face-spec Convert face SPEC, replacing obsolete :bold and :italic attributes. Also change :reverse-video to :inverse-video.Fcustom-set-variables Install user customizations of variable values specified in ARGS. These settings are registered as theme `user'. The arguments should each be a list of the form: (SYMBOL EXP [NOW [REQUEST [COMMENT]]]) This stores EXP (without evaluating it) as the saved value for SYMBOL. If NOW is present and non-nil, then also evaluate EXP and set the default value for the SYMBOL to the value of EXP. REQUEST is a list of features we must require in order to handle SYMBOL properly. COMMENT is a comment string about SYMBOL.Fcustom-theme-set-variables Initialize variables for theme THEME according to settings in ARGS. Each of the arguments in ARGS should be a list of this form: (SYMBOL EXP [NOW [REQUEST [COMMENT]]]) SYMBOL is the variable name, and EXP is an expression which evaluates to the customized value. EXP will also be stored, without evaluating it, in SYMBOL's `saved-value' property, so that it can be restored via the Customize interface. It is also added to the alist in SYMBOL's `theme-value' property (by calling `custom-push-theme'). NOW, if present and non-nil, means to install the variable's value directly now, even if its `defcustom' declaration has not been executed. This is for internal use only. REQUEST is a list of features to `require' (which are loaded prior to evaluating EXP). COMMENT is a comment string about SYMBOL.Fcustom--sort-vars Sort VARS based on custom dependencies. VARS is a list whose elements have the same form as the ARGS arguments to `custom-theme-set-variables'. Return the sorted list, in which A occurs before B if B was defined with a `:set-after' keyword specifying A (see `defcustom').Fdeftheme Declare THEME to be a Custom theme. The optional argument DOC is a doc string describing the theme. Any theme `foo' should be defined in a file called `foo-theme.el'; see `custom-make-theme-feature' for more information.Fcustom-declare-theme Like `deftheme', but THEME is evaluated as a normal argument. FEATURE is the feature this theme provides. Normally, this is a symbol created from THEME by `custom-make-theme-feature'.Fcustom-make-theme-feature Given a symbol THEME, create a new symbol by appending "-theme". Store this symbol in the `theme-feature' property of THEME. Calling `provide-theme' to provide THEME actually puts `THEME-theme' into `features'. This allows for a file-name convention for autoloading themes: Every theme X has a property `provide-theme' whose value is "X-theme". (load-theme X) then attempts to load the file `X-theme.el'.Vcustom-theme-directory Default user directory for storing custom theme files. The command `customize-create-theme' writes theme files into this directory. By default, Emacs searches for custom themes in this directory first---see `custom-theme-load-path'.Vcustom-theme-load-path List of directories to search for custom theme files. When loading custom themes (e.g. in `customize-themes' and `load-theme'), Emacs searches for theme files in the specified order. Each element in the list should be one of the following: - the symbol `custom-theme-directory', meaning the value of `custom-theme-directory'. - the symbol t, meaning the built-in theme directory (a directory named "themes" in `data-directory'). - a directory name (a string). Each theme file is named THEME-theme.el, where THEME is the theme name. This variable is designed for use in lisp code (including external packages). For manual user customizations, use `custom-theme-directory' instead.Vcustom--inhibit-theme-enable Whether the custom-theme-set-* functions act immediately. If nil, `custom-theme-set-variables' and `custom-theme-set-faces' change the current values of the given variable or face. If non-nil, they just make a record of the theme settings.Fprovide-theme Indicate that this file provides THEME. This calls `provide' to provide the feature name stored in THEME's property `theme-feature' (which is usually a symbol created by `custom-make-theme-feature').Vcustom-safe-themes Themes that are considered safe to load. If the value is a list, each element should be either the SHA-256 hash of a safe theme file, or the symbol `default', which stands for any theme in the built-in Emacs theme directory (a directory named "themes" in `data-directory'). If the value is t, Emacs treats all themes as safe. This variable cannot be set in a Custom theme.Fload-theme Load Custom theme named THEME from its file. The theme file is named THEME-theme.el, in one of the directories specified by `custom-theme-load-path'. If the theme is not considered safe by `custom-safe-themes', prompt the user for confirmation before loading it. But if optional arg NO-CONFIRM is non-nil, load the theme without prompting. Normally, this function also enables THEME. If optional arg NO-ENABLE is non-nil, load the theme but don't enable it, unless the theme was already enabled. This function is normally called through Customize when setting `custom-enabled-themes'. If used directly in your init file, it should be called with a non-nil NO-CONFIRM argument, or after `custom-safe-themes' has been loaded. Return t if THEME was successfully loaded, nil otherwise.Fcustom-theme-load-confirm Query the user about loading a Custom theme that may not be safe. The theme should be in the current buffer. If the user agrees, query also about adding HASH to `custom-safe-themes'.Fcustom-theme-name-valid-p Return t if NAME is a valid name for a Custom theme, nil otherwise. NAME should be a symbol.Fcustom-available-themes Return a list of Custom themes available for loading. Search the directories specified by `custom-theme-load-path' for files named FOO-theme.el, and return a list of FOO symbols. The returned symbols may not correspond to themes that have been loaded, and no effort is made to check that the files contain valid Custom themes. For a list of loaded themes, check the variable `custom-known-themes'.Fenable-theme Reenable all variable and face settings defined by THEME. THEME should be either `user', or a theme loaded via `load-theme'. After this function completes, THEME will have the highest precedence (after `user').Vcustom-enabled-themes List of enabled Custom Themes, highest precedence first. This list does not include the `user' theme, which is set by Customize and always takes precedence over other Custom Themes. This variable cannot be defined inside a Custom theme; there, it is simply ignored. Setting this variable through Customize calls `enable-theme' or `load-theme' for each theme in the list.Fcustom-theme-enabled-p Return non-nil if THEME is enabled.Fdisable-theme Disable all variable and face settings defined by THEME. See `custom-enabled-themes' for a list of enabled themes.Fcustom-variable-theme-value Return (list VALUE) indicating the custom theme value of VARIABLE. That is to say, it specifies what the value should be according to currently enabled custom themes. This function returns nil if no custom theme specifies a value for VARIABLE.Fcustom-theme-recalc-variable Set VARIABLE according to currently enabled custom themes.Fcustom-theme-recalc-face Set FACE according to currently enabled custom themes. If FACE is not initialized as a face, do nothing; otherwise call `face-spec-recalc' to recalculate the face on all frames.Fcustom-theme-reset-variables Reset some variable settings in THEME to their values in other themes. Each of the arguments ARGS has this form: (VARIABLE IGNORED) This means reset VARIABLE. (The argument IGNORED is ignored).Fcustom-reset-variables Reset the specs of some variables to their values in other themes. This creates settings in the `user' theme. Each of the arguments ARGS has this form: (VARIABLE IGNORED) This means reset VARIABLE. (The argument IGNORED is ignored).Sdisp-table.elc Fmake-display-table Return a new, empty display table.Fdisplay-table-slot Return the value of the extra slot in DISPLAY-TABLE named SLOT. SLOT may be a number from 0 to 5 inclusive, or a slot name (symbol). Valid symbols are `truncation', `wrap', `escape', `control', `selective-display', and `vertical-border'.Fset-display-table-slot Set the value of the extra slot in DISPLAY-TABLE named SLOT to VALUE. SLOT may be a number from 0 to 5 inclusive, or a name (symbol). Valid symbols are `truncation', `wrap', `escape', `control', `selective-display', and `vertical-border'.Fdescribe-display-table Describe the display table DT in a help buffer.Fdescribe-current-display-table Describe the display table in use in the selected window and buffer.Fstandard-display-8bit Display characters representing raw bytes in the range L to H literally. On a terminal display, each character in the range is displayed by sending the corresponding byte directly to the terminal. On a graphic display, each character in the range is displayed using the default font by a glyph whose code is the corresponding byte. Note that ASCII printable characters (SPC to TILDA) are displayed in the default way after this call.Fstandard-display-default Display characters in the range L to H using the default notation.Fstandard-display-ascii Display character C using printable string S.Fstandard-display-g1 Display character C as character SC in the g1 character set. This function assumes that your terminal uses the SO/SI characters; it is meaningless for an X frame.Fstandard-display-graphic Display character C as character GC in graphics character set. This function assumes VT100-compatible escapes; it is meaningless for an X frame.Fstandard-display-underline Display character C as character UC plus underlining.Fcreate-glyph Allocate a glyph code to display by sending STRING to the terminal.Fmake-glyph-code Return a glyph code representing char CHAR with face FACE.Fglyph-char Return the character of glyph code GLYPH.Fglyph-face Return the face of glyph code GLYPH, or nil if glyph has default face.Fstandard-display-european Semi-obsolete way to toggle display of ISO 8859 European characters. This function is semi-obsolete; you probably don't need it, or else you probably should use `set-language-environment' or `set-locale-environment'. This function enables European character display if ARG is positive, disables it if negative. Otherwise, it toggles European character display. When this mode is enabled, characters in the range of 160 to 255 display not as octal escapes, but as accented characters. Codes 146 and 160 display as apostrophe and space, even though they are not the ASCII codes for apostrophe and space. Enabling European character display with this command noninteractively from Lisp code also selects Latin-1 as the language environment. This provides increased compatibility for users who call this function in `.emacs'.Sdnd.elc Fdnd-handle-one-url Handle one dropped url by calling the appropriate handler. The handler is first located by looking at `dnd-protocol-alist'. If no match is found here, and the value of `browse-url-browser-function' is a pair of (REGEXP . FUNCTION), those regexps are tried for a match. If no match is found, just call `dnd-insert-text'. WINDOW is where the drop happened, ACTION is the action for the drop, URL is what has been dropped. Returns ACTION.Fdnd-get-local-file-uri Return an uri converted to file:/// syntax if uri is a local file. Return nil if URI is not a local file.Fdnd-get-local-file-name Return file name converted from file:/// or file: syntax. URI is the uri for the file. If MUST-EXIST is given and non-nil, only return non-nil if the file exists. Return nil if URI is not a local file.Fdnd-open-local-file Open a local file. The file is opened in the current window, or a new window if `dnd-open-file-other-window' is set. URI is the url for the file, and must have the format file:file-name or file:///file-name. The last / in file:/// is part of the file name. If the system natively supports unc file names, then remote urls of the form file://server-name/file-name will also be handled by this function. An alternative for systems that do not support unc file names is `dnd-open-remote-url'. ACTION is ignored.Fdnd-open-remote-url Open a remote file with `find-file' and `url-handler-mode'. Turns `url-handler-mode' on if not on before. The file is opened in the current window, or a new window if `dnd-open-file-other-window' is set. URI is the url for the file. ACTION is ignored.Fdnd-open-file Open a local or remote file. The file is opened in the current window, or a new window if `dnd-open-file-other-window' is set. URI is the url for the file, and must have the format file://hostname/file-name. ACTION is ignored. The last / in file://hostname/ is part of the file name.Fdnd-insert-text Insert text at point or push to the kill ring if buffer is read only. TEXT is the text as a string, WINDOW is the window where the drop happened.Sdos-fns.elc Fdos-convert-standard-filename Convert a standard file's name to something suitable for MS-DOS. This means to guarantee valid names and perhaps to canonicalize certain patterns. This function is called by `convert-standard-filename'. On Windows and DOS, replace invalid characters. On DOS, make sure to obey the 8.3 limitations.Fdos-8+3-filename Truncate FILENAME to DOS 8+3 limits.Fdosified-file-name Return a variant of FILE-NAME that is valid on MS-DOS filesystems. This function is for those rare cases where `dos-convert-standard-filename' does not do a job that is good enough, e.g. if you need to preserve the file-name extension. It recognizes only certain specific file names that are used in Emacs Lisp sources; any other file name will be returned unaltered.Fdos-intdos Issue the DOS Int 21h with registers REGS. REGS should be a vector produced by `dos-make-register' and `dos-set-register-value', which see.Fdos-mode25 Changes the number of screen rows to 25.Fdos-mode4350 Changes the number of rows to 43 or 50. Emacs always tries to set the screen height to 50 rows first. If this fails, it will try to set it to 43 rows, on the assumption that your video hardware might not support 50-line mode.Sdos-vars.elc Sdos-w32.elc Ffind-buffer-file-type-coding-system Choose a coding system for a file operation in COMMAND. COMMAND is a list that specifies the operation, an I/O primitive, as its CAR, and the arguments that might be given to that operation as its CDR. If operation is `insert-file-contents', the coding system is chosen based upon the filename (the CAR of the arguments beyond the operation), the contents of `w32-untranslated-filesystem-list' and `file-name-buffer-file-type-alist', and whether the file exists: If it matches in `w32-untranslated-filesystem-list': If the file exists: `undecided' If the file does not exist: `undecided-unix' Otherwise: If the file exists: `undecided' If the file does not exist default value of `buffer-file-coding-system' Note that the CAR of arguments to `insert-file-contents' operation could be a cons cell of the form (FILENAME . BUFFER), where BUFFER is a buffer into which the file's contents were already read, but not yet decoded. If operation is `write-region', the coding system is chosen based upon the value of `buffer-file-coding-system'. If `buffer-file-coding-system' is non-nil, its value is used. Otherwise, it is `undecided-dos'. The most common situation is when DOS and Unix files are read and written, and their names do not match in `w32-untranslated-filesystem-list'. In these cases, the coding system initially will be `undecided'. As the file is read in the DOS case, the coding system will be changed to `undecided-dos' as CR/LFs are detected. As the file is read in the Unix case, the coding system will be changed to `undecided-unix' as LFs are detected. In both cases, `buffer-file-coding-system' will be set to the appropriate coding system, and the value of `buffer-file-coding-system' will be used when writing the file.Ffind-file-binary Visit file FILENAME and treat it as binary.Ffind-file-text Visit file FILENAME and treat it as a text file.Vw32-untranslated-filesystem-list List of filesystems that require no CR/LF translation when reading and writing files. Each filesystem in the list is a string naming the directory prefix corresponding to the filesystem.Fw32-untranslated-canonical-name Return FILENAME in a canonicalized form for use with the functions dealing with untranslated filesystems.Fw32-untranslated-file-p Return t if FILENAME is on a filesystem that does not require CR/LF translation, and nil otherwise.Fw32-add-untranslated-filesystem Add FILESYSTEM to the list of filesystems that do not require CR/LF translation. FILESYSTEM is a string containing the directory prefix corresponding to the filesystem. For example, for a Unix filesystem mounted on drive Z:, FILESYSTEM could be "Z:".Fw32-remove-untranslated-filesystem Remove FILESYSTEM from the list of filesystems that do not require CR/LF translation. FILESYSTEM is a string containing the directory prefix corresponding to the filesystem. For example, for a Unix filesystem mounted on drive Z:, FILESYSTEM could be "Z:".Fw32-direct-print-region-function DOS/Windows-specific function to print the region on a printer. Writes the region to the device or file which is a value of `printer-name' (which see), unless the value of `lpr-command' indicates a specific program should be invoked.Fw32-direct-ps-print-region-function DOS/Windows-specific function to print the region on a PostScript printer. Writes the region to the device or file which is a value of `ps-printer-name' (which see), unless the value of `ps-lpr-command' indicates a specific program should be invoked.Sdynamic-setting.elc Ffont-setting-change-default-font Change font and/or font settings for frames on display DISPLAY-OR-FRAME. If DISPLAY-OR-FRAME is a frame, the display is the one for that frame. If SET-FONT is non-nil, change the font for frames. Otherwise re-apply the current form for the frame (i.e. hinting or somesuch changed).Fdynamic-setting-handle-config-changed-event Handle config-changed-event on the display in EVENT. Changes can be The monospace font. If `font-use-system-font' is nil, the font is not changed. The normal font. Xft parameters, like DPI and hinting. The Gtk+ theme name. The tool bar style.Selectric.elc Felectric--after-char-pos Return the position after the char we just inserted. Returns nil when we can't find this char.Felectric--sort-post-self-insertion-hook Ensure order of electric functions in `post-self-insertion-hook'. Hooks in this variable interact in non-trivial ways, so a relative order must be maintained within it.Velectric-indent-chars Characters that should cause automatic reindentation.Velectric-indent-functions Special hook run to decide whether to auto-indent. Each function is called with one argument (the inserted char), with point right after that char, and it should return t to cause indentation, `no-indent' to prevent indentation or nil to let other functions decide.Velectric-indent-inhibit If non-nil, reindentation is not appropriate for this buffer. This should be set by major modes such as `python-mode' since Python does not lend itself to fully automatic indentation.Velectric-indent-functions-without-reindent List of indent functions that can't reindent. If `indent-line-function' is one of those, then `electric-indent-mode' will not try to reindent lines. It is normally better to make the major mode set `electric-indent-inhibit', but this can be used as a workaround.Felectric-indent-post-self-insert-function Function that `electric-indent-mode' adds to `post-self-insert-hook'. This indents if the hook `electric-indent-functions' returns non-nil, or if a member of `electric-indent-chars' was typed; but not in a string or comment.Felectric-indent-just-newline Insert just a newline, without any auto-indentation.Felectric-newline-and-maybe-indent Insert a newline. If `electric-indent-mode' is enabled, that's that, but if it is *disabled* then additionally indent according to major mode. Indentation is done using the value of `indent-line-function'. In programming language modes, this is the same as TAB. In some text modes, where TAB inserts a tab, this command indents to the column specified by the function `current-left-margin'.Velectric-indent-mode Non-nil if Electric-Indent mode is enabled. See the `electric-indent-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `electric-indent-mode'.Felectric-indent-mode Toggle on-the-fly reindentation (Electric Indent mode). With a prefix argument ARG, enable Electric Indent mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When enabled, this reindents whenever the hook `electric-indent-functions' returns non-nil, or if you insert a character from `electric-indent-chars'. This is a global minor mode. To toggle the mode in a single buffer, use `electric-indent-local-mode'.Felectric-indent-local-mode Toggle `electric-indent-mode' only in this buffer.Velectric-layout-rules List of rules saying where to automatically insert newlines. Each rule has the form (CHAR . WHERE) where CHAR is the char that was just inserted and WHERE specifies where to insert newlines and can be: nil, `before', `after', `around', `after-stay', or a function of no arguments that returns one of those symbols. The symbols specify where in relation to CHAR the newline character(s) should be inserted. `after-stay' means insert a newline after CHAR but stay in the same place.Felectric-layout-mode Automatically insert newlines around some chars. With a prefix argument ARG, enable Electric Layout mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. The variable `electric-layout-rules' says when and how to insert newlines.Velectric-quote-inhibit-functions List of functions that should inhibit electric quoting. When the variable `electric-quote-mode' is non-nil, Emacs will call these functions in order after the user has typed an \=` or \=' character. If one of them returns non-nil, electric quote substitution is inhibited. The functions are called after the \=` or \=' character has been inserted with point directly after the inserted character. The functions in this hook should not move point or change the current buffer.Felectric-quote-post-self-insert-function Function that `electric-quote-mode' adds to `post-self-insert-hook'. This requotes when a quoting key is typed.Felectric-quote-mode Toggle on-the-fly requoting (Electric Quote mode). With a prefix argument ARG, enable Electric Quote mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When enabled, as you type this replaces \=` with ‘, \=' with ’, \=`\=` with “, and \='\=' with ”. This occurs only in comments, strings, and text paragraphs, and these are selectively controlled with `electric-quote-comment', `electric-quote-string', and `electric-quote-paragraph'. Customize `electric-quote-chars' to use characters other than the ones listed here. This is a global minor mode. To toggle the mode in a single buffer, use `electric-quote-local-mode'.Felectric-quote-local-mode Toggle `electric-quote-mode' only in this buffer.Sbackquote.elc Fbackquote-list*-function Like `list' but the last argument is the tail of the new list. For example (backquote-list* \='a \='b \='c) => (a b . c)Fbackquote-list*-macro Like `list' but the last argument is the tail of the new list. For example (backquote-list* \='a \='b \='c) => (a b . c)Vbackquote-backquote-symbol Symbol used to represent a backquote or nested backquote.Vbackquote-unquote-symbol Symbol used to represent an unquote inside a backquote.Vbackquote-splice-symbol Symbol used to represent a splice inside a backquote.Fbackquote Argument STRUCTURE describes a template to build. The whole structure acts as if it were quoted except for certain places where expressions are evaluated and inserted or spliced in. For example: b => (ba bb bc) ; assume b has this value \=`(a b c) => (a b c) ; backquote acts like quote \=`(a ,b c) => (a (ba bb bc) c) ; insert the value of b \=`(a ,@b c) => (a ba bb bc c) ; splice in the value of b Vectors work just like lists. Nested backquotes are permitted.Fbackquote-delay-process Process a (un|back|splice)quote inside a backquote. This simply recurses through the body.Fbackquote-process Process the body of a backquote. S is the body. Returns a cons cell whose cdr is piece of code which is the macro-expansion of S, and whose car is a small integer whose value can either indicate that the code is constant (0), or not (1), or returns a list which should be spliced into its environment (2). LEVEL is only used internally and indicates the nesting level: 0 (the default) is for the toplevel nested inside a single backquote.Sbyte-run.elc Ffunction-put Set FUNCTION's property PROP to VALUE. The namespace for PROP is shared with symbols. So far, FUNCTION can only be a symbol, not a lambda expression. (fn FUNCTION PROP VALUE)Vmacro-declaration-function Function to process declarations in a macro definition. The function will be called with two args MACRO and DECL. MACRO is the name of the macro being defined. DECL is a list `(declare ...)' containing the declarations. The value the function returns is not used.Fmacro-declaration-function Process a declaration found in a macro definition. This is set as the value of the variable `macro-declaration-function'. MACRO is the name of the macro being defined. DECL is a list `(declare ...)' containing the declarations. The return value of this function is not used. (fn MACRO DECL)Vdefun-declarations-alist List associating function properties to their macro expansion. Each element of the list takes the form (PROP FUN) where FUN is a function. For each (PROP . VALUES) in a function's declaration, the FUN corresponding to PROP is called with the function name, the function's arglist, and the VALUES and should return the code to use to set this property. This is used by `declare'.Vmacro-declarations-alist List associating properties of macros to their macro expansion. Each element of the list takes the form (PROP FUN) where FUN is a function. For each (PROP . VALUES) in a macro's declaration, the FUN corresponding to PROP is called with the macro name, the macro's arglist, and the VALUES and should return the code to use to set this property. This is used by `declare'.Fdefmacro Define NAME as a macro. When the macro is called, as in (NAME ARGS...), the function (lambda ARGLIST BODY...) is applied to the list ARGS... as it appears in the expression, and the result should be a form to be evaluated instead of the original. DECL is a declaration, optional, of the form (declare DECLS...) where DECLS is a list of elements of the form (PROP . VALUES). These are interpreted according to `macro-declarations-alist'. The return value is undefined. (fn NAME ARGLIST &optional DOCSTRING DECL &rest BODY)Fdefun Define NAME as a function. The definition is (lambda ARGLIST [DOCSTRING] BODY...). See also the function `interactive'. DECL is a declaration, optional, of the form (declare DECLS...) where DECLS is a list of elements of the form (PROP . VALUES). These are interpreted according to `defun-declarations-alist'. The return value is undefined. (fn NAME ARGLIST &optional DOCSTRING DECL &rest BODY)Fdefsubst Define an inline function. The syntax is just like that of `defun'. (fn NAME ARGLIST &optional DOCSTRING DECL &rest BODY)Fset-advertised-calling-convention Set the advertised SIGNATURE of FUNCTION. This will allow the byte-compiler to warn the programmer when she uses an obsolete calling convention. WHEN specifies since when the calling convention was modified. (fn FUNCTION SIGNATURE WHEN)Fmake-obsolete Make the byte-compiler warn that function OBSOLETE-NAME is obsolete. OBSOLETE-NAME should be a function name or macro name (a symbol). The warning will say that CURRENT-NAME should be used instead. If CURRENT-NAME is a string, that is the `use instead' message (it should end with a period, and not start with a capital). WHEN should be a string indicating when the function was first made obsolete, for example a date or a release number. (fn OBSOLETE-NAME CURRENT-NAME &optional WHEN)Fdefine-obsolete-function-alias Set OBSOLETE-NAME's function definition to CURRENT-NAME and mark it obsolete. (define-obsolete-function-alias \='old-fun \='new-fun "22.1" "old-fun's doc.") is equivalent to the following two lines of code: (defalias \='old-fun \='new-fun "old-fun's doc.") (make-obsolete \='old-fun \='new-fun "22.1") If provided, WHEN should be a string indicating when the function was first made obsolete, for example a date or a release number. See the docstrings of `defalias' and `make-obsolete' for more details. (fn OBSOLETE-NAME CURRENT-NAME &optional WHEN DOCSTRING)Fmake-obsolete-variable Make the byte-compiler warn that OBSOLETE-NAME is obsolete. The warning will say that CURRENT-NAME should be used instead. If CURRENT-NAME is a string, that is the `use instead' message. WHEN should be a string indicating when the variable was first made obsolete, for example a date or a release number. ACCESS-TYPE if non-nil should specify the kind of access that will trigger obsolescence warnings; it can be either `get' or `set'. (fn OBSOLETE-NAME CURRENT-NAME &optional WHEN ACCESS-TYPE)Fdefine-obsolete-variable-alias Make OBSOLETE-NAME a variable alias for CURRENT-NAME and mark it obsolete. This uses `defvaralias' and `make-obsolete-variable' (which see). See the Info node `(elisp)Variable Aliases' for more details. If CURRENT-NAME is a defcustom or a defvar (more generally, any variable where OBSOLETE-NAME may be set, e.g. in an init file, before the alias is defined), then the define-obsolete-variable-alias statement should be evaluated before the defcustom, if user customizations are to be respected. The simplest way to achieve this is to place the alias statement before the defcustom (this is not necessary for aliases that are autoloaded, or in files dumped with Emacs). This is so that any user customizations are applied before the defcustom tries to initialize the variable (this is due to the way `defvaralias' works). If provided, WHEN should be a string indicating when the variable was first made obsolete, for example a date or a release number. For the benefit of `custom-set-variables', if OBSOLETE-NAME has any of the following properties, they are copied to CURRENT-NAME, if it does not already have them: `saved-value', `saved-variable-comment'. (fn OBSOLETE-NAME CURRENT-NAME &optional WHEN DOCSTRING)Fdefine-obsolete-face-alias Make OBSOLETE-FACE a face alias for CURRENT-FACE and mark it obsolete. If provided, WHEN should be a string indicating when the face was first made obsolete, for example a date or a release number. (fn OBSOLETE-FACE CURRENT-FACE WHEN)Fdont-compile Like `progn', but the body always runs interpreted (not compiled). If you think you need this, you're probably making a mistake somewhere. (fn &rest BODY)Feval-when-compile Like `progn', but evaluates the body at compile time if you're compiling. Thus, the result of the body appears to the compiler as a quoted constant. In interpreted code, this is entirely equivalent to `progn', except that the value of the expression may be (but is not necessarily) computed at load time if eager macro expansion is enabled. (fn &rest BODY)Feval-and-compile Like `progn', but evaluates the body at compile time and at load time. In interpreted code, this is entirely equivalent to `progn', except that the value of the expression may be (but is not necessarily) computed at load time if eager macro expansion is enabled. (fn &rest BODY)Fwith-no-warnings Like `progn', but prevents compiler warnings in the body. (fn &rest BODY)Scl-generic.elc Fcl--generic-generalizer-p--cmacro compiler-macro for inlining `cl--generic-generalizer-p'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-generalizer-p (fn CL-X)Fcl--generic-generalizer-name--cmacro compiler-macro for inlining `cl--generic-generalizer-name'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-generalizer-name Access slot "name" of `(cl--generic-generalizer (:constructor nil) (:constructor cl-generic-make-generalizer (name priority tagcode-function specializers-function)))' struct CL-X. (fn CL-X)Fcl--generic-generalizer-priority--cmacro compiler-macro for inlining `cl--generic-generalizer-priority'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-generalizer-priority Access slot "priority" of `(cl--generic-generalizer (:constructor nil) (:constructor cl-generic-make-generalizer (name priority tagcode-function specializers-function)))' struct CL-X. (fn CL-X)Fcl--generic-generalizer-tagcode-function--cmacro compiler-macro for inlining `cl--generic-generalizer-tagcode-function'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-generalizer-tagcode-function Access slot "tagcode-function" of `(cl--generic-generalizer (:constructor nil) (:constructor cl-generic-make-generalizer (name priority tagcode-function specializers-function)))' struct CL-X. (fn CL-X)Fcl--generic-generalizer-specializers-function--cmacro compiler-macro for inlining `cl--generic-generalizer-specializers-function'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-generalizer-specializers-function Access slot "specializers-function" of `(cl--generic-generalizer (:constructor nil) (:constructor cl-generic-make-generalizer (name priority tagcode-function specializers-function)))' struct CL-X. (fn CL-X)Fcl-generic-make-generalizer--cmacro compiler-macro for inlining `cl-generic-make-generalizer'. (fn CL-WHOLE-ARG NAME PRIORITY TAGCODE-FUNCTION SPECIALIZERS-FUNCTION)Fcl-generic-make-generalizer Constructor for objects of type `cl--generic-generalizer'. (fn NAME PRIORITY TAGCODE-FUNCTION SPECIALIZERS-FUNCTION)Fcl-generic-define-generalizer Define a new kind of generalizer. NAME is the name of the variable that will hold it. PRIORITY defines which generalizer takes precedence. The catch-all generalizer has priority 0. Then `eql' generalizer has priority 100. TAGCODE-FUNCTION takes as first argument a varname and should return a chunk of code that computes the tag of the value held in that variable. Further arguments are reserved for future use. SPECIALIZERS-FUNCTION takes as first argument a tag value TAG and should return a list of specializers that match TAG. Further arguments are reserved for future use. (fn NAME PRIORITY TAGCODE-FUNCTION SPECIALIZERS-FUNCTION)Fcl--struct-cl--generic-method-p--cmacro compiler-macro for inlining `cl--struct-cl--generic-method-p'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-cl--generic-method-p (fn CL-X)Fcl--generic-method-specializers--cmacro compiler-macro for inlining `cl--generic-method-specializers'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-method-specializers Access slot "specializers" of `(cl--generic-method (:constructor nil) (:constructor cl--generic-make-method (specializers qualifiers uses-cnm function)) (:predicate nil))' struct CL-X. (fn CL-X)Fcl--generic-method-qualifiers--cmacro compiler-macro for inlining `cl--generic-method-qualifiers'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-method-qualifiers Access slot "qualifiers" of `(cl--generic-method (:constructor nil) (:constructor cl--generic-make-method (specializers qualifiers uses-cnm function)) (:predicate nil))' struct CL-X. (fn CL-X)Fcl--generic-method-uses-cnm--cmacro compiler-macro for inlining `cl--generic-method-uses-cnm'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-method-uses-cnm Access slot "uses-cnm" of `(cl--generic-method (:constructor nil) (:constructor cl--generic-make-method (specializers qualifiers uses-cnm function)) (:predicate nil))' struct CL-X. (fn CL-X)Fcl--generic-method-function--cmacro compiler-macro for inlining `cl--generic-method-function'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-method-function Access slot "function" of `(cl--generic-method (:constructor nil) (:constructor cl--generic-make-method (specializers qualifiers uses-cnm function)) (:predicate nil))' struct CL-X. (fn CL-X)Fcl--generic-make-method--cmacro compiler-macro for inlining `cl--generic-make-method'. (fn CL-WHOLE-ARG SPECIALIZERS QUALIFIERS USES-CNM FUNCTION)Fcl--generic-make-method Constructor for objects of type `cl--generic-method'. (fn SPECIALIZERS QUALIFIERS USES-CNM FUNCTION)Fcl--struct-cl--generic-p--cmacro compiler-macro for inlining `cl--struct-cl--generic-p'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-cl--generic-p (fn CL-X)Fcl--generic-name--cmacro compiler-macro for inlining `cl--generic-name'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-name Access slot "name" of `(cl--generic (:constructor nil) (:constructor cl--generic-make (name)) (:predicate nil))' struct CL-X. (fn CL-X)Fcl--generic-dispatches--cmacro compiler-macro for inlining `cl--generic-dispatches'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-dispatches Access slot "dispatches" of `(cl--generic (:constructor nil) (:constructor cl--generic-make (name)) (:predicate nil))' struct CL-X. (fn CL-X)Fcl--generic-method-table--cmacro compiler-macro for inlining `cl--generic-method-table'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-method-table Access slot "method-table" of `(cl--generic (:constructor nil) (:constructor cl--generic-make (name)) (:predicate nil))' struct CL-X. (fn CL-X)Fcl--generic-options--cmacro compiler-macro for inlining `cl--generic-options'. (fn CL-WHOLE-ARG CL-X)Fcl--generic-options Access slot "options" of `(cl--generic (:constructor nil) (:constructor cl--generic-make (name)) (:predicate nil))' struct CL-X. (fn CL-X)Fcl--generic-make--cmacro compiler-macro for inlining `cl--generic-make'. (fn CL-WHOLE-ARG NAME)Fcl--generic-make Constructor for objects of type `cl--generic'. (fn NAME)Fcl-generic-function-options Return the options of the generic function GENERIC. (fn GENERIC)Fcl--generic (fn NAME)Fcl-generic-p Return non-nil if F is a generic function. (fn F)Fcl-generic-ensure-function (fn NAME &optional NOERROR)Fcl-defgeneric Create a generic function NAME. DOC-STRING is the base documentation for this class. A generic function has no body, as its purpose is to decide which method body is appropriate to use. Specific methods are defined with `cl-defmethod'. With this implementation the ARGS are currently ignored. OPTIONS-AND-METHODS currently understands: - (:documentation DOCSTRING) - (declare DECLARATIONS) - (:argument-precedence-order &rest ARGS) - (:method [QUALIFIERS...] ARGS &rest BODY) DEFAULT-BODY, if present, is used as the body of a default method. (fn NAME ARGS [DOC-STRING] [OPTIONS-AND-METHODS...] &rest DEFAULT-BODY)Fcl-generic-define (fn NAME ARGS OPTIONS)Fcl-generic-current-method-specializers List of (VAR . TYPE) where TYPE is var's specializer. This macro can only be used within the lexical scope of a cl-generic method.Fcl-generic-define-context-rewriter Define a special kind of context named NAME. Whenever a context specializer of the form (NAME . ARGS) appears, the specializer used will be the one returned by BODY. (fn NAME ARGS &rest BODY)Fcl--generic-fgrep Check which of the symbols VARS appear in SEXP. (fn VARS SEXP)Fcl--generic-split-args Return (SPEC-ARGS . PLAIN-ARGS). (fn ARGS)Fcl--generic-lambda Make the lambda expression for a method with ARGS and BODY. (fn ARGS BODY)Fcl-defmethod Define a new method for generic function NAME. I.e. it defines the implementation of NAME to use for invocations where the values of the dispatch arguments match the specified TYPEs. The dispatch arguments have to be among the mandatory arguments, and all methods of NAME have to use the same set of arguments for dispatch. Each dispatch argument and TYPE are specified in ARGS where the corresponding formal argument appears as (VAR TYPE) rather than just VAR. The optional second argument QUALIFIER is a specifier that modifies how the method is combined with other methods, including: :before - Method will be called before the primary :after - Method will be called after the primary :around - Method will be called around everything else The absence of QUALIFIER means this is a "primary" method. The set of acceptable qualifiers and their meaning is defined (and can be extended) by the methods of `cl-generic-combine-methods'. ARGS can also include so-called context specializers, introduced by `&context' (which should appear right after the mandatory arguments, before any &optional or &rest). They have the form (EXPR TYPE) where EXPR is an Elisp expression whose value should match TYPE for the method to be applicable. The set of acceptable TYPEs (also called "specializers") is defined (and can be extended) by the various methods of `cl-generic-generalizers'. (fn NAME [QUALIFIER] ARGS &rest [DOCSTRING] BODY)Fcl--generic-member-method (fn SPECIALIZERS QUALIFIERS METHODS)Fcl--generic-load-hist-format (fn NAME QUALIFIERS SPECIALIZERS)Fcl-generic-define-method (fn NAME QUALIFIERS ARGS USES-CNM FUNCTION)Fcl--generic-with-memoization (fn PLACE &rest CODE)Fcl--generic-get-dispatcher (fn DISPATCH)Fcl--generic-make-function (fn GENERIC)Fcl--generic-make-next-function (fn GENERIC DISPATCHES METHODS)Vcl--generic-combined-method-memoization Table storing previously built combined-methods. This is particularly useful when many different tags select the same set of methods, since this table then allows us to share a single combined-method for all those different tags in the method-cache.Fcl--generic-build-combined-method (fn GENERIC METHODS)Fcl--generic-no-next-method-function (fn GENERIC METHOD)Fcl-generic-call-method Return a function that calls METHOD. FUN is the function that should be called when METHOD calls `call-next-method'. (fn GENERIC METHOD &optional FUN)Fcl--generic-standard-method-combination (fn GENERIC METHODS)Fcl-generic-apply Like `apply' but takes a cl-generic object rather than a function. (fn GENERIC ARGS)Fcl--generic-arg-specializer (fn METHOD DISPATCH-ARG)Fcl--generic-cache-miss (fn GENERIC DISPATCH-ARG DISPATCHES-LEFT METHODS-LEFT TYPES)Fcl--generic-isnot-nnm-p Return non-nil if CNM is the function that calls `cl-no-next-method'. (fn CNM)Fcl-call-next-method Function to call the next applicable method. Can only be used from within the lexical body of a primary or around method. (fn &rest ARGS)Fcl-next-method-p Return non-nil if there is a next method. Can only be used from within the lexical body of a primary or around method.Fcl-find-method (fn GENERIC QUALIFIERS SPECIALIZERS)Fcl--generic-search-method For `find-function-regexp-alist'. Searches for a cl-defmethod. MET-NAME is as returned by `cl--generic-load-hist-format'. (fn MET-NAME)Fcl--generic-method-info (fn METHOD)Fcl--generic-describe (fn FUNCTION)Fcl--generic-specializers-apply-to-type-p Return non-nil if a method with SPECIALIZERS applies to TYPE. (fn SPECIALIZERS TYPE)Fcl-generic-all-functions Return a list of all generic functions. Optional TYPE argument returns only those functions that contain methods for TYPE. (fn &optional TYPE)Fcl--generic-method-documentation Return info for all methods of FUNCTION (a symbol) applicable to TYPE. The value returned is a list of elements of the form (QUALIFIERS ARGS DOC). (fn FUNCTION TYPE)Fcl--generic-method-files Return a list of files where METHOD is defined by `cl-defmethod'. The list will have entries of the form (FILE . (METHOD ...)) where (METHOD ...) contains the qualifiers and specializers of the method and is a suitable argument for `find-function-search-for-symbol'. Filenames are absolute. (fn METHOD)Fcl--generic-struct-tag (fn NAME &rest _)Fcl--generic-class-parents (fn CLASS)Fcl--generic-struct-specializers (fn TAG &rest _)Vcl--generic-typeof-types Alist of supertypes. Each element has the form (TYPE . SUPERTYPES) where TYPE is one of the symbols returned by `type-of', and SUPERTYPES is the list of its supertypes from the most specific to least specific.Fcl--generic-derived-specializers (fn MODE &rest _)Scl-preloaded.elc Fcl--assertion-failed (fn FORM &optional STRING SARGS ARGS)Fcl--struct-get-class (fn NAME)Fcl--plist-remove (fn PLIST MEMBER)Fcl--struct-register-child (fn PARENT TAG)Fcl-struct-define (fn NAME DOCSTRING PARENT TYPE NAMED SLOTS CHILDREN-SYM TAG PRINT)Fcl--struct-class-p--cmacro compiler-macro for inlining `cl--struct-class-p'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-class-p (fn CL-X)Fcl--struct-class-name--cmacro compiler-macro for inlining `cl--struct-class-name'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-class-name Access slot "name" of `(cl-structure-class (:conc-name cl--struct-class-) (:predicate cl--struct-class-p) (:constructor nil) (:constructor cl--struct-new-class (name docstring parents type named slots index-table children-sym tag print)) (:copier nil))' struct CL-X. (fn CL-X)Fcl--struct-class-docstring--cmacro compiler-macro for inlining `cl--struct-class-docstring'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-class-docstring Access slot "docstring" of `(cl-structure-class (:conc-name cl--struct-class-) (:predicate cl--struct-class-p) (:constructor nil) (:constructor cl--struct-new-class (name docstring parents type named slots index-table children-sym tag print)) (:copier nil))' struct CL-X. (fn CL-X)Fcl--struct-class-parents--cmacro compiler-macro for inlining `cl--struct-class-parents'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-class-parents Access slot "parents" of `(cl-structure-class (:conc-name cl--struct-class-) (:predicate cl--struct-class-p) (:constructor nil) (:constructor cl--struct-new-class (name docstring parents type named slots index-table children-sym tag print)) (:copier nil))' struct CL-X. (fn CL-X)Fcl--struct-class-slots--cmacro compiler-macro for inlining `cl--struct-class-slots'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-class-slots Access slot "slots" of `(cl-structure-class (:conc-name cl--struct-class-) (:predicate cl--struct-class-p) (:constructor nil) (:constructor cl--struct-new-class (name docstring parents type named slots index-table children-sym tag print)) (:copier nil))' struct CL-X. (fn CL-X)Fcl--struct-class-index-table--cmacro compiler-macro for inlining `cl--struct-class-index-table'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-class-index-table Access slot "index-table" of `(cl-structure-class (:conc-name cl--struct-class-) (:predicate cl--struct-class-p) (:constructor nil) (:constructor cl--struct-new-class (name docstring parents type named slots index-table children-sym tag print)) (:copier nil))' struct CL-X. (fn CL-X)Fcl--struct-class-tag--cmacro compiler-macro for inlining `cl--struct-class-tag'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-class-tag Access slot "tag" of `(cl-structure-class (:conc-name cl--struct-class-) (:predicate cl--struct-class-p) (:constructor nil) (:constructor cl--struct-new-class (name docstring parents type named slots index-table children-sym tag print)) (:copier nil))' struct CL-X. (fn CL-X)Fcl--struct-class-type--cmacro compiler-macro for inlining `cl--struct-class-type'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-class-type Access slot "type" of `(cl-structure-class (:conc-name cl--struct-class-) (:predicate cl--struct-class-p) (:constructor nil) (:constructor cl--struct-new-class (name docstring parents type named slots index-table children-sym tag print)) (:copier nil))' struct CL-X. (fn CL-X)Fcl--struct-class-named--cmacro compiler-macro for inlining `cl--struct-class-named'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-class-named Access slot "named" of `(cl-structure-class (:conc-name cl--struct-class-) (:predicate cl--struct-class-p) (:constructor nil) (:constructor cl--struct-new-class (name docstring parents type named slots index-table children-sym tag print)) (:copier nil))' struct CL-X. (fn CL-X)Fcl--struct-class-print--cmacro compiler-macro for inlining `cl--struct-class-print'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-class-print Access slot "print" of `(cl-structure-class (:conc-name cl--struct-class-) (:predicate cl--struct-class-p) (:constructor nil) (:constructor cl--struct-new-class (name docstring parents type named slots index-table children-sym tag print)) (:copier nil))' struct CL-X. (fn CL-X)Fcl--struct-class-children-sym--cmacro compiler-macro for inlining `cl--struct-class-children-sym'. (fn CL-WHOLE-ARG CL-X)Fcl--struct-class-children-sym Access slot "children-sym" of `(cl-structure-class (:conc-name cl--struct-class-) (:predicate cl--struct-class-p) (:constructor nil) (:constructor cl--struct-new-class (name docstring parents type named slots index-table children-sym tag print)) (:copier nil))' struct CL-X. (fn CL-X)Fcl--struct-new-class--cmacro compiler-macro for inlining `cl--struct-new-class'. (fn CL-WHOLE-ARG NAME DOCSTRING PARENTS TYPE NAMED SLOTS INDEX-TABLE CHILDREN-SYM TAG PRINT)Fcl--struct-new-class Constructor for objects of type `cl-structure-class'. (fn NAME DOCSTRING PARENTS TYPE NAMED SLOTS INDEX-TABLE CHILDREN-SYM TAG PRINT)Fcl-struct-p--cmacro compiler-macro for inlining `cl-struct-p'. (fn CL-WHOLE-ARG CL-X)Fcl-struct-p (fn CL-X)Fcl-slot-descriptor-p--cmacro compiler-macro for inlining `cl-slot-descriptor-p'. (fn CL-WHOLE-ARG CL-X)Fcl-slot-descriptor-p (fn CL-X)Fcl--slot-descriptor-name--cmacro compiler-macro for inlining `cl--slot-descriptor-name'. (fn CL-WHOLE-ARG CL-X)Fcl--slot-descriptor-name Access slot "name" of `(cl-slot-descriptor (:conc-name cl--slot-descriptor-) (:constructor nil) (:constructor cl--make-slot-descriptor (name &optional initform type props)) (:copier cl--copy-slot-descriptor-1))' struct CL-X. (fn CL-X)Fcl--slot-descriptor-initform--cmacro compiler-macro for inlining `cl--slot-descriptor-initform'. (fn CL-WHOLE-ARG CL-X)Fcl--slot-descriptor-initform Access slot "initform" of `(cl-slot-descriptor (:conc-name cl--slot-descriptor-) (:constructor nil) (:constructor cl--make-slot-descriptor (name &optional initform type props)) (:copier cl--copy-slot-descriptor-1))' struct CL-X. (fn CL-X)Fcl--slot-descriptor-type--cmacro compiler-macro for inlining `cl--slot-descriptor-type'. (fn CL-WHOLE-ARG CL-X)Fcl--slot-descriptor-type Access slot "type" of `(cl-slot-descriptor (:conc-name cl--slot-descriptor-) (:constructor nil) (:constructor cl--make-slot-descriptor (name &optional initform type props)) (:copier cl--copy-slot-descriptor-1))' struct CL-X. (fn CL-X)Fcl--slot-descriptor-props--cmacro compiler-macro for inlining `cl--slot-descriptor-props'. (fn CL-WHOLE-ARG CL-X)Fcl--slot-descriptor-props Access slot "props" of `(cl-slot-descriptor (:conc-name cl--slot-descriptor-) (:constructor nil) (:constructor cl--make-slot-descriptor (name &optional initform type props)) (:copier cl--copy-slot-descriptor-1))' struct CL-X. (fn CL-X)Fcl--make-slot-descriptor--cmacro compiler-macro for inlining `cl--make-slot-descriptor'. (fn CL-WHOLE-ARG NAME &optional INITFORM TYPE PROPS)Fcl--make-slot-descriptor Constructor for objects of type `cl-slot-descriptor'. (fn NAME &optional INITFORM TYPE PROPS)Fcl--copy-slot-descriptor (fn SLOT)Fcl--class-p--cmacro compiler-macro for inlining `cl--class-p'. (fn CL-WHOLE-ARG CL-X)Fcl--class-p (fn CL-X)Fcl--class-name--cmacro compiler-macro for inlining `cl--class-name'. (fn CL-WHOLE-ARG CL-X)Fcl--class-name Access slot "name" of `(cl--class (:constructor nil) (:copier nil))' struct CL-X. (fn CL-X)Fcl--class-docstring--cmacro compiler-macro for inlining `cl--class-docstring'. (fn CL-WHOLE-ARG CL-X)Fcl--class-docstring Access slot "docstring" of `(cl--class (:constructor nil) (:copier nil))' struct CL-X. (fn CL-X)Fcl--class-parents--cmacro compiler-macro for inlining `cl--class-parents'. (fn CL-WHOLE-ARG CL-X)Fcl--class-parents Access slot "parents" of `(cl--class (:constructor nil) (:copier nil))' struct CL-X. (fn CL-X)Fcl--class-slots--cmacro compiler-macro for inlining `cl--class-slots'. (fn CL-WHOLE-ARG CL-X)Fcl--class-slots Access slot "slots" of `(cl--class (:constructor nil) (:copier nil))' struct CL-X. (fn CL-X)Fcl--class-index-table--cmacro compiler-macro for inlining `cl--class-index-table'. (fn CL-WHOLE-ARG CL-X)Fcl--class-index-table Access slot "index-table" of `(cl--class (:constructor nil) (:copier nil))' struct CL-X. (fn CL-X)Seldoc.elc Veldoc-message-commands-table-size Used by `eldoc-add-command' to initialize `eldoc-message-commands' obarray. It should probably never be necessary to do so, but if you choose to increase the number of buckets, you must do so before loading this file since the obarray is initialized at load time. Remember to keep it a prime number to improve hash performance.Veldoc-message-commands Commands after which it is appropriate to print in the echo area. ElDoc does not try to print function arglists, etc., after just any command, because some commands print their own messages in the echo area and these functions would instantly overwrite them. But `self-insert-command' as well as most motion commands are good candidates. This variable contains an obarray of symbols; do not manipulate it directly. Instead, use `eldoc-add-command' and `eldoc-remove-command'.Veldoc-last-data Bookkeeping; elements are as follows: 0 - contains the last symbol read from the buffer. 1 - contains the string last displayed in the echo area for variables, or argument string for functions. 2 - `function' if function args, `variable' if variable documentation.Veldoc-timer ElDoc's timer object.Veldoc-current-idle-delay Idle time delay currently in use by timer. This is used to determine if `eldoc-idle-delay' is changed by the user.Veldoc-message-function The function used by `eldoc-message' to display messages. It should receive the same arguments as `message'.Feldoc-edit-message-commands Return an obarray containing common editing commands. When `eldoc-print-after-edit' is non-nil, ElDoc messages are only printed after commands contained in this obarray.Veldoc-mode Non-nil if Eldoc mode is enabled. Use the command `eldoc-mode' to change this variable.Feldoc-mode Toggle echo area display of Lisp objects at point (ElDoc mode). With a prefix argument ARG, enable ElDoc mode if ARG is positive, and disable it otherwise. If called from Lisp, enable ElDoc mode if ARG is omitted or nil. ElDoc mode is a buffer-local minor mode. When enabled, the echo area displays information about a function or variable in the text where point is. If point is on a documented variable, it displays the first line of that variable's doc string. Otherwise it displays the argument list of the function called in the expression point is on. (fn &optional ARG)Fglobal-eldoc-mode Toggle Eldoc mode in all buffers. With prefix ARG, enable Global Eldoc mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Eldoc mode is enabled in all buffers where `turn-on-eldoc-mode' would do it. See `eldoc-mode' for more information on Eldoc mode. (fn &optional ARG)Fturn-on-eldoc-mode Turn on `eldoc-mode' if the buffer has ElDoc support enabled. See `eldoc-documentation-function' for more detail.Feldoc--supported-p Non-nil if an ElDoc function is set for this buffer.Feldoc-schedule-timer Ensure `eldoc-timer' is running. If the user has changed `eldoc-idle-delay', update the timer to reflect the change.Feldoc-minibuffer-message Display messages in the mode-line when in the minibuffer. Otherwise work like `message'. (fn FORMAT-STRING &rest ARGS)Feldoc-message Display STRING as an ElDoc message if it's non-nil. Also store it in `eldoc-last-message' and return that value. (fn &optional STRING)Feldoc--message-command-p Return non-nil if COMMAND is in `eldoc-message-commands'. (fn COMMAND)Feldoc-pre-command-refresh-echo-area Reprint `eldoc-last-message' in the echo area.Feldoc-display-message-p Return non-nil when it is appropriate to display an ElDoc message.Feldoc-display-message-no-interference-p Return nil if displaying a message would cause interference.Veldoc-documentation-function Function to call to return doc string. The function of no args should return a one-line string for displaying doc about a function etc. appropriate to the context around point. It should return nil if there's no doc appropriate for the context. Typically doc is returned if point is on a function-like name or in its arg list. The result is used as is, so the function must explicitly handle the variables `eldoc-argument-case' and `eldoc-echo-area-use-multiline-p', and the face `eldoc-highlight-function-argument', if they are to have any effect. Major modes should modify this variable using `add-function', for example: (add-function :before-until (local \='eldoc-documentation-function) #\='foo-mode-eldoc-function) so that the global documentation function (i.e. the default value of the variable) is taken into account if the major mode specific function does not return any documentation.Feldoc-print-current-symbol-info Print the text produced by `eldoc-documentation-function'.Feldoc-docstring-format-sym-doc Combine PREFIX and DOC, and shorten the result to fit in the echo area. When PREFIX is a symbol, propertize its symbol name with FACE before combining it with DOC. If FACE is not provided, just apply the nil face. See also: `eldoc-echo-area-use-multiline-p'. (fn PREFIX DOC &optional FACE)Feldoc-add-command Add each of CMDS to the obarray `eldoc-message-commands'. (fn &rest CMDS)Feldoc-add-command-completions Pass every prefix completion of NAMES to `eldoc-add-command'. (fn &rest NAMES)Feldoc-remove-command Remove each of CMDS from the obarray `eldoc-message-commands'. (fn &rest CMDS)Feldoc-remove-command-completions Pass every prefix completion of NAMES to `eldoc-remove-command'. (fn &rest NAMES)Sfloat-sup.elc Vfloat-pi The value of Pi (3.1415926...).Vpi Obsolete since Emacs-23.3. Use `float-pi' instead.Vfloat-e The value of e (2.7182818...).Vdegrees-to-radians Degrees to radian conversion constant.Vradians-to-degrees Radian to degree conversion constant.Fdegrees-to-radians Convert X from degrees to radians.Fradians-to-degrees Convert X from radians to degrees.Slisp-mode.elc Vlisp--mode-syntax-table Parent syntax table used in Lisp modes.Vlisp-mode-syntax-table Syntax table used in `lisp-mode'.Vlisp-imenu-generic-expression Imenu generic expression for Lisp mode. See `imenu-generic-expression'.Vlisp-doc-string-elt-property The symbol property that holds the docstring position info.Vlisp-prettify-symbols-alist Alist of symbol/"pretty" characters to be displayed.Flisp--match-hidden-arg (fn LIMIT)Flisp--el-non-funcall-position-p Heuristically determine whether POS is an evaluated position. (fn POS)Flisp--el-match-keyword (fn LIMIT)Flet-when-compile Like `let*', but allow for compile time optimization. Use BINDINGS as in regular `let*', but in BODY each usage should be wrapped in `eval-when-compile'. This will generate compile-time constants from BINDINGS. (fn BINDINGS &rest BODY)Vlisp-el-font-lock-keywords Default expressions to highlight in Emacs Lisp mode.Vlisp-cl-font-lock-keywords Default expressions to highlight in Lisp modes.Flisp-string-in-doc-position-p Return true if a doc string may occur at STARTPOS inside a list. LISTBEG is the position of the start of the innermost list containing STARTPOS. (fn LISTBEG STARTPOS)Flisp-string-after-doc-keyword-p Return true if `:documentation' symbol ends at STARTPOS inside a list. LISTBEG is the position of the start of the innermost list containing STARTPOS. (fn LISTBEG STARTPOS)Flisp-font-lock-syntactic-face-function Return syntactic face function for the position represented by STATE. STATE is a `parse-partial-sexp' state, and the returned function is the Lisp font lock syntactic face function. (fn STATE)Flisp-adaptive-fill Return fill prefix found at point. Value for `adaptive-fill-function'.Flisp-mode-variables Common initialization routine for lisp modes. The LISP-SYNTAX argument is used by code in inf-lisp.el and is (uselessly) passed from pp.el, chistory.el, gnus-kill.el and score-mode.el. KEYWORDS-CASE-INSENSITIVE non-nil means that for font-lock keywords will not be case sensitive. (fn &optional LISP-SYNTAX KEYWORDS-CASE-INSENSITIVE ELISP)Flisp-outline-level Lisp mode `outline-level' function.Flisp-current-defun-name Return the name of the defun at point, or nil.Vlisp-mode-shared-map Keymap for commands shared by all sorts of Lisp modes.Vlisp-mode-map Keymap for ordinary Lisp mode. All commands in `lisp-mode-shared-map' are inherited by this map.Flisp-mode Major mode for editing Lisp code for Lisps other than GNU Emacs Lisp. Commands: Delete converts tabs to spaces as it moves back. Blank lines separate paragraphs. Semicolons start comments. \{lisp-mode-map} Note that `run-lisp' may be used either to start an inferior Lisp job or to switch back to an existing one. In addition to any hooks its parent mode `prog-mode' might have run, this mode runs the hook `lisp-mode-hook', as the final or penultimate step during initialization.Flisp-comment-indent Like `comment-indent-default', but don't put space after open paren.Flisp-ppss Return Parse-Partial-Sexp State at POS, defaulting to point. Like `syntax-ppss' but includes the character address of the last complete sexp in the innermost containing list at position 2 (counting from 0). This is important for lisp indentation. (fn &optional POS)Flisp-indent-state-p--cmacro compiler-macro for inlining `lisp-indent-state-p'. (fn CL-WHOLE-ARG CL-X)Flisp-indent-state-p (fn CL-X)Flisp-indent-state-stack--cmacro compiler-macro for inlining `lisp-indent-state-stack'. (fn CL-WHOLE-ARG CL-X)Flisp-indent-state-stack Access slot "stack" of `(lisp-indent-state (:constructor nil) (:constructor lisp-indent-initial-state (&aux (ppss (lisp-ppss)) (ppss-point (point)) (stack (make-list (1+ (car ppss)) nil)))))' struct CL-X. (fn CL-X)Flisp-indent-state-ppss--cmacro compiler-macro for inlining `lisp-indent-state-ppss'. (fn CL-WHOLE-ARG CL-X)Flisp-indent-state-ppss Access slot "ppss" of `(lisp-indent-state (:constructor nil) (:constructor lisp-indent-initial-state (&aux (ppss (lisp-ppss)) (ppss-point (point)) (stack (make-list (1+ (car ppss)) nil)))))' struct CL-X. (fn CL-X)Flisp-indent-state-ppss-point--cmacro compiler-macro for inlining `lisp-indent-state-ppss-point'. (fn CL-WHOLE-ARG CL-X)Flisp-indent-state-ppss-point Access slot "ppss-point" of `(lisp-indent-state (:constructor nil) (:constructor lisp-indent-initial-state (&aux (ppss (lisp-ppss)) (ppss-point (point)) (stack (make-list (1+ (car ppss)) nil)))))' struct CL-X. (fn CL-X)Flisp-indent-initial-state Constructor for objects of type `lisp-indent-state'.Flisp-indent-calc-next Move to next line and return calculated indent for it. STATE is updated by side effect, the first state should be created by `lisp-indent-initial-state'. This function may move by more than one line to cross a string literal. (fn STATE)Flisp-indent-region Indent region as Lisp code, efficiently. (fn START END)Flisp-indent-line Indent current line as Lisp code. (fn &optional INDENT)Fcalculate-lisp-indent Return appropriate indentation for current line as Lisp code. In usual case returns an integer: the column to indent to. If the value is nil, that means don't change the indentation because the line starts inside a string. PARSE-START may be a buffer position to start parsing from, or a parse state as returned by calling `parse-partial-sexp' up to the beginning of the current line. The value can also be a list of the form (COLUMN CONTAINING-SEXP-START). This means that following lines at the same level of indentation should not necessarily be indented the same as this line. Then COLUMN is the column to indent to, and CONTAINING-SEXP-START is the buffer position of the start of the containing expression. (fn &optional PARSE-START)Flisp-indent-function This function is the normal value of the variable `lisp-indent-function'. The function `calculate-lisp-indent' calls this to determine if the arguments of a Lisp function call should be indented specially. INDENT-POINT is the position at which the line being indented begins. Point is located at the point to indent under (for default indentation); STATE is the `parse-partial-sexp' state for that position. If the current line is in a call to a Lisp function that has a non-nil property `lisp-indent-function' (or the deprecated `lisp-indent-hook'), it specifies how to indent. The property value can be: * `defun', meaning indent `defun'-style (this is also the case if there is no property and the function has a name that begins with "def", and three or more arguments); * an integer N, meaning indent the first N arguments specially (like ordinary function arguments), and then indent any further arguments like a body; * a function to call that returns the indentation (or nil). `lisp-indent-function' calls this function with the same two arguments that it itself received. This function returns either the indentation to use, or nil if the Lisp function does not specify a special indentation. (fn INDENT-POINT STATE)Flisp-indent-specform (fn COUNT STATE INDENT-POINT NORMAL-INDENT)Flisp-indent-defform (fn STATE INDENT-POINT)Findent-sexp Indent each line of the list starting just after point. If optional arg ENDPOS is given, indent each line, stopping when ENDPOS is encountered. (fn &optional ENDPOS)Findent-pp-sexp Indent each line of the list starting just after point, or prettyprint it. A prefix argument specifies pretty-printing. (fn &optional ARG)Flisp-fill-paragraph Like \[fill-paragraph], but handle Emacs Lisp comments and docstrings. If any of the current line is a comment, fill the comment or the paragraph of it that point is in, preserving the comment's indentation and initial semicolons. (fn &optional JUSTIFY)Findent-code-rigidly Indent all lines of code, starting in the region, sideways by ARG columns. Does not affect lines starting inside comments or strings, assuming that the start of the region is not inside them. Called from a program, takes args START, END, COLUMNS and NOCHANGE-REGEXP. The last is a regexp which, if matched at the beginning of a line, means don't indent that line. (fn START END ARG &optional NOCHANGE-REGEXP)Slisp.elc Vforward-sexp-function If non-nil, `forward-sexp' delegates to this function. Should take the same arguments and behave similarly to `forward-sexp'.Fforward-sexp Move forward across one balanced expression (sexp). With ARG, do it that many times. Negative arg -N means move backward across N balanced expressions. This command assumes point is not in a string or comment. Calls `forward-sexp-function' to do the work, if that is non-nil. If unable to move over a sexp, signal `scan-error' with three arguments: a message, the start of the obstacle (usually a parenthesis or list marker of some kind), and end of the obstacle. (fn &optional ARG)Fbackward-sexp Move backward across one balanced expression (sexp). With ARG, do it that many times. Negative arg -N means move forward across N balanced expressions. This command assumes point is not in a string or comment. Uses `forward-sexp' to do the work. (fn &optional ARG)Fmark-sexp Set mark ARG sexps from point. The place mark goes is the same place \[forward-sexp] would move to with the same argument. Interactively, if this command is repeated or (in Transient Mark mode) if the mark is active, it marks the next ARG sexps after the ones already marked. This command assumes point is not in a string or comment. (fn &optional ARG ALLOW-EXTEND)Fforward-list Move forward across one balanced group of parentheses. This command will also work on other parentheses-like expressions defined by the current language mode. With ARG, do it that many times. Negative arg -N means move backward across N groups of parentheses. This command assumes point is not in a string or comment. (fn &optional ARG)Fbackward-list Move backward across one balanced group of parentheses. This command will also work on other parentheses-like expressions defined by the current language mode. With ARG, do it that many times. Negative arg -N means move forward across N groups of parentheses. This command assumes point is not in a string or comment. (fn &optional ARG)Fdown-list Move forward down one level of parentheses. This command will also work on other parentheses-like expressions defined by the current language mode. With ARG, do this that many times. A negative argument means move backward but still go down a level. This command assumes point is not in a string or comment. (fn &optional ARG)Fbackward-up-list Move backward out of one level of parentheses. This command will also work on other parentheses-like expressions defined by the current language mode. With ARG, do this that many times. A negative argument means move forward but still to a less deep spot. If ESCAPE-STRINGS is non-nil (as it is interactively), move out of enclosing strings as well. If NO-SYNTAX-CROSSING is non-nil (as it is interactively), prefer to break out of any enclosing string instead of moving to the start of a list broken across multiple strings. On error, location of point is unspecified. (fn &optional ARG ESCAPE-STRINGS NO-SYNTAX-CROSSING)Fup-list Move forward out of one level of parentheses. This command will also work on other parentheses-like expressions defined by the current language mode. With ARG, do this that many times. A negative argument means move backward but still to a less deep spot. If ESCAPE-STRINGS is non-nil (as it is interactively), move out of enclosing strings as well. If NO-SYNTAX-CROSSING is non-nil (as it is interactively), prefer to break out of any enclosing string instead of moving to the start of a list broken across multiple strings. On error, location of point is unspecified. (fn &optional ARG ESCAPE-STRINGS NO-SYNTAX-CROSSING)Fkill-sexp Kill the sexp (balanced expression) following point. With ARG, kill that many sexps after point. Negative arg -N means kill N sexps before point. This command assumes point is not in a string or comment. (fn &optional ARG)Fbackward-kill-sexp Kill the sexp (balanced expression) preceding point. With ARG, kill that many sexps before point. Negative arg -N means kill N sexps after point. This command assumes point is not in a string or comment. (fn &optional ARG)Fkill-backward-up-list Kill the form containing the current sexp, leaving the sexp itself. A prefix argument ARG causes the relevant number of surrounding forms to be removed. This command assumes point is not in a string or comment. (fn &optional ARG)Vbeginning-of-defun-function If non-nil, function for `beginning-of-defun-raw' to call. This is used to find the beginning of the defun instead of using the normal recipe (see `beginning-of-defun'). Major modes can define this if defining `defun-prompt-regexp' is not sufficient to handle the mode's needs. The function takes the same argument as `beginning-of-defun' and should behave similarly, returning non-nil if it found the beginning of a defun. Ideally it should move to a point right before an open-paren which encloses the body of the defun.Fbeginning-of-defun Move backward to the beginning of a defun. With ARG, do it that many times. Negative ARG means move forward to the ARGth following beginning of defun. If search is successful, return t; point ends up at the beginning of the line where the search succeeded. Otherwise, return nil. When `open-paren-in-column-0-is-defun-start' is non-nil, a defun is assumed to start where there is a char with open-parenthesis syntax at the beginning of a line. If `defun-prompt-regexp' is non-nil, then a string which matches that regexp may also precede the open-parenthesis. If `defun-prompt-regexp' and `open-paren-in-column-0-is-defun-start' are both nil, this function instead finds an open-paren at the outermost level. If the variable `beginning-of-defun-function' is non-nil, its value is called as a function, with argument ARG, to find the defun's beginning. Regardless of the values of `defun-prompt-regexp' and `beginning-of-defun-function', point always moves to the beginning of the line whenever the search is successful. (fn &optional ARG)Fbeginning-of-defun-raw Move point to the character that starts a defun. This is identical to function `beginning-of-defun', except that point does not move to the beginning of the line when `defun-prompt-regexp' is non-nil. If variable `beginning-of-defun-function' is non-nil, its value is called as a function to find the defun's beginning. (fn &optional ARG)Fbeginning-of-defun--in-emptyish-line-p Return non-nil if the point is in an "emptyish" line. This means a line that consists entirely of comments and/or whitespace.Fbeginning-of-defun-comments Move to the beginning of ARGth defun, including comments. (fn &optional ARG)Vend-of-defun-function Function for `end-of-defun' to call. This is used to find the end of the defun at point. It is called with no argument, right after calling `beginning-of-defun-raw'. So the function can assume that point is at the beginning of the defun body. It should move point to the first position after the defun.Fbuffer-end Return the "far end" position of the buffer, in direction ARG. If ARG is positive, that's the end of the buffer. Otherwise, that's the beginning of the buffer. (fn ARG)Fend-of-defun Move forward to next end of defun. With argument, do it that many times. Negative argument -N means move back to Nth preceding end of defun. An end of a defun occurs right after the close-parenthesis that matches the open-parenthesis that starts a defun; see function `beginning-of-defun'. If variable `end-of-defun-function' is non-nil, its value is called as a function to find the defun's end. (fn &optional ARG)Fmark-defun Put mark at end of this defun, point at beginning. The defun marked is the one that contains point or follows point. With positive ARG, mark this and that many next defuns; with negative ARG, change the direction of marking. If the mark is active, it marks the next or previous defun(s) after the one(s) already marked. (fn &optional ARG)Vnarrow-to-defun-include-comments If non-nil, `narrow-to-defun' will also show comments preceding the defun.Fnarrow-to-defun Make text outside current defun invisible. The current defun is the one that contains point or follows point. Preceding comments are included if INCLUDE-COMMENTS is non-nil. Interactively, the behavior depends on `narrow-to-defun-include-comments'. (fn &optional INCLUDE-COMMENTS)Vinsert-pair-alist Alist of paired characters inserted by `insert-pair'. Each element looks like (OPEN-CHAR CLOSE-CHAR) or (COMMAND-CHAR OPEN-CHAR CLOSE-CHAR). The characters OPEN-CHAR and CLOSE-CHAR of the pair whose key is equal to the last input character with or without modifiers, are inserted by `insert-pair'. If COMMAND-CHAR is specified, it is a character that triggers the insertion of the open/close pair, and COMMAND-CHAR itself isn't inserted.Finsert-pair Enclose following ARG sexps in a pair of OPEN and CLOSE characters. Leave point after the first character. A negative ARG encloses the preceding ARG sexps instead. No argument is equivalent to zero: just insert characters and leave point between. If `parens-require-spaces' is non-nil, this command also inserts a space before and after, depending on the surrounding characters. If region is active, insert enclosing characters at region boundaries. If arguments OPEN and CLOSE are nil, the character pair is found from the variable `insert-pair-alist' according to the last input character with or without modifiers. If no character pair is found in the variable `insert-pair-alist', then the last input character is inserted ARG times. This command assumes point is not in a string or comment. (fn &optional ARG OPEN CLOSE)Finsert-parentheses Enclose following ARG sexps in parentheses. Leave point after open-paren. A negative ARG encloses the preceding ARG sexps instead. No argument is equivalent to zero: just insert `()' and leave point between. If `parens-require-spaces' is non-nil, this command also inserts a space before and after, depending on the surrounding characters. If region is active, insert enclosing characters at region boundaries. This command assumes point is not in a string or comment. (fn &optional ARG)Fdelete-pair Delete a pair of characters enclosing the sexp that follows point.Fraise-sexp Raise ARG sexps higher up the tree. (fn &optional ARG)Fmove-past-close-and-reindent Move past next `)', delete indentation before it, then indent after it.Fcheck-parens Check for unbalanced parentheses in the current buffer. More accurately, check the narrowed part of the buffer for unbalanced expressions ("sexps") in general. This is done according to the current syntax table and will find unbalanced brackets or quotes as appropriate. (See Info node `(emacs)Parentheses'.) If imbalance is found, an error is signaled and point is left at the first unbalanced character.Ffield-complete (fn TABLE &optional PREDICATE)Flisp-complete-symbol Perform completion on Lisp symbol preceding point. Compare that symbol against the known Lisp symbols. If no characters can be completed, display a list of possible completions. Repeating the command at that point scrolls the list. The context determines which symbols are considered. If the symbol starts just after an open-parenthesis, only symbols with function definitions are considered. Otherwise, all symbols with function definitions, values or properties are considered. (fn &optional PREDICATE)Smacroexp.elc Fmacroexp--cons Return (CAR . CDR), using ORIGINAL-CONS if possible. (fn CAR CDR ORIGINAL-CONS)Fmacroexp--accumulate Return a list of the results of evaluating BODY for each element of LIST. Evaluate BODY with VAR bound to each `car' from LIST, in turn. Return a list of the values of the final form in BODY. The list structure of the result will share as much with LIST as possible (for instance, when BODY just returns VAR unchanged, the result will be eq to LIST). (fn (VAR LIST) BODY...)Fmacroexp--all-forms Return FORMS with macros expanded. FORMS is a list of forms. If SKIP is non-nil, then don't expand that many elements at the start of FORMS. (fn FORMS &optional SKIP)Fmacroexp--all-clauses Return CLAUSES with macros expanded. CLAUSES is a list of lists of forms; any clause that's not a list is ignored. If SKIP is non-nil, then don't expand that many elements at the start of each clause. (fn CLAUSES &optional SKIP)Fmacroexp--compiler-macro (fn HANDLER FORM)Fmacroexp--funcall-if-compiled Pseudo function used internally by macroexp to delay warnings. The purpose is to delay warnings to bytecomp.el, so they can use things like `byte-compile-warn' to get better file-and-line-number data and also to avoid outputting the warning during normal execution. (fn FORM)Fmacroexp--compiling-p Return non-nil if we're macroexpanding for the compiler.Fmacroexp--warn-and-return (fn MSG FORM &optional COMPILE-ONLY)Fmacroexp--obsolete-warning (fn FUN OBSOLESCENCE-DATA TYPE)Fmacroexpand-1 Perform (at most) one step of macroexpansion. (fn FORM &optional ENVIRONMENT)Fmacroexp-macroexpand Like `macroexpand' but checking obsolescence. (fn FORM ENV)Fmacroexp--expand-all Expand all macros in FORM. This is an internal version of `macroexpand-all'. Assumes the caller has bound `macroexpand-all-environment'. (fn FORM)Fmacroexpand-all Return result of expanding macros at all levels in FORM. If no macros are expanded, FORM is returned unchanged. The second optional arg ENVIRONMENT specifies an environment of macro definitions to shadow the loaded ones for use in file byte-compilation. (fn FORM &optional ENVIRONMENT)Fmacroexp-parse-body Parse a function BODY into (DECLARATIONS . EXPS). (fn BODY)Fmacroexp-progn Return an expression equivalent to \=`(progn ,@EXPS). (fn EXPS)Fmacroexp-unprogn Turn EXP into a list of expressions to execute in sequence. Never returns an empty list. (fn EXP)Fmacroexp-let* Return an expression equivalent to \=`(let* ,bindings ,exp). (fn BINDINGS EXP)Fmacroexp-if Return an expression equivalent to \=`(if ,TEST ,THEN ,ELSE). (fn TEST THEN ELSE)Fmacroexp-let2 Evaluate BODY with SYM bound to an expression for EXP's value. The intended usage is that BODY generates an expression that will refer to EXP's value multiple times, but will evaluate EXP only once. As BODY generates that expression, it should use SYM to stand for the value of EXP. If EXP is a simple, safe expression, then SYM's value is EXP itself. Otherwise, SYM's value is a symbol which holds the value produced by evaluating EXP. The return value incorporates the value of BODY, plus additional code to evaluate EXP once and save the result so SYM can refer to it. If BODY consists of multiple forms, they are all evaluated but only the last one's value matters. TEST is a predicate to determine whether EXP qualifies as simple and safe; if TEST is nil, only constant expressions qualify. Example: (macroexp-let2 nil foo EXP \=`(* ,foo ,foo)) generates an expression that evaluates EXP once, then returns the square of that value. You could do this with (let ((foovar EXP)) (* foovar foovar)) but using `macroexp-let2' produces more efficient code in cases where EXP is a constant. (fn TEST SYM EXP &rest BODY)Fmacroexp-let2* Bind each binding in BINDINGS as `macroexp-let2' does. (fn TEST BINDINGS &rest BODY)Fmacroexp--maxsize (fn EXP SIZE)Fmacroexp-small-p Return non-nil if EXP can be considered small. (fn EXP)Fmacroexp--const-symbol-p Non-nil if SYMBOL is constant. If ANY-VALUE is nil, only return non-nil if the value of the symbol is the symbol itself. (fn SYMBOL &optional ANY-VALUE)Fmacroexp-const-p Return non-nil if EXP will always evaluate to the same value. (fn EXP)Fmacroexp-copyable-p Return non-nil if EXP can be copied without extra cost. (fn EXP)Fmacroexp-quote Return an expression E such that `(eval E)' is V. E is either V or (quote V) depending on whether V evaluates to itself or not. (fn V)Fmacroexp--backtrace Return the Elisp backtrace, more recent frames first.Fmacroexp--trim-backtrace-frame (fn FRAME)Vmacroexp--pending-eager-loads Stack of files currently undergoing eager macro-expansion.Finternal-macroexpand-for-load (fn FORM FULL-P)Smap-ynp.elc Fmap-y-or-n-p Ask a series of boolean questions. Takes args PROMPTER ACTOR LIST, and optional args HELP and ACTION-ALIST. LIST is a list of objects, or a function of no arguments to return the next object or nil. If PROMPTER is a string, the prompt is (format PROMPTER OBJECT). If not a string, PROMPTER is a function of one arg (an object from LIST), which returns a string to be used as the prompt for that object. If the return value is not a string, it may be nil to ignore the object or non-nil to act on the object without asking the user. ACTOR is a function of one arg (an object from LIST), which gets called with each object that the user answers `yes' for. If HELP is given, it is a list (OBJECT OBJECTS ACTION), where OBJECT is a string giving the singular noun for an elt of LIST; OBJECTS is the plural noun for elts of LIST, and ACTION is a transitive verb describing ACTOR. The default is ("object" "objects" "act on"). At the prompts, the user may enter y, Y, or SPC to act on that object; n, N, or DEL to skip that object; ! to act on all following objects; ESC or q to exit (skip all following objects); . (period) to act on the current object and then exit; or \[help-command] to get help. If ACTION-ALIST is given, it is an alist (KEY FUNCTION HELP) of extra keys that will be accepted. KEY is a character; FUNCTION is a function of one arg (an object from LIST); HELP is a string. When the user hits KEY, FUNCTION is called. If it returns non-nil, the object is considered "acted upon", and the next object from LIST is processed. If it returns nil, the prompt is repeated for the same object. Final optional argument NO-CURSOR-IN-ECHO-AREA non-nil says not to set `cursor-in-echo-area' while prompting. This function uses `query-replace-map' to define the standard responses, but not all of the responses which `query-replace' understands are meaningful here. Returns the number of actions taken. (fn PROMPTER ACTOR LIST &optional HELP ACTION-ALIST NO-CURSOR-IN-ECHO-AREA)Fread-answer Read an answer either as a complete word or its character abbreviation. Ask user a question and accept an answer from the list of possible answers. QUESTION should end in a space; this function adds a list of answers to it. ANSWERS is an alist with elements in the following format: (LONG-ANSWER SHORT-ANSWER HELP-MESSAGE) where LONG-ANSWER is a complete answer, SHORT-ANSWER is an abbreviated one-character answer, HELP-MESSAGE is a string describing the meaning of the answer. Example: \='(("yes" ?y "perform the action") ("no" ?n "skip to the next") ("all" ?! "accept all remaining without more questions") ("help" ?h "show help") ("quit" ?q "exit")) When `read-answer-short' is non-nil, accept short answers. Return a long answer even in case of accepting short ones. When `use-dialog-box' is t, pop up a dialog window to get user input. (fn QUESTION ANSWERS)Snadvice.elc Vadvice--where-alist List of descriptions of how to add a function. Each element has the form (WHERE BYTECODE STACK) where: WHERE is a keyword indicating where the function is added. BYTECODE is the corresponding byte-code that will be used. STACK is the amount of stack space needed by the byte-code.Fadvice--p (fn OBJECT)Fadvice--car (fn F)Fadvice--cdr (fn F)Fadvice--props (fn F)Fadvice--cd*r (fn F)Fadvice--where (fn F)Fadvice--make-docstring Build the raw docstring for FUNCTION, presumably advised. (fn FUNCTION)Fadvice-eval-interactive-spec Evaluate the interactive spec SPEC. (fn SPEC)Fadvice--interactive-form (fn FUNCTION)Fadvice--make-interactive-form (fn FUNCTION MAIN)Fadvice--make-1 Build a function value that adds FUNCTION to MAIN. (fn BYTE-CODE STACK-DEPTH FUNCTION MAIN PROPS)Fadvice--make Build a function value that adds FUNCTION to MAIN at WHERE. WHERE is a symbol to select an entry in `advice--where-alist'. (fn WHERE FUNCTION MAIN PROPS)Fadvice--member-p (fn FUNCTION USE-NAME DEFINITION)Fadvice--tweak (fn FLIST TWEAKER)Fadvice--remove-function (fn FLIST FUNCTION)Vadvice--buffer-local-function-sample keeps an example of the special "run the default value" functions. These functions play the same role as t in buffer-local hooks, and to recognize them, we keep a sample here against which to compare. Each instance is different, but `function-equal' will hopefully ignore those differences.Fadvice--set-buffer-local (fn VAR VAL)Fadvice--buffer-local Buffer-local value of VAR, presumed to contain a function. (fn VAR)Fadvice--normalize-place (fn PLACE)Fadd-function Add a piece of advice on the function stored at PLACE. FUNCTION describes the code to add. WHERE describes where to add it. WHERE can be explained by showing the resulting new function, as the result of combining FUNCTION and the previous value of PLACE, which we call OLDFUN here: `:before' (lambda (&rest r) (apply FUNCTION r) (apply OLDFUN r)) `:after' (lambda (&rest r) (prog1 (apply OLDFUN r) (apply FUNCTION r))) `:around' (lambda (&rest r) (apply FUNCTION OLDFUN r)) `:override' (lambda (&rest r) (apply FUNCTION r)) `:before-while' (lambda (&rest r) (and (apply FUNCTION r) (apply OLDFUN r))) `:before-until' (lambda (&rest r) (or (apply FUNCTION r) (apply OLDFUN r))) `:after-while' (lambda (&rest r) (and (apply OLDFUN r) (apply FUNCTION r))) `:after-until' (lambda (&rest r) (or (apply OLDFUN r) (apply FUNCTION r))) `:filter-args' (lambda (&rest r) (apply OLDFUN (funcall FUNCTION r))) `:filter-return'(lambda (&rest r) (funcall FUNCTION (apply OLDFUN r))) If FUNCTION was already added, do nothing. PROPS is an alist of additional properties, among which the following have a special meaning: - `name': a string or symbol. It can be used to refer to this piece of advice. - `depth': a number indicating a preference w.r.t ordering. The default depth is 0. By convention, a depth of 100 means that the advice should be innermost (i.e. at the end of the list), whereas a depth of -100 means that the advice should be outermost. If PLACE is a symbol, its `default-value' will be affected. Use (local \='SYMBOL) if you want to apply FUNCTION to SYMBOL buffer-locally. Use (var VAR) if you want to apply FUNCTION to the (lexical) VAR. If you are trying to modify an existing named function rather than a function value, you probably want to use `advice-add' instead (see Info node `(elisp) Advising Named Functions'). If one of FUNCTION or OLDFUN is interactive, then the resulting function is also interactive. There are 3 cases: - FUNCTION is not interactive: the interactive spec of OLDFUN is used. - The interactive spec of FUNCTION is itself a function: it should take one argument (the interactive spec of OLDFUN, which it can pass to `advice-eval-interactive-spec') and return the list of arguments to use. - Else, use the interactive spec of FUNCTION and ignore the one of OLDFUN. (fn WHERE PLACE FUNCTION &optional PROPS)Fadvice--add-function (fn WHERE REF FUNCTION PROPS)Fremove-function Remove the FUNCTION piece of advice from PLACE. If FUNCTION was not added to PLACE, do nothing. Instead of FUNCTION being the actual function, it can also be the `name' of the piece of advice. (fn PLACE FUNCTION)Fadvice-function-mapc Apply F to every advice function in FUNCTION-DEF. F is called with two arguments: the function that was added, and the properties alist that was specified when it was added. (fn F FUNCTION-DEF)Fadvice-function-member-p Return non-nil if ADVICE is already in FUNCTION-DEF. Instead of ADVICE being the actual function, it can also be the `name' of the piece of advice. (fn ADVICE FUNCTION-DEF)Fadvice--subst-main (fn OLD NEW)Fadvice--normalize (fn SYMBOL DEF)Fadvice--strip-macro (fn X)Fadvice--symbol-function (fn SYMBOL)Fadvice--defalias-fset (fn FSETFUN SYMBOL NEWDEF)Fadvice-add Like `add-function' but for the function named SYMBOL. Contrary to `add-function', this will properly handle the cases where SYMBOL is defined as a macro, alias, command, ... (fn SYMBOL WHERE FUNCTION &optional PROPS)Fadvice-remove Like `remove-function' but for the function named SYMBOL. Contrary to `remove-function', this also works when SYMBOL is a macro or an autoload and it preserves `fboundp'. Instead of the actual function to remove, FUNCTION can also be the `name' of the piece of advice. (fn SYMBOL FUNCTION)Fdefine-advice Define an advice and add it to function named SYMBOL. See `advice-add' and `add-function' for explanation on the arguments. Note if NAME is nil the advice is anonymous; otherwise it is named `SYMBOL@NAME'. (fn SYMBOL (WHERE LAMBDA-LIST &optional NAME DEPTH) &rest BODY)Fadvice-mapc Apply FUN to every advice function in SYMBOL. FUN is called with a two arguments: the function that was added, and the properties alist that was specified when it was added. (fn FUN SYMBOL)Fadvice-member-p Return non-nil if ADVICE has been added to SYMBOL. Instead of ADVICE being the actual function, it can also be the `name' of the piece of advice. (fn ADVICE SYMBOL)Fadvice--called-interactively-skip (fn ORIGI FRAME1 FRAME2)Sregexp-opt.elc Fregexp-opt Return a regexp to match a string in the list STRINGS. Each string should be unique in STRINGS and should not contain any regexps, quoted or not. Optional PAREN specifies how the returned regexp is surrounded by grouping constructs. The optional argument PAREN can be any of the following: a string the resulting regexp is preceded by PAREN and followed by \), e.g. use "\\(?1:" to produce an explicitly numbered group. `words' the resulting regexp is surrounded by \=\<\( and \)\>. `symbols' the resulting regexp is surrounded by \_<\( and \)\_>. non-nil the resulting regexp is surrounded by \( and \). nil the resulting regexp is surrounded by \(?: and \), if it is necessary to ensure that a postfix operator appended to it will apply to the whole expression. The resulting regexp is equivalent to but usually more efficient than that of a simplified version: (defun simplified-regexp-opt (strings &optional paren) (let ((parens (cond ((stringp paren) (cons paren "\\)")) ((eq paren \='words) \='("\\\=<\\(" . "\\)\\>")) ((eq paren \='symbols) \='("\\_<\\(" . "\\)\\_>")) ((null paren) \='("\\(?:" . "\\)")) (t \='("\\(" . "\\)"))))) (concat (car parens) (mapconcat \='regexp-quote strings "\\|") (cdr parens)))) (fn STRINGS &optional PAREN)Fregexp-opt-depth Return the depth of REGEXP. This means the number of non-shy regexp grouping constructs (parenthesized expressions) in REGEXP. (fn REGEXP)Fregexp-opt-group Return a regexp to match a string in the sorted list STRINGS. If PAREN non-nil, output regexp parentheses around returned regexp. If LAX non-nil, don't output parentheses if it doesn't require them. Merges keywords to avoid backtracking in Emacs's regexp matcher. (fn STRINGS &optional PAREN LAX)Fregexp-opt-charset Return a regexp to match a character in CHARS. CHARS should be a list of characters. (fn CHARS)Ssyntax.elc Vsyntax-propertize-function Mode-specific function to apply `syntax-table' text properties. It is the work horse of `syntax-propertize', which is called by things like Font-Lock and indentation. It is given two arguments, START and END: the start and end of the text to which `syntax-table' might need to be applied. Major modes can use this to override the buffer's syntax table for special syntactic constructs that cannot be handled just by the buffer's syntax-table. The specified function may call `syntax-ppss' on any position before END, but it should not call `syntax-ppss-flush-cache', which means that it should not call `syntax-ppss' on some position and later modify the buffer on some earlier position.Vsyntax-propertize-extend-region-functions Special hook run just before proceeding to propertize a region. This is used to allow major modes to help `syntax-propertize' find safe buffer positions as beginning and end of the propertized region. Its most common use is to solve the problem of /identification/ of multiline elements by providing a function that tries to find such elements and move the boundaries such that they do not fall in the middle of one. Each function is called with two arguments (START and END) and it should return either a cons (NEW-START . NEW-END) or nil if no adjustment should be made. These functions are run in turn repeatedly until they all return nil. Put first the functions more likely to cause a change and cheaper to compute.Fsyntax-propertize-wholelines (fn START END)Fsyntax-propertize-multiline Let `syntax-propertize' pay attention to the syntax-multiline property. (fn BEG END)Fsyntax-propertize--shift-groups (fn RE N)Fsyntax-propertize-precompile-rules Return a precompiled form of RULES to pass to `syntax-propertize-rules'. The arg RULES can be of the same form as in `syntax-propertize-rules'. The return value is an object that can be passed as a rule to `syntax-propertize-rules'. I.e. this is useful only when you want to share rules among several `syntax-propertize-function's. (fn &rest RULES)Fsyntax-propertize-rules Make a function that applies RULES for use in `syntax-propertize-function'. The function will scan the buffer, applying the rules where they match. The buffer is scanned a single time, like "lex" would, rather than once per rule. Each RULE can be a symbol, in which case that symbol's value should be, at macro-expansion time, a precompiled set of rules, as returned by `syntax-propertize-precompile-rules'. Otherwise, RULE should have the form (REGEXP HIGHLIGHT1 ... HIGHLIGHTn), where REGEXP is an expression (evaluated at time of macro-expansion) that returns a regexp, and where HIGHLIGHTs have the form (NUMBER SYNTAX) which means to apply the property SYNTAX to the chars matched by the subgroup NUMBER of the regular expression, if NUMBER did match. SYNTAX is an expression that returns a value to apply as `syntax-table' property. Some expressions are handled specially: - if SYNTAX is a string, then it is converted with `string-to-syntax'; - if SYNTAX has the form (prog1 EXP . EXPS) then the value returned by EXP will be applied to the buffer before running EXPS and if EXP is a string it is also converted with `string-to-syntax'. The SYNTAX expression is responsible to save the `match-data' if needed for subsequent HIGHLIGHTs. Also SYNTAX is free to move point, in which case RULES may not be applied to some parts of the text or may be applied several times to other parts. Note: back-references in REGEXPs do not work. (fn &rest RULES)Fsyntax-propertize-via-font-lock Propertize for syntax using font-lock syntax. KEYWORDS obeys the format used in `font-lock-syntactic-keywords'. The return value is a function (with two parameters, START and END) suitable for `syntax-propertize-function'. (fn KEYWORDS)Fsyntax-propertize Ensure that syntax-table properties are set until POS (a buffer point). (fn POS)Finternal--syntax-propertize (fn CHARPOS)Fsyntax-ppss-depth (fn PPSS)Fsyntax-ppss-toplevel-pos Get the latest syntactically outermost position found in a syntactic scan. PPSS is a scan state, as returned by `parse-partial-sexp' or `syntax-ppss'. An "outermost position" means one that it is outside of any syntactic entity: outside of any parentheses, comments, or strings encountered in the scan. If no such position is recorded in PPSS (because the end of the scan was itself at the outermost level), return nil. (fn PPSS)Fsyntax-ppss-context (fn PPSS)Vsyntax-ppss-max-span Threshold below which cache info is deemed unnecessary. We try to make sure that cache entries are at least this far apart from each other, to avoid keeping too much useless info.Vsyntax-begin-function Function to move back outside of any comment/string/paren. This function should move the cursor back to some syntactically safe point (where the PPSS is equivalent to nil).Vsyntax-ppss-wide Cons of two elements (LAST . CACHE). Where LAST is a pair (LAST-POS . LAST-PPS) caching the last invocation and CACHE is a list of (POS . PPSS) pairs, in decreasing POS order. These are valid when the buffer has no restriction.Vsyntax-ppss-narrow Same as `syntax-ppss-wide' but for a narrowed buffer.Vsyntax-ppss-narrow-start Start position of the narrowing for `syntax-ppss-narrow'.Fsyntax-ppss-flush-cache Flush the cache of `syntax-ppss' starting at position BEG. (fn BEG &rest IGNORED)Vsyntax-ppss-table Syntax-table to use during `syntax-ppss', if any.Fsyntax-ppss Parse-Partial-Sexp State at POS, defaulting to point. The returned value is the same as that of `parse-partial-sexp' run from `point-min' to POS except that values at positions 2 and 6 in the returned list (counting from 0) cannot be relied upon. Point is at POS when this function returns. It is necessary to call `syntax-ppss-flush-cache' explicitly if this function is called while `before-change-functions' is temporarily let-bound, or if the buffer is modified without running the hook. (fn &optional POS)Stabulated-list.elc Vtabulated-list-format The format of the current Tabulated List mode buffer. This should be a vector of elements (NAME WIDTH SORT . PROPS), where: - NAME is a string describing the column. This is the label for the column in the header line. Different columns must have non-`equal' names. - WIDTH is the width to reserve for the column. For the final element, its numerical value is ignored. - SORT specifies how to sort entries by this column. If nil, this column cannot be used for sorting. If t, sort by comparing the string value printed in the column. Otherwise, it should be a predicate function suitable for `sort', accepting arguments with the same form as the elements of `tabulated-list-entries'. - PROPS is a plist of additional column properties. Currently supported properties are: - `:right-align': If non-nil, the column should be right-aligned. - `:pad-right': Number of additional padding spaces to the right of the column (defaults to 1 if omitted).Vtabulated-list-use-header-line Whether the Tabulated List buffer should use a header line.Vtabulated-list-entries Entries displayed in the current Tabulated List buffer. This should be either a function, or a list. If a list, each element has the form (ID [DESC1 ... DESCN]), where: - ID is nil, or a Lisp object uniquely identifying this entry, which is used to keep the cursor on the "same" entry when rearranging the list. Comparison is done with `equal'. - Each DESC is a column descriptor, one for each column specified in `tabulated-list-format'. A descriptor is either a string, which is printed as-is, or a list (LABEL . PROPS), which means to use `insert-text-button' to insert a text button with label LABEL and button properties PROPS. The string, or button label, must not contain any newline. If `tabulated-list-entries' is a function, it is called with no arguments and must return a list of the above form.Vtabulated-list-padding Number of characters preceding each Tabulated List mode entry. By default, lines are padded with spaces, but you can use the function `tabulated-list-put-tag' to change this.Vtabulated-list-revert-hook Hook run before reverting a Tabulated List buffer. This is commonly used to recompute `tabulated-list-entries'.Vtabulated-list-printer Function for inserting a Tabulated List entry at point. It is called with two arguments, ID and COLS. ID is a Lisp object identifying the entry, and COLS is a vector of column descriptors, as documented in `tabulated-list-entries'.Vtabulated-list-sort-key Sort key for the current Tabulated List mode buffer. If nil, no additional sorting is performed. Otherwise, this should be a cons cell (NAME . FLIP). NAME is a string matching one of the column names in `tabulated-list-format' (the corresponding SORT entry in `tabulated-list-format' then specifies how to sort). FLIP, if non-nil, means to invert the resulting sort.Ftabulated-list-get-id Return the entry ID of the Tabulated List entry at POS. The value is an ID object from `tabulated-list-entries', or nil. POS, if omitted or nil, defaults to point. (fn &optional POS)Ftabulated-list-get-entry Return the Tabulated List entry at POS. The value is a vector of column descriptors, or nil if there is no entry at POS. POS, if omitted or nil, defaults to point. (fn &optional POS)Ftabulated-list-put-tag Put TAG in the padding area of the current line. TAG should be a string, with length <= `tabulated-list-padding'. If ADVANCE is non-nil, move forward by one line afterwards. (fn TAG &optional ADVANCE)Vtabulated-list-mode-map Local keymap for `tabulated-list-mode' buffers.Vtabulated-list-sort-button-map Local keymap for `tabulated-list-mode' sort buttons.Vtabulated-list-glyphless-char-display The `glyphless-char-display' table in Tabulated List buffers.Vtabulated-list--header-string Holds the header if `tabulated-list-use-header-line' is nil. Populated by `tabulated-list-init-header'.Ftabulated-list-line-number-width Return the width taken by display-line-numbers in the current buffer.Ftabulated-list-init-header Set up header line for the Tabulated List buffer.Ftabulated-list-print-fake-header Insert a fake Tabulated List "header line" at the start of the buffer. Do nothing if `tabulated-list--header-string' is nil.Ftabulated-list-header-overlay-p Return non-nil if there is a fake header. Optional arg POS is a buffer position where to look for a fake header; defaults to `point-min'. (fn &optional POS)Ftabulated-list-revert The `revert-buffer-function' for `tabulated-list-mode'. It runs `tabulated-list-revert-hook', then calls `tabulated-list-print'. (fn &rest IGNORED)Ftabulated-list--column-number (fn NAME)Ftabulated-list--get-sorter Return a sorting predicate for the current tabulated-list. Return nil if `tabulated-list-sort-key' specifies an unsortable column. Negate the predicate that would be returned if `tabulated-list-sort-key' has a non-nil cdr.Ftabulated-list--col-local-max-widths Return maximum entry widths at column COL around current row. Check the current row, the previous one and the next row. (fn COL)Ftabulated-list-print Populate the current Tabulated List mode buffer. This sorts the `tabulated-list-entries' list if sorting is specified by `tabulated-list-sort-key'. It then erases the buffer and inserts the entries with `tabulated-list-printer'. Optional argument REMEMBER-POS, if non-nil, means to move point to the entry with the same ID element as the current line and recenter window line accordingly. Non-nil UPDATE argument means to use an alternative printing method which is faster if most entries haven't changed since the last print. The only difference in outcome is that tags will not be removed from entries that haven't changed (see `tabulated-list-put-tag'). Don't use this immediately after changing `tabulated-list-sort-key'. (fn &optional REMEMBER-POS UPDATE)Ftabulated-list-print-entry Insert a Tabulated List entry at point. This is the default `tabulated-list-printer' function. ID is a Lisp object identifying the entry to print, and COLS is a vector of column descriptors. (fn ID COLS)Ftabulated-list-print-col Insert a specified Tabulated List entry at point. N is the column number, COL-DESC is a column descriptor (see `tabulated-list-entries'), and X is the column number at point. Return the column number after insertion. (fn N COL-DESC X)Ftabulated-list-delete-entry Delete the Tabulated List entry at point. Return a list (ID COLS), where ID is the ID of the deleted entry and COLS is a vector of its column descriptors. Move point to the beginning of the deleted entry. Return nil if there is no entry at point. This function only changes the buffer contents; it does not alter `tabulated-list-entries'.Ftabulated-list-set-col Change the Tabulated List entry at point, setting COL to DESC. COL is the column number to change, or the name of the column to change. DESC is the new column descriptor, which is inserted via `tabulated-list-print-col'. If CHANGE-ENTRY-DATA is non-nil, modify the underlying entry data by setting the appropriate slot of the vector originally used to print this entry. If `tabulated-list-entries' has a list value, this is the vector stored within it. (fn COL DESC &optional CHANGE-ENTRY-DATA)Ftabulated-list-col-sort Sort Tabulated List entries by the column of the mouse click E. (fn &optional E)Ftabulated-list-sort Sort Tabulated List entries by the column at point. With a numeric prefix argument N, sort the Nth column. (fn &optional N)Ftabulated-list--sort-by-column-name (fn NAME)Ftabulated-list-watch-line-number-width (fn WINDOW)Ftabulated-list-window-scroll-function (fn WINDOW START)Ftabulated-list-mode Generic major mode for browsing a list of items. This mode is usually not used directly; instead, other major modes are derived from it, using `define-derived-mode'. In this major mode, the buffer is divided into multiple columns, which are labeled using the header line. Each non-empty line belongs to one "entry", and the entries can be sorted according to their column values. An inheriting mode should usually do the following in their body: - Set `tabulated-list-format', specifying the column format. - Set `tabulated-list-revert-hook', if the buffer contents need to be specially recomputed prior to `revert-buffer'. - Maybe set a `tabulated-list-entries' function (see below). - Maybe set `tabulated-list-printer' (see below). - Maybe set `tabulated-list-padding'. - Call `tabulated-list-init-header' to initialize `header-line-format' according to `tabulated-list-format'. An inheriting mode is usually accompanied by a "list-FOO" command (e.g. `list-packages', `list-processes'). This command creates or switches to a buffer and enables the major mode in that buffer. If `tabulated-list-entries' is not a function, the command should initialize it to a list of entries for displaying. Finally, it should call `tabulated-list-print'. `tabulated-list-print' calls the printer function specified by `tabulated-list-printer', once for each entry. The default printer is `tabulated-list-print-entry', but a mode that keeps data in an ewoc may instead specify a printer function (e.g., one that calls `ewoc-enter-last'), with `tabulated-list-print-entry' as the ewoc pretty-printer. In addition to any hooks its parent mode `special-mode' might have run, this mode runs the hook `tabulated-list-mode-hook', as the final or penultimate step during initialization. \{tabulated-list-mode-map}Stimer.elc Ftimer--triggered--cmacro compiler-macro for inlining `timer--triggered'. (fn CL-WHOLE-ARG CL-X)Ftimer--triggered Access slot "triggered" of `(timer (:constructor nil) (:copier nil) (:constructor timer-create nil) (:type vector) (:conc-name timer--))' struct CL-X. (fn CL-X)Ftimer--high-seconds--cmacro compiler-macro for inlining `timer--high-seconds'. (fn CL-WHOLE-ARG CL-X)Ftimer--high-seconds Access slot "high-seconds" of `(timer (:constructor nil) (:copier nil) (:constructor timer-create nil) (:type vector) (:conc-name timer--))' struct CL-X. (fn CL-X)Ftimer--low-seconds--cmacro compiler-macro for inlining `timer--low-seconds'. (fn CL-WHOLE-ARG CL-X)Ftimer--low-seconds Access slot "low-seconds" of `(timer (:constructor nil) (:copier nil) (:constructor timer-create nil) (:type vector) (:conc-name timer--))' struct CL-X. (fn CL-X)Ftimer--usecs--cmacro compiler-macro for inlining `timer--usecs'. (fn CL-WHOLE-ARG CL-X)Ftimer--usecs Access slot "usecs" of `(timer (:constructor nil) (:copier nil) (:constructor timer-create nil) (:type vector) (:conc-name timer--))' struct CL-X. (fn CL-X)Ftimer--repeat-delay--cmacro compiler-macro for inlining `timer--repeat-delay'. (fn CL-WHOLE-ARG CL-X)Ftimer--repeat-delay Access slot "repeat-delay" of `(timer (:constructor nil) (:copier nil) (:constructor timer-create nil) (:type vector) (:conc-name timer--))' struct CL-X. (fn CL-X)Ftimer--function--cmacro compiler-macro for inlining `timer--function'. (fn CL-WHOLE-ARG CL-X)Ftimer--function Access slot "function" of `(timer (:constructor nil) (:copier nil) (:constructor timer-create nil) (:type vector) (:conc-name timer--))' struct CL-X. (fn CL-X)Ftimer--args--cmacro compiler-macro for inlining `timer--args'. (fn CL-WHOLE-ARG CL-X)Ftimer--args Access slot "args" of `(timer (:constructor nil) (:copier nil) (:constructor timer-create nil) (:type vector) (:conc-name timer--))' struct CL-X. (fn CL-X)Ftimer--idle-delay--cmacro compiler-macro for inlining `timer--idle-delay'. (fn CL-WHOLE-ARG CL-X)Ftimer--idle-delay Access slot "idle-delay" of `(timer (:constructor nil) (:copier nil) (:constructor timer-create nil) (:type vector) (:conc-name timer--))' struct CL-X. (fn CL-X)Ftimer--psecs--cmacro compiler-macro for inlining `timer--psecs'. (fn CL-WHOLE-ARG CL-X)Ftimer--psecs Access slot "psecs" of `(timer (:constructor nil) (:copier nil) (:constructor timer-create nil) (:type vector) (:conc-name timer--))' struct CL-X. (fn CL-X)Ftimer-create--cmacro compiler-macro for inlining `timer-create'. (fn CL-WHOLE-ARG)Ftimer-create Constructor for objects of type `timer'.Ftimerp Return t if OBJECT is a timer. (fn OBJECT)Ftimer--check (fn TIMER)Ftimer--time-setter (fn TIMER TIME)Ftimer--time (fn TIMER)Ftimer-set-time Set the trigger time of TIMER to TIME. TIME must be in the internal format returned by, e.g., `current-time'. If optional third argument DELTA is a positive number, make the timer fire repeatedly that many seconds apart. (fn TIMER TIME &optional DELTA)Ftimer-set-idle-time Set the trigger idle time of TIMER to SECS. SECS may be an integer, floating point number, or the internal time format returned by, e.g., `current-idle-time'. If optional third argument REPEAT is non-nil, make the timer fire each time Emacs is idle for that many seconds. (fn TIMER SECS &optional REPEAT)Ftimer-next-integral-multiple-of-time Yield the next value after TIME that is an integral multiple of SECS. More precisely, the next value, after TIME, that is an integral multiple of SECS seconds since the epoch. SECS may be a fraction. (fn TIME SECS)Ftimer-relative-time Advance TIME by SECS seconds and optionally USECS microseconds and PSECS picoseconds. SECS may be either an integer or a floating point number. (fn TIME SECS &optional USECS PSECS)Ftimer--time-less-p Say whether time value T1 is less than time value T2. (fn T1 T2)Ftimer-inc-time Increment the time set in TIMER by SECS seconds, USECS microseconds, and PSECS picoseconds. SECS may be a fraction. If USECS or PSECS are omitted, they are treated as zero. (fn TIMER SECS &optional USECS PSECS)Ftimer-set-time-with-usecs Set the trigger time of TIMER to TIME plus USECS. TIME must be in the internal format returned by, e.g., `current-time'. The microsecond count from TIME is ignored, and USECS is used instead. If optional fourth argument DELTA is a positive number, make the timer fire repeatedly that many seconds apart. (fn TIMER TIME USECS &optional DELTA)Ftimer-set-function Make TIMER call FUNCTION with optional ARGS when triggering. (fn TIMER FUNCTION &optional ARGS)Ftimer--activate (fn TIMER &optional TRIGGERED-P REUSE-CELL IDLE)Ftimer-activate Insert TIMER into `timer-list'. If TRIGGERED-P is t, make TIMER inactive (put it on the list, but mark it as already triggered). To remove it, use `cancel-timer'. REUSE-CELL, if non-nil, is a cons cell to reuse when inserting TIMER into `timer-list' (usually a cell removed from that list by `cancel-timer-internal'; using this reduces consing for repeat timers). If nil, allocate a new cell. (fn TIMER &optional TRIGGERED-P REUSE-CELL)Ftimer-activate-when-idle Insert TIMER into `timer-idle-list'. This arranges to activate TIMER whenever Emacs is next idle. If optional argument DONT-WAIT is non-nil, set TIMER to activate immediately (see below), or at the right time, if Emacs is already idle. REUSE-CELL, if non-nil, is a cons cell to reuse when inserting TIMER into `timer-idle-list' (usually a cell removed from that list by `cancel-timer-internal'; using this reduces consing for repeat timers). If nil, allocate a new cell. Using non-nil DONT-WAIT is not recommended when activating an idle timer from an idle timer handler, if the timer being activated has an idleness time that is smaller or equal to the time of the current timer. That's because the activated timer will fire right away. (fn TIMER &optional DONT-WAIT REUSE-CELL)Fcancel-timer Remove TIMER from the list of active timers. (fn TIMER)Fcancel-timer-internal Remove TIMER from the list of active timers or idle timers. Only to be used in this file. It returns the cons cell that was removed from the timer list. (fn TIMER)Fcancel-function-timers Cancel all timers which would run FUNCTION. This affects ordinary timers such as are scheduled by `run-at-time', and idle timers such as are scheduled by `run-with-idle-timer'. (fn FUNCTION)Vtimer-event-last Last timer that was run.Vtimer-event-last-1 Next-to-last timer that was run.Vtimer-event-last-2 Third-to-last timer that was run.Ftimer-until Calculate number of seconds from when TIMER will run, until TIME. TIMER is a timer, and stands for the time when its next repeat is scheduled. TIME is a time-list. (fn TIMER TIME)Ftimer-event-handler Call the handler for the timer TIMER. This function is called, by name, directly by the C code. (fn TIMER)Ftimeout-event-p Non-nil if EVENT is a timeout event. (fn EVENT)Frun-at-time Perform an action at time TIME. Repeat the action every REPEAT seconds, if REPEAT is non-nil. REPEAT may be an integer or floating point number. TIME should be one of: - a string giving today's time like "11:23pm" (the acceptable formats are HHMM, H:MM, HH:MM, HHam, HHAM, HHpm, HHPM, HH:MMam, HH:MMAM, HH:MMpm, or HH:MMPM; a period `.' can be used instead of a colon `:' to separate the hour and minute parts); - a string giving a relative time like "90" or "2 hours 35 minutes" (the acceptable forms are a number of seconds without units or some combination of values using units in `timer-duration-words'); - nil, meaning now; - a number of seconds from now; - a value from `encode-time'; - or t (with non-nil REPEAT) meaning the next integral multiple of REPEAT. The action is to call FUNCTION with arguments ARGS. This function returns a timer object which you can use in `cancel-timer'. (fn TIME REPEAT FUNCTION &rest ARGS)Frun-with-timer Perform an action after a delay of SECS seconds. Repeat the action every REPEAT seconds, if REPEAT is non-nil. SECS and REPEAT may be integers or floating point numbers. The action is to call FUNCTION with arguments ARGS. This function returns a timer object which you can use in `cancel-timer'. (fn SECS REPEAT FUNCTION &rest ARGS)Fadd-timeout Add a timer to run SECS seconds from now, to call FUNCTION on OBJECT. If REPEAT is non-nil, repeat the timer every REPEAT seconds. This function returns a timer object which you can use in `cancel-timer'. This function is for compatibility; see also `run-with-timer'. (fn SECS FUNCTION OBJECT &optional REPEAT)Frun-with-idle-timer Perform an action the next time Emacs is idle for SECS seconds. The action is to call FUNCTION with arguments ARGS. SECS may be an integer, a floating point number, or the internal time format returned by, e.g., `current-idle-time'. If Emacs is currently idle, and has been idle for N seconds (N < SECS), then it will call FUNCTION in SECS - N seconds from now. Using SECS <= N is not recommended if this function is invoked from an idle timer, because FUNCTION will then be called immediately. If REPEAT is non-nil, do the action each time Emacs has been idle for exactly SECS seconds (that is, only once for each time Emacs becomes idle). This function returns a timer object which you can use in `cancel-timer'. (fn SECS REPEAT FUNCTION &rest ARGS)Vwith-timeout-timers List of all timers used by currently pending `with-timeout' calls.Fwith-timeout Run BODY, but if it doesn't finish in SECONDS seconds, give up. If we give up, we run the TIMEOUT-FORMS and return the value of the last one. The timeout is checked whenever Emacs waits for some kind of external event (such as keyboard input, input from subprocesses, or a certain time); if the program loops without waiting in any way, the timeout will not be detected. (fn (SECONDS TIMEOUT-FORMS...) BODY)Fwith-timeout-suspend Stop the clock for `with-timeout'. Used by debuggers. The idea is that the time you spend in the debugger should not count against these timeouts. The value is a list that the debugger can pass to `with-timeout-unsuspend' when it exits, to make these timers start counting again.Fwith-timeout-unsuspend Restart the clock for `with-timeout'. The argument should be a value previously returned by `with-timeout-suspend'. (fn TIMER-SPEC-LIST)Fy-or-n-p-with-timeout Like (y-or-n-p PROMPT), with a timeout. If the user does not answer after SECONDS seconds, return DEFAULT-VALUE. (fn PROMPT SECONDS DEFAULT-VALUE)Vtimer-duration-words Alist mapping temporal words to durations in seconds.Ftimer-duration Return number of seconds specified by STRING, or nil if parsing fails. (fn STRING)Finternal-timer-start-idle Mark all idle-time timers as once again candidates for running.Senv.elc Fread-envvar-name Read environment variable name, prompting with PROMPT. Optional second arg MUSTMATCH, if non-nil, means require existing envvar name. If it is also not t, RET does not exit if it does non-null completion. (fn PROMPT &optional MUSTMATCH)Fsubstitute-env-vars Substitute environment variables referred to in STRING. `$FOO' where FOO is an environment variable name means to substitute the value of that variable. The variable name should be terminated with a character not a letter, digit or underscore; otherwise, enclose the entire variable name in braces. For instance, in `ab$cd-x', `$cd' is treated as an environment variable. If WHEN-DEFINED is nil, references to undefined environment variables are replaced by the empty string; if it is a function, the function is called with the variable name as argument and should return the text with which to replace it or nil to leave it unchanged. If it is non-nil and not a function, references to undefined variables are left unchanged. Use `$$' to insert a single dollar sign. (fn STRING &optional WHEN-UNDEFINED)Fsubstitute-env-in-file-name (fn FILENAME)Fsetenv-internal Set VARIABLE to VALUE in ENV, adding empty entries if KEEP-EMPTY. Changes ENV by side-effect, and returns its new value. (fn ENV VARIABLE VALUE KEEP-EMPTY)Fsetenv Set the value of the environment variable named VARIABLE to VALUE. VARIABLE should be a string. VALUE is optional; if not provided or nil, the environment variable VARIABLE will be removed. Interactively, a prefix argument means to unset the variable, and otherwise the current value (if any) of the variable appears at the front of the history list when you type in the new value. This function always replaces environment variables in the new value when called interactively. SUBSTITUTE-ENV-VARS, if non-nil, means to substitute environment variables in VALUE with `substitute-env-vars', which see. This is normally used only for interactive calls. The return value is the new value of VARIABLE, or nil if it was removed from the environment. This function works by modifying `process-environment'. As a special case, setting variable `TZ' calls `set-time-zone-rule' as a side-effect. (fn VARIABLE &optional VALUE SUBSTITUTE-ENV-VARS)Fgetenv Get the value of environment variable VARIABLE. VARIABLE should be a string. Value is nil if VARIABLE is undefined in the environment. Otherwise, value is a string. If optional parameter FRAME is non-nil, then it should be a frame. This function will look up VARIABLE in its `environment' parameter. Otherwise, this function searches `process-environment' for VARIABLE. If it is not found there, then it continues the search in the environment list of the selected frame. (fn VARIABLE &optional FRAME)Sepa-hook.elc Fepa-file--file-name-regexp-set (fn VARIABLE VALUE)Vepa-file-encrypt-to Recipient(s) used for encrypting files. May either be a string or a list of strings.Fauto-encryption-mode Toggle automatic file encryption/decryption (Auto Encryption mode). With a prefix argument ARG, enable Auto Encryption mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Sfacemenu.elc Vfacemenu-face-menu Menu keymap for faces.Vfacemenu-foreground-menu Menu keymap for foreground colors.Vfacemenu-background-menu Menu keymap for background colors.Vfacemenu-special-menu Menu keymap for non-face text-properties.Vfacemenu-justification-menu Submenu for text justification commands.Vfacemenu-indentation-menu Submenu for indentation commands.Vfacemenu-menu Facemenu top-level menu keymap.Vfacemenu-keymap Keymap for face-changing commands. `Facemenu-update' fills in the keymap according to the bindings requested in `facemenu-keybindings'.Vfacemenu-color-alist Alist of colors, used for completion. If this is nil, then the value of (defined-colors) is used.Ffacemenu-update Add or update the "Face" menu in the menu bar. You can call this to update things if you change any of the menu configuration variables.Ffacemenu-set-face Apply FACE to the region or next character typed. If the region is active (normally true except in Transient Mark mode) and nonempty, and there is no prefix argument, this command applies FACE to the region. Otherwise, it applies FACE to the faces to use for the next character inserted. (Moving point or switching buffers before typing a character to insert cancels the specification.) If FACE is `default', to "apply" it means clearing the list of faces to be used. For any other value of FACE, to "apply" it means putting FACE at the front of the list of faces to be used, and removing any faces further along in the list that would be completely overridden by preceding faces (including FACE). This command can also add FACE to the menu of faces, if `facemenu-listed-faces' says to do that.Ffacemenu-set-foreground Set the foreground COLOR of the region or next character typed. This command reads the color in the minibuffer. If the region is active (normally true except in Transient Mark mode) and there is no prefix argument, this command sets the region to the requested face. Otherwise, this command specifies the face for the next character inserted. Moving point or switching buffers before typing a character to insert cancels the specification.Ffacemenu-set-background Set the background COLOR of the region or next character typed. This command reads the color in the minibuffer. If the region is active (normally true except in Transient Mark mode) and there is no prefix argument, this command sets the region to the requested face. Otherwise, this command specifies the face for the next character inserted. Moving point or switching buffers before typing a character to insert cancels the specification.Ffacemenu-set-face-from-menu Set the FACE of the region or next character typed. This function is designed to be called from a menu; FACE is determined using the event type of the menu entry. If FACE is a symbol whose name starts with "fg:" or "bg:", then this functions sets the foreground or background to the color specified by the rest of the symbol's name. Any other symbol is considered the name of a face. If the region is active (normally true except in Transient Mark mode) and there is no prefix argument, this command sets the region to the requested face. Otherwise, this command specifies the face for the next character inserted. Moving point or switching buffers before typing a character to insert cancels the specification.Ffacemenu-set-invisible Make the region invisible. This sets the `invisible' text property; it can be undone with `facemenu-remove-special'.Ffacemenu-set-intangible Make the region intangible: disallow moving into it. This sets the `intangible' text property; it can be undone with `facemenu-remove-special'.Ffacemenu-set-read-only Make the region unmodifiable. This sets the `read-only' text property; it can be undone with `facemenu-remove-special'.Ffacemenu-remove-face-props Remove `face' and `mouse-face' text properties.Ffacemenu-remove-all Remove all text properties from the region.Ffacemenu-remove-special Remove all the "special" text properties from the region. These special properties include `invisible', `intangible' and `read-only'.Flist-colors-sort-key Return a list of keys for sorting colors depending on `list-colors-sort'. COLOR is the name of the color. When return value is nil, filter out the color from the output.Vlist-colors-callback Value of CALLBACK arg passed to `list-colors-display'; internal use.Flist-colors-redisplay Redisplay the colors using `list-colors-sort'. This is installed as a `revert-buffer-function' in the *Colors* buffer.Flist-colors-display Display names of defined colors, and show what they look like. If the optional argument LIST is non-nil, it should be a list of colors to display. Otherwise, this command computes a list of colors that the current display can handle. Customize `list-colors-sort' to change the order in which colors are shown. Type `g' or \[revert-buffer] after customizing `list-colors-sort' to redisplay colors in the new order. If the optional argument BUFFER-NAME is nil, it defaults to *Colors*. If the optional argument CALLBACK is non-nil, it should be a function to call each time the user types RET or clicks on a color. The function should accept a single argument, the color name.Flist-colors-duplicates Return a list of colors with grouped duplicate colors. If a color has no duplicates, then the element of the returned list has the form (COLOR-NAME). The element of the returned list with duplicate colors has the form (COLOR-NAME DUPLICATE-COLOR-NAME ...). This function uses the predicate `facemenu-color-equal' to compare color names. If the optional argument LIST is non-nil, it should be a list of colors to display. Otherwise, this function uses a list of colors that the current display can handle.Ffacemenu-color-equal Return t if colors A and B are the same color. A and B should be strings naming colors. This function queries the display system to find out what the color names mean. It returns nil if the colors differ or if it can't determine the correct answer.Ffacemenu-set-self-insert-face Arrange for the next self-inserted char to have face `face'.Ffacemenu-add-face Add FACE to text between START and END. If START is nil or START to END is empty, add FACE to next typed character instead. For each section of that region that has a different face property, FACE will be consed onto it, and other faces that are completely hidden by that will be removed from the list. If `facemenu-add-face-function' and maybe `facemenu-end-add-face' are non-nil, they are used to set the face information. As a special case, if FACE is `default', then the region is left with NO face text property. Otherwise, selecting the default face would not have any effect. See `facemenu-remove-face-function'.Ffacemenu-active-faces Return from FACE-LIST those faces that would be used for display. This means each face attribute is not specified in a face earlier in FACE-LIST and such a face is therefore active when used to display text. If the optional argument FRAME is given, use the faces in that frame; otherwise use the selected frame. If t, then the global, non-frame faces are used.Ffacemenu-add-new-face Add FACE (a face) to the Face menu if `facemenu-listed-faces' says so. This is called whenever you create a new face, and at other times.Ffacemenu-add-new-color Add COLOR (a color name string) to the appropriate Face menu. MENU should be `facemenu-foreground-menu' or `facemenu-background-menu'. Return the event type (a symbol) of the added menu entry. This is called whenever you use a new color.Ffacemenu-complete-face-list Return list of all faces that look different. Starts with given ALIST of faces, and adds elements only if they display differently from any face already on the list. The faces on ALIST will end up at the end of the returned list, in reverse order.Ffacemenu-iterate Apply FUNC to each element of LIST until one returns non-nil. Returns the non-nil value it found, or nil if all were nil.Sfaces.elc Vface-name-history History list for some commands that read face names. Maximum length of the history list is determined by the value of `history-length', which see.Fface-list Return a list of all defined faces.Fmake-face Define a new face with name FACE, a symbol. Do not call this directly from Lisp code; use `defface' instead. If FACE is already known as a face, leave it unmodified. Return FACE. (fn FACE)Fmake-empty-face Define a new, empty face with name FACE. Do not call this directly from Lisp code; use `defface' instead. (fn FACE)Fcopy-face Define a face named NEW-FACE, which is a copy of OLD-FACE. This function does not copy face customization data, so NEW-FACE will not be made customizable. Most Lisp code should not call this function; use `defface' with :inherit instead. If NEW-FACE already exists as a face, modify it to be like OLD-FACE. If NEW-FACE doesn't already exist, create it. If the optional argument FRAME is a frame, change NEW-FACE on FRAME only. If FRAME is t, copy the frame-independent default specification for OLD-FACE to NEW-FACE. If FRAME is nil, copy the defaults as well as the faces on each existing frame. If the optional fourth argument NEW-FRAME is given, copy the information from face OLD-FACE on frame FRAME to NEW-FACE on frame NEW-FRAME. In this case, FRAME must not be nil. (fn OLD-FACE NEW-FACE &optional FRAME NEW-FRAME)Ffacep Return non-nil if FACE is a face name; nil otherwise. A face name can be a string or a symbol. (fn FACE)Fcheck-face Signal an error if FACE doesn't name a face. Value is FACE. (fn FACE)Fface-id Return the internal ID of face with name FACE. If FACE is a face-alias, return the ID of the target face. The optional argument FRAME is ignored, since the internal face ID of a face name is the same for all frames. (fn FACE &optional FRAME)Fface-equal Non-nil if faces FACE1 and FACE2 are equal. Faces are considered equal if all their attributes are equal. If the optional argument FRAME is given, report on FACE1 and FACE2 in that frame. If FRAME is t, report on the defaults for FACE1 and FACE2 (for new frames). If FRAME is omitted or nil, use the selected frame. (fn FACE1 FACE2 &optional FRAME)Fface-differs-from-default-p Return non-nil if FACE displays differently from the default face. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. (fn FACE &optional FRAME)Fface-nontrivial-p True if face FACE has some non-nil attribute. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. (fn FACE &optional FRAME)Fface-list-p True if FACE-OR-LIST is a list of faces. Return nil if FACE-OR-LIST is a non-nil atom, or a cons cell whose car is either `foreground-color', `background-color', or a keyword. (fn FACE-OR-LIST)Fset-face-attribute-from-resource Set FACE's ATTRIBUTE from X resource RESOURCE, class CLASS on FRAME. Value is the attribute value specified by the resource, or nil if not present. This function displays a message if the resource specifies an invalid attribute. (fn FACE ATTRIBUTE RESOURCE CLASS FRAME)Fset-face-attributes-from-resources Set attributes of FACE from X resources for FRAME. (fn FACE FRAME)Fmake-face-x-resource-internal Fill frame-local FACE on FRAME from X resources. FRAME nil or not specified means do it for all frames. If `inhibit-x-resources' is non-nil, this function does nothing. (fn FACE &optional FRAME)Fface-name Return the name of face FACE. (fn FACE)Fface-all-attributes Return an alist stating the attributes of FACE. Each element of the result has the form (ATTR-NAME . ATTR-VALUE). If FRAME is omitted or nil the value describes the default attributes, but if you specify FRAME, the value describes the attributes of FACE on FRAME. (fn FACE &optional FRAME)Fface-attribute Return the value of FACE's ATTRIBUTE on FRAME. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. If INHERIT is nil, only attributes directly defined by FACE are considered, so the return value may be `unspecified', or a relative value. If INHERIT is non-nil, FACE's definition of ATTRIBUTE is merged with the faces specified by its `:inherit' attribute; however the return value may still be `unspecified' or relative. If INHERIT is a face or a list of faces, then the result is further merged with that face (or faces), until it becomes specified and absolute. To ensure that the return value is always specified and absolute, use a value of `default' for INHERIT; this will resolve any unspecified or relative values by merging with the `default' face (which is always completely specified). (fn FACE ATTRIBUTE &optional FRAME INHERIT)Fface-attribute-merged-with Merges ATTRIBUTE, initially VALUE, with faces from FACES until absolute. FACES may be either a single face or a list of faces. [This is an internal function.] (fn ATTRIBUTE VALUE FACES &optional FRAME)Fface-attribute-specified-or Return VALUE, unless it's `unspecified', in which case evaluate BODY and return the result. (fn VALUE &rest BODY)Fface-foreground Return the foreground color name of FACE, or nil if unspecified. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. If INHERIT is nil, only a foreground color directly defined by FACE is considered, so the return value may be nil. If INHERIT is t, and FACE doesn't define a foreground color, then any foreground color that FACE inherits through its `:inherit' attribute is considered as well; however the return value may still be nil. If INHERIT is a face or a list of faces, then it is used to try to resolve an unspecified foreground color. To ensure that a valid color is always returned, use a value of `default' for INHERIT; this will resolve any unspecified values by merging with the `default' face (which is always completely specified). (fn FACE &optional FRAME INHERIT)Fface-background Return the background color name of FACE, or nil if unspecified. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. If INHERIT is nil, only a background color directly defined by FACE is considered, so the return value may be nil. If INHERIT is t, and FACE doesn't define a background color, then any background color that FACE inherits through its `:inherit' attribute is considered as well; however the return value may still be nil. If INHERIT is a face or a list of faces, then it is used to try to resolve an unspecified background color. To ensure that a valid color is always returned, use a value of `default' for INHERIT; this will resolve any unspecified values by merging with the `default' face (which is always completely specified). (fn FACE &optional FRAME INHERIT)Fface-stipple Return the stipple pixmap name of FACE, or nil if unspecified. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. If INHERIT is nil, only a stipple directly defined by FACE is considered, so the return value may be nil. If INHERIT is t, and FACE doesn't define a stipple, then any stipple that FACE inherits through its `:inherit' attribute is considered as well; however the return value may still be nil. If INHERIT is a face or a list of faces, then it is used to try to resolve an unspecified stipple. To ensure that a valid stipple or nil is always returned, use a value of `default' for INHERIT; this will resolve any unspecified values by merging with the `default' face (which is always completely specified). (fn FACE &optional FRAME INHERIT)Fface-underline-p Return non-nil if FACE specifies a non-nil underlining. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. Optional argument INHERIT is passed to `face-attribute'. (fn FACE &optional FRAME INHERIT)Fface-inverse-video-p Return non-nil if FACE specifies a non-nil inverse-video. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. Optional argument INHERIT is passed to `face-attribute'. (fn FACE &optional FRAME INHERIT)Fface-bold-p Return non-nil if the font of FACE is bold on FRAME. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. Optional argument INHERIT is passed to `face-attribute'. Use `face-attribute' for finer control. (fn FACE &optional FRAME INHERIT)Fface-italic-p Return non-nil if the font of FACE is italic on FRAME. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. Optional argument INHERIT is passed to `face-attribute'. Use `face-attribute' for finer control. (fn FACE &optional FRAME INHERIT)Fface-documentation Get the documentation string for FACE. If FACE is a face-alias, get the documentation for the target face. (fn FACE)Fset-face-documentation Set the documentation string for FACE to STRING. (fn FACE STRING)Fset-face-attribute Set attributes of FACE on FRAME from ARGS. This function overrides the face attributes specified by FACE's face spec. It is mostly intended for internal use only. If FRAME is nil, set the attributes for all existing frames, as well as the default for new frames. If FRAME is t, change the default for new frames only. ARGS must come in pairs ATTRIBUTE VALUE. ATTRIBUTE must be a valid face attribute name. All attributes can be set to `unspecified'; this fact is not further mentioned below. The following attributes are recognized: `:family' VALUE must be a string specifying the font family (e.g. "Monospace"). `:foundry' VALUE must be a string specifying the font foundry, e.g., "adobe". If a font foundry is specified, wild-cards `*' and `?' are allowed. `:width' VALUE specifies the relative proportionate width of the font to use. It must be one of the symbols `ultra-condensed', `extra-condensed', `condensed', `semi-condensed', `normal', `semi-expanded', `expanded', `extra-expanded', or `ultra-expanded'. `:height' VALUE specifies the relative or absolute height of the font. An absolute height is an integer, and specifies font height in units of 1/10 pt. A relative height is either a floating point number, which specifies a scaling factor for the underlying face height; or a function that takes a single argument (the underlying face height) and returns the new height. Note that for the `default' face, you must specify an absolute height (since there is nothing for it to be relative to). `:weight' VALUE specifies the weight of the font to use. It must be one of the symbols `ultra-bold', `extra-bold', `bold', `semi-bold', `normal', `semi-light', `light', `extra-light', `ultra-light'. `:slant' VALUE specifies the slant of the font to use. It must be one of the symbols `italic', `oblique', `normal', `reverse-italic', or `reverse-oblique'. `:foreground', `:background' VALUE must be a color name, a string. `:underline' VALUE specifies whether characters in FACE should be underlined. If VALUE is t, underline with foreground color of the face. If VALUE is a string, underline with that color. If VALUE is nil, explicitly don't underline. Otherwise, VALUE must be a property list of the form: `(:color COLOR :style STYLE)'. COLOR can be either a color name string or `foreground-color'. STYLE can be either `line' or `wave'. If a keyword/value pair is missing from the property list, a default value will be used for the value. The default value of COLOR is the foreground color of the face. The default value of STYLE is `line'. `:overline' VALUE specifies whether characters in FACE should be overlined. If VALUE is t, overline with foreground color of the face. If VALUE is a string, overline with that color. If VALUE is nil, explicitly don't overline. `:strike-through' VALUE specifies whether characters in FACE should be drawn with a line striking through them. If VALUE is t, use the foreground color of the face. If VALUE is a string, strike-through with that color. If VALUE is nil, explicitly don't strike through. `:box' VALUE specifies whether characters in FACE should have a box drawn around them. If VALUE is nil, explicitly don't draw boxes. If VALUE is t, draw a box with lines of width 1 in the foreground color of the face. If VALUE is a string, the string must be a color name, and the box is drawn in that color with a line width of 1. Otherwise, VALUE must be a property list of the form `(:line-width WIDTH :color COLOR :style STYLE)'. If a keyword/value pair is missing from the property list, a default value will be used for the value, as specified below. WIDTH specifies the width of the lines to draw; it defaults to 1. If WIDTH is negative, the absolute value is the width of the lines, and draw top/bottom lines inside the characters area, not around it. COLOR is the name of the color to draw in, default is the foreground color of the face for simple boxes, and the background color of the face for 3D boxes. STYLE specifies whether a 3D box should be draw. If STYLE is `released-button', draw a box looking like a released 3D button. If STYLE is `pressed-button' draw a box that appears like a pressed button. If STYLE is nil, the default if the property list doesn't contain a style specification, draw a 2D box. `:inverse-video' VALUE specifies whether characters in FACE should be displayed in inverse video. VALUE must be one of t or nil. `:stipple' If VALUE is a string, it must be the name of a file of pixmap data. The directories listed in the `x-bitmap-file-path' variable are searched. Alternatively, VALUE may be a list of the form (WIDTH HEIGHT DATA) where WIDTH and HEIGHT are the size in pixels, and DATA is a string containing the raw bits of the bitmap. VALUE nil means explicitly don't use a stipple pattern. For convenience, attributes `:family', `:foundry', `:width', `:height', `:weight', and `:slant' may also be set in one step from an X font name: `:font' Set font-related face attributes from VALUE. VALUE must be a valid font name or font object. It can also be a fontset name. Setting this attribute will also set the `:family', `:foundry', `:width', `:height', `:weight', and `:slant' attributes. `:inherit' VALUE is the name of a face from which to inherit attributes, or a list of face names. Attributes from inherited faces are merged into the face like an underlying face would be, with higher priority than underlying faces. For backward compatibility, the keywords `:bold' and `:italic' can be used to specify weight and slant respectively. This usage is considered obsolete. For these two keywords, the VALUE must be either t or nil. A value of t for `:bold' is equivalent to setting `:weight' to `bold', and a value of t for `:italic' is equivalent to setting `:slant' to `italic'. But if `:weight' is specified in the face spec, `:bold' is ignored, and if `:slant' is specified, `:italic' is ignored. (fn FACE FRAME &rest ARGS)Fmake-face-bold Make the font of FACE be bold, if possible. FRAME nil or not specified means change face on all frames. Argument NOERROR is ignored and retained for compatibility. Use `set-face-attribute' for finer control of the font weight. (fn FACE &optional FRAME NOERROR)Fmake-face-unbold Make the font of FACE be non-bold, if possible. FRAME nil or not specified means change face on all frames. Argument NOERROR is ignored and retained for compatibility. (fn FACE &optional FRAME NOERROR)Fmake-face-italic Make the font of FACE be italic, if possible. FRAME nil or not specified means change face on all frames. Argument NOERROR is ignored and retained for compatibility. Use `set-face-attribute' for finer control of the font slant. (fn FACE &optional FRAME NOERROR)Fmake-face-unitalic Make the font of FACE be non-italic, if possible. FRAME nil or not specified means change face on all frames. Argument NOERROR is ignored and retained for compatibility. (fn FACE &optional FRAME NOERROR)Fmake-face-bold-italic Make the font of FACE be bold and italic, if possible. FRAME nil or not specified means change face on all frames. Argument NOERROR is ignored and retained for compatibility. Use `set-face-attribute' for finer control of font weight and slant. (fn FACE &optional FRAME NOERROR)Fset-face-font Change font-related attributes of FACE to those of FONT (a string). FRAME nil or not specified means change face on all frames. This sets the attributes `:family', `:foundry', `:width', `:height', `:weight', and `:slant'. When called interactively, prompt for the face and font. (fn FACE FONT &optional FRAME)Fset-face-background Change the background color of face FACE to COLOR (a string). FRAME nil or not specified means change face on all frames. COLOR can be a system-defined color name (see `list-colors-display') or a hex spec of the form #RRGGBB. When called interactively, prompts for the face and color. (fn FACE COLOR &optional FRAME)Fset-face-foreground Change the foreground color of face FACE to COLOR (a string). FRAME nil or not specified means change face on all frames. COLOR can be a system-defined color name (see `list-colors-display') or a hex spec of the form #RRGGBB. When called interactively, prompts for the face and color. (fn FACE COLOR &optional FRAME)Fset-face-stipple Change the stipple pixmap of face FACE to STIPPLE. FRAME nil or not specified means change face on all frames. STIPPLE should be a string, the name of a file of pixmap data. The directories listed in the `x-bitmap-file-path' variable are searched. Alternatively, STIPPLE may be a list of the form (WIDTH HEIGHT DATA) where WIDTH and HEIGHT are the size in pixels, and DATA is a string, containing the raw bits of the bitmap. (fn FACE STIPPLE &optional FRAME)Fset-face-underline Specify whether face FACE is underlined. UNDERLINE nil means FACE explicitly doesn't underline. UNDERLINE t means FACE underlines with its foreground color. If UNDERLINE is a string, underline with that color. UNDERLINE may also be a list of the form (:color COLOR :style STYLE), where COLOR is a string or `foreground-color', and STYLE is either `line' or `wave'. :color may be omitted, which means to use the foreground color. :style may be omitted, which means to use a line. FRAME nil or not specified means change face on all frames. Use `set-face-attribute' to "unspecify" underlining. (fn FACE UNDERLINE &optional FRAME)Fset-face-inverse-video Specify whether face FACE is in inverse video. INVERSE-VIDEO-P non-nil means FACE displays explicitly in inverse video. INVERSE-VIDEO-P nil means FACE explicitly is not in inverse video. FRAME nil or not specified means change face on all frames. Use `set-face-attribute' to "unspecify" the inverse video attribute. (fn FACE INVERSE-VIDEO-P &optional FRAME)Fset-face-bold Specify whether face FACE is bold. BOLD-P non-nil means FACE should explicitly display bold. BOLD-P nil means FACE should explicitly display non-bold. FRAME nil or not specified means change face on all frames. Use `set-face-attribute' or `modify-face' for finer control. (fn FACE BOLD-P &optional FRAME)Fset-face-italic Specify whether face FACE is italic. ITALIC-P non-nil means FACE should explicitly display italic. ITALIC-P nil means FACE should explicitly display non-italic. FRAME nil or not specified means change face on all frames. Use `set-face-attribute' or `modify-face' for finer control. (fn FACE ITALIC-P &optional FRAME)Finvert-face Swap the foreground and background colors of FACE. If FRAME is omitted or nil, it means change face on all frames. If FACE specifies neither foreground nor background color, set its foreground and background to the background and foreground of the default face. Value is FACE. (fn FACE &optional FRAME)Fread-face-name Read one or more face names, prompting with PROMPT. PROMPT should not end in a space or a colon. If DEFAULT is non-nil, it should be a face (a symbol) or a face name (a string). It can also be a list of faces or face names. If MULTIPLE is non-nil, the return value from this function is a list of faces. Otherwise a single face is returned. If the user enter the empty string at the prompt, DEFAULT is returned after a possible transformation according to MULTIPLE. That is, if DEFAULT is a list and MULTIPLE is nil, the first element of DEFAULT is returned. If DEFAULT isn't a list, but MULTIPLE is non-nil, a one-element list containing DEFAULT is returned. Otherwise, DEFAULT is returned verbatim. (fn PROMPT &optional DEFAULT MULTIPLE)Fface-valid-attribute-values Return valid values for face attribute ATTRIBUTE. The optional argument FRAME is used to determine available fonts and colors. If it is nil or not specified, the selected frame is used. Value is an alist of (NAME . VALUE) if ATTRIBUTE expects a value out of a set of discrete values. Value is `integerp' if ATTRIBUTE expects an integer value. (fn ATTRIBUTE &optional FRAME)Vface-attribute-name-alist An alist of descriptive names for face attributes. Each element has the form (ATTRIBUTE-NAME . DESCRIPTION) where ATTRIBUTE-NAME is a face attribute name (a keyword symbol), and DESCRIPTION is a descriptive name for ATTRIBUTE-NAME.Fface-descriptive-attribute-name Return a descriptive name for ATTRIBUTE. (fn ATTRIBUTE)Fface-read-string Interactively read a face attribute string value. FACE is the face whose attribute is read. If non-nil, DEFAULT is the default string to return if no new value is entered. NAME is a descriptive name of the attribute for prompting. COMPLETION-ALIST is an alist of valid values, if non-nil. Entering nothing accepts the default string DEFAULT. Value is the new attribute value. (fn FACE DEFAULT NAME &optional COMPLETION-ALIST)Fface-read-integer Interactively read an integer face attribute value. FACE is the face whose attribute is read. DEFAULT is the default value to return if no new value is entered. NAME is a descriptive name of the attribute for prompting. Value is the new attribute value. (fn FACE DEFAULT NAME)Fread-face-attribute Interactively read a new value for FACE's ATTRIBUTE. Optional argument FRAME nil or unspecified means read an attribute value of a global face. Value is the new attribute value. (fn FACE ATTRIBUTE &optional FRAME)Fread-face-font Read the name of a font for FACE on FRAME. If optional argument FRAME is nil or omitted, use the selected frame. (fn FACE &optional FRAME)Fread-all-face-attributes Interactively read all attributes for FACE. If optional argument FRAME is nil or omitted, use the selected frame. Value is a property list of attribute names and new values. (fn FACE &optional FRAME)Fmodify-face Modify attributes of faces interactively. If optional argument FRAME is nil or omitted, modify the face used for newly created frame, i.e. the global face. For non-interactive use, `set-face-attribute' is preferred. When called from Lisp, if FACE is nil, all arguments but FRAME are ignored and the face and its settings are obtained by querying the user. (fn &optional FACE FOREGROUND BACKGROUND STIPPLE BOLD-P ITALIC-P UNDERLINE INVERSE-P FRAME)Fread-face-and-attribute Read face name and face attribute value. ATTRIBUTE is the attribute whose new value is read. FRAME nil or unspecified means read attribute value of global face. Value is a list (FACE NEW-VALUE) where FACE is the face read (a symbol), and NEW-VALUE is value read. (fn ATTRIBUTE &optional FRAME)Vlist-faces-sample-text Text string to display as the sample text for `list-faces-display'.Flist-faces-display List all faces, using the same sample text in each. The sample text is a string that comes from the variable `list-faces-sample-text'. If REGEXP is non-nil, list only those faces with names matching this regular expression. When called interactively with a prefix argument, prompt for a regular expression using `read-regexp'. (fn &optional REGEXP)Fdescribe-face Display the properties of face FACE on FRAME. Interactively, FACE defaults to the faces of the character after point and FRAME defaults to the selected frame. If the optional argument FRAME is given, report on face FACE in that frame. If FRAME is t, report on the defaults for face FACE (for new frames). If FRAME is omitted or nil, use the selected frame. (fn FACE &optional FRAME)Fface-attr-construct Return a `defface'-style attribute list for FACE. Value is a property list of pairs ATTRIBUTE VALUE for all specified face attributes of FACE where ATTRIBUTE is the attribute name and VALUE is the specified value of that attribute. Argument FRAME is ignored and retained for compatibility. (fn FACE &optional FRAME)Fface-spec-set-match-display Non-nil if DISPLAY matches FRAME. DISPLAY is part of a spec such as can be used in `defface'. If FRAME is nil, the current FRAME is used. (fn DISPLAY FRAME)Fface-spec-choose Return the proper attributes for FRAME, out of SPEC. Value is a plist of face attributes in the form of attribute-value pairs. If no match is found or SPEC is nil, return nil, unless NO-MATCH-RETVAL is given, in which case return its value instead. (fn SPEC &optional FRAME NO-MATCH-RETVAL)Fface-spec-reset-face Reset all attributes of FACE on FRAME to unspecified. (fn FACE &optional FRAME)Fface-spec-set Set the FACE's spec SPEC, define FACE, and recalculate its attributes. See `defface' for the format of SPEC. The appearance of each face is controlled by its specs (set via this function), and by the internal frame-specific face attributes (set via `set-face-attribute'). This function also defines FACE as a valid face name if it is not already one, and (re)calculates its attributes on existing frames. The optional argument SPEC-TYPE determines which spec to set: nil, omitted or `face-override-spec' means the override spec, which overrides all the other types of spec mentioned below (this is usually what you want if calling this function outside of Custom code); `customized-face' or `saved-face' means the customized spec or the saved custom spec; `face-defface-spec' means the default spec (usually set only via `defface'); `reset' means to ignore SPEC, but clear the `customized-face' and `face-override-spec' specs; Any other value means not to set any spec, but to run the function for defining FACE and recalculating its attributes. (fn FACE SPEC &optional SPEC-TYPE)Fface-spec-recalc Reset the face attributes of FACE on FRAME according to its specs. The following sources are applied in this order: face reset to default values if it's the default face, otherwise set to unspecified (through `face-spec-reset-face') | (theme and user customization) or: if none of the above exist, and none match the current frame or inherited from the defface spec instead of overwriting it entirely, the following is applied instead: (defface default spec) (X resources (if applicable)) | defface override spec (fn FACE FRAME)Fface-spec-set-2 Set the face attributes of FACE on FRAME according to FACE-ATTRS. FACE-ATTRS is a plist of face attributes in the form of attribute-value pairs. (fn FACE FRAME FACE-ATTRS)Fface-attr-match-p Return t if attributes of FACE match values in plist ATTRS. Optional parameter FRAME is the frame whose definition of FACE is used. If nil or omitted, use the selected frame. (fn FACE ATTRS &optional FRAME)Fface-spec-match-p Return t if FACE, on FRAME, matches what SPEC says it should look like. (fn FACE SPEC &optional FRAME)Fface-default-spec Return the default face-spec for FACE, ignoring any user customization. If there is no default for FACE, return nil. (fn FACE)Fface-user-default-spec Return the user's customized face-spec for FACE, or the default if none. If there is neither a user setting nor a default for FACE, return nil. (fn FACE)Fdefined-colors Return a list of colors supported for a particular frame. The argument FRAME specifies which frame to try. The value may be different for frames on different display types. If FRAME doesn't support colors, the value is nil. If FRAME is nil, that stands for the selected frame. (fn &optional FRAME)Fdefined-colors-with-face-attributes Return a list of colors supported for a particular frame. See `defined-colors' for arguments and return value. In contrast to `define-colors' the elements of the returned list are color strings with text properties, that make the color names render with the color they represent as background color. (fn &optional FRAME)Freadable-foreground-color Return a readable foreground color for background COLOR. (fn COLOR)Fcolor-defined-p Return non-nil if COLOR is supported on frame FRAME. COLOR should be a string naming a color (e.g. "white"), or a string specifying a color's RGB components (e.g. "#ff12ec"), or the symbol `unspecified'. This function returns nil if COLOR is the symbol `unspecified', or one of the strings "unspecified-fg" or "unspecified-bg". If FRAME is omitted or nil, use the selected frame. (fn COLOR &optional FRAME)Fcolor-values Return a description of the color named COLOR on frame FRAME. COLOR should be a string naming a color (e.g. "white"), or a string specifying a color's RGB components (e.g. "#ff12ec"). Return a list of three integers, (RED GREEN BLUE), each between 0 and either 65280 or 65535 (the maximum depends on the system). Use `color-name-to-rgb' if you want RGB floating-point values normalized to 1.0. If FRAME is omitted or nil, use the selected frame. If FRAME cannot display COLOR, the value is nil. COLOR can also be the symbol `unspecified' or one of the strings "unspecified-fg" or "unspecified-bg", in which case the return value is nil. (fn COLOR &optional FRAME)Fdisplay-color-p Return t if DISPLAY supports color. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional DISPLAY)Fdisplay-grayscale-p Return non-nil if frames on DISPLAY can display shades of gray. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional DISPLAY)Fread-color Read a color name or RGB triplet. Completion is available for color names, but not for RGB triplets. RGB triplets have the form "#RRGGBB". Each of the R, G, and B components can have one to four digits, but all three components must have the same number of digits. Each digit is a hex value between 0 and F; either upper case or lower case for A through F are acceptable. In addition to standard color names and RGB hex values, the following are available as color candidates. In each case, the corresponding color is used. * `foreground at point' - foreground under the cursor * `background at point' - background under the cursor Optional arg PROMPT is the prompt; if nil, use a default prompt. Interactively, or with optional arg CONVERT-TO-RGB-P non-nil, convert an input color name to an RGB hex string. Return the RGB hex string. If optional arg ALLOW-EMPTY-NAME is non-nil, the user is allowed to enter an empty color name (the empty string). Interactively, or with optional arg MSG non-nil, print the resulting color name in the echo area. (fn &optional PROMPT CONVERT-TO-RGB ALLOW-EMPTY-NAME MSG)Fface-at-point Return the face of the character after point. If it has more than one face, return the first one. If THING is non-nil try first to get a face name from the buffer. IF MULTIPLE is non-nil, return a list of all faces. Return nil if there is no face. (fn &optional THING MULTIPLE)Ffaces--attribute-at-point Return the face ATTRIBUTE at point. ATTRIBUTE is a keyword. If ATTRIBUTE-UNNAMED is non-nil, it is a symbol to look for in unnamed faces (e.g, `foreground-color'). (fn ATTRIBUTE &optional ATTRIBUTE-UNNAMED)Fforeground-color-at-point Return the foreground color of the character after point.Fbackground-color-at-point Return the background color of the character after point.Fx-handle-named-frame-geometry Add geometry parameters for a named frame to parameter list PARAMETERS. Value is the new parameter list. (fn PARAMETERS)Fx-handle-reverse-video Handle the reverse-video frame parameter and X resource. `x-create-frame' does not handle this one. (fn FRAME PARAMETERS)Fx-create-frame-with-faces Create and return a frame with frame parameters PARAMETERS. If PARAMETERS specify a frame name, handle X geometry resources for that name. If PARAMETERS includes a `reverse' parameter, or the X resource "reverseVideo" is present, handle that. (fn &optional PARAMETERS)Fface-set-after-frame-default Initialize the frame-local faces of FRAME. Calculate the face definitions using the face specs, custom theme settings, X resources, and `face-new-frame-defaults'. Finally, apply any relevant face attributes found amongst the frame parameters in PARAMETERS. (fn FRAME &optional PARAMETERS)Ftty-handle-reverse-video Handle the reverse-video frame parameter for terminal frames. (fn FRAME PARAMETERS)Ftty-create-frame-with-faces Create and return a frame from optional frame parameters PARAMETERS. If PARAMETERS contains a `reverse' parameter, handle that. (fn &optional PARAMETERS)Ftty-find-type Return the longest prefix of TYPE to which PRED returns non-nil. TYPE should be a tty type name such as "xterm-16color". The function tries only those prefixes that are followed by a dash or underscore in the original type name, like "xterm" in the above example. (fn PRED TYPE)Vtty-setup-hook Hook run after running the initialization function of a new text terminal. Specifically, `tty-run-terminal-initialization' runs this. This can be used to fine tune the `input-decode-map', for example.Ftty-run-terminal-initialization Run the special initialization code for the terminal type of FRAME. The optional TYPE parameter may be used to override the autodetected terminal type to a different value. This consults `term-file-aliases' to map terminal types to their aliases. If optional argument RUN-HOOK is non-nil, then as a final step, this runs the hook `tty-setup-hook'. If you set `term-file-prefix' to nil, this function does nothing. (fn FRAME &optional TYPE RUN-HOOK)Fx-resolve-font-name Return a font name matching PATTERN. All wildcards in PATTERN are instantiated. If PATTERN is nil, return the name of the frame's base font, which never contains wildcards. Given optional arguments FACE and FRAME, return a font which is also the same size as FACE on FRAME, or fail. (fn PATTERN &optional FACE FRAME)Sfiles.elc Vbackup-inhibited If non-nil, backups will be inhibited. This variable is intended for use by making it local to a buffer, but it is not an automatically buffer-local variable.Vbackup-enable-predicate Predicate that looks at a file name and decides whether to make backups. Called with an absolute file name as argument, it returns t to enable backup.Vbuffer-file-number The device number and file number of the file visited in the current buffer. The value is a list of the form (FILENUM DEVNUM). This pair of numbers uniquely identifies the file. If the buffer is visiting a new file, the value is nil.Vbuffer-file-numbers-unique Non-nil means that `buffer-file-number' uniquely identifies files.Vbuffer-file-read-only Non-nil if visited file was read-only when visited.Vnull-device The system null device.Vfile-name-invalid-regexp Regexp recognizing file names which aren't allowed by the filesystem.Fversion-control-safe-local-p Return whether X is safe as local value for `version-control'. (fn X)Vauto-save--timer Timer for `auto-save-visited-mode'.Fauto-save-visited-mode Toggle automatic saving to file-visiting buffers on or off. With a prefix argument ARG, enable regular saving of all buffers visiting a file if ARG is positive, and disable it otherwise. Unlike `auto-save-mode', this mode will auto-save buffer contents to the visited files directly and will also run all save-related hooks. See Info node `Saving' for details of the save process. If called from Lisp, enable the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'. (fn &optional ARG)Vfind-file-not-found-functions List of functions to be called for `find-file' on nonexistent file. These functions are called as soon as the error is detected. Variable `buffer-file-name' is already set up. The functions are called in the order given until one of them returns non-nil.Vwrite-file-functions List of functions to be called before saving a buffer to a file. Only used by `save-buffer'. If one of them returns non-nil, the file is considered already written and the rest are not called. These hooks are considered to pertain to the visited file. So any buffer-local binding of this variable is discarded if you change the visited file name with \[set-visited-file-name], but not when you change the major mode. This hook is not run if any of the functions in `write-contents-functions' returns non-nil. Both hooks pertain to how to save a buffer to file, for instance, choosing a suitable coding system and setting mode bits. (See Info node `(elisp)Saving Buffers'.) To perform various checks or updates before the buffer is saved, use `before-save-hook'.Vwrite-contents-functions List of functions to be called before writing out a buffer to a file. Only used by `save-buffer'. If one of them returns non-nil, the file is considered already written and the rest are not called and neither are the functions in `write-file-functions'. This hook can thus be used to create save behavior for buffers that are not visiting a file at all. This variable is meant to be used for hooks that pertain to the buffer's contents, not to the particular visited file; thus, `set-visited-file-name' does not clear this variable; but changing the major mode does clear it. For hooks that _do_ pertain to the particular visited file, use `write-file-functions'. Both this variable and `write-file-functions' relate to how a buffer is saved to file. To perform various checks or updates before the buffer is saved, use `before-save-hook'.Venable-dir-local-variables Non-nil means enable use of directory-local variables. Some modes may wish to set this to nil to prevent directory-local settings being applied, but still respect file-local ones.Vlocal-enable-local-variables Like `enable-local-variables', except for major mode in a -*- line. The meaningful values are nil and non-nil. The default is non-nil. It should be set in a buffer-local fashion. Setting this to nil has the same effect as setting `enable-local-variables' to nil, except that it does not ignore any mode: setting in a -*- line. Unless this difference matters to you, you should set `enable-local-variables' instead of this variable.Vfile-name-history History list of file names entered in the minibuffer. Maximum length of the history list is determined by the value of `history-length', which see.Vsave-silently If non-nil, avoid messages when saving files. Error-related messages will still be printed, but all other messages will not.Fange-ftp-completion-hook-function Provides support for ange-ftp host name completion. Runs the usual ange-ftp hook, but only for completion operations. (fn OP &rest ARGS)Fconvert-standard-filename Convert a standard file's name to something suitable for the OS. This means to guarantee valid names and perhaps to canonicalize certain patterns. FILENAME should be an absolute file name since the conversion rules sometimes vary depending on the position in the file name. E.g. c:/foo is a valid DOS file name, but c:/bar/c:/foo is not. This function's standard definition is trivial; it just returns the argument. However, on Windows and DOS, replace invalid characters. On DOS, make sure to obey the 8.3 limitations. In the native Windows build, turn Cygwin names into native names. See Info node `(elisp)Standard File Names' for more details. (fn FILENAME)Fread-directory-name Read directory name, prompting with PROMPT and completing in directory DIR. Value is not expanded---you must call `expand-file-name' yourself. Default name to DEFAULT-DIRNAME if user exits with the same non-empty string that was inserted by this function. (If DEFAULT-DIRNAME is omitted, DIR combined with INITIAL is used, or just DIR if INITIAL is nil.) If the user exits with an empty minibuffer, this function returns an empty string. (This can only happen if the user erased the pre-inserted contents or if `insert-default-directory' is nil.) Fourth arg MUSTMATCH non-nil means require existing directory's name. Non-nil and non-t means also require confirmation after completion. Fifth arg INITIAL specifies text to start with. DIR should be an absolute directory name. It defaults to the value of `default-directory'. (fn PROMPT &optional DIR DEFAULT-DIRNAME MUSTMATCH INITIAL)Fpwd Show the current default directory. With prefix argument INSERT, insert the current default directory at point instead. (fn &optional INSERT)Vcd-path Value of the CDPATH environment variable, as a list. Not actually set up until the first time you use it.Fparse-colon-path Explode a search path into a list of directory names. Directories are separated by `path-separator' (which is colon in GNU and Unix systems). Substitute environment variables into the resulting list of directory names. For an empty path element (i.e., a leading or trailing separator, or two adjacent separators), return nil (meaning `default-directory') as the associated list element. (fn SEARCH-PATH)Fcd-absolute Change current directory to given absolute file name DIR. (fn DIR)Fcd Make DIR become the current buffer's default directory. If your environment includes a `CDPATH' variable, try each one of that list of directories (separated by occurrences of `path-separator') when resolving a relative directory name. The path separator is colon in GNU and GNU-like systems. (fn DIR)Fdirectory-files-recursively Return list of all files under DIR that have file names matching REGEXP. This function works recursively. Files are returned in "depth first" order, and files from each directory are sorted in alphabetical order. Each file name appears in the returned list in its absolute form. Optional argument INCLUDE-DIRECTORIES non-nil means also include in the output directories whose names match REGEXP. (fn DIR REGEXP &optional INCLUDE-DIRECTORIES)Fload-file Load the Lisp file named FILE. (fn FILE)Flocate-file Search for FILENAME through PATH. If found, return the absolute file name of FILENAME; otherwise return nil. PATH should be a list of directories to look in, like the lists in `exec-path' or `load-path'. If SUFFIXES is non-nil, it should be a list of suffixes to append to file name when searching. If SUFFIXES is nil, it is equivalent to (""). Use ("/") to disable PATH search, but still try the suffixes in SUFFIXES. If non-nil, PREDICATE is used instead of `file-readable-p'. This function will normally skip directories, so if you want it to find directories, make sure the PREDICATE function returns `dir-ok' for them. PREDICATE can also be an integer to pass to the `access' system call, in which case file-name handlers are ignored. This usage is deprecated. For compatibility, PREDICATE can also be one of the symbols `executable', `readable', `writable', or `exists', or a list of one or more of those symbols. (fn FILENAME PATH &optional SUFFIXES PREDICATE)Flocate-file-completion-table Do completion for file names passed to `locate-file'. (fn DIRS SUFFIXES STRING PRED ACTION)Flocate-file-completion Do completion for file names passed to `locate-file'. PATH-AND-SUFFIXES is a pair of lists, (DIRECTORIES . SUFFIXES). (fn STRING PATH-AND-SUFFIXES ACTION)Vlocate-dominating-stop-dir-regexp Regexp of directory names which stop the search in `locate-dominating-file'. Any directory whose name matches this regexp will be treated like a kind of root directory by `locate-dominating-file' which will stop its search when it bumps into it. The default regexp prevents fruitless and time-consuming attempts to find special files in directories in which filenames are interpreted as hostnames, or mount points potentially requiring authentication as a different user.Flocate-dominating-file Starting at FILE, look up directory hierarchy for directory containing NAME. FILE can be a file or a directory. If it's a file, its directory will serve as the starting point for searching the hierarchy of directories. Stop at the first parent directory containing a file NAME, and return the directory. Return nil if not found. Instead of a string, NAME can also be a predicate taking one argument (a directory) and returning a non-nil value if that directory is the one for which we're looking. The predicate will be called with every file/directory the function needs to examine, starting with FILE. (fn FILE NAME)Flocate-user-emacs-file Return an absolute per-user Emacs-specific file name. If NEW-NAME exists in `user-emacs-directory', return it. Else if OLD-NAME is non-nil and ~/OLD-NAME exists, return ~/OLD-NAME. Else return NEW-NAME in `user-emacs-directory', creating the directory if it does not exist. (fn NEW-NAME &optional OLD-NAME)Fexecutable-find Search for COMMAND in `exec-path' and return the absolute file name. Return nil if COMMAND is not found anywhere in `exec-path'. (fn COMMAND)Fload-library Load the Emacs Lisp library named LIBRARY. LIBRARY should be a string. This is an interface to the function `load'. LIBRARY is searched for in `load-path', both with and without `load-suffixes' (as well as `load-file-rep-suffixes'). See Info node `(emacs)Lisp Libraries' for more details. See `load-file' for a different interface to `load'. (fn LIBRARY)Ffile-remote-p Test whether FILE specifies a location on a remote system. A file is considered remote if accessing it is likely to be slower or less reliable than accessing local files. `file-remote-p' never opens a new remote connection. It can only reuse a connection that is already open. Return nil or a string identifying the remote connection (ideally a prefix of FILE). Return nil if FILE is a relative file name. When IDENTIFICATION is nil, the returned string is a complete remote identifier: with components method, user, and host. The components are those present in FILE, with defaults filled in for any that are missing. IDENTIFICATION can specify which part of the identification to return. IDENTIFICATION can be the symbol `method', `user', `host', or `localname'. Any other value is handled like nil and means to return the complete identification. The string returned for IDENTIFICATION `localname' can differ depending on whether there is an existing connection. If CONNECTED is non-nil, return an identification only if FILE is located on a remote system and a connection is established to that remote system. Tip: You can use this expansion of remote identifier components to derive a new remote file name from an existing one. For example, if FILE is "/sudo::/path/to/file" then (concat (file-remote-p FILE) "/bin/sh") returns a remote file name for file "/bin/sh" that has the same remote identifier as FILE but expanded; a name such as "/sudo:root@myhost:/bin/sh". (fn FILE &optional IDENTIFICATION CONNECTED)Ffile-local-name Return the local name component of FILE. This function removes from FILE the specification of the remote host and the method of accessing the host, leaving only the part that identifies FILE locally on the remote system. The returned file name can be used directly as argument of `process-file', `start-file-process', or `shell-command'. (fn FILE)Ffile-local-copy Copy the file FILE into a temporary file on this machine. Returns the name of the local copy, or nil, if FILE is directly accessible. (fn FILE)Ffiles--name-absolute-system-p Return non-nil if FILE is an absolute name to the operating system. This is like `file-name-absolute-p', except that it returns nil for names beginning with `~'. (fn FILE)Ffiles--splice-dirname-file Splice DIRNAME to FILE like the operating system would. If FILE is relative, return DIRNAME concatenated to FILE. Otherwise return FILE, quoted as needed if DIRNAME and FILE have different handlers; although this quoting is dubious if DIRNAME is magic, it is not clear what would be better. This function differs from `expand-file-name' in that DIRNAME must be a directory name and leading `~' and `/:' are not special in FILE. (fn DIRNAME FILE)Ffile-truename Return the truename of FILENAME. If FILENAME is not absolute, first expands it against `default-directory'. The truename of a file name is found by chasing symbolic links both at the level of the file and at the level of the directories containing it, until no links are left at any level. (fn FILENAME)Ffile-chase-links Chase links in FILENAME until a name that is not a link. Unlike `file-truename', this does not check whether a parent directory name is a symbolic link. If the optional argument LIMIT is a number, it means chase no more than that many links and then stop. (fn FILENAME &optional LIMIT)Ffile-size-human-readable Produce a string showing FILE-SIZE in human-readable form. Optional second argument FLAVOR controls the units and the display format: If FLAVOR is nil or omitted, each kilobyte is 1024 bytes and the produced suffixes are "k", "M", "G", "T", etc. If FLAVOR is `si', each kilobyte is 1000 bytes and the produced suffixes are "k", "M", "G", "T", etc. If FLAVOR is `iec', each kilobyte is 1024 bytes and the produced suffixes are "KiB", "MiB", "GiB", "TiB", etc. (fn FILE-SIZE &optional FLAVOR)Ftemporary-file-directory The directory for writing temporary files. In case of a remote `default-directory', this is a directory for temporary files on that remote host. If such a directory does not exist, or `default-directory' ought to be located on a mounted file system (see `mounted-file-systems'), the function returns `default-directory'. For a non-remote and non-mounted `default-directory', the value of the variable `temporary-file-directory' is returned.Fmake-temp-file Create a temporary file. The returned file name (created by appending some random characters at the end of PREFIX, and expanding against `temporary-file-directory' if necessary), is guaranteed to point to a newly created file. You can then use `write-region' to write new data into the file. If DIR-FLAG is non-nil, create a new empty directory instead of a file. If SUFFIX is non-nil, add that at the end of the file name. If TEXT is a string, insert it into the new file; DIR-FLAG should be nil. Otherwise the file will be empty. (fn PREFIX &optional DIR-FLAG SUFFIX TEXT)Ffiles--make-magic-temp-file Implement (make-temp-file ABSOLUTE-PREFIX DIR-FLAG SUFFIX TEXT). This implementation works on magic file names. (fn ABSOLUTE-PREFIX &optional DIR-FLAG SUFFIX TEXT)Fmake-nearby-temp-file Create a temporary file as close as possible to `default-directory'. If PREFIX is a relative file name, and `default-directory' is a remote file name or located on a mounted file systems, the temporary file is created in the directory returned by the function `temporary-file-directory'. Otherwise, the function `make-temp-file' is used. PREFIX, DIR-FLAG and SUFFIX have the same meaning as in `make-temp-file'. (fn PREFIX &optional DIR-FLAG SUFFIX)Frecode-file-name Change the encoding of FILE's name from CODING to NEW-CODING. The value is a new name of FILE. Signals a `file-already-exists' error if a file of the new name already exists unless optional fourth argument OK-IF-ALREADY-EXISTS is non-nil. A number as fourth arg means request confirmation if the new name already exists. This is what happens in interactive use with M-x. (fn FILE CODING NEW-CODING &optional OK-IF-ALREADY-EXISTS)Fconfirm-nonexistent-file-or-buffer Whether to request confirmation before visiting a new file or buffer. The variable `confirm-nonexistent-file-or-buffer' determines the return value, which may be passed as the REQUIRE-MATCH arg to `read-buffer' or `find-file-read-args'.Fminibuffer-with-setup-hook Temporarily add FUN to `minibuffer-setup-hook' while executing BODY. By default, FUN is prepended to `minibuffer-setup-hook'. But if FUN is of the form `(:append FUN1)', FUN1 will be appended to `minibuffer-setup-hook' instead of prepending it. BODY should use the minibuffer at most once. Recursive uses of the minibuffer are unaffected (FUN is not called additional times). This macro actually adds an auxiliary function that calls FUN, rather than FUN itself, to `minibuffer-setup-hook'. (fn FUN &rest BODY)Ffind-file-read-args (fn PROMPT MUSTMATCH)Ffind-file Edit file FILENAME. Switch to a buffer visiting file FILENAME, creating one if none already exists. Interactively, the default if you just type RET is the current directory, but the visited file name is available through the minibuffer history: type \[next-history-element] to pull it into the minibuffer. The first time \[next-history-element] is used after Emacs prompts for the file name, the result is affected by `file-name-at-point-functions', which by default try to guess the file name by looking at point in the current buffer. Customize the value of `file-name-at-point-functions' or set it to nil, if you want only the visited file name and the current directory to be available on first \[next-history-element] request. You can visit files on remote machines by specifying something like /ssh:SOME_REMOTE_MACHINE:FILE for the file name. You can also visit local files as a different user by specifying /sudo::FILE for the file name. See the Info node `(tramp)File name Syntax' in the Tramp Info manual, for more about this. Interactively, or if WILDCARDS is non-nil in a call from Lisp, expand wildcards (if any) and visit multiple files. You can suppress wildcard expansion by setting `find-file-wildcards' to nil. To visit a file without any kind of conversion and without automatically choosing a major mode, use \[find-file-literally]. (fn FILENAME &optional WILDCARDS)Ffind-file-other-window Edit file FILENAME, in another window. Like \[find-file] (which see), but creates a new window or reuses an existing one. See the function `display-buffer'. Interactively, the default if you just type RET is the current directory, but the visited file name is available through the minibuffer history: type \[next-history-element] to pull it into the minibuffer. The first time \[next-history-element] is used after Emacs prompts for the file name, the result is affected by `file-name-at-point-functions', which by default try to guess the file name by looking at point in the current buffer. Customize the value of `file-name-at-point-functions' or set it to nil, if you want only the visited file name and the current directory to be available on first \[next-history-element] request. Interactively, or if WILDCARDS is non-nil in a call from Lisp, expand wildcards (if any) and visit multiple files. (fn FILENAME &optional WILDCARDS)Ffind-file-other-frame Edit file FILENAME, in another frame. Like \[find-file] (which see), but creates a new frame or reuses an existing one. See the function `display-buffer'. Interactively, the default if you just type RET is the current directory, but the visited file name is available through the minibuffer history: type \[next-history-element] to pull it into the minibuffer. The first time \[next-history-element] is used after Emacs prompts for the file name, the result is affected by `file-name-at-point-functions', which by default try to guess the file name by looking at point in the current buffer. Customize the value of `file-name-at-point-functions' or set it to nil, if you want only the visited file name and the current directory to be available on first \[next-history-element] request. Interactively, or if WILDCARDS is non-nil in a call from Lisp, expand wildcards (if any) and visit multiple files. (fn FILENAME &optional WILDCARDS)Ffind-file-existing Edit the existing file FILENAME. Like \[find-file], but only allow a file that exists, and do not allow file names with wildcards. (fn FILENAME)Ffind-file--read-only (fn FUN FILENAME WILDCARDS)Ffind-file-read-only Edit file FILENAME but don't allow changes. Like \[find-file], but marks buffer as read-only. Use \[read-only-mode] to permit editing. (fn FILENAME &optional WILDCARDS)Ffind-file-read-only-other-window Edit file FILENAME in another window but don't allow changes. Like \[find-file-other-window], but marks buffer as read-only. Use \[read-only-mode] to permit editing. (fn FILENAME &optional WILDCARDS)Ffind-file-read-only-other-frame Edit file FILENAME in another frame but don't allow changes. Like \[find-file-other-frame], but marks buffer as read-only. Use \[read-only-mode] to permit editing. (fn FILENAME &optional WILDCARDS)Ffind-alternate-file-other-window Find file FILENAME as a replacement for the file in the next window. This command does not select that window. See \[find-file] for the possible forms of the FILENAME argument. Interactively, or if WILDCARDS is non-nil in a call from Lisp, expand wildcards (if any) and replace the file with multiple files. (fn FILENAME &optional WILDCARDS)Vkill-buffer-hook Hook run when a buffer is killed. The buffer being killed is current while the hook is running. See `kill-buffer'. Note: Be careful with let-binding this hook considering it is frequently used for cleanup.Ffind-alternate-file Find file FILENAME, select its buffer, kill previous buffer. If the current buffer now contains an empty file that you just visited (presumably by mistake), use this command to visit the file you really want. See \[find-file] for the possible forms of the FILENAME argument. Interactively, or if WILDCARDS is non-nil in a call from Lisp, expand wildcards (if any) and replace the file with multiple files. If the current buffer is an indirect buffer, or the base buffer for one or more indirect buffers, the other buffer(s) are not killed. (fn FILENAME &optional WILDCARDS)Fcreate-file-buffer Create a suitably named buffer for visiting FILENAME, and return it. FILENAME (sans directory) is used unchanged if that name is free; otherwise a string <2> or <3> or ... is appended to get an unused name. Emacs treats buffers whose names begin with a space as internal buffers. To avoid confusion when visiting a file whose name begins with a space, this function prepends a "|" to the final result if necessary. (fn FILENAME)Fgenerate-new-buffer Create and return a buffer with a name based on NAME. Choose the buffer's name using `generate-new-buffer-name'. (fn NAME)Vabbreviated-home-dir Regexp matching the user's homedir at the beginning of file name. The value includes abbreviation according to `directory-abbrev-alist'.Fabbreviate-file-name Return a version of FILENAME shortened using `directory-abbrev-alist'. This also substitutes "~" for the user's home directory (unless the home directory is a root directory) and removes automounter prefixes (see the variable `automount-dir-prefix'). When this function is first called, it caches the user's home directory as a regexp in `abbreviated-home-dir', and reuses it afterwards (so long as the home directory does not change; if you want to permanently change your home directory after having started Emacs, set `abbreviated-home-dir' to nil so it will be recalculated). (fn FILENAME)Ffind-buffer-visiting Return the buffer visiting file FILENAME (a string). This is like `get-file-buffer', except that it checks for any buffer visiting the same file, possibly under a different name. If PREDICATE is non-nil, only buffers satisfying it are eligible, and others are ignored. If there is no such live buffer, return nil. (fn FILENAME &optional PREDICATE)Fabort-if-file-too-large If file SIZE larger than `large-file-warning-threshold', allow user to abort. OP-TYPE specifies the file operation being performed (for message to user). (fn SIZE OP-TYPE FILENAME)Fwarn-maybe-out-of-memory Warn if an attempt to open file of SIZE bytes may run out of memory. (fn SIZE)Ffiles--message Like `message', except sometimes don't print to minibuffer. If the variable `save-silently' is non-nil, the message is not displayed on the minibuffer. (fn FORMAT &rest ARGS)Ffind-file-noselect Read file FILENAME into a buffer and return the buffer. If a buffer exists visiting FILENAME, return that one, but verify that the file has not changed since visited or saved. The buffer is not selected, just returned to the caller. Optional second arg NOWARN non-nil means suppress any warning messages. Optional third arg RAWFILE non-nil means the file is read literally. Optional fourth arg WILDCARDS non-nil means do wildcard processing and visit all the matching files. When wildcards are actually used and expanded, return a list of buffers that are visiting the various files. (fn FILENAME &optional NOWARN RAWFILE WILDCARDS)Ffind-file-noselect-1 (fn BUF FILENAME NOWARN RAWFILE TRUENAME NUMBER)Finsert-file-contents-literally Like `insert-file-contents', but only reads in the file literally. See `insert-file-contents' for an explanation of the parameters. A buffer may be modified in several ways after reading into the buffer, due to Emacs features such as format decoding, character code conversion, `find-file-hook', automatic uncompression, etc. This function ensures that none of these modifications will take place. (fn FILENAME &optional VISIT BEG END REPLACE)Finsert-file-1 (fn FILENAME INSERT-FUNC)Finsert-file-literally Insert contents of file FILENAME into buffer after point with no conversion. This function is meant for the user to run interactively. Don't call it from programs! Use `insert-file-contents-literally' instead. (Its calling sequence is different; see its documentation). (fn FILENAME)Vfind-file-literally Non-nil if this buffer was made by `find-file-literally' or equivalent. This has the `permanent-local' property, which takes effect if you make the variable buffer-local.Ffind-file-literally Visit file FILENAME with no conversion of any kind. Format conversion and character code conversion are both disabled, and multibyte characters are disabled in the resulting buffer. The major mode used is Fundamental mode regardless of the file name, and local variable specifications in the file are ignored. Automatic uncompression and adding a newline at the end of the file due to `require-final-newline' is also disabled. If Emacs already has a buffer which is visiting the file, this command asks you whether to visit it literally instead. In non-interactive use, the value is the buffer where the file is visited literally. If the file was visited in a buffer before this command was invoked, it will reuse the existing buffer, regardless of whether it was created literally or not; however, the contents of that buffer will be the literal text of the file without any conversions. In a Lisp program, if you want to be sure of accessing a file's contents literally, you should create a temporary buffer and then read the file contents into it using `insert-file-contents-literally'. (fn FILENAME)Fafter-find-file Called after finding a file and by the default revert function. Sets buffer mode, parses file-local and directory-local variables. Optional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an error in reading the file. WARN non-nil means warn if there exists an auto-save file more recent than the visited file. NOAUTO means don't mess with auto-save mode. Fourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored (see `revert-buffer-in-progress-p' for similar functionality). Fifth arg NOMODES non-nil means don't alter the file's modes. Finishes by calling the functions in `find-file-hook' unless NOMODES is non-nil. (fn &optional ERROR WARN NOAUTO AFTER-FIND-FILE-FROM-REVERT-BUFFER NOMODES)Fnormal-mode Choose the major mode for this buffer automatically. Also sets up any specified local variables of the file or its directory. Uses the visited file name, the -*- line, and the local variables spec. This function is called automatically from `find-file'. In that case, we may set up the file-specified mode and local variables, depending on the value of `enable-local-variables'. In addition, if `local-enable-local-variables' is nil, we do not set local variables (though we do notice a mode specified with -*-.) `enable-local-variables' is ignored if you run `normal-mode' interactively, or from Lisp without specifying the optional argument FIND-FILE; in that case, this function acts as if `enable-local-variables' were t. (fn &optional FIND-FILE)Vauto-mode-alist Alist of filename patterns vs corresponding major mode functions. Each element looks like (REGEXP . FUNCTION) or (REGEXP FUNCTION NON-NIL). (NON-NIL stands for anything that is not nil; the value does not matter.) Visiting a file whose name matches REGEXP specifies FUNCTION as the mode function to use. FUNCTION will be called, unless it is nil. If the element has the form (REGEXP FUNCTION NON-NIL), then after calling FUNCTION (if it's not nil), we delete the suffix that matched REGEXP and search the list again for another match. The extensions whose FUNCTION is `archive-mode' should also appear in `auto-coding-alist' with `no-conversion' coding system. See also `interpreter-mode-alist', which detects executable script modes based on the interpreters they specify to run, and `magic-mode-alist', which determines modes based on file contents.Fconf-mode-maybe Select Conf mode or XML mode according to start of file.Vinterpreter-mode-alist Alist mapping interpreter names to major modes. This is used for files whose first lines match `auto-mode-interpreter-regexp'. Each element looks like (REGEXP . MODE). If REGEXP matches the entire name (minus any directory part) of the interpreter specified in the first line of a script, enable major mode MODE. See also `auto-mode-alist'.Vinhibit-local-variables-regexps List of regexps matching file names in which to ignore local variables. This includes `-*-' lines as well as trailing "Local Variables" sections. Files matching this list are typically binary file formats. They may happen to contain sequences that look like local variable specifications, but are not really, or they may be containers for member files with their own local variable sections, which are not appropriate for the containing file. The function `inhibit-local-variables-p' uses this.Vinhibit-local-variables-suffixes List of regexps matching suffixes to remove from file names. The function `inhibit-local-variables-p' uses this: when checking a file name, it first discards from the end of the name anything that matches one of these regexps.Vinhibit-local-variables-ignore-case Non-nil means `inhibit-local-variables-p' ignores case.Finhibit-local-variables-p Return non-nil if file local variables should be ignored. This checks the file (or buffer) name against `inhibit-local-variables-regexps' and `inhibit-local-variables-suffixes'. If `inhibit-local-variables-ignore-case' is non-nil, this ignores case.Vauto-mode-interpreter-regexp Regexp matching interpreters, for file mode determination. This regular expression is matched against the first line of a file to determine the file's mode in `set-auto-mode'. If it matches, the file is assumed to be interpreted by the interpreter matched by the second group of the regular expression. The mode is then determined as the mode associated with that interpreter in `interpreter-mode-alist'.Vmagic-mode-alist Alist of buffer beginnings vs. corresponding major mode functions. Each element looks like (REGEXP . FUNCTION) or (MATCH-FUNCTION . FUNCTION). After visiting a file, if REGEXP matches the text at the beginning of the buffer, or calling MATCH-FUNCTION returns non-nil, `normal-mode' will call FUNCTION rather than allowing `auto-mode-alist' to decide the buffer's major mode. If FUNCTION is nil, then it is not called. (That is a way of saying "allow `auto-mode-alist' to decide for these files.")Vmagic-fallback-mode-alist Like `magic-mode-alist' but has lower priority than `auto-mode-alist'. Each element looks like (REGEXP . FUNCTION) or (MATCH-FUNCTION . FUNCTION). After visiting a file, if REGEXP matches the text at the beginning of the buffer, or calling MATCH-FUNCTION returns non-nil, `normal-mode' will call FUNCTION, provided that `magic-mode-alist' and `auto-mode-alist' have not specified a mode for this file. If FUNCTION is nil, then it is not called.Vmagic-mode-regexp-match-limit Upper limit on `magic-mode-alist' regexp matches. Also applies to `magic-fallback-mode-alist'.Fset-auto-mode Select major mode appropriate for current buffer. To find the right major mode, this function checks for a -*- mode tag checks for a `mode:' entry in the Local Variables section of the file, checks if it uses an interpreter listed in `interpreter-mode-alist', matches the buffer beginning against `magic-mode-alist', compares the filename against the entries in `auto-mode-alist', then matches the buffer beginning against `magic-fallback-mode-alist'. If `enable-local-variables' is nil, or if the file name matches `inhibit-local-variables-regexps', this function does not check for any mode: tag anywhere in the file. If `local-enable-local-variables' is nil, then the only mode: tag that can be relevant is a -*- one. If the optional argument KEEP-MODE-IF-SAME is non-nil, then we set the major mode only if that would change it. In other words we don't actually set it to the same mode the buffer already has. (fn &optional KEEP-MODE-IF-SAME)Fset-auto-mode-0 Apply MODE and return it. If optional arg KEEP-MODE-IF-SAME is non-nil, MODE is chased of any aliases and compared to current major mode. If they are the same, do nothing and return nil. (fn MODE &optional KEEP-MODE-IF-SAME)Vfile-auto-mode-skip Regexp of lines to skip when looking for file-local settings. If the first line matches this regular expression, then the -*-...-*- file- local settings will be consulted on the second line instead of the first.Fset-auto-mode-1 Find the -*- spec in the buffer. Call with point at the place to start searching from. If one is found, set point to the beginning and return the position of the end. Otherwise, return nil; may change point. The variable `inhibit-local-variables-regexps' can cause a -*- spec to be ignored; but `enable-local-variables' and `local-enable-local-variables' have no effect.Vignored-local-variables Variables to be ignored in a file's local variable spec.Vhack-local-variables-hook Normal hook run after processing a file's local variables specs. Major modes can use this to examine user-specified local variables in order to initialize other data structure based on them.Vfile-local-variables-alist Alist of file-local variable settings in the current buffer. Each element in this list has the form (VAR . VALUE), where VAR is a file-local variable (a symbol) and VALUE is the value specified. The actual value in the buffer may differ from VALUE, if it is changed by the major or minor modes, or by the user.Vdir-local-variables-alist Alist of directory-local variable settings in the current buffer. Each element in this list has the form (VAR . VALUE), where VAR is a directory-local variable (a symbol) and VALUE is the value specified in .dir-locals.el. The actual value in the buffer may differ from VALUE, if it is changed by the major or minor modes, or by the user.Vbefore-hack-local-variables-hook Normal hook run before setting file-local variables. It is called after checking for unsafe/risky variables and setting `file-local-variables-alist', and before applying the variables stored in `file-local-variables-alist'. A hook function is allowed to change the contents of this alist. This hook is called only if there is at least one file-local variable to set.Fhack-local-variables-confirm Get confirmation before setting up local variable values. ALL-VARS is the list of all variables to be set up. UNSAFE-VARS is the list of those that aren't marked as safe or risky. RISKY-VARS is the list of those that are marked as risky. If these settings come from directory-local variables, then DIR-NAME is the name of the associated directory. Otherwise it is nil. (fn ALL-VARS UNSAFE-VARS RISKY-VARS DIR-NAME)Fhack-local-variables-prop-line Return local variables specified in the -*- line. Usually returns an alist of elements (VAR . VAL), where VAR is a variable and VAL is the specified value. Ignores any specification for `coding:', and sometimes for `mode' (which should have already been handled by `set-auto-coding' and `set-auto-mode', respectively). Return nil if the -*- line is malformed. If HANDLE-MODE is nil, we return the alist of all the local variables in the line except `coding' as described above. If it is neither nil nor t, we do the same, except that any settings of `mode' and `coding' are ignored. If HANDLE-MODE is t, we ignore all settings in the line except for `mode', which (if present) we return as the symbol specifying the mode. (fn &optional HANDLE-MODE)Fhack-local-variables-filter Filter local variable settings, querying the user if necessary. VARIABLES is the alist of variable-value settings. This alist is filtered based on the values of `ignored-local-variables', `enable-local-eval', `enable-local-variables', and (if necessary) user interaction. The results are added to `file-local-variables-alist', without applying them. If these settings come from directory-local variables, then DIR-NAME is the name of the associated directory. Otherwise it is nil. (fn VARIABLES DIR-NAME)Fhack-local-variables Parse and put into effect this buffer's local variables spec. For buffers visiting files, also puts into effect directory-local variables. Uses `hack-local-variables-apply' to apply the variables. If HANDLE-MODE is nil, we apply all the specified local variables. If HANDLE-MODE is neither nil nor t, we do the same, except that any settings of `mode' are ignored. If HANDLE-MODE is t, all we do is check whether a "mode:" is specified, and return the corresponding mode symbol, or nil. In this case, we try to ignore minor-modes, and only return a major-mode. If `enable-local-variables' or `local-enable-local-variables' is nil, this function does nothing. If `inhibit-local-variables-regexps' applies to the file in question, the file is not scanned for local variables, but directory-local variables may still be applied. (fn &optional HANDLE-MODE)Fhack-local-variables-apply Apply the elements of `file-local-variables-alist'. If there are any elements, runs `before-hack-local-variables-hook', then calls `hack-one-local-variable' to apply the alist elements one by one. Finishes by running `hack-local-variables-hook', regardless of whether the alist is empty or not. Note that this function ignores a `mode' entry if it specifies the same major mode as the buffer already has.Fsafe-local-variable-p Non-nil if SYM is safe as a file-local variable with value VAL. It is safe if any of these conditions are met: * There is a matching entry (SYM . VAL) in the `safe-local-variable-values' user option. * The `safe-local-variable' property of SYM is a function that evaluates to a non-nil value with VAL as an argument. (fn SYM VAL)Frisky-local-variable-p Non-nil if SYM could be dangerous as a file-local variable. It is dangerous if either of these conditions are met: * Its `risky-local-variable' property is non-nil. * Its name ends with "hook(s)", "function(s)", "form(s)", "map", "program", "command(s)", "predicate(s)", "frame-alist", "mode-alist", "font-lock-(syntactic-)keyword*", "map-alist", or "bindat-spec". (fn SYM &optional IGNORED)Fhack-one-local-variable-quotep (fn EXP)Fhack-one-local-variable-constantp (fn EXP)Fhack-one-local-variable-eval-safep Return t if it is safe to eval EXP when it is found in a file. (fn EXP)Fhack-one-local-variable--obsolete (fn VAR)Fhack-one-local-variable Set local variable VAR with value VAL. If VAR is `mode', call `VAL-mode' as a function unless it's already the major mode. (fn VAR VAL)Vdir-locals-class-alist Alist mapping directory-local variable classes (symbols) to variable lists.Vdir-locals-directory-cache List of cached directory roots for directory-local variable classes. Each element in this list has the form (DIR CLASS MTIME). DIR is the name of the directory. CLASS is the name of a variable class (a symbol). MTIME is the recorded modification time of the directory-local variables file associated with this entry. This time is a list of integers (the same format as `file-attributes'), and is used to test whether the cache entry is still valid. Alternatively, MTIME can be nil, which means the entry is always considered valid.Fdir-locals-get-class-variables Return the variable list for CLASS. (fn CLASS)Fdir-locals-collect-mode-variables Collect directory-local variables from MODE-VARIABLES. VARIABLES is the initial list of variables. Returns the new list. (fn MODE-VARIABLES VARIABLES)Fdir-locals-collect-variables Collect entries from CLASS-VARIABLES into VARIABLES. ROOT is the root directory of the project. Return the new variables list. (fn CLASS-VARIABLES ROOT VARIABLES)Fdir-locals-set-directory-class Declare that the DIRECTORY root is an instance of CLASS. DIRECTORY is the name of a directory, a string. CLASS is the name of a project class, a symbol. MTIME is either the modification time of the directory-local variables file that defined this class, or nil. When a file beneath DIRECTORY is visited, the mode-specific variables from CLASS are applied to the buffer. The variables for a class are defined using `dir-locals-set-class-variables'. (fn DIRECTORY CLASS &optional MTIME)Fdir-locals-set-class-variables Map the type CLASS to a list of variable settings. CLASS is the project class, a symbol. VARIABLES is a list that declares directory-local variables for the class. An element in VARIABLES is either of the form: (MAJOR-MODE . ALIST) or (DIRECTORY . LIST) In the first form, MAJOR-MODE is a symbol, and ALIST is an alist whose elements are of the form (VARIABLE . VALUE). In the second form, DIRECTORY is a directory name (a string), and LIST is a list of the form accepted by the function. When a file is visited, the file's class is found. A directory may be assigned a class using `dir-locals-set-directory-class'. Then variables are set in the file's buffer according to the VARIABLES list of the class. The list is processed in order. * If the element is of the form (MAJOR-MODE . ALIST), and the buffer's major mode is derived from MAJOR-MODE (as determined by `derived-mode-p'), then all the variables in ALIST are applied. A MAJOR-MODE of nil may be used to match any buffer. `make-local-variable' is called for each variable before it is set. * If the element is of the form (DIRECTORY . LIST), and DIRECTORY is an initial substring of the file's directory, then LIST is applied by recursively following these rules. (fn CLASS VARIABLES)Vdir-locals-file File that contains directory-local variables. It has to be constant to enforce uniform values across different environments and users. A second dir-locals file can be used by a user to specify their personal dir-local variables even if the current directory already has a `dir-locals-file' that is shared with other users (such as in a git repository). The name of this second file is derived by appending "-2" to the base name of `dir-locals-file'. With the default value of `dir-locals-file', a ".dir-locals-2.el" file in the same directory will override the ".dir-locals.el". See Info node `(elisp)Directory Local Variables' for details.Fdir-locals--all-files Return a list of all readable dir-locals files in DIRECTORY. The returned list is sorted by increasing priority. That is, values specified in the last file should take precedence over those in the first. (fn DIRECTORY)Fdir-locals-find-file Find the directory-local variables for FILE. This searches upward in the directory tree from FILE. It stops at the first directory that has been registered in `dir-locals-directory-cache' or contains a `dir-locals-file'. If it finds an entry in the cache, it checks that it is valid. A cache entry with no modification time element (normally, one that has been assigned directly using `dir-locals-set-directory-class', not set from a file) is always valid. A cache entry based on a `dir-locals-file' is valid if the modification time stored in the cache matches the current file modification time. If not, the cache entry is cleared so that the file will be re-read. This function returns either: - nil (no directory local variables found), - the matching entry from `dir-locals-directory-cache' (a list), - or the full path to the directory (a string) containing at least one `dir-locals-file' in the case of no valid cache entry. (fn FILE)Fdir-locals--get-sort-score Return a number used for sorting the definitions of dir locals. NODE is assumed to be a cons cell where the car is either a string or a symbol representing a mode name. If it is a mode then the the depth of the mode (ie, how many parents that mode has) will be returned. If it is a string then the length of the string plus 1000 will be returned. Otherwise it returns -1. That way the value can be used to sort the list such that deeper modes will be after the other modes. This will be followed by directory entries in order of length. If the entries are all applied in order then that means the more specific modes will override the values specified by the earlier modes and directory variables will override modes. (fn NODE)Fdir-locals--sort-variables Sorts VARIABLES so that applying them in order has the right effect. The variables are compared by dir-locals--get-sort-score. Directory entries are then recursively sorted using the same criteria. (fn VARIABLES)Fdir-locals-read-from-dir Load all variables files in DIR and register a new class and instance. DIR is the absolute name of a directory which must contain at least one dir-local file (which is a file holding variables to apply). Return the new class name, which is a symbol named DIR. (fn DIR)Fhack-dir-local-variables Read per-directory local variables for the current buffer. Store the directory-local variables in `dir-local-variables-alist' and `file-local-variables-alist', without applying them. This does nothing if either `enable-local-variables' or `enable-dir-local-variables' are nil.Fhack-dir-local-variables-non-file-buffer Apply directory-local variables to a non-file buffer. For non-file buffers, such as Dired buffers, directory-local variables are looked for in `default-directory' and its parent directories.Fset-visited-file-name Change name of file visited in current buffer to FILENAME. This also renames the buffer to correspond to the new file. The next time the buffer is saved it will go in the newly specified file. FILENAME nil or an empty string means mark buffer as not visiting any file. Remember to delete the initial contents of the minibuffer if you wish to pass an empty string as the argument. The optional second argument NO-QUERY, if non-nil, inhibits asking for confirmation in the case where another buffer is already visiting FILENAME. The optional third argument ALONG-WITH-FILE, if non-nil, means that the old visited file has been renamed to the new name FILENAME. (fn FILENAME &optional NO-QUERY ALONG-WITH-FILE)Fwrite-file Write current buffer into file FILENAME. This makes the buffer visit that file, and marks it as not modified. Interactively, prompt for FILENAME. If you specify just a directory name as FILENAME, that means to write to a file in that directory. In this case, the base name of the file is the same as that of the file visited in the buffer, or the buffer name sans leading directories, if any, if the buffer is not already visiting a file. You can also yank the file name into the minibuffer to edit it, using \<minibuffer-local-map>\[next-history-element]. If optional second arg CONFIRM is non-nil, this function asks for confirmation before overwriting an existing file. Interactively, confirmation is required unless you supply a prefix argument. (fn FILENAME &optional CONFIRM)Ffile-extended-attributes Return an alist of extended attributes of file FILENAME. Extended attributes are platform-specific metadata about the file, such as SELinux context, list of ACL entries, etc. (fn FILENAME)Fset-file-extended-attributes Set extended attributes of file FILENAME to ATTRIBUTES. ATTRIBUTES must be an alist of file attributes as returned by `file-extended-attributes'. Value is t if the function succeeds in setting the attributes. (fn FILENAME ATTRIBUTES)Fbackup-buffer Make a backup of the disk file visited by the current buffer, if appropriate. This is normally done before saving the buffer the first time. A backup may be done by renaming or by copying; see documentation of variable `make-backup-files'. If it's done by renaming, then the file is no longer accessible under its old name. The value is non-nil after a backup was made by renaming. It has the form (MODES EXTENDED-ATTRIBUTES BACKUPNAME). MODES is the result of `file-modes' on the original file; this means that the caller, after saving the buffer, should change the modes of the new file to agree with the old modes. EXTENDED-ATTRIBUTES is the result of `file-extended-attributes' on the original file; this means that the caller, after saving the buffer, should change the extended attributes of the new file to agree with the old attributes. BACKUPNAME is the backup file name, which is the old file renamed.Fbackup-buffer-copy (fn FROM-NAME TO-NAME MODES EXTENDED-ATTRIBUTES)Vfile-name-version-regexp Regular expression matching the backup/version part of a file name. Used by `file-name-sans-versions'.Ffile-name-sans-versions Return file NAME sans backup versions or strings. This is a separate procedure so your site-init or startup file can redefine it. If the optional argument KEEP-BACKUP-VERSION is non-nil, we do not remove backup version numbers, only true file version numbers. See also `file-name-version-regexp'. (fn NAME &optional KEEP-BACKUP-VERSION)Ffile-ownership-preserved-p Return t if deleting FILE and rewriting it would preserve the owner. Return also t if FILE does not exist. If GROUP is non-nil, check whether the group would be preserved too. (fn FILE &optional GROUP)Ffile-name-sans-extension Return FILENAME sans final "extension". The extension, in a file name, is the part that begins with the last `.', except that a leading `.' of the file name, if there is one, doesn't count. (fn FILENAME)Ffile-name-extension Return FILENAME's final "extension". The extension, in a file name, is the part that begins with the last `.', excluding version numbers and backup suffixes, except that a leading `.' of the file name, if there is one, doesn't count. Return nil for extensionless file names such as `foo'. Return the empty string for file names such as `foo.'. By default, the returned value excludes the period that starts the extension, but if the optional argument PERIOD is non-nil, the period is included in the value, and in that case, if FILENAME has no extension, the value is "". (fn FILENAME &optional PERIOD)Ffile-name-base Return the base name of the FILENAME: no directory, no extension. FILENAME defaults to `buffer-file-name'. (fn &optional FILENAME)Fnormal-backup-enable-predicate Default `backup-enable-predicate' function. Checks for files in `temporary-file-directory', `small-temporary-file-directory', and "/tmp". (fn NAME)Fmake-backup-file-name Create the non-numeric backup file name for FILE. This calls the function that `make-backup-file-name-function' specifies, with a single argument FILE. (fn FILE)Fmake-backup-file-name--default-function Default function for `make-backup-file-name'. Normally this just returns FILE's name with `~' appended. It searches for a match for FILE in `backup-directory-alist'. If the directory for the backup doesn't exist, it is created. (fn FILE)Fmake-backup-file-name-1 Subroutine of `make-backup-file-name--default-function'. The function `find-backup-file-name' also uses this. (fn FILE)Fbackup-file-name-p Return non-nil if FILE is a backup file name (numeric or not). This is a separate function so you can redefine it for customization. You may need to redefine `file-name-sans-versions' as well. (fn FILE)Fbackup-extract-version Given the name of a numeric backup file, FN, return the backup number. Uses the free variable `backup-extract-version-start', whose value should be the index in the name where the version number begins. (fn FN)Ffind-backup-file-name Find a file name for a backup file FN, and suggestions for deletions. Value is a list whose car is the name for the backup file and whose cdr is a list of old versions to consider deleting now. If the value is nil, don't make a backup. Uses `backup-directory-alist' in the same way as `make-backup-file-name--default-function' does. (fn FN)Ffile-nlinks Return number of names file FILENAME has. (fn FILENAME)Ffile-relative-name Convert FILENAME to be relative to DIRECTORY (default: `default-directory'). This function returns a relative file name which is equivalent to FILENAME when used with that default directory as the default. If FILENAME is a relative file name, it will be interpreted as existing in `default-directory'. If FILENAME and DIRECTORY lie on different machines or on different drives on a DOS/Windows machine, it returns FILENAME in expanded form. (fn FILENAME &optional DIRECTORY)Fsave-buffer Save current buffer in visited file if modified. Variations are described below. By default, makes the previous version into a backup file if previously requested or if this is the first save. Prefixed with one \[universal-argument], marks this version to become a backup when the next save is done. Prefixed with two \[universal-argument]'s, makes the previous version into a backup file. Prefixed with three \[universal-argument]'s, marks this version to become a backup when the next save is done, and makes the previous version into a backup file. With a numeric prefix argument of 0, never make the previous version into a backup file. Note that the various variables that control backups, such as `version-control', `backup-enable-predicate', `vc-make-backup-files', and `backup-inhibited', to name just the more popular ones, still control whether a backup will actually be produced, even when you invoke this command prefixed with two or three \[universal-argument]'s. If a file's name is FOO, the names of its numbered backup versions are FOO.~i~ for various integers i. A non-numbered backup file is called FOO~. Numeric backups (rather than FOO~) will be made if value of `version-control' is not the atom `never' and either there are already numeric versions of the file being backed up, or `version-control' is non-nil. We don't want excessive versions piling up, so there are variables `kept-old-versions', which tells Emacs how many oldest versions to keep, and `kept-new-versions', which tells how many newest versions to keep. Defaults are 2 old versions and 2 new. `dired-kept-versions' controls dired's clean-directory (.) command. If `delete-old-versions' is nil, system will query user before trimming versions. Otherwise it does it silently. If `vc-make-backup-files' is nil, which is the default, no backup files are made for files managed by version control. (This is because the version control system itself records previous versions.) See the subroutine `basic-save-buffer' for more information. (fn &optional ARG)Fdelete-auto-save-file-if-necessary Delete auto-save file for current buffer if `delete-auto-save-files' is t. Normally delete only if the file was written by this Emacs since the last real save, but optional arg FORCE non-nil means delete anyway. (fn &optional FORCE)Vauto-save-hook Normal hook run just before auto-saving.Vsave-buffer-coding-system If non-nil, use this coding system for saving the buffer. More precisely, use this coding system in place of the value of `buffer-file-coding-system', when saving the buffer. Calling `write-region' for any purpose other than saving the buffer will still use `buffer-file-coding-system'; this variable has no effect in such cases.Fbasic-save-buffer Save the current buffer in its visited file, if it has been modified. The hooks `write-contents-functions', `local-write-file-hooks' and `write-file-functions' get a chance to do the job of saving; if they do not, then the buffer is saved in the visited file in the usual way. Before and after saving the buffer, this function runs `before-save-hook' and `after-save-hook', respectively. (fn &optional CALLED-INTERACTIVELY)Vsave-some-buffers-action-alist ACTION-ALIST argument used in call to `map-y-or-n-p'.Vbuffer-save-without-query Non-nil means `save-some-buffers' should save this buffer without asking.Fsave-some-buffers Save some modified file-visiting buffers. Asks user about each one. You can answer `y' to save, `n' not to save, `C-r' to look at the buffer in question with `view-buffer' before deciding or `d' to view the differences using `diff-buffer-with-file'. This command first saves any buffers where `buffer-save-without-query' is non-nil, without asking. Optional argument ARG (interactively, prefix argument) non-nil means save all with no questions. Optional second argument PRED determines which buffers are considered: If PRED is nil, all the file-visiting buffers are considered. If PRED is t, then certain non-file buffers will also be considered. If PRED is a zero-argument function, it indicates for each buffer whether to consider it or not when called with that buffer current. PRED defaults to the value of `save-some-buffers-default-predicate'. See `save-some-buffers-action-alist' if you want to change the additional actions you can take on files. (fn &optional ARG PRED)Fclear-visited-file-modtime Clear out records of last mod time of visited file. Next attempt to save will not complain of a discrepancy.Fnot-modified Mark current buffer as unmodified, not needing to be saved. With prefix ARG, mark buffer as modified, so \[save-buffer] will save. It is not a good idea to use this function in Lisp programs, because it prints a message in the minibuffer. Instead, use `set-buffer-modified-p'. (fn &optional ARG)Ftoggle-read-only Change whether this buffer is read-only. (fn &optional ARG INTERACTIVE)Finsert-file Insert contents of file FILENAME into buffer after point. Set mark after the inserted text. This function is meant for the user to run interactively. Don't call it from programs! Use `insert-file-contents' instead. (Its calling sequence is different; see its documentation). (fn FILENAME)Fappend-to-file Append the contents of the region to the end of file FILENAME. When called from a function, expects three arguments, START, END and FILENAME. START and END are normally buffer positions specifying the part of the buffer to write. If START is nil, that means to use the entire buffer contents. If START is a string, then output that string to the file instead of any buffer contents; END is ignored. This does character code conversion and applies annotations like `write-region' does. (fn START END FILENAME)Ffile-newest-backup Return most recent backup file for FILENAME or nil if no backups exist. (fn FILENAME)Frename-uniquely Rename current buffer to a similar name not already taken. This function is useful for creating multiple shell process buffers or multiple mail buffers, etc. Note that some commands, in particular those based on `compilation-mode' (`compile', `grep', etc.) will reuse the current buffer if it has the appropriate mode even if it has been renamed. So as well as renaming the buffer, you also need to switch buffers before running another instance of such commands.Ffiles--ensure-directory Make directory DIR if it is not already a directory. Return nil. (fn DIR)Fmake-directory Create the directory DIR and optionally any nonexistent parent dirs. If DIR already exists as a directory, signal an error, unless PARENTS is non-nil. Interactively, the default choice of directory to create is the current buffer's default directory. That is useful when you have visited a file in a nonexistent directory. Noninteractively, the second (optional) argument PARENTS, if non-nil, says whether to create parent directories that don't exist. Interactively, this happens by default. If creating the directory or directories fail, an error will be raised. (fn DIR &optional PARENTS)Vdirectory-files-no-dot-files-regexp Regexp matching any file name except "." and "..".Ffiles--force Use NO-SUCH to affect behavior of function FN applied to list ARGS. This acts like (apply FN ARGS) except it returns NO-SUCH if it is non-nil and if FN fails due to a missing file or directory. (fn NO-SUCH FN &rest ARGS)Fdelete-directory Delete the directory named DIRECTORY. Does not follow symlinks. If RECURSIVE is non-nil, delete files in DIRECTORY as well, with no error if something else is simultaneously deleting them. TRASH non-nil means to trash the directory instead, provided `delete-by-moving-to-trash' is non-nil. When called interactively, TRASH is nil if and only if a prefix argument is given, and a further prompt asks the user for RECURSIVE if DIRECTORY is nonempty. (fn DIRECTORY &optional RECURSIVE TRASH)Ffile-equal-p Return non-nil if files FILE1 and FILE2 name the same file. If FILE1 or FILE2 does not exist, the return value is unspecified. (fn FILE1 FILE2)Ffile-in-directory-p Return non-nil if FILE is in DIR or a subdirectory of DIR. A directory is considered to be "in" itself. Return nil if DIR is not an existing directory. (fn FILE DIR)Fcopy-directory Copy DIRECTORY to NEWNAME. Both args must be strings. This function always sets the file modes of the output files to match the corresponding input file. The third arg KEEP-TIME non-nil means give the output files the same last-modified time as the old ones. (This works on only some systems.) A prefix arg makes KEEP-TIME non-nil. Noninteractively, the last argument PARENTS says whether to create parent directories if they don't exist. Interactively, this happens by default. If NEWNAME is a directory name, copy DIRECTORY as a subdirectory there. However, if called from Lisp with a non-nil optional argument COPY-CONTENTS, copy the contents of DIRECTORY directly into NEWNAME instead. (fn DIRECTORY NEWNAME &optional KEEP-TIME PARENTS COPY-CONTENTS)Fprune-directory-list Return a copy of DIRS with all non-existent directories removed. The optional argument KEEP is a list of directories to retain even if they don't exist, and REJECT is a list of directories to remove from DIRS, even if they exist; REJECT takes precedence over KEEP. Note that membership in REJECT and KEEP is checked using simple string comparison. (fn DIRS &optional KEEP REJECT)Vrevert-buffer-function Function to use to revert this buffer. The function receives two arguments IGNORE-AUTO and NOCONFIRM, which are the arguments that `revert-buffer' received. It also has access to the `preserve-modes' argument of `revert-buffer' via the `revert-buffer-preserve-modes' dynamic variable. For historical reasons, a value of nil means to use the default function. This should not be relied upon.Vrevert-buffer-insert-file-contents-function Function to use to insert contents when reverting this buffer. The function receives two arguments: the first the nominal file name to use; the second is t if reading the auto-save file. The function is responsible for updating (or preserving) point. For historical reasons, a value of nil means to use the default function. This should not be relied upon.Fbuffer-stale--default-function Default function to use for `buffer-stale-function'. This function ignores its argument. This returns non-nil if the current buffer is visiting a readable file whose modification time does not match that of the buffer. This function only handles buffers that are visiting files. Non-file buffers need a custom function (fn &optional NOCONFIRM)Vbuffer-stale-function Function to check whether a buffer needs reverting. This should be a function with one optional argument NOCONFIRM. Auto Revert Mode passes t for NOCONFIRM. The function should return non-nil if the buffer should be reverted. A return value of `fast' means that the need for reverting was not checked, but that reverting the buffer is fast. The buffer is current when this function is called. The idea behind the NOCONFIRM argument is that it should be non-nil if the buffer is going to be reverted without asking the user. In such situations, one has to be careful with potentially time consuming operations. For historical reasons, a value of nil means to use the default function. This should not be relied upon. For more information on how this variable is used by Auto Revert mode, see Info node `(emacs)Supporting additional buffers'.Vbefore-revert-hook Normal hook for `revert-buffer' to run before reverting. The function `revert-buffer--default' runs this. A customized `revert-buffer-function' need not run this hook.Vafter-revert-hook Normal hook for `revert-buffer' to run after reverting. Note that the hook value that it runs is the value that was in effect before reverting; that makes a difference if you have buffer-local hook functions. The function `revert-buffer--default' runs this. A customized `revert-buffer-function' need not run this hook.Vrevert-buffer-in-progress-p Non-nil if a `revert-buffer' operation is in progress, nil otherwise.Frevert-buffer Replace current buffer text with the text of the visited file on disk. This undoes all changes since the file was visited or saved. With a prefix argument, offer to revert from latest auto-save file, if that is more recent than the visited file. This command also implements an interface for special buffers that contain text which doesn't come from a file, but reflects some other data instead (e.g. Dired buffers, `buffer-list' buffers). This is done via the variable `revert-buffer-function'. In these cases, it should reconstruct the buffer contents from the appropriate data. When called from Lisp, the first argument is IGNORE-AUTO; only offer to revert from the auto-save file when this is nil. Note that the sense of this argument is the reverse of the prefix argument, for the sake of backward compatibility. IGNORE-AUTO is optional, defaulting to nil. Optional second argument NOCONFIRM means don't ask for confirmation at all. (The variable `revert-without-query' offers another way to revert buffers without querying for confirmation.) Optional third argument PRESERVE-MODES non-nil means don't alter the files modes. Normally we reinitialize them using `normal-mode'. This function binds `revert-buffer-in-progress-p' non-nil while it operates. This function calls the function that `revert-buffer-function' specifies to do the work, with arguments IGNORE-AUTO and NOCONFIRM. The default function runs the hooks `before-revert-hook' and `after-revert-hook'. (fn &optional IGNORE-AUTO NOCONFIRM PRESERVE-MODES)Frevert-buffer--default Default function for `revert-buffer'. The arguments IGNORE-AUTO and NOCONFIRM are as described for `revert-buffer'. Runs the hooks `before-revert-hook' and `after-revert-hook' at the start and end. Calls `revert-buffer-insert-file-contents-function' to reread the contents of the visited file, with two arguments: the first is the file name, the second is non-nil if reading an auto-save file. This function only handles buffers that are visiting files. Non-file buffers need a custom function. (fn IGNORE-AUTO NOCONFIRM)Frevert-buffer-insert-file-contents--default-function Default function for `revert-buffer-insert-file-contents-function'. The function `revert-buffer--default' calls this. FILE-NAME is the name of the file. AUTO-SAVE-P is non-nil if this is an auto-save file. (fn FILE-NAME AUTO-SAVE-P)Frecover-this-file Recover the visited file--get contents from its last auto-save file.Frecover-file Visit file FILE, but get contents from its last auto-save file. (fn FILE)Frecover-session Recover auto save files from a previous Emacs session. This command first displays a Dired buffer showing you the previous sessions that you could recover from. To choose one, move point to the proper line and then type C-c C-c. Then you'll be asked about a number of files to recover.Frecover-session-finish Choose one saved session to recover auto-save files from. This command is used in the special Dired buffer created by \[recover-session].Fkill-buffer-ask Kill BUFFER if confirmed. (fn BUFFER)Fkill-some-buffers Kill some buffers. Asks the user whether to kill each one of them. Non-interactively, if optional argument LIST is non-nil, it specifies the list of buffers to kill, asking for approval for each one. (fn &optional LIST)Fkill-matching-buffers Kill buffers whose name matches the specified REGEXP. Ignores buffers whose name starts with a space, unless optional prefix argument INTERNAL-TOO is non-nil. Asks before killing each buffer, unless NO-ASK is non-nil. (fn REGEXP &optional INTERNAL-TOO NO-ASK)Frename-auto-save-file Adjust current buffer's auto save file name for current conditions. Also rename any existing auto save file, if it was made in this session.Fmake-auto-save-file-name Return file name to use for auto-saves of current buffer. Does not consider `auto-save-visited-file-name' as that variable is checked before calling this function. You can redefine this for customization. See also `auto-save-file-name-p'.Fauto-save-file-name-p Return non-nil if FILENAME can be yielded by `make-auto-save-file-name'. FILENAME should lack slashes. You can redefine this for customization. (fn FILENAME)Fwildcard-to-regexp Given a shell file name pattern WILDCARD, return an equivalent regexp. The generated regexp will match a filename only if the filename matches that wildcard according to shell rules. Only wildcards known by `sh' are supported. (fn WILDCARD)Ffile-expand-wildcards Expand wildcard pattern PATTERN. This returns a list of file names which match the pattern. Files are sorted in `string<' order. If PATTERN is written as an absolute file name, the values are absolute also. If PATTERN is written as a relative file name, it is interpreted relative to the current default directory, `default-directory'. The file names returned are normally also relative to the current default directory. However, if FULL is non-nil, they are absolute. (fn PATTERN &optional FULL)Flist-directory Display a list of files in or matching DIRNAME, a la `ls'. DIRNAME is globbed by the shell if necessary. Prefix arg (second arg if noninteractive) means supply -l switch to `ls'. Actions controlled by variables `list-directory-brief-switches' and `list-directory-verbose-switches'. (fn DIRNAME &optional VERBOSE)Fshell-quote-wildcard-pattern Quote characters special to the shell in PATTERN, leave wildcards alone. PATTERN is assumed to represent a file-name wildcard suitable for the underlying filesystem. For Unix and GNU/Linux, each character from the set [ \t\n;<>&|()\=`\='"#$] is quoted with a backslash; for DOS/Windows, all the parts of the pattern which don't include wildcard characters are quoted with double quotes. This function leaves alone existing quote characters (\ on Unix and " on Windows), so PATTERN can use them to quote wildcard characters that need to be passed verbatim to shell commands. (fn PATTERN)Vinsert-directory-program Absolute or relative name of the `ls' program used by `insert-directory'.Fget-free-disk-space Return the amount of free space on directory DIR's file system. The return value is a string describing the amount of free space (normally, the number of free 1KB blocks). This function calls `file-system-info' if it is available, or invokes the program specified by `directory-free-space-program' and `directory-free-space-args'. If the system call or program is unsuccessful, or if DIR is a remote directory, this function returns nil. (fn DIR)Vdirectory-listing-before-filename-regexp Regular expression to match up to the file name in a directory listing. The default value is designed to recognize dates and times regardless of the language.Finsert-directory-wildcard-in-dir-p Return non-nil if DIR contents a shell wildcard in the directory part. The return value is a cons (DIR . WILDCARDS); DIR is the `default-directory' in the Dired buffer, and WILDCARDS are the wildcards. Valid wildcards are '*', '?', '[abc]' and '[a-z]'. (fn DIR)Finsert-directory-clean (fn BEG SWITCHES)Finsert-directory Insert directory listing for FILE, formatted according to SWITCHES. Leaves point after the inserted text. SWITCHES may be a string of options, or a list of strings representing individual options. Optional third arg WILDCARD means treat FILE as shell wildcard. Optional fourth arg FULL-DIRECTORY-P means file is a directory and switches do not contain `d', so that a full listing is expected. This works by running a directory listing program whose name is in the variable `insert-directory-program'. If WILDCARD, it also runs the shell specified by `shell-file-name'. When SWITCHES contains the long `--dired' option, this function treats it specially, for the sake of dired. However, the normally equivalent short `-D' option is just passed on to `insert-directory-program', as any other option. (fn FILE SWITCHES &optional WILDCARD FULL-DIRECTORY-P)Finsert-directory-adj-pos Convert `ls --dired' file name position value POS to a buffer position. File name position values returned in ls --dired output count only stdout; they don't count the error messages sent to stderr. So this function converts to them to real buffer positions. ERROR-LINES is a list of buffer positions of error message lines, of the form (START END). (fn POS ERROR-LINES)Finsert-directory-safely Insert directory listing for FILE, formatted according to SWITCHES. Like `insert-directory', but if FILE does not exist, it inserts a message to that effect instead of signaling an error. (fn FILE SWITCHES &optional WILDCARD FULL-DIRECTORY-P)Fsave-buffers-kill-emacs Offer to save each buffer, then kill this Emacs process. With prefix ARG, silently save all file-visiting buffers without asking. If there are active processes where `process-query-on-exit-flag' returns non-nil and `confirm-kill-processes' is non-nil, asks whether processes should be killed. Runs the members of `kill-emacs-query-functions' in turn and stops if any returns nil. If `confirm-kill-emacs' is non-nil, calls it. (fn &optional ARG)Fsave-buffers-kill-terminal Offer to save each buffer, then kill the current connection. If the current frame has no client, kill Emacs itself using `save-buffers-kill-emacs'. With prefix ARG, silently save all file-visiting buffers, then kill. If emacsclient was started with a list of filenames to edit, then only these files will be asked to be saved. (fn &optional ARG)Ffile-name-non-special (fn OPERATION &rest ARGUMENTS)Ffile-name-quoted-p Whether NAME is quoted with prefix "/:". If NAME is a remote file name, check the local part of NAME. (fn NAME)Ffile-name-quote Add the quotation prefix "/:" to file NAME. If NAME is a remote file name, the local part of NAME is quoted. If NAME is already a quoted file name, NAME is returned unchanged. (fn NAME)Ffile-name-unquote Remove quotation prefix "/:" from file NAME, if any. If NAME is a remote file name, the local part of NAME is unquoted. (fn NAME)Ffile-modes-char-to-who Convert CHAR to a numeric bit-mask for extracting mode bits. CHAR is in [ugoa] and represents the category of users (Owner, Group, Others, or All) for whom to produce the mask. The bit-mask that is returned extracts from mode bits the access rights for the specified category of users. (fn CHAR)Ffile-modes-char-to-right Convert CHAR to a numeric value of mode bits. CHAR is in [rwxXstugo] and represents symbolic access permissions. If CHAR is in [Xugo], the value is taken from FROM (or 0 if omitted). (fn CHAR &optional FROM)Ffile-modes-rights-to-number Convert a symbolic mode string specification to an equivalent number. RIGHTS is the symbolic mode spec, it should match "([+=-][rwxXstugo]*)+". WHO-MASK is the bit-mask specifying the category of users to which to apply the access permissions. See `file-modes-char-to-who'. FROM (or 0 if nil) gives the mode bits on which to base permissions if RIGHTS request to add, remove, or set permissions based on existing ones, as in "og+rX-w". (fn RIGHTS WHO-MASK &optional FROM)Ffile-modes-symbolic-to-number Convert symbolic file modes to numeric file modes. MODES is the string to convert, it should match "[ugoa]*([+-=][rwxXstugo]*)+,...". See Info node `(coreutils)File permissions' for more information on this notation. FROM (or 0 if nil) gives the mode bits on which to base permissions if MODES request to add, remove, or set permissions based on existing ones, as in "og+rX-w". (fn MODES &optional FROM)Fread-file-modes Read file modes in octal or symbolic notation and return its numeric value. PROMPT is used as the prompt, default to "File modes (octal or symbolic): ". ORIG-FILE is the name of a file on whose mode bits to base returned permissions if what user types requests to add, remove, or set permissions based on existing mode bits, as in "og+rX-w". (fn &optional PROMPT ORIG-FILE)Fmove-file-to-trash Move the file (or directory) named FILENAME to the trash. When `delete-by-moving-to-trash' is non-nil, this function is called by `delete-file' and `delete-directory' instead of deleting files outright. If the function `system-move-file-to-trash' is defined, call it with FILENAME as an argument. Otherwise, if `trash-directory' is non-nil, move FILENAME to that directory. Otherwise, trash FILENAME using the freedesktop.org conventions, like the GNOME, KDE and XFCE desktop environments. Emacs only moves files to "home trash", ignoring per-volume trashcans. (fn FILENAME)Ffile-attribute-type The type field in ATTRIBUTES returned by `file-attributes'. The value is either t for directory, string (name linked to) for symbolic link, or nil. (fn ATTRIBUTES)Ffile-attribute-link-number Return the number of links in ATTRIBUTES returned by `file-attributes'. (fn ATTRIBUTES)Ffile-attribute-user-id The UID field in ATTRIBUTES returned by `file-attributes'. This is either a string or a number. If a string value cannot be looked up, a numeric value, either an integer or a float, is returned. (fn ATTRIBUTES)Ffile-attribute-group-id The GID field in ATTRIBUTES returned by `file-attributes'. This is either a string or a number. If a string value cannot be looked up, a numeric value, either an integer or a float, is returned. (fn ATTRIBUTES)Ffile-attribute-access-time The last access time in ATTRIBUTES returned by `file-attributes'. This a list of integers (HIGH LOW USEC PSEC) in the same style as (current-time). (fn ATTRIBUTES)Ffile-attribute-modification-time The modification time in ATTRIBUTES returned by `file-attributes'. This is the time of the last change to the file's contents, and is a list of integers (HIGH LOW USEC PSEC) in the same style as (current-time). (fn ATTRIBUTES)Ffile-attribute-status-change-time The status modification time in ATTRIBUTES returned by `file-attributes'. This is the time of last change to the file's attributes: owner and group, access mode bits, etc, and is a list of integers (HIGH LOW USEC PSEC) in the same style as (current-time). (fn ATTRIBUTES)Ffile-attribute-size The size (in bytes) in ATTRIBUTES returned by `file-attributes'. This is a floating point number if the size is too large for an integer. (fn ATTRIBUTES)Ffile-attribute-modes The file modes in ATTRIBUTES returned by `file-attributes'. This is a string of ten letters or dashes as in ls -l. (fn ATTRIBUTES)Ffile-attribute-inode-number The inode number in ATTRIBUTES returned by `file-attributes'. If it is larger than what an Emacs integer can hold, this is of the form (HIGH . LOW): first the high bits, then the low 16 bits. If even HIGH is too large for an Emacs integer, this is instead of the form (HIGH MIDDLE . LOW): first the high bits, then the middle 24 bits, and finally the low 16 bits. (fn ATTRIBUTES)Ffile-attribute-device-number The file system device number in ATTRIBUTES returned by `file-attributes'. If it is larger than what an Emacs integer can hold, this is of the form (HIGH . LOW): first the high bits, then the low 16 bits. If even HIGH is too large for an Emacs integer, this is instead of the form (HIGH MIDDLE . LOW): first the high bits, then the middle 24 bits, and finally the low 16 bits. (fn ATTRIBUTES)Ffile-attribute-collect Return a sublist of ATTRIBUTES returned by `file-attributes'. ATTR-NAMES are symbols with the selected attribute names. Valid attribute names are: type, link-number, user-id, group-id, access-time, modification-time, status-change-time, size, modes, inode-number and device-number. (fn ATTRIBUTES &rest ATTR-NAMES)Sfont-core.elc Vfont-lock-defaults Defaults for Font Lock mode specified by the major mode. Defaults should be of the form: (KEYWORDS [KEYWORDS-ONLY [CASE-FOLD [SYNTAX-ALIST ...]]]) KEYWORDS may be a symbol (a variable or function whose value is the keywords to use for fontification) or a list of symbols (specifying different levels of fontification). If KEYWORDS-ONLY is non-nil, syntactic fontification (strings and comments) is not performed. If CASE-FOLD is non-nil, the case of the keywords is ignored when fontifying. If SYNTAX-ALIST is non-nil, it should be a list of cons pairs of the form (CHAR-OR-STRING . STRING) used to set the local Font Lock syntax table, for keyword and syntactic fontification (see `modify-syntax-entry'). These item elements are used by Font Lock mode to set the variables `font-lock-keywords', `font-lock-keywords-only', `font-lock-keywords-case-fold-search', `font-lock-syntax-table'. Further item elements are alists of the form (VARIABLE . VALUE) and are in no particular order. Each VARIABLE is made buffer-local before set to VALUE. Currently, appropriate variables include `font-lock-mark-block-function'. If this is non-nil, it should be a function with no args used to mark any enclosing block of text, for fontification via \[font-lock-fontify-block]. Typical values are `mark-defun' for programming modes or `mark-paragraph' for textual modes (i.e., the mode-dependent function is known to put point and mark around a text block relevant to that mode). Other variables include that for syntactic keyword fontification, `font-lock-syntactic-keywords' and those for buffer-specialized fontification functions, `font-lock-fontify-buffer-function', `font-lock-unfontify-buffer-function', `font-lock-fontify-region-function', `font-lock-unfontify-region-function', and `font-lock-inhibit-thing-lock'.Vfont-lock-function A function which is called when `font-lock-mode' is toggled. It will be passed one argument, which is the current value of `font-lock-mode'.Vfont-lock-mode Non-nil if Font-Lock mode is enabled. Use the command `font-lock-mode' to change this variable.Ffont-lock-mode Toggle syntax highlighting in this buffer (Font Lock mode). With a prefix argument ARG, enable Font Lock mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Font Lock mode is enabled, text is fontified as you type it: - Comments are displayed in `font-lock-comment-face'; - Strings are displayed in `font-lock-string-face'; - Certain other expressions are displayed in other faces according to the value of the variable `font-lock-keywords'. To customize the faces (colors, fonts, etc.) used by Font Lock for fontifying different parts of buffer text, use \[customize-face]. You can enable Font Lock mode in any major mode automatically by turning on in the major mode's hook. For example, put in your ~/.emacs: (add-hook \='c-mode-hook \='turn-on-font-lock) Alternatively, you can use Global Font Lock mode to automagically turn on Font Lock mode in buffers whose major mode supports it and whose major mode is one of `font-lock-global-modes'. For example, put in your ~/.emacs: (global-font-lock-mode t) Where major modes support different levels of fontification, you can use the variable `font-lock-maximum-decoration' to specify which level you generally prefer. When you turn Font Lock mode on/off the buffer is fontified/defontified, though fontification occurs only if the buffer is less than `font-lock-maximum-size'. To add your own highlighting for some major mode, and modify the highlighting selected automatically via the variable `font-lock-maximum-decoration', you can use `font-lock-add-keywords'. To fontify a buffer, without turning on Font Lock mode and regardless of buffer size, you can use \[font-lock-fontify-buffer]. To fontify a block (the function or paragraph containing point, or a number of lines around point), perhaps because modification on the current line caused syntactic change on other lines, you can use \[font-lock-fontify-block]. You can set your own default settings for some mode, by setting a buffer local value for `font-lock-defaults', via its mode hook. The above is the default behavior of `font-lock-mode'; you may specify your own function which is called when `font-lock-mode' is toggled via `font-lock-function'. Ffont-lock-defontify Clear out all `font-lock-face' properties in current buffer. A major mode that uses `font-lock-face' properties might want to put this function onto `change-major-mode-hook'.Fturn-on-font-lock Turn on Font Lock mode (only if the terminal can display it).Vfont-lock-global-modes Modes for which Font Lock mode is automagically turned on. Global Font Lock mode is controlled by the command `global-font-lock-mode'. If nil, means no modes have Font Lock mode automatically turned on. If t, all modes that support Font Lock mode have it automatically turned on. If a list, it should be a list of `major-mode' symbol names for which Font Lock mode should be automatically turned on. The sense of the list is negated if it begins with `not'. For example: (c-mode c++-mode) means that Font Lock mode is turned on for buffers in C and C++ modes only.Fglobal-font-lock-mode Toggle Font-Lock mode in all buffers. With prefix ARG, enable Global Font-Lock mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Font-Lock mode is enabled in all buffers where `turn-on-font-lock-if-desired' would do it. See `font-lock-mode' for more information on Font-Lock mode.Sfont-lock.elc Vfont-lock-comment-face Face name to use for comments.Vfont-lock-comment-delimiter-face Face name to use for comment delimiters.Vfont-lock-string-face Face name to use for strings.Vfont-lock-doc-face Face name to use for documentation.Vfont-lock-keyword-face Face name to use for keywords.Vfont-lock-builtin-face Face name to use for builtins.Vfont-lock-function-name-face Face name to use for function names.Vfont-lock-variable-name-face Face name to use for variable names.Vfont-lock-type-face Face name to use for type and class names.Vfont-lock-constant-face Face name to use for constant and label names.Vfont-lock-warning-face Face name to use for things that should stand out.Vfont-lock-negation-char-face Face name to use for easy to overlook negation. This can be an "!" or the "n" in "ifndef".Vfont-lock-preprocessor-face Face name to use for preprocessor directives.Vfont-lock-keywords A list of the keywords to highlight. There are two kinds of values: user-level, and compiled. A user-level keywords list is what a major mode or the user would set up. Normally the list would come from `font-lock-defaults'. through selection of a fontification level and evaluation of any contained expressions. You can also alter it by calling `font-lock-add-keywords' or `font-lock-remove-keywords' with MODE = nil. Each element in a user-level keywords list should have one of these forms: MATCHER (MATCHER . SUBEXP) (MATCHER . FACENAME) (MATCHER . HIGHLIGHT) (MATCHER HIGHLIGHT ...) (eval . FORM) where MATCHER can be either the regexp to search for, or the function name to call to make the search (called with one argument, the limit of the search; it should return non-nil, move point, and set `match-data' appropriately if it succeeds; like `re-search-forward' would). MATCHER regexps can be generated via the function `regexp-opt'. FORM is an expression, whose value should be a keyword element, evaluated when the keyword is (first) used in a buffer. This feature can be used to provide a keyword that can only be generated when Font Lock mode is actually turned on. HIGHLIGHT should be either MATCH-HIGHLIGHT or MATCH-ANCHORED. For highlighting single items, for example each instance of the word "foo", typically only MATCH-HIGHLIGHT is required. However, if an item or (typically) items are to be highlighted following the instance of another item (the anchor), for example each instance of the word "bar" following the word "anchor" then MATCH-ANCHORED may be required. MATCH-HIGHLIGHT should be of the form: (SUBEXP FACENAME [OVERRIDE [LAXMATCH]]) SUBEXP is the number of the subexpression of MATCHER to be highlighted. FACENAME is an expression whose value is the face name to use. Instead of a face, FACENAME can evaluate to a property list of the form (face FACE PROP1 VAL1 PROP2 VAL2 ...) in which case all the listed text-properties will be set rather than just FACE. In such a case, you will most likely want to put those properties in `font-lock-extra-managed-props' or to override `font-lock-unfontify-region-function'. OVERRIDE and LAXMATCH are flags. If OVERRIDE is t, existing fontification can be overwritten. If `keep', only parts not already fontified are highlighted. If `prepend' or `append', existing fontification is merged with the new, in which the new or existing fontification, respectively, takes precedence. If LAXMATCH is non-nil, that means don't signal an error if there is no match for SUBEXP in MATCHER. For example, an element of the form highlights (if not already highlighted): "\\\=<foo\\\=>" Discrete occurrences of "foo" in the value of the variable `font-lock-keyword-face'. ("fu\\(bar\\)" . 1) Substring "bar" within all occurrences of "fubar" in the value of `font-lock-keyword-face'. ("fubar" . fubar-face) Occurrences of "fubar" in the value of `fubar-face'. ("foo\\|bar" 0 foo-bar-face t) Occurrences of either "foo" or "bar" in the value of `foo-bar-face', even if already highlighted. (fubar-match 1 fubar-face) The first subexpression within all occurrences of whatever the function `fubar-match' finds and matches in the value of `fubar-face'. MATCH-ANCHORED should be of the form: (MATCHER PRE-MATCH-FORM POST-MATCH-FORM MATCH-HIGHLIGHT ...) where MATCHER is a regexp to search for or the function name to call to make the search, as for MATCH-HIGHLIGHT above, but with one exception; see below. PRE-MATCH-FORM and POST-MATCH-FORM are evaluated before the first, and after the last, instance MATCH-ANCHORED's MATCHER is used. Therefore they can be used to initialize before, and cleanup after, MATCHER is used. Typically, PRE-MATCH-FORM is used to move to some position relative to the original MATCHER, before starting with MATCH-ANCHORED's MATCHER. POST-MATCH-FORM might be used to move back, before resuming with MATCH-ANCHORED's parent's MATCHER. For example, an element of the form highlights (if not already highlighted): ("\\\=<anchor\\\=>" (0 anchor-face) ("\\\=<item\\\=>" nil nil (0 item-face))) Discrete occurrences of "anchor" in the value of `anchor-face', and subsequent discrete occurrences of "item" (on the same line) in the value of `item-face'. (Here PRE-MATCH-FORM and POST-MATCH-FORM are nil. Therefore "item" is initially searched for starting from the end of the match of "anchor", and searching for subsequent instances of "anchor" resumes from where searching for "item" concluded.) The above-mentioned exception is as follows. The limit of the MATCHER search defaults to the end of the line after PRE-MATCH-FORM is evaluated. However, if PRE-MATCH-FORM returns a position greater than the position after PRE-MATCH-FORM is evaluated, that position is used as the limit of the search. It is generally a bad idea to return a position greater than the end of the line, i.e., cause the MATCHER search to span lines. These regular expressions can match text which spans lines, although it is better to avoid it if possible since updating them while editing text is slower, and it is not guaranteed to be always correct when using support modes like jit-lock or lazy-lock. This variable is set by major modes via the variable `font-lock-defaults'. Be careful when composing regexps for this list; a poorly written pattern can dramatically slow things down! A compiled keywords list starts with t. It is produced internally by `font-lock-compile-keywords' from a user-level keywords list. Its second element is the user-level keywords list that was compiled. The remaining elements have the same form as user-level keywords, but normally their values have been optimized.Vfont-lock-keywords-alist Alist of additional `font-lock-keywords' elements for major modes. Each element has the form (MODE KEYWORDS . HOW). Function `font-lock-set-defaults' adds the elements in the list KEYWORDS to `font-lock-keywords' when Font Lock is turned on in major mode MODE. If HOW is nil, KEYWORDS are added at the beginning of `font-lock-keywords'. If it is `set', they are used to replace the value of `font-lock-keywords'. If HOW is any other non-nil value, they are added at the end. This is normally set via `font-lock-add-keywords' and `font-lock-remove-keywords'.Vfont-lock-removed-keywords-alist Alist of `font-lock-keywords' elements to be removed for major modes. Each element has the form (MODE . KEYWORDS). Function `font-lock-set-defaults' removes the elements in the list KEYWORDS from `font-lock-keywords' when Font Lock is turned on in major mode MODE. This is normally set via `font-lock-add-keywords' and `font-lock-remove-keywords'.Vfont-lock-keywords-only Non-nil means Font Lock should not fontify comments or strings. This is normally set via `font-lock-defaults'.Vfont-lock-keywords-case-fold-search Non-nil means the patterns in `font-lock-keywords' are case-insensitive. This is set via the function `font-lock-set-defaults', based on the CASE-FOLD argument of `font-lock-defaults'.Vfont-lock-syntactically-fontified Point up to which `font-lock-syntactic-keywords' has been applied. If nil, this is ignored, in which case the syntactic fontification may sometimes be slightly incorrect.Vfont-lock-syntactic-face-function Function to determine which face to use when fontifying syntactically. The function is called with a single parameter (the state as returned by `parse-partial-sexp' at the beginning of the region to highlight) and should return a face. This is normally set via `font-lock-defaults'.Vfont-lock-syntactic-keywords A list of the syntactic keywords to put syntax properties on. The value can be the list itself, or the name of a function or variable whose value is the list. See `font-lock-keywords' for a description of the form of this list; only the differences are stated here. MATCH-HIGHLIGHT should be of the form: (SUBEXP SYNTAX OVERRIDE LAXMATCH) where SYNTAX can be a string (as taken by `modify-syntax-entry'), a syntax table, a cons cell (as returned by `string-to-syntax') or an expression whose value is such a form. OVERRIDE cannot be `prepend' or `append'. Here are two examples of elements of `font-lock-syntactic-keywords' and what they do: ("\\$\\(#\\)" 1 ".") gives a hash character punctuation syntax (".") when following a dollar-sign character. Hash characters in other contexts will still follow whatever the syntax table says about the hash character. ("\\(\='\\).\\(\='\\)" (1 "\"") (2 "\"")) gives a pair of apostrophes, which surround a single character, a SYNTAX of "\"" (meaning string quote syntax). Apostrophes in other contexts will not be affected. This is normally set via `font-lock-defaults'.Vfont-lock-syntax-table Non-nil means use this syntax table for fontifying. If this is nil, the major mode's syntax table is used. This is normally set via `font-lock-defaults'.Vfont-lock-mark-block-function Non-nil means use this function to mark a block of text. When called with no args it should leave point at the beginning of any enclosing textual block and mark at the end. This is normally set via `font-lock-defaults'.Vfont-lock-fontify-buffer-function Function to use for fontifying the buffer. This is normally set via `font-lock-defaults'.Vfont-lock-unfontify-buffer-function Function to use for unfontifying the buffer. This is used when turning off Font Lock mode. This is normally set via `font-lock-defaults'.Vfont-lock-fontify-region-function Function to use for fontifying a region. It should take two args, the beginning and end of the region, and an optional third arg VERBOSE. If VERBOSE is non-nil, the function should print status messages. This is normally set via `font-lock-defaults'. If it fontifies a larger region, it should ideally return a list of the form (jit-lock-bounds BEG . END) indicating the bounds of the region actually fontified.Vfont-lock-unfontify-region-function Function to use for unfontifying a region. It should take two args, the beginning and end of the region. This is normally set via `font-lock-defaults'.Vfont-lock-inhibit-thing-lock List of Font Lock mode related modes that should not be turned on. Currently, valid mode names are `fast-lock-mode', `jit-lock-mode' and `lazy-lock-mode'. This is normally set via `font-lock-defaults'.Vfont-lock-multiline Whether font-lock should cater to multiline keywords. If nil, don't try to handle multiline patterns. If t, always handle multiline patterns. If `undecided', don't try to handle multiline patterns until you see one. Major/minor modes can set this variable if they know which option applies.Ffont-lock-specified-p Return non-nil if the current buffer is ready for fontification. The MODE argument, if non-nil, means Font Lock mode is about to be enabled.Ffont-lock-add-keywords Add highlighting KEYWORDS for MODE. MODE should be a symbol, the major mode command name, such as `c-mode' or nil. If nil, highlighting keywords are added for the current buffer. KEYWORDS should be a list; see the variable `font-lock-keywords'. By default they are added at the beginning of the current highlighting list. If optional argument HOW is `set', they are used to replace the current highlighting list. If HOW is any other non-nil value, they are added at the end of the current highlighting list. For example: (font-lock-add-keywords \='c-mode \='(("\\\=<\\(FIXME\\):" 1 \='font-lock-warning-face prepend) ("\\\=<\\(and\\|or\\|not\\)\\\=>" . \='font-lock-keyword-face))) adds two fontification patterns for C mode, to fontify `FIXME:' words, even in comments, and to fontify `and', `or' and `not' words as keywords. The above procedure will only add the keywords for C mode, not for modes derived from C mode. To add them for derived modes too, pass nil for MODE and add the call to c-mode-hook. For example: (add-hook \='c-mode-hook (lambda () (font-lock-add-keywords nil \='(("\\\=<\\(FIXME\\):" 1 \='font-lock-warning-face prepend) ("\\\=<\\(and\\|or\\|not\\)\\\=>" . \='font-lock-keyword-face))))) The above procedure may fail to add keywords to derived modes if some involved major mode does not follow the standard conventions. File a bug report if this happens, so the major mode can be corrected. Note that some modes have specialized support for additional patterns, e.g., see the variables `c-font-lock-extra-types', `c++-font-lock-extra-types', `objc-font-lock-extra-types' and `java-font-lock-extra-types'.Ffont-lock-update-removed-keyword-alist Update `font-lock-removed-keywords-alist' when adding new KEYWORDS to MODE.Ffont-lock-remove-keywords Remove highlighting KEYWORDS for MODE. MODE should be a symbol, the major mode command name, such as `c-mode' or nil. If nil, highlighting keywords are removed for the current buffer. For a description of KEYWORDS, see `font-lock-add-keywords'. To make the removal apply to modes derived from MODE as well, pass nil for MODE and add the call to MODE-hook. This may fail for some derived modes if some involved major mode does not follow the standard conventions. File a bug report if this happens, so the major mode can be corrected.Vfont-lock-support-mode Support mode for Font Lock mode. Support modes speed up Font Lock mode by being choosy about when fontification occurs. The default support mode, Just-in-time Lock mode (symbol `jit-lock-mode'), is recommended. Other, older support modes are Fast Lock mode (symbol `fast-lock-mode') and Lazy Lock mode (symbol `lazy-lock-mode'). See those modes for more info. However, they are no longer recommended, as Just-in-time Lock mode is better. If nil, means support for Font Lock mode is never performed. If a symbol, use that support mode. If a list, each element should be of the form (MAJOR-MODE . SUPPORT-MODE), where MAJOR-MODE is a symbol or t (meaning the default). For example: ((c-mode . fast-lock-mode) (c++-mode . fast-lock-mode) (t . lazy-lock-mode)) means that Fast Lock mode is used to support Font Lock mode for buffers in C or C++ modes, and Lazy Lock mode is used to support Font Lock mode otherwise. The value of this variable is used when Font Lock mode is turned on.Vfont-lock-extend-after-change-region-function A function that determines the region to refontify after a change. This variable is either nil, or is a function that determines the region to refontify after a change. It is usually set by the major mode via `font-lock-defaults'. Font-lock calls this function after each buffer change. The function is given three parameters, the standard BEG, END, and OLD-LEN from `after-change-functions'. It should return either a cons of the beginning and end buffer positions (in that order) of the region to refontify, or nil (which directs the caller to fontify a default region). This function should preserve the match-data. The region it returns may start or end in the middle of a line.Ffont-lock-fontify-buffer Fontify the current buffer the way the function `font-lock-mode' would.Ffont-lock-fontify-region Fontify the text between BEG and END. If LOUDLY is non-nil, print status messages while fontifying. This works by calling `font-lock-fontify-region-function'.Ffont-lock-unfontify-region Unfontify the text between BEG and END. This works by calling `font-lock-unfontify-region-function'.Vfont-lock-flush-function Function to use to mark a region for refontification. Called with two arguments BEG and END.Ffont-lock-flush Declare the region BEG...END's fontification as out-of-date. If the region is not specified, it defaults to the entire accessible portion of the current buffer.Vfont-lock-ensure-function Function to make sure a region has been fontified. Called with two arguments BEG and END.Ffont-lock-ensure Make sure the region BEG...END has been fontified. If the region is not specified, it defaults to the entire accessible portion of the buffer.Ffont-lock-default-fontify-buffer Fontify the whole buffer using `font-lock-fontify-region-function'.Ffont-lock-default-unfontify-buffer Unfontify the whole buffer using `font-lock-unfontify-region-function'.Vfont-lock-dont-widen If non-nil, font-lock will work on the non-widened buffer. Useful for things like RMAIL and Info where the whole buffer is not a very meaningful entity to highlight.Vfont-lock-extend-region-functions Special hook run just before proceeding to fontify a region. This is used to allow major modes to help font-lock find safe buffer positions as beginning and end of the fontified region. Its most common use is to solve the problem of /identification/ of multiline elements by providing a function that tries to find such elements and move the boundaries such that they do not fall in the middle of one. Each function is called with no argument; it is expected to adjust the dynamically bound variables `font-lock-beg' and `font-lock-end'; and return non-nil if it did make such an adjustment. These functions are run in turn repeatedly until they all return nil. Put first the functions more likely to cause a change and cheaper to compute.Ffont-lock-extend-region-multiline Move fontification boundaries away from any `font-lock-multiline' property.Ffont-lock-extend-region-wholelines Move fontification boundaries to beginning of lines.Ffont-lock-default-fontify-region Fontify the text between BEG and END. If LOUDLY is non-nil, print status messages while fontifying. This function is the default `font-lock-fontify-region-function'.Vfont-lock-extra-managed-props Additional text properties managed by font-lock. This is used by `font-lock-default-unfontify-region' to decide what properties to clear before refontifying a region.Ffont-lock-default-unfontify-region Unfontify the text between BEG and END. This function is the default `font-lock-unfontify-region-function'.Ffont-lock-extend-jit-lock-region-after-change Function meant for `jit-lock-after-change-extend-region-functions'. This function does 2 things: - extend the region so that it not only includes the part that was modified but also the surrounding text whose highlighting may change as a consequence. - anticipate (part of) the region extension that will happen later in `font-lock-default-fontify-region', in order to avoid the need for double-redisplay in `jit-lock-fontify-now'.Ffont-lock-fontify-block Fontify some lines the way `font-lock-fontify-buffer' would. The lines could be a function or paragraph, or a specified number of lines. If ARG is given, fontify that many lines before and after point, or 16 lines if no ARG is given and `font-lock-mark-block-function' is nil. If `font-lock-mark-block-function' non-nil and no ARG is given, it is used to delimit the region to fontify.Ffont-lock-prepend-text-property Prepend to one property of the text from START to END. Arguments PROP and VALUE specify the property and value to prepend to the value already in place. The resulting property values are always lists. Optional argument OBJECT is the string or buffer containing the text.Ffont-lock-append-text-property Append to one property of the text from START to END. Arguments PROP and VALUE specify the property and value to append to the value already in place. The resulting property values are always lists. Optional argument OBJECT is the string or buffer containing the text.Ffont-lock-fillin-text-property Fill in one property of the text from START to END. Arguments PROP and VALUE specify the property and value to put where none are already in place. Therefore existing property values are not overwritten. Optional argument OBJECT is the string or buffer containing the text.Ffont-lock--remove-face-from-text-property Remove a specific property value from text from START to END. Arguments PROP and VALUE specify the property and value to remove. The resulting property values are not `eq' to VALUE nor lists containing VALUE. Optional argument OBJECT is the string or buffer containing the text.Ffont-lock-apply-syntactic-highlight Apply HIGHLIGHT following a match. HIGHLIGHT should be of the form MATCH-HIGHLIGHT, see `font-lock-syntactic-keywords'.Ffont-lock-fontify-syntactic-anchored-keywords Fontify according to KEYWORDS until LIMIT. KEYWORDS should be of the form MATCH-ANCHORED, see `font-lock-keywords', LIMIT can be modified by the value of its PRE-MATCH-FORM.Ffont-lock-fontify-syntactic-keywords-region Fontify according to `font-lock-syntactic-keywords' between START and END. START should be at the beginning of a line.Vfont-lock-comment-start-skip If non-nil, Font Lock mode uses this instead of `comment-start-skip'.Vfont-lock-comment-end-skip If non-nil, Font Lock mode uses this instead of `comment-end'.Ffont-lock-fontify-syntactically-region Put proper face on each string and comment between START and END. START should be at the beginning of a line.Ffont-lock-apply-highlight Apply HIGHLIGHT following a match. HIGHLIGHT should be of the form MATCH-HIGHLIGHT, see `font-lock-keywords'.Ffont-lock-fontify-anchored-keywords Fontify according to KEYWORDS until LIMIT. KEYWORDS should be of the form MATCH-ANCHORED, see `font-lock-keywords', LIMIT can be modified by the value of its PRE-MATCH-FORM.Ffont-lock-fontify-keywords-region Fontify according to `font-lock-keywords' between START and END. START should be at the beginning of a line. LOUDLY, if non-nil, allows progress-meter bar.Ffont-lock-compile-keywords Compile KEYWORDS into the form (t KEYWORDS COMPILED...) Here each COMPILED is of the form (MATCHER HIGHLIGHT ...) as shown in the `font-lock-keywords' doc string. If SYNTACTIC-KEYWORDS is non-nil, it means these keywords are used for `font-lock-syntactic-keywords' rather than for `font-lock-keywords'.Ffont-lock-eval-keywords Evaluate KEYWORDS if a function (funcall) or variable (eval) name.Ffont-lock-value-in-major-mode If VALUES is a list, use `major-mode' as a key and return the `assq' value. VALUES should then be an alist on the form ((MAJOR-MODE . VALUE) ...) where MAJOR-MODE may be t. If VALUES isn't a list, return VALUES.Ffont-lock-choose-keywords Return LEVELth element of KEYWORDS. A LEVEL of nil is equal to a LEVEL of 0, a LEVEL of t is equal to (1- (length KEYWORDS)).Ffont-lock-refresh-defaults Restart fontification in current buffer after recomputing from defaults. Recompute fontification variables using `font-lock-defaults' and `font-lock-maximum-decoration'. Then restart fontification. Use this function when you have changed any of the above variables directly. Note: This function will erase modifications done by `font-lock-add-keywords' or `font-lock-remove-keywords', but will preserve `hi-lock-mode' highlighting patterns.Vfont-lock-major-mode Major mode for which the font-lock settings have been setup.Ffont-lock-set-defaults Set fontification defaults appropriately for this mode. Sets various variables using `font-lock-defaults' and `font-lock-maximum-decoration'.Ffont-lock-match-c-style-declaration-item-and-skip-to-next Match, and move over, any declaration/definition item after point. Matches after point, but ignores leading whitespace and `*' characters. Does not move further than LIMIT. The expected syntax of a declaration/definition item is `word' (preceded by optional whitespace and `*' characters and proceeded by optional whitespace) optionally followed by a `('. Everything following the item (but belonging to it) is expected to be skip-able by `scan-sexps', and items are expected to be separated with a `,' and to be terminated with a `;'. Thus the regexp matches after point: word ( ^^^^ ^ Where the match subexpressions are: 1 2 The item is delimited by (match-beginning 1) and (match-end 1). If (match-beginning 2) is non-nil, the item is followed by a `('. This function could be MATCHER in a MATCH-ANCHORED `font-lock-keywords' item.Vcpp-font-lock-keywords-source-directives Regular expression used in `cpp-font-lock-keywords'.Vcpp-font-lock-keywords-source-depth An integer representing regular expression depth of `cpp-font-lock-keywords-source-directives'. Used in `cpp-font-lock-keywords'.Vcpp-font-lock-keywords Font lock keywords for C preprocessor directives. `c-mode', `c++-mode' and `objc-mode' have their own font lock keywords for C preprocessor directives. This definition is for the other modes in which C preprocessor directives are used. e.g. `asm-mode' and `ld-script-mode'.Sformat.elc Vformat-alist List of information about understood file formats. Elements are of the form (NAME DOC-STR REGEXP FROM-FN TO-FN MODIFY MODE-FN PRESERVE). NAME is a symbol, which is stored in `buffer-file-format'. DOC-STR should be a single line providing more information about the format. It is currently unused, but in the future will be shown to the user if they ask for more information. REGEXP is a regular expression to match against the beginning of the file; it should match only files in that format. REGEXP may be nil, in which case the format will never be applied automatically to a file. Use this for formats that you only ever want to apply manually. FROM-FN is called to decode files in that format; it takes two args, BEGIN and END, and can make any modifications it likes, returning the new end. It must make sure that the beginning of the file no longer matches REGEXP, or else it will get called again. Alternatively, FROM-FN can be a string, which specifies a shell command (including options) to be used as a filter to perform the conversion. TO-FN is called to encode a region into that format; it takes three arguments: BEGIN, END, and BUFFER. BUFFER is the original buffer that the data being written came from, which the function could use, for example, to find the values of local variables. TO-FN should either return a list of annotations like `write-region-annotate-functions', or modify the region and return the new end. Alternatively, TO-FN can be a string, which specifies a shell command (including options) to be used as a filter to perform the conversion. MODIFY, if non-nil, means the TO-FN wants to modify the region. If nil, TO-FN will not make any changes but will instead return a list of annotations. MODE-FN, if specified, is called when visiting a file with that format. It is called with a single positive argument, on the assumption that this would turn on some minor mode. PRESERVE, if non-nil, means that `format-write-file' should not remove this format from `buffer-file-format'.Fformat-encode-run-method Translate using METHOD the text from FROM to TO. If METHOD is a string, it is a shell command (including options); otherwise, it should be a Lisp function. BUFFER should be the buffer that the output originally came from.Fformat-decode-run-method Decode using METHOD the text from FROM to TO. If METHOD is a string, it is a shell command (including options); otherwise, it should be a Lisp function. BUFFER is currently ignored.Fformat-annotate-function Return annotations for writing region as FORMAT. FORMAT is a symbol naming one of the formats defined in `format-alist'. It must be a single symbol, not a list like `buffer-file-format'. FROM and TO delimit the region to be operated on in the current buffer. ORIG-BUF is the original buffer that the data came from. FORMAT-COUNT is an integer specifying how many times this function has been called in the process of decoding ORIG-BUF. This function works like a function in `write-region-annotate-functions': it either returns a list of annotations, or returns with a different buffer current, which contains the modified text to write. In the latter case, this function's value is nil. For most purposes, consider using `format-encode-region' instead.Fformat-decode Decode text from any known FORMAT. FORMAT is a symbol appearing in `format-alist' or a list of such symbols, or nil, in which case this function tries to guess the format of the data by matching against the regular expressions in `format-alist'. After a match is found and the region decoded, the alist is searched again from the beginning for another match. Second arg LENGTH is the number of characters following point to operate on. If optional third arg VISIT-FLAG is true, set `buffer-file-format' to the reverted list of formats used, and call any mode functions defined for those formats. Return the new length of the decoded region. For most purposes, consider using `format-decode-region' instead.Fformat-decode-buffer Translate the buffer from some FORMAT. If the format is not specified, attempt a regexp-based guess. Set `buffer-file-format' to the format used, and call any format-specific mode functions.Fformat-decode-region Decode the region from some format. Arg FORMAT is optional; if omitted the format will be determined by looking for identifying regular expressions at the beginning of the region.Fformat-encode-buffer Translate the buffer into FORMAT. FORMAT defaults to `buffer-file-format'. It is a symbol naming one of the formats defined in `format-alist', or a list of such symbols.Fformat-encode-region Translate the region into some FORMAT. FORMAT defaults to `buffer-file-format'. It is a symbol naming one of the formats defined in `format-alist', or a list of such symbols.Fformat-write-file Write current buffer into FILENAME, using a format based on FORMAT. Constructs the actual format starting from FORMAT, then appending any elements from the value of `buffer-file-format' with a non-nil `preserve' flag (see the documentation of `format-alist'), if they are not already present in FORMAT. It then updates `buffer-file-format' with this format, making it the default for future saves. If the buffer is already visiting a file, you can specify a directory name as FILENAME, to write a file of the same old name in that directory. If optional third arg CONFIRM is non-nil, asks for confirmation before overwriting an existing file. Interactively, requires confirmation unless you supply a prefix argument.Fformat-find-file Find the file FILENAME using data format FORMAT. If FORMAT is nil then do not do any format conversion.Fformat-insert-file Insert the contents of file FILENAME using data format FORMAT. If FORMAT is nil then do not do any format conversion. The optional third and fourth arguments BEG and END specify the part (in bytes) of the file to read. The return value is like the value of `insert-file-contents': a list (ABSOLUTE-FILE-NAME SIZE).Fformat-read Read and return the name of a format. Return value is a list, like `buffer-file-format'; it may be nil. Formats are defined in `format-alist'. Optional arg is the PROMPT to use.Fformat-replace-strings Do multiple replacements on the buffer. ALIST is a list of (FROM . TO) pairs, which should be proper arguments to `search-forward' and `replace-match', respectively. Optional second arg REVERSE, if non-nil, means the pairs are (TO . FROM), so that you can use the same list in both directions if it contains only literal strings. Optional args BEG and END specify a region of the buffer on which to operate.Fformat-delq-cons Remove the given CONS from LIST by side effect and return the new LIST. Since CONS could be the first element of LIST, write (setq foo (format-delq-cons element foo)) to be sure of changing the value of `foo'.Fformat-make-relatively-unique Delete common elements of lists A and B, return as pair. Compare using `equal'.Fformat-proper-list-p Return t if LIST is a proper list. A proper list is a list ending with a nil cdr, not with an atom Fformat-reorder Arrange ITEMS to follow partial ORDER. Elements of ITEMS equal to elements of ORDER will be rearranged to follow the ORDER. Unmatched items will go last.Fformat-deannotate-region Translate annotations in the region into text properties. This sets text properties between FROM to TO as directed by the TRANSLATIONS and NEXT-FN arguments. NEXT-FN is a function that searches forward from point for an annotation. It should return a list of 4 elements: (BEGIN END NAME POSITIVE). BEGIN and END are buffer positions bounding the annotation, NAME is the name searched for in TRANSLATIONS, and POSITIVE should be non-nil if this annotation marks the beginning of a region with some property, or nil if it ends the region. NEXT-FN should return nil if there are no annotations after point. The basic format of the TRANSLATIONS argument is described in the documentation for the `format-annotate-region' function. There are some additional things to keep in mind for decoding, though: When an annotation is found, the TRANSLATIONS list is searched for a text-property name and value that corresponds to that annotation. If the text-property has several annotations associated with it, it will be used only if the other annotations are also in effect at that point. The first match found whose annotations are all present is used. The text property thus determined is set to the value over the region between the opening and closing annotations. However, if the text-property name has a non-nil `format-list-valued' property, then the value will be consed onto the surrounding value of the property, rather than replacing that value. There are some special symbols that can be used in the "property" slot of the TRANSLATIONS list: PARAMETER and FUNCTION (spelled in uppercase). Annotations listed under the pseudo-property PARAMETER are considered to be arguments of the immediately surrounding annotation; the text between the opening and closing parameter annotations is deleted from the buffer but saved as a string. The surrounding annotation should be listed under the pseudo-property FUNCTION. Instead of inserting a text-property for this annotation, the function listed in the VALUE slot is called to make whatever changes are appropriate. It can also return a list of the form (START LOC PROP VALUE) which specifies a property to put on. The function's first two arguments are the START and END locations, and the rest of the arguments are any PARAMETERs found in that region. Any annotations that are found by NEXT-FN but not defined by TRANSLATIONS are saved as values of the `unknown' text-property (which is list-valued). The TRANSLATIONS list should usually contain an entry of the form (unknown (nil format-annotate-value)) to write these unknown annotations back into the file.Fformat-subtract-regions Remove from the regions in MINUEND the regions in SUBTRAHEND. A region is a dotted pair (FROM . TO). Both parameters are lists of regions. Each list must contain nonoverlapping, noncontiguous regions, in descending order. The result is also nonoverlapping, noncontiguous, and in descending order. The first element of MINUEND can have a cdr of nil, indicating that the end of that region is not yet known. (fn MINUEND SUBTRAHEND)Fformat-property-increment-region In the region from FROM to TO increment property PROP by amount DELTA. DELTA may be negative. If property PROP is nil anywhere in the region, it is treated as though it were DEFAULT.Fformat-insert-annotations Apply list of annotations to buffer as `write-region' would. Insert each element of the given LIST of buffer annotations at its appropriate place. Use second arg OFFSET if the annotations' locations are not relative to the beginning of the buffer: annotations will be inserted at their location-OFFSET+1 (i.e., the offset is treated as the position of the first character in the buffer).Fformat-annotate-value Return OLD and NEW as a (CLOSE . OPEN) annotation pair. Useful as a default function for TRANSLATIONS alist when the value of the text property is the name of the annotation that you want to use, as it is for the `unknown' text property.Fformat-annotate-region Generate annotations for text properties in the region. Search for changes between FROM and TO, and describe them with a list of annotations as defined by alist TRANSLATIONS and FORMAT-FN. IGNORE lists text properties not to consider; any text properties that are neither ignored nor listed in TRANSLATIONS are warned about. If you actually want to modify the region, give the return value of this function to `format-insert-annotations'. Format of the TRANSLATIONS argument: Each element is a list whose car is a PROPERTY, and the following elements have the form (VALUE ANNOTATIONS...). Whenever the property takes on the value VALUE, the annotations (as formatted by FORMAT-FN) are inserted into the file. When the property stops having that value, the matching negated annotation will be inserted (it may actually be closed earlier and reopened, if necessary, to keep proper nesting). If VALUE is a list, then each element of the list is dealt with separately. If a VALUE is numeric, then it is assumed that there is a single annotation and each occurrence of it increments the value of the property by that number. Thus, given the entry (left-margin (4 "indent")), if the left margin changes from 4 to 12, two <indent> annotations will be generated. If the VALUE is nil, then instead of annotations, a function should be specified. This function is used as a default: it is called for all transitions not explicitly listed in the table. The function is called with two arguments, the OLD and NEW values of the property. It should return a cons cell (CLOSE . OPEN) as `format-annotate-single-property-change' does. The same TRANSLATIONS structure can be used in reverse for reading files.Fformat-annotate-location Return annotation(s) needed at location LOC. This includes any properties that change between LOC - 1 and LOC. If ALL is true, don't look at previous location, but generate annotations for all non-nil properties. Third argument IGNORE is a list of text-properties not to consider. Use the TRANSLATIONS alist (see `format-annotate-region' for doc). Return value is a vector of 3 elements: 1. List of annotations to close 2. List of annotations to open. 3. List of properties that were ignored or couldn't be annotated. The annotations in lists 1 and 2 need not be strings. They can be whatever the FORMAT-FN in `format-annotate-region' can handle. If that is `enriched-make-annotation', they can be either strings, or lists of the form (PARAMETER VALUE).Fformat-annotate-single-property-change Return annotations for property PROP changing from OLD to NEW. These are searched for in the translations alist TRANSLATIONS (see `format-annotate-region' for the format). If NEW does not appear in the list, but there is a default function, then call that function. Return a cons of the form (CLOSE . OPEN) where CLOSE is a list of annotations to close and OPEN is a list of annotations to open. The annotations in CLOSE and OPEN need not be strings. They can be whatever the FORMAT-FN in `format-annotate-region' can handle. If that is `enriched-make-annotation', they can be either strings, or lists of the form (PARAMETER VALUE).Fformat-annotate-atomic-property-change Internal function to annotate a single property change. PROP-ALIST is the relevant element of a TRANSLATIONS list. OLD and NEW are the values.Sframe.elc Vwindow-system-default-frame-alist Window-system dependent default frame parameters. The value should be an alist of elements (WINDOW-SYSTEM . ALIST), where WINDOW-SYSTEM is a window system symbol (as returned by `framep') and ALIST is a frame parameter alist like `default-frame-alist'. Then, for frames on WINDOW-SYSTEM, any parameters specified in ALIST supersede the corresponding parameters specified in `default-frame-alist'.Vdisplay-format-alist Alist of patterns to decode display names. The car of each entry is a regular expression matching a display name string. The cdr is a symbol giving the window-system that handles the corresponding kind of display.Fhandle-delete-frame Handle delete-frame events from the X server. (fn EVENT)Fhandle-focus-in Handle a focus-in event. Focus-in events are usually bound to this function. Focus-in events occur when a frame has focus, but a switch-frame event is not generated. This function runs the hook `focus-in-hook'. (fn EVENT)Fhandle-focus-out Handle a focus-out event. Focus-out events are usually bound to this function. Focus-out events occur when no frame has focus. This function runs the hook `focus-out-hook'. (fn EVENT)Fhandle-move-frame Handle a move-frame event. This function runs the abnormal hook `move-frame-functions'. (fn EVENT)Fframe-initialize Create an initial frame if necessary.Vframe-notice-user-settings Non-nil means function `frame-notice-user-settings' wasn't run yet.Fframe-notice-user-settings Act on user's init file settings of frame parameters. React to settings of `initial-frame-alist', `window-system-default-frame-alist' and `default-frame-alist' there (in decreasing order of priority).Fmake-initial-minibuffer-frame (fn DISPLAY)Fmodify-all-frames-parameters Modify all current and future frames' parameters according to ALIST. This changes `default-frame-alist' and possibly `initial-frame-alist'. Furthermore, this function removes all parameters in ALIST from `window-system-default-frame-alist'. See help of `modify-frame-parameters' for more information. (fn ALIST)Fget-other-frame Return some frame other than the current frame. Create one if necessary. Note that the minibuffer frame, if separate, is not considered (see `next-frame').Fnext-multiframe-window Select the next window, regardless of which frame it is on.Fprevious-multiframe-window Select the previous window, regardless of which frame it is on.Fwindow-system-for-display Return the window system for DISPLAY. Return nil if we don't know how to interpret DISPLAY. (fn DISPLAY)Fmake-frame-on-display Make a frame on display DISPLAY. The optional argument PARAMETERS specifies additional frame parameters. (fn DISPLAY &optional PARAMETERS)Fclose-display-connection Close the connection to a display, deleting all its associated frames. For DISPLAY, specify either a frame or a display name (a string). If DISPLAY is nil, that stands for the selected frame's display. (fn DISPLAY)Fmake-frame-command Make a new frame, on the same terminal as the selected frame. If the terminal is a text-only terminal, this also selects the new frame. When called from Lisp, returns the new frame.Vbefore-make-frame-hook Functions to run before `make-frame' creates a new frame.Vafter-make-frame-functions Functions to run after `make-frame' created a new frame. The functions are run with one argument, the newly created frame.Vafter-setting-font-hook Functions to run after a frame's font has been changed.Vframe-inherited-parameters Parameters `make-frame' copies from the selected to the new frame.Fmake-frame Return a newly created frame displaying the current buffer. Optional argument PARAMETERS is an alist of frame parameters for the new frame. Each element of PARAMETERS should have the form (NAME . VALUE), for example: (name . STRING) The frame should be named STRING. (width . NUMBER) The frame should be NUMBER characters in width. (height . NUMBER) The frame should be NUMBER text lines high. (minibuffer . t) The frame should have a minibuffer. (minibuffer . nil) The frame should have no minibuffer. (minibuffer . only) The frame should contain only a minibuffer. (minibuffer . WINDOW) The frame should use WINDOW as its minibuffer window. (window-system . nil) The frame should be displayed on a terminal device. (window-system . x) The frame should be displayed in an X window. (display . ":0") The frame should appear on display :0. (terminal . TERMINAL) The frame should use the terminal object TERMINAL. In addition, any parameter specified in `default-frame-alist', but not present in PARAMETERS, is applied. Before creating the frame (via `frame-creation-function'), this function runs the hook `before-make-frame-hook'. After creating the frame, it runs the hook `after-make-frame-functions' with one argument, the newly created frame. If a display parameter is supplied and a window-system is not, guess the window-system from the display. On graphical displays, this function does not itself make the new frame the selected frame. However, the window system may select the new frame according to its own rules. (fn &optional PARAMETERS)Ffiltered-frame-list Return a list of all live frames which satisfy PREDICATE. (fn PREDICATE)Fminibuffer-frame-list Return a list of all frames with their own minibuffers.Fget-device-terminal Return the terminal corresponding to DEVICE. DEVICE can be a terminal, a frame, nil (meaning the selected frame's terminal), the name of an X display device (HOST.SERVER.SCREEN) or a tty device file. (fn DEVICE)Fframes-on-display-list Return a list of all frames on DEVICE. DEVICE should be a terminal, a frame, or a name of an X display or tty (a string of the form HOST:SERVER.SCREEN). If DEVICE is omitted or nil, it defaults to the selected frame's terminal device. (fn &optional DEVICE)Fframep-on-display Return the type of frames on TERMINAL. TERMINAL may be a terminal id, a display name or a frame. If it is a frame, its type is returned. If TERMINAL is omitted or nil, it defaults to the selected frame's terminal device. All frames on a given display are of the same type. (fn &optional TERMINAL)Fframe-remove-geometry-params Return the parameter list PARAM-LIST, but with geometry specs removed. This deletes all bindings in PARAM-LIST for `top', `left', `width', `height', `user-size' and `user-position' parameters. Emacs uses this to avoid overriding explicit moves and resizings from the user during startup. (fn PARAM-LIST)Fselect-frame-set-input-focus Select FRAME, raise it, and set input focus, if possible. If `mouse-autoselect-window' is non-nil, also move mouse pointer to FRAME's selected window. Otherwise, if `focus-follows-mouse' is non-nil, move mouse cursor to FRAME. Optional argument NORECORD means to neither change the order of recently selected windows nor the buffer list. (fn FRAME &optional NORECORD)Fother-frame Select the ARGth different visible frame on current display, and raise it. All frames are arranged in a cyclic order. This command selects the frame ARG steps away in that order. A negative ARG moves in the opposite order. To make this command work properly, you must tell Emacs how the system (or the window manager) generally handles focus-switching between windows. If moving the mouse onto a window selects it (gives it focus), set `focus-follows-mouse' to t. Otherwise, that variable should be nil. (fn ARG)Ficonify-or-deiconify-frame Iconify the selected frame, or deiconify if it's currently an icon.Fsuspend-frame Do whatever is right to suspend the current frame. Calls `suspend-emacs' if invoked from the controlling tty device, `suspend-tty' from a secondary tty device, and `iconify-or-deiconify-frame' from an X frame.Fselect-frame-by-name Select the frame whose name is NAME and raise it. Frames on the current terminal are checked first. If there is no frame by that name, signal an error. (fn NAME)Fframe-set-background-mode Set up display-dependent faces on FRAME. Display-dependent faces are those which have different definitions according to the `background-mode' and `display-type' frame parameters. If optional arg KEEP-FACE-SPECS is non-nil, don't recalculate face specs for the new background mode. (fn FRAME &optional KEEP-FACE-SPECS)Fframe-terminal-default-bg-mode Return the default background mode of FRAME. This checks the `frame-background-mode' variable, the X resource named "backgroundMode" (if FRAME is an X frame), and finally the `background-mode' terminal parameter. (fn FRAME)Fcurrent-frame-configuration Return a list describing the positions and states of all frames. Its car is `frame-configuration'. Each element of the cdr is a list of the form (FRAME ALIST WINDOW-CONFIG), where FRAME is a frame object, ALIST is an association list specifying some of FRAME's parameters, and WINDOW-CONFIG is a window configuration object for FRAME.Fset-frame-configuration Restore the frames to the state described by CONFIGURATION. Each frame listed in CONFIGURATION has its position, size, window configuration, and other parameters set as specified in CONFIGURATION. However, this function does not restore deleted frames. Ordinarily, this function deletes all existing frames not listed in CONFIGURATION. But if optional second argument NODELETE is given and non-nil, the unwanted frames are iconified instead. (fn CONFIGURATION &optional NODELETE)Fframe-height Return number of lines available for display on FRAME. If FRAME is omitted, describe the currently selected frame. Exactly what is included in the return value depends on the window-system and toolkit in use - see `frame-pixel-height' for more details. The lines are in units of the default font height. The result is roughly related to the frame pixel height via height in pixels = height in lines * `frame-char-height'. However, this is only approximate, and is complicated e.g. by the fact that individual window lines and menu bar lines can have differing font heights. (fn &optional FRAME)Fframe-width Return number of columns available for display on FRAME. If FRAME is omitted, describe the currently selected frame. (fn &optional FRAME)Fframe-inner-width Return inner width of FRAME in pixels. FRAME defaults to the selected frame. (fn &optional FRAME)Fframe-inner-height Return inner height of FRAME in pixels. FRAME defaults to the selected frame. (fn &optional FRAME)Fframe-outer-width Return outer width of FRAME in pixels. FRAME defaults to the selected frame. (fn &optional FRAME)Fframe-outer-height Return outer height of FRAME in pixels. FRAME defaults to the selected frame. (fn &optional FRAME)Fset-frame-font Set the default font to FONT. When called interactively, prompt for the name of a font, and use that font on the selected frame. When called from Lisp, FONT should be a font name (a string), a font object, font entity, or font spec. If KEEP-SIZE is nil, keep the number of frame lines and columns fixed. If KEEP-SIZE is non-nil (or with a prefix argument), try to keep the current frame size fixed (in pixels) by adjusting the number of lines and columns. If FRAMES is nil, apply the font to the selected frame only. If FRAMES is non-nil, it should be a list of frames to act upon, or t meaning all existing graphical frames. Also, if FRAMES is non-nil, alter the user's Customization settings as though the font-related attributes of the `default' face had been "set in this session", so that the font is applied to future frames. (fn FONT &optional KEEP-SIZE FRAMES)Fset-frame-parameter Set frame parameter PARAMETER to VALUE on FRAME. If FRAME is nil, it defaults to the selected frame. See `modify-frame-parameters'. (fn FRAME PARAMETER VALUE)Fset-background-color Set the background color of the selected frame to COLOR-NAME. When called interactively, prompt for the name of the color to use. To get the frame's current background color, use `frame-parameters'. (fn COLOR-NAME)Fset-foreground-color Set the foreground color of the selected frame to COLOR-NAME. When called interactively, prompt for the name of the color to use. To get the frame's current foreground color, use `frame-parameters'. (fn COLOR-NAME)Fset-cursor-color Set the text cursor color of the selected frame to COLOR-NAME. When called interactively, prompt for the name of the color to use. This works by setting the `cursor-color' frame parameter on the selected frame. You can also set the text cursor color, for all frames, by customizing the `cursor' face. (fn COLOR-NAME)Fset-mouse-color Set the color of the mouse pointer of the selected frame to COLOR-NAME. When called interactively, prompt for the name of the color to use. To get the frame's current mouse color, use `frame-parameters'. (fn COLOR-NAME)Fset-border-color Set the color of the border of the selected frame to COLOR-NAME. When called interactively, prompt for the name of the color to use. To get the frame's current border color, use `frame-parameters'. (fn COLOR-NAME)Fauto-raise-mode Toggle whether or not selected frames should auto-raise. With a prefix argument ARG, enable Auto Raise mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Auto Raise mode does nothing under most window managers, which switch focus on mouse clicks. It only has an effect if your window manager switches focus on mouse movement (in which case you should also change `focus-follows-mouse' to t). Then, enabling Auto Raise mode causes any graphical Emacs frame which acquires focus to be automatically raised. Note that this minor mode controls Emacs's own auto-raise feature. Window managers that switch focus on mouse movement often have their own auto-raise feature. (fn &optional ARG)Fauto-lower-mode Toggle whether or not the selected frame should auto-lower. With a prefix argument ARG, enable Auto Lower mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Auto Lower mode does nothing under most window managers, which switch focus on mouse clicks. It only has an effect if your window manager switches focus on mouse movement (in which case you should also change `focus-follows-mouse' to t). Then, enabling Auto Lower Mode causes any graphical Emacs frame which loses focus to be automatically lowered. Note that this minor mode controls Emacs's own auto-lower feature. Window managers that switch focus on mouse movement often have their own features for raising or lowering frames. (fn &optional ARG)Fset-frame-name Set the name of the selected frame to NAME. When called interactively, prompt for the name of the frame. On text terminals, the frame name is displayed on the mode line. On graphical displays, it is displayed on the frame's title bar. (fn NAME)Fframe-current-scroll-bars Return the current scroll-bar types for frame FRAME. Value is a cons (VERTICAL . HORIZ0NTAL) where VERTICAL specifies the current location of the vertical scroll-bars (`left', `right' or nil), and HORIZONTAL specifies the current location of the horizontal scroll bars (`bottom' or nil). FRAME must specify a live frame and defaults to the selected one. (fn &optional FRAME)Fframe-geometry Return geometric attributes of FRAME. FRAME must be a live frame and defaults to the selected one. The return value is an association list of the attributes listed below. All height and width values are in pixels. `outer-position' is a cons of the outer left and top edges of FRAME relative to the origin - the position (0, 0) - of FRAME's display. `outer-size' is a cons of the outer width and height of FRAME. The outer size includes the title bar and the external borders as well as any menu and/or tool bar of frame. `external-border-size' is a cons of the horizontal and vertical width of FRAME's external borders as supplied by the window manager. `title-bar-size' is a cons of the width and height of the title bar of FRAME as supplied by the window manager. If both of them are zero, FRAME has no title bar. If only the width is zero, Emacs was not able to retrieve the width information. `menu-bar-external', if non-nil, means the menu bar is external (never included in the inner edges of FRAME). `menu-bar-size' is a cons of the width and height of the menu bar of FRAME. `tool-bar-external', if non-nil, means the tool bar is external (never included in the inner edges of FRAME). `tool-bar-position' tells on which side the tool bar on FRAME is and can be one of `left', `top', `right' or `bottom'. If this is nil, FRAME has no tool bar. `tool-bar-size' is a cons of the width and height of the tool bar of FRAME. `internal-border-width' is the width of the internal border of FRAME. (fn &optional FRAME)Fframe--size-history Print history of resize operations for FRAME. Print prettified version of `frame-size-history' into a buffer called *frame-size-history*. Optional argument FRAME denotes the frame whose history will be printed. FRAME defaults to the selected frame. (fn &optional FRAME)Fframe-edges Return coordinates of FRAME's edges. FRAME must be a live frame and defaults to the selected one. The list returned has the form (LEFT TOP RIGHT BOTTOM) where all values are in pixels relative to the origin - the position (0, 0) - of FRAME's display. For terminal frames all values are relative to LEFT and TOP which are both zero. Optional argument TYPE specifies the type of the edges. TYPE `outer-edges' means to return the outer edges of FRAME. TYPE `native-edges' (or nil) means to return the native edges of FRAME. TYPE `inner-edges' means to return the inner edges of FRAME. (fn &optional FRAME TYPE)Fmouse-absolute-pixel-position Return absolute position of mouse cursor in pixels. The position is returned as a cons cell (X . Y) of the coordinates of the mouse cursor position in pixels relative to a position (0, 0) of the selected frame's terminal.Fset-mouse-absolute-pixel-position Move mouse pointer to absolute pixel position (X, Y). The coordinates X and Y are interpreted in pixels relative to a position (0, 0) of the selected frame's terminal. (fn X Y)Fframe-monitor-attributes Return the attributes of the physical monitor dominating FRAME. If FRAME is omitted or nil, describe the currently selected frame. A frame is dominated by a physical monitor when either the largest area of the frame resides in the monitor, or the monitor is the closest to the frame if the frame does not intersect any physical monitors. See `display-monitor-attributes-list' for the list of attribute keys and their meanings. (fn &optional FRAME)Fframe-monitor-attribute Return the value of ATTRIBUTE on FRAME's monitor. If FRAME is omitted or nil, use currently selected frame. By default, the current monitor is the physical monitor dominating the selected frame. A frame is dominated by a physical monitor when either the largest area of the frame resides in the monitor, or the monitor is the closest to the frame if the frame does not intersect any physical monitors. If X and Y are both numbers, then ignore the value of FRAME; the monitor is determined to be the physical monitor that contains the pixel coordinate (X, Y). See `display-monitor-attributes-list' for the list of attribute keys and their meanings. (fn ATTRIBUTE &optional FRAME X Y)Fframe-monitor-geometry Return the geometry of FRAME's monitor. FRAME can be a frame name, a terminal name, or a frame. If FRAME is omitted or nil, use the currently selected frame. By default, the current monitor is said to be the physical monitor dominating the selected frame. A frame is dominated by a physical monitor when either the largest area of the frame resides in the monitor, or the monitor is the closest to the frame if the frame does not intersect any physical monitors. If X and Y are both numbers, then ignore the value of FRAME; the monitor is determined to be the physical monitor that contains the pixel coordinate (X, Y). See `display-monitor-attributes-list' for information on the geometry attribute. (fn &optional FRAME X Y)Fframe-monitor-workarea Return the workarea of FRAME's monitor. FRAME can be a frame name, a terminal name, or a frame. If FRAME is omitted or nil, use currently selected frame. By default, the current monitor is said to be the physical monitor dominating the selected frame. A frame is dominated by a physical monitor when either the largest area of the frame resides in the monitor, or the monitor is the closest to the frame if the frame does not intersect any physical monitors. If X and Y are both numbers, then ignore the value of FRAME; the monitor is determined to be the physical monitor that contains the pixel coordinate (X, Y). See `display-monitor-attributes-list' for information on the workarea attribute. (fn &optional FRAME X Y)Fframe-list-z-order Return list of Emacs' frames, in Z (stacking) order. The optional argument DISPLAY specifies which display to poll. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. Frames are listed from topmost (first) to bottommost (last). As a special case, if DISPLAY is non-nil and specifies a live frame, return the child frames of that frame in Z (stacking) order. Return nil if DISPLAY contains no Emacs frame. (fn &optional DISPLAY)Fframe-restack Restack FRAME1 below FRAME2. This implies that if both frames are visible and the display areas of these frames overlap, FRAME2 will (partially) obscure FRAME1. If the optional third argument ABOVE is non-nil, restack FRAME1 above FRAME2. This means that if both frames are visible and the display areas of these frames overlap, FRAME1 will (partially) obscure FRAME2. This may be thought of as an atomic action performed in two steps: The first step removes FRAME1's window-system window from the display. The second step reinserts FRAME1's window below (above if ABOVE is true) that of FRAME2. Hence the position of FRAME2 in its display's Z (stacking) order relative to all other frames excluding FRAME1 remains unaltered. Some window managers may refuse to restack windows. (fn FRAME1 FRAME2 &optional ABOVE)Fframe-size-changed-p Return non-nil when the size of FRAME has changed. More precisely, return non-nil when the inner width or height of FRAME has changed since `window-size-change-functions' was run for FRAME. (fn &optional FRAME)Fdisplay-mouse-p Return non-nil if DISPLAY has a mouse available. DISPLAY can be a display name, a frame, or nil (meaning the selected frame's display). (fn &optional DISPLAY)Fdisplay-popup-menus-p Return non-nil if popup menus are supported on DISPLAY. DISPLAY can be a display name, a frame, or nil (meaning the selected frame's display). Support for popup menus requires that the mouse be available. (fn &optional DISPLAY)Fdisplay-graphic-p Return non-nil if DISPLAY is a graphic display. Graphical displays are those which are capable of displaying several frames and several different fonts at once. This is true for displays that use a window system such as X, and false for text-only terminals. DISPLAY can be a display name, a frame, or nil (meaning the selected frame's display). (fn &optional DISPLAY)Fdisplay-images-p Return non-nil if DISPLAY can display images. DISPLAY can be a display name, a frame, or nil (meaning the selected frame's display). (fn &optional DISPLAY)Fdisplay-selections-p Return non-nil if DISPLAY supports selections. A selection is a way to transfer text or other data between programs via special system buffers called `selection' or `clipboard'. DISPLAY can be a display name, a frame, or nil (meaning the selected frame's display). (fn &optional DISPLAY)Fdisplay-screens Return the number of screens associated with DISPLAY. DISPLAY should be either a frame or a display name (a string). If DISPLAY is omitted or nil, it defaults to the selected frame's display. (fn &optional DISPLAY)Fdisplay-pixel-height Return the height of DISPLAY's screen in pixels. DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. For character terminals, each character counts as a single pixel. For graphical terminals, note that on "multi-monitor" setups this refers to the pixel height for all physical monitors associated with DISPLAY. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional DISPLAY)Fdisplay-pixel-width Return the width of DISPLAY's screen in pixels. DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. For character terminals, each character counts as a single pixel. For graphical terminals, note that on "multi-monitor" setups this refers to the pixel width for all physical monitors associated with DISPLAY. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional DISPLAY)Fdisplay-mm-height Return the height of DISPLAY's screen in millimeters. If the information is unavailable, this function returns nil. DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. You can override what the system thinks the result should be by adding an entry to `display-mm-dimensions-alist'. For graphical terminals, note that on "multi-monitor" setups this refers to the height in millimeters for all physical monitors associated with DISPLAY. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional DISPLAY)Fdisplay-mm-width Return the width of DISPLAY's screen in millimeters. If the information is unavailable, this function returns nil. DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. You can override what the system thinks the result should be by adding an entry to `display-mm-dimensions-alist'. For graphical terminals, note that on "multi-monitor" setups this refers to the width in millimeters for all physical monitors associated with DISPLAY. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional DISPLAY)Fdisplay-backing-store Return the backing store capability of DISPLAY's screen. The value may be `always', `when-mapped', `not-useful', or nil if the question is inapplicable to a certain kind of display. DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. (fn &optional DISPLAY)Fdisplay-save-under Return non-nil if DISPLAY's screen supports the SaveUnder feature. DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. (fn &optional DISPLAY)Fdisplay-planes Return the number of planes supported by DISPLAY. DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. (fn &optional DISPLAY)Fdisplay-color-cells Return the number of color cells supported by DISPLAY. DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. (fn &optional DISPLAY)Fdisplay-visual-class Return the visual class of DISPLAY. The value is one of the symbols `static-gray', `gray-scale', `static-color', `pseudo-color', `true-color', or `direct-color'. DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. (fn &optional DISPLAY)Fdisplay-monitor-attributes-list Return a list of physical monitor attributes on DISPLAY. DISPLAY can be a display name, a terminal name, or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. Each element of the list represents the attributes of a physical monitor. The first element corresponds to the primary monitor. The attributes for a physical monitor are represented as an alist of attribute keys and values as follows: geometry -- Position and size in pixels in the form of (X Y WIDTH HEIGHT) workarea -- Position and size of the work area in pixels in the form of (X Y WIDTH HEIGHT) mm-size -- Width and height in millimeters in the form of (WIDTH HEIGHT) frames -- List of frames dominated by the physical monitor name (*) -- Name of the physical monitor as a string source (*) -- Source of multi-monitor information as a string where X, Y, WIDTH, and HEIGHT are integers. X and Y are coordinates of the top-left corner, and might be negative for monitors other than the primary one. Keys labeled with (*) are optional. The "work area" is a measure of the "usable" display space. It may be less than the total screen size, owing to space taken up by window manager features (docks, taskbars, etc.). The precise details depend on the platform and environment. The `source' attribute describes the source from which the information was obtained. On X, this may be one of: "Gdk", "XRandr", "Xinerama", or "fallback". A frame is dominated by a physical monitor when either the largest area of the frame resides in the monitor, or the monitor is the closest to the frame if the frame does not intersect any physical monitors. Every (non-tooltip) frame (including invisible ones) in a graphical display is dominated by exactly one physical monitor at a time, though it can span multiple (or no) physical monitors. (fn &optional DISPLAY)Fframe-geom-value-cons Return equivalent geometry value for FRAME as a cons with car `+'. A geometry value equivalent to VALUE for FRAME is returned, where the value is a cons with car `+', not numeric. TYPE is the car of the original geometry spec (TYPE . VALUE). It is `top' or `left', depending on which edge VALUE is related to. VALUE is the cdr of a frame geometry spec: (left/top . VALUE). If VALUE is a number, then it is converted to a cons value, perhaps relative to the opposite frame edge from that in the original spec. FRAME defaults to the selected frame. Examples (measures in pixels) - Assuming display height/width=1024, frame height/width=600: 300 inside display edge: 300 => (+ 300) (+ 300) => (+ 300) 300 inside opposite display edge: (- 300) => (+ 124) -300 => (+ 124) 300 beyond display edge (= 724 inside opposite display edge): (+ -300) => (+ -300) 300 beyond display edge (= 724 inside opposite display edge): (- -300) => (+ 724) In the 3rd, 4th, and 6th examples, the returned value is relative to the opposite frame edge from the edge indicated in the input spec. (fn TYPE VALUE &optional FRAME)Fframe-geom-spec-cons Return equivalent geometry spec for FRAME as a cons with car `+'. A geometry specification equivalent to SPEC for FRAME is returned, where the value is a cons with car `+', not numeric. SPEC is a frame geometry spec: (left . VALUE) or (top . VALUE). If VALUE is a number, then it is converted to a cons value, perhaps relative to the opposite frame edge from that in the original spec. FRAME defaults to the selected frame. Examples (measures in pixels) - Assuming display height=1024, frame height=600: top 300 below display top: (top . 300) => (top + 300) (top + 300) => (top + 300) bottom 300 above display bottom: (top - 300) => (top + 124) (top . -300) => (top + 124) top 300 above display top (= bottom 724 above display bottom): (top + -300) => (top + -300) bottom 300 below display bottom (= top 724 below display top): (top - -300) => (top + 724) In the 3rd, 4th, and 6th examples, the returned value is relative to the opposite frame edge from the edge indicated in the input spec. (fn SPEC &optional FRAME)Fdelete-other-frames Delete all frames on FRAME's terminal, except FRAME. If FRAME uses another frame's minibuffer, the minibuffer frame is left untouched. Do not delete any of FRAME's child frames. If FRAME is a child frame, delete its siblings only. FRAME must be a live frame and defaults to the selected one. (fn &optional FRAME)Fwindow-divider-width-valid-p Return non-nil if VALUE is a positive number. (fn VALUE)Fwindow-divider-mode-apply Apply window divider places and widths to all frames. If ENABLE is nil, apply default places and widths. Else reset all divider widths to zero. (fn ENABLE)Fwindow-divider-mode Display dividers between windows (Window Divider mode). With a prefix argument ARG, enable Window Divider mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. The option `window-divider-default-places' specifies on which side of a window dividers are displayed. The options `window-divider-default-bottom-width' and `window-divider-default-right-width' specify their respective widths. (fn &optional ARG)Vblink-cursor-idle-timer Timer started after `blink-cursor-delay' seconds of Emacs idle time. The function `blink-cursor-start' is called when the timer fires.Vblink-cursor-timer Timer started from `blink-cursor-start'. This timer calls `blink-cursor-timer-function' every `blink-cursor-interval' seconds.Vblink-cursor-blinks-done Number of blinks done since we started blinking on NS, X, and MS-Windows.Fblink-cursor--start-idle-timer Start the `blink-cursor-idle-timer'.Fblink-cursor--start-timer Start the `blink-cursor-timer'.Fblink-cursor-start Timer function called from the timer `blink-cursor-idle-timer'. This starts the timer `blink-cursor-timer', which makes the cursor blink if appropriate. It also arranges to cancel that timer when the next command starts, by installing a pre-command hook.Fblink-cursor-timer-function Timer function of timer `blink-cursor-timer'.Fblink-cursor-end Stop cursor blinking. This is installed as a pre-command hook by `blink-cursor-start'. When run, it cancels the timer `blink-cursor-timer' and removes itself as a pre-command hook.Fblink-cursor-suspend Suspend cursor blinking. This is called when no frame has focus and timers can be suspended. Timers are restarted by `blink-cursor-check', which is called when a frame receives focus.Fblink-cursor-check Check if cursor blinking shall be restarted. This is done when a frame gets focus. Blink timers may be stopped by `blink-cursor-suspend'.Fblink-cursor-mode Toggle cursor blinking (Blink Cursor mode). With a prefix argument ARG, enable Blink Cursor mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. If the value of `blink-cursor-blinks' is positive (10 by default), the cursor stops blinking after that number of blinks, if Emacs gets no input during that time. See also `blink-cursor-interval' and `blink-cursor-delay'. This command is effective only on graphical frames. On text-only terminals, cursor blinking is controlled by the terminal. (fn &optional ARG)Ftoggle-frame-maximized Toggle maximization state of selected frame. Maximize selected frame or un-maximize if it is already maximized. If the frame is in fullscreen state, don't change its state, but set the frame's `fullscreen-restore' parameter to `maximized', so the frame will be maximized after disabling fullscreen state. Note that with some window managers you may have to set `frame-resize-pixelwise' to non-nil in order to make a frame appear truly maximized. In addition, you may have to set `x-frame-normalize-before-maximize' in order to enable transitions from one fullscreen state to another. See also `toggle-frame-fullscreen'.Ftoggle-frame-fullscreen Toggle fullscreen state of selected frame. Make selected frame fullscreen or restore its previous size if it is already fullscreen. Before making the frame fullscreen remember the current value of the frame's `fullscreen' parameter in the `fullscreen-restore' parameter of the frame. That value is used to restore the frame's fullscreen state when toggling fullscreen the next time. Note that with some window managers you may have to set `frame-resize-pixelwise' to non-nil in order to make a frame appear truly fullscreen. In addition, you may have to set `x-frame-normalize-before-maximize' in order to enable transitions from one fullscreen state to another. See also `toggle-frame-maximized'.Sfringe.elc Ffringe-bitmap-p Return non-nil if SYMBOL is a fringe bitmap.Vfringe-mode-explicit Non-nil means `set-fringe-mode' should really do something. This is nil while loading `fringe.el', and t afterward.Fset-fringe-mode-1 Call `set-fringe-mode' with VALUE. See `fringe-mode' for valid values and their effect. This is usually invoked when setting `fringe-mode' via customize.Fset-fringe-mode Set `fringe-mode' to VALUE and put the new value into effect. See `fringe-mode' for possible values and their effect.Vfringe-styles Alist mapping fringe mode names to fringe widths. Each list element has the form (NAME . WIDTH), where NAME is a mnemonic fringe mode name and WIDTH is one of the following: - nil, which means the default width (8 pixels). - a cons cell (LEFT . RIGHT), where LEFT and RIGHT are respectively the left and right fringe widths in pixels, or nil (meaning the default width). - a single integer, which specifies the pixel widths of both fringes.Ffringe-query-style Query user for fringe style. Returns values suitable for left-fringe and right-fringe frame parameters. If ALL-FRAMES, the negation of the fringe values in `default-frame-alist' is used when user enters the empty string. Otherwise the negation of the fringe value in the currently selected frame parameter is used.Ffringe-mode Set the default appearance of fringes on all frames. When called interactively, query the user for MODE; valid values are `no-fringes', `default', `left-only', `right-only', `minimal' and `half-width'. See `fringe-styles'. When used in a Lisp program, MODE should be one of these: - nil, which means the default width (8 pixels). - a cons cell (LEFT . RIGHT), where LEFT and RIGHT are respectively the left and right fringe widths in pixels, or nil (meaning the default width). - a single integer, which specifies the pixel widths of both fringes. This command may round up the left and right width specifications to ensure that their sum is a multiple of the character width of a frame. It never rounds up a fringe width of 0. Fringe widths set by `set-window-fringes' override the default fringe widths set by this command. This command applies to all frames that exist and frames to be created in the future. If you want to set the default appearance of fringes on the selected frame only, see the command `set-fringe-style'.Fset-fringe-style Set the default appearance of fringes on the selected frame. When called interactively, query the user for MODE; valid values are `no-fringes', `default', `left-only', `right-only', `minimal' and `half-width'. See `fringe-styles'. When used in a Lisp program, MODE should be one of these: - nil, which means the default width (8 pixels). - a cons cell (LEFT . RIGHT), where LEFT and RIGHT are respectively the left and right fringe widths in pixels, or nil (meaning the default width). - a single integer, which specifies the pixel widths of both fringes. This command may round up the left and right width specifications to ensure that their sum is a multiple of the character width of a frame. It never rounds up a fringe width of 0. Fringe widths set by `set-window-fringes' override the default fringe widths set by this command. If you want to set the default appearance of fringes on all frames, see the command `fringe-mode'.Ffringe-columns Return the width, measured in columns, of the fringe area on SIDE. If optional argument REAL is non-nil, return a real floating point number instead of a rounded integer value. SIDE must be the symbol `left' or `right'.Shelp.elc Vhelp-window-point-marker Marker to override default `window-point' in help windows.Vhelp-window-old-frame Frame selected at the time `with-help-window' is invoked.Vhelp-map Keymap for characters following the Help key.Fhelp-quit Just exit from the Help command's command loop.Vhelp-return-method What to do to "exit" the help buffer. This is a list (WINDOW . t) delete the selected window (and possibly its frame, see `quit-window'), go to WINDOW. (WINDOW . quit-window) do quit-window, then select WINDOW. (WINDOW BUF START POINT) display BUF at START, POINT, then select WINDOW.Fhelp-print-return-message Display or return message saying how to restore windows after help command. This function assumes that `standard-output' is the help buffer. It computes a message, and applies the optional argument FUNCTION to it. If FUNCTION is nil, it applies `message', thus displaying the message. In addition, this function sets up `help-return-method', which see, that specifies what to do when the user exits the help buffer. Do not call this in the scope of `with-help-window'.Fhelp-for-help-internal-doc You have typed %THIS-KEY%, the help character. Type a Help option: (Use SPC or DEL to scroll through this text. Type \<help-map>\[help-quit] to exit the Help command.) a PATTERN Show commands whose name matches the PATTERN (a list of words or a regexp). See also the `apropos' command. b Display all key bindings. c KEYS Display the command name run by the given key sequence. C CODING Describe the given coding system, or RET for current ones. d PATTERN Show a list of functions, variables, and other items whose documentation matches the PATTERN (a list of words or a regexp). e Go to the *Messages* buffer which logs echo-area messages. f FUNCTION Display documentation for the given function. F COMMAND Show the Emacs manual's section that describes the command. g Display information about the GNU project. h Display the HELLO file which illustrates various scripts. i Start the Info documentation reader: read included manuals. I METHOD Describe a specific input method, or RET for current. k KEYS Display the full documentation for the key sequence. K KEYS Show the Emacs manual's section for the command bound to KEYS. l Show last 300 input keystrokes (lossage). L LANG-ENV Describes a specific language environment, or RET for current. m Display documentation of current minor modes and current major mode, including their special commands. n Display news of recent Emacs changes. o SYMBOL Display the given function or variable's documentation and value. p TOPIC Find packages matching a given topic keyword. P PACKAGE Describe the given Emacs Lisp package. r Display the Emacs manual in Info mode. s Display contents of current syntax table, plus explanations. S SYMBOL Show the section for the given symbol in the Info manual for the programming language used in this buffer. t Start the Emacs learn-by-doing tutorial. v VARIABLE Display the given variable's documentation and value. w COMMAND Display which keystrokes invoke the given command (where-is). . Display any available local help at point in the echo area. C-a Information about Emacs. C-c Emacs copying permission (GNU General Public License). C-d Instructions for debugging GNU Emacs. C-e External packages and information about Emacs. C-f Emacs FAQ. C-m How to order printed Emacs manuals. C-n News of recent Emacs changes. C-o Emacs ordering and distribution information. C-p Info about known Emacs problems. C-t Emacs TODO list. C-w Information on absence of warranty for GNU Emacs.Fhelp-for-help-internal Help command.Ffunction-called-at-point Return a function around point or else called by the list containing point. If that doesn't give a function, return nil.Fdebian-expand-file-name-dfsg Apply expand-file-name to FILENAME. If expand-file-name does not find a file, append `.dfsg' and try again.Fdescribe-distribution Display info on how to obtain the latest version of GNU Emacs.Fdescribe-copying Display info on how you may redistribute copies of GNU Emacs.Fdescribe-gnu-project Browse online information on the GNU project.Fdescribe-no-warranty Display info on all the kinds of warranty Emacs does NOT have.Fdescribe-prefix-bindings Describe the bindings of the prefix used to reach this command. The prefix described consists of all but the last event of the key sequence that ran this command.Fview-emacs-news Display info on recent changes to Emacs. With argument, display info only for the selected version.Fview-emacs-todo Display the Emacs TODO list.Fview-echo-area-messages View the log of recent echo-area messages: the `*Messages*' buffer. The number of messages retained in that buffer is specified by the variable `message-log-max'.Fview-order-manuals Display information on how to buy printed copies of Emacs manuals.Fview-emacs-FAQ Display the Emacs Frequently Asked Questions (FAQ) file.Fview-emacs-problems Display info on known problems with Emacs and possible workarounds.Fview-emacs-debugging Display info on how to debug Emacs problems.Fview-external-packages Display info on where to get more Emacs packages.Fview-lossage Display last few input keystrokes and the commands run. To record all your input, use `open-dribble-file'.Fdescribe-bindings Display a buffer showing a list of all defined keys, and their definitions. The keys are displayed in order of precedence. The optional argument PREFIX, if non-nil, should be a key sequence; then we display only bindings that start with that prefix. The optional argument BUFFER specifies which buffer's bindings to display (default, the current buffer). BUFFER can be a buffer or a buffer name.Fdescribe-bindings-internal Show a list of all defined keys, and their definitions. We put that list in a buffer, and display the buffer. The optional argument MENUS, if non-nil, says to mention menu bindings. (Ordinarily these are omitted from the output.) The optional argument PREFIX, if non-nil, should be a key sequence; then we display only bindings that start with that prefix.Fwhere-is Print message listing key sequences that invoke the command DEFINITION. Argument is a command definition, usually a symbol with a function definition. If INSERT (the prefix arg) is non-nil, insert the message in the buffer.Fhelp--analyze-key Get information about KEY its corresponding UNTRANSLATED events. Returns a list of the form (BRIEF-DESC DEFN EVENT MOUSE-MSG).Fdescribe-key-briefly Print the name of the function KEY invokes. KEY is a string. If INSERT (the prefix arg) is non-nil, insert the message in the buffer. If non-nil, UNTRANSLATED is a vector of the untranslated events. It can also be a number in which case the untranslated events from the last key hit are used. If KEY is a menu item or a tool-bar button that is disabled, this command temporarily enables it to allow getting help on disabled items and buttons.Fhelp--key-binding-keymap Return a keymap holding a binding for KEY within current keymaps. The effect of the arguments KEY, ACCEPT-DEFAULT, NO-REMAP and POSITION is as documented in the function `key-binding'.Fhelp--binding-locus Describe in which keymap KEY is defined. Return a symbol pointing to that keymap if one exists ; otherwise return nil. The argument POSITION is as documented in the function `key-binding'.Fhelp-read-key-sequence Reads a key sequence from the user. Returns a list of the form (KEY UP-EVENT), where KEY is the key sequence, and UP-EVENT is the up-event that was discarded by reading KEY, or nil. If NO-MOUSE-MOVEMENT is non-nil, ignore key sequences starting with `mouse-movement' events.Fhelp-downify-mouse-event-type Add "down-" to BASE if it is not already there. BASE is a symbol, a mouse event type. If the modification is done, return the new symbol. Otherwise return nil.Fdescribe-key Display documentation of the function invoked by KEY. KEY can be any kind of a key sequence; it can include keyboard events, mouse events, and/or menu events. When calling from a program, pass KEY as a string or a vector. If non-nil, UNTRANSLATED is a vector of the corresponding untranslated events. It can also be a number, in which case the untranslated events from the last key sequence entered are used. UP-EVENT is the up-event that was discarded by reading KEY, or nil. If KEY is a menu item or a tool-bar button that is disabled, this command temporarily enables it to allow getting help on disabled items and buttons.Fdescribe-mode Display documentation of current major mode and minor modes. A brief summary of the minor modes comes first, followed by the major mode description. This is followed by detailed descriptions of the minor modes, each on a separate page. For this to work correctly for a minor mode, the mode's indicator variable (listed in `minor-mode-alist') must also be a function whose documentation describes the minor mode. If called from Lisp with a non-nil BUFFER argument, display documentation for the major and minor modes of that buffer.Fdescribe-minor-mode Display documentation of a minor mode given as MINOR-MODE. MINOR-MODE can be a minor mode symbol or a minor mode indicator string appeared on the mode-line.Fdescribe-minor-mode-from-symbol Display documentation of a minor mode given as a symbol, SYMBOLFdescribe-minor-mode-from-indicator Display documentation of a minor mode specified by INDICATOR. If you call this function interactively, you can give indicator which is currently activated with completion.Flookup-minor-mode-from-indicator Return a minor mode symbol from its indicator on the mode line.Ftemp-buffer-resize-mode Toggle auto-resizing temporary buffer windows (Temp Buffer Resize Mode). With a prefix argument ARG, enable Temp Buffer Resize mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Temp Buffer Resize mode is enabled, the windows in which we show a temporary buffer are automatically resized in height to fit the buffer's contents, but never more than `temp-buffer-max-height' nor less than `window-min-height'. A window is resized only if it has been specially created for the buffer. Windows that have shown another buffer before are not resized. A frame is resized only if `fit-frame-to-buffer' is non-nil. This mode is used by `help', `apropos' and `completion' buffers, and some others.Fresize-temp-buffer-window Resize WINDOW to fit its contents. WINDOW must be a live window and defaults to the selected one. Do not resize if WINDOW was not created by `display-buffer'. If WINDOW is part of a vertical combination, restrain its new size by `temp-buffer-max-height' and do not resize if its minimum accessible position is scrolled out of view. If WINDOW is part of a horizontal combination, restrain its new size by `temp-buffer-max-width'. In both cases, the value of the option `fit-window-to-buffer-horizontally' can inhibit resizing. If WINDOW is the root window of its frame, resize the frame provided `fit-frame-to-buffer' is non-nil. This function may call `preserve-window-size' to preserve the size of WINDOW.Fhelp-window-display-message Display message telling how to quit and scroll help window. QUIT-PART is a string telling how to quit the help window WINDOW. Optional argument SCROLL non-nil means tell how to scroll WINDOW. SCROLL equal `other' means tell how to scroll the "other" window.Fhelp-window-setup Set up help window WINDOW for `with-help-window'. WINDOW is the window used for displaying the help buffer. Return VALUE.Fwith-help-window Evaluate BODY, send output to BUFFER-OR-NAME and show in a help window. This construct is like `with-temp-buffer-window' but unlike that puts the buffer specified by BUFFER-OR-NAME in `help-mode' and displays a message about how to delete the help window when it's no longer needed. The help window will be selected if `help-window-select' is non-nil. Most of this is done by `help-window-setup', which see.Fhelp-form-show Display the output of a non-nil `help-form'.Fhelp--docstring-quote Return a doc string that represents STRING. The result, when formatted by `substitute-command-keys', should equal STRING.Fhelp-split-fundoc Split a function DOCSTRING into the actual doc and the usage info. Return (USAGE . DOC) or nil if there's no usage info, where USAGE info is a string describing the argument list of DEF, such as "(apply FUNCTION &rest ARGUMENTS)". DEF is the function whose usage we're looking for in DOCSTRING.Fhelp-add-fundoc-usage Add the usage info to DOCSTRING. If DOCSTRING already has a usage info, then just return it unchanged. The usage info is built from ARGLIST. DOCSTRING can be nil. ARGLIST can also be t or a string of the form "(FUN ARG1 ARG2 ...)".Fhelp-function-arglist Return a formal argument list for the function DEF. If PRESERVE-NAMES is non-nil, return a formal arglist that uses the same names as used in the original source code, when possible.Simage.elc Vimage-type-header-regexps Alist of (REGEXP . IMAGE-TYPE) pairs used to auto-detect image types. When the first bytes of an image file match REGEXP, it is assumed to be of image type IMAGE-TYPE if IMAGE-TYPE is a symbol. If not a symbol, IMAGE-TYPE must be a pair (PREDICATE . TYPE). PREDICATE is called with one argument, a string containing the image data. If PREDICATE returns a non-nil value, TYPE is the image's type.Vimage-type-file-name-regexps Alist of (REGEXP . IMAGE-TYPE) pairs used to identify image files. When the name of an image file match REGEXP, it is assumed to be of image type IMAGE-TYPE.Vimage-type-auto-detectable Alist of (IMAGE-TYPE . AUTODETECT) pairs used to auto-detect image files. (See `image-type-auto-detected-p'). AUTODETECT can be - t always auto-detect. - nil never auto-detect. - maybe auto-detect only if the image type is available (see `image-type-available-p').Vimage-format-suffixes An alist associating image types with file name suffixes. This is used as a hint by the ImageMagick library when detecting the type of image data (that does not have an associated file name). Each element has the form (MIME-CONTENT-TYPE EXTENSION). If `create-image' is called with a :format attribute whose value equals a content-type found in this list, the ImageMagick library is told that the data would have the associated suffix if saved to a file.Fimage-load-path-for-library Return a suitable search path for images used by LIBRARY. It searches for IMAGE in `image-load-path' (excluding "`data-directory'/images") and `load-path', followed by a path suitable for LIBRARY, which includes "../../etc/images" and "../etc/images" relative to the library file itself, and then in "`data-directory'/images". Then this function returns a list of directories which contains first the directory in which IMAGE was found, followed by the value of `load-path'. If PATH is given, it is used instead of `load-path'. If NO-ERROR is non-nil and a suitable path can't be found, don't signal an error. Instead, return a list of directories as before, except that nil appears in place of the image directory. Here is an example that uses a common idiom to provide compatibility with versions of Emacs that lack the variable `image-load-path': ;; Shush compiler. (defvar image-load-path) (let* ((load-path (image-load-path-for-library "mh-e" "mh-logo.xpm")) (image-load-path (cons (car load-path) (when (boundp \='image-load-path) image-load-path)))) (mh-tool-bar-folder-buttons-init)) (fn LIBRARY IMAGE &optional PATH NO-ERROR)Fimage-jpeg-p Value is non-nil if DATA, a string, consists of JFIF image data. We accept the tag Exif because that is the same format. (fn DATA)Fimage-type-from-data Determine the image type from image data DATA. Value is a symbol specifying the image type or nil if type cannot be determined. (fn DATA)Fimage-type-from-buffer Determine the image type from data in the current buffer. Value is a symbol specifying the image type or nil if type cannot be determined.Fimage-type-from-file-header Determine the type of image file FILE from its first few bytes. Value is a symbol specifying the image type, or nil if type cannot be determined. (fn FILE)Fimage-type-from-file-name Determine the type of image file FILE from its name. Value is a symbol specifying the image type, or nil if type cannot be determined. (fn FILE)Fimage-type Determine and return image type. SOURCE is an image file name or image data. Optional TYPE is a symbol describing the image type. If TYPE is omitted or nil, try to determine the image type from its first few bytes of image data. If that doesn't work, and SOURCE is a file name, use its file extension as image type. Optional DATA-P non-nil means SOURCE is a string containing image data. (fn SOURCE &optional TYPE DATA-P)Fimage-type-available-p Return non-nil if image type TYPE is available. Image types are symbols like `xbm' or `jpeg'. (fn TYPE)Fimage-type-auto-detected-p Return t if the current buffer contains an auto-detectable image. This function is intended to be used from `magic-fallback-mode-alist'. The buffer is considered to contain an auto-detectable image if its beginning matches an image type in `image-type-header-regexps', and that image type is present in `image-type-auto-detectable' with a non-nil value. If that value is non-nil, but not t, then the image type must be available.Fcreate-image Create an image. FILE-OR-DATA is an image file name or image data. Optional TYPE is a symbol describing the image type. If TYPE is omitted or nil, try to determine the image type from its first few bytes of image data. If that doesn't work, and FILE-OR-DATA is a file name, use its file extension as image type. Optional DATA-P non-nil means FILE-OR-DATA is a string containing image data. Optional PROPS are additional image attributes to assign to the image, like, e.g. `:mask MASK'. If the property `:scale' is not given and the display has a high resolution (more exactly, when the average width of a character in the default font is more than 10 pixels), the image is automatically scaled up in proportion to the default font. Value is the image created, or nil if images of type TYPE are not supported. Images should not be larger than specified by `max-image-size'. Image file names that are not absolute are searched for in the "images" sub-directory of `data-directory' and `x-bitmap-file-path' (in that order). (fn FILE-OR-DATA &optional TYPE DATA-P &rest PROPS)Fimage--set-property Set PROPERTY in IMAGE to VALUE. Internal use only. (fn IMAGE PROPERTY VALUE)Fimage-property Return the value of PROPERTY in IMAGE. Properties can be set with (setf (image-property IMAGE PROPERTY) VALUE) If VALUE is nil, PROPERTY is removed from IMAGE. (fn IMAGE PROPERTY)Fimage-compute-scaling-factor (fn SCALING)Fput-image Put image IMAGE in front of POS in the current buffer. IMAGE must be an image created with `create-image' or `defimage'. IMAGE is displayed by putting an overlay into the current buffer with a `before-string' STRING that has a `display' property whose value is the image. STRING is defaulted if you omit it. The overlay created will have the `put-image' property set to t. POS may be an integer or marker. AREA is where to display the image. AREA nil or omitted means display it in the text area, a value of `left-margin' means display it in the left marginal area, a value of `right-margin' means display it in the right marginal area. (fn IMAGE POS &optional STRING AREA)Finsert-image Insert IMAGE into current buffer at point. IMAGE is displayed by inserting STRING into the current buffer with a `display' property whose value is the image. STRING defaults to a single space if you omit it. AREA is where to display the image. AREA nil or omitted means display it in the text area, a value of `left-margin' means display it in the left marginal area, a value of `right-margin' means display it in the right marginal area. SLICE specifies slice of IMAGE to insert. SLICE nil or omitted means insert whole image. SLICE is a list (X Y WIDTH HEIGHT) specifying the X and Y positions and WIDTH and HEIGHT of image area to insert. A float value 0.0 - 1.0 means relative to the width or height of the image; integer values are taken as pixel values. (fn IMAGE &optional STRING AREA SLICE)Finsert-sliced-image Insert IMAGE into current buffer at point. IMAGE is displayed by inserting STRING into the current buffer with a `display' property whose value is the image. The default STRING is a single space. AREA is where to display the image. AREA nil or omitted means display it in the text area, a value of `left-margin' means display it in the left marginal area, a value of `right-margin' means display it in the right marginal area. The image is automatically split into ROWS x COLS slices. (fn IMAGE &optional STRING AREA ROWS COLS)Fremove-images Remove images between START and END in BUFFER. Remove only images that were put in BUFFER with calls to `put-image'. BUFFER nil or omitted means use the current buffer. (fn START END &optional BUFFER)Fimage-search-load-path (fn FILE &optional PATH)Ffind-image Find an image, choosing one of a list of image specifications. SPECS is a list of image specifications. Each image specification in SPECS is a property list. The contents of a specification are image type dependent. All specifications must at least contain the properties `:type TYPE' and either `:file FILE' or `:data DATA', where TYPE is a symbol specifying the image type, e.g. `xbm', FILE is the file to load the image from, and DATA is a string containing the actual image data. The specification whose TYPE is supported, and FILE exists, is used to construct the image specification to be returned. Return nil if no specification is satisfied. The image is looked for in `image-load-path'. Image files should not be larger than specified by `max-image-size'. (fn SPECS)Fdefimage Define SYMBOL as an image, and return SYMBOL. SPECS is a list of image specifications. DOC is an optional documentation string. Each image specification in SPECS is a property list. The contents of a specification are image type dependent. All specifications must at least contain the properties `:type TYPE' and either `:file FILE' or `:data DATA', where TYPE is a symbol specifying the image type, e.g. `xbm', FILE is the file to load the image from, and DATA is a string containing the actual image data. The first image specification whose TYPE is supported, and FILE exists, is used to define SYMBOL. Example: (defimage test-image ((:type xpm :file "~/test1.xpm") (:type xbm :file "~/test1.xbm"))) (fn SYMBOL SPECS &optional DOC)Vimage-default-frame-delay Default interval in seconds between frames of a multi-frame image. Only used if the image does not specify a value.Fimage-multi-frame-p Return non-nil if IMAGE contains more than one frame. The actual return value is a cons (NIMAGES . DELAY), where NIMAGES is the number of frames (or sub-images) in the image and DELAY is the delay in seconds that the image specifies between each frame. DELAY may be nil, in which case you might want to use `image-default-frame-delay'. (fn IMAGE)Fimage-animated-p Like `image-multi-frame-p', but returns nil if no delay is specified. (fn IMAGE)Fimage-animate Start animating IMAGE. Animation occurs by destructively altering the IMAGE spec list. With optional INDEX, begin animating from that animation frame. LIMIT specifies how long to animate the image. If omitted or nil, play the animation until the end. If t, loop forever. If a number, play until that number of seconds has elapsed. (fn IMAGE &optional INDEX LIMIT)Fimage-animate-timer Return the animation timer for image IMAGE. (fn IMAGE)Vimage-minimum-frame-delay Minimum interval in seconds between frames of an animated image.Fimage-current-frame The current frame number of IMAGE, indexed from 0. (fn IMAGE)Fimage-show-frame Show frame N of IMAGE. Frames are indexed from 0. Optional argument NOCHECK non-nil means do not check N is within the range of frames present in the image. (fn IMAGE N &optional NOCHECK)Fimage-animate-get-speed Return the speed factor for animating IMAGE. (fn IMAGE)Fimage-animate-set-speed Set the speed factor for animating IMAGE to VALUE. With optional argument MULTIPLY non-nil, treat VALUE as a multiplication factor for the current value. (fn IMAGE VALUE &optional MULTIPLY)Fimage-animate-timeout Display animation frame N of IMAGE. N=0 refers to the initial animation frame. COUNT is the total number of frames in the animation. TIME-ELAPSED is the total time that has elapsed since `image-animate-start' was called. LIMIT determines when to stop. If t, loop forever. If nil, stop after displaying the last animation frame. Otherwise, stop after LIMIT seconds have elapsed. The minimum delay between successive frames is `image-minimum-frame-delay'. If the image has a non-nil :speed property, it acts as a multiplier for the animation speed. A negative value means to animate in reverse. (fn IMAGE N COUNT TIME-ELAPSED LIMIT TARGET-TIME)Fimagemagick-filter-types Return a list of the ImageMagick types to be treated as images, or nil. This is the result of `imagemagick-types', including only elements that match `imagemagick-enabled-types' and do not match `imagemagick-types-inhibit'.Vimagemagick--file-regexp File extension regexp for ImageMagick files, if any. This is the extension installed into `auto-mode-alist' and `image-type-file-name-regexps' by `imagemagick-register-types'.Fimagemagick-register-types Register file types that can be handled by ImageMagick. This function is called at startup, after loading the init file. It registers the ImageMagick types returned by `imagemagick-filter-types'. Registered image types are added to `auto-mode-alist', so that Emacs visits them in Image mode. They are also added to `image-type-file-name-regexps', so that the `image-type' function recognizes these files as having image type `imagemagick'. If Emacs is compiled without ImageMagick support, this does nothing.Fimage-increase-size Increase the image size by a factor of N. If N is 3, then the image size will be increased by 30%. The default is 20%. (fn N)Fimage-decrease-size Decrease the image size by a factor of N. If N is 3, then the image size will be decreased by 30%. The default is 20%. (fn N)Fimage--change-size (fn FACTOR)Fimage--image-without-parameters (fn IMAGE)Fimage--current-scaling (fn IMAGE NEW-IMAGE)Fimage-rotate Rotate the image under point by 90 degrees clockwise.Fimage-save Save the image under point.Sindent.elc Vindent-line-function Function to indent the current line. This function will be called with no arguments. If it is called somewhere where auto-indentation cannot be done (e.g. inside a string), the function should simply return `noindent'. Setting this function is all you need to make TAB indent appropriately. Don't rebind TAB unless you really need to.Findent-according-to-mode Indent line in proper way for current major mode. Normally, this is done by calling the function specified by the variable `indent-line-function'. However, if the value of that variable is `indent-relative' or `indent-relative-first-indent-point', handle it specially (since those functions are used for tabbing); in that case, indent by aligning to the previous non-blank line.Findent-for-tab-command Indent the current line or region, or insert a tab, as appropriate. This function either inserts a tab, or indents the current line, or performs symbol completion, depending on `tab-always-indent'. The function called to actually indent the line or insert a tab is given by the variable `indent-line-function'. If a prefix argument is given, after this function indents the current line or inserts a tab, it also rigidly indents the entire balanced expression which starts at the beginning of the current line, to reflect the current line's indentation. In most major modes, if point was in the current line's indentation, it is moved to the first non-whitespace character after indenting; otherwise it stays at the same position relative to the text. If `transient-mark-mode' is turned on and the region is active, this function instead calls `indent-region'. In this case, any prefix argument is ignored. (fn &optional ARG)Findent--funcall-widened (fn FUNC)Finsert-tab (fn &optional ARG)Findent-rigidly--current-indentation Return the smallest indentation in range from BEG to END. Blank lines are ignored. (fn BEG END)Vindent-rigidly-map Transient keymap for adjusting indentation interactively. It is activated by calling `indent-rigidly' interactively.Findent-rigidly Indent all lines starting in the region. If called interactively with no prefix argument, activate a transient mode in which the indentation can be adjusted interactively by typing \<indent-rigidly-map>\[indent-rigidly-left], \[indent-rigidly-right], \[indent-rigidly-left-to-tab-stop], or \[indent-rigidly-right-to-tab-stop]. Typing any other key deactivates the transient mode. If called from a program, or interactively with prefix ARG, indent all lines starting in the region forward by ARG columns. If called from a program, START and END specify the beginning and end of the text to act on, in place of the region. Negative values of ARG indent backward, so you can remove all indentation by specifying a large negative ARG. (fn START END ARG &optional INTERACTIVE)Findent-rigidly-left Indent all lines between BEG and END leftward by one space. (fn BEG END)Findent-rigidly-right Indent all lines between BEG and END rightward by one space. (fn BEG END)Findent-rigidly-left-to-tab-stop Indent all lines between BEG and END leftward to a tab stop. (fn BEG END)Findent-rigidly-right-to-tab-stop Indent all lines between BEG and END rightward to a tab stop. (fn BEG END)Findent-line-to Indent current line to COLUMN. This function removes or adds spaces and tabs at beginning of line only if necessary. It leaves point at end of indentation. (fn COLUMN)Fcurrent-left-margin Return the left margin to use for this line. This is the value of the buffer-local variable `left-margin' plus the value of the `left-margin' text-property at the start of the line.Fmove-to-left-margin Move to the left margin of the current line. With optional argument, move forward N-1 lines first. The column moved to is the one given by the `current-left-margin' function. If the line's indentation appears to be wrong, and this command is called interactively or with optional argument FORCE, it will be fixed. (fn &optional N FORCE)Findent-to-left-margin Indent current line to the column given by `current-left-margin'.Fdelete-to-left-margin Remove left margin indentation from a region. This deletes to the column given by `current-left-margin'. In no case will it delete non-whitespace. Args FROM and TO are optional; default is the whole buffer. (fn &optional FROM TO)Fset-left-margin Set the left margin of the region to WIDTH. If `auto-fill-mode' is active, re-fill the region to fit the new margin. Interactively, WIDTH is the prefix argument, if specified. Without prefix argument, the command prompts for WIDTH. (fn FROM TO WIDTH)Fset-right-margin Set the right margin of the region to WIDTH. If `auto-fill-mode' is active, re-fill the region to fit the new margin. Interactively, WIDTH is the prefix argument, if specified. Without prefix argument, the command prompts for WIDTH. (fn FROM TO WIDTH)Falter-text-property Programmatically change value of a text-property. For each region between FROM and TO that has a single value for PROPERTY, apply FUNCTION to that value and sets the property to the function's result. Optional fifth argument OBJECT specifies the string or buffer to operate on. (fn FROM TO PROP FUNC &optional OBJECT)Fincrease-left-margin Increase or decrease the left-margin of the region. With no prefix argument, this adds `standard-indent' of indentation. A prefix arg (optional third arg INC noninteractively) specifies the amount to change the margin by, in characters. If `auto-fill-mode' is active, re-fill the region to fit the new margin. (fn FROM TO INC)Fdecrease-left-margin Make the left margin of the region smaller. With no prefix argument, decrease the indentation by `standard-indent'. A prefix arg (optional third arg INC noninteractively) specifies the amount to change the margin by, in characters. If `auto-fill-mode' is active, re-fill the region to fit the new margin. (fn FROM TO INC)Fincrease-right-margin Increase the right-margin of the region. With no prefix argument, increase the right margin by `standard-indent'. A prefix arg (optional third arg INC noninteractively) specifies the amount to change the margin by, in characters. A negative argument decreases the right margin width. If `auto-fill-mode' is active, re-fill the region to fit the new margin. (fn FROM TO INC)Fdecrease-right-margin Make the right margin of the region smaller. With no prefix argument, decrease the right margin by `standard-indent'. A prefix arg (optional third arg INC noninteractively) specifies the amount of width to remove, in characters. A negative argument increases the right margin width. If `auto-fill-mode' is active, re-fills region to fit in new margin. (fn FROM TO INC)Fbeginning-of-line-text Move to the beginning of the text on this line. With optional argument, move forward N-1 lines first. From the beginning of the line, moves past the left-margin indentation, the fill-prefix, and any indentation used for centering or right-justifying the line, but does not move past any whitespace that was explicitly inserted (such as a tab used to indent the first line of a paragraph). (fn &optional N)Vindent-region-function Short cut function to indent region using `indent-according-to-mode'. Default is to really run `indent-according-to-mode' on each line.Findent-region Indent each nonblank line in the region. A numeric prefix argument specifies a column: indent each line to that column. With no prefix argument, the command chooses one of these methods and indents all the lines with it: 1) If `fill-prefix' is non-nil, insert `fill-prefix' at the beginning of each line in the region that does not already begin with it. 2) If `indent-region-function' is non-nil, call that function to indent the region. 3) Indent each line via `indent-according-to-mode'. Called from a program, START and END specify the region to indent. If the third argument COLUMN is an integer, it specifies the column to indent to; if it is nil, use one of the three methods above. (fn START END &optional COLUMN)Findent-region-line-by-line (fn START END)Findent-relative-first-indent-point Indent the current line like the previous nonblank line. Indent to the first indentation position in the previous nonblank line if that position is greater than the current column. See also `indent-relative'.Findent-relative Space out to under next indent point in previous nonblank line. An indent point is a non-whitespace character following whitespace. The following line shows the indentation points in this line. ^ ^ ^ ^ ^ ^ ^ ^ ^ If FIRST-ONLY is non-nil, then only the first indent point is considered. If the previous nonblank line has no indent points beyond the column point starts at, then `tab-to-tab-stop' is done, if both FIRST-ONLY and UNINDENTED-OK are nil, otherwise nothing is done. If there isn't a previous nonblank line and UNINDENTED-OK is nil, call `tab-to-tab-stop'. See also `indent-relative-first-indent-point'. (fn &optional FIRST-ONLY UNINDENTED-OK)Vedit-tab-stops-map Keymap used in `edit-tab-stops'.Vedit-tab-stops-buffer Buffer whose tab stops are being edited. This matters if the variable `tab-stop-list' is local in that buffer.Fedit-tab-stops Edit the tab stops used by `tab-to-tab-stop'. Creates a buffer *Tab Stops* containing text describing the tab stops. A colon indicates a column where there is a tab stop. You can add or remove colons and then do \<edit-tab-stops-map>\[edit-tab-stops-note-changes] to make changes take effect.Fedit-tab-stops-note-changes Put edited tab stops into effect.Findent-next-tab-stop Return the next tab stop after COLUMN. If PREV is non-nil, return the previous one instead. (fn COLUMN &optional PREV)Findent-accumulate-tab-stops Get a list of tab stops before LIMIT (inclusive). (fn LIMIT)Ftab-to-tab-stop Insert spaces or tabs to next defined tab-stop column. The variable `tab-stop-list' is a list of columns at which there are tab stops. Use \[edit-tab-stops] to edit them interactively.Fmove-to-tab-stop Move point to next defined tab-stop column. The variable `tab-stop-list' is a list of columns at which there are tab stops. Use \[edit-tab-stops] to edit them interactively.Scharacters.elc Fuse-default-char-width-table Internal use only. Setup char-width-table appropriate for non-CJK language environment.Vchar-acronym-table Char table of acronyms for non-graphic characters.Fupdate-glyphless-char-display Make the setting of `glyphless-char-display-control' take effect. This function updates the char-table `glyphless-char-display', and is intended to be used in the `:set' attribute of the option `glyphless-char-display'.Scharprop.el Scp51932.elc Seucjp-ms.elc Sfontset.elc Fsetup-default-fontset Setup the default fontset.Fcreate-default-fontset Create the default fontset. Internal use only. Should be called at startup time.Fset-font-encoding Set arguments in `font-encoding-alist' (which see).Vx-font-name-charset-alist This variable has no meaning now. Just kept for backward compatibility.Fx-decompose-font-name Decompose PATTERN into XLFD fields and return a vector of the fields. The length of the vector is 12. The FOUNDRY and FAMILY fields are concatenated and stored in the first element of the vector. The REGISTRY and ENCODING fields are concatenated and stored in the last element of the vector. Return nil if PATTERN doesn't conform to XLFD.Fx-compose-font-name Compose X fontname from FIELDS. FIELDS is a vector of XLFD fields, of length 12. If a field is nil, wild-card letter `*' is embedded. Optional argument REDUCE exists just for backward compatibility, and is always ignored.Fx-must-resolve-font-name Like `x-resolve-font-name', but always return a font name. XLFD-FIELDS is a vector of XLFD (X Logical Font Description) fields. If no font matching XLFD-FIELDS is available, successively replace parts of the font name pattern with "*" until some font is found. Value is name of that font.Fx-complement-fontset-spec Complement elements of FONTLIST based on DEFAULT-SPEC. DEFAULT-SPEC is a font-spec object providing default font properties. FONTLIST is an alist of script names vs the corresponding font names. The font names are parsed and unspecified font properties are given from DEFAULT-SPEC.Ffontset-name-p Return non-nil if FONTSET is valid as fontset name. A valid fontset name should conform to XLFD (X Logical Font Description) with "fontset-SOMETHING" in `<CHARSET_REGISTRY>' field. A fontset alias name recorded in `fontset-alias-alist' is also a valid fontset name.Fgenerate-fontset-menu Return list to be appended to `x-fixed-font-alist'. Done when `mouse-set-font' is called.Ffontset-plain-name Return a plain and descriptive name of FONTSET.Vcharset-script-alist Alist of charsets vs the corresponding most appropriate scripts. This alist is used by the function `create-fontset-from-fontset-spec' to map charsets to scripts.Fcreate-fontset-from-fontset-spec Create a fontset from fontset specification string FONTSET-SPEC. FONTSET-SPEC is a string of the format: FONTSET-NAME[,SCRIPT-NAME0:FONT-NAME0,SCRIPT-NAME1:FONT-NAME1] ... Any number of SPACE, TAB, and NEWLINE can be put before and after commas. When a frame uses the fontset as the `font' parameter, the frame's default font name is derived from FONTSET-NAME by substituting "iso8859-1" for the tail part "fontset-XXX". But, if SCRIPT-NAMEn is "ascii", use the corresponding FONT-NAMEn as the default font name. Optional 2nd and 3rd arguments exist just for backward compatibility, and are ignored. It returns a name of the created fontset. For backward compatibility, SCRIPT-NAME may be a charset name, in which case, the corresponding script is decided by the variable `charset-script-alist' (which see).Fcreate-fontset-from-ascii-font Create a fontset from an ASCII font FONT. Optional 2nd arg RESOLVED-FONT is a resolved name of FONT. If omitted, `x-resolve-font-name' is called to get the resolved name. At this time, if FONT is not available, an error is signaled. Optional 3rd arg FONTSET-NAME is a string to be used in `<CHARSET_ENCODING>' fields of a new fontset name. If it is omitted, an appropriate name is generated automatically. It returns a name of the created fontset.Vstandard-fontset-spec String of fontset spec of the standard fontset. You have the biggest chance to display international characters with correct glyphs by using the standard fontset. See the documentation of `create-fontset-from-fontset-spec' for the format.Smule-cmds.elc Vmule-keymap Keymap for Mule (Multilingual environment) specific commands.Vmule-menu-keymap Keymap for Mule (Multilingual environment) menu specific commands.Fcoding-system-change-eol-conversion Return a coding system which differs from CODING-SYSTEM in EOL conversion. The returned coding system converts end-of-line by EOL-TYPE but text as the same way as CODING-SYSTEM. EOL-TYPE should be `unix', `dos', `mac', or nil. If EOL-TYPE is nil, the returned coding system detects how end-of-line is formatted automatically while decoding. EOL-TYPE can be specified by an integer 0, 1, or 2. They means `unix', `dos', and `mac' respectively. (fn CODING-SYSTEM EOL-TYPE)Fcoding-system-change-text-conversion Return a coding system which differs from CODING-SYSTEM in text conversion. The returned coding system converts text by CODING but end-of-line as the same way as CODING-SYSTEM. If CODING is nil, the returned coding system detects how text is formatted automatically while decoding. (fn CODING-SYSTEM CODING)Fcanonicalize-coding-system-name (fn NAME)Fcoding-system-from-name Return a coding system whose name matches with NAME (string or symbol). (fn NAME)Ftoggle-enable-multibyte-characters Change whether this buffer uses multibyte characters. With ARG, use multibyte characters if the ARG is positive. Note that this command does not convert the byte contents of the buffer; it only changes the way those bytes are interpreted. In general, therefore, this command *changes* the sequence of characters that the current buffer contains. We suggest you avoid using this command unless you know what you are doing. If you use it by mistake, and the buffer is now displayed wrong, use this command again to toggle back to the right mode. (fn &optional ARG)Fview-hello-file Display the HELLO file, which lists many languages and characters.Funiversal-coding-system-argument Execute an I/O command using the specified coding system. (fn CODING-SYSTEM)Fset-default-coding-systems Set default value of various coding systems to CODING-SYSTEM. This sets the following coding systems: o coding system of a newly created buffer o default coding system for subprocess I/O This also sets the following values: o default value used as `file-name-coding-system' for converting file names if CODING-SYSTEM is ASCII-compatible o default value for the command `set-terminal-coding-system' o default value for the command `set-keyboard-coding-system' if CODING-SYSTEM is ASCII-compatible (fn CODING-SYSTEM)Fprefer-coding-system Add CODING-SYSTEM at the front of the priority list for automatic detection. This also sets the following coding systems: o coding system of a newly created buffer o default coding system for subprocess I/O This also sets the following values: o default value used as `file-name-coding-system' for converting file names o default value for the command `set-terminal-coding-system' o default value for the command `set-keyboard-coding-system' If CODING-SYSTEM specifies a certain type of EOL conversion, the coding systems set by this function will use that type of EOL conversion. A coding system that requires automatic detection of text+encoding (e.g. undecided, unix) can't be preferred. To prefer, for instance, utf-8, say the following: (prefer-coding-system \='utf-8) (fn CODING-SYSTEM)Vsort-coding-systems-predicate If non-nil, a predicate function to sort coding systems. It is called with two coding systems, and should return t if the first one is "less" than the second. The function `sort-coding-systems' use it.Fsort-coding-systems Sort coding system list CODINGS by a priority of each coding system. Return the sorted list. CODINGS is modified by side effects. If a coding system is most preferred, it has the highest priority. Otherwise, coding systems that correspond to MIME charsets have higher priorities. Among them, a coding system included in the `coding-system' key of the current language environment has higher priority. See also the documentation of `language-info-alist'. If the variable `sort-coding-systems-predicate' (which see) is non-nil, it is used to sort CODINGS instead. (fn CODINGS)Ffind-coding-systems-region Return a list of proper coding systems to encode a text between FROM and TO. If FROM is a string, find coding systems in that instead of the buffer. All coding systems in the list can safely encode any multibyte characters in the text. If the text contains no multibyte characters, return a list of a single element `undecided'. (fn FROM TO)Ffind-coding-systems-string Return a list of proper coding systems to encode STRING. All coding systems in the list can safely encode any multibyte characters in STRING. If STRING contains no multibyte characters, return a list of a single element `undecided'. (fn STRING)Ffind-coding-systems-for-charsets Return a list of proper coding systems to encode characters of CHARSETS. CHARSETS is a list of character sets. This only finds coding systems of type `charset', whose `:charset-list' property includes all of CHARSETS (plus `ascii' for ASCII-compatible coding systems). It was used in older versions of Emacs, but is unlikely to be what you really want now. (fn CHARSETS)Ffind-multibyte-characters Find multibyte characters in the region specified by FROM and TO. If FROM is a string, find multibyte characters in the string. The return value is an alist of the following format: ((CHARSET COUNT CHAR ...) ...) where CHARSET is a character set, COUNT is a number of characters, CHARs are the characters found from the character set. Optional 3rd arg MAXCOUNT limits how many CHARs are put in the above list. Optional 4th arg EXCLUDES is a list of character sets to be ignored. (fn FROM TO &optional MAXCOUNT EXCLUDES)Fsearch-unencodable-char Search forward from point for a character that is not encodable. It asks which coding system to check. If such a character is found, set point after that character. Otherwise, don't move point. When called from a program, the value is the position of the unencodable character found, or nil if all characters are encodable. (fn CODING-SYSTEM)Vlast-coding-system-specified Most recent coding system explicitly specified by the user when asked. This variable is set whenever Emacs asks the user which coding system to use in order to write a file. If you set it to nil explicitly, then call `write-region', then afterward this variable will be non-nil only if the user was explicitly asked and specified a coding system.Vselect-safe-coding-system-accept-default-p If non-nil, a function to control the behavior of coding system selection. The meaning is the same as the argument ACCEPT-DEFAULT-P of the function `select-safe-coding-system' (which see). This variable overrides that argument.Fsanitize-coding-system-list Return a list of coding systems presumably more user-friendly than CODINGS. (fn CODINGS)Fselect-safe-coding-system-interactively Select interactively a coding system for the region FROM ... TO. FROM can be a string, as in `write-region'. CODINGS is the list of base coding systems known to be safe for this region, typically obtained with `find-coding-systems-region'. UNSAFE is a list of coding systems known to be unsafe for this region. REJECTED is a list of coding systems which were safe but for some reason were not recommended in the particular context. DEFAULT is the coding system to use by default in the query. (fn FROM TO CODINGS UNSAFE &optional REJECTED DEFAULT)Fselect-safe-coding-system Ask a user to select a safe coding system from candidates. The candidates of coding systems which can safely encode a text between FROM and TO are shown in a popup window. Among them, the most proper one is suggested as the default. The list of `buffer-file-coding-system' of the current buffer, the default `buffer-file-coding-system', and the most preferred coding system (if it corresponds to a MIME charset) is treated as the default coding system list. Among them, the first one that safely encodes the text is normally selected silently and returned without any user interaction. See also the command `prefer-coding-system'. However, the user is queried if the chosen coding system is inconsistent with what would be selected by `find-auto-coding' from coding cookies &c. if the contents of the region were read from a file. (That could lead to data corruption in a file subsequently re-visited and edited.) Optional 3rd arg DEFAULT-CODING-SYSTEM specifies a coding system or a list of coding systems to be prepended to the default coding system list. However, if DEFAULT-CODING-SYSTEM is a list and the first element is t, the cdr part is used as the default coding system list, i.e. current `buffer-file-coding-system', default `buffer-file-coding-system', and the most preferred coding system are not used. Optional 4th arg ACCEPT-DEFAULT-P, if non-nil, is a function to determine the acceptability of the silently selected coding system. It is called with that coding system, and should return nil if it should not be silently selected and thus user interaction is required. Optional 5th arg FILE is the file name to use for this purpose. That is different from `buffer-file-name' when handling `write-region' (for example). The variable `select-safe-coding-system-accept-default-p', if non-nil, overrides ACCEPT-DEFAULT-P. Kludgy feature: if FROM is a string, the string is the target text, and TO is ignored. (fn FROM TO &optional DEFAULT-CODING-SYSTEM ACCEPT-DEFAULT-P FILE)Fselect-message-coding-system Return a coding system to encode the outgoing message of the current buffer. It at first tries the first coding system found in these variables in this order: (1) local value of `buffer-file-coding-system' (2) value of `sendmail-coding-system' (3) value of `default-sendmail-coding-system' (4) default value of `buffer-file-coding-system' If the found coding system can't encode the current buffer, or none of them are bound to a coding system, it asks the user to select a proper coding system.Vlanguage-info-alist Alist of language environment definitions. Each element looks like: (LANGUAGE-NAME . ((KEY . INFO) ...)) where LANGUAGE-NAME is a string, the name of the language environment, KEY is a symbol denoting the kind of information, and INFO is the data associated with KEY. Meaningful values for KEY include documentation value is documentation of what this language environment is meant for, and how to use it. charset value is a list of the character sets mainly used by this language environment. sample-text value is an expression which is evalled to generate a line of text written using characters appropriate for this language environment. setup-function value is a function to call to switch to this language environment. exit-function value is a function to call to leave this language environment. coding-system value is a list of coding systems that are good for saving text written in this language environment. This list serves as suggestions to the user; in effect, as a kind of documentation. coding-priority value is a list of coding systems for this language environment, in order of decreasing priority. This is used to set up the coding system priority list when you switch to this language environment. nonascii-translation value is a charset of dimension one to use for converting a unibyte character to multibyte and vice versa. input-method value is a default input method for this language environment. features value is a list of features requested in this language environment. ctext-non-standard-encodings value is a list of non-standard encoding names used in extended segments of CTEXT. See the variable `ctext-non-standard-encodings' for more detail. The following key takes effect only when multibyte characters are globally disabled, i.e. the default value of `enable-multibyte-characters' is nil (which is an obsolete and deprecated use): unibyte-display value is a coding system to encode characters for the terminal. Characters in the range of 160 to 255 display not as octal escapes, but as non-ASCII characters in this language environment.Fget-language-info Return information listed under KEY for language environment LANG-ENV. KEY is a symbol denoting the kind of information. For a list of useful values for KEY and their meanings, see `language-info-alist'. (fn LANG-ENV KEY)Fset-language-info Modify part of the definition of language environment LANG-ENV. Specifically, this stores the information INFO under KEY in the definition of this language environment. KEY is a symbol denoting the kind of information. INFO is the value for that information. For a list of useful values for KEY and their meanings, see `language-info-alist'. (fn LANG-ENV KEY INFO)Fset-language-info-internal Internal use only. Arguments are the same as `set-language-info'. (fn LANG-ENV KEY INFO)Fset-language-info-alist Store ALIST as the definition of language environment LANG-ENV. ALIST is an alist of KEY and INFO values. See the documentation of `language-info-alist' for the meanings of KEY and INFO. Optional arg PARENTS is a list of parent menu names; it specifies where to put this language environment in the Describe Language Environment and Set Language Environment menus. For example, ("European") means to put this language environment in the European submenu in each of those two menus. (fn LANG-ENV ALIST &optional PARENTS)Fread-language-name Read a language environment name which has information for KEY. If KEY is nil, read any language environment. Prompt with PROMPT. DEFAULT is the default choice of language environment. This returns a language environment name as a string. (fn KEY PROMPT &optional DEFAULT)Vleim-list-file-name Name of LEIM list file. This file contains a list of libraries of Emacs input methods (LEIM) in the format of Lisp expression for registering each input method. Emacs loads this file at startup time.Vleim-list-header Header to be inserted in LEIM list file.Vleim-list-entry-regexp Regexp matching head of each entry in LEIM list file. See also the variable `leim-list-header'.Vupdate-leim-list-functions List of functions to call to update LEIM list file. Each function is called with one arg, LEIM directory name.Fupdate-leim-list-file Update LEIM list file in directories DIRS. (fn &rest DIRS)Vcurrent-input-method The current input method for multilingual text. If nil, that means no input method is activated now.Vcurrent-input-method-title Title string of the current input method shown in mode line.Vinput-method-history History list of input methods read from the minibuffer. Maximum length of the history list is determined by the value of `history-length', which see.Vdeactivate-current-input-method-function Function to call for deactivating the current input method. Every input method should set this to an appropriate value when activated. This function is called with no argument. This function should never change the value of `current-input-method'. It is set to nil by the function `deactivate-input-method'.Vdescribe-current-input-method-function Function to call for describing the current input method. This function is called with no argument.Vinput-method-alist Alist of input method names vs how to use them. Each element has the form: (INPUT-METHOD LANGUAGE-ENV ACTIVATE-FUNC TITLE DESCRIPTION ARGS...) See the function `register-input-method' for the meanings of the elements.Fregister-input-method Register INPUT-METHOD as an input method for language environment LANG-ENV. INPUT-METHOD and LANG-ENV are symbols or strings. ACTIVATE-FUNC is a function to call to activate this method. TITLE is a string to show in the mode line when this method is active. DESCRIPTION is a string describing this method and what it is good for. The ARGS, if any, are passed as arguments to ACTIVATE-FUNC. All told, the arguments to ACTIVATE-FUNC are INPUT-METHOD and the ARGS. This function is mainly used in the file "leim-list.el" which is created at Emacs build time, registering all Quail input methods contained in the Emacs distribution. In case you want to register a new Quail input method by yourself, be careful to use the same input method title as given in the third parameter of `quail-define-package'. (If the values are different, the string specified in this function takes precedence.) The commands `describe-input-method' and `list-input-methods' need these duplicated values to show some information about input methods without loading the relevant Quail packages. (fn INPUT-METHOD LANG-ENV ACTIVATE-FUNC TITLE DESCRIPTION &rest ARGS)Fread-input-method-name Read a name of input method from a minibuffer prompting with PROMPT. If DEFAULT is non-nil, use that as the default, and substitute it into PROMPT at the first `%s'. If INHIBIT-NULL is non-nil, null input signals an error. The return value is a string. (fn PROMPT &optional DEFAULT INHIBIT-NULL)Factivate-input-method Switch to input method INPUT-METHOD for the current buffer. If some other input method is already active, turn it off first. If INPUT-METHOD is nil, deactivate any current input method. (fn INPUT-METHOD)Fdeactivate-input-method Turn off the current input method.Fset-input-method Select and activate input method INPUT-METHOD for the current buffer. This also sets the default input method to the one you specify. If INPUT-METHOD is nil, this function turns off the input method, and also causes you to be prompted for a name of an input method the next time you invoke \[toggle-input-method]. When called interactively, the optional arg INTERACTIVE is non-nil, which marks the variable `default-input-method' as set for Custom buffers. To deactivate the input method interactively, use \[toggle-input-method]. To deactivate it programmatically, use `deactivate-input-method'. (fn INPUT-METHOD &optional INTERACTIVE)Vtoggle-input-method-active Non-nil inside `toggle-input-method'.Ftoggle-input-method Enable or disable multilingual text input method for the current buffer. Only one input method can be enabled at any time in a given buffer. The normal action is to enable an input method if none was enabled, and disable the current one otherwise. Which input method to enable can be determined in various ways--either the one most recently used, or the one specified by `default-input-method', or as a last resort by reading the name of an input method in the minibuffer. With a prefix argument ARG, read an input method name with the minibuffer and enable that one. The default is the most recent input method specified (not including the currently active input method, if any). When called interactively, the optional argument INTERACTIVE is non-nil, which marks the variable `default-input-method' as set for Custom buffers. (fn &optional ARG INTERACTIVE)Fdescribe-input-method Describe input method INPUT-METHOD. (fn INPUT-METHOD)Fdescribe-current-input-method Describe the input method currently in use. This is a subroutine for `describe-input-method'.Fread-multilingual-string Read a multilingual string from minibuffer, prompting with string PROMPT. The input method selected last time is activated in minibuffer. If optional second argument INITIAL-INPUT is non-nil, insert it in the minibuffer initially. Optional 3rd argument INPUT-METHOD specifies the input method to be activated instead of the one selected last time. It is a symbol or a string. (fn PROMPT &optional INITIAL-INPUT INPUT-METHOD)Vinput-method-exit-on-first-char This flag controls when an input method returns. Usually, the input method does not return while there's a possibility that it may find a different translation if a user types another key. But, if this flag is non-nil, the input method returns as soon as the current key sequence gets long enough to have some valid translation.Vinput-method-exit-on-invalid-key This flag controls the behavior of an input method on invalid key input. Usually, when a user types a key which doesn't start any character handled by the input method, the key is handled by turning off the input method temporarily. After that key, the input method is re-enabled. But, if this flag is non-nil, the input method is never back on.Fsetup-specified-language-environment Switch to a specified language environment.Freset-language-environment Reset multilingual environment of Emacs to the default status. The default status is as follows: The default value of `buffer-file-coding-system' is nil. The default coding system for process I/O is nil. The default value for the command `set-terminal-coding-system' is nil. The default value for the command `set-keyboard-coding-system' is nil. The order of priorities of coding systems are as follows: utf-8 iso-2022-7bit iso-latin-1 iso-2022-7bit-lock iso-2022-8bit-ss2 emacs-mule raw-textFset-display-table-and-terminal-coding-system Set up the display table and terminal coding system for LANGUAGE-NAME. (fn LANGUAGE-NAME &optional CODING-SYSTEM DISPLAY)Fset-language-environment Set up multilingual environment for using LANGUAGE-NAME. This sets the coding system priority and the default input method and sometimes other things. LANGUAGE-NAME should be a string which is the name of a language environment. For example, "Latin-1" specifies the character set for the major languages of Western Europe. If there is a prior value for `current-language-environment', this runs the hook `exit-language-environment-hook'. After setting up the new language environment, it runs `set-language-environment-hook'. (fn LANGUAGE-NAME)Fset-language-environment-coding-systems Do various coding system setups for language environment LANGUAGE-NAME. (fn LANGUAGE-NAME)Fset-language-environment-input-method Do various input method setups for language environment LANGUAGE-NAME. (fn LANGUAGE-NAME)Fset-language-environment-nonascii-translation Do unibyte/multibyte translation setup for language environment LANGUAGE-NAME. (fn LANGUAGE-NAME)Fset-language-environment-charset Do various charset setups for language environment LANGUAGE-NAME. (fn LANGUAGE-NAME)Fset-language-environment-unibyte Do various unibyte-mode setups for language environment LANGUAGE-NAME. (fn LANGUAGE-NAME)Fprinc-list Print all arguments with `princ', then print "\n". (fn &rest ARGS)Fdescribe-specified-language-support Describe how Emacs supports the specified language environment.Fdescribe-language-environment Describe how Emacs supports language environment LANGUAGE-NAME. (fn LANGUAGE-NAME)Vlocale-translation-file-name File name for the system's file of locale-name aliases, or nil if none.Vlocale-language-names Alist of locale regexps vs the corresponding languages and coding systems. Each element has this form: (LOCALE-REGEXP LANG-ENV CODING-SYSTEM) The first element whose LOCALE-REGEXP matches the start of a downcased locale specifies the LANG-ENV (language environment) and CODING-SYSTEM corresponding to that locale. If there is no appropriate language environment, the element may have this form: (LOCALE-REGEXP . LANG-ENV) In this case, LANG-ENV is one of generic language environments for an specific encoding such as "Latin-1" and "UTF-8".Vlocale-charset-language-names List of pairs of locale regexps and charset language names. The first element whose locale regexp matches the start of a downcased locale specifies the language name whose charset corresponds to that locale. This language name is used if the locale is not listed in `locale-language-names'.Vlocale-preferred-coding-systems List of pairs of locale regexps and preferred coding systems. The first element whose locale regexp matches the start of a downcased locale specifies the coding system to prefer when using that locale. This coding system is used if the locale specifies a specific charset.Flocale-name-match Search for KEY in ALIST, which should be a list of regexp-value pairs. Return the value corresponding to the first regexp that matches the start of KEY, or nil if there is no match. (fn KEY ALIST)Flocale-charset-match-p Whether charset names (strings) CHARSET1 and CHARSET2 are equivalent. Matching is done ignoring case and any hyphens and underscores in the names. E.g. `ISO_8859-1' and `iso88591' both match `iso-8859-1'. (fn CHARSET1 CHARSET2)Vlocale-charset-alist Coding system alist keyed on locale-style charset name. Used by `locale-charset-to-coding-system'.Flocale-charset-to-coding-system Find coding system corresponding to CHARSET. CHARSET is any sort of non-Emacs charset name, such as might be used in a locale codeset, or elsewhere. It is matched to a coding system first by case-insensitive lookup in `locale-charset-alist'. Then matches are looked for in the coding system list, treating case and the characters `-' and `_' as insignificant. The coding system base is returned. Thus, for instance, if charset "ISO8859-2", `iso-latin-2' is returned. (fn CHARSET)Flocale-translate Expand LOCALE according to `locale-translation-file-name', if possible. For example, translate "swedish" into "sv_SE.ISO8859-1". (fn LOCALE)Fset-locale-environment Set up multilingual environment for using LOCALE-NAME. This sets the language environment, the coding system priority, the default input method and sometimes other things. LOCALE-NAME should be a string which is the name of a locale supported by the system. Often it is of the form xx_XX.CODE, where xx is a language, XX is a country, and CODE specifies a character set and coding system. For example, the locale name "ja_JP.EUC" might name a locale for Japanese in Japan using the `japanese-iso-8bit' coding-system. The name may also have a modifier suffix, e.g. `@euro' or `@cyrillic'. If LOCALE-NAME is nil, its value is taken from the environment variables LC_ALL, LC_CTYPE and LANG (the first one that is set). The locale names supported by your system can typically be found in a directory named `/usr/share/locale' or `/usr/lib/locale'. LOCALE-NAME will be translated according to the table specified by `locale-translation-file-name'. If FRAME is non-nil, only set the keyboard coding system and the terminal coding system for the terminal of that frame, and don't touch session-global parameters like the language environment. See also `locale-charset-language-names', `locale-language-names', `locale-preferred-coding-systems' and `locale-coding-system'. (fn &optional LOCALE-NAME FRAME)Fdefine-char-code-property Define NAME as a character code property given by TABLE. TABLE is a char-table of purpose `char-code-property-table' with these extra slots: 1st: NAME. 2nd: Function to call to get a property value of a character. It is called with three arguments CHAR, VAL, and TABLE, where CHAR is a character, VAL is the value of (aref TABLE CHAR). 3rd: Function to call to put a property value of a character. It is called with the same arguments as above. 4th: Function to call to get a description string of a property value. It is called with one argument VALUE, a property value. 5th: Data used by the above functions. TABLE may be a name of file to load to build a char-table. The file should contain a call of `define-char-code-property' with a char-table of the above format as the argument TABLE. TABLE may also be nil, in which case no property value is pre-assigned. Optional 3rd argument DOCSTRING is a documentation string of the property. See also the documentation of `get-char-code-property' and `put-char-code-property'. (fn NAME TABLE &optional DOCSTRING)Vchar-code-property-table Char-table containing a property list of each character code. This table is used for properties not listed in `char-code-property-alist'. See also the documentation of `get-char-code-property' and `put-char-code-property'.Fget-char-code-property Return the value of CHAR's PROPNAME property. (fn CHAR PROPNAME)Fput-char-code-property Store CHAR's PROPNAME property with VALUE. It can be retrieved with `(get-char-code-property CHAR PROPNAME)'. (fn CHAR PROPNAME VALUE)Fchar-code-property-description Return a description string of character property PROP's value VALUE. If there's no description string for VALUE, return nil. (fn PROP VALUE)Fencoded-string-description Return a pretty description of STR that is encoded by CODING-SYSTEM. (fn STR CODING-SYSTEM)Fencode-coding-char Encode CHAR by CODING-SYSTEM and return the resulting string. If CODING-SYSTEM can't safely encode CHAR, return nil. The 3rd optional argument CHARSET, if non-nil, is a charset preferred on encoding. (fn CHAR CODING-SYSTEM &optional CHARSET)Funify-8859-on-encoding-mode Exists only for backwards compatibility. (fn &optional ARG)Funify-8859-on-decoding-mode Exists only for backwards compatibility. (fn &optional ARG)Vucs-names Hash table of cached CHAR-NAME keys to CHAR-CODE values.Fucs-names Return table of CHAR-NAME keys and CHAR-CODE values cached in `ucs-names'.Fmule--ucs-names-annotation (fn NAME)Fchar-from-name Return a character as a number from its Unicode name STRING. If optional IGNORE-CASE is non-nil, ignore case in STRING. Return nil if STRING does not name a character. (fn STRING &optional IGNORE-CASE)Fread-char-by-name Read a character by its Unicode name or hex number string. Display PROMPT and read a string that represents a character by its Unicode property `name' or `old-name'. This function returns the character as a number. You can type a few of the first letters of the Unicode name and use completion. If you type a substring of the Unicode name preceded by an asterisk `*' and use completion, it will show all the characters whose names include that substring, not necessarily at the beginning of the name. Accept a name like "CIRCULATION FUNCTION", a hexadecimal number like "2A10", or a number in hash notation (e.g., "#x2a10" for hex, "10r10768" for decimal, or "#o25020" for octal). Treat otherwise-ambiguous strings like "BED" (U+1F6CF) as names, not numbers. (fn PROMPT)Smule-conf.elc Smule-util.elc Fstore-substring Embed OBJ (string or character) at index IDX of STRING. (fn STRING IDX OBJ)Vtruncate-string-ellipsis String to use to indicate truncation. Serves as default value of ELLIPSIS argument to `truncate-string-to-width'.Ftruncate-string-to-width Truncate string STR to end at column END-COLUMN. The optional 3rd arg START-COLUMN, if non-nil, specifies the starting column; that means to return the characters occupying columns START-COLUMN ... END-COLUMN of STR. Both END-COLUMN and START-COLUMN are specified in terms of character display width in the current buffer; see also `char-width'. The optional 4th arg PADDING, if non-nil, specifies a padding character (which should have a display width of 1) to add at the end of the result if STR doesn't reach column END-COLUMN, or if END-COLUMN comes in the middle of a character in STR. PADDING is also added at the beginning of the result if column START-COLUMN appears in the middle of a character in STR. If PADDING is nil, no padding is added in these cases, so the resulting string may be narrower than END-COLUMN. If ELLIPSIS is non-nil, it should be a string which will replace the end of STR (including any padding) if it extends beyond END-COLUMN, unless the display width of STR is equal to or less than the display width of ELLIPSIS. If it is non-nil and not a string, then ELLIPSIS defaults to `truncate-string-ellipsis'. (fn STR END-COLUMN &optional START-COLUMN PADDING ELLIPSIS)Fnested-alist-p Return t if OBJ is a nested alist. Nested alist is a list of the form (ENTRY . BRANCHES), where ENTRY is any Lisp object, and BRANCHES is a list of cons cells of the form (KEY-ELEMENT . NESTED-ALIST). You can use a nested alist to store any Lisp object (ENTRY) for a key sequence KEYSEQ, where KEYSEQ is a sequence of KEY-ELEMENT. KEYSEQ can be a string, a vector, or a list. (fn OBJ)Fset-nested-alist Set ENTRY for KEYSEQ in a nested alist ALIST. Optional 4th arg LEN non-nil means the first LEN elements in KEYSEQ are considered. Optional 5th argument BRANCHES if non-nil is branches for a keyseq longer than KEYSEQ. See the documentation of `nested-alist-p' for more detail. (fn KEYSEQ ENTRY ALIST &optional LEN BRANCHES)Flookup-nested-alist Look up key sequence KEYSEQ in nested alist ALIST. Return the definition. Optional 3rd argument LEN specifies the length of KEYSEQ. Optional 4th argument START specifies index of the starting key. The returned value is normally a nested alist of which car part is the entry for KEYSEQ. If ALIST is not deep enough for KEYSEQ, return number which is how many key elements at the front of KEYSEQ it takes to reach a leaf in ALIST. Optional 5th argument NIL-FOR-TOO-LONG non-nil means return nil even if ALIST is not deep enough. (fn KEYSEQ ALIST &optional LEN START NIL-FOR-TOO-LONG)Fcoding-system-post-read-conversion Return the value of CODING-SYSTEM's `post-read-conversion' property. (fn CODING-SYSTEM)Fcoding-system-pre-write-conversion Return the value of CODING-SYSTEM's `pre-write-conversion' property. (fn CODING-SYSTEM)Fcoding-system-translation-table-for-decode Return the value of CODING-SYSTEM's `decode-translation-table' property. (fn CODING-SYSTEM)Fcoding-system-translation-table-for-encode Return the value of CODING-SYSTEM's `encode-translation-table' property. (fn CODING-SYSTEM)Fwith-coding-priority Execute BODY like `progn' with CODING-SYSTEMS at the front of priority list. CODING-SYSTEMS is a list of coding systems. See `set-coding-system-priority'. This affects the implicit sorting of lists of coding systems returned by operations such as `find-coding-systems-region'. (fn CODING-SYSTEMS &rest BODY)Fdetect-coding-with-priority Detect a coding system of the text between FROM and TO with PRIORITY-LIST. PRIORITY-LIST is an alist of coding categories vs the corresponding coding systems ordered by priority. (fn FROM TO PRIORITY-LIST)Fdetect-coding-with-language-environment Detect a coding system for the text between FROM and TO with LANG-ENV. The detection takes into account the coding system priorities for the language environment LANG-ENV. (fn FROM TO LANG-ENV)Fchar-displayable-p Return non-nil if we should be able to display CHAR. On a multi-font display, the test is only whether there is an appropriate font from the selected frame's fontset to display CHAR's charset in general. Since fonts may be specified on a per-character basis, this may not be accurate. (fn CHAR)Ffilepos-to-bufferpos--dos (fn BYTE F)Ffilepos-to-bufferpos Try to return the buffer position corresponding to a particular file position. The file position is given as a (0-based) BYTE count. The function presumes the file is encoded with CODING-SYSTEM, which defaults to `buffer-file-coding-system'. QUALITY can be: `approximate', in which case we may cut some corners to avoid excessive work. `exact', in which case we may end up re-(en/de)coding a large part of the file/buffer, this can be expensive and slow. nil, in which case we may return nil rather than an approximation. (fn BYTE &optional QUALITY CODING-SYSTEM)Fbufferpos-to-filepos Try to return the file byte corresponding to a particular buffer POSITION. Value is the file position given as a (0-based) byte count. The function presumes the file is encoded with CODING-SYSTEM, which defaults to `buffer-file-coding-system'. QUALITY can be: `approximate', in which case we may cut some corners to avoid excessive work. `exact', in which case we may end up re-(en/de)coding a large part of the file/buffer, this can be expensive and slow. nil, in which case we may return nil rather than an approximation. (fn POSITION &optional QUALITY CODING-SYSTEM)Smule.elc Vmule-version Version number and name of this version of MULE (multilingual environment).Vmule-version-date Distribution date of this version of MULE (multilingual environment).Fdefine-charset Define NAME (symbol) as a charset with DOCSTRING. The remaining arguments must come in pairs ATTRIBUTE VALUE. ATTRIBUTE may be any symbol. The following have special meanings, and one of `:code-offset', `:map', `:subset', `:superset' must be specified. `:short-name' VALUE must be a short string to identify the charset. If omitted, NAME is used. `:long-name' VALUE must be a string longer than `:short-name' to identify the charset. If omitted, the value of the `:short-name' attribute is used. `:dimension' VALUE must be an integer 0, 1, 2, or 3, specifying the dimension of code-points of the charsets. If omitted, it is calculated from the value of the `:code-space' attribute. `:code-space' VALUE must be a vector of length at most 8 specifying the byte code range of each dimension in this format: [ MIN-1 MAX-1 MIN-2 MAX-2 ... ] where MIN-N is the minimum byte value of Nth dimension of code-point, MAX-N is the maximum byte value of that. `:min-code' VALUE must be an integer specifying the minimum code point of the charset. If omitted, it is calculated from `:code-space'. VALUE may be a cons (HIGH . LOW), where HIGH is the most significant 16 bits of the code point and LOW is the least significant 16 bits. `:max-code' VALUE must be an integer specifying the maximum code point of the charset. If omitted, it is calculated from `:code-space'. VALUE may be a cons (HIGH . LOW), where HIGH is the most significant 16 bits of the code point and LOW is the least significant 16 bits. `:iso-final-char' VALUE must be a character in the range 32 to 127 (inclusive) specifying the final char of the charset for ISO-2022 encoding. If omitted, the charset can't be encoded by ISO-2022 based coding-systems. `:iso-revision-number' VALUE must be an integer in the range 0..63, specifying the revision number of the charset for ISO-2022 encoding. `:emacs-mule-id' VALUE must be an integer of 0, 129..255. If omitted, the charset can't be encoded by coding-systems of type `emacs-mule'. `:ascii-compatible-p' VALUE must be nil or t (default nil). If VALUE is t, the charset is compatible with ASCII, i.e. the first 128 code points map to ASCII. `:supplementary-p' VALUE must be nil or t. If the VALUE is t, the charset is supplementary, which means it is used only as a parent or a subset of some other charset, or it is provided just for backward compatibility. `:invalid-code' VALUE must be a nonnegative integer that can be used as an invalid code point of the charset. If the minimum code is 0 and the maximum code is greater than Emacs's maximum integer value, `:invalid-code' should not be omitted. `:code-offset' VALUE must be an integer added to the index number of a character to get the corresponding character code. `:map' VALUE must be vector or string. If it is a vector, the format is [ CODE-1 CHAR-1 CODE-2 CHAR-2 ... ], where CODE-n is a code-point of the charset, and CHAR-n is the corresponding character code. If it is a string, it is a name of file that contains the above information. Each line of the file must be this format: 0xXXX 0xYYY where XXX is a hexadecimal representation of CODE-n and YYY is a hexadecimal representation of CHAR-n. A line starting with `#' is a comment line. `:subset' VALUE must be a list: ( PARENT MIN-CODE MAX-CODE OFFSET ) PARENT is a parent charset. MIN-CODE and MAX-CODE specify the range of characters inherited from the parent. OFFSET is an integer value to add to a code point of the parent charset to get the corresponding code point of this charset. `:superset' VALUE must be a list of parent charsets. The charset inherits characters from them. Each element of the list may be a cons (PARENT . OFFSET), where PARENT is a parent charset, and OFFSET is an offset value to add to a code point of PARENT to get the corresponding code point of this charset. `:unify-map' VALUE must be vector or string. If it is a vector, the format is [ CODE-1 CHAR-1 CODE-2 CHAR-2 ... ], where CODE-n is a code-point of the charset, and CHAR-n is the corresponding Unicode character code. If it is a string, it is a name of file that contains the above information. The file format is the same as what described for `:map' attribute.Fload-with-code-conversion Execute a file of Lisp code named FILE whose absolute name is FULLNAME. The file contents are decoded before evaluation if necessary. If optional third arg NOERROR is non-nil, report no error if FILE doesn't exist. Print messages at start and end of loading unless optional fourth arg NOMESSAGE is non-nil. Return t if file exists.Fcharset-info Return a vector of information of CHARSET. This function is provided for backward compatibility. The elements of the vector are: CHARSET-ID, BYTES, DIMENSION, CHARS, WIDTH, DIRECTION, LEADING-CODE-BASE, LEADING-CODE-EXT, ISO-FINAL-CHAR, ISO-GRAPHIC-PLANE, REVERSE-CHARSET, SHORT-NAME, LONG-NAME, DESCRIPTION, PLIST. where CHARSET-ID is always 0. BYTES is always 0. DIMENSION is the number of bytes of a code-point of the charset: 1, 2, 3, or 4. CHARS is the number of characters in a dimension: 94, 96, 128, or 256. WIDTH is always 0. DIRECTION is always 0. LEADING-CODE-BASE is always 0. LEADING-CODE-EXT is always 0. ISO-FINAL-CHAR (character) is the final character of the corresponding ISO 2022 charset. If the charset is not assigned any final character, the value is -1. ISO-GRAPHIC-PLANE is always 0. REVERSE-CHARSET is always -1. SHORT-NAME (string) is the short name to refer to the charset. LONG-NAME (string) is the long name to refer to the charset DESCRIPTION (string) is the description string of the charset. PLIST (property list) may contain any type of information a user want to put and get by functions `put-charset-property' and `get-charset-property' respectively.Fcharset-id Always return 0. This is provided for backward compatibility.Fcharset-bytes Always return 0. This is provided for backward compatibility.Fget-charset-property Return the value of CHARSET's PROPNAME property. This is the last value stored with (put-charset-property CHARSET PROPNAME VALUE).Fput-charset-property Set CHARSETS's PROPNAME property to value VALUE. It can be retrieved with `(get-charset-property CHARSET PROPNAME)'.Fcharset-description Return description string of CHARSET.Fcharset-dimension Return dimension of CHARSET.Fcharset-chars Return number of characters contained in DIMENSION of CHARSET. DIMENSION defaults to the first dimension.Fcharset-iso-final-char Return ISO-2022 final character of CHARSET. Return -1 if charset isn't an ISO 2022 one.Fcharset-short-name Return short name of CHARSET.Fcharset-long-name Return long name of CHARSET.Fcharset-list Return list of all charsets ever defined.Fgeneric-char-p Always return nil. This is provided for backward compatibility.Vascii-case-table Case table for the ASCII character set.Vcoding-system-iso-2022-flags List of symbols that control ISO-2022 encoder/decoder. The value of the `:flags' attribute in the argument of the function `define-coding-system' must be one of them. If `long-form' is specified, use a long designation sequence on encoding for the charsets `japanese-jisx0208-1978', `chinese-gb2312', and `japanese-jisx0208'. The long designation sequence doesn't conform to ISO 2022, but is used by such coding systems as `compound-text'. If `ascii-at-eol' is specified, designate ASCII to g0 at end of line on encoding. If `ascii-at-cntl' is specified, designate ASCII to g0 before control codes and SPC on encoding. If `7-bit' is specified, use 7-bit code only on encoding. If `locking-shift' is specified, decode locking-shift code correctly on decoding, and use locking-shift to invoke a graphic element on encoding. If `single-shift' is specified, decode single-shift code correctly on decoding, and use single-shift to invoke a graphic element on encoding. See also `8-bit-level-4' specification. If `designation' is specified, decode designation code correctly on decoding, and use designation to designate a charset to a graphic element on encoding. If `revision' is specified, produce an escape sequence to specify revision number of a charset on encoding. Such an escape sequence is always correctly decoded on decoding. If `direction' is specified, decode ISO6429's code for specifying direction correctly, and produce the code on encoding. If `init-at-bol' is specified, on encoding, it is assumed that invocation and designation statuses are reset at each beginning of line even if `ascii-at-eol' is not specified; thus no codes for resetting them are produced. If `safe' is specified, on encoding, characters not supported by a coding are replaced with `?'. If `latin-extra' is specified, the code-detection routine assumes that a code specified in `latin-extra-code-table' (which see) is valid. If `composition' is specified, an escape sequence to specify composition sequence is correctly decoded on decoding, and is produced on encoding. If `euc-tw-shift' is specified, the EUC-TW specific shifting code is correctly decoded on decoding, and is produced on encoding. If `use-roman' is specified, JIS0201-1976-Roman is designated instead of ASCII. If `use-oldjis' is specified, JIS0208-1976 is designated instead of JIS0208-1983. If `8-bit-level-4' is specified, the decoder assumes the implementation level "4" for 8-bit codes which means that GL is identified as the single-shift area. The default implementation level for 8-bit code is "4A" which means that GR is identified as the single-shift area.Fdefine-coding-system Define NAME (a symbol) as a coding system with DOCSTRING and attributes. The remaining arguments must come in pairs ATTRIBUTE VALUE. ATTRIBUTE may be any symbol. A coding system specifies a rule to decode (i.e. to convert a byte sequence to a character sequence) and a rule to encode (the opposite of decoding). The decoding is done by at most 3 steps; the first is to convert a byte sequence to a character sequence by one of Emacs' internal routines specified by `:coding-type' attribute. The optional second step is to convert the character sequence (the result of the first step) by a translation table specified by `:decode-translation-table' attribute. The optional third step is to convert the above result by a Lisp function specified by `:post-read-conversion' attribute. The encoding is done by at most 3 steps, which are the reverse of the decoding steps. The optional first step converts a character sequence to another character sequence by a Lisp function specified by `:pre-write-conversion' attribute. The optional second step converts the above result by a translation table specified by `:encode-translation-table' attribute. The third step converts the above result to a byte sequence by one of the Emacs's internal routines specified by the `:coding-type' attribute. The following attributes have special meanings. Those labeled as "(required)" should not be omitted. `:mnemonic' (required) VALUE is a character to display on mode line for the coding system. `:coding-type' (required) VALUE specifies the format of byte sequence the coding system decodes and encodes to. It must be one of `charset', `utf-8', `utf-16', `iso-2022', `emacs-mule', `shift-jis', `ccl', `raw-text', `undecided'. If VALUE is `charset', the coding system is for handling a byte sequence in which each byte or every two- to four-byte sequence represents a character code of a charset specified by the `:charset-list' attribute. If VALUE is `utf-8', the coding system is for handling Unicode UTF-8 byte sequences. See also the documentation of the attribute `:bom'. If VALUE is `utf-16', the coding system is for handling Unicode UTF-16 byte sequences. See also the documentation of the attributes :bom and `:endian'. If VALUE is `iso-2022', the coding system is for handling byte sequences conforming to ISO/IEC 2022. See also the documentation of the attributes `:charset-list', `:flags', and `:designation'. If VALUE is `emacs-mule', the coding system is for handling byte sequences which Emacs 20 and 21 used for their internal representation of characters. If VALUE is `shift-jis', the coding system is for handling byte sequences of Shift_JIS format. See also the attribute `:charset-list'. If VALUE is `ccl', the coding system uses CCL programs to decode and encode byte sequences. The CCL programs must be specified by the attributes `:ccl-decoder' and `:ccl-encoder'. If VALUE is `raw-text', the coding system decodes byte sequences without any conversions. `:eol-type' VALUE is the EOL (end-of-line) format of the coding system. It must be one of `unix', `dos', `mac'. The symbol `unix' means Unix-like EOL (i.e., a single LF character), `dos' means DOS-like EOL (i.e., a sequence of CR followed by LF), and `mac' means Mac-like EOL (i.e., a single CR). If omitted, Emacs detects the EOL format automatically when decoding. `:charset-list' (required if `:coding-type' is `charset' or `shift-jis') VALUE must be a list of charsets supported by the coding system. If `coding-type:' is `charset', then on decoding and encoding by the coding system, if a character belongs to multiple charsets in the list, a charset that comes first in the list is selected. If `:coding-type' is `iso-2022', VALUE may be `iso-2022', which indicates that the coding system supports all ISO-2022 based charsets. If `:coding-type' is `shift-jis', VALUE must be a list of three to four charsets supported by Shift_JIS encoding scheme. The first charset (one dimension) is for code space 0x00..0x7F, the second (one dimension) for 0xA1..0xDF, the third (two dimension) for 0x8140..0xEFFC, the optional fourth (three dimension) for 0xF040..0xFCFC. If `:coding-type' is `emacs-mule', VALUE may be `emacs-mule', which indicates that the coding system supports all charsets that have the `:emacs-mule-id' property. `:ascii-compatible-p' If VALUE is non-nil, the coding system decodes all 7-bit bytes into the corresponding ASCII characters, and encodes all ASCII characters back to the corresponding 7-bit bytes. VALUE defaults to nil. `:decode-translation-table' VALUE must be a translation table to use on decoding. `:encode-translation-table' VALUE must be a translation table to use on encoding. `:post-read-conversion' VALUE must be a function to call after some text is inserted and decoded by the coding system itself and before any functions in `after-insert-functions' are called. This function is passed one argument: the number of characters in the text to convert, with point at the start of the text. The function should leave point unchanged, and should return the new character count. Note that this function should avoid reading from files or receiving text from subprocesses -- anything that could invoke decoding; if it must do so, it should bind `coding-system-for-read' to a value other than the current coding-system, to avoid infinite recursion. `:pre-write-conversion' VALUE must be a function to call after all functions in `write-region-annotate-functions' and `buffer-file-format' are called, and before the text is encoded by the coding system itself. This function should convert the whole text in the current buffer. For backward compatibility, this function is passed two arguments which can be ignored. Note that this function should avoid writing to files or sending text to subprocesses -- anything that could invoke encoding; if it must do so, it should bind `coding-system-for-write' to a value other than the current coding-system, to avoid infinite recursion. `:default-char' VALUE must be a character. On encoding, a character not supported by the coding system is replaced with VALUE. `:for-unibyte' VALUE non-nil means that visiting a file with the coding system results in a unibyte buffer. `:mime-charset' VALUE must be a symbol whose name is that of a MIME charset converted to lower case. `:mime-text-unsuitable' VALUE non-nil means the `:mime-charset' property names a charset which is unsuitable for the top-level media of type "text". `:flags' VALUE must be a list of symbols that control the ISO-2022 converter. Each must be a member of the list `coding-system-iso-2022-flags' (which see). This attribute is meaningful only when `:coding-type' is `iso-2022'. `:designation' VALUE must be a vector [G0-USAGE G1-USAGE G2-USAGE G3-USAGE]. GN-USAGE specifies the usage of graphic register GN as follows. If it is nil, no charset can be designated to GN. If it is a charset, the charset is initially designated to GN, and never used by the other charsets. If it is a list, the elements must be charsets, nil, 94, or 96. GN can be used by all the listed charsets. If the list contains 94, any iso-2022 charset whose code-space ranges are 94 long can be designated to GN. If the list contains 96, any charsets whose ranges are 96 long can be designated to GN. If the first element is a charset, that charset is initially designated to GN. This attribute is meaningful only when `:coding-type' is `iso-2022'. `:bom' This attributes specifies whether the coding system uses a "byte order mark". VALUE must be nil, t, or a cons cell of coding systems whose `:coding-type' is `utf-16' or `utf-8'. If the value is nil, on decoding, don't treat the first two-byte as BOM, and on encoding, don't produce BOM bytes. If the value is t, on decoding, skip the first two-byte as BOM, and on encoding, produce BOM bytes according to the value of `:endian'. If the value is a cons cell, on decoding, check the first two bytes. If they are 0xFE 0xFF, use the car part coding system of the value. If they are 0xFF 0xFE, use the cdr part coding system of the value. Otherwise, treat them as bytes for a normal character. On encoding, produce BOM bytes according to the value of `:endian'. This attribute is meaningful only when `:coding-type' is `utf-16' or `utf-8'. `:endian' VALUE must be `big' or `little' specifying big-endian and little-endian respectively. The default value is `big'. This attribute is meaningful only when `:coding-type' is `utf-16'. `:ccl-decoder' (required if :coding-type is `ccl') VALUE is a CCL program name defined by `define-ccl-program'. The CCL program reads a byte sequence and writes a character sequence as a decoding result. `:ccl-encoder' (required if :coding-type is `ccl') VALUE is a CCL program name defined by `define-ccl-program'. The CCL program reads a character sequence and writes a byte sequence as an encoding result. `:inhibit-null-byte-detection' VALUE non-nil means Emacs ignore null bytes on code detection. See the variable `inhibit-null-byte-detection'. This attribute is meaningful only when `:coding-type' is `undecided'. `:inhibit-iso-escape-detection' VALUE non-nil means Emacs ignores ISO-2022 escape sequences on code detection. See the variable `inhibit-iso-escape-detection'. This attribute is meaningful only when `:coding-type' is `undecided'. `:prefer-utf-8' VALUE non-nil means Emacs prefers UTF-8 on code detection for non-ASCII files. This attribute is meaningful only when `:coding-type' is `undecided'.Fcoding-system-doc-string Return the documentation string for CODING-SYSTEM.Fcoding-system-mnemonic Return the mnemonic character of CODING-SYSTEM. The mnemonic character of a coding system is used in mode line to indicate the coding system. If CODING-SYSTEM is nil, return ?=.Fcoding-system-type Return the coding type of CODING-SYSTEM. A coding type is a symbol indicating the encoding method of CODING-SYSTEM. See the function `define-coding-system' for more detail.Fcoding-system-charset-list Return list of charsets supported by CODING-SYSTEM. If CODING-SYSTEM supports all ISO-2022 charsets, return `iso-2022'. If CODING-SYSTEM supports all emacs-mule charsets, return `emacs-mule'.Fcoding-system-category Return a category symbol of CODING-SYSTEM.Fcoding-system-get Extract a value from CODING-SYSTEM's property list for property PROP. For compatibility with Emacs 20/21, this accepts old-style symbols like `mime-charset' as well as the current style like `:mime-charset'.Fcoding-system-eol-type-mnemonic Return the string indicating end-of-line format of CODING-SYSTEM.Fcoding-system-equal Return t if and only if CODING-SYSTEM-1 and CODING-SYSTEM-2 are identical. Two coding systems are identical if both symbols are equal or one is an alias of the other.Fadd-to-coding-system-list Add CODING-SYSTEM to variable `coding-system-list' while keeping it sorted.Fcoding-system-list Return a list of all existing non-subsidiary coding systems. If optional arg BASE-ONLY is non-nil, only base coding systems are listed. The value doesn't include subsidiary coding systems which are made from bases and aliases automatically for various end-of-line formats (e.g. iso-latin-1-unix, koi8-r-dos).Vchar-coding-system-table It exists just for backward compatibility, and the value is always nil.Ftransform-make-coding-system-args For internal use only. Transform XEmacs style args for `make-coding-system' to Emacs style. Value is a list of transformed arguments.Fmake-coding-system Define a new coding system CODING-SYSTEM (symbol). This function is provided for backward compatibility.Fmerge-coding-systems Fill in any unspecified aspects of coding system FIRST from SECOND. Return the resulting coding system.Fautoload-coding-system Define SYMBOL as a coding-system that is defined on demand. FORM is a form to evaluate to define the coding-system.Vbuffer-file-coding-system-explicit The file coding system explicitly specified for the current buffer. The value is a cons of coding systems for reading (decoding) and writing (encoding). Internal use only.Fset-buffer-file-coding-system Set the file coding-system of the current buffer to CODING-SYSTEM. This means that when you save the buffer, it will be converted according to CODING-SYSTEM. For a list of possible values of CODING-SYSTEM, use \[list-coding-systems]. If CODING-SYSTEM leaves the text conversion unspecified, or if it leaves the end-of-line conversion unspecified, FORCE controls what to do. If FORCE is nil, get the unspecified aspect (or aspects) from the buffer's previous `buffer-file-coding-system' value (if it is specified there). Otherwise, leave it unspecified. This marks the buffer modified so that the succeeding \[save-buffer] surely saves the buffer with CODING-SYSTEM. From a program, if you don't want to mark the buffer modified, specify t for NOMODIFY. If you know exactly what coding system you want to use, just set the variable `buffer-file-coding-system' directly.Frevert-buffer-with-coding-system Visit the current buffer's file again using coding system CODING-SYSTEM. For a list of possible values of CODING-SYSTEM, use \[list-coding-systems]. If CODING-SYSTEM leaves the text conversion unspecified, or if it leaves the end-of-line conversion unspecified, FORCE controls what to do. If FORCE is nil, get the unspecified aspect (or aspects) from the buffer's previous `buffer-file-coding-system' value (if it is specified there). Otherwise, determine it from the file contents as usual for visiting a file.Fset-file-name-coding-system Set coding system for decoding and encoding file names to CODING-SYSTEM. It actually just set the variable `file-name-coding-system' (which see) to CODING-SYSTEM.Vdefault-terminal-coding-system Default value for the terminal coding system. This is normally set according to the selected language environment. See also the command `set-terminal-coding-system'.Fset-terminal-coding-system Set coding system of terminal output to CODING-SYSTEM. All text output to TERMINAL will be encoded with the specified coding system. For a list of possible values of CODING-SYSTEM, use \[list-coding-systems]. The default is determined by the selected language environment or by the previous use of this command. TERMINAL may be a terminal object, a frame, or nil for the selected frame's terminal. The setting has no effect on graphical terminals.Vdefault-keyboard-coding-system Default value of the keyboard coding system. This is normally set according to the selected language environment. See also the command `set-keyboard-coding-system'.Fset-keyboard-coding-system Set coding system for keyboard input on TERMINAL to CODING-SYSTEM. For a list of possible values of CODING-SYSTEM, use \[list-coding-systems]. The default is determined by the selected language environment or by the previous use of this command. If CODING-SYSTEM is nil or the coding-type of CODING-SYSTEM is `raw-text', the decoding of keyboard input is disabled. TERMINAL may be a terminal object, a frame, or nil for the selected frame's terminal. The setting has no effect on graphical terminals.Vkeyboard-coding-system Specify coding system for keyboard input. If you set this on a terminal which can't distinguish Meta keys from 8-bit characters, you will have to use ESC to type Meta characters. See Info node `Terminal Coding' and Info node `Unibyte Mode'. This is set at startup based on the locale. Setting this variable directly does not take effect; use either \[customize] or \[set-keyboard-coding-system].Fset-buffer-process-coding-system Set coding systems for the process associated with the current buffer. DECODING is the coding system to be used to decode input from the process, ENCODING is the coding system to be used to encode output to the process. For a list of possible coding systems, use \[list-coding-systems].Fset-selection-coding-system Make CODING-SYSTEM used for communicating with other X clients. When sending or receiving text via cut_buffer, selection, and clipboard, the text is encoded or decoded by CODING-SYSTEM.Fset-next-selection-coding-system Use CODING-SYSTEM for next communication with other window system clients. This setting is effective for the next communication only.Fset-coding-priority Set priority of coding categories according to ARG. ARG is a list of coding categories ordered by priority. This function is provided for backward compatibility.Vctext-non-standard-encodings-alist Alist of non-standard encoding names vs the corresponding usages in CTEXT. It controls how extended segments of a compound text are handled by the coding system `compound-text-with-extensions'. Each element has the form (ENCODING-NAME CODING-SYSTEM N-OCTET CHARSET). ENCODING-NAME is an encoding name of an "extended segment". CODING-SYSTEM is the coding-system to encode (or decode) the characters into (or from) the extended segment. N-OCTET is the number of octets (bytes) that encodes a character in the segment. It can be 0 (meaning the number of octets per character is variable), 1, 2, 3, or 4. CHARSET is a character set containing characters that are encoded in the segment. It can be a list of character sets. On decoding CTEXT, all encoding names listed here are recognized. On encoding CTEXT, encoding names in the variable `ctext-non-standard-encodings' (which see) and in the information listed for the current language environment under the key `ctext-non-standard-encodings' are used.Vctext-non-standard-encodings List of non-standard encoding names used in extended segments of CTEXT. Each element must be one of the names listed in the variable `ctext-non-standard-encodings-alist' (which see).Fctext-post-read-conversion Decode LEN characters encoded as Compound Text with Extended Segments.Vctext-standard-encodings List of approved standard encodings (i.e. charsets) of X's Compound Text. Coding-system `compound-text-with-extensions' encodes a character belonging to any of those charsets using the normal ISO2022 designation sequence unless the current language environment or the variable `ctext-non-standard-encodings' decide to use an extended segment of CTEXT for that character. See also the documentation of `ctext-non-standard-encodings-alist'.Fctext-pre-write-conversion Encode characters between FROM and TO as Compound Text w/Extended Segments. If FROM is a string, generate a new temp buffer, insert the text, and convert it in the temporary buffer. Otherwise, convert in-place.Fauto-coding-regexp-alist-lookup Lookup `auto-coding-regexp-alist' for the contents of the current buffer. The value is a coding system is specified for the region FROM and TO, or nil.Vauto-coding-functions A list of functions which attempt to determine a coding system. Each function in this list should be written to operate on the current buffer, but should not modify it in any way. The buffer will contain the text of parts of the file. Each function should take one argument, SIZE, which says how many characters (starting from point) it should look at. The function might be called both when the file is visited and Emacs wants to decode its contents, and when the file's buffer is about to be saved and Emacs wants to determine how to encode its contents. If one of these functions succeeds in determining a coding system, it should return that coding system. Otherwise, it should return nil. If a file has a `coding:' tag, that takes precedence over these functions, so they won't be called at all.Vset-auto-coding-for-load Non-nil means respect a "unibyte: t" entry in file local variables. Emacs binds this variable to t when loading or byte-compiling Emacs Lisp files.Fauto-coding-alist-lookup Return the coding system specified by `auto-coding-alist' for FILENAME.Ffind-auto-coding Find a coding system for a file FILENAME of which SIZE bytes follow point. These bytes should include at least the first 1k of the file and the last 3k of the file, but the middle may be omitted. The function checks FILENAME against the variable `auto-coding-alist'. If FILENAME doesn't match any entries in the variable, it checks the contents of the current buffer following point against `auto-coding-regexp-alist'. If no match is found, it checks for a `coding:' tag in the first one or two lines following point. If no `coding:' tag is found, it checks any local variables list in the last 3K bytes out of the SIZE bytes. Finally, if none of these methods succeed, it checks to see if any function in `auto-coding-functions' gives a match. If a coding system is specified, the return value is a cons (CODING . SOURCE), where CODING is the specified coding system and SOURCE is a symbol `auto-coding-alist', `auto-coding-regexp-alist', `:coding', or `auto-coding-functions' indicating by what CODING is specified. Note that the validity of CODING is not checked; it's the caller's responsibility to check it. If nothing is specified, the return value is nil.Fset-auto-coding Return coding system for a file FILENAME of which SIZE bytes follow point. See `find-auto-coding' for how the coding system is found. Return nil if an invalid coding system is found. The variable `set-auto-coding-function' (which see) is set to this function by default.Fafter-insert-file-set-coding Set `buffer-file-coding-system' of current buffer after text is inserted. INSERTED is the number of characters that were inserted, as figured in the situation before this function. Return the number of characters inserted, as figured in the situation after. The two numbers can be different if the buffer has become unibyte. The optional second arg VISIT non-nil means that we are visiting a file.Ffind-new-buffer-file-coding-system Return a coding system for a buffer when a file of CODING is inserted. The local variable `buffer-file-coding-system' of the current buffer is set to the returned value. Return nil if there's no need to set `buffer-file-coding-system'.Fmodify-coding-system-alist Modify one of look up tables for finding a coding system on I/O operation. There are three of such tables, `file-coding-system-alist', `process-coding-system-alist', and `network-coding-system-alist'. TARGET-TYPE specifies which of them to modify. If it is `file', it affects `file-coding-system-alist' (which see). If it is `process', it affects `process-coding-system-alist' (which see). If it is `network', it affects `network-coding-system-alist' (which see). REGEXP is a regular expression matching a target of I/O operation. The target is a file name if TARGET-TYPE is `file', a program name if TARGET-TYPE is `process', or a network service name or a port number to connect to if TARGET-TYPE is `network'. CODING-SYSTEM is a coding system to perform code conversion on the I/O operation, or a cons cell (DECODING . ENCODING) specifying the coding systems for decoding and encoding respectively, or a function symbol which, when called, returns such a cons cell.Fdecode-coding-inserted-region Decode the region between FROM and TO as if it is read from file FILENAME. The idea is that the text between FROM and TO was just inserted somehow. Optional arguments VISIT, BEG, END, and REPLACE are the same as those of the function `insert-file-contents'. Part of the job of this function is setting `buffer-undo-list' appropriately.Frecode-region Re-decode the region (previously decoded by CODING) by NEW-CODING.Fmake-translation-table Make a translation table from arguments. A translation table is a char table intended for character translation in CCL programs. Each argument is a list of elements of the form (FROM . TO), where FROM is a character to be translated to TO. The arguments and forms in each argument are processed in the given order, and if a previous form already translates TO to some other character, say TO-ALT, FROM is also translated to TO-ALT.Fmake-translation-table-from-vector Make translation table from decoding vector VEC. VEC is an array of 256 elements to map unibyte codes to multibyte characters. Elements may be nil for undefined code points.Fmake-translation-table-from-alist Make translation table from N<->M mapping in ALIST. ALIST is an alist, each element has the form (FROM . TO). FROM and TO are a character or a vector of characters. If FROM is a character, that character is translated to TO. If FROM is a vector of characters, that sequence is translated to TO. The first extra-slot of the value is a translation table for reverse mapping. FROM and TO may be nil. If TO is nil, the translation from FROM to nothing is defined in the translation table and that element is ignored in the reverse map. If FROM is nil, the translation from TO to nothing is defined in the reverse map only. A vector of length zero has the same meaning as specifying nil.Fdefine-translation-table Define SYMBOL as the name of translation table made by ARGS. This sets up information so that the table can be used for translations in a CCL program. If the first element of ARGS is a char-table whose purpose is `translation-table', just define SYMBOL to name it. (Note that this function does not bind SYMBOL.) Any other ARGS should be suitable as arguments of the function `make-translation-table' (which see). This function sets properties `translation-table' and `translation-table-id' of SYMBOL to the created table itself and the identification number of the table respectively. It also registers the table in `translation-table-vector'.Ftranslate-region From START to END, translate characters according to TABLE. TABLE is a string or a char-table. If TABLE is a string, the Nth character in it is the mapping for the character with code N. If TABLE is a char-table, the element for character N is the mapping for the character with code N. It returns the number of characters changed.Fwith-category-table Execute BODY like `progn' with TABLE the current category table. The category table of the current buffer is saved, BODY is evaluated, then the saved table is restored, even in case of an abnormal exit. Value is what BODY returns.Fdefine-translation-hash-table Define SYMBOL as the name of the hash translation TABLE for use in CCL. Analogous to `define-translation-table', but updates `translation-hash-table-vector' and the table is for use in the CCL `lookup-integer' and `lookup-character' functions.Fsgml-xml-auto-coding-function Determine whether the buffer is XML, and if so, its encoding. This function is intended to be added to `auto-coding-functions'.Fsgml-html-meta-auto-coding-function If the buffer has an HTML meta tag, use it to determine encoding. This function is intended to be added to `auto-coding-functions'.Fxml-find-file-coding-system Determine the coding system of an XML file without a declaration. Strictly speaking, the file should be utf-8, but mistakes are made, and there are genuine cases where XML fragments are saved, with the encoding properly specified in a master document, or added by processing software.Sucs-normalize.elc Vucs-normalize-decomposition-pair-to-primary-composite Hash table of decomposed pair to primary composite. Note that Hangul are excluded.Fucs-normalize-primary-composite Convert DECOMPOSITION-PAIR to primary composite using COMPOSITION-PREDICATE.Vucs-normalize-combining-chars-regexp Regular expression to match sequence of combining characters.Fucs-normalize-sort Sort by canonical combining class of CHARS.Fucs-normalize-compose-chars Compose CHARS by COMPOSITION-PREDICATE. CHARS must be sorted and normalized in starter-combining pairs.Fucs-normalize-block-compose-chars Try composing CHARS by COMPOSITION-PREDICATE. If COMPOSITION-PREDICATE is not given, then do nothing.Fucs-normalize-block Normalize region FROM TO, by sorting the region with canonical-cc. If DECOMPOSITION-TRANSLATION-TABLE is given, translate region before sorting. If COMPOSITION-PREDICATE is given, then compose the region by using it.Fucs-normalize-region Normalize region from FROM to TO. QUICK-CHECK-REGEXP is applied for searching the region. TRANSLATION-TABLE will be used to decompose region. COMPOSITION-PREDICATE will be used to compose region.Fucs-normalize-NFD-region Normalize the current region by the Unicode NFD.Fucs-normalize-NFD-string Normalize the string STR by the Unicode NFD.Fucs-normalize-NFC-region Normalize the current region by the Unicode NFC.Fucs-normalize-NFC-string Normalize the string STR by the Unicode NFC.Fucs-normalize-NFKD-region Normalize the current region by the Unicode NFKD.Fucs-normalize-NFKD-string Normalize the string STR by the Unicode NFKD.Fucs-normalize-NFKC-region Normalize the current region by the Unicode NFKC.Fucs-normalize-NFKC-string Normalize the string STR by the Unicode NFKC.Fucs-normalize-HFS-NFD-region Normalize the current region by the Unicode NFD and Mac OS's HFS Plus.Fucs-normalize-HFS-NFD-string Normalize the string STR by the Unicode NFD and Mac OS's HFS Plus.Fucs-normalize-HFS-NFC-region Normalize the current region by the Unicode NFC and Mac OS's HFS Plus.Fucs-normalize-HFS-NFC-string Normalize the string STR by the Unicode NFC and Mac OS's HFS Plus.Sisearch.elc Visearch-mode-hook Function(s) to call after starting up an incremental search.Visearch-update-post-hook Function(s) to call after isearch has found matches in the buffer.Visearch-mode-end-hook Function(s) to call after terminating an incremental search. When these functions are called, `isearch-mode-end-hook-quit' is non-nil if the user quits the search.Visearch-mode-end-hook-quit Non-nil while running `isearch-mode-end-hook' if the user quits the search.Visearch-message-function Function to call to display the search prompt. If nil, use function `isearch-message'.Visearch-wrap-function Function to call to wrap the search when search is failed. If nil, move point to the beginning of the buffer for a forward search, or to the end of the buffer for a backward search.Visearch-push-state-function Function to save a function restoring the mode-specific Isearch state to the search status stack.Visearch-filter-predicate Predicate to filter hits of Isearch and replace commands. Isearch hits that don't satisfy the predicate will be skipped. The value should be a function of two arguments; it will be called with the the positions of the start and the end of the text matched by Isearch and replace commands. If this function returns nil, Isearch and replace commands will continue searching without stopping at resp. replacing this match. If you use `add-function' to modify this variable, you can use the `isearch-message-prefix' advice property to specify the prefix string displayed in the search message.Vsearch-ring List of search string sequences.Vregexp-search-ring List of regular expression search string sequences.Vsearch-ring-yank-pointer Index in `search-ring' of last string reused. It is nil if none yet.Vregexp-search-ring-yank-pointer Index in `regexp-search-ring' of last string reused. It is nil if none yet.Visearch-help-map Keymap for characters following the Help key for Isearch mode.Fisearch-help-for-help-internal-doc You have typed %THIS-KEY%, the help character. Type a Help option: (Type \<help-map>\[help-quit] to exit the Help command.) b Display all Isearch key bindings. k KEYS Display full documentation of Isearch key sequence. m Display documentation of Isearch mode. You can't type here other help keys available in the global help map, but outside of this help window when you type them in Isearch mode, they exit Isearch mode before displaying global help.Fisearch-help-for-help-internal Help command.Fisearch-help-for-help Display Isearch help menu.Fisearch-describe-bindings Show a list of all keys defined in Isearch mode, and their definitions. This is like `describe-bindings', but displays only Isearch keys.Fisearch-describe-key Display documentation of the function invoked by isearch key.Fisearch-describe-mode Display documentation of Isearch mode.Visearch-mode-map Keymap for `isearch-mode'.Vminibuffer-local-isearch-map Keymap for editing Isearch strings in the minibuffer.Visearch-regexp-function Regexp-based search mode for words/symbols. If the value is a function (e.g. `isearch-symbol-regexp'), it is called to convert a plain search string to a regexp used by regexp search functions. The symbol property `isearch-message-prefix' put on this function specifies the prefix string displayed in the search message. This variable is set and changed during isearch. To change the default behavior used for searches, see `search-default-mode' instead.Visearch-lax-whitespace If non-nil, a space will match a sequence of whitespace chars. When you enter a space or spaces in ordinary incremental search, it will match any sequence matched by the regexp defined by the variable `search-whitespace-regexp'. If the value is nil, each space you type matches literally, against one space. You can toggle the value of this variable by the command `isearch-toggle-lax-whitespace'.Visearch-regexp-lax-whitespace If non-nil, a space will match a sequence of whitespace chars. When you enter a space or spaces in regexp incremental search, it will match any sequence matched by the regexp defined by the variable `search-whitespace-regexp'. If the value is nil, each space you type matches literally, against one space. You can toggle the value of this variable by the command `isearch-toggle-lax-whitespace'.Visearch-cmds Stack of search status elements. Each element is an `isearch--state' struct where the slots are [STRING MESSAGE POINT SUCCESS FORWARD OTHER-END WORD ERROR WRAPPED BARRIER CASE-FOLD-SEARCH POP-FUN]Visearch-barrier Recorded minimum/maximal point for the current search.Fisearch-forward Do incremental search forward. With a prefix argument, do an incremental regular expression search instead. \<isearch-mode-map> As you type characters, they add to the search string and are found. The following non-printing keys are bound in `isearch-mode-map'. Type \[isearch-delete-char] to cancel last input item from end of search string. Type \[isearch-exit] to exit, leaving point at location found. Type LFD (C-j) to match end of line. Type \[isearch-repeat-forward] to search again forward, \[isearch-repeat-backward] to search again backward. Type \[isearch-yank-word-or-char] to yank next word or character in buffer onto the end of the search string, and search for it. Type \[isearch-del-char] to delete character from end of search string. Type \[isearch-yank-char] to yank char from buffer onto end of search string and search for it. Type \[isearch-yank-line] to yank rest of line onto end of search string and search for it. Type \[isearch-yank-kill] to yank the last string of killed text. Type \[isearch-yank-pop] to replace string just yanked into search prompt with string killed before it. Type \[isearch-quote-char] to quote control character to search for it. Type \[isearch-char-by-name] to add a character to search by Unicode name, with completion. \[isearch-abort] while searching or when search has failed cancels input back to what has been found successfully. \[isearch-abort] when search is successful aborts and moves point to starting point. If you try to exit with the search string still empty, it invokes nonincremental search. Type \[isearch-toggle-case-fold] to toggle search case-sensitivity. Type \[isearch-toggle-invisible] to toggle search in invisible text. Type \[isearch-toggle-regexp] to toggle regular-expression mode. Type \[isearch-toggle-word] to toggle word mode. Type \[isearch-toggle-symbol] to toggle symbol mode. Type \[isearch-toggle-char-fold] to toggle character folding. Type \[isearch-toggle-lax-whitespace] to toggle whitespace matching. In incremental searches, a space or spaces normally matches any whitespace defined by the variable `search-whitespace-regexp'; see also the variables `isearch-lax-whitespace' and `isearch-regexp-lax-whitespace'. Type \[isearch-edit-string] to edit the search string in the minibuffer. Also supported is a search ring of the previous 16 search strings. Type \[isearch-ring-advance] to search for the next item in the search ring. Type \[isearch-ring-retreat] to search for the previous item in the search ring. Type \[isearch-complete] to complete the search string using the search ring. Type \[isearch-query-replace] to run `query-replace' with string to replace from last search string. Type \[isearch-query-replace-regexp] to run `query-replace-regexp' with the last search string. Type \[isearch-occur] to run `occur' that shows the last search string. Type \[isearch-highlight-regexp] to run `highlight-regexp' that highlights the last search string. Type \[isearch-describe-bindings] to display all Isearch key bindings. Type \[isearch-describe-key] to display documentation of Isearch key. Type \[isearch-describe-mode] to display documentation of Isearch mode. If an input method is turned on in the current buffer, that input method is also active while you are typing characters to search. To toggle the input method, type \[isearch-toggle-input-method]. It also toggles the input method in the current buffer. To use a different input method for searching, type \[isearch-toggle-specified-input-method], and specify an input method you want to use. The above keys, bound in `isearch-mode-map', are often controlled by options; do \[apropos] on search-.* to find them. Other control and meta characters terminate the search and are then executed normally (depending on `search-exit-option'). Likewise for function keys and mouse button events. If this function is called non-interactively with a nil NO-RECURSIVE-EDIT, it does not return to the calling function until the search is done. See the function `isearch-mode' for more information. (fn &optional REGEXP-P NO-RECURSIVE-EDIT)Fisearch-forward-regexp Do incremental search forward for regular expression. With a prefix argument, do a regular string search instead. Like ordinary incremental search except that your input is treated as a regexp. See the command `isearch-forward' for more information. In incremental searches, a space or spaces normally matches any whitespace defined by the variable `search-whitespace-regexp'. To search for a literal space and nothing else, enter C-q SPC. To toggle whitespace matching, use `isearch-toggle-lax-whitespace'. This command does not support character folding. (fn &optional NOT-REGEXP NO-RECURSIVE-EDIT)Fisearch-forward-word Do incremental search forward for a sequence of words. With a prefix argument, do a regular string search instead. Like ordinary incremental search except that your input is treated as a sequence of words without regard to how the words are separated. See the command `isearch-forward' for more information. This command does not support character folding, and lax space matching has no effect on it. (fn &optional NOT-WORD NO-RECURSIVE-EDIT)Fisearch-forward-symbol Do incremental search forward for a symbol. The prefix argument is currently unused. Like ordinary incremental search except that your input is treated as a symbol surrounded by symbol boundary constructs \_< and \_>. See the command `isearch-forward' for more information. This command does not support character folding, and lax space matching has no effect on it. (fn &optional NOT-SYMBOL NO-RECURSIVE-EDIT)Fisearch-backward Do incremental search backward. With a prefix argument, do a regular expression search instead. See the command `isearch-forward' for more information. (fn &optional REGEXP-P NO-RECURSIVE-EDIT)Fisearch-backward-regexp Do incremental search backward for regular expression. With a prefix argument, do a regular string search instead. Like ordinary incremental search except that your input is treated as a regexp. See the command `isearch-forward-regexp' for more information. (fn &optional NOT-REGEXP NO-RECURSIVE-EDIT)Fisearch-forward-symbol-at-point Do incremental search forward for a symbol found near point. Like ordinary incremental search except that the symbol found at point is added to the search string initially as a regexp surrounded by symbol boundary constructs \_< and \_>. See the command `isearch-forward-symbol' for more information.Fisearch-mode Start Isearch minor mode. It is called by the function `isearch-forward' and other related functions. The non-nil arg FORWARD means searching in the forward direction. The non-nil arg REGEXP does an incremental regular expression search. The arg OP-FUN is a function to be called after each input character is processed. (It is not called after characters that exit the search.) When the arg RECURSIVE-EDIT is non-nil, this function behaves modally and does not return to the calling function until the search is completed. To behave this way it enters a recursive-edit and exits it when done isearching. The arg REGEXP-FUNCTION, if non-nil, should be a function. It is used to set the value of `isearch-regexp-function'. (fn FORWARD &optional REGEXP OP-FUN RECURSIVE-EDIT REGEXP-FUNCTION)Fisearch-update This is called after every isearch command to update the display. The second last thing it does is to run `isearch-update-post-hook'. The last thing is to trigger a new round of lazy highlighting.Fisearch-done Exit Isearch mode. For successful search, pass no args. For a failing search, NOPUSH is t. For going to the minibuffer to edit the search string, NOPUSH is t and EDIT is t. (fn &optional NOPUSH EDIT)Fisearch-update-ring Add STRING to the beginning of the search ring. REGEXP if non-nil says use the regexp search ring. (fn STRING &optional REGEXP)Fisearch--state-p--cmacro compiler-macro for inlining `isearch--state-p'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-p (fn CL-X)Fisearch--state-string--cmacro compiler-macro for inlining `isearch--state-string'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-string Access slot "string" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--state-message--cmacro compiler-macro for inlining `isearch--state-message'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-message Access slot "message" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--state-point--cmacro compiler-macro for inlining `isearch--state-point'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-point Access slot "point" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--state-success--cmacro compiler-macro for inlining `isearch--state-success'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-success Access slot "success" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--state-forward--cmacro compiler-macro for inlining `isearch--state-forward'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-forward Access slot "forward" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--state-other-end--cmacro compiler-macro for inlining `isearch--state-other-end'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-other-end Access slot "other-end" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--state-word--cmacro compiler-macro for inlining `isearch--state-word'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-word Access slot "word" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--state-error--cmacro compiler-macro for inlining `isearch--state-error'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-error Access slot "error" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--state-wrapped--cmacro compiler-macro for inlining `isearch--state-wrapped'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-wrapped Access slot "wrapped" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--state-barrier--cmacro compiler-macro for inlining `isearch--state-barrier'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-barrier Access slot "barrier" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--state-case-fold-search--cmacro compiler-macro for inlining `isearch--state-case-fold-search'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-case-fold-search Access slot "case-fold-search" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--state-pop-fun--cmacro compiler-macro for inlining `isearch--state-pop-fun'. (fn CL-WHOLE-ARG CL-X)Fisearch--state-pop-fun Access slot "pop-fun" of `(isearch--state (:constructor nil) (:copier nil) (:constructor isearch--get-state (&aux (string isearch-string) (message isearch-message) (point (point)) (success isearch-success) (forward isearch-forward) (other-end isearch-other-end) (word isearch-regexp-function) (error isearch-error) (wrapped isearch-wrapped) (barrier isearch-barrier) (case-fold-search isearch-case-fold-search) (pop-fun (if isearch-push-state-function (funcall isearch-push-state-function))))))' struct CL-X. (fn CL-X)Fisearch--get-state Constructor for objects of type `isearch--state'.Fisearch--set-state (fn CMD)Fisearch-exit Exit search normally. However, if this is the first command after starting incremental search and `search-nonincremental-instead' is non-nil, do a nonincremental search instead via `isearch-edit-string'.Fisearch-fail-pos Return position of first mismatch in search string, or nil if none. If MSG is non-nil, use variable `isearch-message', otherwise `isearch-string'. (fn &optional MSG)Visearch-new-regexp-function Holds the next `isearch-regexp-function' inside `with-isearch-suspended'. If this is set inside code wrapped by the macro `with-isearch-suspended', then the value set will be used as the `isearch-regexp-function' once isearch resumes.Fwith-isearch-suspended Exit Isearch mode, run BODY, and reinvoke the pending search. You can update the global isearch variables by setting new values to `isearch-new-string', `isearch-new-message', `isearch-new-forward', `isearch-new-regexp-function', `isearch-new-case-fold', `isearch-new-nonincremental'. (fn &rest BODY)Fisearch-edit-string Edit the search string in the minibuffer. The following additional command keys are active while editing. \<minibuffer-local-isearch-map> \[exit-minibuffer] to resume incremental searching with the edited string. \[isearch-forward-exit-minibuffer] to resume isearching forward. \[isearch-reverse-exit-minibuffer] to resume isearching backward. \[isearch-complete-edit] to complete the search string using the search ring.Fisearch-forward-exit-minibuffer Resume isearching forward from the minibuffer that edits the search string.Fisearch-reverse-exit-minibuffer Resume isearching backward from the minibuffer that edits the search string.Fisearch-cancel Terminate the search and go back to the starting point.Fisearch-abort Abort incremental search mode if searching is successful, signaling quit. Otherwise, revert to previous successful search and continue searching. Use `isearch-exit' to quit without signaling.Fisearch-repeat (fn DIRECTION)Fisearch-repeat-forward Repeat incremental search forwards.Fisearch-repeat-backward Repeat incremental search backwards.Fisearch-define-mode-toggle Define a command called `isearch-toggle-MODE' and bind it to `M-s KEY'. The first line of the command's docstring is auto-generated, the remainder may be provided in DOCSTRING. If FUNCTION is a symbol, this command first toggles the value of `isearch-regexp-function' between nil and FUNCTION. Also set the `isearch-message-prefix' property of FUNCTION. The command then executes BODY and updates the isearch prompt. (fn MODE KEY FUNCTION &optional DOCSTRING &rest BODY)Fisearch-toggle-word Toggle word searching on or off. Turning on word search turns off regexp mode.Fisearch-toggle-symbol Toggle symbol searching on or off. Turning on symbol search turns off regexp mode.Fisearch-toggle-char-fold Toggle char-fold searching on or off. Turning on character-folding turns off regexp mode.Fisearch-toggle-regexp Toggle regexp searching on or off.Fisearch--momentary-message Print STRING at the end of the isearch prompt for 1 second (fn STRING)Fisearch-toggle-lax-whitespace Toggle lax-whitespace searching on or off. In ordinary search, toggles the value of the variable `isearch-lax-whitespace'. In regexp search, toggles the value of the variable `isearch-regexp-lax-whitespace'.Fisearch-toggle-case-fold Toggle case-fold searching on or off. Toggles the value of the variable `isearch-case-fold-search'.Fisearch-toggle-invisible Toggle invisible searching on or off. This determines whether to search inside invisible text or not. Toggles the variable `isearch-invisible' between values nil and a non-nil value of the option `search-invisible' (or `open' if `search-invisible' is nil).Fword-search-regexp Return a regexp which matches words, ignoring punctuation. Given STRING, a string of words separated by word delimiters, compute a regexp that matches those exact words separated by arbitrary punctuation. If the string begins or ends in whitespace, the beginning or the end of the string matches arbitrary whitespace. Otherwise if LAX is non-nil, the beginning or the end of the string need not match a word boundary. Used in `word-search-forward', `word-search-backward', `word-search-forward-lax', `word-search-backward-lax'. (fn STRING &optional LAX)Fword-search-backward Search backward from point for STRING, ignoring differences in punctuation. Set point to the beginning of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not begin before that position. A value of nil means search to the beginning of the accessible portion of the buffer. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, position at limit of search and return nil. Optional fourth argument COUNT, if a positive number, means to search for COUNT successive occurrences. If COUNT is negative, search forward, instead of backward, for -COUNT occurrences. A value of nil means the same as 1. With COUNT positive, the match found is the COUNTth to last one (or last, if COUNT is 1 or nil) in the buffer located entirely before the origin of the search; correspondingly with COUNT negative. Relies on the function `word-search-regexp' to convert a sequence of words in STRING to a regexp used to search words without regard to punctuation. This command does not support character folding, and lax space matching has no effect on it. (fn STRING &optional BOUND NOERROR COUNT)Fword-search-forward Search forward from point for STRING, ignoring differences in punctuation. Set point to the end of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not end after that position. A value of nil means search to the end of the accessible portion of the buffer. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument COUNT, if a positive number, means to search for COUNT successive occurrences. If COUNT is negative, search backward, instead of forward, for -COUNT occurrences. A value of nil means the same as 1. With COUNT positive, the match found is the COUNTth one (or first, if COUNT is 1 or nil) in the buffer located entirely after the origin of the search; correspondingly with COUNT negative. Relies on the function `word-search-regexp' to convert a sequence of words in STRING to a regexp used to search words without regard to punctuation. This command does not support character folding, and lax space matching has no effect on it. (fn STRING &optional BOUND NOERROR COUNT)Fword-search-backward-lax Search backward from point for STRING, ignoring differences in punctuation. Set point to the beginning of the occurrence found, and return point. Unlike `word-search-backward', the end of STRING need not match a word boundary, unless STRING ends in whitespace. An optional second argument bounds the search; it is a buffer position. The match found must not begin before that position. A value of nil means search to the beginning of the accessible portion of the buffer. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, position at limit of search and return nil. Optional fourth argument COUNT, if a positive number, means to search for COUNT successive occurrences. If COUNT is negative, search forward, instead of backward, for -COUNT occurrences. A value of nil means the same as 1. With COUNT positive, the match found is the COUNTth to last one (or last, if COUNT is 1 or nil) in the buffer located entirely before the origin of the search; correspondingly with COUNT negative. Relies on the function `word-search-regexp' to convert a sequence of words in STRING to a regexp used to search words without regard to punctuation. This command does not support character folding, and lax space matching has no effect on it. (fn STRING &optional BOUND NOERROR COUNT)Fword-search-forward-lax Search forward from point for STRING, ignoring differences in punctuation. Set point to the end of the occurrence found, and return point. Unlike `word-search-forward', the end of STRING need not match a word boundary, unless STRING ends in whitespace. An optional second argument bounds the search; it is a buffer position. The match found must not end after that position. A value of nil means search to the end of the accessible portion of the buffer. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument COUNT, if a positive number, means to search for COUNT successive occurrences. If COUNT is negative, search backward, instead of forward, for -COUNT occurrences. A value of nil means the same as 1. With COUNT positive, the match found is the COUNTth one (or first, if COUNT is 1 or nil) in the buffer located entirely after the origin of the search; correspondingly with COUNT negative. Relies on the function `word-search-regexp' to convert a sequence of words in STRING to a regexp used to search words without regard to punctuation. This command does not support character folding, and lax space matching has no effect on it. (fn STRING &optional BOUND NOERROR COUNT)Fisearch-symbol-regexp Return a regexp which matches STRING as a symbol. Creates a regexp where STRING is surrounded by symbol delimiters \_< and \_>. If there are more than one symbol, then compute a regexp that matches those exact symbols separated by non-symbol characters. If the string begins or ends in whitespace, the beginning or the end of the string matches arbitrary non-symbol whitespace. Otherwise if LAX is non-nil, the beginning or the end of the string need not match a symbol boundary. (fn STRING &optional LAX)Fsearch-forward-lax-whitespace Search forward for STRING, matching a sequence of whitespace chars. (fn STRING &optional BOUND NOERROR COUNT)Fsearch-backward-lax-whitespace Search backward for STRING, matching a sequence of whitespace chars. (fn STRING &optional BOUND NOERROR COUNT)Fre-search-forward-lax-whitespace Search forward for REGEXP, matching a sequence of whitespace chars. (fn REGEXP &optional BOUND NOERROR COUNT)Fre-search-backward-lax-whitespace Search backward for REGEXP, matching a sequence of whitespace chars. (fn REGEXP &optional BOUND NOERROR COUNT)Fisearch-query-replace Start `query-replace' with string to replace from last search string. The ARG (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. A negative prefix arg means replace backward. Note that using the prefix arg is possible only when `isearch-allow-scroll' is non-nil or `isearch-allow-prefix' is non-nil, and it doesn't always provide the correct matches for `query-replace', so the preferred way to run word replacements from Isearch is `M-s w ... M-%'. (fn &optional ARG REGEXP-FLAG)Fisearch-query-replace-regexp Start `query-replace-regexp' with string to replace from last search string. See `isearch-query-replace' for more information. (fn &optional ARG)Fisearch-occur Run `occur' using the last search string as the regexp. Interactively, REGEXP is constructed using the search string from the last search command. NLINES has the same meaning as in `occur'. If the last search command was a word search, REGEXP is computed from the search words, ignoring punctuation. If the last search command was a regular expression search, REGEXP is the regular expression used in that search. If the last search command searched for a literal string, REGEXP is constructed by quoting all the special characters in that string. (fn REGEXP &optional NLINES)Fisearch-highlight-regexp Run `highlight-regexp' with regexp from the current search string. It exits Isearch mode and calls `hi-lock-face-buffer' with its regexp argument from the last search regexp or a quoted search string, and reads its face argument using `hi-lock-read-face-name'.Fisearch-delete-char Undo last input item during a search. An input item is the result of a command that pushes a new state of isearch (as recorded by the `isearch--state' structure) to `isearch-cmds'. Info node `(emacs)Basic Isearch' explains when Emacs records a new input item. If no input items have been entered yet, just beep.Fisearch-del-char Delete character from end of search string and search again. Unlike `isearch-delete-char', it only deletes the last character, but doesn't cancel the effect of other isearch command. If search string is empty, just beep. (fn &optional ARG)Fisearch-yank-string Pull STRING into search string. (fn STRING)Fisearch-yank-kill Pull string from kill ring into search string.Fisearch-yank-pop Replace just-yanked search string with previously killed string.Fisearch-yank-x-selection Pull current X selection into search string.Fisearch-mouse-2 Handle mouse-2 in Isearch mode. For a click in the echo area, invoke `isearch-yank-x-selection'. Otherwise invoke whatever the calling mouse-2 command sequence is bound to outside of Isearch. (fn CLICK)Fisearch-xterm-paste Pull terminal paste into search string.Fisearch-yank-internal Pull the text from point to the point reached by JUMPFORM. JUMPFORM is a lambda expression that takes no arguments and returns a buffer position, possibly having moved point to that position. For example, it might move point forward by a word and return point, or it might return the position of the end of the line. (fn JUMPFORM)Fisearch-yank-char-in-minibuffer Pull next character from buffer into end of search string in minibuffer. (fn &optional ARG)Fisearch-yank-char Pull next character from buffer into search string. If optional ARG is non-nil, pull in the next ARG characters. (fn &optional ARG)Fisearch-yank-word-or-char Pull next character, subword or word from buffer into search string. Subword is used when `subword-mode' is activated. Fisearch-yank-word Pull next word from buffer into search string. If optional ARG is non-nil, pull in the next ARG words. (fn &optional ARG)Fisearch-yank-line Pull rest of line from buffer into search string. If optional ARG is non-nil, yank the next ARG lines. (fn &optional ARG)Fisearch-char-by-name Read a character by its Unicode name and add it to the search string. Completion is available like in `read-char-by-name' used by `insert-char'. With argument, add COUNT copies of the character. (fn &optional COUNT)Fisearch-backslash Return t if STR ends in an odd number of backslashes. (fn STR)Fisearch-fallback Return point to previous successful match to allow regexp liberalization. \<isearch-mode-map> Respects \[isearch-repeat-forward] and \[isearch-repeat-backward] by stopping at `isearch-barrier' as needed. Do nothing if a backslash is escaping the liberalizing character. If WANT-BACKSLASH is non-nil, invert this behavior (for \} and \|). Do nothing if regexp has recently been invalid unless optional ALLOW-INVALID non-nil. If optional TO-BARRIER non-nil, ignore previous matches and go exactly to the barrier. (fn WANT-BACKSLASH &optional ALLOW-INVALID TO-BARRIER)Fisearch-string-out-of-window Test whether the search string is currently outside of the window. Return nil if it's completely visible, or if point is visible, together with as much of the search string as will fit; the symbol `above' if we need to scroll the text downwards; the symbol `below', if upwards. (fn ISEARCH-POINT)Fisearch-back-into-window Scroll the window to bring the search string back into view. Restore point to ISEARCH-POINT in the process. ABOVE is t when the search string is above the top of the window, nil when it is beneath the bottom. (fn ABOVE ISEARCH-POINT)Fisearch-pre-command-hook Decide whether to exit Isearch mode before executing the command. Don't exit Isearch if the key sequence that invoked this command is bound in `isearch-mode-map', or if the invoked command is a prefix argument command (when `isearch-allow-prefix' is non-nil), or it is a scrolling command (when `isearch-allow-scroll' is non-nil). Otherwise, exit Isearch (when `search-exit-option' is non-nil) before the command is executed globally with terminated Isearch.Fisearch-quote-char Quote special characters for incremental search. With argument, add COUNT copies of the character. (fn &optional COUNT)Fisearch-printing-char Add this ordinary printing CHAR to the search string and search. With argument, add COUNT copies of the character. (fn &optional CHAR COUNT)Fisearch-process-search-char Add CHAR to the search string, COUNT times. Search is updated accordingly. (fn CHAR &optional COUNT)Fisearch-process-search-string (fn STRING MESSAGE)Fisearch-ring-adjust1 (fn ADVANCE)Fisearch-ring-adjust (fn ADVANCE)Fisearch-ring-advance Advance to the next search string in the ring.Fisearch-ring-retreat Retreat to the previous search string in the ring.Fisearch-complete Complete the search string from the strings on the search ring. The completed string is then editable in the minibuffer. If there is no completion possible, say so and continue searching.Fisearch-complete-edit Same as `isearch-complete' except in the minibuffer.Fisearch-message (fn &optional C-Q-HACK ELLIPSIS)Fisearch--describe-regexp-mode Make a string for describing REGEXP-FUNCTION. If SPACE-BEFORE is non-nil, put a space before, instead of after, the word mode. (fn REGEXP-FUNCTION &optional SPACE-BEFORE)Fisearch-message-prefix (fn &optional ELLIPSIS NONINCREMENTAL)Fisearch-message-suffix (fn &optional C-Q-HACK)Visearch-search-fun-function Non-default value overrides the behavior of `isearch-search-fun-default'. This variable's value should be a function, which will be called with no arguments, and should return a function that takes three arguments: STRING, BOUND, and NOERROR. STRING is the string to be searched for. See `re-search-forward' for the meaning of BOUND and NOERROR arguments. This returned function will be used by `isearch-search-string' to search for the first occurrence of STRING.Fisearch-search-fun Return the function to use for the search. Can be changed via `isearch-search-fun-function' for special needs.Fisearch--lax-regexp-function-p Non-nil if next regexp-function call should be lax.Fisearch-search-fun-default Return default functions to use for the search.Fisearch-search-string Search for the first occurrence of STRING or its translation. STRING's characters are translated using `translation-table-for-input' if that is non-nil. If found, move point to the end of the occurrence, update the match data, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not extend after that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. (fn STRING BOUND NOERROR)Fisearch-open-overlay-temporary (fn OV)Fisearch-open-necessary-overlays (fn OV)Fisearch-intersects-p Return t if regions START0..END0 and START1..END1 intersect. (fn START0 END0 START1 END1)Fisearch-close-unnecessary-overlays (fn BEGIN END)Fisearch-range-invisible Return t if all the text from BEG to END is invisible. (fn BEG END)Fisearch-filter-visible Return non-nil if text between BEG and END is deemed visible by Isearch. This function is intended to be used as `isearch-filter-predicate'. It returns non-nil if the text between BEG and END is visible to Isearch, at least partially, as determined by `isearch-range-invisible'. If `search-invisible' is t, which allows Isearch matches inside invisible text, this function will always return non-nil, regardless of what `isearch-range-invisible' says. (fn BEG END)Fisearch-no-upper-case-p Return t if there are no upper case chars in STRING. If REGEXP-FLAG is non-nil, disregard letters preceded by `\' (but not `\\') since they have special meaning in a regexp. (fn STRING REGEXP-FLAG)Fisearch-text-char-description (fn C)Fisearch-unread (fn &rest CHAR-OR-EVENTS)Fisearch-highlight (fn BEG END)Flazy-highlight-cleanup Stop lazy highlighting and remove extra highlighting from current buffer. FORCE non-nil means do it whether or not `lazy-highlight-cleanup' is nil. PROCRASTINATE non-nil means postpone cleanup to a later time. This function is called when exiting an incremental search if `lazy-highlight-cleanup' is non-nil. (fn &optional FORCE PROCRASTINATE)Fisearch-lazy-highlight-new-loop Cleanup any previous `lazy-highlight' loop and begin a new one. BEG and END specify the bounds within which highlighting should occur. This is called when `isearch-update' is invoked (which can cause the search string to change or the window to scroll). It is also used by other Emacs features. (fn &optional BEG END)Fisearch-lazy-highlight-search Search ahead for the next or previous match, for lazy highlighting. Attempt to do the search exactly the way the pending Isearch would.Fisearch-lazy-highlight-start Start a new lazy-highlight updating loop.Fisearch-lazy-highlight-update Update highlighting of other matches for current search.Fisearch-resume Resume an incremental search. STRING is the string or regexp searched for. REGEXP non-nil means the resumed search was a regexp search. WORD non-nil means resume a word search. FORWARD non-nil means resume a forward search. MESSAGE is the echo-area message recorded for the search resumed. CASE-FOLD non-nil means the search was case-insensitive. (fn STRING REGEXP WORD FORWARD MESSAGE CASE-FOLD)Sjit-lock.elc Vjit-lock-mode Non-nil means Just-in-time Lock mode is active.Vjit-lock-functions Functions to do the actual fontification. They are called with two arguments: the START and END of the region to fontify.Vjit-lock-context-unfontify-pos Consider text after this position as contextually unfontified. If nil, contextual fontification is disabled.Vjit-lock-stealth-timer Timer for stealth fontification in Just-in-time Lock mode.Vjit-lock-stealth-repeat-timer Timer for repeated stealth fontification in Just-in-time Lock mode.Vjit-lock-context-timer Timer for context fontification in Just-in-time Lock mode.Vjit-lock-defer-timer Timer for deferred fontification in Just-in-time Lock mode.Vjit-lock-defer-buffers List of buffers with pending deferred fontification.Vjit-lock-stealth-buffers List of buffers that are being fontified stealthily.Fjit-lock-mode Toggle Just-in-time Lock mode. Turn Just-in-time Lock mode on if and only if ARG is non-nil. Enable it automatically by customizing group `font-lock'. When Just-in-time Lock mode is enabled, fontification is different in the following ways: - Demand-driven buffer fontification triggered by Emacs C code. This means initial fontification of the whole buffer does not occur. Instead, fontification occurs when necessary, such as when scrolling through the buffer would otherwise reveal unfontified areas. This is useful if buffer fontification is too slow for large buffers. - Stealthy buffer fontification if `jit-lock-stealth-time' is non-nil. This means remaining unfontified areas of buffers are fontified if Emacs has been idle for `jit-lock-stealth-time' seconds, while Emacs remains idle. This is useful if any buffer has any deferred fontification. - Deferred context fontification if `jit-lock-contextually' is non-nil. This means fontification updates the buffer corresponding to true syntactic context, after `jit-lock-context-time' seconds of Emacs idle time, while Emacs remains idle. Otherwise, fontification occurs on modified lines only, and subsequent lines can remain fontified corresponding to previous syntactic contexts. This is useful where strings or comments span lines. Stealth fontification only occurs while the system remains unloaded. If the system load rises above `jit-lock-stealth-load' percent, stealth fontification is suspended. Stealth fontification intensity is controlled via the variable `jit-lock-stealth-nice'. If you need to debug code run from jit-lock, see `jit-lock-debug-mode'. (fn ARG)Fjit-lock-debug-mode Minor mode to help debug code run from jit-lock. When this minor mode is enabled, jit-lock runs as little code as possible during redisplay and moves the rest to a timer, where things like `debug-on-error' and Edebug can be used. (fn &optional ARG)Fjit-lock--debug-fontify Fontify what was deferred for debugging.Fjit-lock-register Register FUN as a fontification function to be called in this buffer. FUN will be called with two arguments START and END indicating the region that needs to be (re)fontified. If non-nil, CONTEXTUAL means that a contextual fontification would be useful. (fn FUN &optional CONTEXTUAL)Fjit-lock-unregister Unregister FUN as a fontification function. Only applies to the current buffer. (fn FUN)Fjit-lock-refontify Force refontification of the region BEG..END (default whole buffer). (fn &optional BEG END)Fjit-lock-function Fontify current buffer starting at position START. This function is added to `fontification-functions' when `jit-lock-mode' is active. (fn START)Fjit-lock--run-functions (fn BEG END)Fjit-lock-fontify-now Fontify current buffer from START to END. Defaults to the whole buffer. END can be out of bounds. (fn &optional START END)Fjit-lock-force-redisplay Force the display engine to re-render START's buffer from START to END. This applies to the buffer associated with marker START. (fn START END)Fjit-lock-stealth-chunk-start Return the start of the next chunk to fontify around position AROUND. Value is nil if there is nothing more to fontify. (fn AROUND)Fjit-lock-stealth-fontify Fontify buffers stealthily. This function is called repeatedly after Emacs has become idle for `jit-lock-stealth-time' seconds. Optional argument REPEAT is expected non-nil in a repeated invocation of this function. (fn &optional REPEAT)Fjit-lock-deferred-fontify Fontify what was deferred.Fjit-lock-context-fontify Refresh fontification to take new context into account.Vjit-lock-after-change-extend-region-functions Hook that can extend the text to refontify after a change. This is run after every buffer change. The functions are called with the three arguments of `after-change-functions': START END OLD-LEN. The extended region to refontify is returned indirectly by modifying the variables `jit-lock-start' and `jit-lock-end'. Note that extending the region this way is not strictly necessary, except that the nature of the redisplay code tends to otherwise leave some of the rehighlighted text displayed with the old highlight until the next redisplay (see comment about repeated redisplay in `jit-lock-fontify-now').Fjit-lock-after-change Mark the rest of the buffer as not fontified after a change. Installed on `after-change-functions'. START and END are the start and end of the changed text. OLD-LEN is the pre-change length. This function ensures that lines following the change will be refontified in case the syntax of those lines has changed. Refontification will take place when text is fontified stealthily. (fn START END OLD-LEN)Sjka-cmpr-hook.elc Vjka-compr-file-name-handler-entry `file-name-handler-alist' entry used by jka-compr I/O functions.Vjka-compr-compression-info-list--internal Stored value of `jka-compr-compression-info-list'. If Auto Compression mode is enabled, this is the value of `jka-compr-compression-info-list' when `jka-compr-install' was last called. Otherwise, it is nil.Vjka-compr-mode-alist-additions--internal Stored value of `jka-compr-mode-alist-additions'. If Auto Compression mode is enabled, this is the value of `jka-compr-mode-alist-additions' when `jka-compr-install' was last called. Otherwise, it is nil.Vjka-compr-load-suffixes--internal Stored value of `jka-compr-load-suffixes'. If Auto Compression mode is enabled, this is the value of `jka-compr-load-suffixes' when `jka-compr-install' was last called. Otherwise, it is nil.Fjka-compr-get-compression-info Return information about the compression scheme of FILENAME. The determination as to which compression scheme, if any, to use is based on the filename itself and `jka-compr-compression-info-list'.Fjka-compr-install Install jka-compr. This adds entries to `file-name-handler-alist' and `auto-mode-alist' and `inhibit-local-variables-suffixes'.Fjka-compr-installed-p Return non-nil if jka-compr is installed. The return value is the entry in `file-name-handler-alist' for jka-compr.Fjka-compr-update Update Auto Compression mode for changes in option values. If you change the options `jka-compr-compression-info-list', `jka-compr-mode-alist-additions' or `jka-compr-load-suffixes' outside Custom, while Auto Compression mode is already enabled (as it is by default), then you have to call this function afterward to properly update other variables. Setting these options through Custom does this automatically.Fjka-compr-set Internal Custom :set function.Fauto-compression-mode Toggle Auto Compression mode. With a prefix argument ARG, enable Auto Compression mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Auto Compression mode is a global minor mode. When enabled, compressed files are automatically uncompressed for reading, and compressed when writing.Fwith-auto-compression-mode Evaluate BODY with automatic file compression and uncompression enabled.Sburmese.elc Scham.elc Schinese.elc Scyrillic.elc Sczech.elc Senglish.elc Sethiopic.elc Seuropean.elc Fturkish-case-conversion-enable Set up Turkish case conversion of `i' and `I' into `İ' and `ı'.Fturkish-case-conversion-disable Set up normal (non-Turkish) case conversion of `i' into `I'.Sgeorgian.elc Sgreek.elc Shebrew.elc Sindian.elc Vdevanagari-composable-pattern Regexp matching a composable sequence of Devanagari characters.Vbengali-composable-pattern Regexp matching a composable sequence of Bengali characters.Vgurmukhi-composable-pattern Regexp matching a composable sequence of Gurmukhi characters.Vgujarati-composable-pattern Regexp matching a composable sequence of Gujarati characters.Voriya-composable-pattern Regexp matching a composable sequence of Oriya characters.Vtamil-composable-pattern Regexp matching a composable sequence of Tamil characters.Vtelugu-composable-pattern Regexp matching a composable sequence of Telugu characters.Vkannada-composable-pattern Regexp matching a composable sequence of Kannada characters.Vmalayalam-composable-pattern Regexp matching a composable sequence of Malayalam characters.Sjapanese.elc Fcompose-gstring-for-variation-glyph Compose glyph-string GSTRING for graphic display. GSTRING must have two glyphs; the first is a glyph for a han character, and the second is a glyph for a variation selector.Skhmer.elc Skorean.elc Slao.elc Smisc-lang.elc Sromanian.elc Ssinhala.elc Sslovak.elc Stai-viet.elc Sthai.elc Stibetan.elc Vtibetan-composable-pattern Regexp matching a composable sequence of Tibetan characters.Vtibetan-regexp Regexp matching a Tibetan transcription of a composable Tibetan sequence. The result of matching is to be used for indexing alists at conversion from a roman transcription to the corresponding Tibetan character.Vtibetan-precomposed-regexp Regexp string to match a romanized Tibetan complex consonant. The result of matching is to be used for indexing alists when the input key from an input method is converted to the corresponding precomposed glyph.Vtibetan-precomposition-rule-regexp Regexp string to match a sequence of Tibetan consonantic components, i.e., one base consonant and one or more subjoined consonants. The result of matching is to be used for indexing alist when the component sequence is converted to the corresponding precomposed glyph. This also matches some punctuation characters which need conversion.Sutf-8-lang.elc Svietnamese.elc Sls-lisp.elc Fls-lisp-set-options Reset the ls-lisp options that depend on `ls-lisp-emulation'.Vls-lisp-uid-d-fmt Format to display integer UIDs.Vls-lisp-uid-s-fmt Format to display user names.Vls-lisp-gid-d-fmt Format to display integer GIDs.Vls-lisp-gid-s-fmt Format to display user group names.Vls-lisp-filesize-d-fmt Format to display integer file sizes.Vls-lisp-filesize-f-fmt Format to display float file sizes.Vls-lisp-filesize-b-fmt Format to display file sizes in blocks (for the -s switch).Fls-lisp--insert-directory Insert directory listing for FILE, formatted according to SWITCHES. Leaves point after the inserted text. SWITCHES may be a string of options, or a list of strings. Optional third arg WILDCARD means treat FILE as shell wildcard. Optional fourth arg FULL-DIRECTORY-P means file is a directory and switches do not contain `d', so that a full listing is expected. This version of the function comes from `ls-lisp.el'. If the value of `ls-lisp-use-insert-directory-program' is non-nil then this advice just delegates the work to ORIG-FUN (the normal `insert-directory' function from `files.el'). But if the value of `ls-lisp-use-insert-directory-program' is nil then it runs a Lisp emulation. The Lisp emulation does not run any external programs or shells. It supports ordinary shell wildcards if `ls-lisp-support-shell-wildcards' is non-nil; otherwise, it interprets wildcards as regular expressions to match file names. It does not support all `ls' switches -- those that work are: A a B C c F G g h i n R r S s t U u v X. The l switch is assumed to be always present and cannot be turned off. (fn ORIG-FUN FILE SWITCHES &optional WILDCARD FULL-DIRECTORY-P)Fls-lisp-insert-directory Insert directory listing for FILE, formatted according to SWITCHES. Leaves point after the inserted text. This is an internal function optionally called by the `ls-lisp.el' version of `insert-directory'. It is called recursively if the -R switch is used. SWITCHES is a *list* of characters. TIME-INDEX is the time index into file-attributes according to SWITCHES. WILDCARD-REGEXP is nil or an *Emacs regexp*. FULL-DIRECTORY-P means file is a directory and SWITCHES does not contain `d', so that a full listing is expected. (fn FILE SWITCHES TIME-INDEX WILDCARD-REGEXP FULL-DIRECTORY-P)Fls-lisp--dired (fn ORIG-FUN DIR-OR-LIST &optional SWITCHES)Fls-lisp-sanitize Sanitize the elements in FILE-ALIST. Fixes any elements in the alist for directory entries whose file attributes are nil (meaning that `file-attributes' failed for them). This is known to happen for some network shares, in particular for the ".." directory entry. If the ".." directory entry has nil attributes, the attributes are copied from the "." entry, if they are non-nil. Otherwise, the offending element is removed from the list, as are any elements for other directory entries with nil attributes. (fn FILE-ALIST)Fls-lisp-column-format Insert the file names (only) in FILE-ALIST into the current buffer. Format in columns, sorted vertically, following GNU ls -C. Responds to the window width as ls should but may not! (fn FILE-ALIST)Fls-lisp-delete-matching Delete all elements matching REGEXP from LIST, return new list. (fn REGEXP LIST)Fls-lisp-string-lessp Return t if string S1 should sort before string S2. Case is significant if `ls-lisp-ignore-case' is nil. Uses `string-collate-lessp' if `ls-lisp-use-string-collate' is non-nil, `compare-strings' otherwise. On GNU/Linux systems, if the locale specifies UTF-8 as the codeset, the sorting order will place together file names that differ only by punctuation characters, like `.emacs' and `emacs'. To have a similar behavior on MS-Windows, customize `ls-lisp-UCA-like-collation' to a non-nil value. (fn S1 S2)Fls-lisp-version-lessp Return t if versioned string S1 should sort before versioned string S2. Case is significant if `ls-lisp-ignore-case' is nil. This is the same as string-lessp (with the exception of case insensitivity), but sequences of digits are compared numerically, as a whole, in the same manner as the `strverscmp' function available in some standard C libraries does. (fn S1 S2)Fls-lisp-handle-switches Return new FILE-ALIST sorted according to SWITCHES. SWITCHES is a list of characters. Default sorting is alphabetic. (fn FILE-ALIST SWITCHES)Fls-lisp-classify-file Append a character to FILENAME indicating the file type. This function puts the `dired-filename' property on FILENAME, but not on the character indicator it appends. FATTR is the file attributes returned by `file-attributes' for the file. The file type indicators are `/' for directories, `@' for symbolic links, `|' for FIFOs, `=' for sockets, `*' for regular files that are executable, and nothing for other types of files. (fn FILENAME FATTR)Fls-lisp-classify Append a character to file name in FILEDATA indicating the file type. FILEDATA has the form (FILENAME . ATTRIBUTES), where ATTRIBUTES is the structure returned by `file-attributes' for that file. The file type indicators are `/' for directories, `@' for symbolic links, `|' for FIFOs, `=' for sockets, `*' for regular files that are executable, and nothing for other types of files. (fn FILEDATA)Fls-lisp-extension Return extension of FILENAME (ignoring any version extension) FOLLOWED by null and full filename, SOLELY for full alpha sort. (fn FILENAME)Fls-lisp-format Format one line of long ls output for file FILE-NAME. FILE-ATTR and FILE-SIZE give the file's attributes and size. SWITCHES and TIME-INDEX give the full switch list and time data. (fn FILE-NAME FILE-ATTR FILE-SIZE SWITCHES TIME-INDEX)Fls-lisp-time-index Return time index into file-attributes according to ls SWITCHES list. Return nil if no time switch found. (fn SWITCHES)Fls-lisp-format-time Format time for file with attributes FILE-ATTR according to TIME-INDEX. Use the same method as ls to decide whether to show time-of-day or year, depending on distance between file date and the current time. All ls time options, namely c, t and u, are handled. (fn FILE-ATTR TIME-INDEX)Fls-lisp-format-file-size (fn FILE-SIZE HUMAN-READABLE)Fls-lisp-unload-function Unload ls-lisp library.Smenu-bar.elc Fmenu-find-file-existing Edit the existing file FILENAME.Vmenu-bar-last-search-type Type of last non-incremental search command called from the menu.Fnonincremental-repeat-search-forward Search forward for the previous search string or regexp.Fnonincremental-repeat-search-backward Search backward for the previous search string or regexp.Fnonincremental-search-forward Read a string and search for it nonincrementally.Fnonincremental-search-backward Read a string and search backward for it nonincrementally.Fnonincremental-re-search-forward Read a regular expression and search for it nonincrementally.Fnonincremental-re-search-backward Read a regular expression and search backward for it nonincrementally.Fclipboard-yank Insert the clipboard contents, or the last stretch of killed text.Fclipboard-kill-ring-save Copy region to kill ring, and save in the GUI's clipboard. If the optional argument REGION is non-nil, the function ignores BEG and END, and saves the current region instead.Fclipboard-kill-region Kill the region, and save it in the GUI's clipboard. If the optional argument REGION is non-nil, the function ignores BEG and END, and kills the current region instead.Fmenu-bar-enable-clipboard Make CUT, PASTE and COPY (keys and menu bar items) use the clipboard. Do the same for the keys of the same name.Fmenu-bar-make-mm-toggle Make a menu-item for a global minor mode toggle. FNAME is the minor mode's name (variable and function). DOC is the text to use for the menu entry. HELP is the text to use for the tooltip. PROPS are additional properties.Fmenu-set-font Interactively select a font and make it the default on all frames. The selected font will be the default on both the existing and future frames.Fmenu-bar-options-save Save current values of Options menu items using Custom.Fmenu-bar-window-divider-customize Show customization buffer for `window-divider' group.Fmenu-bar-bottom-and-right-window-divider Display dividers on the bottom and right of each window.Fmenu-bar-right-window-divider Display dividers only on the right of each window.Fmenu-bar-bottom-window-divider Display dividers only at the bottom of each window.Fmenu-bar-no-window-divider Do not display window dividers.Fmenu-bar-showhide-fringe-ind-customize Show customization buffer for `indicate-buffer-boundaries'.Fmenu-bar-showhide-fringe-ind-mixed Display top and bottom indicators in opposite fringes, arrows in right.Fmenu-bar-showhide-fringe-ind-box Display top and bottom indicators in opposite fringes.Fmenu-bar-showhide-fringe-ind-right Display buffer boundaries and arrows in the right fringe.Fmenu-bar-showhide-fringe-ind-left Display buffer boundaries and arrows in the left fringe.Fmenu-bar-showhide-fringe-ind-none Do not display any buffer boundary indicators.Fmenu-bar-showhide-fringe-menu-customize Show customization buffer for `fringe-mode'.Fmenu-bar-showhide-fringe-menu-customize-reset Reset the fringe mode: display fringes on both sides of a window.Fmenu-bar-showhide-fringe-menu-customize-right Display fringes only on the right of each window.Fmenu-bar-showhide-fringe-menu-customize-left Display fringes only on the left of each window.Fmenu-bar-showhide-fringe-menu-customize-disable Do not display window fringes.Fmenu-bar-right-scroll-bar Display scroll bars on the right of each window.Fmenu-bar-left-scroll-bar Display scroll bars on the left of each window.Fmenu-bar-no-scroll-bar Turn off scroll bars.Fmenu-bar-frame-for-menubar Return the frame suitable for updating the menu bar.Fmenu-bar-positive-p Return non-nil if VAL is a positive number.Fmenu-bar-showhide-tool-bar-menu-customize-disable Do not display tool bars.Fmenu-bar-showhide-tool-bar-menu-customize-enable-left Display tool bars on the left side.Fmenu-bar-showhide-tool-bar-menu-customize-enable-right Display tool bars on the right side.Fmenu-bar-showhide-tool-bar-menu-customize-enable-top Display tool bars on the top side.Fmenu-bar-showhide-tool-bar-menu-customize-enable-bottom Display tool bars on the bottom side.Fmenu-bar-read-mail Read mail using `read-mail-command'.Fmenu-bar-read-lispref Display the Emacs Lisp Reference manual in Info mode.Fmenu-bar-read-lispintro Display the Introduction to Emacs Lisp Programming in Info mode.Fsearch-emacs-glossary Display the Glossary node of the Emacs manual in Info mode.Femacs-index-search Look up TOPIC in the indices of the Emacs User Manual.Felisp-index-search Look up TOPIC in the indices of the Emacs Lisp Reference Manual.Fhelp-with-tutorial-spec-language Use the Emacs tutorial, specifying which language you want.Fmenu-bar-menu-frame-live-and-visible-p Return non-nil if the menu frame is alive and visible. The menu frame is the frame for which we are updating the menu.Fmenu-bar-non-minibuffer-window-p Return non-nil if the menu frame's selected window is no minibuffer window. Return nil if the menu frame is dead or its selected window is a minibuffer window. The menu frame is the frame for which we are updating the menu.Fkill-this-buffer Kill the current buffer. When called in the minibuffer, get out of the minibuffer using `abort-recursive-edit'. This command can be reliably invoked only from the menu bar, otherwise it could decide to silently do nothing.Fkill-this-buffer-enabled-p Return non-nil if the `kill-this-buffer' menu item should be enabled.Fdelete-frame-enabled-p Return non-nil if `delete-frame' should be enabled in the menu bar.Vyank-menu-length Maximum length to display in the yank-menu.Fmenu-bar-select-yank Insert the stretch of previously-killed text selected from menu. The menu shows all the killed text sequences stored in `kill-ring'.Vlist-buffers-directory String to display in buffer listings for buffers not visiting a file.Vmenu-bar-select-buffer-function Function to select the buffer chosen from the `Buffers' menu-bar menu. It must accept a buffer as its only required argument.Fmenu-bar-mode Toggle display of a menu bar on each frame (Menu Bar mode). With a prefix argument ARG, enable Menu Bar mode if ARG is positive, and disable it otherwise. If called from Lisp, also enable Menu Bar mode if ARG is omitted or nil. This command applies to all frames that exist and frames to be created in the future.Ftoggle-menu-bar-mode-from-frame Toggle menu bar on or off, based on the status of the current frame. See `menu-bar-mode' for more information.Flookup-key-ignore-too-long Call `lookup-key' and convert numeric values to nil.Fpopup-menu Popup the given menu and call the selected option. MENU can be a keymap, an easymenu-style menu or a list of keymaps as for `x-popup-menu'. The menu is shown at the place where POSITION specifies. For the form of POSITION, see `popup-menu-normalize-position'. PREFIX is the prefix argument (if any) to pass to the command. FROM-MENU-BAR, if non-nil, means we are dropping one of menu-bar's menus.Fpopup-menu-normalize-position Convert the POSITION to the form which `popup-menu' expects internally. POSITION can be an event, a posn- value, a value having the form ((XOFFSET YOFFSET) WINDOW), or nil. If nil, the current mouse position is used, or nil if there is no mouse.Vtty-menu-open-use-tmm If non-nil, \[menu-bar-open] on a TTY will invoke `tmm-menubar'. If nil, \[menu-bar-open] will drop down the menu corresponding to the first (leftmost) menu-bar item; you can select other items by typing \[forward-char], \[backward-char], \[right-char] and \[left-char].Vtty-menu--initial-menu-x X coordinate of the first menu-bar menu dropped by F10. This is meant to be used only for debugging TTY menus.Fmenu-bar-open Start key navigation of the menu bar in FRAME. This function decides which method to use to access the menu depending on FRAME's terminal device. On X displays, it calls `x-menu-bar-open'; on Windows, `w32-menu-bar-open'; otherwise it calls either `popup-menu' or `tmm-menubar' depending on whether `tty-menu-open-use-tmm' is nil or not. If FRAME is nil or not given, use the selected frame.Fbuffer-menu-open Start key navigation of the buffer menu. This is the keyboard interface to \[mouse-buffer-menu].Vtty-menu-navigation-map Keymap used while processing TTY menus.Sminibuffer.elc Fcompletion-boundaries Return the boundaries of text on which COLLECTION will operate. STRING is the string on which completion will be performed. SUFFIX is the string after point. If COLLECTION is a function, it is called with 3 arguments: STRING, PRED, and a cons cell of the form (boundaries . SUFFIX). The result is of the form (START . END) where START is the position in STRING of the beginning of the completion field and END is the position in SUFFIX of the end of the completion field. E.g. for simple completion tables, the result is always (0 . (length SUFFIX)) and for file names the result is the positions delimited by the closest directory separators. (fn STRING COLLECTION PRED SUFFIX)Fcompletion-metadata Return the metadata of elements to complete at the end of STRING. This metadata is an alist. Currently understood keys are: - `category': the kind of objects returned by `all-completions'. Used by `completion-category-overrides'. - `annotation-function': function to add annotations in *Completions*. Takes one argument (STRING), which is a possible completion and returns a string to append to STRING. - `display-sort-function': function to sort entries in *Completions*. Takes one argument (COMPLETIONS) and should return a new list of completions. Can operate destructively. - `cycle-sort-function': function to sort entries when cycling. Works like `display-sort-function'. The metadata of a completion table should be constant between two boundaries. (fn STRING TABLE PRED)Fcompletion--field-metadata (fn FIELD-START)Fcompletion-metadata-get (fn METADATA PROP)Fcompletion--some Apply FUN to each element of XS in turn. Return the first non-nil returned value. Like CL's `some'. (fn FUN XS)Fcomplete-with-action Perform completion ACTION. STRING is the string to complete. TABLE is the completion table. PRED is a completion predicate. ACTION can be one of nil, t or `lambda'. (fn ACTION TABLE STRING PRED)Fcompletion-table-dynamic Use function FUN as a dynamic completion table. FUN is called with one argument, the string for which completion is requested, and it should return a completion table containing all the intended possible completions. This table is allowed to include elements that do not actually match the string: they will be automatically filtered out. The completion table returned by FUN can use any of the usual formats of completion tables such as lists, alists, and hash-tables. If SWITCH-BUFFER is non-nil and completion is performed in the minibuffer, FUN will be called in the buffer from which the minibuffer was entered. The result of the `completion-table-dynamic' form is a function that can be used as the COLLECTION argument to `try-completion' and `all-completions'. See Info node `(elisp)Programmed Completion'. The completion table returned by `completion-table-dynamic' has empty metadata and trivial boundaries. See also the related function `completion-table-with-cache'. (fn FUN &optional SWITCH-BUFFER)Fcompletion-table-with-cache Create dynamic completion table from function FUN, with cache. This is a wrapper for `completion-table-dynamic' that saves the last argument-result pair from FUN, so that several lookups with the same argument (or with an argument that starts with the first one) only need to call FUN once. This can be useful when FUN performs a relatively slow operation, such as calling an external process. When IGNORE-CASE is non-nil, FUN is expected to be case-insensitive. (fn FUN &optional IGNORE-CASE)Flazy-completion-table Initialize variable VAR as a lazy completion table. If the completion table VAR is used for the first time (e.g., by passing VAR as an argument to `try-completion'), the function FUN is called with no arguments. FUN must return the completion table that will be stored in VAR. If completion is requested in the minibuffer, FUN will be called in the buffer from which the minibuffer was entered. The return value of `lazy-completion-table' must be used to initialize the value of VAR. You should give VAR a non-nil `risky-local-variable' property. (fn VAR FUN)Fcompletion-table-case-fold Return new completion TABLE that is case insensitive. If DONT-FOLD is non-nil, return a completion table that is case sensitive instead. (fn TABLE &optional DONT-FOLD)Fcompletion-table-subvert Return a completion table from TABLE with S1 replaced by S2. The result is a completion table which completes strings of the form (concat S1 S) in the same way as TABLE completes strings of the form (concat S2 S). (fn TABLE S1 S2)Fcompletion-table-with-context (fn PREFIX TABLE STRING PRED ACTION)Fcompletion-table-with-terminator Construct a completion table like TABLE but with an extra TERMINATOR. This is meant to be called in a curried way by first passing TERMINATOR and TABLE only (via `apply-partially'). TABLE is a completion table, and TERMINATOR is a string appended to TABLE's completion if it is complete. TERMINATOR is also used to determine the completion suffix's boundary. TERMINATOR can also be a cons cell (TERMINATOR . TERMINATOR-REGEXP) in which case TERMINATOR-REGEXP is a regular expression whose submatch number 1 should match TERMINATOR. This is used when there is a need to distinguish occurrences of the TERMINATOR strings which are really terminators from others (e.g. escaped). In this form, the car of TERMINATOR can also be, instead of a string, a function that takes the completion and returns the "terminated" string. (fn TERMINATOR TABLE STRING PRED ACTION)Fcompletion-table-with-predicate Make a completion table equivalent to TABLE but filtered through PRED1. PRED1 is a function of one argument which returns non-nil if and only if the argument is an element of TABLE which should be considered for completion. STRING, PRED2, and ACTION are the usual arguments to completion tables, as described in `try-completion', `all-completions', and `test-completion'. If STRICT is non-nil, the predicate always applies; if nil it only applies if it does not reduce the set of possible completions to nothing. Note: TABLE needs to be a proper completion table which obeys predicates. (fn TABLE PRED1 STRICT STRING PRED2 ACTION)Fcompletion-table-in-turn Create a completion table that tries each table in TABLES in turn. (fn &rest TABLES)Fcompletion-table-merge Create a completion table that collects completions from all TABLES. (fn &rest TABLES)Fcompletion-table-with-quoting Return a new completion table operating on quoted text. TABLE operates on the unquoted text. UNQUOTE is a function that takes a string and returns a new unquoted string. REQUOTE is a function of 2 args (UPOS QSTR) where QSTR is a string entered by the user (and hence indicating the user's preferred form of quoting); and UPOS is a position within the unquoted form of QSTR. REQUOTE should return a pair (QPOS . QFUN) such that QPOS is the position corresponding to UPOS but in QSTR, and QFUN is a function of one argument (a string) which returns that argument appropriately quoted for use at QPOS. (fn TABLE UNQUOTE REQUOTE)Fcompletion--twq-try (fn STRING USTRING COMPLETION POINT UNQUOTE REQUOTE)Fcompletion--string-equal-p (fn S1 S2)Fcompletion--twq-all (fn STRING USTRING COMPLETIONS BOUNDARY UNQUOTE REQUOTE)Fminibuffer-message Temporarily display MESSAGE at the end of the minibuffer. The text is displayed for `minibuffer-message-timeout' seconds, or until the next input event arrives, whichever comes first. Enclose MESSAGE in [...] if this is not yet the case. If ARGS are provided, then pass MESSAGE through `format-message'. (fn MESSAGE &rest ARGS)Fminibuffer-completion-contents Return the user input in a minibuffer before point as a string. In Emacs-22, that was what completion commands operated on.Fdelete-minibuffer-contents Delete all user input in a minibuffer. If the current buffer is not a minibuffer, erase its entire contents.Vcompletion-show-inline-help If non-nil, print helpful inline messages during completion.Vcompletion-styles-alist List of available completion styles. Each element has the form (NAME TRY-COMPLETION ALL-COMPLETIONS DOC): where NAME is the name that should be used in `completion-styles', TRY-COMPLETION is the function that does the completion (it should follow the same calling convention as `completion-try-completion'), ALL-COMPLETIONS is the function that lists the completions (it should follow the calling convention of `completion-all-completions'), and DOC describes the way this style of completion works.Vcompletion-category-defaults Default settings for specific completion categories. Each entry has the shape (CATEGORY . ALIST) where ALIST is an association list that can specify properties such as: - `styles': the list of `completion-styles' to use for that category. - `cycle': the `completion-cycle-threshold' to use for that category. Categories are symbols such as `buffer' and `file', used when completing buffer and file names, respectively.Fcompletion--category-override (fn CATEGORY TAG)Fcompletion--styles (fn METADATA)Fcompletion--nth-completion Call the Nth method of completion styles. (fn N STRING TABLE PRED POINT METADATA)Fcompletion-try-completion Try to complete STRING using completion table TABLE. Only the elements of table that satisfy predicate PRED are considered. POINT is the position of point within STRING. The return value can be either nil to indicate that there is no completion, t to indicate that STRING is the only possible completion, or a pair (NEWSTRING . NEWPOINT) of the completed result string together with a new position for point. (fn STRING TABLE PRED POINT &optional METADATA)Fcompletion-all-completions List the possible completions of STRING in completion table TABLE. Only the elements of table that satisfy predicate PRED are considered. POINT is the position of point within STRING. The return value is a list of completions and may contain the base-size in the last `cdr'. (fn STRING TABLE PRED POINT &optional METADATA)Fminibuffer--bitset (fn MODIFIED COMPLETIONS EXACT)Fcompletion--replace Replace the buffer text between BEG and END with NEWTEXT. Moves point to the end of the new text. (fn BEG END NEWTEXT)Fcompletion--cycle-threshold (fn METADATA)Vcompletion-fail-discreetly If non-nil, stay quiet when there is no match.Fcompletion--message (fn MSG)Fcompletion--do-completion Do the completion and return a summary of what happened. M = completion was performed, the text was Modified. C = there were available Completions. E = after completion we now have an Exact match. MCE 000 0 no possible completion 001 1 was already an exact and unique completion 010 2 no completion happened 011 3 was already an exact completion 100 4 ??? impossible 101 5 ??? impossible 110 6 some completion happened 111 7 completed to an exact completion TRY-COMPLETION-FUNCTION is a function to use in place of `try-completion'. EXPECT-EXACT, if non-nil, means that there is no need to tell the user when the buffer's text is already an exact match. (fn BEG END &optional TRY-COMPLETION-FUNCTION EXPECT-EXACT)Fminibuffer-complete Complete the minibuffer contents as far as possible. Return nil if there is no valid completion, else t. If no characters can be completed, display a list of possible completions. If you repeat this command after it displayed such a list, scroll the window of possible completions.Fcompletion--in-region-1 (fn BEG END)Fcompletion--cache-all-sorted-completions (fn BEG END COMPS)Fcompletion--flush-all-sorted-completions (fn &optional START END LEN)Fcompletion--metadata (fn STRING BASE MD-AT-POINT TABLE PRED)Fcompletion-all-sorted-completions (fn &optional START END)Fminibuffer-force-complete-and-exit Complete the minibuffer with first of the matches and exit.Fminibuffer-force-complete Complete the minibuffer to an exact match. Repeated uses step through the possible completions. (fn &optional START END)Vminibuffer-confirm-exit-commands A list of commands which cause an immediately following `minibuffer-complete-and-exit' to ask for extra confirmation.Fminibuffer-complete-and-exit Exit if the minibuffer contains a valid completion. Otherwise, try to complete the minibuffer contents. If completion leads to a valid completion, a repetition of this command will exit. If `minibuffer-completion-confirm' is `confirm', do not try to complete; instead, ask for confirmation and accept any input if confirmed. If `minibuffer-completion-confirm' is `confirm-after-completion', do not try to complete; instead, ask for confirmation if the preceding minibuffer command was a member of `minibuffer-confirm-exit-commands', and accept the input otherwise.Fcompletion-complete-and-exit (fn BEG END EXIT-FUNCTION)Fcompletion--complete-and-exit Exit from `require-match' minibuffer. COMPLETION-FUNCTION is called if the current buffer's content does not appear to be a match. (fn BEG END EXIT-FUNCTION COMPLETION-FUNCTION)Fcompletion--try-word-completion (fn STRING TABLE PREDICATE POINT MD)Fminibuffer-complete-word Complete the minibuffer contents at most a single word. After one word is completed as much as possible, a space or hyphen is added, provided that matches some possible completion. Return nil if there is no valid completion, else t.Fcompletion-in-region--single-word (fn BEG END COLLECTION &optional PREDICATE)Fcompletion--insert-strings Insert a list of STRINGS into the current buffer. Uses columns to keep the listing readable but compact. It also eliminates runs of equal strings. (fn STRINGS)Vcompletion-setup-hook Normal hook run at the end of setting up a completion list buffer. When this hook is run, the current buffer is the one in which the command to display the completion list buffer was run. The completion list buffer is available as the value of `standard-output'. See also `display-completion-list'.Fcompletion-hilit-commonality Apply font-lock highlighting to a list of completions, COMPLETIONS. PREFIX-LEN is an integer. BASE-SIZE is an integer or nil (meaning zero). This adds the face `completions-common-part' to the first (PREFIX-LEN - BASE-SIZE) characters of each completion, and the face `completions-first-difference' to the first character after that. It returns a list with font-lock properties applied to each element, and with BASE-SIZE appended as the last element. (fn COMPLETIONS PREFIX-LEN &optional BASE-SIZE)Fdisplay-completion-list Display the list of completions, COMPLETIONS, using `standard-output'. Each element may be just a symbol or string or may be a list of two strings to be printed as if concatenated. If it is a list of two strings, the first is the actual completion alternative, the second serves as annotation. `standard-output' must be a buffer. The actual completion alternatives, as inserted, are given `mouse-face' properties of `highlight'. At the end, this runs the normal hook `completion-setup-hook'. It can find the completion buffer in `standard-output'. (fn COMPLETIONS &optional COMMON-SUBSTRING)Vcompletion-extra-properties Property list of extra properties of the current completion job. These include: `:annotation-function': Function to annotate the completions buffer. The function must accept one argument, a completion string, and return either nil or a string which is to be displayed next to the completion (but which is not part of the completion). The function can access the completion data via `minibuffer-completion-table' and related variables. `:exit-function': Function to run after completion is performed. The function must accept two arguments, STRING and STATUS. STRING is the text to which the field was completed, and STATUS indicates what kind of operation happened: `finished' - text is now complete `sole' - text cannot be further completed but completion is not finished `exact' - text is a valid completion but may be further completed.Vcompletion-annotate-function Function to add annotations in the *Completions* buffer. The function takes a completion and should either return nil, or a string that will be displayed next to the completion. The function can access the completion table and predicates via `minibuffer-completion-table' and related variables.Fcompletion--done (fn STRING &optional FINISHED MESSAGE)Fminibuffer-completion-help Display a list of possible completions of the current minibuffer contents. (fn &optional START END)Fminibuffer-hide-completions Get rid of an out-of-date *Completions* buffer.Fexit-minibuffer Terminate this minibuffer argument.Fself-insert-and-exit Terminate minibuffer input.Vcompletion-in-region-functions Wrapper hook around `completion--in-region'. (See `with-wrapper-hook' for details about wrapper hooks.)Vcompletion-in-region-function Function to perform the job of `completion-in-region'. The function is called with 4 arguments: START END COLLECTION PREDICATE. The arguments and expected return value are as specified for `completion-in-region'.Vcompletion-in-region-mode-predicate Predicate to tell `completion-in-region-mode' when to exit. It is called with no argument and should return nil when `completion-in-region-mode' should exit (and hence pop down the *Completions* buffer).Vcompletion-in-region-mode--predicate Copy of the value of `completion-in-region-mode-predicate'. This holds the value `completion-in-region-mode-predicate' had when we entered `completion-in-region-mode'.Fcompletion-in-region Complete the text between START and END using COLLECTION. Point needs to be somewhere between START and END. PREDICATE (a function called with no arguments) says when to exit. This calls the function that `completion-in-region-function' specifies (passing the same four arguments that it received) to do the work, and returns whatever it does. The return value should be nil if there was no valid completion, else t. (fn START END COLLECTION &optional PREDICATE)Fcompletion--in-region Default function to use for `completion-in-region-function'. Its arguments and return value are as specified for `completion-in-region'. Also respects the obsolete wrapper hook `completion-in-region-functions'. (See `with-wrapper-hook' for details about wrapper hooks.) (fn START END COLLECTION &optional PREDICATE)Vcompletion-in-region-mode-map Keymap activated during `completion-in-region'.Fcompletion-in-region-mode Transient minor mode used during `completion-in-region'. (fn &optional ARG)Vcompletion-at-point-functions Special hook to find the completion table for the entity at point. Each function on this hook is called in turn without any argument and should return either nil, meaning it is not applicable at point, or a function of no arguments to perform completion (discouraged), or a list of the form (START END COLLECTION . PROPS), where: START and END delimit the entity to complete and should include point, COLLECTION is the completion table to use to complete the entity, and PROPS is a property list for additional information. Currently supported properties are all the properties that can appear in `completion-extra-properties' plus: `:predicate' a predicate that completion candidates need to satisfy. `:exclusive' value of `no' means that if the completion table fails to match the text at point, then instead of reporting a completion failure, the completion should try the next completion function. As is the case with most hooks, the functions are responsible for preserving things like point and current buffer. NOTE: These functions should be cheap to run since they're sometimes run from `post-command-hook'; and they should ideally only choose which kind of completion table to use, and not pre-filter it based on the current text between START and END (e.g., they should not obey `completion-styles').Vcompletion--capf-misbehave-funs List of functions found on `completion-at-point-functions' that misbehave. These are functions that neither return completion data nor a completion function but instead perform completion right away.Vcompletion--capf-safe-funs List of well-behaved functions found on `completion-at-point-functions'. These are functions which return proper completion data rather than a completion function or god knows what else.Fcompletion--capf-wrapper (fn FUN WHICH)Fcompletion-at-point Perform completion on the text around point. The completion method is determined by `completion-at-point-functions'.Fcompletion-help-at-point Display the completions on the text around point. The completion method is determined by `completion-at-point-functions'.Vminibuffer-local-completion-map Local keymap for minibuffer input with completion.Vminibuffer-local-must-match-map Local keymap for minibuffer input with completion, for exact match.Vminibuffer-local-filename-completion-map Local keymap for minibuffer input with completion for filenames. Gets combined either with `minibuffer-local-completion-map' or with `minibuffer-local-must-match-map'.Vminibuffer-inactive-mode-map Keymap for use in the minibuffer when it is not active. The non-mouse bindings in this keymap can only be used in minibuffer-only frames, since the minibuffer can normally not be selected when it is not active.Fminibuffer-inactive-mode Major-mode. Uses keymap `minibuffer-inactive-mode-map' and syntax-table `minibuffer-inactive-mode-syntax-table'. This mode runs the hook `minibuffer-inactive-mode-hook', as the final or penultimate step during initialization. \{minibuffer-inactive-mode-map}Fminibuffer--double-dollars (fn STR)Fminibuffer-maybe-quote-filename Protect FILENAME from `substitute-in-file-name', as needed. Useful to give the user default values that won't be substituted. (fn FILENAME)Fcompletion--embedded-envvar-table Completion table for envvars embedded in a string. The envvar syntax (and escaping) rules followed by this table are the same as `substitute-in-file-name'. (fn STRING PRED ACTION)Fcompletion-file-name-table Completion table for file names. (fn STRING PRED ACTION)Vread-file-name-predicate Current predicate used by `read-file-name-internal'.Fcompletion--sifn-requote (fn UPOS QSTR)Vread-file-name-function The function called by `read-file-name' to do its work. It should accept the same arguments as `read-file-name'.Fread-file-name--defaults (fn &optional DIR INITIAL)Fread-file-name Read file name, prompting with PROMPT and completing in directory DIR. The return value is not expanded---you must call `expand-file-name' yourself. DIR is the directory to use for completing relative file names. It should be an absolute directory name, or nil (which means the current buffer's value of `default-directory'). DEFAULT-FILENAME specifies the default file name to return if the user exits the minibuffer with the same non-empty string inserted by this function. If DEFAULT-FILENAME is a string, that serves as the default. If DEFAULT-FILENAME is a list of strings, the first string is the default. If DEFAULT-FILENAME is omitted or nil, then if INITIAL is non-nil, the default is DIR combined with INITIAL; otherwise, if the current buffer is visiting a file, that file serves as the default; otherwise, the default is simply the string inserted into the minibuffer. If the user exits with an empty minibuffer, return an empty string. (This happens only if the user erases the pre-inserted contents, or if `insert-default-directory' is nil.) Fourth arg MUSTMATCH can take the following values: - nil means that the user can exit with any input. - t means that the user is not allowed to exit unless the input is (or completes to) an existing file. - `confirm' means that the user can exit with any input, but she needs to confirm her choice if the input is not an existing file. - `confirm-after-completion' means that the user can exit with any input, but she needs to confirm her choice if she called `minibuffer-complete' right before `minibuffer-complete-and-exit' and the input is not an existing file. - anything else behaves like t except that typing RET does not exit if it does non-null completion. Fifth arg INITIAL specifies text to start with. Sixth arg PREDICATE, if non-nil, should be a function of one argument; then a file name is considered an acceptable completion alternative only if PREDICATE returns non-nil with the file name as its argument. If this command was invoked with the mouse, use a graphical file dialog if `use-dialog-box' is non-nil, and the window system or X toolkit in use provides a file dialog box, and DIR is not a remote file. For graphical file dialogs, any of the special values of MUSTMATCH `confirm' and `confirm-after-completion' are treated as equivalent to nil. Some graphical file dialogs respect a MUSTMATCH value of t, and some do not (or it only has a cosmetic effect, and does not actually prevent the user from entering a non-existent file). See also `read-file-name-completion-ignore-case' and `read-file-name-function'. (fn PROMPT &optional DIR DEFAULT-FILENAME MUSTMATCH INITIAL PREDICATE)Vminibuffer-local-filename-syntax Syntax table used when reading a file name in the minibuffer.Fread-file-name-default Default method for reading file names. See `read-file-name' for the meaning of the arguments. (fn PROMPT &optional DIR DEFAULT-FILENAME MUSTMATCH INITIAL PREDICATE)Finternal-complete-buffer-except Perform completion on all buffers excluding BUFFER. BUFFER nil or omitted means use the current buffer. Like `internal-complete-buffer', but removes BUFFER from the completion list. (fn &optional BUFFER)Fcompletion-emacs21-try-completion (fn STRING TABLE PRED POINT)Fcompletion-emacs21-all-completions (fn STRING TABLE PRED POINT)Fcompletion-emacs22-try-completion (fn STRING TABLE PRED POINT)Fcompletion-emacs22-all-completions (fn STRING TABLE PRED POINT)Fcompletion--merge-suffix Merge end of COMPLETION with beginning of SUFFIX. Simple generalization of the "merge trailing /" done in Emacs-22. Return the new suffix. (fn COMPLETION POINT SUFFIX)Fcompletion-basic--pattern (fn BEFOREPOINT AFTERPOINT BOUNDS)Fcompletion-basic-try-completion (fn STRING TABLE PRED POINT)Fcompletion-basic-all-completions (fn STRING TABLE PRED POINT)Vcompletion-pcm--delim-wild-regex Regular expression matching delimiters controlling the partial-completion. Typically, this regular expression simply matches a delimiter, meaning that completion can add something at (match-beginning 0), but if it has a submatch 1, then completion can add something at (match-end 1). This is used when the delimiter needs to be of size zero (e.g. the transition from lowercase to uppercase characters).Fcompletion-pcm--prepare-delim-re (fn DELIMS)Fcompletion-pcm--pattern-trivial-p (fn PATTERN)Fcompletion-pcm--string->pattern Split STRING into a pattern. A pattern is a list where each element is either a string or a symbol, see `completion-pcm--merge-completions'. (fn STRING &optional POINT)Fcompletion-pcm--optimize-pattern (fn P)Fcompletion-pcm--pattern->regex (fn PATTERN &optional GROUP)Fcompletion-pcm--all-completions Find all completions for PATTERN in TABLE obeying PRED. PATTERN is as returned by `completion-pcm--string->pattern'. (fn PREFIX PATTERN TABLE PRED)Fcompletion-pcm--hilit-commonality (fn PATTERN COMPLETIONS)Fcompletion-pcm--find-all-completions Find all completions for STRING at POINT in TABLE, satisfying PRED. POINT is a position inside STRING. FILTER is a function applied to the return value, that can be used, e.g. to filter out additional entries (because TABLE might not obey PRED). (fn STRING TABLE PRED POINT &optional FILTER)Fcompletion-pcm-all-completions (fn STRING TABLE PRED POINT)Fcompletion--common-suffix Return the common suffix of the strings STRS. (fn STRS)Fcompletion-pcm--merge-completions Extract the commonality in STRS, with the help of PATTERN. PATTERN can contain strings and symbols chosen among `star', `any', `point', and `prefix'. They all match anything (aka ".*") but are merged differently: `any' only grows from the left (when matching "a1b" and "a2b" it gets completed to just "a"). `prefix' only grows from the right (when matching "a1b" and "a2b" it gets completed to just "b"). `star' grows from both ends and is reified into a "*" (when matching "a1b" and "a2b" it gets completed to "a*b"). `point' is like `star' except that it gets reified as the position of point instead of being reified as a "*" character. The underlying idea is that we should return a string which still matches the same set of elements. (fn STRS PATTERN)Fcompletion-pcm--pattern->string (fn PATTERN)Fcompletion-pcm--filename-try-filter Filter to adjust `all' file completion to the behavior of `try'. (fn ALL)Fcompletion-pcm--merge-try (fn PATTERN ALL PREFIX SUFFIX)Fcompletion-pcm-try-completion (fn STRING TABLE PRED POINT)Fcompletion-substring--all-completions (fn STRING TABLE PRED POINT)Fcompletion-substring-try-completion (fn STRING TABLE PRED POINT)Fcompletion-substring-all-completions (fn STRING TABLE PRED POINT)Fcompletion-initials-expand (fn STR TABLE PRED)Fcompletion-initials-all-completions (fn STRING TABLE PRED POINT)Fcompletion-initials-try-completion (fn STRING TABLE PRED POINT)Vcompleting-read-function The function called by `completing-read' to do its work. It should accept the same arguments as `completing-read'.Fcompleting-read-default Default method for reading from the minibuffer with completion. See `completing-read' for the meaning of the arguments. (fn PROMPT COLLECTION &optional PREDICATE REQUIRE-MATCH INITIAL-INPUT HIST DEF INHERIT-INPUT-METHOD)Fminibuffer-insert-file-name-at-point Get a file name at point in original buffer and insert it to minibuffer.Smouse.elc Fmouse--down-1-maybe-follows-link Turn `mouse-1' events into `mouse-2' events if follows-link. Expects to be bound to `down-mouse-1' in `key-translation-map'. (fn &optional PROMPT)Fminor-mode-menu-from-indicator Show menu for minor mode specified by INDICATOR. Interactively, INDICATOR is read using completion. If there is no menu defined for the minor mode, then create one with items `Turn Off' and `Help'. (fn INDICATOR)Fmouse-minor-mode-menu Show minor-mode menu for EVENT on minor modes area of the mode line. (fn EVENT)Fmouse-menu-non-singleton Return menu keybar MENUBAR, or a lone submenu inside it. If MENUBAR defines exactly one submenu, return just that submenu. Otherwise, return MENUBAR. (fn MENUBAR)Fmouse-menu-bar-map Return a keymap equivalent to the menu bar. The contents are the items that would be in the menu bar whether or not it is actually displayed.Fmouse-major-mode-menu Pop up a mode-specific menu of mouse commands. Default to the Edit menu if the major mode doesn't define a menu. (fn EVENT &optional PREFIX)Fmouse-popup-menubar Pop up a menu equivalent to the menu bar for keyboard EVENT with PREFIX. The contents are the items that would be in the menu bar whether or not it is actually displayed. (fn EVENT PREFIX)Fmouse-popup-menubar-stuff Popup a menu like either `mouse-major-mode-menu' or `mouse-popup-menubar'. Use the former if the menu bar is showing, otherwise the latter. (fn EVENT PREFIX)Fmouse-minibuffer-check (fn EVENT)Fmouse-delete-window Delete the window you click on. Do nothing if the frame has just one window. This command must be bound to a mouse click. (fn CLICK)Fmouse-select-window Select the window clicked on; don't move point. (fn CLICK)Ftear-off-window Delete the selected window, and create a new frame displaying its buffer. (fn CLICK)Fmouse-delete-other-windows Delete all windows except the one you click on.Fmouse-split-window-vertically Select Emacs window mouse is on, then split it vertically in half. The window is split at the line clicked on. This command must be bound to a mouse click. (fn CLICK)Fmouse-split-window-horizontally Select Emacs window mouse is on, then split it horizontally in half. The window is split at the column clicked on. This command must be bound to a mouse click. (fn CLICK)Fmouse-drag-line Drag a mode line, header line, or vertical line with the mouse. START-EVENT is the starting mouse event of the drag action. LINE must be one of the symbols `header', `mode', or `vertical'. (fn START-EVENT LINE)Fmouse-drag-mode-line Change the height of a window by dragging on its mode line. START-EVENT is the starting mouse event of the drag action. If the drag happens in a mode line on the bottom of a frame and that frame's `drag-with-mode-line' parameter is non-nil, drag the frame instead. (fn START-EVENT)Fmouse-drag-header-line Change the height of a window by dragging on its header line. START-EVENT is the starting mouse event of the drag action. If the drag happens in a header line on the top of a frame and that frame's `drag-with-header-line' parameter is non-nil, drag the frame instead. (fn START-EVENT)Fmouse-drag-vertical-line Change the width of a window by dragging on a vertical line. START-EVENT is the starting mouse event of the drag action. (fn START-EVENT)Fmouse-resize-frame Helper function for `mouse-drag-frame'. (fn FRAME X-DIFF Y-DIFF &optional X-MOVE Y-MOVE)Fmouse-drag-frame Drag a frame or one of its edges with the mouse. START-EVENT is the starting mouse event of the drag action. Its position window denotes the frame that will be dragged. PART specifies the part that has been dragged and must be one of the symbols 'left', 'top', 'right', 'bottom', 'top-left', 'top-right', 'bottom-left', 'bottom-right' to drag an internal border or edge. If PART equals 'move', this means to move the frame with the mouse. (fn START-EVENT PART)Fmouse-drag-left-edge Drag left edge of a frame with the mouse. START-EVENT is the starting mouse event of the drag action. (fn START-EVENT)Fmouse-drag-top-left-corner Drag top left corner of a frame with the mouse. START-EVENT is the starting mouse event of the drag action. (fn START-EVENT)Fmouse-drag-top-edge Drag top edge of a frame with the mouse. START-EVENT is the starting mouse event of the drag action. (fn START-EVENT)Fmouse-drag-top-right-corner Drag top right corner of a frame with the mouse. START-EVENT is the starting mouse event of the drag action. (fn START-EVENT)Fmouse-drag-right-edge Drag right edge of a frame with the mouse. START-EVENT is the starting mouse event of the drag action. (fn START-EVENT)Fmouse-drag-bottom-right-corner Drag bottom right corner of a frame with the mouse. START-EVENT is the starting mouse event of the drag action. (fn START-EVENT)Fmouse-drag-bottom-edge Drag bottom edge of a frame with the mouse. START-EVENT is the starting mouse event of the drag action. (fn START-EVENT)Fmouse-drag-bottom-left-corner Drag bottom left corner of a frame with the mouse. START-EVENT is the starting mouse event of the drag action. (fn START-EVENT)Fmouse-set-point Move point to the position clicked on with the mouse. This should be bound to a mouse click event type. If PROMOTE-TO-REGION is non-nil and event is a multiple-click, select the corresponding element around point, with the resulting position of point determined by `mouse-select-region-move-to-beginning'. (fn EVENT &optional PROMOTE-TO-REGION)Fmouse-region-match Return non-nil if there's an active region that was set with the mouse.Fmouse-set-region Set the region to the text dragged over, and copy to kill ring. This should be bound to a mouse drag event. See the `mouse-drag-copy-region' variable to control whether this command alters the kill ring or not. (fn CLICK)Fmouse-scroll-subr Scroll the window WINDOW, JUMP lines at a time, until new input arrives. If OVERLAY is an overlay, let it stretch from START to the far edge of the newly visible text. Upon exit, point is at the far edge of the newly visible text. (fn WINDOW JUMP &optional OVERLAY START)Fmouse-drag-region Set the region to the text that the mouse is dragged over. Highlight the drag area as you move the mouse. This must be bound to a button-down mouse event. In Transient Mark mode, the highlighting remains as long as the mark remains active. Otherwise, it remains until the next input event. When the region already exists and `mouse-drag-and-drop-region' is non-nil, this moves the entire region of text to where mouse is dragged over to. (fn START-EVENT)Fmouse-posn-property Look for a property at click position. POS may be either a buffer position or a click position like those returned from `event-start'. If the click position is on a string, the text property PROPERTY is examined. If this is nil or the click is not on a string, then the corresponding buffer position is searched for PROPERTY. If PROPERTY is encountered in one of those places, its value is returned. (fn POS PROPERTY)Fmouse-on-link-p Return non-nil if POS is on a link in the current buffer. POS must specify a buffer position in the current buffer, as a list of the form returned by the `event-start' and `event-end' functions, or a mouse event location in the selected window (see `event-start'). However, if `mouse-1-click-in-non-selected-windows' is non-nil, POS may be a mouse event location in any window. A clickable link is identified by one of the following methods: - If the character at POS has a non-nil `follow-link' text or overlay property, the value of that property determines what to do. - If there is a local key-binding or a keybinding at position POS for the `follow-link' event, the binding of that event determines what to do. The resulting value determine whether POS is inside a link: - If the value is `mouse-face', POS is inside a link if there is a non-nil `mouse-face' property at POS. Return t in this case. - If the value is a function, FUNC, POS is inside a link if the call (FUNC POS) returns non-nil. Return the return value from that call. Arg is (posn-point POS) if POS is a mouse event. - Otherwise, return the value itself. The return value is interpreted as follows: - If it is a string, the mouse-1 event is translated into the first character of the string, i.e. the action of the mouse-1 click is the local or global binding of that character. - If it is a vector, the mouse-1 event is translated into the first element of that vector, i.e. the action of the mouse-1 click is the local or global binding of that event. - Otherwise, the mouse-1 event is translated into a mouse-2 event at the same position. (fn POS)Fmouse-fixup-help-message Fix help message MSG for `mouse-1-click-follows-link'. (fn MSG)Fmouse-drag-track Track mouse drags by highlighting area between point and cursor. The region will be defined with mark and point. (fn START-EVENT)Fmouse--drag-set-mark-and-point (fn START CLICK CLICK-COUNT)Fmouse-skip-word Skip over word, over whitespace, or over identical punctuation. If DIR is positive skip forward; if negative, skip backward. (fn DIR)Fmouse-start-end Return a list of region bounds based on START and END according to MODE. If MODE is 0 then set point to (min START END), mark to (max START END). If MODE is 1 then set point to start of word at (min START END), mark to end of word at (max START END). If MODE is 2 then do the same for lines. (fn START END MODE)Fmouse-set-mark-fast (fn CLICK)Fmouse-undouble-last-event (fn EVENTS)Fmouse-set-mark Set mark at the position clicked on with the mouse. Display cursor at that position for a second. This must be bound to a mouse click. (fn CLICK)Fmouse-kill Kill the region between point and the mouse click. The text is saved in the kill ring, as with \[kill-region]. (fn CLICK)Fmouse-yank-at-click Insert the last stretch of killed text at the position clicked on. Also move point to one end of the text thus inserted (normally the end), and set mark at the beginning. Prefix arguments are interpreted as with \[yank]. If `mouse-yank-at-point' is non-nil, insert at point regardless of where you click. (fn CLICK ARG)Fmouse-yank-primary Insert the primary selection at the position clicked on. Move point to the end of the inserted text, and set mark at beginning. If `mouse-yank-at-point' is non-nil, insert at point regardless of where you click. (fn CLICK)Fmouse-kill-ring-save Copy the region between point and the mouse click in the kill ring. This does not delete the region; it acts like \[kill-ring-save]. (fn CLICK)Fmouse-save-then-kill-delete-region (fn BEG END)Fmouse-save-then-kill Set the region according to CLICK; the second time, kill it. CLICK should be a mouse click event. If the region is inactive, activate it temporarily. Set mark at the original point, and move point to the position of CLICK. If the region is already active, adjust it. Normally, do this by moving point or mark, whichever is closer, to CLICK. But if you have selected whole words or lines, move point or mark to the word or line boundary closest to CLICK instead. If `mouse-drag-copy-region' is non-nil, this command also saves the new region to the kill ring (replacing the previous kill if the previous region was just saved to the kill ring). If this command is called a second consecutive time with the same CLICK position, kill the region (or delete it if `mouse-drag-copy-region' is non-nil) (fn CLICK)Vmouse-secondary-overlay An overlay which records the current secondary selection. It is deleted when there is no secondary selection.Fmouse-start-secondary Set one end of the secondary selection to the position clicked on. Use \[mouse-secondary-save-then-kill] to set the other end and complete the secondary selection. (fn CLICK)Fmouse-set-secondary Set the secondary selection to the text that the mouse is dragged over. This must be bound to a mouse drag event. (fn CLICK)Fmouse-drag-secondary Set the secondary selection to the text that the mouse is dragged over. Highlight the drag area as you move the mouse. This must be bound to a button-down mouse event. The function returns a non-nil value if it creates a secondary selection. (fn START-EVENT)Fmouse-yank-secondary Insert the secondary selection at the position clicked on. Move point to the end of the inserted text. If `mouse-yank-at-point' is non-nil, insert at point regardless of where you click. (fn CLICK)Fmouse-kill-secondary Kill the text in the secondary selection. This is intended more as a keyboard command than as a mouse command but it can work as either one. The current buffer (in case of keyboard use), or the buffer clicked on, must be the one that the secondary selection is in. This requirement is to prevent accidents.Fmouse-secondary-save-then-kill Set the secondary selection and save it to the kill ring. The second time, kill it. CLICK should be a mouse click event. If you have not called `mouse-start-secondary' in the clicked buffer, activate the secondary selection and set it between point and the click position CLICK. Otherwise, adjust the bounds of the secondary selection. Normally, do this by moving its beginning or end, whichever is closer, to CLICK. But if you have selected whole words or lines, adjust to the word or line boundary closest to CLICK instead. If this command is called a second consecutive time with the same CLICK position, kill the secondary selection. (fn CLICK)Fsecondary-selection-exist-p Return non-nil if the secondary selection exists in the current buffer.Fsecondary-selection-to-region Set beginning and end of the region to those of the secondary selection. This puts mark and point at the beginning and the end of the secondary selection, respectively. This works when the secondary selection exists and the region does not exist in current buffer; the secondary selection will be deleted afterward. If the region is active, or the secondary selection doesn't exist, this function does nothing.Fsecondary-selection-from-region Set beginning and end of the secondary selection to those of the region. When there is no region, this function does nothing.Vmouse-buffer-menu-mode-groups How to group various major modes together in \[mouse-buffer-menu]. Each element has the form (REGEXP . GROUPNAME). If the major mode's name string matches REGEXP, use GROUPNAME instead.Fmouse-buffer-menu Pop up a menu of buffers for selection with the mouse. This switches buffers in the window that you clicked on, and selects that window. (fn EVENT)Fmouse-buffer-menu-alist (fn BUFFERS)Fmouse-buffer-menu-split (fn TITLE ALIST)Vx-fixed-font-alist X fonts suitable for use in Emacs.Fmouse-select-font Prompt for a font name, using `x-popup-menu', and return it.Fmouse-set-font Set the default font for the selected frame. The argument FONTS is a list of font names; the first valid font in this list is used. When called interactively, pop up a menu and allow the user to choose a font. (fn &rest FONTS)Fmouse-appearance-menu Show a menu for changing the default face in the current buffer. (fn EVENT)Fmouse-drag-and-drop-region Move text in the region to point where mouse is dragged to. The transportation of text is also referred as `drag and drop'. When text is dragged over to a different buffer, or if a modifier key was pressed when dropping, and the value of the variable `mouse-drag-and-drop-region' is that modifier, the text is copied instead of being cut. (fn EVENT)Fmouse--strip-first-event (fn PROMPT)Smwheel.elc Vmwheel-inhibit-click-event-timer Timer running while mouse wheel click event is inhibited.Fmwheel-inhibit-click-timeout Handler for `mwheel-inhibit-click-event-timer'.Fmwheel-filter-click-events Discard `mouse-wheel-click-event' while scrolling the mouse.Vmwheel-scroll-up-function Function that does the job of scrolling upward.Vmwheel-scroll-down-function Function that does the job of scrolling downward.Vmwheel-scroll-left-function Function that does the job of scrolling left.Vmwheel-scroll-right-function Function that does the job of scrolling right.Vmouse-wheel-left-event Event used for scrolling left.Vmouse-wheel-right-event Event used for scrolling right.Fmwheel-scroll Scroll up or down according to the EVENT. This should be bound only to mouse buttons 4, 5, 6, and 7 on non-Windows systems.Vmouse-wheel-mode Non-nil if Mouse-Wheel mode is enabled. See the `mouse-wheel-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `mouse-wheel-mode'.Fmouse-wheel-mode Toggle mouse wheel support (Mouse Wheel mode). With a prefix argument ARG, enable Mouse Wheel mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil.Fmwheel-install Enable mouse wheel support.Snewcomment.elc Vcomment-use-syntax Non-nil if syntax-tables can be used instead of regexps. Can also be `undecided' which means that a somewhat expensive test will be used to try to determine whether syntax-tables should be trusted to understand comments or not in the given buffer. Major modes should set this variable.Vcomment-start String to insert to start a new comment, or nil if no comment syntax.Vcomment-start-skip Regexp to match the start of a comment plus everything up to its body. If there are any \(...\) pairs and `comment-use-syntax' is nil, the comment delimiter text is held to begin at the place matched by the close of the first pair.Vcomment-end-skip Regexp to match the end of a comment plus everything back to its body.Vcomment-end String to insert to end a new comment. Should be an empty string if comments are terminated by end-of-line.Vcomment-indent-function Function to compute desired indentation for a comment. This function is called with no args with point at the beginning of the comment's starting delimiter and should return either the desired column indentation, a range of acceptable indentation (MIN . MAX), or nil. If nil is returned, indentation is delegated to `indent-according-to-mode'.Vcomment-insert-comment-function Function to insert a comment when a line doesn't contain one. The function has no args. Applicable at least in modes for languages like fixed-format Fortran where comments always start in column zero.Vcomment-region-function Function to comment a region. Its args are the same as those of `comment-region', but BEG and END are guaranteed to be correctly ordered. It is called within `save-excursion'. Applicable at least in modes for languages like fixed-format Fortran where comments always start in column zero.Vuncomment-region-function Function to uncomment a region. Its args are the same as those of `uncomment-region', but BEG and END are guaranteed to be correctly ordered. It is called within `save-excursion'. Applicable at least in modes for languages like fixed-format Fortran where comments always start in column zero.Vcomment-quote-nested Non-nil if nested comments should be quoted. This should be locally set by each major mode if needed.Vcomment-quote-nested-function Function to quote nested comments in a region. It takes the same arguments as `comment-quote-nested-default', and is called with the buffer narrowed to a single comment.Vcomment-continue Continuation string to insert for multiline comments. This string will be added at the beginning of each line except the very first one when commenting a region with a commenting style that allows comments to span several lines. It should generally have the same length as `comment-start' in order to preserve indentation. If it is nil a value will be automatically derived from `comment-start' by replacing its first character with a space.Vcomment-add How many more comment chars should be inserted by `comment-region'. This determines the default value of the numeric argument of `comment-region'. The `plain' comment style doubles this value. This should generally stay 0, except for a few modes like Lisp where it is 1 so that regions are commented with two or three semi-colons.Vcomment-styles Comment region style definitions. Each style is defined with a form (STYLE . (MULTI ALIGN EXTRA INDENT DOC)). DOC should succinctly describe the style. STYLE should be a mnemonic symbol. MULTI specifies that comments are allowed to span multiple lines. e.g. in C it comments regions as /* blabla * bli */ rather than /* blabla */ /* bli */ if `comment-end' is empty, this has no effect. ALIGN specifies that the `comment-end' markers should be aligned. e.g. in C it comments regions as /* blabla */ /* bli */ rather than /* blabla */ /* bli */ if `comment-end' is empty, this has no effect, unless EXTRA is also set, in which case the comment gets wrapped in a box. EXTRA specifies that an extra line should be used before and after the region to comment (to put the `comment-end' and `comment-start'). e.g. in C it comments regions as /* * blabla * bli */ rather than /* blabla * bli */ if the comment style is not multi line, this has no effect, unless ALIGN is also set, in which case the comment gets wrapped in a box. INDENT specifies that the `comment-start' markers should not be put at the left margin but at the current indentation of the region to comment. If INDENT is `multi-char', that means indent multi-character comment starters, but not one-character comment starters.Fcomment-string-strip Strip STR of any leading (if BEFOREP) and/or trailing (if AFTERP) space. (fn STR BEFOREP AFTERP)Fcomment-string-reverse Return the mirror image of string S, without any trailing space. (fn S)Fcomment-normalize-vars Check and set up variables needed by other commenting functions. All the `comment-*' commands call this function to set up various variables, like `comment-start', to ensure that the commenting functions work correctly. Lisp callers of any other `comment-*' function should first call this function explicitly. (fn &optional NOERROR)Fcomment-quote-re (fn STR UNP)Fcomment-quote-nested Quote or unquote nested comments. If UNP is non-nil, unquote nested comment markers. (fn CS CE UNP)Fcomment-quote-nested-default Quote comment delimiters in the buffer. It expects to be called with the buffer narrowed to a single comment. It is used as a default for `comment-quote-nested-function'. The arguments CS and CE are strings matching comment starting and ending delimiters respectively. If UNP is non-nil, comments are unquoted instead. To quote the delimiters, a \ is inserted after the first character of CS or CE. If CE is a single character it will change CE into !CS. (fn CS CE UNP)Vcomment-use-global-state Non-nil means that the global syntactic context is used. More specifically, it means that `syntax-ppss' is used to find out whether point is within a string or not. Major modes whose syntax is not faithfully described by the syntax-tables (or where `font-lock-syntax-table' is radically different from the main syntax table) can set this to nil, then `syntax-ppss' cache won't be used in comment-related routines.Fcomment-search-forward Find a comment start between point and LIMIT. Moves point to inside the comment and returns the position of the comment-starter. If no comment is found, moves point to LIMIT and raises an error or returns nil if NOERROR is non-nil. Ensure that `comment-normalize-vars' has been called before you use this. (fn LIMIT &optional NOERROR)Fcomment-search-backward Find a comment start between LIMIT and point. Moves point to inside the comment and returns the position of the comment-starter. If no comment is found, moves point to LIMIT and raises an error or returns nil if NOERROR is non-nil. Ensure that `comment-normalize-vars' has been called before you use this. (fn &optional LIMIT NOERROR)Fcomment-beginning Find the beginning of the enclosing comment. Returns nil if not inside a comment, else moves point and returns the same as `comment-search-backward'.Fcomment-forward Skip forward over N comments. Just like `forward-comment' but only for positive N and can use regexps instead of syntax. (fn &optional N)Fcomment-enter-backward Move from the end of a comment to the end of its content. Point is assumed to be just at the end of a comment.Fcomment-indent-default Default for `comment-indent-function'.Fcomment-choose-indent Choose the indentation to use for a right-hand-side comment. The criteria are (in this order): - try to keep the comment's text within `comment-fill-column'. - try to align with surrounding comments. - prefer INDENT (or `comment-column' if nil). Point is expected to be at the start of the comment. (fn &optional INDENT)Fcomment-indent Indent this line's comment to `comment-column', or insert an empty comment. If CONTINUE is non-nil, use the `comment-continue' markers if any. (fn &optional CONTINUE)Fcomment-set-column Set the comment column based on point. With no ARG, set the comment column to the current column. With just minus as arg, kill any comment on this line. With any other arg, set comment column to indentation of the previous comment and then align or create a comment on this line at that column. (fn ARG)Fcomment-kill Kill the first comment on this line, if any. With prefix ARG, kill comments on that many lines starting with this one. (fn ARG)Fcomment-padright Construct a string composed of STR plus `comment-padding'. It also adds N copies of the last non-whitespace chars of STR. If STR already contains padding, the corresponding amount is ignored from `comment-padding'. N defaults to 0. If N is `re', a regexp is returned instead, that would match the string for any N. (fn STR &optional N)Fcomment-padleft Construct a string composed of `comment-padding' plus STR. It also adds N copies of the first non-whitespace chars of STR. If STR already contains padding, the corresponding amount is ignored from `comment-padding'. N defaults to 0. If N is `re', a regexp is returned instead, that would match the string for any N. (fn STR &optional N)Funcomment-region Uncomment each line in the BEG .. END region. The numeric prefix ARG can specify a number of chars to remove from the comment delimiters. (fn BEG END &optional ARG)Funcomment-region-default Uncomment each line in the BEG .. END region. The numeric prefix ARG can specify a number of chars to remove from the comment delimiters. This function is the default value of `uncomment-region-function'. (fn BEG END &optional ARG)Fcomment-make-bol-ws Make a white-space string of width LEN for use at BOL. When `indent-tabs-mode' is non-nil, tab characters will be used. (fn LEN)Fcomment-make-extra-lines Make the leading and trailing extra lines. This is used for `extra-line' style (or `box' style if BLOCK is specified). (fn CS CE CCS CCE MIN-INDENT MAX-INDENT &optional BLOCK)Fcomment-with-narrowing Execute BODY with BEG..END narrowing. Space is added (and then removed) at the beginning for the text's indentation to be kept as it was before narrowing. (fn BEG END &rest BODY)Fcomment-add Compute the number of extra comment starter characters. (Extra semicolons in Lisp mode, extra stars in C mode, etc.) If ARG is non-nil, just follow ARG. If the comment starter is multi-char, just follow ARG. Otherwise obey `comment-add'. (fn ARG)Fcomment-region-internal Comment region BEG .. END. CS and CE are the comment start string and comment end string, respectively. CCS and CCE are the comment continuation strings for the start and end of lines, respectively (default to CS and CE). BLOCK indicates that end of lines should be marked with either CCE, CE or CS (if CE is empty) and that those markers should be aligned. LINES indicates that an extra lines will be used at the beginning and end of the region for CE and CS. INDENT indicates to put CS and CCS at the current indentation of the region rather than at left margin. (fn BEG END CS CE &optional CCS CCE BLOCK LINES INDENT)Fcomment-region Comment or uncomment each line in the region. With just \[universal-argument] prefix arg, uncomment each line in region BEG .. END. Numeric prefix ARG means use ARG comment characters. If ARG is negative, delete that many comment characters instead. The strings used as comment starts are built from `comment-start' and `comment-padding'; the strings used as comment ends are built from `comment-end' and `comment-padding'. By default, the `comment-start' markers are inserted at the current indentation of the region, and comments are terminated on each line (even for syntaxes in which newline does not end the comment and blank lines do not get comments). This can be changed with `comment-style'. (fn BEG END &optional ARG)Fcomment-region-default (fn BEG END &optional ARG)Fcomment-box Comment out the BEG .. END region, putting it inside a box. The numeric prefix ARG specifies how many characters to add to begin- and end- comment markers additionally to what variable `comment-add' already specifies. (fn BEG END &optional ARG)Fcomment-only-p Return non-nil if the text between BEG and END is all comments. (fn BEG END)Fcomment-or-uncomment-region Call `comment-region', unless the region only consists of comments, in which case call `uncomment-region'. If a prefix arg is given, it is passed on to the respective function. (fn BEG END &optional ARG)Fcomment-dwim Call the comment command you want (Do What I Mean). If the region is active and `transient-mark-mode' is on, call `comment-region' (unless it only consists of comments, in which case it calls `uncomment-region'). Else, if the current line is empty, call `comment-insert-comment-function' if it is defined, otherwise insert a comment and indent it. Else if a prefix ARG is specified, call `comment-kill'. Else, call `comment-indent'. You can configure `comment-style' to change the way regions are commented. (fn ARG)Fcomment-valid-prefix-p Check that the adaptive fill prefix is consistent with the context. PREFIX is the prefix (presumably guessed by `adaptive-fill-mode'). COMPOS is the position of the beginning of the comment we're in, or nil if we're not inside a comment. (fn PREFIX COMPOS)Fcomment-indent-new-line Break line at point and indent, continuing comment if within one. This indents the body of the continued comment under the previous comment line. This command is intended for styles where you write a comment per line, starting a new comment (and terminating it if necessary) on each line. If you want to continue one comment across several lines, use \[newline-and-indent]. If a fill column is specified, it overrides the use of the comment column or comment indentation. The inserted newline is marked hard if variable `use-hard-newlines' is true, unless optional argument SOFT is non-nil. (fn &optional SOFT)Fcomment-line Comment or uncomment current line and leave point after it. With positive prefix, apply to N lines including current one. With negative prefix, apply to -N lines above. Also, further consecutive invocations of this command will inherit the negative argument. If region is active, comment lines in active region instead. Unlike `comment-dwim', this always comments whole lines. (fn N)Sobarray.elc Vobarray-default-size The value 59 is an arbitrary prime number that gives a good hash.Fobarray-make Return a new obarray of size SIZE or `obarray-default-size'. (fn &optional SIZE)Fobarray-size Return the number of slots of obarray OB. (fn OB)Fobarrayp Return t if OBJECT is an obarray. (fn OBJECT)Fobarray-get Return symbol named NAME if it is contained in obarray OB. Return nil otherwise. (fn OB NAME)Fobarray-put Return symbol named NAME from obarray OB. Creates and adds the symbol if doesn't exist. (fn OB NAME)Fobarray-remove Remove symbol named NAME if it is contained in obarray OB. Return t on success, nil otherwise. (fn OB NAME)Fobarray-map Call function FN on every symbol in obarray OB and return nil. (fn FN OB)Selisp-mode.elc Vemacs-lisp-mode-syntax-table Syntax table used in `emacs-lisp-mode'.Vemacs-lisp-mode-map Keymap for Emacs Lisp mode. All commands in `lisp-mode-shared-map' are inherited by this map.Femacs-lisp-byte-compile Byte compile the file containing the current buffer.Femacs-lisp-byte-compile-and-load Byte-compile the current file (if it has changed), then load compiled code.Femacs-lisp-macroexpand Macroexpand the form after point. Comments in the form will be lost.Femacs-lisp-mode Major mode for editing Lisp code to run in Emacs. Commands: Delete converts tabs to spaces as it moves back. Blank lines separate paragraphs. Semicolons start comments. \{emacs-lisp-mode-map} In addition to any hooks its parent mode `prog-mode' might have run, this mode runs the hook `emacs-lisp-mode-hook', as the final or penultimate step during initialization.Felisp--font-lock-flush-elisp-buffers (fn &optional FILE)Felisp--local-variables-1 Return the vars locally bound around the witness, or nil if not found. (fn VARS SEXP)Felisp--local-variables Return a list of locally let-bound variables at point.Felisp--expect-function-p Return non-nil if the symbol at point is expected to be a function. (fn POS)Felisp--form-quoted-p Return non-nil if the form at POS is not evaluated. It can be quoted, or be inside a quoted form. (fn POS)Felisp--company-doc-buffer (fn STR)Felisp--company-doc-string (fn STR)Felisp--company-location (fn STR)Felisp-completion-at-point Function used for `completion-at-point-functions' in `emacs-lisp-mode'. If the context at point allows only a certain category of symbols (e.g. functions, or variables) then the returned completions are restricted to that category. In contexts where any symbol is possible (following a quote, for example), functions are annotated with "<f>" via the `:annotation-function' property.Flisp-completion-at-point (fn &optional PREDICATE)Felisp--xref-make-xref Return an xref for TYPE SYMBOL in FILE. TYPE must be a type in `find-function-regexp-alist' (use nil for 'defun). If SUMMARY is non-nil, use it for the summary; otherwise build the summary from TYPE and SYMBOL. (fn TYPE SYMBOL FILE &optional SUMMARY)Velisp-xref-find-def-functions List of functions to be run from `elisp--xref-find-definitions' to add additional xrefs. Called with one arg; the symbol whose definition is desired. Each function should return a list of xrefs, or nil; the first non-nil result supercedes the xrefs produced by `elisp--xref-find-definitions'.Felisp--xref-find-definitions (fn SYMBOL)Fxref-elisp-location-p--cmacro compiler-macro for inlining `xref-elisp-location-p'. (fn CL-WHOLE-ARG CL-X)Fxref-elisp-location-p (fn CL-X)Fxref-elisp-location-symbol--cmacro compiler-macro for inlining `xref-elisp-location-symbol'. (fn CL-WHOLE-ARG CL-X)Fxref-elisp-location-symbol Access slot "symbol" of `(xref-elisp-location (:constructor xref-make-elisp-location (symbol type file)))' struct CL-X. (fn CL-X)Fxref-elisp-location-type--cmacro compiler-macro for inlining `xref-elisp-location-type'. (fn CL-WHOLE-ARG CL-X)Fxref-elisp-location-type Access slot "type" of `(xref-elisp-location (:constructor xref-make-elisp-location (symbol type file)))' struct CL-X. (fn CL-X)Fxref-elisp-location-file--cmacro compiler-macro for inlining `xref-elisp-location-file'. (fn CL-WHOLE-ARG CL-X)Fxref-elisp-location-file Access slot "file" of `(xref-elisp-location (:constructor xref-make-elisp-location (symbol type file)))' struct CL-X. (fn CL-X)Fmake-xref-elisp-location--cmacro compiler-macro for inlining `make-xref-elisp-location'. (fn CL-WHOLE &cl-quote &key SYMBOL TYPE FILE)Fmake-xref-elisp-location Constructor for objects of type `xref-elisp-location'. (fn &key SYMBOL TYPE FILE)Fxref-make-elisp-location--cmacro compiler-macro for inlining `xref-make-elisp-location'. (fn CL-WHOLE-ARG SYMBOL TYPE FILE)Fxref-make-elisp-location Constructor for objects of type `xref-elisp-location'. (fn SYMBOL TYPE FILE)Vlisp-interaction-mode-map Keymap for Lisp Interaction mode. All commands in `lisp-mode-shared-map' are inherited by this map.Flisp-interaction-mode Major mode for typing and evaluating Lisp forms. Like Lisp mode except that \[eval-print-last-sexp] evals the Lisp expression before point, and prints its value into the buffer, advancing point. Note that printing is controlled by `eval-expression-print-length' and `eval-expression-print-level'. Commands: Delete converts tabs to spaces as it moves back. Paragraphs are separated only by blank lines. Semicolons start comments. \{lisp-interaction-mode-map} In addition to any hooks its parent mode `emacs-lisp-mode' might have run, this mode runs the hook `lisp-interaction-mode-hook', as the final or penultimate step during initialization.Felisp--byte-code-comment Try to syntactically mark the #@NNN ....^_ docstrings in byte-code files. (fn END &optional POINT)Felisp-byte-code-syntax-propertize (fn START END)Felisp-byte-code-mode Major mode for *.elc files. In addition to any hooks its parent mode `emacs-lisp-mode' might have run, this mode runs the hook `elisp-byte-code-mode-hook', as the final or penultimate step during initialization. \{elisp-byte-code-mode-map}Feval-print-last-sexp Evaluate sexp before point; print value into current buffer. Normally, this function truncates long output according to the value of the variables `eval-expression-print-length' and `eval-expression-print-level'. With a prefix argument of zero, however, there is no such truncation. Such a prefix argument also causes integers to be printed in several additional formats (octal, hexadecimal, and character). If `eval-expression-debug-on-error' is non-nil, which is the default, this command arranges for all errors to enter the debugger. (fn &optional EVAL-LAST-SEXP-ARG-INTERNAL)Flast-sexp-setup-props Set up text properties for the output of `elisp--eval-last-sexp'. BEG and END are the start and end of the output in current-buffer. VALUE is the Lisp value printed, ALT1 and ALT2 are strings for the alternative printed representations that can be displayed. (fn BEG END VALUE ALT1 ALT2)Felisp-last-sexp-toggle-display Toggle between abbreviated and unabbreviated printed representations. (fn &optional ARG)Fprin1-char Return a string representing CHAR as a character rather than as an integer. If CHAR is not a character, return nil. (fn CHAR)Felisp--preceding-sexp Return sexp before the point.Felisp--eval-last-sexp Evaluate sexp before point; print value in the echo area. If EVAL-LAST-SEXP-ARG-INTERNAL is non-nil, print output into current buffer. If EVAL-LAST-SEXP-ARG-INTERNAL is `0', print output with no limit on the length and level of lists, and include additional formats for integers (octal, hexadecimal, and character). (fn EVAL-LAST-SEXP-ARG-INTERNAL)Felisp--eval-last-sexp-print-value (fn VALUE OUTPUT &optional NO-TRUNCATE CHAR-PRINT-LIMIT)Feval-sexp-add-defvars Prepend EXP with all the `defvar's that precede it in the buffer. POS specifies the starting position where EXP was found and defaults to point. (fn EXP &optional POS)Feval-last-sexp Evaluate sexp before point; print value in the echo area. Interactively, with a non `-' prefix argument, print output into current buffer. Normally, this function truncates long output according to the value of the variables `eval-expression-print-length' and `eval-expression-print-level'. With a prefix argument of zero, however, there is no such truncation. Integer values are printed in several formats (decimal, octal, and hexadecimal). When the prefix argument is -1 or the value doesn't exceed `eval-expression-print-maximum-character', an integer value is also printed as a character of that codepoint. If `eval-expression-debug-on-error' is non-nil, which is the default, this command arranges for all errors to enter the debugger. (fn EVAL-LAST-SEXP-ARG-INTERNAL)Felisp--eval-defun-1 Treat some expressions specially. Reset the `defvar' and `defcustom' variables to the initial value. (For `defcustom', use the :set function if there is one.) Reinitialize the face according to the `defface' specification. (fn FORM)Felisp--eval-defun Evaluate defun that point is in or before. The value is displayed in the echo area. If the current defun is actually a call to `defvar', then reset the variable using the initial value expression even if the variable already has some other value. (Normally `defvar' does not change the variable's value if it already has a value.) Return the result of evaluation.Feval-defun Evaluate the top-level form containing point, or after point. If the current defun is actually a call to `defvar' or `defcustom', evaluating it this way resets the variable using its initial value expression (using the defcustom's :set function if there is one), even if the variable already has some other value. (Normally `defvar' and `defcustom' do not alter the value if there already is one.) In an analogous way, evaluating a `defface' overrides any customizations of the face, so that it becomes defined exactly as the `defface' expression says. If `eval-expression-debug-on-error' is non-nil, which is the default, this command arranges for all errors to enter the debugger. With a prefix argument, instrument the code for Edebug. If acting on a `defun' for FUNCTION, and the function was instrumented, `Edebug: FUNCTION' is printed in the echo area. If not instrumented, just FUNCTION is printed. If not acting on a `defun', the result of evaluation is displayed in the echo area. This display is controlled by the variables `eval-expression-print-length' and `eval-expression-print-level', which see. (fn EDEBUG-IT)Velisp--eldoc-last-data Bookkeeping; elements are as follows: 0 - contains the last symbol read from the buffer. 1 - contains the string last displayed in the echo area for variables, or argument string for functions. 2 - `function' if function args, `variable' if variable documentation.Felisp-eldoc-documentation-function `eldoc-documentation-function' (which see) for Emacs Lisp.Felisp-get-fnsym-args-string Return a string containing the parameter list of the function SYM. If SYM is a subr and no arglist is obtainable from the docstring or elsewhere, return a 1-line docstring. (fn SYM &optional INDEX PREFIX)Felisp--highlight-function-argument Highlight argument INDEX in ARGS list for function SYM. In the absence of INDEX, just call `eldoc-docstring-format-sym-doc'. (fn SYM ARGS INDEX PREFIX)Felisp-get-var-docstring (fn SYM)Felisp--last-data-store (fn SYMBOL DOC TYPE)Felisp--docstring-first-line (fn DOC)Felisp-function-argstring Return ARGLIST as a string enclosed by (). ARGLIST is either a string, or a list of strings or symbols. (fn ARGLIST)Felisp-flymake-checkdoc A Flymake backend for `checkdoc'. Calls REPORT-FN directly. (fn REPORT-FN &rest ARGS)Felisp-flymake--byte-compile-done (fn REPORT-FN SOURCE-BUFFER OUTPUT-BUFFER)Velisp-flymake--byte-compile-process Buffer-local process started for byte-compiling the buffer.Felisp-flymake-byte-compile A Flymake backend for elisp byte compilation. Spawn an Emacs process that byte-compiles a file representing the current buffer state and calls REPORT-FN when done. (fn REPORT-FN &rest ARGS)Felisp-flymake--batch-compile-for-flymake Helper for `elisp-flymake-byte-compile'. Runs in a batch-mode Emacs. Interactively use variable `buffer-file-name' for FILE. (fn &optional FILE)Sprog-mode.elc Vprog-mode-map Keymap used for programming modes.Vprog-indentation-context When non-nil, provides context for indenting embedded code chunks. There are languages where part of the code is actually written in a sub language, e.g., a Yacc/Bison or ANTLR grammar can also include JS or Python code. This variable enables the primary mode of the main language to use the indentation engine of the sub-mode for lines in code chunks written in the sub-mode's language. When a major mode of such a main language decides to delegate the indentation of a line/region to the indentation engine of the sub mode, it should bind this variable to non-nil around the call. The non-nil value should be a list of the form: (FIRST-COLUMN . REST) FIRST-COLUMN is the column the indentation engine of the sub-mode should use for top-level language constructs inside the code chunk (instead of 0). REST is currently unused.Fprog-indent-sexp Indent the expression after point. When interactively called with prefix, indent the enclosing defun instead. (fn &optional DEFUN)Fprog-first-column Return the indentation column normally used for top-level constructs.Vprettify-symbols-alist Alist of symbol prettifications. Each element looks like (SYMBOL . CHARACTER), where the symbol matching SYMBOL (a string, not a regexp) will be shown as CHARACTER instead. CHARACTER can be a character, or it can be a list or vector, in which case it will be used to compose the new symbol as per the third argument of `compose-region'.Fprettify-symbols-default-compose-p Return true iff the symbol MATCH should be composed. The symbol starts at position START and ends at position END. This is the default for `prettify-symbols-compose-predicate' which is suitable for most programming languages such as C or Lisp. (fn START END MATCH)Vprettify-symbols-compose-predicate A predicate for deciding if the currently matched symbol is to be composed. The matched symbol is the car of one entry in `prettify-symbols-alist'. The predicate receives the match's start and end positions as well as the match-string as arguments.Fprettify-symbols--compose-symbol Compose a sequence of characters into a symbol. Regexp match data 0 specifies the characters to be composed. (fn ALIST)Vprettify-symbols-mode Non-nil if Prettify-Symbols mode is enabled. Use the command `prettify-symbols-mode' to change this variable.Fprettify-symbols-mode Toggle Prettify Symbols mode. With a prefix argument ARG, enable Prettify Symbols mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Prettify Symbols mode and font-locking are enabled, symbols are prettified (displayed as composed characters) according to the rules in `prettify-symbols-alist' (which see), which are locally defined by major modes supporting prettifying. To add further customizations for a given major mode, you can modify `prettify-symbols-alist' thus: (add-hook \='emacs-lisp-mode-hook (lambda () (push \='("<=" . ?≤) prettify-symbols-alist))) You can enable this mode locally in desired buffers, or use `global-prettify-symbols-mode' to enable it for all modes that support it. (fn &optional ARG)Fglobal-prettify-symbols-mode Toggle Prettify-Symbols mode in all buffers. With prefix ARG, enable Global Prettify-Symbols mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Prettify-Symbols mode is enabled in all buffers where `turn-on-prettify-symbols-mode' would do it. See `prettify-symbols-mode' for more information on Prettify-Symbols mode. (fn &optional ARG)Fprog-mode Major mode for editing programming language source code. This mode runs the hook `prog-mode-hook', as the final or penultimate step during initialization. \{prog-mode-map}Sregister.elc Fregisterv-p--cmacro compiler-macro for inlining `registerv-p'. (fn CL-WHOLE-ARG CL-X)Fregisterv-p (fn CL-X)Fregisterv-data--cmacro compiler-macro for inlining `registerv-data'. (fn CL-WHOLE-ARG CL-X)Fregisterv-data Access slot "data" of `(registerv (:constructor nil) (:constructor registerv--make (&optional data print-func jump-func insert-func)) (:copier nil) (:type vector) :named)' struct CL-X. (fn CL-X)Fregisterv-print-func--cmacro compiler-macro for inlining `registerv-print-func'. (fn CL-WHOLE-ARG CL-X)Fregisterv-print-func Access slot "print-func" of `(registerv (:constructor nil) (:constructor registerv--make (&optional data print-func jump-func insert-func)) (:copier nil) (:type vector) :named)' struct CL-X. (fn CL-X)Fregisterv-jump-func--cmacro compiler-macro for inlining `registerv-jump-func'. (fn CL-WHOLE-ARG CL-X)Fregisterv-jump-func Access slot "jump-func" of `(registerv (:constructor nil) (:constructor registerv--make (&optional data print-func jump-func insert-func)) (:copier nil) (:type vector) :named)' struct CL-X. (fn CL-X)Fregisterv-insert-func--cmacro compiler-macro for inlining `registerv-insert-func'. (fn CL-WHOLE-ARG CL-X)Fregisterv-insert-func Access slot "insert-func" of `(registerv (:constructor nil) (:constructor registerv--make (&optional data print-func jump-func insert-func)) (:copier nil) (:type vector) :named)' struct CL-X. (fn CL-X)Fregisterv--make--cmacro compiler-macro for inlining `registerv--make'. (fn CL-WHOLE-ARG &optional DATA PRINT-FUNC JUMP-FUNC INSERT-FUNC)Fregisterv--make Constructor for objects of type `registerv'. (fn &optional DATA PRINT-FUNC JUMP-FUNC INSERT-FUNC)Fregisterv-make Create a register value object. DATA can be any value. PRINT-FUNC if provided controls how `list-registers' and `view-register' print the register. It should be a function receiving one argument DATA and print text that completes this sentence: Register X contains [TEXT PRINTED BY PRINT-FUNC] JUMP-FUNC if provided, controls how `jump-to-register' jumps to the register. INSERT-FUNC if provided, controls how `insert-register' insert the register. They both receive DATA as argument. (fn DATA &key PRINT-FUNC JUMP-FUNC INSERT-FUNC)Vregister-alist Alist of elements (NAME . CONTENTS), one for each Emacs register. NAME is a character (a number). CONTENTS is a string, number, marker, list or a struct returned by `registerv-make'. A list of strings represents a rectangle. A list of the form (file . FILE-NAME) represents the file named FILE-NAME. A list of the form (file-query FILE-NAME POSITION) represents position POSITION in the file named FILE-NAME, but query before visiting it. A list of the form (WINDOW-CONFIGURATION POSITION) represents a saved window configuration plus a saved value of point. A list of the form (FRAME-CONFIGURATION POSITION) represents a saved frame configuration plus a saved value of point.Fget-register Return contents of Emacs register named REGISTER, or nil if none. (fn REGISTER)Fset-register Set contents of Emacs register named REGISTER to VALUE. Returns VALUE. See the documentation of the variable `register-alist' for possible VALUEs. (fn REGISTER VALUE)Fregister-describe-oneline One-line description of register C. (fn C)Fregister-preview-default Default function for the variable `register-preview-function'. (fn R)Vregister-preview-function Function to format a register for previewing. Takes one argument, a cons (NAME . CONTENTS) as found in `register-alist'. Returns a string.Fregister-preview Pop up a window to show register preview in BUFFER. If SHOW-EMPTY is non-nil show the window even if no registers. Format of each entry is controlled by the variable `register-preview-function'. (fn BUFFER &optional SHOW-EMPTY)Fregister-read-with-preview Read and return a register name, possibly showing existing registers. Prompt with the string PROMPT. If `register-alist' and `register-preview-delay' are both non-nil, display a window listing existing registers after `register-preview-delay' seconds. If `help-char' (or a member of `help-event-list') is pressed, display such a window regardless. (fn PROMPT)Fpoint-to-register Store current location of point in register REGISTER. With prefix argument, store current frame configuration. Use \[jump-to-register] to go to that location or restore that configuration. Argument is a character, naming the register. Interactively, reads the register using `register-read-with-preview'. (fn REGISTER &optional ARG)Fwindow-configuration-to-register Store the window configuration of the selected frame in register REGISTER. Use \[jump-to-register] to restore the configuration. Argument is a character, naming the register. Interactively, reads the register using `register-read-with-preview'. (fn REGISTER &optional ARG)Fframe-configuration-to-register Store the window configuration of all frames in register REGISTER. Use \[jump-to-register] to restore the configuration. Argument is a character, naming the register. Interactively, reads the register using `register-read-with-preview'. (fn REGISTER &optional ARG)Fjump-to-register Move point to location stored in a register. If the register contains a file name, find that file. (To put a file name in a register, you must use `set-register'.) If the register contains a window configuration (one frame) or a frameset (all frames), restore that frame or all frames accordingly. First argument is a character, naming the register. Optional second arg non-nil (interactively, prefix argument) says to delete any existing frames that the frameset doesn't mention. (Otherwise, these frames are iconified.) Interactively, reads the register using `register-read-with-preview'. (fn REGISTER &optional DELETE)Fregister-swap-out Turn markers into file-query references when a buffer is killed.Fnumber-to-register Store a number in a register. Two args, NUMBER and REGISTER (a character, naming the register). If NUMBER is nil, a decimal number is read from the buffer starting at point, and point moves to the end of that number. Interactively, NUMBER is the prefix arg (none means nil). Interactively, reads the register using `register-read-with-preview'. (fn NUMBER REGISTER)Fincrement-register Augment contents of REGISTER. Interactively, PREFIX is in raw form. If REGISTER contains a number, add `prefix-numeric-value' of PREFIX to it. If REGISTER is empty or if it contains text, call `append-to-register' with `delete-flag' set to PREFIX. Interactively, reads the register using `register-read-with-preview'. (fn PREFIX REGISTER)Fview-register Display what is contained in register named REGISTER. The Lisp value REGISTER is a character. Interactively, reads the register using `register-read-with-preview'. (fn REGISTER)Flist-registers Display a list of nonempty registers saying briefly what they contain.Fdescribe-register-1 (fn REGISTER &optional VERBOSE)Finsert-register Insert contents of register REGISTER. (REGISTER is a character.) Normally puts point before and mark after the inserted text. If optional second arg is non-nil, puts mark before and point after. Interactively, second arg is nil if prefix arg is supplied and t otherwise. Interactively, reads the register using `register-read-with-preview'. (fn REGISTER &optional ARG)Fcopy-to-register Copy region into register REGISTER. With prefix arg, delete as well. Called from program, takes five args: REGISTER, START, END, DELETE-FLAG, and REGION. START and END are buffer positions indicating what to copy. The optional argument REGION if non-nil, indicates that we're not just copying some text between START and END, but we're copying the region. Interactively, reads the register using `register-read-with-preview'. (fn REGISTER START END &optional DELETE-FLAG REGION)Fappend-to-register Append region to text in register REGISTER. With prefix arg, delete as well. Called from program, takes four args: REGISTER, START, END and DELETE-FLAG. START and END are buffer positions indicating what to append. Interactively, reads the register using `register-read-with-preview'. (fn REGISTER START END &optional DELETE-FLAG)Fprepend-to-register Prepend region to text in register REGISTER. With prefix arg, delete as well. Called from program, takes four args: REGISTER, START, END and DELETE-FLAG. START and END are buffer positions indicating what to prepend. Interactively, reads the register using `register-read-with-preview'. (fn REGISTER START END &optional DELETE-FLAG)Fcopy-rectangle-to-register Copy rectangular region into register REGISTER. With prefix arg, delete as well. To insert this register in the buffer, use \[insert-register]. Called from a program, takes four args: REGISTER, START, END and DELETE-FLAG. START and END are buffer positions giving two corners of rectangle. Interactively, reads the register using `register-read-with-preview'. (fn REGISTER START END &optional DELETE-FLAG)Sreplace.elc Vquery-replace-history Default history list for query-replace commands. See `query-replace-from-history-variable' and `query-replace-to-history-variable'.Vquery-replace-defaults Default values of FROM-STRING and TO-STRING for `query-replace'. This is a list of cons cells (FROM-STRING . TO-STRING), or nil if there are no default values.Vquery-replace-interactive Non-nil means `query-replace' uses the last search string. That becomes the "string to replace".Vreplace-count Number of replacements done so far. See `replace-regexp' and `query-replace-regexp-eval'.Fquery-replace-descr (fn STRING)Fquery-replace--split-string Split string STRING at a substring with property `separator'. (fn STRING)Fquery-replace-read-from Query and return the `from' argument of a query-replace operation. The return value can also be a pair (FROM . TO) indicating that the user wants to replace FROM with TO. (fn PROMPT REGEXP-FLAG)Fquery-replace-compile-replacement Maybe convert a regexp replacement TO to Lisp. Returns a list suitable for `perform-replace' if necessary, the original string if not. (fn TO REGEXP-FLAG)Fquery-replace-read-to Query and return the `to' argument of a query-replace operation. (fn FROM PROMPT REGEXP-FLAG)Fquery-replace-read-args (fn PROMPT REGEXP-FLAG &optional NOERROR)Fquery-replace Replace some occurrences of FROM-STRING with TO-STRING. As each match is found, the user must type a character saying what to do with it. For directions, type \[help-command] at that time. In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer's accessible portion. In interactive use, the prefix arg (non-nil DELIMITED in non-interactive use), means replace only matches surrounded by word boundaries. A negative prefix arg means replace backward. Use \<minibuffer-local-map>\[next-history-element] to pull the last incremental search string to the minibuffer that reads FROM-STRING, or invoke replacements from incremental search with a key sequence like `C-s C-s M-%' to use its current search string as the string to replace. Matching is independent of case if `case-fold-search' is non-nil and FROM-STRING has no uppercase letters. Replacement transfers the case pattern of the old text to the new text, if `case-replace' and `case-fold-search' are non-nil and FROM-STRING has no uppercase letters. (Transferring the case pattern means that if the old text matched is all caps, or capitalized, then its replacement is upcased or capitalized.) Ignore read-only matches if `query-replace-skip-read-only' is non-nil, ignore hidden matches if `search-invisible' is nil, and ignore more matches using `isearch-filter-predicate'. If `replace-lax-whitespace' is non-nil, a space or spaces in the string to be replaced will match a sequence of whitespace chars defined by the regexp in `search-whitespace-regexp'. If `replace-char-fold' is non-nil, matching uses character folding, i.e. it ignores diacritics and other differences between equivalent character strings. Fourth and fifth arg START and END specify the region to operate on. To customize possible responses, change the bindings in `query-replace-map'. (fn FROM-STRING TO-STRING &optional DELIMITED START END BACKWARD REGION-NONCONTIGUOUS-P)Fquery-replace-regexp Replace some things after point matching REGEXP with TO-STRING. As each match is found, the user must type a character saying what to do with it. For directions, type \[help-command] at that time. In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer's accessible portion. Use \<minibuffer-local-map>\[next-history-element] to pull the last incremental search regexp to the minibuffer that reads REGEXP, or invoke replacements from incremental search with a key sequence like `C-M-s C-M-s C-M-%' to use its current search regexp as the regexp to replace. Matching is independent of case if `case-fold-search' is non-nil and REGEXP has no uppercase letters. Replacement transfers the case pattern of the old text to the new text, if `case-replace' and `case-fold-search' are non-nil and REGEXP has no uppercase letters. (Transferring the case pattern means that if the old text matched is all caps, or capitalized, then its replacement is upcased or capitalized.) Ignore read-only matches if `query-replace-skip-read-only' is non-nil, ignore hidden matches if `search-invisible' is nil, and ignore more matches using `isearch-filter-predicate'. If `replace-regexp-lax-whitespace' is non-nil, a space or spaces in the regexp to be replaced will match a sequence of whitespace chars defined by the regexp in `search-whitespace-regexp'. This function is not affected by `replace-char-fold'. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. A negative prefix arg means replace backward. Fourth and fifth arg START and END specify the region to operate on. In TO-STRING, `\&' stands for whatever matched the whole of REGEXP, and `\=\N' (where N is a digit) stands for whatever matched the Nth `\(...\)' (1-based) in REGEXP. The `\(...\)' groups are counted from 1. `\?' lets you edit the replacement text in the minibuffer at the given position for each replacement. In interactive calls, the replacement text can contain `\,' followed by a Lisp expression. Each replacement evaluates that expression to compute the replacement string. Inside of that expression, `\&' is a string denoting the whole match as a string, `\N' for a partial match, `\#&' and `\#N' for the whole or a partial match converted to a number with `string-to-number', and `\#' itself for the number of replacements done so far (starting with zero). If the replacement expression is a symbol, write a space after it to terminate it. One space there, if any, will be discarded. When using those Lisp features interactively in the replacement text, TO-STRING is actually made a list instead of a string. Use \[repeat-complex-command] after this command for details. (fn REGEXP TO-STRING &optional DELIMITED START END BACKWARD REGION-NONCONTIGUOUS-P)Fquery-replace-regexp-eval Replace some things after point matching REGEXP with the result of TO-EXPR. Interactive use of this function is deprecated in favor of the `\,' feature of `query-replace-regexp'. For non-interactive use, a loop using `search-forward-regexp' and `replace-match' is preferred. As each match is found, the user must type a character saying what to do with it. For directions, type \[help-command] at that time. TO-EXPR is a Lisp expression evaluated to compute each replacement. It may reference `replace-count' to get the number of replacements already made. If the result of TO-EXPR is not a string, it is converted to one using `prin1-to-string' with the NOESCAPE argument (which see). For convenience, when entering TO-EXPR interactively, you can use `\&' to stand for whatever matched the whole of REGEXP, and `\N' (where N is a digit) to stand for whatever matched the Nth `\(...\)' (1-based) in REGEXP. Use `\#&' or `\#N' if you want a number instead of a string. In interactive use, `\#' in itself stands for `replace-count'. In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer's accessible portion. Use \<minibuffer-local-map>\[next-history-element] to pull the last incremental search regexp to the minibuffer that reads REGEXP. Preserves case in each replacement if `case-replace' and `case-fold-search' are non-nil and REGEXP has no uppercase letters. Ignore read-only matches if `query-replace-skip-read-only' is non-nil, ignore hidden matches if `search-invisible' is nil, and ignore more matches using `isearch-filter-predicate'. If `replace-regexp-lax-whitespace' is non-nil, a space or spaces in the regexp to be replaced will match a sequence of whitespace chars defined by the regexp in `search-whitespace-regexp'. This function is not affected by `replace-char-fold'. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches that are surrounded by word boundaries. Fourth and fifth arg START and END specify the region to operate on. (fn REGEXP TO-EXPR &optional DELIMITED START END)Fmap-query-replace-regexp Replace some matches for REGEXP with various strings, in rotation. The second argument TO-STRINGS contains the replacement strings, separated by spaces. This command works like `query-replace-regexp' except that each successive replacement uses the next successive replacement string, wrapping around from the last such string to the first. In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer's accessible portion. Non-interactively, TO-STRINGS may be a list of replacement strings. Interactively, reads the regexp using `read-regexp'. Use \<minibuffer-local-map>\[next-history-element] to pull the last incremental search regexp to the minibuffer that reads REGEXP. A prefix argument N says to use each replacement string N times before rotating to the next. Fourth and fifth arg START and END specify the region to operate on. (fn REGEXP TO-STRINGS &optional N START END)Freplace-string Replace occurrences of FROM-STRING with TO-STRING. Preserve case in each match if `case-replace' and `case-fold-search' are non-nil and FROM-STRING has no uppercase letters. (Preserving case means that if the string matched is all caps, or capitalized, then its replacement is upcased or capitalized.) Ignore read-only matches if `query-replace-skip-read-only' is non-nil, ignore hidden matches if `search-invisible' is nil, and ignore more matches using `isearch-filter-predicate'. If `replace-lax-whitespace' is non-nil, a space or spaces in the string to be replaced will match a sequence of whitespace chars defined by the regexp in `search-whitespace-regexp'. If `replace-char-fold' is non-nil, matching uses character folding, i.e. it ignores diacritics and other differences between equivalent character strings. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. A negative prefix arg means replace backward. Operates on the region between START and END (if both are nil, from point to the end of the buffer). Interactively, if Transient Mark mode is enabled and the mark is active, operates on the contents of the region; otherwise from point to the end of the buffer's accessible portion. Use \<minibuffer-local-map>\[next-history-element] to pull the last incremental search string to the minibuffer that reads FROM-STRING. This function is usually the wrong thing to use in a Lisp program. What you probably want is a loop like this: (while (search-forward FROM-STRING nil t) (replace-match TO-STRING nil t)) which will run faster and will not set the mark or print anything. (You may need a more complex loop if FROM-STRING can match the null string and TO-STRING is also null.) (fn FROM-STRING TO-STRING &optional DELIMITED START END BACKWARD)Freplace-regexp Replace things after point matching REGEXP with TO-STRING. Preserve case in each match if `case-replace' and `case-fold-search' are non-nil and REGEXP has no uppercase letters. Ignore read-only matches if `query-replace-skip-read-only' is non-nil, ignore hidden matches if `search-invisible' is nil, and ignore more matches using `isearch-filter-predicate'. If `replace-regexp-lax-whitespace' is non-nil, a space or spaces in the regexp to be replaced will match a sequence of whitespace chars defined by the regexp in `search-whitespace-regexp'. This function is not affected by `replace-char-fold' In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer's accessible portion. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. A negative prefix arg means replace backward. Fourth and fifth arg START and END specify the region to operate on. In TO-STRING, `\&' stands for whatever matched the whole of REGEXP, and `\=\N' (where N is a digit) stands for whatever matched the Nth `\(...\)' (1-based) in REGEXP. `\?' lets you edit the replacement text in the minibuffer at the given position for each replacement. In interactive calls, the replacement text may contain `\,' followed by a Lisp expression used as part of the replacement text. Inside of that expression, `\&' is a string denoting the whole match, `\N' a partial match, `\#&' and `\#N' the respective numeric values from `string-to-number', and `\#' itself for `replace-count', the number of replacements occurred so far, starting from zero. If your Lisp expression is an identifier and the next letter in the replacement string would be interpreted as part of it, you can wrap it with an expression like `\,(or \#)'. Incidentally, for this particular case you may also enter `\#' in the replacement text directly. When using those Lisp features interactively in the replacement text, TO-STRING is actually made a list instead of a string. Use \[repeat-complex-command] after this command for details. Use \<minibuffer-local-map>\[next-history-element] to pull the last incremental search regexp to the minibuffer that reads REGEXP. This function is usually the wrong thing to use in a Lisp program. What you probably want is a loop like this: (while (re-search-forward REGEXP nil t) (replace-match TO-STRING nil nil)) which will run faster and will not set the mark or print anything. (fn REGEXP TO-STRING &optional DELIMITED START END BACKWARD)Vregexp-history History list for some commands that read regular expressions. Maximum length of the history list is determined by the value of `history-length', which see.Voccur-collect-regexp-history History of regexp for occur's collect operationFread-regexp-suggestions Return a list of standard suggestions for `read-regexp'. By default, the list includes the tag at point, the last isearch regexp, the last isearch string, and the last replacement regexp. `read-regexp' appends the list returned by this function to the end of values available via \<minibuffer-local-map>\[next-history-element].Fread-regexp Read and return a regular expression as a string. Prompt with the string PROMPT. If PROMPT ends in ":" (followed by optional whitespace), use it as-is. Otherwise, add ": " to the end, possibly preceded by the default result (see below). The optional argument DEFAULTS can be either: nil, a string, a list of strings, or a symbol. We use DEFAULTS to construct the default return value in case of empty input. If DEFAULTS is a string, we use it as-is. If DEFAULTS is a list of strings, the first element is the default return value, but all the elements are accessible using the history command \<minibuffer-local-map>\[next-history-element]. If DEFAULTS is a non-nil symbol, then if `read-regexp-defaults-function' is non-nil, we use that in place of DEFAULTS in the following: If DEFAULTS is the symbol `regexp-history-last', we use the first element of HISTORY (if specified) or `regexp-history'. If DEFAULTS is a function, we call it with no arguments and use what it returns, which should be either nil, a string, or a list of strings. We append the standard values from `read-regexp-suggestions' to DEFAULTS before using it. If the first element of DEFAULTS is non-nil (and if PROMPT does not end in ":", followed by optional whitespace), we add it to the prompt. The optional argument HISTORY is a symbol to use for the history list. If nil, uses `regexp-history'. (fn PROMPT &optional DEFAULTS HISTORY)Fkeep-lines-read-args Read arguments for `keep-lines' and friends. Prompt for a regexp with PROMPT. Value is a list, (REGEXP). (fn PROMPT)Fkeep-lines Delete all lines except those containing matches for REGEXP. A match split across lines preserves all the lines it lies in. When called from Lisp (and usually interactively as well, see below) applies to all lines starting after point. If REGEXP contains upper case characters (excluding those preceded by `\') and `search-upper-case' is non-nil, the matching is case-sensitive. Second and third arg RSTART and REND specify the region to operate on. This command operates on (the accessible part of) all lines whose accessible part is entirely contained in the region determined by RSTART and REND. (A newline ending a line counts as part of that line.) Interactively, in Transient Mark mode when the mark is active, operate on all lines whose accessible part is entirely contained in the region. Otherwise, the command applies to all lines starting after point. When calling this function from Lisp, you can pretend that it was called interactively by passing a non-nil INTERACTIVE argument. This function starts looking for the next match from the end of the previous match. Hence, it ignores matches that overlap a previously found match. (fn REGEXP &optional RSTART REND INTERACTIVE)Fflush-lines Delete lines containing matches for REGEXP. When called from Lisp (and usually when called interactively as well, see below), applies to the part of the buffer after point. The line point is in is deleted if and only if it contains a match for regexp starting after point. If REGEXP contains upper case characters (excluding those preceded by `\') and `search-upper-case' is non-nil, the matching is case-sensitive. Second and third arg RSTART and REND specify the region to operate on. Lines partially contained in this region are deleted if and only if they contain a match entirely contained in it. Interactively, in Transient Mark mode when the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of (the accessible portion of) the buffer. When calling this function from Lisp, you can pretend that it was called interactively by passing a non-nil INTERACTIVE argument. If a match is split across lines, all the lines it lies in are deleted. They are deleted _before_ looking for the next match. Hence, a match starting on the same line at which another match ended is ignored. (fn REGEXP &optional RSTART REND INTERACTIVE)Fhow-many Print and return number of matches for REGEXP following point. When called from Lisp and INTERACTIVE is omitted or nil, just return the number, do not print it; if INTERACTIVE is t, the function behaves in all respects as if it had been called interactively. If REGEXP contains upper case characters (excluding those preceded by `\') and `search-upper-case' is non-nil, the matching is case-sensitive. Second and third arg RSTART and REND specify the region to operate on. Interactively, in Transient Mark mode when the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of (the accessible portion of) the buffer. This function starts looking for the next match from the end of the previous match. Hence, it ignores matches that overlap a previously found match. (fn REGEXP &optional RSTART REND INTERACTIVE)Voccur-menu-map Menu keymap for `occur-mode'.Voccur-mode-map Keymap for `occur-mode'.Voccur-revert-arguments Arguments to pass to `occur-1' to revert an Occur mode buffer. See `occur-revert-function'.Foccur-mode Major mode for output from \[occur]. \<occur-mode-map>Move point to one of the items in this buffer, then use \[occur-mode-goto-occurrence] to go to the occurrence that the item refers to. Alternatively, click \[occur-mode-mouse-goto] on an item to go to it. \{occur-mode-map} In addition to any hooks its parent mode `special-mode' might have run, this mode runs the hook `occur-mode-hook', as the final or penultimate step during initialization.Voccur-edit-mode-map Keymap for `occur-edit-mode'.Foccur-edit-mode Major mode for editing *Occur* buffers. In this mode, changes to the *Occur* buffer are also applied to the originating buffer. To return to ordinary Occur mode, use \[occur-cease-edit]. In addition to any hooks its parent mode `occur-mode' might have run, this mode runs the hook `occur-edit-mode-hook', as the final or penultimate step during initialization.Foccur-cease-edit Switch from Occur Edit mode to Occur mode.Foccur-after-change-function (fn BEG END LENGTH)Foccur-revert-function Handle `revert-buffer' for Occur mode buffers. (fn IGNORE1 IGNORE2)Foccur-mode-goto-occurrence Go to the occurrence on the current line. (fn &optional EVENT)Foccur-mode-goto-occurrence-other-window Go to the occurrence the current line describes, in another window.Foccur-mode-display-occurrence Display in another window the occurrence the current line describes.Foccur-find-match (fn N SEARCH MESSAGE)Foccur-next Move to the Nth (default 1) next match in an Occur mode buffer. (fn &optional N)Foccur-prev Move to the Nth (default 1) previous match in an Occur mode buffer. (fn &optional N)Foccur-next-error Move to the Nth (default 1) next match in an Occur mode buffer. Compatibility function for \[next-error] invocations. (fn &optional ARGP RESET)Foccur-rename-buffer Rename the current *Occur* buffer to *Occur: original-buffer-name*. Here `original-buffer-name' is the buffer name where Occur was originally run. When given the prefix argument, or called non-interactively, the renaming will not clobber the existing buffer(s) of that name, but use `generate-new-buffer-name' instead. You can add this to `occur-hook' if you always want a separate *Occur* buffer for each buffer where you invoke `occur'. (fn &optional UNIQUE-P INTERACTIVE-P)Foccur Show all lines in the current buffer containing a match for REGEXP. If a match spreads across multiple lines, all those lines are shown. Each match is extended to include complete lines. Only non-overlapping matches are considered. (Note that extending matches to complete lines could cause some of the matches to overlap; if so, they will not be shown as separate matches.) Each line is displayed with NLINES lines before and after, or -NLINES before if NLINES is negative. NLINES defaults to `list-matching-lines-default-context-lines'. Interactively it is the prefix arg. Optional arg REGION, if non-nil, mean restrict search to the specified region. Otherwise search the entire buffer. REGION must be a list of (START . END) positions as returned by `region-bounds'. The lines are shown in a buffer named `*Occur*'. It serves as a menu to find any of the occurrences in this buffer. \<occur-mode-map>\[describe-mode] in that buffer will explain how. If `list-matching-lines-jump-to-current-line' is non-nil, then show the current line highlighted with `list-matching-lines-current-line-face' and set point at the first match after such line. If REGEXP contains upper case characters (excluding those preceded by `\') and `search-upper-case' is non-nil, the matching is case-sensitive. When NLINES is a string or when the function is called interactively with prefix argument without a number (`C-u' alone as prefix) the matching strings are collected into the `*Occur*' buffer by using NLINES as a replacement regexp. NLINES may contain \& and \N which convention follows `replace-match'. For example, providing "defun\s +\(\S +\)" for REGEXP and "\1" for NLINES collects all the function names in a lisp program. When there is no parenthesized subexpressions in REGEXP the entire match is collected. In any case the searched buffer is not modified. (fn REGEXP &optional NLINES REGION)Fmulti-occur Show all lines in buffers BUFS containing a match for REGEXP. This function acts on multiple buffers; otherwise, it is exactly like `occur'. When you invoke this command interactively, you must specify the buffer names that you want, one by one. See also `multi-occur-in-matching-buffers'. (fn BUFS REGEXP &optional NLINES)Fmulti-occur-in-matching-buffers Show all lines matching REGEXP in buffers specified by BUFREGEXP. Normally BUFREGEXP matches against each buffer's visited file name, but if you specify a prefix argument, it matches against the buffer name. See also `multi-occur'. (fn BUFREGEXP REGEXP &optional ALLBUFS)Foccur-regexp-descr (fn REGEXP)Foccur-1 (fn REGEXP NLINES BUFS &optional BUF-NAME)Foccur-engine (fn REGEXP BUFFERS OUT-BUF NLINES CASE-FOLD TITLE-FACE PREFIX-FACE MATCH-FACE KEEP-PROPS)Foccur-engine-line (fn BEG END &optional KEEP-PROPS)Foccur-engine-add-prefix (fn LINES &optional PREFIX-FACE)Foccur-accumulate-lines (fn COUNT &optional KEEP-PROPS PT)Foccur-context-lines (fn OUT-LINE NLINES KEEP-PROPS BEGPT ENDPT CURR-LINE PREV-LINE PREV-AFTER-LINES &optional PREFIX-FACE)Vquery-replace-help Help message while in `query-replace'.Vquery-replace-map Keymap of responses to questions posed by commands like `query-replace'. The "bindings" in this map are not commands; they are answers. The valid answers include `act', `skip', `act-and-show', `act-and-exit', `exit', `exit-prefix', `recenter', `scroll-up', `scroll-down', `scroll-other-window', `scroll-other-window-down', `edit', `edit-replacement', `delete-and-edit', `automatic', `backup', `undo', `undo-all', `quit', and `help'. This keymap is used by `y-or-n-p' as well as `query-replace'.Vmulti-query-replace-map Keymap that defines additional bindings for multi-buffer replacements. It extends its parent map `query-replace-map' with new bindings to operate on a set of buffers/files. The difference with its parent map is the additional answers `automatic-all' to replace all remaining matches in all remaining buffers with no more questions, and `exit-current' to skip remaining matches in the current buffer and to continue with the next buffer in the sequence.Freplace-match-string-symbols Process a list (and any sub-lists), expanding certain symbols. Symbol Expands To N (match-string N) (where N is a string of digits) #N (string-to-number (match-string N)) & (match-string 0) #& (string-to-number (match-string 0)) # replace-count Note that these symbols must be preceded by a backslash in order to type them using Lisp syntax. (fn N)Freplace-eval-replacement (fn EXPRESSION COUNT)Freplace-quote Quote a replacement string. This just doubles all backslashes in REPLACEMENT and returns the resulting string. If REPLACEMENT is not a string, it is first passed through `prin1-to-string' with the `noescape' argument set. `match-data' is preserved across the call. (fn REPLACEMENT)Freplace-loop-through-replacements (fn DATA COUNT)Freplace-match-data Like `match-data', but markers in REUSE get invalidated. If NEW is non-nil, it is set and returned instead of fresh data, but coerced to the correct value of INTEGERS. (fn INTEGERS REUSE &optional NEW)Freplace-match-maybe-edit Make a replacement with `replace-match', editing `\?'. FIXEDCASE, LITERAL are passed to `replace-match' (which see). After possibly editing it (if `\?' is present), NEWTEXT is also passed to `replace-match'. If NOEDIT is true, no check for `\?' is made (to save time). MATCH-DATA is used for the replacement, and is a data structure as returned from the `match-data' function. In case editing is done, it is changed to use markers. BACKWARD is used to reverse the replacement direction. The return value is non-nil if there has been no `\?' or NOEDIT was passed in. If LITERAL is set, no checking is done, anyway. (fn NEWTEXT FIXEDCASE LITERAL NOEDIT MATCH-DATA &optional BACKWARD)Vreplace-update-post-hook Function(s) to call after query-replace has found a match in the buffer.Vreplace-search-function Function to use when searching for strings to replace. It is used by `query-replace' and `replace-string', and is called with three arguments, as if it were `search-forward'.Vreplace-re-search-function Function to use when searching for regexps to replace. It is used by `query-replace-regexp', `replace-regexp', `query-replace-regexp-eval', and `map-query-replace-regexp'. It is called with three arguments, as if it were `re-search-forward'.Freplace-search Search for the next occurrence of SEARCH-STRING to replace. (fn SEARCH-STRING LIMIT REGEXP-FLAG DELIMITED-FLAG CASE-FOLD &optional BACKWARD)Freplace-highlight (fn MATCH-BEG MATCH-END RANGE-BEG RANGE-END SEARCH-STRING REGEXP-FLAG DELIMITED-FLAG CASE-FOLD &optional BACKWARD)Freplace--push-stack (fn REPLACED SEARCH-STR NEXT-REPLACE STACK)Fperform-replace Subroutine of `query-replace'. Its complexity handles interactive queries. Don't use this in your own program unless you want to query and set the mark just as `query-replace' does. Instead, write a simple loop like this: (while (re-search-forward "foo[ \t]+bar" nil t) (replace-match "foobar" nil nil)) which will run faster and probably do exactly what you want. Please see the documentation of `replace-match' to find out how to simulate `case-replace'. This function returns nil if and only if there were no matches to make, or the user didn't cancel the call. REPLACEMENTS is either a string, a list of strings, or a cons cell containing a function and its first argument. The function is called to generate each replacement like this: (funcall (car replacements) (cdr replacements) replace-count) It must return a string. (fn FROM-STRING REPLACEMENTS QUERY-FLAG REGEXP-FLAG DELIMITED-FLAG &optional REPEAT-COUNT MAP START END BACKWARD REGION-NONCONTIGUOUS-P)Srfn-eshadow.elc Vrfn-eshadow-setup-minibuffer-hook Minibuffer setup functions from other packages.Vrfn-eshadow-update-overlay-hook Customer overlay functions from other packagesFrfn-eshadow-setup-minibuffer Set up a minibuffer for `file-name-shadow-mode'. The prompt and initial input should already have been inserted.Frfn-eshadow-update-overlay Update `rfn-eshadow-overlay' to cover shadowed part of minibuffer input. This is intended to be used as a minibuffer `post-command-hook' for `file-name-shadow-mode'; the minibuffer should have already been set up by `rfn-eshadow-setup-minibuffer'.Vfile-name-shadow-mode Non-nil if File-Name-Shadow mode is enabled. See the `file-name-shadow-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `file-name-shadow-mode'.Ffile-name-shadow-mode Toggle file-name shadowing in minibuffers (File-Name Shadow mode). With a prefix argument ARG, enable File-Name Shadow mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. File-Name Shadow mode is a global minor mode. When enabled, any part of a filename being read in the minibuffer that would be ignored (because the result is passed through `substitute-in-file-name') is given the properties in `file-name-shadow-properties', which can be used to make that portion dim, invisible, or otherwise less visually noticeable.Sscroll-bar.elc Fscroll-bar-event-ratio Given a scroll bar event EVENT, return the scroll bar position as a ratio. The value is a cons cell (PORTION . WHOLE) containing two integers whose ratio gives the event's vertical position in the scroll bar, with 0 referring to the top and 1 to the bottom.Fscroll-bar-scale Given a pair (NUM . DENOM) and WHOLE, return (/ (* NUM WHOLE) DENOM). This is handy for scaling a position on a scroll bar into real units, like buffer positions. If SCROLL-BAR-POS is the (PORTION . WHOLE) pair from a scroll bar event, then (scroll-bar-scale SCROLL-BAR-POS (buffer-size)) is the position in the current buffer corresponding to that scroll bar position.Fscroll-bar-columns Return the width, measured in columns, of the vertical scrollbar on SIDE. SIDE must be the symbol `left' or `right'.Fscroll-bar-lines Return the height, measured in lines, of the horizontal scrollbar.Vscroll-bar-mode-explicit Non-nil means `set-scroll-bar-mode' should really do something. This is nil while loading `scroll-bar.el', and t afterward.Fset-scroll-bar-mode Set the scroll bar mode to VALUE and put the new value into effect. See the `scroll-bar-mode' variable for possible values to use.Fscroll-bar-mode Toggle vertical scroll bars on all frames (Scroll Bar mode). With a prefix argument ARG, enable Scroll Bar mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. This command applies to all frames that exist and frames to be created in the future.Fhorizontal-scroll-bars-available-p Return non-nil when horizontal scroll bars are available on this system.Vhorizontal-scroll-bar-mode Non-nil if Horizontal-Scroll-Bar mode is enabled. See the `horizontal-scroll-bar-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `horizontal-scroll-bar-mode'.Fhorizontal-scroll-bar-mode Toggle horizontal scroll bars on all frames (Horizontal Scroll Bar mode). With a prefix argument ARG, enable Horizontal Scroll Bar mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. This command applies to all frames that exist and frames to be created in the future.Ftoggle-scroll-bar Toggle whether or not the selected frame has vertical scroll bars. With ARG, turn vertical scroll bars on if and only if ARG is positive. The variable `scroll-bar-mode' controls which side the scroll bars are on when they are turned on; if it is nil, they go on the left.Ftoggle-horizontal-scroll-bar Toggle whether or not the selected frame has horizontal scroll bars. With ARG, turn vertical scroll bars on if and only if ARG is positive.Fscroll-bar-set-window-start Set the window start according to where the scroll bar is dragged. EVENT should be a scroll bar click or drag event.Fscroll-bar-drag-position Calculate new window start for drag event.Fscroll-bar-maybe-set-window-start Set the window start according to where the scroll bar is dragged. Only change window start if the new start is substantially different. EVENT should be a scroll bar click or drag event.Fscroll-bar-drag Scroll the window by dragging the scroll bar slider. If you click outside the slider, the window scrolls to bring the slider there.Fscroll-bar-horizontal-drag Scroll the window horizontally by dragging the scroll bar slider. If you click outside the slider, the window scrolls to bring the slider there.Fscroll-bar-scroll-down Scroll the window's top line down to the location of the scroll bar click. EVENT should be a scroll bar click.Fscroll-bar-scroll-up Scroll the line next to the scroll bar click to the top of the window. EVENT should be a scroll bar click.Fscroll-bar-toolkit-scroll Handle event EVENT on vertical scroll bar.Fscroll-bar-toolkit-horizontal-scroll Handle event EVENT on horizontal scroll bar.Sselect.elc Vnext-selection-coding-system Coding system for the next communication with other programs. Usually, `selection-coding-system' is used for communicating with other programs (X Windows clients or MS Windows programs). But, if this variable is set, it is used for the next communication only. After the communication, this variable is set to nil.Vgui--last-selected-text-clipboard The value of the CLIPBOARD selection last seen.Vgui--last-selected-text-primary The value of the PRIMARY selection last seen.Fgui-select-text Select TEXT, a string, according to the window system. if `select-enable-clipboard' is non-nil, copy TEXT to the system's clipboard. If `select-enable-primary' is non-nil, put TEXT in the primary selection. MS-Windows does not have a "primary" selection. (fn TEXT)Fgui--selection-value-internal (fn TYPE)Fx-get-clipboard Return text pasted to the clipboard.Fgui-get-primary-selection Return the PRIMARY selection, or the best emulation thereof.Fgui-get-selection Return the value of an X Windows selection. The argument TYPE (default `PRIMARY') says which selection, and the argument DATA-TYPE (default `STRING') says how to convert the data. TYPE may be any symbol (but nil stands for `PRIMARY'). However, only a few symbols are commonly used. They conventionally have all upper-case names. The most often used ones, in addition to `PRIMARY', are `SECONDARY' and `CLIPBOARD'. DATA-TYPE is usually `STRING', but can also be one of the symbols in `selection-converter-alist', which see. Window systems other than X usually support only a small subset of these symbols, in addition to `STRING'; MS-Windows supports `TARGETS', which reports the formats available in the clipboard if TYPE is `CLIPBOARD'. (fn &optional TYPE DATA-TYPE)Fgui-set-selection Make an X selection of type TYPE and value DATA. The argument TYPE (nil means `PRIMARY') says which selection, and DATA specifies the contents. TYPE must be a symbol. (It can also be a string, which stands for the symbol with that name, but this is considered obsolete.) DATA may be a string, a symbol, an integer (or a cons of two integers or list of two integers). The selection may also be a cons of two markers pointing to the same buffer, or an overlay. In these cases, the selection is considered to be the text between the markers *at whatever time the selection is examined*. Thus, editing done in the buffer after you specify the selection can alter the effective value of the selection. The data may also be a vector of valid non-vector selection values. The return value is DATA. Interactively, this command sets the primary selection. Without prefix argument, it reads the selection in the minibuffer. With prefix argument, it uses the text of the region as the selection value. Note that on MS-Windows, primary and secondary selections set by Emacs are not available to other programs. (fn TYPE DATA)Fgui--valid-simple-selection-p (fn DATA)Fxselect--selection-bounds Return bounds of X selection value VALUE. The return value is a list (BEG END BUF) if VALUE is a cons of two markers or an overlay. Otherwise, it is nil. (fn VALUE)Fxselect--int-to-cons (fn N)Fxselect--encode-string (fn TYPE STR &optional CAN-MODIFY)Fxselect-convert-to-string (fn SELECTION TYPE VALUE)Fxselect-convert-to-length (fn SELECTION TYPE VALUE)Fxselect-convert-to-targets (fn SELECTION TYPE VALUE)Fxselect-convert-to-delete (fn SELECTION TYPE VALUE)Fxselect-convert-to-filename (fn SELECTION TYPE VALUE)Fxselect-convert-to-charpos (fn SELECTION TYPE VALUE)Fxselect-convert-to-lineno (fn SELECTION TYPE VALUE)Fxselect-convert-to-colno (fn SELECTION TYPE VALUE)Fxselect-convert-to-os (fn SELECTION TYPE SIZE)Fxselect-convert-to-host (fn SELECTION TYPE SIZE)Fxselect-convert-to-user (fn SELECTION TYPE SIZE)Fxselect-convert-to-class Convert selection to class. This function returns the string "Emacs". (fn SELECTION TYPE SIZE)Fxselect-convert-to-name Convert selection to name. This function returns the string "emacs". (fn SELECTION TYPE SIZE)Fxselect-convert-to-integer (fn SELECTION TYPE VALUE)Fxselect-convert-to-atom (fn SELECTION TYPE VALUE)Fxselect-convert-to-identity (fn SELECTION TYPE VALUE)Fxselect-convert-to-save-targets (fn SELECTION TYPE VALUE)Ssimple.elc Vshell-command-saved-pos Record of point positions in output buffers after command completion. The value is an alist whose elements are of the form (BUFFER . POS), where BUFFER is the output buffer, and POS is the point position in BUFFER once the command finishes. This variable is used when `shell-command-dont-erase-buffer' is non-nil.Vnext-error-last-buffer The most recent `next-error' buffer. A buffer becomes most recent when its compilation, grep, or similar mode is started, or when it is used with \[next-error] or \[compile-goto-error].Vnext-error-function Function to use to find the next error in the current buffer. The function is called with 2 parameters: ARG is an integer specifying by how many errors to move. RESET is a boolean which, if non-nil, says to go back to the beginning of the errors before moving. Major modes providing compile-like functionality should set this variable to indicate to `next-error' that this is a candidate buffer and how to navigate in it.Vnext-error-move-function Function to use to move to an error locus. It takes two arguments, a buffer position in the error buffer and a buffer position in the error locus buffer. The buffer for the error locus should already be current. nil means use goto-char using the second argument position.Fnext-error-buffer-p Return non-nil if BUFFER is a `next-error' capable buffer. If AVOID-CURRENT is non-nil, and BUFFER is the current buffer, return nil. The function EXTRA-TEST-INCLUSIVE, if non-nil, is called if BUFFER would not normally qualify. If it returns non-nil, BUFFER is considered `next-error' capable, anyway, and the function returns non-nil. The function EXTRA-TEST-EXCLUSIVE, if non-nil, is called if the buffer would normally qualify. If it returns nil, BUFFER is rejected, and the function returns nil. (fn BUFFER &optional AVOID-CURRENT EXTRA-TEST-INCLUSIVE EXTRA-TEST-EXCLUSIVE)Fnext-error-find-buffer Return a `next-error' capable buffer. If AVOID-CURRENT is non-nil, treat the current buffer as an absolute last resort only. The function EXTRA-TEST-INCLUSIVE, if non-nil, is called in each buffer that normally would not qualify. If it returns t, the buffer in question is treated as usable. The function EXTRA-TEST-EXCLUSIVE, if non-nil, is called in each buffer that would normally be considered usable. If it returns nil, that buffer is rejected. (fn &optional AVOID-CURRENT EXTRA-TEST-INCLUSIVE EXTRA-TEST-EXCLUSIVE)Fnext-error Visit next `next-error' message and corresponding source code. If all the error messages parsed so far have been processed already, the message buffer is checked for new ones. A prefix ARG specifies how many error messages to move; negative means move back to previous error messages. Just \[universal-argument] as a prefix means reparse the error message buffer and start at the first error. The RESET argument specifies that we should restart from the beginning. \[next-error] normally uses the most recently started compilation, grep, or occur buffer. It can also operate on any buffer with output from the \[compile], \[grep] commands, or, more generally, on any buffer in Compilation mode or with Compilation Minor mode enabled, or any buffer in which `next-error-function' is bound to an appropriate function. To specify use of a particular buffer for error messages, type \[next-error] in that buffer when it is the only one displayed in the current frame. Once \[next-error] has chosen the buffer for error messages, it runs `next-error-hook' with `run-hooks', and stays with that buffer until you use it in some other buffer which uses Compilation mode or Compilation Minor mode. To control which errors are matched, customize the variable `compilation-error-regexp-alist'. (fn &optional ARG RESET)Fnext-error-internal Visit the source code corresponding to the `next-error' message at point.Fprevious-error Visit previous `next-error' message and corresponding source code. Prefix arg N says how many error messages to move backwards (or forwards, if negative). This operates on the output from the \[compile] and \[grep] commands. (fn &optional N)Ffirst-error Restart at the first error. Visit corresponding source code. With prefix arg N, visit the source code of the Nth error. This operates on the output from the \[compile] command, for instance. (fn &optional N)Fnext-error-no-select Move point to the next error in the `next-error' buffer and highlight match. Prefix arg N says how many error messages to move forwards (or backwards, if negative). Finds and highlights the source line like \[next-error], but does not select the source buffer. (fn &optional N)Fprevious-error-no-select Move point to the previous error in the `next-error' buffer and highlight match. Prefix arg N says how many error messages to move backwards (or forwards, if negative). Finds and highlights the source line like \[previous-error], but does not select the source buffer. (fn &optional N)Vnext-error-follow-minor-mode Non-nil if Next-Error-Follow minor mode is enabled. Use the command `next-error-follow-minor-mode' to change this variable.Fnext-error-follow-minor-mode Minor mode for compilation, occur and diff modes. With a prefix argument ARG, enable mode if ARG is positive, and disable it otherwise. If called from Lisp, enable mode if ARG is omitted or nil. When turned on, cursor motion in the compilation, grep, occur or diff buffer causes automatic display of the corresponding source code location. (fn &optional ARG)Ffundamental-mode Major mode not specialized for anything in particular. Other major modes are defined by comparison with this one.Fspecial-mode Parent major mode from which special major modes should inherit. This mode runs the hook `special-mode-hook', as the final or penultimate step during initialization. \{special-mode-map}Vself-insert-uses-region-functions Special hook to tell if `self-insert-command' will use the region. It must be called via `run-hook-with-args-until-success' with no arguments. If any function on this hook returns a non-nil value, `delete-selection-mode' will act on that value (see `delete-selection-helper'), and will usually delete the region. If all the functions on this hook return nil, it is an indiction that `self-insert-command' needs the region untouched by `delete-selection-mode', and will itself do whatever is appropriate with the region. Any function on `post-self-insert-hook' which act on the region should add a function to this hook so that `delete-selection-mode' could refrain from deleting the region before `post-self-insert-hook' functions are called. This hook is run by `delete-selection-uses-region-p', which see.Vhard-newline Propertized string representing a hard newline character.Fnewline Insert a newline, and move to left margin of the new line if it's blank. If option `use-hard-newlines' is non-nil, the newline is marked with the text-property `hard'. With ARG, insert that many newlines. If `electric-indent-mode' is enabled, this indents the final new line that it adds, and reindents the preceding line. To just insert a newline, use \[electric-indent-just-newline]. Calls `auto-fill-function' if the current column number is greater than the value of `fill-column' and ARG is nil. A non-nil INTERACTIVE argument means to run the `post-self-insert-hook'. (fn &optional ARG INTERACTIVE)Fset-hard-newline-properties (fn FROM TO)Fopen-line Insert a newline and leave point before it. If there is a fill prefix and/or a `left-margin', insert them on the new line if the line would have been blank. With arg N, insert N newlines. (fn N)Fsplit-line Split current line, moving portion beyond point vertically down. If the current line starts with `fill-prefix', insert it on the new line as well. With prefix ARG, don't insert `fill-prefix' on new line. When called from Lisp code, ARG may be a prefix string to copy. (fn &optional ARG)Fdelete-indentation Join this line to previous and fix up whitespace at join. If there is a fill prefix, delete it from the beginning of this line. With argument, join this line to following line. (fn &optional ARG)Fdelete-blank-lines On blank line, delete all surrounding blank lines, leaving just one. On isolated blank line, delete that one. On nonblank line, delete any immediately following blank lines.Fregion-modifiable-p Return non-nil if the region contains no read-only text. (fn START END)Fdelete-trailing-whitespace Delete trailing whitespace between START and END. If called interactively, START and END are the start/end of the region if the mark is active, or of the buffer's accessible portion if the mark is inactive. This command deletes whitespace characters after the last non-whitespace character in each line between START and END. It does not consider formfeed characters to be whitespace. If this command acts on the entire buffer (i.e. if called interactively with the mark inactive, or called from Lisp with END nil), it also deletes all trailing lines at the end of the buffer if the variable `delete-trailing-lines' is non-nil. (fn &optional START END)Fnewline-and-indent Insert a newline, then indent according to major mode. Indentation is done using the value of `indent-line-function'. In programming language modes, this is the same as TAB. In some text modes, where TAB inserts a tab, this command indents to the column specified by the function `current-left-margin'.Freindent-then-newline-and-indent Reindent current line, insert newline, then indent the new line. Indentation of both lines is done according to the current major mode, which means calling the current value of `indent-line-function'. In programming language modes, this is the same as TAB. In some text modes, where TAB inserts a tab, this indents to the column specified by the function `current-left-margin'.Fread-quoted-char Like `read-char', but do not allow quitting. Also, if the first character read is an octal digit, we read any number of octal digits and return the specified character code. Any nondigit terminates the sequence. If the terminator is RET, it is discarded; any other terminator is used itself as input. The optional argument PROMPT specifies a string to use to prompt the user. The variable `read-quoted-char-radix' controls which radix to use for numeric input. (fn &optional PROMPT)Fquoted-insert Read next input character and insert it. This is useful for inserting control characters. With argument, insert ARG copies of the character. If the first character you type after this command is an octal digit, you should type a sequence of octal digits which specify a character code. Any nondigit terminates the sequence. If the terminator is a RET, it is discarded; any other terminator is used itself as input. The variable `read-quoted-char-radix' specifies the radix for this feature; set it to 10 or 16 to use decimal or hex instead of octal. In overwrite mode, this function inserts the character anyway, and does not handle octal digits specially. This means that if you use overwrite as your normal editing mode, you can use this function to insert characters when necessary. In binary overwrite mode, this function does overwrite, and octal digits are interpreted as a character code. This is intended to be useful for editing binary files. (fn ARG)Fforward-to-indentation Move forward ARG lines and position at first nonblank character. (fn &optional ARG)Fbackward-to-indentation Move backward ARG lines and position at first nonblank character. (fn &optional ARG)Fback-to-indentation Move point to the first non-whitespace character on this line.Ffixup-whitespace Fixup white space between objects around point. Leave one space or none, according to the context.Fdelete-horizontal-space Delete all spaces and tabs around point. If BACKWARD-ONLY is non-nil, only delete them before point. (fn &optional BACKWARD-ONLY)Fjust-one-space Delete all spaces and tabs around point, leaving one space (or N spaces). If N is negative, delete newlines as well, leaving -N spaces. See also `cycle-spacing'. (fn &optional N)Vcycle-spacing--context Store context used in consecutive calls to `cycle-spacing' command. The first time `cycle-spacing' runs, it saves in this variable: its N argument, the original point position, and the original spacing around point.Fcycle-spacing Manipulate whitespace around point in a smart way. In interactive use, this function behaves differently in successive consecutive calls. The first call in a sequence acts like `just-one-space'. It deletes all spaces and tabs around point, leaving one space (or N spaces). N is the prefix argument. If N is negative, it deletes newlines as well, leaving -N spaces. (If PRESERVE-NL-BACK is non-nil, it does not delete newlines before point.) The second call in a sequence deletes all spaces. The third call in a sequence restores the original whitespace (and point). If MODE is `single-shot', it only performs the first step in the sequence. If MODE is `fast' and the first step would not result in any change (i.e., there are exactly (abs N) spaces around point), the function goes straight to the second step. Repeatedly calling the function with different values of N starts a new sequence each time. (fn &optional N PRESERVE-NL-BACK MODE)Fbeginning-of-buffer Move point to the beginning of the buffer. With numeric arg N, put point N/10 of the way from the beginning. If the buffer is narrowed, this command uses the beginning of the accessible part of the buffer. Push mark at previous position, unless either a \[universal-argument] prefix is supplied, or Transient Mark mode is enabled and the mark is active. (fn &optional ARG)Fend-of-buffer Move point to the end of the buffer. With numeric arg N, put point N/10 of the way from the end. If the buffer is narrowed, this command uses the end of the accessible part of the buffer. Push mark at previous position, unless either a \[universal-argument] prefix is supplied, or Transient Mark mode is enabled and the mark is active. (fn &optional ARG)Vregion-extract-function Function to get the region's content. Called with one argument METHOD which can be: - nil: return the content as a string (list of strings for non-contiguous regions). - `delete-only': delete the region; the return value is undefined. - `bounds': return the boundaries of the region as a list of one or more cons cells of the form (START . END). - anything else: delete the region and return its content as a string (or list of strings for non-contiguous regions), after filtering it with `filter-buffer-substring', which is called, for each contiguous sub-region, with METHOD as its 3rd argument.Vregion-insert-function Function to insert the region's content. Called with one argument LINES. Insert the region as a list of lines.Fdelete-backward-char Delete the previous N characters (following if N is negative). If Transient Mark mode is enabled, the mark is active, and N is 1, delete the text in the region and deactivate the mark instead. To disable this, set option `delete-active-region' to nil. Optional second arg KILLFLAG, if non-nil, means to kill (save in kill ring) instead of delete. Interactively, N is the prefix arg, and KILLFLAG is set if N is explicitly specified. When killing, the killed text is filtered by `filter-buffer-substring' before it is saved in the kill ring, so the actual saved text might be different from what was killed. In Overwrite mode, single character backward deletion may replace tabs with spaces so as to back over columns, unless point is at the end of the line. (fn N &optional KILLFLAG)Fdelete-forward-char Delete the following N characters (previous if N is negative). If Transient Mark mode is enabled, the mark is active, and N is 1, delete the text in the region and deactivate the mark instead. To disable this, set variable `delete-active-region' to nil. Optional second arg KILLFLAG non-nil means to kill (save in kill ring) instead of delete. Interactively, N is the prefix arg, and KILLFLAG is set if N was explicitly specified. When killing, the killed text is filtered by `filter-buffer-substring' before it is saved in the kill ring, so the actual saved text might be different from what was killed. (fn N &optional KILLFLAG)Fmark-whole-buffer Put point at beginning and mark at end of buffer. If narrowing is in effect, only uses the accessible part of the buffer. You probably should not use this function in Lisp programs; it is usually a mistake for a Lisp function to use any subroutine that uses or sets the mark.Fgoto-line Go to LINE, counting from line 1 at beginning of buffer. If called interactively, a numeric prefix argument specifies LINE; without a numeric prefix argument, read LINE from the minibuffer. If optional argument BUFFER is non-nil, switch to that buffer and move to line LINE there. If called interactively with \[universal-argument] as argument, BUFFER is the most recently selected other buffer. Prior to moving point, this function sets the mark (without activating it), unless Transient Mark mode is enabled and the mark is already active. This function is usually the wrong thing to use in a Lisp program. What you probably want instead is something like: (goto-char (point-min)) (forward-line (1- N)) If at all possible, an even better solution is to use char counts rather than line counts. (fn LINE &optional BUFFER)Fcount-words-region Count the number of words in the region. If called interactively, print a message reporting the number of lines, words, and characters in the region (whether or not the region is active); with prefix ARG, report for the entire buffer rather than the region. If called from Lisp, return the number of words between positions START and END. (fn START END &optional ARG)Fcount-words Count words between START and END. If called interactively, START and END are normally the start and end of the buffer; but if the region is active, START and END are the start and end of the region. Print a message reporting the number of lines, words, and chars. If called from Lisp, return the number of words between START and END, without printing any message. (fn START END)Fcount-words--message (fn STR START END)Fwhat-line Print the current buffer line number and narrowed line number of point.Fcount-lines Return number of lines between START and END. This is usually the number of newlines between them, but can be one more if START is not equal to END and the greater of them is not at the start of a line. (fn START END)Fline-number-at-pos Return buffer line number at position POS. If POS is nil, use current buffer location. If ABSOLUTE is nil, the default, counting starts at (point-min), so the value refers to the contents of the accessible portion of the (potentially narrowed) buffer. If ABSOLUTE is non-nil, ignore any narrowing and return the absolute line number. (fn &optional POS ABSOLUTE)Fwhat-cursor-position Print info on cursor position (on screen and within buffer). Also describe the character after point, and give its character code in octal, decimal and hex. For a non-ASCII multibyte character, also give its encoding in the buffer's selected coding system if the coding system encodes the character safely. If the character is encoded into one byte, that code is shown in hex. If the character is encoded into more than one byte, just "..." is shown. In addition, with prefix argument, show details about that character in *Help* buffer. See also the command `describe-char'. (fn &optional DETAIL)Fread-minibuffer Return a Lisp object read using the minibuffer, unevaluated. Prompt with PROMPT. If non-nil, optional second arg INITIAL-CONTENTS is a string to insert in the minibuffer before reading. (INITIAL-CONTENTS can also be a cons of a string and an integer. Such arguments are used as in `read-from-minibuffer'.) (fn PROMPT &optional INITIAL-CONTENTS)Feval-minibuffer Return value of Lisp expression read using the minibuffer. Prompt with PROMPT. If non-nil, optional second arg INITIAL-CONTENTS is a string to insert in the minibuffer before reading. (INITIAL-CONTENTS can also be a cons of a string and an integer. Such arguments are used as in `read-from-minibuffer'.) (fn PROMPT &optional INITIAL-CONTENTS)Vminibuffer-completing-symbol Non-nil means completing a Lisp symbol in the minibuffer.Vminibuffer-default The current default value or list of default values in the minibuffer. The functions `read-from-minibuffer' and `completing-read' bind this variable locally.Feval-expression-print-format If VALUE is an integer, return a specially formatted string. This string will typically look like " (#o1, #x1, ?\C-a)". If VALUE is not an integer, return nil. This function is used by commands like `eval-expression' that display the result of expression evaluation. (fn VALUE)Veval-expression-minibuffer-setup-hook Hook run by `eval-expression' when entering the minibuffer.Fread--expression (fn PROMPT &optional INITIAL-CONTENTS)Feval-expression-get-print-arguments Get arguments for commands that print an expression result. Returns a list (INSERT-VALUE NO-TRUNCATE CHAR-PRINT-LIMIT) based on PREFIX-ARG. This function determines the interpretation of the prefix argument for `eval-expression' and `eval-last-sexp'. (fn PREFIX-ARGUMENT)Feval-expression Evaluate EXP and print value in the echo area. When called interactively, read an Emacs Lisp expression and evaluate it. Value is also consed on to front of the variable `values'. Optional argument INSERT-VALUE non-nil (interactively, with a non `-' prefix argument) means insert the result into the current buffer instead of printing it in the echo area. Normally, this function truncates long output according to the value of the variables `eval-expression-print-length' and `eval-expression-print-level'. When NO-TRUNCATE is non-nil (interactively, with a prefix argument of zero), however, there is no such truncation. If the resulting value is an integer, and CHAR-PRINT-LIMIT is non-nil (interactively, unless given a non-zero prefix argument) it will be printed in several additional formats (octal, hexadecimal, and character). The character format is only used if the value is below CHAR-PRINT-LIMIT (interactively, if the prefix argument is -1 or the value doesn't exceed `eval-expression-print-maximum-character'). Runs the hook `eval-expression-minibuffer-setup-hook' on entering the minibuffer. If `eval-expression-debug-on-error' is non-nil, which is the default, this command arranges for all errors to enter the debugger. (fn EXP &optional INSERT-VALUE NO-TRUNCATE CHAR-PRINT-LIMIT)Fedit-and-eval-command Prompting with PROMPT, let user edit COMMAND and eval result. COMMAND is a Lisp expression. Let user edit that expression in the minibuffer, then read and evaluate the result. (fn PROMPT COMMAND)Frepeat-complex-command Edit and re-evaluate last complex command, or ARGth from last. A complex command is one which used the minibuffer. The command is placed in the minibuffer as a Lisp form for editing. The result is executed, repeating the command as changed. If the command has been changed or is not the most recent previous command it is added to the front of the command history. You can use the minibuffer history commands \<minibuffer-local-map>\[next-history-element] and \[previous-history-element] to get different commands to edit and resubmit. (fn ARG)Fread-extended-command Read command name to invoke in `execute-extended-command'.Fexecute-extended-command--shorter-1 (fn NAME LENGTH)Fexecute-extended-command--shorter (fn NAME TYPED)Fexecute-extended-command Read a command name, then read the arguments and call the command. To pass a prefix argument to the command you are invoking, give a prefix argument to `execute-extended-command'. (fn PREFIXARG &optional COMMAND-NAME TYPED)Fcommand-execute Execute CMD as an editor command. CMD must be a symbol that satisfies the `commandp' predicate. Optional second arg RECORD-FLAG non-nil means unconditionally put this command in the variable `command-history'. Otherwise, that is done only if an arg is read using the minibuffer. The argument KEYS specifies the value to use instead of (this-command-keys) when reading the arguments; if it is nil, (this-command-keys) is used. The argument SPECIAL, if non-nil, means that this command is executing a special event, so ignore the prefix argument and don't clear it. (fn CMD &optional RECORD-FLAG KEYS SPECIAL)Vminibuffer-history Default minibuffer history list. This is used for all minibuffer input except when an alternate history list is specified. Maximum length of the history list is determined by the value of `history-length', which see.Vminibuffer-history-sexp-flag Control whether history list elements are expressions or strings. If the value of this variable equals current minibuffer depth, they are expressions; otherwise they are strings. (That convention is designed to do the right thing for recursive uses of the minibuffer.)Vminibuffer-text-before-history Text that was in this minibuffer before any history commands. This is nil if there have not yet been any history commands in this use of the minibuffer.Fminibuffer-avoid-prompt A point-motion hook for the minibuffer, that moves point out of the prompt. (fn NEW OLD)Fprevious-matching-history-element Find the previous history element that matches REGEXP. (Previous history elements refer to earlier actions.) With prefix argument N, search for Nth previous match. If N is negative, find the next or Nth next match. Normally, history elements are matched case-insensitively if `case-fold-search' is non-nil, but an uppercase letter in REGEXP makes the search case-sensitive. See also `minibuffer-history-case-insensitive-variables'. (fn REGEXP N)Fnext-matching-history-element Find the next history element that matches REGEXP. (The next history element refers to a more recent action.) With prefix argument N, search for Nth next match. If N is negative, find the previous or Nth previous match. Normally, history elements are matched case-insensitively if `case-fold-search' is non-nil, but an uppercase letter in REGEXP makes the search case-sensitive. (fn REGEXP N)Vminibuffer-default-add-function Function run by `goto-history-element' before consuming default values. This is useful to dynamically add more elements to the list of default values when `goto-history-element' reaches the end of this list. Before calling this function `goto-history-element' sets the variable `minibuffer-default-add-done' to t, so it will call this function only once. In special cases, when this function needs to be called more than once, it can set `minibuffer-default-add-done' to nil explicitly, overriding the setting of this variable to t in `goto-history-element'.Vminibuffer-default-add-done When nil, add more elements to the end of the list of default values. The value nil causes `goto-history-element' to add more elements to the list of defaults when it reaches the end of this list. It does this by calling a function defined by `minibuffer-default-add-function'.Fminibuffer-default-add-completions Return a list of all completions without the default value. This function is used to add all elements of the completion table to the end of the list of defaults just after the default value.Fgoto-history-element Puts element of the minibuffer history in the minibuffer. The argument NABS specifies the absolute history position. (fn NABS)Fnext-history-element Puts next element of the minibuffer history in the minibuffer. With argument N, it uses the Nth following element. (fn N)Fprevious-history-element Puts previous element of the minibuffer history in the minibuffer. With argument N, it uses the Nth previous element. (fn N)Fnext-line-or-history-element Move cursor vertically down ARG lines, or to the next history element. When point moves over the bottom line of multi-line minibuffer, puts ARGth next element of the minibuffer history in the minibuffer. (fn &optional ARG)Fprevious-line-or-history-element Move cursor vertically up ARG lines, or to the previous history element. When point moves over the top line of multi-line minibuffer, puts ARGth previous element of the minibuffer history in the minibuffer. (fn &optional ARG)Fnext-complete-history-element Get next history element which completes the minibuffer before the point. The contents of the minibuffer after the point are deleted, and replaced by the new completion. (fn N)Fprevious-complete-history-element Get previous history element which completes the minibuffer before the point. The contents of the minibuffer after the point are deleted, and replaced by the new completion. (fn N)Fminibuffer-prompt-width Return the display width of the minibuffer prompt. Return 0 if current buffer is not a minibuffer.Fminibuffer-history-isearch-setup Set up a minibuffer for using isearch to search the minibuffer history. Intended to be added to `minibuffer-setup-hook'.Fminibuffer-history-isearch-end Clean up the minibuffer after terminating isearch in the minibuffer.Fminibuffer-history-isearch-search Return the proper search function, for isearch in minibuffer history.Fminibuffer-history-isearch-message Display the minibuffer history search prompt. If there are no search errors, this function displays an overlay with the isearch prompt which replaces the original minibuffer prompt. Otherwise, it displays the standard isearch message returned from the function `isearch-message'. (fn &optional C-Q-HACK ELLIPSIS)Fminibuffer-history-isearch-wrap Wrap the minibuffer history search when search fails. Move point to the first history element for a forward search, or to the last history element for a backward search.Fminibuffer-history-isearch-push-state Save a function restoring the state of minibuffer history search. Save `minibuffer-history-position' to the additional state parameter in the search status stack.Fminibuffer-history-isearch-pop-state Restore the minibuffer history search state. Go to the history element by the absolute history position HIST-POS. (fn CMD HIST-POS)Vundo-equiv-table Table mapping redo records to the corresponding undo one. A redo record for undo-in-region maps to t. A redo record for ordinary undo maps to the following (earlier) undo.Vundo-in-region Non-nil if `pending-undo-list' is not just a tail of `buffer-undo-list'.Vundo-no-redo If t, `undo' doesn't go through redo entries.Vpending-undo-list Within a run of consecutive undo commands, list remaining to be undone. If t, we undid all the way to the end of it.Fundo Undo some previous changes. Repeat this command to undo more changes. A numeric ARG serves as a repeat count. In Transient Mark mode when the mark is active, only undo changes within the current region. Similarly, when not in Transient Mark mode, just \[universal-argument] as an argument limits undo to changes within the current region. (fn &optional ARG)Fbuffer-disable-undo Make BUFFER stop keeping undo information. No argument or nil as argument means do this for the current buffer. (fn &optional BUFFER)Fundo-only Undo some previous changes. Repeat this command to undo more changes. A numeric ARG serves as a repeat count. Contrary to `undo', this will not redo a previous undo. (fn &optional ARG)Vundo-in-progress Non-nil while performing an undo. Some change-hooks test this variable to do something different.Fundo-more Undo back N undo-boundaries beyond what was already undone recently. Call `undo-start' to get ready to undo recent changes, then call `undo-more' one or more times to undo them. (fn N)Fprimitive-undo Undo N records from the front of the list LIST. Return what remains of the list. (fn N LIST)Fundo-copy-list Make a copy of undo list LIST. (fn LIST)Fundo-copy-list-1 (fn ELT)Fundo-start Set `pending-undo-list' to the front of the undo list. The next call to `undo-more' will undo the most recently made change. If BEG and END are specified, then only undo elements that apply to text between BEG and END are used; other undo elements are ignored. If BEG and END are nil, all undo elements are used. (fn &optional BEG END)Fundo-make-selective-list Return a list of undo elements for the region START to END. The elements come from `buffer-undo-list', but we keep only the elements inside this region, and discard those outside this region. The elements' positions are adjusted so as the returned list can be applied to the current buffer. (fn START END)Fundo-elt-in-region Determine whether UNDO-ELT falls inside the region START ... END. If it crosses the edge, we return nil. Generally this function is not useful for determining whether (MARKER . ADJUSTMENT) undo elements are in the region, because markers can be arbitrarily relocated. Instead, pass the marker adjustment's corresponding (TEXT . POS) element. (fn UNDO-ELT START END)Fundo-elt-crosses-region Test whether UNDO-ELT crosses one edge of that region START ... END. This assumes we have already decided that UNDO-ELT is not *inside* the region START...END. (fn UNDO-ELT START END)Fundo-adjust-elt Return adjustment of undo element ELT by the undo DELTAS list. (fn ELT DELTAS)Fundo-adjust-beg-end Return cons of adjustments to BEG and END by the undo DELTAS list. (fn BEG END DELTAS)Fundo-adjust-pos Return adjustment of POS by the undo DELTAS list, comparing with < or <= based on USE-<. (fn POS DELTAS &optional USE-<)Fundo-delta (fn UNDO-ELT)Vundo-auto--last-boundary-cause Describe the cause of the last undo-boundary. If `explicit', the last boundary was caused by an explicit call to `undo-boundary', that is one not called by the code in this section. If it is equal to `timer', then the last boundary was inserted by `undo-auto--boundary-timer'. If it is equal to `command', then the last boundary was inserted automatically after a command, that is by the code defined in this section. If it is equal to a list, then the last boundary was inserted by an amalgamating command. The car of the list is the number of times an amalgamating command has been called, and the cdr are the buffers that were changed during the last command.Vundo-auto-current-boundary-timer Current timer which will run `undo-auto--boundary-timer' or nil. If set to non-nil, this will effectively disable the timer.Vundo-auto--this-command-amalgamating Non-nil if `this-command' should be amalgamated. This variable is set to nil by `undo-auto--boundaries' and is set by `undo-auto-amalgamate'.Fundo-auto--needs-boundary-p Return non-nil if `buffer-undo-list' needs a boundary at the start.Fundo-auto--last-boundary-amalgamating-number Return the number of amalgamating last commands or nil. Amalgamating commands are, by default, either `self-insert-command' and `delete-char', but can be any command that calls `undo-auto-amalgamate'.Fundo-auto--ensure-boundary Add an `undo-boundary' to the current buffer if needed. REASON describes the reason that the boundary is being added; see `undo-auto--last-boundary' for more information. (fn CAUSE)Fundo-auto--boundaries Check recently changed buffers and add a boundary if necessary. REASON describes the reason that the boundary is being added; see `undo-last-boundary' for more information. (fn CAUSE)Fundo-auto--boundary-timer Timer function run by `undo-auto-current-boundary-timer'.Fundo-auto--boundary-ensure-timer Ensure that the `undo-auto-current-boundary-timer' is set.Vundo-auto--undoably-changed-buffers List of buffers that have changed recently. This list is maintained by `undo-auto--undoable-change' and `undo-auto--boundaries' and can be affected by changes to their default values.Fundo-auto--add-boundary Add an `undo-boundary' in appropriate buffers.Fundo-auto-amalgamate Amalgamate undo if necessary. This function can be called before an amalgamating command. It removes the previous `undo-boundary' if a series of such calls have been made. By default `self-insert-command' and `delete-char' are the only amalgamating commands, although this function could be called by any command wishing to have this behavior.Fundo-auto--undoable-change Called after every undoable buffer change.Fundo-amalgamate-change-group Amalgamate changes in change-group since HANDLE. Remove all undo boundaries between the state of HANDLE and now. HANDLE is as returned by `prepare-change-group'. (fn HANDLE)Vundo-extra-outer-limit If non-nil, an extra level of size that's ok in an undo item. We don't ask the user about truncating the undo list until the current item gets bigger than this amount. This variable only matters if `undo-ask-before-discard' is non-nil.Fundo-outer-limit-truncate (fn SIZE)Vshell-command-history History list for some commands that read shell commands. Maximum length of the history list is determined by the value of `history-length', which see.Vshell-command-switch Switch used to have the shell execute its command line argument.Vshell-command-default-error-buffer Buffer name for `shell-command' and `shell-command-on-region' error output. This buffer is used when `shell-command' or `shell-command-on-region' is run interactively. A value of nil means that output to stderr and stdout will be intermixed in the output stream.Fminibuffer-default-add-shell-commands Return a list of all commands associated with the current file. This function is used to add all related commands retrieved by `mailcap' to the end of the list of defaults just after the default value.Vminibuffer-local-shell-command-map Keymap used for completing shell commands in minibuffer.Fread-shell-command Read a shell command from the minibuffer. The arguments are the same as the ones of `read-from-minibuffer', except READ and KEYMAP are missing and HIST defaults to `shell-command-history'. (fn PROMPT &optional INITIAL-CONTENTS HIST &rest ARGS)Fshell-command--save-pos-or-erase Store a buffer position or erase the buffer. See `shell-command-dont-erase-buffer'.Fshell-command--set-point-after-cmd Set point in BUFFER after command complete. BUFFER is the output buffer of the command; if nil, then defaults to the current BUFFER. Set point to the `cdr' of the element in `shell-command-saved-pos' whose `car' is BUFFER. (fn &optional BUFFER)Fasync-shell-command Execute string COMMAND asynchronously in background. Like `shell-command', but adds `&' at the end of COMMAND to execute it asynchronously. The output appears in the buffer `*Async Shell Command*'. That buffer is in shell mode. You can configure `async-shell-command-buffer' to specify what to do when the `*Async Shell Command*' buffer is already taken by another running shell command. To run COMMAND without displaying the output in a window you can configure `display-buffer-alist' to use the action `display-buffer-no-window' for the buffer `*Async Shell Command*'. In Elisp, you will often be better served by calling `start-process' directly, since it offers more control and does not impose the use of a shell (with its need to quote arguments). (fn COMMAND &optional OUTPUT-BUFFER ERROR-BUFFER)Fshell-command Execute string COMMAND in inferior shell; display output, if any. With prefix argument, insert the COMMAND's output at point. Interactively, prompt for COMMAND in the minibuffer. If COMMAND ends in `&', execute it asynchronously. The output appears in the buffer `*Async Shell Command*'. That buffer is in shell mode. You can also use `async-shell-command' that automatically adds `&'. Otherwise, COMMAND is executed synchronously. The output appears in the buffer `*Shell Command Output*'. If the output is short enough to display in the echo area (which is determined by the variables `resize-mini-windows' and `max-mini-window-height'), it is shown there, but it is nonetheless available in buffer `*Shell Command Output*' even though that buffer is not automatically displayed. To specify a coding system for converting non-ASCII characters in the shell command output, use \[universal-coding-system-argument] before this command. Noninteractive callers can specify coding systems by binding `coding-system-for-read' and `coding-system-for-write'. The optional second argument OUTPUT-BUFFER, if non-nil, says to put the output in some other buffer. If OUTPUT-BUFFER is a buffer or buffer name, erase that buffer and insert the output there; a non-nil value of `shell-command-dont-erase-buffer' prevents the buffer from being erased. If OUTPUT-BUFFER is not a buffer and not nil, insert the output in current buffer after point leaving mark after it. This cannot be done asynchronously. If the command terminates without error, but generates output, and you did not specify "insert it in the current buffer", the output can be displayed in the echo area or in its buffer. If the output is short enough to display in the echo area (determined by the variable `max-mini-window-height' if `resize-mini-windows' is non-nil), it is shown there. Otherwise, the buffer containing the output is displayed. If there is output and an error, and you did not specify "insert it in the current buffer", a message about the error goes at the end of the output. If the optional third argument ERROR-BUFFER is non-nil, it is a buffer or buffer name to which to direct the command's standard error output. If it is nil, error output is mingled with regular output. In an interactive call, the variable `shell-command-default-error-buffer' specifies the value of ERROR-BUFFER. In Elisp, you will often be better served by calling `call-process' or `start-process' directly, since they offer more control and do not impose the use of a shell (with its need to quote arguments). (fn COMMAND &optional OUTPUT-BUFFER ERROR-BUFFER)Fdisplay-message-or-buffer Display MESSAGE in the echo area if possible, otherwise in a pop-up buffer. MESSAGE may be either a string or a buffer. A pop-up buffer is displayed using `display-buffer' if MESSAGE is too long for maximum height of the echo area, as defined by `max-mini-window-height' if `resize-mini-windows' is non-nil. Returns either the string shown in the echo area, or when a pop-up buffer is used, the window used to display it. If MESSAGE is a string, then the optional argument BUFFER-NAME is the name of the buffer used to display it in the case where a pop-up buffer is used, defaulting to `*Message*'. In the case where MESSAGE is a string and it is displayed in the echo area, it is not specified whether the contents are inserted into the buffer anyway. Optional arguments ACTION and FRAME are as for `display-buffer', and are only used if a pop-up buffer is displayed. (fn MESSAGE &optional BUFFER-NAME ACTION FRAME)Fshell-command-sentinel (fn PROCESS SIGNAL)Fshell-command-on-region Execute string COMMAND in inferior shell with region as input. Normally display output (if any) in temp buffer `*Shell Command Output*'; Prefix arg means replace the region with it. Return the exit code of COMMAND. To specify a coding system for converting non-ASCII characters in the input and output to the shell command, use \[universal-coding-system-argument] before this command. By default, the input (from the current buffer) is encoded using coding-system specified by `process-coding-system-alist', falling back to `default-process-coding-system' if no match for COMMAND is found in `process-coding-system-alist'. Noninteractive callers can specify coding systems by binding `coding-system-for-read' and `coding-system-for-write'. If the command generates output, the output may be displayed in the echo area or in a buffer. If the output is short enough to display in the echo area (determined by the variable `max-mini-window-height' if `resize-mini-windows' is non-nil), it is shown there. Otherwise it is displayed in the buffer `*Shell Command Output*'. The output is available in that buffer in both cases. If there is output and an error, a message about the error appears at the end of the output. Optional fourth arg OUTPUT-BUFFER specifies where to put the command's output. If the value is a buffer or buffer name, erase that buffer and insert the output there; a non-nil value of `shell-command-dont-erase-buffer' prevent to erase the buffer. If the value is nil, use the buffer `*Shell Command Output*'. Any other non-nil value means to insert the output in the current buffer after START. Optional fifth arg REPLACE, if non-nil, means to insert the output in place of text from START to END, putting point and mark around it. Optional sixth arg ERROR-BUFFER, if non-nil, specifies a buffer or buffer name to which to direct the command's standard error output. If nil, error output is mingled with regular output. When called interactively, `shell-command-default-error-buffer' is used for ERROR-BUFFER. Optional seventh arg DISPLAY-ERROR-BUFFER, if non-nil, means to display the error buffer if there were any errors. When called interactively, this is t. (fn START END COMMAND &optional OUTPUT-BUFFER REPLACE ERROR-BUFFER DISPLAY-ERROR-BUFFER REGION-NONCONTIGUOUS-P)Fshell-command-to-string Execute shell command COMMAND and return its output as a string. (fn COMMAND)Fprocess-file Process files synchronously in a separate process that runs PROGRAM. Similar to `call-process', but may invoke a file handler based on `default-directory'. The current working directory of the subprocess is `default-directory'. If PROGRAM is a remote file name, it should be processed by `file-local-name' before passing it to this function. File names in INFILE and BUFFER are handled normally, but file names in ARGS should be relative to `default-directory', as they are passed to the process verbatim. (This is a difference to `call-process' which does not support file handlers for INFILE and BUFFER.) Some file handlers might not support all variants, for example they might behave as if DISPLAY was nil, regardless of the actual value passed. (fn PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS)Vprocess-file-side-effects Whether a call of `process-file' changes remote files. By default, this variable is always set to t, meaning that a call of `process-file' could potentially change any file on a remote host. When set to nil, a file handler could optimize its behavior with respect to remote file attribute caching. You should only ever change this variable with a let-binding; never with `setq'.Fstart-file-process Start a program in a subprocess. Return the process object for it. Similar to `start-process', but may invoke a file handler based on `default-directory'. See Info node `(elisp)Magic File Names'. This handler ought to run PROGRAM, perhaps on the local host, perhaps on a remote host that corresponds to `default-directory'. In the latter case, the local part of `default-directory', the one produced from it by `file-local-name', becomes the working directory of the process on the remote host. PROGRAM and PROGRAM-ARGS might be file names. They are not objects of file handler invocation, so they need to be obtained by calling `file-local-name', in case they are remote file names. File handlers might not support pty association, if PROGRAM is nil. (fn NAME BUFFER PROGRAM &rest PROGRAM-ARGS)Fprocess-menu-mode Major mode for listing the processes called by Emacs. In addition to any hooks its parent mode `tabulated-list-mode' might have run, this mode runs the hook `process-menu-mode-hook', as the final or penultimate step during initialization. \{process-menu-mode-map}Fprocess-menu-delete-process Kill process at point in a `list-processes' buffer.Flist-processes--refresh Recompute the list of processes for the Process List buffer. Also, delete any process that is exited or signaled.Fprocess-menu-visit-buffer (fn BUTTON)Flist-processes Display a list of all processes that are Emacs sub-processes. If optional argument QUERY-ONLY is non-nil, only processes with the query-on-exit flag set are listed. Any process listed as exited or signaled is actually eliminated after the listing is made. Optional argument BUFFER specifies a buffer to use, instead of "*Process List*". The return value is always nil. This function lists only processes that were launched by Emacs. To see other processes running on the system, use `list-system-processes'. (fn &optional QUERY-ONLY BUFFER)Vprefix-command-echo-keystrokes-functions Abnormal hook which constructs the description of the current prefix state. Each function is called with no argument, should return a string or nil.Fprefix-command-update Update state of prefix commands. Call it whenever you change the "prefix command state".Vprefix-command-preserve-state-hook Normal hook run when a command needs to preserve the prefix.Fprefix-command-preserve-state Pass the current prefix command state to the next command. Should be called by all prefix commands. Runs `prefix-command-preserve-state-hook'.Vuniversal-argument-map Keymap used while processing \[universal-argument].Funiversal-argument Begin a numeric argument for the following command. Digits or minus sign following \[universal-argument] make up the numeric argument. \[universal-argument] following the digits or minus sign ends the argument. \[universal-argument] without digits or minus sign provides 4 as argument. Repeating \[universal-argument] without digits or minus sign multiplies the argument by 4 each time. For some commands, just \[universal-argument] by itself serves as a flag which is different in effect from any particular numeric argument. These commands include \[set-mark-command] and \[start-kbd-macro].Funiversal-argument-more (fn ARG)Fnegative-argument Begin a negative numeric argument for the next command. \[universal-argument] following digits or minus sign ends the argument. (fn ARG)Fdigit-argument Part of the numeric argument for the next command. \[universal-argument] following digits or minus sign ends the argument. (fn ARG)Vfilter-buffer-substring-functions This variable is a wrapper hook around `buffer-substring--filter'. (See `with-wrapper-hook' for details about wrapper hooks.)Vfilter-buffer-substring-function Function to perform the filtering in `filter-buffer-substring'. The function is called with the same 3 arguments (BEG END DELETE) that `filter-buffer-substring' received. It should return the buffer substring between BEG and END, after filtering. If DELETE is non-nil, it should delete the text between BEG and END from the buffer.Vbuffer-substring-filters List of filter functions for `buffer-substring--filter'. Each function must accept a single argument, a string, and return a string. The buffer substring is passed to the first function in the list, and the return value of each function is passed to the next. As a special convention, point is set to the start of the buffer text being operated on (i.e., the first argument of `buffer-substring--filter') before these functions are called.Ffilter-buffer-substring Return the buffer substring between BEG and END, after filtering. If DELETE is non-nil, delete the text between BEG and END from the buffer. This calls the function that `filter-buffer-substring-function' specifies (passing the same three arguments that it received) to do the work, and returns whatever it does. The default function does no filtering, unless a hook has been set. Use `filter-buffer-substring' instead of `buffer-substring', `buffer-substring-no-properties', or `delete-and-extract-region' when you want to allow filtering to take place. For example, major or minor modes can use `filter-buffer-substring-function' to exclude text properties that are special to a buffer, and should not be copied into other buffers. (fn BEG END &optional DELETE)Fbuffer-substring--filter Default function to use for `filter-buffer-substring-function'. Its arguments and return value are as specified for `filter-buffer-substring'. Also respects the obsolete wrapper hook `filter-buffer-substring-functions' (see `with-wrapper-hook' for details about wrapper hooks), and the abnormal hook `buffer-substring-filters'. No filtering is done unless a hook says to. (fn BEG END &optional DELETE)Vinterprogram-cut-function Function to call to make a killed region available to other programs. Most window systems provide a facility for cutting and pasting text between different programs, such as the clipboard on X and MS-Windows, or the pasteboard on Nextstep/Mac OS. This variable holds a function that Emacs calls whenever text is put in the kill ring, to make the new kill available to other programs. The function takes one argument, TEXT, which is a string containing the text which should be made available.Vinterprogram-paste-function Function to call to get text cut from other programs. Most window systems provide a facility for cutting and pasting text between different programs, such as the clipboard on X and MS-Windows, or the pasteboard on Nextstep/Mac OS. This variable holds a function that Emacs calls to obtain text that other programs have provided for pasting. The function is called with no arguments. If no other program has provided text to paste, the function should return nil (in which case the caller, usually `current-kill', should use the top of the Emacs kill ring). If another program has provided text to paste, the function should return that text as a string (in which case the caller should put this string in the kill ring as the latest kill). The function may also return a list of strings if the window system supports multiple selections. The first string will be used as the pasted text, but the other will be placed in the kill ring for easy access via `yank-pop'. Note that the function should return a string only if a program other than Emacs has provided a string for pasting; if Emacs provided the most recent string, the function should return nil. If it is difficult to tell whether Emacs or some other program provided the current string, it is probably good enough to return nil if the string is equal (according to `string=') to the last text Emacs provided.Vkill-ring List of killed text sequences. Since the kill ring is supposed to interact nicely with cut-and-paste facilities offered by window systems, use of this variable should interact nicely with `interprogram-cut-function' and `interprogram-paste-function'. The functions `kill-new', `kill-append', and `current-kill' are supposed to implement this interaction; you may want to use them instead of manipulating the kill ring directly.Vkill-ring-yank-pointer The tail of the kill ring whose car is the last thing yanked.Fkill-new Make STRING the latest kill in the kill ring. Set `kill-ring-yank-pointer' to point to it. If `interprogram-cut-function' is non-nil, apply it to STRING. Optional second argument REPLACE non-nil means that STRING will replace the front of the kill ring, rather than being added to the list. When `save-interprogram-paste-before-kill' and `interprogram-paste-function' are non-nil, save the interprogram paste string(s) into `kill-ring' before STRING. When the yank handler has a non-nil PARAM element, the original STRING argument is not used by `insert-for-yank'. However, since Lisp code may access and use elements from the kill ring directly, the STRING argument should still be a "useful" string for such uses. (fn STRING &optional REPLACE)Fkill-append Append STRING to the end of the latest kill in the kill ring. If BEFORE-P is non-nil, prepend STRING to the kill instead. If `interprogram-cut-function' is non-nil, call it with the resulting kill. If `kill-append-merge-undo' is non-nil, remove the last undo boundary in the current buffer. (fn STRING BEFORE-P)Fcurrent-kill Rotate the yanking point by N places, and then return that kill. If N is zero and `interprogram-paste-function' is set to a function that returns a string or a list of strings, and if that function doesn't return nil, then that string (or list) is added to the front of the kill ring and the string (or first string in the list) is returned as the latest kill. If N is not zero, and if `yank-pop-change-selection' is non-nil, use `interprogram-cut-function' to transfer the kill at the new yank point into the window system selection. If optional arg DO-NOT-MOVE is non-nil, then don't actually move the yanking point; just return the Nth kill forward. (fn N &optional DO-NOT-MOVE)Fkill-region Kill ("cut") text between point and mark. This deletes the text from the buffer and saves it in the kill ring. The command \[yank] can retrieve it from there. (If you want to save the region without killing it, use \[kill-ring-save].) If you want to append the killed region to the last killed text, use \[append-next-kill] before \[kill-region]. Any command that calls this function is a "kill command". If the previous command was also a kill command, the text killed this time appends to the text killed last time to make one entry in the kill ring. The killed text is filtered by `filter-buffer-substring' before it is saved in the kill ring, so the actual saved text might be different from what was killed. If the buffer is read-only, Emacs will beep and refrain from deleting the text, but put the text in the kill ring anyway. This means that you can use the killing commands to copy text from a read-only buffer. Lisp programs should use this function for killing text. (To delete text, use `delete-region'.) Supply two arguments, character positions BEG and END indicating the stretch of text to be killed. If the optional argument REGION is non-nil, the function ignores BEG and END, and kills the current region instead. (fn BEG END &optional REGION)Fcopy-region-as-kill Save the region as if killed, but don't kill it. In Transient Mark mode, deactivate the mark. If `interprogram-cut-function' is non-nil, also save the text for a window system cut and paste. The copied text is filtered by `filter-buffer-substring' before it is saved in the kill ring, so the actual saved text might be different from what was in the buffer. When called from Lisp, save in the kill ring the stretch of text between BEG and END, unless the optional argument REGION is non-nil, in which case ignore BEG and END, and save the current region instead. This command's old key binding has been given to `kill-ring-save'. (fn BEG END &optional REGION)Fkill-ring-save Save the region as if killed, but don't kill it. In Transient Mark mode, deactivate the mark. If `interprogram-cut-function' is non-nil, also save the text for a window system cut and paste. If you want to append the killed line to the last killed text, use \[append-next-kill] before \[kill-ring-save]. The copied text is filtered by `filter-buffer-substring' before it is saved in the kill ring, so the actual saved text might be different from what was in the buffer. When called from Lisp, save in the kill ring the stretch of text between BEG and END, unless the optional argument REGION is non-nil, in which case ignore BEG and END, and save the current region instead. This command is similar to `copy-region-as-kill', except that it gives visual feedback indicating the extent of the region being copied. (fn BEG END &optional REGION)Findicate-copied-region Indicate that the region text has been copied interactively. If the mark is visible in the selected window, blink the cursor between point and mark if there is currently no active region highlighting. If the mark lies outside the selected window, display an informative message containing a sample of the copied text. The optional argument MESSAGE-LEN, if non-nil, specifies the length of this sample text; it defaults to 40. (fn &optional MESSAGE-LEN)Fappend-next-kill Cause following command, if it kills, to add to previous kill. If the next command kills forward from point, the kill is appended to the previous killed text. If the command kills backward, the kill is prepended. Kill commands that act on the region, such as `kill-region', are regarded as killing forward if point is after mark, and killing backward if point is before mark. If the next command is not a kill command, `append-next-kill' has no effect. The argument is used for internal purposes; do not supply one. (fn &optional INTERACTIVE)Vbidi-directional-controls-chars Character set that matches bidirectional formatting control characters.Vbidi-directional-non-controls-chars Character set that matches any character except bidirectional controls.Fsqueeze-bidi-context-1 A subroutine of `squeeze-bidi-context'. FROM and TO should be markers, CATEGORY and REPLACEMENT should be strings. (fn FROM TO CATEGORY REPLACEMENT)Fsqueeze-bidi-context Replace characters between FROM and TO while keeping bidi context. This function replaces the region of text with as few characters as possible, while preserving the effect that region will have on bidirectional display before and after the region. (fn FROM TO)Fline-substring-with-bidi-context Return buffer text between START and END with its bidi context. START and END are assumed to belong to the same physical line of buffer text. This function prepends and appends to the text between START and END bidi control characters that preserve the visual order of that text when it is inserted at some other place. (fn START END &optional NO-PROPERTIES)Fbuffer-substring-with-bidi-context Return portion of current buffer between START and END with bidi context. This function works similar to `buffer-substring', but it prepends and appends to the text bidi directional control characters necessary to preserve the visual appearance of the text if it is inserted at another place. This is useful when the buffer substring includes bidirectional text and control characters that cause non-trivial reordering on display. If copied verbatim, such text can have a very different visual appearance, and can also change the visual appearance of the surrounding text at the destination of the copy. Optional argument NO-PROPERTIES, if non-nil, means copy the text without the text properties. (fn START END &optional NO-PROPERTIES)Vyank-undo-function If non-nil, function used by `yank-pop' to delete last stretch of yanked text. Function is called with two parameters, START and END corresponding to the value of the mark and point; it is guaranteed that START <= END. Normally set from the UNDO element of a yank-handler; see `insert-for-yank'.Fyank-pop Replace just-yanked stretch of killed text with a different stretch. This command is allowed only immediately after a `yank' or a `yank-pop'. At such a time, the region contains a stretch of reinserted previously-killed text. `yank-pop' deletes that text and inserts in its place a different stretch of killed text. With no argument, the previous kill is inserted. With argument N, insert the Nth previous kill. If N is negative, this is a more recent kill. The sequence of kills wraps around, so that after the oldest one comes the newest one. This command honors the `yank-handled-properties' and `yank-excluded-properties' variables, and the `yank-handler' text property, in the way that `yank' does. (fn &optional ARG)Fyank Reinsert ("paste") the last stretch of killed text. More precisely, reinsert the most recent kill, which is the stretch of killed text most recently killed OR yanked. Put point at the end, and set mark at the beginning without activating it. With just \[universal-argument] as argument, put point at beginning, and mark at end. With argument N, reinsert the Nth most recent kill. This command honors the `yank-handled-properties' and `yank-excluded-properties' variables, and the `yank-handler' text property, as described below. Properties listed in `yank-handled-properties' are processed, then those listed in `yank-excluded-properties' are discarded. If STRING has a non-nil `yank-handler' property anywhere, the normal insert behavior is altered, and instead, for each contiguous segment of STRING that has a given value of the `yank-handler' property, that value is used as follows: The value of a `yank-handler' property must be a list of one to four elements, of the form (FUNCTION PARAM NOEXCLUDE UNDO). FUNCTION, if non-nil, should be a function of one argument (the object to insert); FUNCTION is called instead of `insert'. PARAM, if present and non-nil, is passed to FUNCTION (to be handled in whatever way is appropriate; e.g. if FUNCTION is `yank-rectangle', PARAM may be a list of strings to insert as a rectangle). If PARAM is nil, then the current segment of STRING is used. If NOEXCLUDE is present and non-nil, the normal removal of `yank-excluded-properties' is not performed; instead FUNCTION is responsible for the removal. This may be necessary if FUNCTION adjusts point before or after inserting the object. UNDO, if present and non-nil, should be a function to be called by `yank-pop' to undo the insertion of the current PARAM. It is given two arguments, the start and end of the region. FUNCTION may set `yank-undo-function' to override UNDO. See also the command `yank-pop' (\[yank-pop]). (fn &optional ARG)Frotate-yank-pointer Rotate the yanking point in the kill ring. With ARG, rotate that many kills forward (or backward, if negative). (fn ARG)Fkill-forward-chars (fn ARG)Fkill-backward-chars (fn ARG)Fbackward-delete-char-untabify Delete characters backward, changing tabs into spaces. The exact behavior depends on `backward-delete-char-untabify-method'. Delete ARG chars, and kill (save in kill ring) if KILLP is non-nil. Interactively, ARG is the prefix arg (default 1) and KILLP is t if a prefix arg was specified. (fn ARG &optional KILLP)Fzap-to-char Kill up to and including ARGth occurrence of CHAR. Case is ignored if `case-fold-search' is non-nil in the current buffer. Goes backward if ARG is negative; error if CHAR not found. (fn ARG CHAR)Fkill-line Kill the rest of the current line; if no nonblanks there, kill thru newline. With prefix argument ARG, kill that many lines from point. Negative arguments kill lines backward. With zero argument, kills the text before point on the current line. When calling from a program, nil means "no arg", a number counts as a prefix arg. To kill a whole line, when point is not at the beginning, type \[move-beginning-of-line] \[kill-line] \[kill-line]. If `show-trailing-whitespace' is non-nil, this command will just kill the rest of the current line, even if there are no nonblanks there. If option `kill-whole-line' is non-nil, then this command kills the whole line including its terminating newline, when used at the beginning of a line with no argument. As a consequence, you can always kill a whole line by typing \[move-beginning-of-line] \[kill-line]. If you want to append the killed line to the last killed text, use \[append-next-kill] before \[kill-line]. If the buffer is read-only, Emacs will beep and refrain from deleting the line, but put the line in the kill ring anyway. This means that you can use this command to copy text from a read-only buffer. (If the variable `kill-read-only-ok' is non-nil, then this won't even beep.) (fn &optional ARG)Fkill-whole-line Kill current line. With prefix ARG, kill that many lines starting from the current line. If ARG is negative, kill backward. Also kill the preceding newline. (This is meant to make \[repeat] work well with negative arguments.) If ARG is zero, kill current line but exclude the trailing newline. (fn &optional ARG)Fforward-visible-line Move forward by ARG lines, ignoring currently invisible newlines only. If ARG is negative, move backward -ARG lines. If ARG is zero, move to the beginning of the current line. (fn ARG)Fend-of-visible-line Move to end of current visible line.Fkill-current-buffer Kill the current buffer. When called in the minibuffer, get out of the minibuffer using `abort-recursive-edit'. This is like `kill-this-buffer', but it doesn't have to be invoked via the menu bar, and pays no attention to the menu-bar's frame.Finsert-buffer Insert after point the contents of BUFFER. Puts mark after the inserted text. BUFFER may be a buffer or a buffer name. (fn BUFFER)Fappend-to-buffer Append to specified BUFFER the text of the region. The text is inserted into that buffer before its point. BUFFER can be a buffer or the name of a buffer; this function will create BUFFER if it doesn't already exist. When calling from a program, give three arguments: BUFFER (or buffer name), START and END. START and END specify the portion of the current buffer to be copied. (fn BUFFER START END)Fprepend-to-buffer Prepend to specified BUFFER the text of the region. The text is inserted into that buffer after its point. BUFFER can be a buffer or the name of a buffer; this function will create BUFFER if it doesn't already exist. When calling from a program, give three arguments: BUFFER (or buffer name), START and END. START and END specify the portion of the current buffer to be copied. (fn BUFFER START END)Fcopy-to-buffer Copy to specified BUFFER the text of the region. The text is inserted into that buffer, replacing existing text there. BUFFER can be a buffer or the name of a buffer; this function will create BUFFER if it doesn't already exist. When calling from a program, give three arguments: BUFFER (or buffer name), START and END. START and END specify the portion of the current buffer to be copied. (fn BUFFER START END)Vactivate-mark-hook Hook run when the mark becomes active. It is also run at the end of a command, if the mark is active and it is possible that the region may have changed.Vdeactivate-mark-hook Hook run when the mark becomes inactive.Fmark Return this buffer's mark value as integer, or nil if never set. In Transient Mark mode, this function signals an error if the mark is not active. However, if `mark-even-if-inactive' is non-nil, or the argument FORCE is non-nil, it disregards whether the mark is active, and returns an integer or nil in the usual way. If you are using this in an editing command, you are most likely making a mistake; see the documentation of `set-mark'. (fn &optional FORCE)Fdeactivate-mark Deactivate the mark. If Transient Mark mode is disabled, this function normally does nothing; but if FORCE is non-nil, it deactivates the mark anyway. Deactivating the mark sets `mark-active' to nil, updates the primary selection according to `select-active-regions', and runs `deactivate-mark-hook'. If Transient Mark mode was temporarily enabled, reset the value of the variable `transient-mark-mode'; if this causes Transient Mark mode to be disabled, don't change `mark-active' to nil or run `deactivate-mark-hook'. (fn &optional FORCE)Factivate-mark Activate the mark. If NO-TMM is non-nil, leave `transient-mark-mode' alone. (fn &optional NO-TMM)Fset-mark Set this buffer's mark to POS. Don't use this function! That is to say, don't use this function unless you want the user to see that the mark has moved, and you want the previous mark position to be lost. Normally, when a new mark is set, the old one should go on the stack. This is why most applications should use `push-mark', not `set-mark'. Novice Emacs Lisp programmers often try to use the mark for the wrong purposes. The mark saves a location for the user's convenience. Most editing commands should not alter the mark. To remember a location for internal use in the Lisp program, store it in a Lisp variable. Example: (let ((beg (point))) (forward-line 1) (delete-region beg (point))). (fn POS)Fsave-mark-and-excursion--restore (fn SAVED-MARK-INFO)Fsave-mark-and-excursion Like `save-excursion', but also save and restore the mark state. This macro does what `save-excursion' did before Emacs 25.1. (fn &rest BODY)Fuse-region-p Return t if the region is active and it is appropriate to act on it. This is used by commands that act specially on the region under Transient Mark mode. The return value is t if Transient Mark mode is enabled and the mark is active; furthermore, if `use-empty-active-region' is nil, the region must not be empty. Otherwise, the return value is nil. For some commands, it may be appropriate to ignore the value of `use-empty-active-region'; in that case, use `region-active-p'.Fregion-active-p Return non-nil if Transient Mark mode is enabled and the mark is active. Some commands act specially on the region when Transient Mark mode is enabled. Usually, such commands should use `use-region-p' instead of this function, because `use-region-p' also checks the value of `use-empty-active-region'.Fregion-bounds Return the boundaries of the region. Value is a list of one or more cons cells of the form (START . END). It will have more than one cons cell when the region is non-contiguous, see `region-noncontiguous-p' and `extract-rectangle-bounds'.Fregion-noncontiguous-p Return non-nil if the region contains several pieces. An example is a rectangular region handled as a list of separate contiguous regions for each line.Fredisplay--update-region-highlight (fn WINDOW)Vpre-redisplay-functions Hook run just before redisplay. It is called in each window that is to be redisplayed. It takes one argument, which is the window that will be redisplayed. When run, the `current-buffer' is set to the buffer displayed in that window.Fredisplay--pre-redisplay-functions (fn WINDOWS)Vmark-ring The list of former marks of the current buffer, most recent first.Vglobal-mark-ring The list of saved global marks, most recent first.Fpop-to-mark-command Jump to mark, and pop a new position for mark off the ring. (Does not affect global mark ring).Fpush-mark-command Set mark at where point is. If no prefix ARG and mark is already set there, just activate it. Display `Mark set' unless the optional second arg NOMSG is non-nil. (fn ARG &optional NOMSG)Fset-mark-command Set the mark where point is, and activate it; or jump to the mark. Setting the mark also alters the region, which is the text between point and mark; this is the closest equivalent in Emacs to what some editors call the "selection". With no prefix argument, set the mark at point, and push the old mark position on local mark ring. Also push the new mark on global mark ring, if the previous mark was set in another buffer. When Transient Mark Mode is off, immediately repeating this command activates `transient-mark-mode' temporarily. With prefix argument (e.g., \[universal-argument] \[set-mark-command]), jump to the mark, and set the mark from position popped off the local mark ring (this does not affect the global mark ring). Use \[pop-global-mark] to jump to a mark popped off the global mark ring (see `pop-global-mark'). If `set-mark-command-repeat-pop' is non-nil, repeating the \[set-mark-command] command with no prefix argument pops the next position off the local (or global) mark ring and jumps there. With \[universal-argument] \[universal-argument] as prefix argument, unconditionally set mark where point is, even if `set-mark-command-repeat-pop' is non-nil. Novice Emacs Lisp programmers often try to use the mark for the wrong purposes. See the documentation of `set-mark' for more information. (fn ARG)Fpush-mark Set mark at LOCATION (point, by default) and push old mark on mark ring. If the last global mark pushed was not in the current buffer, also push LOCATION on the global mark ring. Display `Mark set' unless the optional second arg NOMSG is non-nil. Novice Emacs Lisp programmers often try to use the mark for the wrong purposes. See the documentation of `set-mark' for more information. In Transient Mark mode, activate mark if optional third arg ACTIVATE non-nil. (fn &optional LOCATION NOMSG ACTIVATE)Fpop-mark Pop off mark ring into the buffer's actual mark. Does not set point. Does nothing if mark ring is empty.Fexchange-point-and-mark Put the mark where point is now, and point where the mark is now. This command works even when the mark is not active, and it reactivates the mark. If Transient Mark mode is on, a prefix ARG deactivates the mark if it is active, and otherwise avoids reactivating it. If Transient Mark mode is off, a prefix ARG enables Transient Mark mode temporarily. (fn &optional ARG)Fhandle-shift-selection Activate/deactivate mark depending on invocation thru shift translation. This function is called by `call-interactively' when a command with a `^' character in its `interactive' spec is invoked, before running the command itself. If `shift-select-mode' is enabled and the command was invoked through shift translation, set the mark and activate the region temporarily, unless it was already set in this way. See `this-command-keys-shift-translated' for the meaning of shift translation. Otherwise, if the region has been activated temporarily, deactivate it, and restore the variable `transient-mark-mode' to its earlier value.Ftransient-mark-mode Toggle Transient Mark mode. With a prefix argument ARG, enable Transient Mark mode if ARG is positive, and disable it otherwise. If called from Lisp, enable Transient Mark mode if ARG is omitted or nil. Transient Mark mode is a global minor mode. When enabled, the region is highlighted with the `region' face whenever the mark is active. The mark is "deactivated" after certain non-motion commands, including those that change the text in the buffer, and during shift or mouse selection by any unshifted cursor motion command (see Info node `Shift Selection' for more details). You can also deactivate the mark by typing \[keyboard-quit] or \[keyboard-escape-quit]. Many commands change their behavior when Transient Mark mode is in effect and the mark is active, by acting on the region instead of their usual default part of the buffer's text. Examples of such commands include \[comment-dwim], \[flush-lines], \[keep-lines], \[query-replace], \[query-replace-regexp], \[ispell], and \[undo]. To see the documentation of commands which are sensitive to the Transient Mark mode, invoke \[apropos-documentation] and type "transient" or "mark.*active" at the prompt. (fn &optional ARG)Vwiden-automatically Non-nil means it is ok for commands to call `widen' when they want to. Some commands will do this in order to go to positions outside the current accessible part of the buffer. If `widen-automatically' is nil, these commands will do something else as a fallback, and won't change the buffer bounds.Vnon-essential Whether the currently executing code is performing an essential task. This variable should be non-nil only when running code which should not disturb the user. E.g. it can be used to prevent Tramp from prompting the user for a password when we are simply scanning a set of files in the background or displaying possible completions before the user even asked for it.Fpop-global-mark Pop off global mark ring and jump to the top location.Fnext-line Move cursor vertically down ARG lines. Interactively, vscroll tall lines if `auto-window-vscroll' is enabled. Non-interactively, use TRY-VSCROLL to control whether to vscroll tall lines: if either `auto-window-vscroll' or TRY-VSCROLL is nil, this function will not vscroll. ARG defaults to 1. If there is no character in the target line exactly under the current column, the cursor is positioned after the character in that line which spans this column, or at the end of the line if it is not long enough. If there is no line in the buffer after this one, behavior depends on the value of `next-line-add-newlines'. If non-nil, it inserts a newline character to create a line, and moves the cursor to that line. Otherwise it moves the cursor to the end of the buffer. If the variable `line-move-visual' is non-nil, this command moves by display lines. Otherwise, it moves by buffer lines, without taking variable-width characters or continued lines into account. See \[next-logical-line] for a command that always moves by buffer lines. The command \[set-goal-column] can be used to create a semipermanent goal column for this command. Then instead of trying to move exactly vertically (or as close as possible), this command moves to the specified goal column (or as close as possible). The goal column is stored in the variable `goal-column', which is nil when there is no goal column. Note that setting `goal-column' overrides `line-move-visual' and causes this command to move by buffer lines rather than by display lines. (fn &optional ARG TRY-VSCROLL)Fprevious-line Move cursor vertically up ARG lines. Interactively, vscroll tall lines if `auto-window-vscroll' is enabled. Non-interactively, use TRY-VSCROLL to control whether to vscroll tall lines: if either `auto-window-vscroll' or TRY-VSCROLL is nil, this function will not vscroll. ARG defaults to 1. If there is no character in the target line exactly over the current column, the cursor is positioned after the character in that line which spans this column, or at the end of the line if it is not long enough. If the variable `line-move-visual' is non-nil, this command moves by display lines. Otherwise, it moves by buffer lines, without taking variable-width characters or continued lines into account. See \[previous-logical-line] for a command that always moves by buffer lines. The command \[set-goal-column] can be used to create a semipermanent goal column for this command. Then instead of trying to move exactly vertically (or as close as possible), this command moves to the specified goal column (or as close as possible). The goal column is stored in the variable `goal-column', which is nil when there is no goal column. Note that setting `goal-column' overrides `line-move-visual' and causes this command to move by buffer lines rather than by display lines. (fn &optional ARG TRY-VSCROLL)Vtemporary-goal-column Current goal column for vertical motion. It is the column where point was at the start of the current run of vertical motion commands. When moving by visual lines via the function `line-move-visual', it is a cons cell (COL . HSCROLL), where COL is the x-position, in pixels, divided by the default column width, and HSCROLL is the number of columns by which window is scrolled from left margin. When the `track-eol' feature is doing its job, the value is `most-positive-fixnum'.Fdefault-font-height Return the height in pixels of the current buffer's default face font. If the default font is remapped (see `face-remapping-alist'), the function returns the height of the remapped face.Fdefault-font-width Return the width in pixels of the current buffer's default face font. If the default font is remapped (see `face-remapping-alist'), the function returns the width of the remapped face.Fdefault-line-height Return the pixel height of current buffer's default-face text line. The value includes `line-spacing', if any, defined for the buffer or the frame.Fwindow-screen-lines Return the number of screen lines in the text area of the selected window. This is different from `window-text-height' in that this function counts lines in units of the height of the font used by the default face displayed in the window, not in units of the frame's default font, and also accounts for `line-spacing', if any, defined for the window's buffer or frame. The value is a floating-point number.Fline-move-partial (fn ARG NOERROR &optional TO-END)Fline-move Move forward ARG lines. If NOERROR, don't signal an error if we can't move ARG lines. TO-END is unused. TRY-VSCROLL controls whether to vscroll tall lines: if either `auto-window-vscroll' or TRY-VSCROLL is nil, this function will not vscroll. (fn ARG &optional NOERROR TO-END TRY-VSCROLL)Fline-move-visual Move ARG lines forward. If NOERROR, don't signal an error if we can't move that many lines. (fn ARG &optional NOERROR)Fline-move-1 (fn ARG &optional NOERROR TO-END)Fline-move-finish (fn COLUMN OPOINT FORWARD)Fline-move-to-column Try to find column COL, considering invisibility. This function works only in certain cases, because what we really need is for `move-to-column' and `current-column' to be able to ignore invisible text. (fn COL)Fmove-end-of-line Move point to end of current line as displayed. With argument ARG not nil or 1, move forward ARG - 1 lines first. If point reaches the beginning or end of buffer, it stops there. To ignore the effects of the `intangible' text or overlay property, bind `inhibit-point-motion-hooks' to t. If there is an image in the current line, this function disregards newlines that are part of the text on which the image rests. (fn ARG)Fmove-beginning-of-line Move point to beginning of current line as displayed. (If there's an image in the line, this disregards newlines which are part of the text that the image rests on.) With argument ARG not nil or 1, move forward ARG - 1 lines first. If point reaches the beginning or end of buffer, it stops there. (But if the buffer doesn't end in a newline, it stops at the beginning of the last line.) To ignore intangibility, bind `inhibit-point-motion-hooks' to t. (fn ARG)Fset-goal-column Set the current horizontal position as a goal for \[next-line] and \[previous-line]. Those commands will move to this position in the line moved to rather than trying to keep the same horizontal position. With a non-nil argument ARG, clears out the goal column so that \[next-line] and \[previous-line] resume vertical motion. The goal column is stored in the variable `goal-column'. This is a buffer-local setting. (fn ARG)Fend-of-visual-line Move point to end of current visual line. With argument N not nil or 1, move forward N - 1 visual lines first. If point reaches the beginning or end of buffer, it stops there. To ignore intangibility, bind `inhibit-point-motion-hooks' to t. (fn &optional N)Fbeginning-of-visual-line Move point to beginning of current visual line. With argument N not nil or 1, move forward N - 1 visual lines first. If point reaches the beginning or end of buffer, it stops there. (But if the buffer doesn't end in a newline, it stops at the beginning of the last visual line.) To ignore intangibility, bind `inhibit-point-motion-hooks' to t. (fn &optional N)Fkill-visual-line Kill the rest of the visual line. With prefix argument ARG, kill that many visual lines from point. If ARG is negative, kill visual lines backward. If ARG is zero, kill the text before point on the current visual line. If you want to append the killed line to the last killed text, use \[append-next-kill] before \[kill-line]. If the buffer is read-only, Emacs will beep and refrain from deleting the line, but put the line in the kill ring anyway. This means that you can use this command to copy text from a read-only buffer. (If the variable `kill-read-only-ok' is non-nil, then this won't even beep.) (fn &optional ARG)Fnext-logical-line Move cursor vertically down ARG lines. This is identical to `next-line', except that it always moves by logical lines instead of visual lines, ignoring the value of the variable `line-move-visual'. (fn &optional ARG TRY-VSCROLL)Fprevious-logical-line Move cursor vertically up ARG lines. This is identical to `previous-line', except that it always moves by logical lines instead of visual lines, ignoring the value of the variable `line-move-visual'. (fn &optional ARG TRY-VSCROLL)Vvisual-line-mode Non-nil if Visual-Line mode is enabled. Use the command `visual-line-mode' to change this variable.Fvisual-line-mode Toggle visual line based editing (Visual Line mode) in the current buffer. Interactively, with a prefix argument, enable Visual Line mode if the prefix argument is positive, and disable it otherwise. If called from Lisp, toggle the mode if ARG is `toggle', disable the mode if ARG is a non-positive integer, and enable the mode otherwise (including if ARG is omitted or nil or a positive integer). When Visual Line mode is enabled, `word-wrap' is turned on in this buffer, and simple editing commands are redefined to act on visual lines, not logical lines. See Info node `Visual Line Mode' for details. (fn &optional ARG)Fglobal-visual-line-mode Toggle Visual-Line mode in all buffers. With prefix ARG, enable Global Visual-Line mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Visual-Line mode is enabled in all buffers where `turn-on-visual-line-mode' would do it. See `visual-line-mode' for more information on Visual-Line mode. (fn &optional ARG)Ftranspose-chars Interchange characters around point, moving forward one character. With prefix arg ARG, effect is to take character before point and drag it forward past ARG other characters (backward if ARG negative). If no argument and at end of line, the previous two chars are exchanged. (fn ARG)Ftranspose-words Interchange words around point, leaving point at end of them. With prefix arg ARG, effect is to take word before or around point and drag it forward past ARG other words (backward if ARG negative). If ARG is zero, the words around or after point and around or after mark are interchanged. (fn ARG)Ftranspose-sexps Like \[transpose-chars] (`transpose-chars'), but applies to sexps. Unlike `transpose-words', point must be between the two sexps and not in the middle of a sexp to be transposed. With non-zero prefix arg ARG, effect is to take the sexp before point and drag it forward past ARG other sexps (backward if ARG is negative). If ARG is zero, the sexps ending at or after point and at or after mark are interchanged. (fn ARG)Ftranspose-lines Exchange current line and previous line, leaving point after both. With argument ARG, takes previous line and moves it past ARG lines. With argument 0, interchanges line point is in with line mark is in. (fn ARG)Ftranspose-subr Subroutine to do the work of transposing objects. Works for lines, sentences, paragraphs, etc. MOVER is a function that moves forward by units of the given object (e.g. forward-sentence, forward-paragraph). If ARG is zero, exchanges the current object with the one containing mark. If ARG is an integer, moves the current object past ARG following (if ARG is positive) or preceding (if ARG is negative) objects, leaving point after the current object. (fn MOVER ARG &optional SPECIAL)Ftranspose-subr-1 (fn POS1 POS2)Fbackward-word Move backward until encountering the beginning of a word. With argument ARG, do this that many times. If ARG is omitted or nil, move point backward one word. The word boundaries are normally determined by the buffer's syntax table and character script (according to `char-script-table'), but `find-word-boundary-function-table', such as set up by `subword-mode', can change that. If a Lisp program needs to move by words determined strictly by the syntax table, it should use `backward-word-strictly' instead. See Info node `(elisp) Word Motion' for details. (fn &optional ARG)Fmark-word Set mark ARG words away from point. The place mark goes is the same place \[forward-word] would move to with the same argument. Interactively, if this command is repeated or (in Transient Mark mode) if the mark is active, it marks the next ARG words after the ones already marked. (fn &optional ARG ALLOW-EXTEND)Fkill-word Kill characters forward until encountering the end of a word. With argument ARG, do this that many times. (fn ARG)Fbackward-kill-word Kill characters backward until encountering the beginning of a word. With argument ARG, do this that many times. (fn ARG)Fcurrent-word Return the word at or near point, as a string. The return value includes no text properties. If optional arg STRICT is non-nil, return nil unless point is within or adjacent to a word, otherwise look for a word within point's line. If there is no word anywhere on point's line, the value is nil regardless of STRICT. By default, this function treats as a single word any sequence of characters that have either word or symbol syntax. If optional arg REALLY-WORD is non-nil, only characters of word syntax can constitute a word. (fn &optional STRICT REALLY-WORD)Fdo-auto-fill The default value for `normal-auto-fill-function'. This is the default auto-fill function, some major modes use a different one. Returns t if it really did any work.Vcomment-line-break-function Mode-specific function which line breaks and continues a comment. This function is called during auto-filling when a comment syntax is defined. The function should take a single optional argument, which is a flag indicating whether it should use soft newlines.Fdefault-indent-new-line Break line at point and indent. If a comment syntax is defined, call `comment-indent-new-line'. The inserted newline is marked hard if variable `use-hard-newlines' is true, unless optional argument SOFT is non-nil. (fn &optional SOFT)Finternal-auto-fill The function called by `self-insert-command' to perform auto-filling.Vnormal-auto-fill-function The function to use for `auto-fill-function' if Auto Fill mode is turned on. Some major modes set this.Fauto-fill-mode Toggle automatic line breaking (Auto Fill mode). Interactively, with a prefix argument, enable Auto Fill mode if the prefix argument is positive, and disable it otherwise. If called from Lisp, toggle the mode if ARG is `toggle', disable the mode if ARG is a non-positive integer, and enable the mode otherwise (including if ARG is omitted or nil or a positive integer). When Auto Fill mode is enabled, inserting a space at a column beyond `current-fill-column' automatically breaks the line at a previous space. When `auto-fill-mode' is on, the `auto-fill-function' variable is non-nil. The value of `normal-auto-fill-function' specifies the function to use for `auto-fill-function' when turning Auto Fill mode on. (fn &optional ARG)Fauto-fill-function Automatically break line at a previous space, in insertion of text.Fturn-on-auto-fill Unconditionally turn on Auto Fill mode.Fturn-off-auto-fill Unconditionally turn off Auto Fill mode.Fset-fill-column Set `fill-column' to specified argument. Use \[universal-argument] followed by a number to specify a column. Just \[universal-argument] as argument means to use the current column. (fn ARG)Fset-selective-display Set `selective-display' to ARG; clear it if no arg. When the value of `selective-display' is a number > 0, lines whose indentation is >= that value are not displayed. The variable `selective-display' has a separate value for each buffer. (fn ARG)Ftoggle-truncate-lines Toggle truncating of long lines for the current buffer. When truncating is off, long lines are folded. With prefix argument ARG, truncate long lines if ARG is positive, otherwise fold them. Note that in side-by-side windows, this command has no effect if `truncate-partial-width-windows' is non-nil. (fn &optional ARG)Ftoggle-word-wrap Toggle whether to use word-wrapping for continuation lines. With prefix argument ARG, wrap continuation lines at word boundaries if ARG is positive, otherwise wrap them at the right screen edge. This command toggles the value of `word-wrap'. It has no effect if long lines are truncated. (fn &optional ARG)Voverwrite-mode-textual The string displayed in the mode line when in overwrite mode.Voverwrite-mode-binary The string displayed in the mode line when in binary overwrite mode.Foverwrite-mode Toggle Overwrite mode. With a prefix argument ARG, enable Overwrite mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Overwrite mode is enabled, printing characters typed in replace existing text on a one-for-one basis, rather than pushing it to the right. At the end of a line, such characters extend the line. Before a tab, such characters insert until the tab is filled in. \[quoted-insert] still inserts characters in overwrite mode; this is supposed to make it easier to insert characters when necessary. (fn &optional ARG)Fbinary-overwrite-mode Toggle Binary Overwrite mode. With a prefix argument ARG, enable Binary Overwrite mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When Binary Overwrite mode is enabled, printing characters typed in replace existing text. Newlines are not treated specially, so typing at the end of a line joins the line to the next, with the typed character between them. Typing before a tab character simply replaces the tab with the character typed. \[quoted-insert] replaces the text at the cursor, just as ordinary typing characters do. Note that Binary Overwrite mode is not its own minor mode; it is a specialization of overwrite mode, entered by setting the `overwrite-mode' variable to `overwrite-mode-binary'. (fn &optional ARG)Fline-number-mode Toggle line number display in the mode line (Line Number mode). With a prefix argument ARG, enable Line Number mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. Line numbers do not appear for very large buffers and buffers with very long lines; see variables `line-number-display-limit' and `line-number-display-limit-width'. (fn &optional ARG)Fcolumn-number-mode Toggle column number display in the mode line (Column Number mode). With a prefix argument ARG, enable Column Number mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Fsize-indication-mode Toggle buffer size display in the mode line (Size Indication mode). With a prefix argument ARG, enable Size Indication mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Fauto-save-mode Toggle auto-saving in the current buffer (Auto Save mode). With a prefix argument ARG, enable Auto Save mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. (fn &optional ARG)Fblink-matching-check-mismatch Return whether or not START...END are matching parens. END is the current point and START is the blink position. START might be nil if no matching starter was found. Returns non-nil if we find there is a mismatch. (fn START END)Vblink-matching-check-function Function to check parentheses mismatches. The function takes two arguments (START and END) where START is the position just before the opening token and END is the position right after. START can be nil, if it was not found. The function should return non-nil if the two tokens do not match.Vblink-matching--overlay Overlay used to highlight the matching paren.Fblink-matching-open Momentarily highlight the beginning of the sexp before point.Vblink-paren-function Function called, if non-nil, whenever a close parenthesis is inserted. More precisely, a char with closeparen syntax is self-inserted.Fkeyboard-quit Signal a `quit' condition. During execution of Lisp code, this character causes a quit directly. At top-level, as an editor command, this simply beeps.Vbuffer-quit-function Function to call to "quit" the current buffer, or nil if none. \[keyboard-escape-quit] calls this function when its more local actions (such as canceling a prefix argument, minibuffer or region) do not apply.Fkeyboard-escape-quit Exit the current "mode" (in a generalized sense of the word). This command can exit an interactive command such as `query-replace', can clear out a prefix argument or a region, can get out of the minibuffer or other recursive edit, cancel the use of the current buffer (for special-purpose buffers), or go back to just one window (by deleting all but the selected window).Fplay-sound-file Play sound stored in FILE. VOLUME and DEVICE correspond to the keywords of the sound specification for `play-sound'. (fn FILE &optional VOLUME DEVICE)Frfc822-goto-eoh If the buffer starts with a mail header, move point to the header's end. Otherwise, moves to `point-min'. The end of the header is the start of the next line, if there is one, else the end of the last line. This function obeys RFC 822 (or later).Vmail-encode-mml If non-nil, mail-user-agent's `sendfunc' command should mml-encode the outgoing message before sending it.Fcompose-mail Start composing a mail message to send. This uses the user's chosen mail composition package as selected with the variable `mail-user-agent'. The optional arguments TO and SUBJECT specify recipients and the initial Subject field, respectively. OTHER-HEADERS is an alist specifying additional header fields. Elements look like (HEADER . VALUE) where both HEADER and VALUE are strings. CONTINUE, if non-nil, says to continue editing a message already being composed. Interactively, CONTINUE is the prefix argument. SWITCH-FUNCTION, if non-nil, is a function to use to switch to and display the buffer used for mail composition. YANK-ACTION, if non-nil, is an action to perform, if and when necessary, to insert the raw text of the message being replied to. It has the form (FUNCTION . ARGS). The user agent will apply FUNCTION to ARGS, to insert the raw text of the original message. (The user agent will also run `mail-citation-hook', *after* the original text has been inserted in this way.) SEND-ACTIONS is a list of actions to call when the message is sent. Each action has the form (FUNCTION . ARGS). RETURN-ACTION, if non-nil, is an action for returning to the caller. It has the form (FUNCTION . ARGS). The function is called after the mail has been sent or put aside, and the mail buffer buried. (fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-FUNCTION YANK-ACTION SEND-ACTIONS RETURN-ACTION)Fcompose-mail-other-window Like \[compose-mail], but edit the outgoing message in another window. (fn &optional TO SUBJECT OTHER-HEADERS CONTINUE YANK-ACTION SEND-ACTIONS RETURN-ACTION)Fcompose-mail-other-frame Like \[compose-mail], but edit the outgoing message in another frame. (fn &optional TO SUBJECT OTHER-HEADERS CONTINUE YANK-ACTION SEND-ACTIONS RETURN-ACTION)Vset-variable-value-history History of values entered with `set-variable'. Maximum length of the history list is determined by the value of `history-length', which see.Fset-variable Set VARIABLE to VALUE. VALUE is a Lisp object. VARIABLE should be a user option variable name, a Lisp variable meant to be customized by users. You should enter VALUE in Lisp syntax, so if you want VALUE to be a string, you must surround it with doublequotes. VALUE is used literally, not evaluated. If VARIABLE has a `variable-interactive' property, that is used as if it were the arg to `interactive' (which see) to interactively read VALUE. If VARIABLE has been defined with `defcustom', then the type information in the definition is used to check that VALUE is valid. Note that this function is at heart equivalent to the basic `set' function. For a variable defined with `defcustom', it does not pay attention to any :set property that the variable might have (if you want that, use \[customize-set-variable] instead). With a prefix argument, set VARIABLE to VALUE buffer-locally. (fn VARIABLE VALUE &optional MAKE-LOCAL)Vcompletion-list-mode-map Local map for completion list buffers.Vcompletion-reference-buffer Record the buffer that was current when the completion list was requested. This is a local variable in the completion list buffer. Initial value is nil to avoid some compiler warnings.Vcompletion-no-auto-exit Non-nil means `choose-completion-string' should never exit the minibuffer. This also applies to other functions such as `choose-completion'.Vcompletion-base-position Position of the base of the text corresponding to the shown completions. This variable is used in the *Completions* buffers. Its value is a list of the form (START END) where START is the place where the completion should be inserted and END (if non-nil) is the end of the text to replace. If END is nil, point is used instead.Vcompletion-list-insert-choice-function Function to use to insert the text chosen in *Completions*. Called with three arguments (BEG END TEXT), it should replace the text between BEG and END with TEXT. Expected to be set buffer-locally in the *Completions* buffer.Vcompletion-base-size Number of chars before point not involved in completion. This is a local variable in the completion list buffer. It refers to the chars in the minibuffer if completing in the minibuffer, or in `completion-reference-buffer' otherwise. Only characters in the field at point are included. If nil, Emacs determines which part of the tail end of the buffer's text is involved in completion by comparing the text directly.Fdelete-completion-window Delete the completion list window. Go to the window from which completion was requested.Fprevious-completion Move to the previous item in the completion list. (fn N)Fnext-completion Move to the next item in the completion list. With prefix argument N, move N items (negative N means move backward). (fn N)Fchoose-completion Choose the completion at point. If EVENT, use EVENT's position to determine the starting position. (fn &optional EVENT)Fchoose-completion-guess-base-position (fn STRING)Fchoose-completion-delete-max-match (fn STRING)Vchoose-completion-string-functions Functions that may override the normal insertion of a completion choice. These functions are called in order with three arguments: CHOICE - the string to insert in the buffer, BUFFER - the buffer in which the choice should be inserted, BASE-POSITION - where to insert the completion. Functions should also accept and ignore a potential fourth argument, passed for backwards compatibility. If a function in the list returns non-nil, that function is supposed to have inserted the CHOICE in the BUFFER, and possibly exited the minibuffer; no further functions will be called. If all functions in the list return nil, that means to use the default method of inserting the completion in BUFFER.Fchoose-completion-string Switch to BUFFER and insert the completion choice CHOICE. BASE-POSITION says where to insert the completion. INSERT-FUNCTION says how to insert the completion and falls back on `completion-list-insert-choice-function' when nil. (fn CHOICE &optional BUFFER BASE-POSITION INSERT-FUNCTION)Fcompletion-list-mode Major mode for buffers showing lists of possible completions. Type \<completion-list-mode-map>\[choose-completion] in the completion list to select the completion near point. Or click to select one with the mouse. \{completion-list-mode-map} This mode runs the hook `completion-list-mode-hook', as the final or penultimate step during initialization.Fcompletion-list-mode-finish Finish setup of the completions buffer. Called from `temp-buffer-show-hook'.Fswitch-to-completions Select the completion list window.Fevent-apply-alt-modifier \<function-key-map>Add the Alt modifier to the following event. For example, type \[event-apply-alt-modifier] & to enter Alt-&. (fn IGNORE-PROMPT)Fevent-apply-super-modifier \<function-key-map>Add the Super modifier to the following event. For example, type \[event-apply-super-modifier] & to enter Super-&. (fn IGNORE-PROMPT)Fevent-apply-hyper-modifier \<function-key-map>Add the Hyper modifier to the following event. For example, type \[event-apply-hyper-modifier] & to enter Hyper-&. (fn IGNORE-PROMPT)Fevent-apply-shift-modifier \<function-key-map>Add the Shift modifier to the following event. For example, type \[event-apply-shift-modifier] & to enter Shift-&. (fn IGNORE-PROMPT)Fevent-apply-control-modifier \<function-key-map>Add the Ctrl modifier to the following event. For example, type \[event-apply-control-modifier] & to enter Ctrl-&. (fn IGNORE-PROMPT)Fevent-apply-meta-modifier \<function-key-map>Add the Meta modifier to the following event. For example, type \[event-apply-meta-modifier] & to enter Meta-&. (fn IGNORE-PROMPT)Fevent-apply-modifier Apply a modifier flag to event EVENT. SYMBOL is the name of this modifier, as a symbol. LSHIFTBY is the numeric value of this modifier, in keyboard events. PREFIX is the string that represents this modifier in an event type symbol. (fn EVENT SYMBOL LSHIFTBY PREFIX)Vclone-buffer-hook Normal hook to run in the new buffer at the end of `clone-buffer'.Vclone-indirect-buffer-hook Normal hook to run in the new buffer at the end of `clone-indirect-buffer'.Fclone-process Create a twin copy of PROCESS. If NEWNAME is nil, it defaults to PROCESS' name; NEWNAME is modified by adding or incrementing <N> at the end as necessary. If PROCESS is associated with a buffer, the new process will be associated with the current buffer instead. Returns nil if PROCESS has already terminated. (fn PROCESS &optional NEWNAME)Fclone-buffer Create and return a twin copy of the current buffer. Unlike an indirect buffer, the new buffer can be edited independently of the old one (if it is not read-only). NEWNAME is the name of the new buffer. It may be modified by adding or incrementing <N> at the end as necessary to create a unique buffer name. If nil, it defaults to the name of the current buffer, with the proper suffix. If DISPLAY-FLAG is non-nil, the new buffer is shown with `pop-to-buffer'. Trying to clone a file-visiting buffer, or a buffer whose major mode symbol has a non-nil `no-clone' property, results in an error. Interactively, DISPLAY-FLAG is t and NEWNAME is the name of the current buffer with appropriate suffix. However, if a prefix argument is given, then the command prompts for NEWNAME in the minibuffer. This runs the normal hook `clone-buffer-hook' in the new buffer after it has been set up properly in other respects. (fn &optional NEWNAME DISPLAY-FLAG)Fclone-indirect-buffer Create an indirect buffer that is a twin copy of the current buffer. Give the indirect buffer name NEWNAME. Interactively, read NEWNAME from the minibuffer when invoked with a prefix arg. If NEWNAME is nil or if not called with a prefix arg, NEWNAME defaults to the current buffer's name. The name is modified by adding a `<N>' suffix to it or by incrementing the N in an existing suffix. Trying to clone a buffer whose major mode symbol has a non-nil `no-clone-indirect' property results in an error. DISPLAY-FLAG non-nil means show the new buffer with `pop-to-buffer'. This is always done when called interactively. Optional third arg NORECORD non-nil means do not put this buffer at the front of the list of recently selected ones. Returns the newly created indirect buffer. (fn NEWNAME DISPLAY-FLAG &optional NORECORD)Fclone-indirect-buffer-other-window Like `clone-indirect-buffer' but display in another window. (fn NEWNAME DISPLAY-FLAG &optional NORECORD)Fnormal-erase-is-backspace-setup-frame Set up `normal-erase-is-backspace-mode' on FRAME, if necessary. (fn &optional FRAME)Fnormal-erase-is-backspace-mode Toggle the Erase and Delete mode of the Backspace and Delete keys. With a prefix argument ARG, enable this feature if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. On window systems, when this mode is on, Delete is mapped to C-d and Backspace is mapped to DEL; when this mode is off, both Delete and Backspace are mapped to DEL. (The remapping goes via `local-function-key-map', so binding Delete or Backspace in the global or local keymap will override that.) In addition, on window systems, the bindings of C-Delete, M-Delete, C-M-Delete, C-Backspace, M-Backspace, and C-M-Backspace are changed in the global keymap in accordance with the functionality of Delete and Backspace. For example, if Delete is remapped to C-d, which deletes forward, C-Delete is bound to `kill-word', but if Delete is remapped to DEL, which deletes backward, C-Delete is bound to `backward-kill-word'. If not running on a window system, a similar effect is accomplished by remapping C-h (normally produced by the Backspace key) and DEL via `keyboard-translate': if this mode is on, C-h is mapped to DEL and DEL to C-d; if it's off, the keys are not remapped. When not running on a window system, and this mode is turned on, the former functionality of C-h is available on the F1 key. You should probably not turn on this mode on a text-only terminal if you don't have both Backspace, Delete and F1 keys. See also `normal-erase-is-backspace'. (fn &optional ARG)Vvis-mode-saved-buffer-invisibility-spec Saved value of `buffer-invisibility-spec' when Visible mode is on.Fread-only-mode Change whether the current buffer is read-only. With prefix argument ARG, make the buffer read-only if ARG is positive, otherwise make it writable. If buffer is read-only and `view-read-only' is non-nil, enter view mode. Do not call this from a Lisp program unless you really intend to do the same thing as the \[read-only-mode] command, including possibly enabling or disabling View mode. Also, note that this command works by setting the variable `buffer-read-only', which does not affect read-only regions caused by text properties. To ignore read-only status in a Lisp program (whether due to text properties or buffer state), bind `inhibit-read-only' temporarily to a non-nil value. (fn &optional ARG)Vvisible-mode Non-nil if Visible mode is enabled. Use the command `visible-mode' to change this variable.Fvisible-mode Toggle making all invisible text temporarily visible (Visible mode). With a prefix argument ARG, enable Visible mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. This mode works by saving the value of `buffer-invisibility-spec' and setting it to nil. (fn &optional ARG)Fmessages-buffer-mode Major mode used in the "*Messages*" buffer. In addition to any hooks its parent mode `special-mode' might have run, this mode runs the hook `messages-buffer-mode-hook', as the final or penultimate step during initialization. \{messages-buffer-mode-map}Fmessages-buffer Return the "*Messages*" buffer. If it does not exist, create and it switch it to `messages-buffer-mode'.Vbad-packages-alist Alist of packages known to cause problems in this version of Emacs. Each element has the form (PACKAGE SYMBOL REGEXP STRING). PACKAGE is either a regular expression to match file names, or a symbol (a feature name), like for `with-eval-after-load'. SYMBOL is either the name of a string variable, or t. Upon loading PACKAGE, if SYMBOL is t or matches REGEXP, display a warning using STRING as the message.Fbad-package-check Run a check using the element from `bad-packages-alist' matching PACKAGE. (fn PACKAGE)Fdefine-alternatives Define the new command `COMMAND'. The argument `COMMAND' should be a symbol. Running `M-x COMMAND RET' for the first time prompts for which alternative to use and records the selected command as a custom variable. Running `C-u M-x COMMAND RET' prompts again for an alternative and overwrites the previous choice. The variable `COMMAND-alternatives' contains an alist with alternative implementations of COMMAND. `define-alternatives' does not have any effect until this variable is set. CUSTOMIZATIONS, if non-nil, should be composed of alternating `defcustom' keywords and values to add to the declaration of `COMMAND-alternatives' (typically :group and :version). (fn COMMAND &rest CUSTOMIZATIONS)Fupcase-dwim Upcase words in the region, if active; if not, upcase word at point. If the region is active, this function calls `upcase-region'. Otherwise, it calls `upcase-word', with prefix argument passed to it to upcase ARG words. (fn ARG)Fdowncase-dwim Downcase words in the region, if active; if not, downcase word at point. If the region is active, this function calls `downcase-region'. Otherwise, it calls `downcase-word', with prefix argument passed to it to downcase ARG words. (fn ARG)Fcapitalize-dwim Capitalize words in the region, if active; if not, capitalize word at point. If the region is active, this function calls `capitalize-region'. Otherwise, it calls `capitalize-word', with prefix argument passed to it to capitalize ARG words. (fn ARG)Sstartup.elc Vcommand-line-processed Non-nil once command line has been processed.Vcommand-switch-alist Alist of command-line switches. Elements look like (SWITCH-STRING . HANDLER-FUNCTION). HANDLER-FUNCTION receives the switch string as its sole argument; the remaining command-line args are in the variable `command-line-args-left'.Vcommand-line-args-left List of command-line args not yet processed.Vargi Current command-line argument.Vcommand-line-functions List of functions to process unrecognized command-line arguments. Each function should access the dynamically bound variables `argi' (the current argument) and `command-line-args-left' (the remaining arguments). The function should return non-nil only if it recognizes and processes `argi'. If it does so, it may consume successive arguments by altering `command-line-args-left' to remove them.Vcommand-line-default-directory Default directory to use for command line arguments. This is normally copied from `default-directory' when Emacs starts.Vcommand-line-x-option-alist Alist of X Windows options. Each element has the form (NAME NUMARGS HANDLER FRAME-PARAM VALUE) where NAME is the option name string, NUMARGS is the number of arguments that the option accepts, HANDLER is a function to call to handle the option. FRAME-PARAM (optional) is the frame parameter this option specifies, and VALUE is the value which is given to that frame parameter (most options use the argument for this, so VALUE is not present).Vcommand-line-ns-option-alist Alist of NS options. Each element has the form (NAME NUMARGS HANDLER FRAME-PARAM VALUE) where NAME is the option name string, NUMARGS is the number of arguments that the option accepts, HANDLER is a function to call to handle the option. FRAME-PARAM (optional) is the frame parameter this option specifies, and VALUE is the value which is given to that frame parameter (most options use the argument for this, so VALUE is not present).Vbefore-init-hook Normal hook run after handling urgent options but before loading init files.Vafter-init-hook Normal hook run after initializing the Emacs session. It is run after Emacs loads the init file, `default' library, the abbrevs file, and additional Lisp packages (if any), and setting the value of `after-init-time'. There is no `condition-case' around the running of this hook; therefore, if `debug-on-error' is non-nil, an error in one of these functions will invoke the debugger.Vemacs-startup-hook Normal hook run after loading init files and handling the command line.Vterm-setup-hook Normal hook run immediately after `emacs-startup-hook'. In new code, there is no reason to use this instead of `emacs-startup-hook'. If you want to execute terminal-specific Lisp code, for example to override the definitions made by the terminal-specific file, see `tty-setup-hook'.Vinhibit-startup-hooks Non-nil means don't run some startup hooks, because we already did. Currently this applies to: `emacs-startup-hook', `term-setup-hook', and `window-setup-hook'.Vkeyboard-type The brand of keyboard you are using. This variable is used to define the proper function and keypad keys for use under X. It is used in a fashion analogous to the environment variable TERM.Vwindow-setup-hook Normal hook run after loading init files and handling the command line. This is very similar to `emacs-startup-hook'. The only difference is that this hook runs after frame parameters have been set up in response to any settings from your init file. Unless this matters to you, use `emacs-startup-hook' instead. (The name of this hook is due to historical reasons, and does not reflect its purpose very well.)Vinit-file-user Identity of user whose init file is or was read. The value is nil if `-q' or `--no-init-file' was specified, meaning do not load any init file. Otherwise, the value may be an empty string, meaning use the init file for the user who originally logged in, or it may be a string containing a user's name meaning use that person's init file. In either of the latter cases, `(concat "~" init-file-user "/")' evaluates to the name of the directory where the init file was looked for. Setting `init-file-user' does not prevent Emacs from loading `site-start.el'. The only way to do that is to use `--no-site-file'.Vinit-file-had-error Non-nil if there was an error loading the user's init file.Vpure-space-overflow Non-nil if building Emacs overflowed pure space.Vdebian-emacs-flavor A symbol representing the particular debian flavor of emacs running. Something like 'emacs, 'xemacs21, etc.Fnormal-top-level-add-subdirs-to-load-path Recursively add all subdirectories of `default-directory' to `load-path'. More precisely, this uses only the subdirectories whose names start with letters or digits; it excludes any subdirectory named `RCS' or `CVS', and any subdirectory that contains a file named `.nosearch'.Fnormal-top-level-add-to-load-path This function is called from a subdirs.el file. It assumes that `default-directory' is the directory in which the subdirs.el file exists, and it adds to `load-path' the subdirs of that directory as specified in DIRS. Normally the elements of DIRS are relative. (fn DIRS)Fnormal-top-level Emacs calls this function when it first starts up. It sets `command-line-processed', processes the command-line, reads the initialization files, etc. It is the default value of the variable `top-level'.Vtool-bar-images-pixel-height Height in pixels of images in the tool-bar.Ftty-handle-args Handle the X-like command-line arguments "-fg", "-bg", "-name", etc. (fn ARGS)Fstartup--setup-quote-display If needed, display ASCII approximations to curved quotes. Do this by modifying `standard-display-table'. Optional STYLE specifies the desired quoting style, as in `text-quoting-style'. If STYLE is nil, display appropriately for the terminal. (fn &optional STYLE)Fcommand-line A subroutine of `normal-top-level'. Amongst another things, it parses the command-line arguments.Fx-apply-session-resources Apply X resources which specify initial values for Emacs variables. This is called from a window-system initialization function, such as `x-initialize-window-system' for X, either at startup (prior to reading the init file), or afterwards when the user first opens a graphical frame. This can set the values of `menu-bar-mode', `tool-bar-mode', and `no-blinking-cursor', as well as the `cursor' face. Changed settings will be marked as "CHANGED outside of Customize".Vfancy-startup-text A list of texts to show in the middle part of splash screens. Each element in the list should be a list of strings or pairs `:face FACE', like `fancy-splash-insert' accepts them.Vfancy-about-text A list of texts to show in the middle part of the About screen. Each element in the list should be a list of strings or pairs `:face FACE', like `fancy-splash-insert' accepts them.Vsplash-screen-keymap Keymap for splash screen buffer.Ffancy-splash-insert Insert text into the current buffer, with faces. Arguments from ARGS should be either strings; functions called with no args that return a string; pairs `:face FACE', where FACE is a face specification usable with `put-text-property'; or pairs `:link LINK' where LINK is a list of arguments to pass to `insert-button', of the form (LABEL ACTION [HELP-ECHO]), which specifies the button's label, `action' property and help-echo string. FACE and LINK can also be functions, which are evaluated to obtain a face or button specification. (fn &rest ARGS)Ffancy-splash-head Insert the head part of the splash screen into the current buffer.Ffancy-startup-tail Insert the tail part of the splash screen into the current buffer. (fn &optional CONCISE)Fexit-splash-screen Stop displaying the splash screen buffer.Ffancy-startup-screen Display fancy startup screen. If CONCISE is non-nil, display a concise version of the splash screen in another window. (fn &optional CONCISE)Ffancy-about-screen Display fancy About screen.Ffancy-splash-frame Return the frame to use for the fancy splash screen. Returning non-nil does not mean we should necessarily use the fancy splash screen, but if we do use it, we put it on this frame.Fuse-fancy-splash-screens-p Return t if fancy splash screens should be used.Fnormal-splash-screen Display non-graphic splash screen. If optional argument STARTUP is non-nil, display the startup screen after Emacs starts. If STARTUP is nil, display the About screen. If CONCISE is non-nil, display a concise version of the splash screen in another window. (fn &optional STARTUP CONCISE)Fnormal-no-mouse-startup-screen Show a splash screen suitable for displays without mouse support.Fdisplay-startup-screen Display startup screen according to display. A fancy display is used on graphic displays, normal otherwise. If CONCISE is non-nil, display a concise version of the startup screen. (fn &optional CONCISE)Fdisplay-about-screen Display the *About GNU Emacs* buffer. A fancy display is used on graphic displays, normal otherwise.Fcommand-line-1 A subroutine of `command-line'. (fn ARGS-LEFT)Fcommand-line-normalize-file-name Collapse multiple slashes to one, to handle non-Emacs file names. (fn FILE)Ssubr.elc Fdeclare-function Tell the byte-compiler that function FN is defined, in FILE. The FILE argument is not used by the byte-compiler, but by the `check-declare' package, which checks that FILE contains a definition for FN. FILE can be either a Lisp file (in which case the ".el" extension is optional), or a C file. C files are expanded relative to the Emacs "src/" directory. Lisp files are searched for using `locate-library', and if that fails they are expanded relative to the location of the file containing the declaration. A FILE with an "ext:" prefix is an external file. `check-declare' will check such files if they are found, and skip them without error if they are not. Optional ARGLIST specifies FN's arguments, or is t to not specify FN's arguments. An omitted ARGLIST defaults to t, not nil: a nil ARGLIST specifies an empty argument list, and an explicit t ARGLIST is a placeholder that allows supplying a later arg. Optional FILEONLY non-nil means that `check-declare' will check only that FILE exists, not that it defines FN. This is intended for function definitions that `check-declare' does not recognize, e.g., `defstruct'. Note that for the purposes of `check-declare', this statement must be the first non-whitespace on a line. For more information, see Info node `(elisp)Declaring Functions'. (fn FN FILE &rest ARGS)Fnoreturn Evaluate FORM, expecting it not to return. If FORM does return, signal an error. (fn FORM)F1value Evaluate FORM, expecting a constant return value. This is the global do-nothing version. There is also `testcover-1value' that complains if FORM ever does return differing values. (fn FORM)Fdef-edebug-spec Set the `edebug-form-spec' property of SYMBOL according to SPEC. Both SYMBOL and SPEC are unevaluated. The SPEC can be: 0 (instrument no arguments); t (instrument all arguments); a symbol (naming a function with an Edebug specification); or a list. The elements of the list describe the argument types; see Info node `(elisp)Specification List' for details. (fn SYMBOL SPEC)Flambda Return an anonymous function. Under dynamic binding, a call of the form (lambda ARGS DOCSTRING INTERACTIVE BODY) is self-quoting; the result of evaluating the lambda expression is the expression itself. Under lexical binding, the result is a closure. Regardless, the result is a function, i.e., it may be stored as the function value of a symbol, passed to `funcall' or `mapcar', etc. ARGS should take the same form as an argument list for a `defun'. DOCSTRING is an optional documentation string. If present, it should describe how to call the function. But documentation strings are usually not useful in nameless functions. INTERACTIVE should be a call to the function `interactive', which see. It may also be omitted. BODY should be a list of Lisp expressions. (fn ARGS [DOCSTRING] [INTERACTIVE] BODY)Fsetq-local Set variable VAR to value VAL in current buffer. (fn VAR VAL)Fdefvar-local Define VAR as a buffer-local variable with default value VAL. Like `defvar' but additionally marks the variable as being automatically buffer-local wherever it is set. (fn VAR VAL &optional DOCSTRING)Fpush Add NEWELT to the list stored in the generalized variable PLACE. This is morally equivalent to (setf PLACE (cons NEWELT PLACE)), except that PLACE is only evaluated once (after NEWELT). (fn NEWELT PLACE)Fpop Return the first element of PLACE's value, and remove it from the list. PLACE must be a generalized variable whose value is a list. If the value is nil, `pop' returns nil but does not actually change the list. (fn PLACE)Fwhen If COND yields non-nil, do BODY, else return nil. When COND yields non-nil, eval BODY forms sequentially and return value of last one, or nil if there are none. (fn COND BODY...)Funless If COND yields nil, do BODY, else return nil. When COND yields nil, eval BODY forms sequentially and return value of last one, or nil if there are none. (fn COND BODY...)Fdolist Loop over a list. Evaluate BODY with VAR bound to each car from LIST, in turn. Then evaluate RESULT to get return value, default nil. (fn (VAR LIST [RESULT]) BODY...)Fdotimes Loop a certain number of times. Evaluate BODY with VAR bound to successive integers running from 0, inclusive, to COUNT, exclusive. Then evaluate RESULT to get the return value (nil if RESULT is omitted). (fn (VAR COUNT [RESULT]) BODY...)Fdeclare Do not evaluate any arguments, and return nil. If a `declare' form appears as the first form in the body of a `defun' or `defmacro' form, SPECS specifies various additional information about the function or macro; these go into effect during the evaluation of the `defun' or `defmacro' form. The possible values of SPECS are specified by `defun-declarations-alist' and `macro-declarations-alist'. For more information, see info node `(elisp)Declare Form'. (fn &rest SPECS)Fignore-errors Execute BODY; if an error occurs, return nil. Otherwise, return result of last form in BODY. See also `with-demoted-errors' that does something similar without silencing all errors. (fn &rest BODY)Vgensym-counter Number used to construct the name of the next symbol created by `gensym'.Fgensym Return a new uninterned symbol. The name is made by appending `gensym-counter' to PREFIX. PREFIX is a string, and defaults to "g". (fn &optional PREFIX)Fignore Do nothing and return nil. This function accepts any number of arguments, but ignores them. (fn &rest IGNORE)Ferror Signal an error, making a message by passing args to `format-message'. In Emacs, the convention is that error messages start with a capital letter but *do not* end with a period. Please follow this convention for the sake of consistency. Note: (error "%s" VALUE) makes the message VALUE without interpreting format characters like `%', `\=`', and `\=''. (fn &rest ARGS)Fuser-error Signal a pilot error, making a message by passing args to `format-message'. In Emacs, the convention is that error messages start with a capital letter but *do not* end with a period. Please follow this convention for the sake of consistency. This is just like `error' except that `user-error's are expected to be the result of an incorrect manipulation on the part of the user, rather than the result of an actual problem. Note: (user-error "%s" VALUE) makes the message VALUE without interpreting format characters like `%', `\=`', and `\=''. (fn FORMAT &rest ARGS)Fdefine-error Define NAME as a new error signal. MESSAGE is a string that will be output to the echo area if such an error is signaled without being caught by a `condition-case'. PARENT is either a signal or a list of signals from which it inherits. Defaults to `error'. (fn NAME MESSAGE &optional PARENT)Fframe-configuration-p Return non-nil if OBJECT seems to be a frame configuration. Any list whose car is `frame-configuration' is assumed to be a frame configuration. (fn OBJECT)Fapply-partially Return a function that is a partial application of FUN to ARGS. ARGS is a list of the first N arguments to pass to FUN. The result is a new function which does the same as FUN, except that the first N arguments are fixed at the values with which this function was called. (fn FUN &rest ARGS)Finternal--compiler-macro-cXXr (fn FORM X)Fcaar Return the car of the car of X. (fn X)Fcadr Return the car of the cdr of X. (fn X)Fcdar Return the cdr of the car of X. (fn X)Fcddr Return the cdr of the cdr of X. (fn X)Fcaaar Return the `car' of the `car' of the `car' of X. (fn X)Fcaadr Return the `car' of the `car' of the `cdr' of X. (fn X)Fcadar Return the `car' of the `cdr' of the `car' of X. (fn X)Fcaddr Return the `car' of the `cdr' of the `cdr' of X. (fn X)Fcdaar Return the `cdr' of the `car' of the `car' of X. (fn X)Fcdadr Return the `cdr' of the `car' of the `cdr' of X. (fn X)Fcddar Return the `cdr' of the `cdr' of the `car' of X. (fn X)Fcdddr Return the `cdr' of the `cdr' of the `cdr' of X. (fn X)Fcaaaar Return the `car' of the `car' of the `car' of the `car' of X. (fn X)Fcaaadr Return the `car' of the `car' of the `car' of the `cdr' of X. (fn X)Fcaadar Return the `car' of the `car' of the `cdr' of the `car' of X. (fn X)Fcaaddr Return the `car' of the `car' of the `cdr' of the `cdr' of X. (fn X)Fcadaar Return the `car' of the `cdr' of the `car' of the `car' of X. (fn X)Fcadadr Return the `car' of the `cdr' of the `car' of the `cdr' of X. (fn X)Fcaddar Return the `car' of the `cdr' of the `cdr' of the `car' of X. (fn X)Fcadddr Return the `car' of the `cdr' of the `cdr' of the `cdr' of X. (fn X)Fcdaaar Return the `cdr' of the `car' of the `car' of the `car' of X. (fn X)Fcdaadr Return the `cdr' of the `car' of the `car' of the `cdr' of X. (fn X)Fcdadar Return the `cdr' of the `car' of the `cdr' of the `car' of X. (fn X)Fcdaddr Return the `cdr' of the `car' of the `cdr' of the `cdr' of X. (fn X)Fcddaar Return the `cdr' of the `cdr' of the `car' of the `car' of X. (fn X)Fcddadr Return the `cdr' of the `cdr' of the `car' of the `cdr' of X. (fn X)Fcdddar Return the `cdr' of the `cdr' of the `cdr' of the `car' of X. (fn X)Fcddddr Return the `cdr' of the `cdr' of the `cdr' of the `cdr' of X. (fn X)Flast Return the last link of LIST. Its car is the last element. If LIST is nil, return nil. If N is non-nil, return the Nth-to-last link of LIST. If N is bigger than the length of LIST, return LIST. (fn LIST &optional N)Fbutlast Return a copy of LIST with the last N elements removed. If N is omitted or nil, the last element is removed from the copy. (fn LIST &optional N)Fnbutlast Modifies LIST to remove the last N elements. If N is omitted or nil, remove the last element. (fn LIST &optional N)Fzerop Return t if NUMBER is zero. (fn NUMBER)Fzerop--anon-cmacro (fn _ NUMBER)Fdelete-dups Destructively remove `equal' duplicates from LIST. Store the result in LIST and return it. LIST must be a proper list. Of several `equal' occurrences of an element in LIST, the first one is kept. (fn LIST)Fdelete-consecutive-dups Destructively remove `equal' consecutive duplicates from LIST. First and last elements are considered consecutive if CIRCULAR is non-nil. (fn LIST &optional CIRCULAR)Fnumber-sequence Return a sequence of numbers from FROM to TO (both inclusive) as a list. INC is the increment used between numbers in the sequence and defaults to 1. So, the Nth element of the list is (+ FROM (* N INC)) where N counts from zero. TO is only included if there is an N for which TO = FROM + N * INC. If TO is nil or numerically equal to FROM, return (FROM). If INC is positive and TO is less than FROM, or INC is negative and TO is larger than FROM, return nil. If INC is zero and TO is neither nil nor numerically equal to FROM, signal an error. This function is primarily designed for integer arguments. Nevertheless, FROM, TO and INC can be integer or float. However, floating point arithmetic is inexact. For instance, depending on the machine, it may quite well happen that (number-sequence 0.4 0.6 0.2) returns the one element list (0.4), whereas (number-sequence 0.4 0.8 0.2) returns a list with three elements. Thus, if some of the arguments are floats and one wants to make sure that TO is included, one may have to explicitly write TO as (+ FROM (* N INC)) or use a variable whose value was computed with this exact expression. Alternatively, you can, of course, also replace TO with a slightly larger value (or a slightly more negative value if INC is negative). (fn FROM &optional TO INC)Fcopy-tree Make a copy of TREE. If TREE is a cons cell, this recursively copies both its car and its cdr. Contrast to `copy-sequence', which copies only along the cdrs. With second argument VECP, this copies vectors as well as conses. (fn TREE &optional VECP)Fassoc-default Find object KEY in a pseudo-alist ALIST. ALIST is a list of conses or objects. Each element (or the element's car, if it is a cons) is compared with KEY by calling TEST, with two arguments: (i) the element or its car, and (ii) KEY. If that is non-nil, the element matches; then `assoc-default' returns the element's cdr, if it is a cons, or DEFAULT if the element is not a cons. If no element matches, the value is nil. If TEST is omitted or nil, `equal' is used. (fn KEY ALIST &optional TEST DEFAULT)Fassoc-ignore-case Like `assoc', but ignores differences in case and text representation. KEY must be a string. Upper-case and lower-case letters are treated as equal. Unibyte strings are converted to multibyte for comparison. (fn KEY ALIST)Fassoc-ignore-representation Like `assoc', but ignores differences in text representation. KEY must be a string. Unibyte strings are converted to multibyte for comparison. (fn KEY ALIST)Fmember-ignore-case Like `member', but ignore differences in case and text representation. ELT must be a string. Upper-case and lower-case letters are treated as equal. Unibyte strings are converted to multibyte for comparison. Non-strings in LIST are ignored. (fn ELT LIST)Fassoc-delete-all Delete from ALIST all elements whose car is `equal' to KEY. Return the modified alist. Elements of ALIST that are not conses are ignored. (fn KEY ALIST)Fassq-delete-all Delete from ALIST all elements whose car is `eq' to KEY. Return the modified alist. Elements of ALIST that are not conses are ignored. (fn KEY ALIST)Frassq-delete-all Delete from ALIST all elements whose cdr is `eq' to VALUE. Return the modified alist. Elements of ALIST that are not conses are ignored. (fn VALUE ALIST)Falist-get Find the first element of ALIST whose `car' equals KEY and return its `cdr'. If KEY is not found in ALIST, return DEFAULT. Equality with KEY is tested by TESTFN, defaulting to `eq'. This is a generalized variable suitable for use with `setf'. When using it to set a value, optional argument REMOVE non-nil means to remove KEY from ALIST if the new value is `eql' to DEFAULT. (fn KEY ALIST &optional DEFAULT REMOVE TESTFN)Fremove Return a copy of SEQ with all occurrences of ELT removed. SEQ must be a list, vector, or string. The comparison is done with `equal'. (fn ELT SEQ)Fremq Return LIST with all occurrences of ELT removed. The comparison is done with `eq'. Contrary to `delq', this does not use side-effects, and the argument LIST is not modified. (fn ELT LIST)Fkbd Convert KEYS to the internal Emacs key representation. KEYS should be a string in the format returned by commands such as `C-h k' (`describe-key'). This is the same format used for saving keyboard macros (see `edmacro-mode'). For an approximate inverse of this, see `key-description'. (fn KEYS)Fundefined Beep to tell the user this binding is undefined.Fsuppress-keymap Make MAP override all normally self-inserting keys to be undefined. Normally, as an exception, digits and minus-sign are set to make prefix args, but optional second arg NODIGITS non-nil treats them like other chars. (fn MAP &optional NODIGITS)Fmake-composed-keymap Construct a new keymap composed of MAPS and inheriting from PARENT. When looking up a key in the returned map, the key is looked in each keymap of MAPS in turn until a binding is found. If no binding is found in MAPS, the lookup continues in PARENT, if non-nil. As always with keymap inheritance, a nil binding in MAPS overrides any corresponding binding in PARENT, but it does not override corresponding bindings in other keymaps of MAPS. MAPS can be a list of keymaps or a single keymap. PARENT if non-nil should be a keymap. (fn MAPS &optional PARENT)Fdefine-key-after Add binding in KEYMAP for KEY => DEFINITION, right after AFTER's binding. This is like `define-key' except that the binding for KEY is placed just after the binding for the event AFTER, instead of at the beginning of the map. Note that AFTER must be an event type (like KEY), NOT a command (like DEFINITION). If AFTER is t or omitted, the new binding goes at the end of the keymap. AFTER should be a single event type--a symbol or a character, not a sequence. Bindings are always added before any inherited map. The order of bindings in a keymap only matters when it is used as a menu, so this function is not useful for non-menu keymaps. (fn KEYMAP KEY DEFINITION &optional AFTER)Fmap-keymap-sorted Implement `map-keymap' with sorting. Don't call this function; it is for internal use only. (fn FUNCTION KEYMAP)Fkeymap--menu-item-binding Return the binding part of a menu-item. (fn VAL)Fkeymap--menu-item-with-binding Build a menu-item like ITEM but with its binding changed to BINDING. (fn ITEM BINDING)Fkeymap--merge-bindings Merge bindings VAL1 and VAL2. (fn VAL1 VAL2)Fkeymap-canonicalize Return a simpler equivalent keymap. This resolves inheritance and redefinitions. The returned keymap should behave identically to a copy of KEYMAP w.r.t `lookup-key' and use in active keymaps and menus. Subkeymaps may be modified but are not canonicalized. (fn MAP)Fkeyboard-translate Translate character FROM to TO on the current terminal. This function creates a `keyboard-translate-table' if necessary and then modifies one entry in it. (fn FROM TO)Fglobal-set-key Give KEY a global binding as COMMAND. COMMAND is the command definition to use; usually it is a symbol naming an interactively-callable function. KEY is a key sequence; noninteractively, it is a string or vector of characters or event types, and non-ASCII characters with codes above 127 (such as ISO Latin-1) can be included if you use a vector. Note that if KEY has a local binding in the current buffer, that local binding will continue to shadow any global binding that you make with this function. (fn KEY COMMAND)Flocal-set-key Give KEY a local binding as COMMAND. COMMAND is the command definition to use; usually it is a symbol naming an interactively-callable function. KEY is a key sequence; noninteractively, it is a string or vector of characters or event types, and non-ASCII characters with codes above 127 (such as ISO Latin-1) can be included if you use a vector. The binding goes in the current buffer's local map, which in most cases is shared with all other buffers in the same major mode. (fn KEY COMMAND)Fglobal-unset-key Remove global binding of KEY. KEY is a string or vector representing a sequence of keystrokes. (fn KEY)Flocal-unset-key Remove local binding of KEY. KEY is a string or vector representing a sequence of keystrokes. (fn KEY)Vkey-substitution-in-progress Used internally by `substitute-key-definition'.Fsubstitute-key-definition Replace OLDDEF with NEWDEF for any keys in KEYMAP now defined as OLDDEF. In other words, OLDDEF is replaced with NEWDEF wherever it appears. Alternatively, if optional fourth argument OLDMAP is specified, we redefine in KEYMAP as NEWDEF those keys which are defined as OLDDEF in OLDMAP. If you don't specify OLDMAP, you can usually get the same results in a cleaner way with command remapping, like this: (define-key KEYMAP [remap OLDDEF] NEWDEF) (fn OLDDEF NEWDEF KEYMAP &optional OLDMAP)Fsubstitute-key-definition-key (fn DEFN OLDDEF NEWDEF PREFIX KEYMAP)Vglobal-map Default global keymap mapping Emacs keyboard input into commands. The value is a keymap which is usually (but not necessarily) Emacs's global map.Vesc-map Default keymap for ESC (meta) commands. The normal global definition of the character ESC indirects to this keymap.Vctl-x-map Default keymap for C-x commands. The normal global definition of the character C-x indirects to this keymap.Vctl-x-4-map Keymap for subcommands of C-x 4.Vctl-x-5-map Keymap for frame commands.Flistify-key-sequence Convert a key sequence to a list of events. (fn KEY)Feventp True if the argument is an event object. (fn OBJ)Fevent-modifiers Return a list of symbols representing the modifier keys in event EVENT. The elements of the list may include `meta', `control', `shift', `hyper', `super', `alt', `click', `double', `triple', `drag', and `down'. EVENT may be an event or an event type. If EVENT is a symbol that has never been used in an event that has been read as input in the current Emacs session, then this function may fail to include the `click' modifier. (fn EVENT)Fevent-basic-type Return the basic type of the given event (all modifiers removed). The value is a printing character (not upper case) or a symbol. EVENT may be an event or an event type. If EVENT is a symbol that has never been used in an event that has been read as input in the current Emacs session, then this function may return nil. (fn EVENT)Fmouse-movement-p Return non-nil if OBJECT is a mouse movement event. (fn OBJECT)Fmouse-event-p Return non-nil if OBJECT is a mouse click event. (fn OBJECT)Fevent-start Return the starting position of EVENT. EVENT should be a mouse click, drag, or key press event. If EVENT is nil, the value of `posn-at-point' is used instead. The following accessor functions are used to access the elements of the position: `posn-window': The window the event is in. `posn-area': A symbol identifying the area the event occurred in, or nil if the event occurred in the text area. `posn-point': The buffer position of the event. `posn-x-y': The pixel-based coordinates of the event. `posn-col-row': The estimated column and row corresponding to the position of the event. `posn-actual-col-row': The actual column and row corresponding to the position of the event. `posn-string': The string object of the event, which is either nil or (STRING . POSITION)'. `posn-image': The image object of the event, if any. `posn-object': The image or string object of the event, if any. `posn-timestamp': The time the event occurred, in milliseconds. For more information, see Info node `(elisp)Click Events'. (fn EVENT)Fevent-end Return the ending position of EVENT. EVENT should be a click, drag, or key press event. See `event-start' for a description of the value returned. (fn EVENT)Fevent-click-count Return the multi-click count of EVENT, a click or drag event. The return value is a positive integer. (fn EVENT)Fevent-line-count Return the line count of EVENT, a mousewheel event. The return value is a positive integer. (fn EVENT)Fposnp Return non-nil if OBJ appears to be a valid `posn' object specifying a window. A `posn' object is returned from functions such as `event-start'. If OBJ is a valid `posn' object, but specifies a frame rather than a window, return nil. (fn OBJ)Fposn-window Return the window in POSITION. POSITION should be a list of the form returned by the `event-start' and `event-end' functions. (fn POSITION)Fposn-area Return the window area recorded in POSITION, or nil for the text area. POSITION should be a list of the form returned by the `event-start' and `event-end' functions. (fn POSITION)Fposn-point Return the buffer location in POSITION. POSITION should be a list of the form returned by the `event-start' and `event-end' functions. Returns nil if POSITION does not correspond to any buffer location (e.g. a click on a scroll bar). (fn POSITION)Fposn-set-point Move point to POSITION. Select the corresponding window as well. (fn POSITION)Fposn-x-y Return the x and y coordinates in POSITION. The return value has the form (X . Y), where X and Y are given in pixels. POSITION should be a list of the form returned by `event-start' and `event-end'. (fn POSITION)Fposn-col-row Return the nominal column and row in POSITION, measured in characters. The column and row values are approximations calculated from the x and y coordinates in POSITION and the frame's default character width and default line height, including spacing. For a scroll-bar event, the result column is 0, and the row corresponds to the vertical position of the click in the scroll bar. POSITION should be a list of the form returned by the `event-start' and `event-end' functions. (fn POSITION)Fposn-actual-col-row Return the window row number in POSITION and character number in that row. Return nil if POSITION does not contain the actual position; in that case `posn-col-row' can be used to get approximate values. POSITION should be a list of the form returned by the `event-start' and `event-end' functions. This function does not account for the width on display, like the number of visual columns taken by a TAB or image. If you need the coordinates of POSITION in character units, you should use `posn-col-row', not this function. (fn POSITION)Fposn-timestamp Return the timestamp of POSITION. POSITION should be a list of the form returned by the `event-start' and `event-end' functions. (fn POSITION)Fposn-string Return the string object of POSITION. Value is a cons (STRING . STRING-POS), or nil if not a string. POSITION should be a list of the form returned by the `event-start' and `event-end' functions. (fn POSITION)Fposn-image Return the image object of POSITION. Value is a list (image ...), or nil if not an image. POSITION should be a list of the form returned by the `event-start' and `event-end' functions. (fn POSITION)Fposn-object Return the object (image or string) of POSITION. Value is a list (image ...) for an image object, a cons cell (STRING . STRING-POS) for a string object, and nil for a buffer position. POSITION should be a list of the form returned by the `event-start' and `event-end' functions. (fn POSITION)Fposn-object-x-y Return the x and y coordinates relative to the object of POSITION. The return value has the form (DX . DY), where DX and DY are given in pixels. POSITION should be a list of the form returned by `event-start' and `event-end'. (fn POSITION)Fposn-object-width-height Return the pixel width and height of the object of POSITION. The return value has the form (WIDTH . HEIGHT). POSITION should be a list of the form returned by `event-start' and `event-end'. (fn POSITION)Flog10 Return (log X 10), the log base 10 of X. (fn X)Fadd-hook Add to the value of HOOK the function FUNCTION. FUNCTION is not added if already present. FUNCTION is added (if necessary) at the beginning of the hook list unless the optional argument APPEND is non-nil, in which case FUNCTION is added at the end. The optional fourth argument, LOCAL, if non-nil, says to modify the hook's buffer-local value rather than its global value. This makes the hook buffer-local, and it makes t a member of the buffer-local value. That acts as a flag to run the hook functions of the global value as well as in the local value. HOOK should be a symbol, and FUNCTION may be any valid function. If HOOK is void, it is first set to nil. If HOOK's value is a single function, it is changed to a list of functions. (fn HOOK FUNCTION &optional APPEND LOCAL)Fremove-hook Remove from the value of HOOK the function FUNCTION. HOOK should be a symbol, and FUNCTION may be any valid function. If FUNCTION isn't the value of HOOK, or, if FUNCTION doesn't appear in the list of hooks to run in HOOK, then nothing is done. See `add-hook'. The optional third argument, LOCAL, if non-nil, says to modify the hook's buffer-local value rather than its default value. (fn HOOK FUNCTION &optional LOCAL)Fletrec Bind variables according to BINDERS then eval BODY. The value of the last form in BODY is returned. Each element of BINDERS is a list (SYMBOL VALUEFORM) which binds SYMBOL to the value of VALUEFORM. All symbols are bound before the VALUEFORMs are evalled. (fn BINDERS &rest BODY)Fwith-wrapper-hook Run BODY, using wrapper functions from HOOK with additional ARGS. HOOK is an abnormal hook. Each hook function in HOOK "wraps" around the preceding ones, like a set of nested `around' advices. Each hook function should accept an argument list consisting of a function FUN, followed by the additional arguments in ARGS. The first hook function in HOOK is passed a FUN that, if it is called with arguments ARGS, performs BODY (i.e., the default operation). The FUN passed to each successive hook function is defined based on the preceding hook functions; if called with arguments ARGS, it does what the `with-wrapper-hook' call would do if the preceding hook functions were the only ones present in HOOK. Each hook function may call its FUN argument as many times as it wishes, including never. In that case, such a hook function acts to replace the default definition altogether, and any preceding hook functions. Of course, a subsequent hook function may do the same thing. Each hook function definition is used to construct the FUN passed to the next hook function, if any. The last (or "outermost") FUN is then called once. (fn HOOK ARGS &rest BODY)Fsubr--with-wrapper-hook-no-warnings Like (with-wrapper-hook HOOK ARGS BODY), but without warnings. (fn HOOK ARGS &rest BODY)Fadd-to-list Add ELEMENT to the value of LIST-VAR if it isn't there yet. The test for presence of ELEMENT is done with `equal', or with COMPARE-FN if that's non-nil. If ELEMENT is added, it is added at the beginning of the list, unless the optional argument APPEND is non-nil, in which case ELEMENT is added at the end. The return value is the new value of LIST-VAR. This is handy to add some elements to configuration variables, but please do not abuse it in Elisp code, where you are usually better off using `push' or `cl-pushnew'. If you want to use `add-to-list' on a variable that is not defined until a certain package is loaded, you should put the call to `add-to-list' into a hook function that will be run only after loading the package. `eval-after-load' provides one way to do this. In some cases other hooks, such as major mode hooks, can do the job. (fn LIST-VAR ELEMENT &optional APPEND COMPARE-FN)Fadd-to-list--anon-cmacro (fn EXP LIST-VAR ELEMENT &optional APPEND COMPARE-FN)Fadd-to-ordered-list Add ELEMENT to the value of LIST-VAR if it isn't there yet. The test for presence of ELEMENT is done with `eq'. The resulting list is reordered so that the elements are in the order given by each element's numeric list order. Elements without a numeric list order are placed at the end of the list. If the third optional argument ORDER is a number (integer or float), set the element's list order to the given value. If ORDER is nil or omitted, do not change the numeric order of ELEMENT. If ORDER has any other value, remove the numeric order of ELEMENT if it has one. The list order for each element is stored in LIST-VAR's `list-order' property. The return value is the new value of LIST-VAR. (fn LIST-VAR ELEMENT &optional ORDER)Fadd-to-history Add NEWELT to the history list stored in the variable HISTORY-VAR. Return the new history list. If MAXELT is non-nil, it specifies the maximum length of the history. Otherwise, the maximum history length is the value of the `history-length' property on symbol HISTORY-VAR, if set, or the value of the `history-length' variable. The possible values of maximum length have the same meaning as the values of `history-length'. Remove duplicates of NEWELT if `history-delete-duplicates' is non-nil. If optional fourth arg KEEP-ALL is non-nil, add NEWELT to history even if it is empty or a duplicate. (fn HISTORY-VAR NEWELT &optional MAXELT KEEP-ALL)Vdelay-mode-hooks If non-nil, `run-mode-hooks' should delay running the hooks.Vdelayed-mode-hooks List of delayed mode hooks waiting to be run.Vdelayed-after-hook-functions List of delayed :after-hook forms waiting to be run. These forms come from `define-derived-mode'.Vchange-major-mode-after-body-hook Normal hook run in major mode functions, before the mode hooks.Vafter-change-major-mode-hook Normal hook run at the very end of major mode functions.Frun-mode-hooks Run mode hooks `delayed-mode-hooks' and HOOKS, or delay HOOKS. Call `hack-local-variables' to set up file local and directory local variables. If the variable `delay-mode-hooks' is non-nil, does not do anything, just adds the HOOKS to the list `delayed-mode-hooks'. Otherwise, runs hooks in the sequence: `change-major-mode-after-body-hook', `delayed-mode-hooks' (in reverse order), HOOKS, then runs `hack-local-variables', runs the hook `after-change-major-mode-hook', and finally evaluates the functions in `delayed-after-hook-functions' (see `define-derived-mode'). Major mode functions should use this instead of `run-hooks' when running their FOO-mode-hook. (fn &rest HOOKS)Fdelay-mode-hooks Execute BODY, but delay any `run-mode-hooks'. These hooks will be executed by the first following call to `run-mode-hooks' that occurs outside any `delay-mode-hooks' form. Only affects hooks run in the current buffer. (fn &rest BODY)Fprovided-mode-derived-p Non-nil if MODE is derived from one of MODES. Uses the `derived-mode-parent' property of the symbol to trace backwards. If you just want to check `major-mode', use `derived-mode-p'. (fn MODE &rest MODES)Fderived-mode-p Non-nil if the current major mode is derived from one of MODES. Uses the `derived-mode-parent' property of the symbol to trace backwards. (fn &rest MODES)Vminor-mode-list List of all minor mode functions.Fadd-minor-mode Register a new minor mode. This is an XEmacs-compatibility function. Use `define-minor-mode' instead. TOGGLE is a symbol which is the name of a buffer-local variable that is toggled on or off to say whether the minor mode is active or not. NAME specifies what will appear in the mode line when the minor mode is active. NAME should be either a string starting with a space, or a symbol whose value is such a string. Optional KEYMAP is the keymap for the minor mode that will be added to `minor-mode-map-alist'. Optional AFTER specifies that TOGGLE should be added after AFTER in `minor-mode-alist'. Optional TOGGLE-FUN is an interactive function to toggle the mode. It defaults to (and should by convention be) TOGGLE. If TOGGLE has a non-nil `:included' property, an entry for the mode is included in the mode-line minor mode menu. If TOGGLE has a `:menu-tag', that is used for the menu item's label. (fn TOGGLE NAME &optional KEYMAP AFTER TOGGLE-FUN)Fautoloadp Non-nil if OBJECT is an autoload. (fn OBJECT)Fdefine-symbol-prop Define the property PROP of SYMBOL to be VAL. This is to `put' what `defalias' is to `fset'. (fn SYMBOL PROP VAL)Fsymbol-file Return the name of the file that defined SYMBOL. The value is normally an absolute file name. It can also be nil, if the definition is not associated with any file. If SYMBOL specifies an autoloaded function, the value can be a relative file name without extension. If TYPE is nil, then any kind of definition is acceptable. If TYPE is `defun', `defvar', or `defface', that specifies function definition, variable definition, or face definition only. Otherwise TYPE is assumed to be a symbol property. (fn SYMBOL &optional TYPE)Flocate-library Show the precise file name of Emacs library LIBRARY. LIBRARY should be a relative file name of the library, a string. It can omit the suffix (a.k.a. file-name extension) if NOSUFFIX is nil (which is the default, see below). This command searches the directories in `load-path' like `\[load-library]' to find the file that `\[load-library] RET LIBRARY RET' would load. Optional second arg NOSUFFIX non-nil means don't add suffixes `load-suffixes' to the specified name LIBRARY. If the optional third arg PATH is specified, that list of directories is used instead of `load-path'. When called from a program, the file name is normally returned as a string. When run interactively, the argument INTERACTIVE-CALL is t, and the file name is displayed in the echo area. (fn LIBRARY &optional NOSUFFIX PATH INTERACTIVE-CALL)Fstart-process Start a program in a subprocess. Return the process object for it. NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer (or buffer name) to associate with the process. Process output (both standard output and standard error streams) goes at end of BUFFER, unless you specify a filter function to handle the output. BUFFER may also be nil, meaning that this process is not associated with any buffer. PROGRAM is the program file name. It is searched for in `exec-path' (which see). If nil, just associate a pty with the buffer. Remaining arguments PROGRAM-ARGS are strings to give program as arguments. If you want to separate standard output from standard error, use `make-process' or invoke the command through a shell and redirect one of them using the shell syntax. The process runs in `default-directory' if that is local (as determined by `unhandled-file-name-directory'), or "~" otherwise. If you want to run a process in a remote directory use `start-file-process'. (fn NAME BUFFER PROGRAM &rest PROGRAM-ARGS)Fprocess-lines Execute PROGRAM with ARGS, returning its output as a list of lines. Signal an error if the program returns with a non-zero exit status. (fn PROGRAM &rest ARGS)Fprocess-live-p Returns non-nil if PROCESS is alive. A process is considered alive if its status is `run', `open', `listen', `connect' or `stop'. Value is nil if PROCESS is not a process. (fn PROCESS)Fprocess-kill-without-query Say no query needed if PROCESS is running when Emacs is exited. Optional second argument if non-nil says to require a query. Value is t if a query was formerly required. (fn PROCESS &optional FLAG)Fprocess-kill-buffer-query-function Ask before killing a buffer that has a running process.Fprocess-get Return the value of PROCESS' PROPNAME property. This is the last value stored with `(process-put PROCESS PROPNAME VALUE)'. (fn PROCESS PROPNAME)Fprocess-put Change PROCESS' PROPNAME property to VALUE. It can be retrieved with `(process-get PROCESS PROPNAME)'. (fn PROCESS PROPNAME VALUE)Fread-key Read a key from the keyboard. Contrary to `read-event' this will not return a raw event but instead will obey the input decoding and translations usually done by `read-key-sequence'. So escape sequences and keyboard encoding are taken into account. When there's an ambiguity because the key looks like the prefix of some sort of escape sequence, the ambiguity is resolved via `read-key-delay'. (fn &optional PROMPT)Vread-passwd-map Keymap used while reading passwords.Fread-passwd Read a password, prompting with PROMPT, and return it. If optional CONFIRM is non-nil, read the password twice to make sure. Optional DEFAULT is a default password to use instead of empty input. This function echoes `.' for each character that the user types. You could let-bind `read-hide-char' to another hiding character, though. Once the caller uses the password, it can erase the password by doing (clear-string STRING). (fn PROMPT &optional CONFIRM DEFAULT)Fread-number Read a numeric value in the minibuffer, prompting with PROMPT. DEFAULT specifies a default value to return if the user just types RET. The value of DEFAULT is inserted into PROMPT. This function is used by the `interactive' code letter `n'. (fn PROMPT &optional DEFAULT)Fread-char-choice Read and return one of CHARS, prompting for PROMPT. Any input that is not one of CHARS is ignored. If optional argument INHIBIT-KEYBOARD-QUIT is non-nil, ignore keyboard-quit events while waiting for a valid input. (fn PROMPT CHARS &optional INHIBIT-KEYBOARD-QUIT)Fsit-for Redisplay, then wait for SECONDS seconds. Stop when input is available. SECONDS may be a floating-point value. (On operating systems that do not support waiting for fractions of a second, floating-point values are rounded down to the nearest integer.) If optional arg NODISP is t, don't redisplay, just wait for input. Redisplay does not happen if input is available before it starts. Value is t if waited the full time with no input arriving, and nil otherwise. An obsolete, but still supported form is (sit-for SECONDS &optional MILLISECONDS NODISP) where the optional arg MILLISECONDS specifies an additional wait period, in milliseconds; this was useful when Emacs was built without floating point support. (fn SECONDS &optional NODISP OBSOLETE)Fy-or-n-p Ask user a "y or n" question. Return t if answer is "y" and nil if it is "n". PROMPT is the string to display to ask the question. It should end in a space; `y-or-n-p' adds "(y or n) " to it. No confirmation of the answer is requested; a single character is enough. SPC also means yes, and DEL means no. To be precise, this function translates user input into responses by consulting the bindings in `query-replace-map'; see the documentation of that variable for more information. In this case, the useful bindings are `act', `skip', `recenter', `scroll-up', `scroll-down', and `quit'. An `act' response means yes, and a `skip' response means no. A `quit' response means to invoke `keyboard-quit'. If the user enters `recenter', `scroll-up', or `scroll-down' responses, perform the requested window recentering or scrolling and ask again. Under a windowing system a dialog box will be used if `last-nonmenu-event' is nil and `use-dialog-box' is non-nil. (fn PROMPT)Fatomic-change-group Perform BODY as an atomic change group. This means that if BODY exits abnormally, all of its changes to the current buffer are undone. This works regardless of whether undo is enabled in the buffer. This mechanism is transparent to ordinary use of undo; if undo is enabled in the buffer and BODY succeeds, the user can undo the change normally. (fn &rest BODY)Fprepare-change-group Return a handle for the current buffer's state, for a change group. If you specify BUFFER, make a handle for BUFFER's state instead. Pass the handle to `activate-change-group' afterward to initiate the actual changes of the change group. To finish the change group, call either `accept-change-group' or `cancel-change-group' passing the same handle as argument. Call `accept-change-group' to accept the changes in the group as final; call `cancel-change-group' to undo them all. You should use `unwind-protect' to make sure the group is always finished. The call to `activate-change-group' should be inside the `unwind-protect'. Once you finish the group, don't use the handle again--don't try to finish the same group twice. For a simple example of correct use, see the source code of `atomic-change-group'. The handle records only the specified buffer. To make a multibuffer change group, call this function once for each buffer you want to cover, then use `nconc' to combine the returned values, like this: (nconc (prepare-change-group buffer-1) (prepare-change-group buffer-2)) You can then activate that multibuffer change group with a single call to `activate-change-group' and finish it with a single call to `accept-change-group' or `cancel-change-group'. (fn &optional BUFFER)Factivate-change-group Activate a change group made with `prepare-change-group' (which see). (fn HANDLE)Faccept-change-group Finish a change group made with `prepare-change-group' (which see). This finishes the change group by accepting its changes as final. (fn HANDLE)Fcancel-change-group Finish a change group made with `prepare-change-group' (which see). This finishes the change group by reverting all of its changes. (fn HANDLE)Fmomentary-string-display Momentarily display STRING in the buffer at POS. Display remains until next event is input. If POS is a marker, only its position is used; its buffer is ignored. Optional third arg EXIT-CHAR can be a character, event or event description list. EXIT-CHAR defaults to SPC. If the input is EXIT-CHAR it is swallowed; otherwise it is then available as input (as a command if nothing else). Display MESSAGE (optional fourth arg) in the echo area. If MESSAGE is nil, instructions to type EXIT-CHAR are displayed there. (fn STRING POS &optional EXIT-CHAR MESSAGE)Fcopy-overlay Return a copy of overlay O. (fn O)Fremove-overlays Clear BEG and END of overlays whose property NAME has value VAL. Overlays might be moved and/or split. BEG and END default respectively to the beginning and end of buffer. (fn &optional BEG END NAME VAL)Vsuspend-hook Normal hook run by `suspend-emacs', before suspending.Vsuspend-resume-hook Normal hook run by `suspend-emacs', after Emacs is continued.Vtemp-buffer-show-hook Normal hook run by `with-output-to-temp-buffer' after displaying the buffer. When the hook runs, the temporary buffer is current, and the window it was displayed in is selected.Vtemp-buffer-setup-hook Normal hook run by `with-output-to-temp-buffer' at the start. When the hook runs, the temporary buffer is current. This hook is normally set up with a function to put the buffer in Help mode.Vuser-emacs-directory Directory beneath which additional per-user Emacs-specific files are placed. Various programs in Emacs store information in this directory. Note that this should end with a directory separator. See also `locate-user-emacs-file'.Fbuffer-narrowed-p Return non-nil if the current buffer is narrowed.Ffind-tag-default-bounds Determine the boundaries of the default tag, based on text at point. Return a cons cell with the beginning and end of the found tag. If there is no plausible default, return nil.Ffind-tag-default Determine default tag to search for, based on text at point. If there is no plausible default, return nil.Ffind-tag-default-as-regexp Return regexp that matches the default tag at point. If there is no tag at point, return nil. When in a major mode that does not provide its own `find-tag-default-function', return a regexp that matches the symbol at point exactly.Ffind-tag-default-as-symbol-regexp Return regexp that matches the default tag at point as symbol. If there is no tag at point, return nil. When in a major mode that does not provide its own `find-tag-default-function', return a regexp that matches the symbol at point exactly.Fplay-sound SOUND is a list of the form `(sound KEYWORD VALUE...)'. The following keywords are recognized: :file FILE - read sound data from FILE. If FILE isn't an absolute file name, it is searched in `data-directory'. :data DATA - read sound data from string DATA. Exactly one of :file or :data must be present. :volume VOL - set volume to VOL. VOL must an integer in the range 0..100 or a float in the range 0..1.0. If not specified, don't change the volume setting of the sound device. :device DEVICE - play sound on DEVICE. If not specified, a system-dependent default device name is used. Note: :data and :device are currently not supported on Windows. (fn SOUND)Fshell-quote-argument Quote ARGUMENT for passing as argument to an inferior shell. This function is designed to work with the syntax of your system's standard shell, and might produce incorrect results with unusual shells. See Info node `(elisp)Security Considerations'. (fn ARGUMENT)Fstring-to-list Return a list of characters in STRING. (fn STRING)Fstring-to-vector Return a vector of characters in STRING. (fn STRING)Fstring-or-null-p Return t if OBJECT is a string or nil. Otherwise, return nil. (fn OBJECT)Fbooleanp Return t if OBJECT is one of the two canonical boolean values: t or nil. Otherwise, return nil. (fn OBJECT)Fspecial-form-p Non-nil if and only if OBJECT is a special form. (fn OBJECT)Fmacrop Non-nil if and only if OBJECT is a macro. (fn OBJECT)Ffield-at-pos Return the field at position POS, taking stickiness etc into account. (fn POS)Fsha1 Return the SHA1 (Secure Hash Algorithm) of an OBJECT. OBJECT is either a string or a buffer. Optional arguments START and END are character positions specifying which portion of OBJECT for computing the hash. If BINARY is non-nil, return a string in binary form. (fn OBJECT &optional START END BINARY)Ffunction-get Return the value of property PROP of function F. If AUTOLOAD is non-nil and F is autoloaded, try to autoload it in the hope that it will set PROP. If AUTOLOAD is `macro', only do it if it's an autoloaded macro. (fn F PROP &optional AUTOLOAD)Fremove-yank-excluded-properties Process text properties between START and END, inserted for a `yank'. Perform the handling specified by `yank-handled-properties', then remove properties specified by `yank-excluded-properties'. (fn START END)Finsert-for-yank Insert STRING at point for the `yank' command. This function is like `insert', except it honors the variables `yank-handled-properties' and `yank-excluded-properties', and the `yank-handler' text property, in the way that `yank' does. (fn STRING)Finsert-for-yank-1 Helper for `insert-for-yank', which see. (fn STRING)Finsert-buffer-substring-no-properties Insert before point a substring of BUFFER, without text properties. BUFFER may be a buffer or a buffer name. Arguments START and END are character positions specifying the substring. They default to the values of (point-min) and (point-max) in BUFFER. (fn BUFFER &optional START END)Finsert-buffer-substring-as-yank Insert before point a part of BUFFER, stripping some text properties. BUFFER may be a buffer or a buffer name. Arguments START and END are character positions specifying the substring. They default to the values of (point-min) and (point-max) in BUFFER. Before insertion, process text properties according to `yank-handled-properties' and `yank-excluded-properties'. (fn BUFFER &optional START END)Fyank-handle-font-lock-face-property If `font-lock-defaults' is nil, apply FACE as a `face' property. START and END denote the start and end of the text to act on. Do nothing if FACE is nil. (fn FACE START END)Fyank-handle-category-property Apply property category CATEGORY's properties between START and END. (fn CATEGORY START END)Fstart-process-shell-command Start a program in a subprocess. Return the process object for it. NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer (or buffer name) to associate with the process. Process output goes at end of that buffer, unless you specify an output stream or filter function to handle the output. BUFFER may be also nil, meaning that this process is not associated with any buffer COMMAND is the shell command to run. An old calling convention accepted any number of arguments after COMMAND, which were just concatenated to COMMAND. This is still supported but strongly discouraged. (fn NAME BUFFER &rest ARGS)Fstart-file-process-shell-command Start a program in a subprocess. Return the process object for it. Similar to `start-process-shell-command', but calls `start-file-process'. (fn NAME BUFFER &rest ARGS)Fcall-process-shell-command Execute the shell command COMMAND synchronously in separate process. The remaining arguments are optional. The program's input comes from file INFILE (nil means `/dev/null'). Insert output in BUFFER before point; t means current buffer; nil for BUFFER means discard it; 0 means discard and don't wait. BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case, REAL-BUFFER says what to do with standard output, as above, while STDERR-FILE says what to do with standard error in the child. STDERR-FILE may be nil (discard standard error output), t (mix it with ordinary output), or a file name string. Fourth arg DISPLAY non-nil means redisplay buffer as output is inserted. Wildcards and redirection are handled as usual in the shell. If BUFFER is 0, `call-process-shell-command' returns immediately with value nil. Otherwise it waits for COMMAND to terminate and returns a numeric exit status or a signal description string. If you quit, the process is killed with SIGINT, or SIGKILL if you quit again. An old calling convention accepted any number of arguments after DISPLAY, which were just concatenated to COMMAND. This is still supported but strongly discouraged. (fn COMMAND &optional INFILE BUFFER DISPLAY &rest ARGS)Fprocess-file-shell-command Process files synchronously in a separate process. Similar to `call-process-shell-command', but calls `process-file'. (fn COMMAND &optional INFILE BUFFER DISPLAY &rest ARGS)Fcall-shell-region Send text from START to END as input to an inferior shell running COMMAND. Delete the text if fourth arg DELETE is non-nil. Insert output in BUFFER before point; t means current buffer; nil for BUFFER means discard it; 0 means discard and don't wait; and `(:file FILE)', where FILE is a file name string, means that it should be written to that file (if the file already exists it is overwritten). BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case, REAL-BUFFER says what to do with standard output, as above, while STDERR-FILE says what to do with standard error in the child. STDERR-FILE may be nil (discard standard error output), t (mix it with ordinary output), or a file name string. If BUFFER is 0, `call-shell-region' returns immediately with value nil. Otherwise it waits for COMMAND to terminate and returns a numeric exit status or a signal description string. If you quit, the process is killed with SIGINT, or SIGKILL if you quit again. (fn START END COMMAND &optional DELETE BUFFER)Ftrack-mouse Evaluate BODY with mouse movement events enabled. Within a `track-mouse' form, mouse motion generates input events that you can read with `read-event'. Normally, mouse motion is ignored. (fn &rest BODY)Fwith-current-buffer Execute the forms in BODY with BUFFER-OR-NAME temporarily current. BUFFER-OR-NAME must be a buffer or the name of an existing buffer. The value returned is the value of the last form in BODY. See also `with-temp-buffer'. (fn BUFFER-OR-NAME &rest BODY)Finternal--before-with-selected-window (fn WINDOW)Finternal--after-with-selected-window (fn STATE)Fwith-selected-window Execute the forms in BODY with WINDOW as the selected window. The value returned is the value of the last form in BODY. This macro saves and restores the selected window, as well as the selected window of each frame. It does not change the order of recently selected windows. If the previously selected window of some frame is no longer live at the end of BODY, that frame's selected window is left alone. If the selected window is no longer live, then whatever window is selected at the end of BODY remains selected. This macro uses `save-current-buffer' to save and restore the current buffer, since otherwise its normal operation could potentially make a different buffer current. It does not alter the buffer list ordering. (fn WINDOW &rest BODY)Fwith-selected-frame Execute the forms in BODY with FRAME as the selected frame. The value returned is the value of the last form in BODY. This macro saves and restores the selected frame, and changes the order of neither the recently selected windows nor the buffers in the buffer list. (fn FRAME &rest BODY)Fsave-window-excursion Execute BODY, then restore previous window configuration. This macro saves the window configuration on the selected frame, executes BODY, then calls `set-window-configuration' to restore the saved window configuration. The return value is the last form in BODY. The window configuration is also restored if BODY exits nonlocally. BEWARE: Most uses of this macro introduce bugs. E.g. it should not be used to try and prevent some code from opening a new window, since that window may sometimes appear in another frame, in which case `save-window-excursion' cannot help. (fn &rest BODY)Finternal-temp-output-buffer-show Internal function for `with-output-to-temp-buffer'. (fn BUFFER)Fwith-output-to-temp-buffer Bind `standard-output' to buffer BUFNAME, eval BODY, then show that buffer. This construct makes buffer BUFNAME empty before running BODY. It does not make the buffer current for BODY. Instead it binds `standard-output' to that buffer, so that output generated with `prin1' and similar functions in BODY goes into the buffer. At the end of BODY, this marks buffer BUFNAME unmodified and displays it in a window, but does not select it. The normal way to do this is by calling `display-buffer', then running `temp-buffer-show-hook'. However, if `temp-buffer-show-function' is non-nil, it calls that function instead (and does not run `temp-buffer-show-hook'). The function gets one argument, the buffer to display. The return value of `with-output-to-temp-buffer' is the value of the last form in BODY. If BODY does not finish normally, the buffer BUFNAME is not displayed. This runs the hook `temp-buffer-setup-hook' before BODY, with the buffer BUFNAME temporarily current. It runs the hook `temp-buffer-show-hook' after displaying buffer BUFNAME, with that buffer temporarily current, and the window that was used to display it temporarily selected. But it doesn't run `temp-buffer-show-hook' if it uses `temp-buffer-show-function'. By default, the setup hook puts the buffer into Help mode before running BODY. If BODY does not change the major mode, the show hook makes the buffer read-only, and scans it for function and variable names to make them into clickable cross-references. See the related form `with-temp-buffer-window'. (fn BUFNAME &rest BODY)Fwith-temp-file Create a new buffer, evaluate BODY there, and write the buffer to FILE. The value returned is the value of the last form in BODY. See also `with-temp-buffer'. (fn FILE &rest BODY)Fwith-temp-message Display MESSAGE temporarily if non-nil while BODY is evaluated. The original message is restored to the echo area after BODY has finished. The value returned is the value of the last form in BODY. MESSAGE is written to the message log buffer if `message-log-max' is non-nil. If MESSAGE is nil, the echo area and message log buffer are unchanged. Use a MESSAGE of "" to temporarily clear the echo area. (fn MESSAGE &rest BODY)Fwith-temp-buffer Create a temporary buffer, and evaluate BODY there like `progn'. See also `with-temp-file' and `with-output-to-string'. (fn &rest BODY)Fwith-silent-modifications Execute BODY, pretending it does not modify the buffer. This macro is typically used around modifications of text properties which do not really affect the buffer's content. If BODY performs real modifications to the buffer's text, other than cosmetic ones, undo data may become corrupted. This macro will run BODY normally, but doesn't count its buffer modifications as being buffer modifications. This affects things like `buffer-modified-p', checking whether the file is locked by someone else, running buffer modification hooks, and other things of that nature. (fn &rest BODY)Fwith-output-to-string Execute BODY, return the text it sent to `standard-output', as a string. (fn &rest BODY)Fwith-local-quit Execute BODY, allowing quits to terminate BODY but not escape further. When a quit terminates BODY, `with-local-quit' returns nil but requests another quit. That quit will be processed as soon as quitting is allowed once again. (Immediately, if `inhibit-quit' is nil.) (fn &rest BODY)Fwhile-no-input Execute BODY only as long as there's no pending input. If input arrives, that ends the execution of BODY, and `while-no-input' returns t. Quitting makes it return nil. If BODY finishes, `while-no-input' returns whatever value BODY produced. (fn &rest BODY)Fcondition-case-unless-debug Like `condition-case' except that it does not prevent debugging. More specifically if `debug-on-error' is set then the debugger will be invoked even if this catches the signal. (fn VAR BODYFORM &rest HANDLERS)Fwith-demoted-errors Run BODY and demote any errors to simple messages. FORMAT is a string passed to `message' to format any error message. It should contain a single %-sequence; e.g., "Error: %S". If `debug-on-error' is non-nil, run BODY without catching its errors. This is to be used around code which is not expected to signal an error but which should be robust in the unexpected case that an error is signaled. For backward compatibility, if FORMAT is not a constant string, it is assumed to be part of BODY, in which case the message format used is "Error: %S". (fn FORMAT &rest BODY)Fcombine-after-change-calls Execute BODY, but don't call the after-change functions till the end. If BODY makes changes in the buffer, they are recorded and the functions on `after-change-functions' are called several times when BODY is finished. The return value is the value of the last form in BODY. If `before-change-functions' is non-nil, then calls to the after-change functions can't be deferred, so in that case this macro has no effect. Do not alter `after-change-functions' or `before-change-functions' in BODY. (fn &rest BODY)Fwith-case-table Execute the forms in BODY with TABLE as the current case table. The value returned is the value of the last form in BODY. (fn TABLE &rest BODY)Fwith-file-modes Execute BODY with default file permissions temporarily set to MODES. MODES is as for `set-default-file-modes'. (fn MODES &rest BODY)Fsave-match-data Execute the BODY forms, restoring the global value of the match data. The value returned is the value of the last form in BODY. (fn &rest BODY)Fmatch-string Return string of text matched by last search. NUM specifies which parenthesized expression in the last regexp. Value is nil if NUMth pair didn't match, or there were less than NUM pairs. Zero means the entire text matched by the whole regexp or whole string. STRING should be given if the last search was by `string-match' on STRING. If STRING is nil, the current buffer should be the same buffer the search/match was performed in. (fn NUM &optional STRING)Fmatch-string-no-properties Return string of text matched by last search, without text properties. NUM specifies which parenthesized expression in the last regexp. Value is nil if NUMth pair didn't match, or there were less than NUM pairs. Zero means the entire text matched by the whole regexp or whole string. STRING should be given if the last search was by `string-match' on STRING. If STRING is nil, the current buffer should be the same buffer the search/match was performed in. (fn NUM &optional STRING)Fmatch-substitute-replacement Return REPLACEMENT as it will be inserted by `replace-match'. In other words, all back-references in the form `\&' and `\N' are substituted with actual strings matched by the last search. Optional FIXEDCASE, LITERAL, STRING and SUBEXP have the same meaning as for `replace-match'. (fn REPLACEMENT &optional FIXEDCASE LITERAL STRING SUBEXP)Flooking-back Return non-nil if text before point matches regular expression REGEXP. Like `looking-at' except matches before point, and is slower. LIMIT if non-nil speeds up the search by specifying a minimum starting position, to avoid checking matches that would start before LIMIT. If GREEDY is non-nil, extend the match backwards as far as possible, stopping when a single additional previous character cannot be part of a match for REGEXP. When the match is extended, its starting position is allowed to occur before LIMIT. As a general recommendation, try to avoid using `looking-back' wherever possible, since it is slow. (fn REGEXP &optional LIMIT GREEDY)Flooking-at-p Same as `looking-at' except this function does not change the match data. (fn REGEXP)Fstring-match-p Same as `string-match' except this function does not change the match data. (fn REGEXP STRING &optional START)Fsubregexp-context-p Return non-nil if POS is in a normal subregexp context in REGEXP. A subregexp context is one where a sub-regexp can appear. A non-subregexp context is for example within brackets, or within a repetition bounds operator `\=\{...\}', or right after a `\'. If START is non-nil, it should be a position in REGEXP, smaller than POS, and known to be in a subregexp context. (fn REGEXP POS &optional START)Vsplit-string-default-separators The default value of separators for `split-string'. A regexp matching strings of whitespace. May be locale-dependent (as yet unimplemented). Should not match non-breaking spaces. Warning: binding this to a different value and using it as default is likely to have undesired semantics.Fsplit-string Split STRING into substrings bounded by matches for SEPARATORS. The beginning and end of STRING, and each match for SEPARATORS, are splitting points. The substrings matching SEPARATORS are removed, and the substrings between the splitting points are collected as a list, which is returned. If SEPARATORS is non-nil, it should be a regular expression matching text which separates, but is not part of, the substrings. If nil it defaults to `split-string-default-separators', normally "[ \f\t\n\r\v]+", and OMIT-NULLS is forced to t. If OMIT-NULLS is t, zero-length substrings are omitted from the list (so that for the default value of SEPARATORS leading and trailing whitespace are effectively trimmed). If nil, all zero-length substrings are retained, which correctly parses CSV format, for example. If TRIM is non-nil, it should be a regular expression to match text to trim from the beginning and end of each substring. If trimming makes the substring empty, it is treated as null. If you want to trim whitespace from the substrings, the reliably correct way is using TRIM. Making SEPARATORS match that whitespace gives incorrect results when there is whitespace at the start or end of STRING. If you see such calls to `split-string', please fix them. Note that the effect of `(split-string STRING)' is the same as `(split-string STRING split-string-default-separators t)'. In the rare case that you wish to retain zero-length substrings when splitting on whitespace, use `(split-string STRING split-string-default-separators)'. Modifies the match data; use `save-match-data' if necessary. (fn STRING &optional SEPARATORS OMIT-NULLS TRIM)Fcombine-and-quote-strings Concatenate the STRINGS, adding the SEPARATOR (default " "). This tries to quote the strings to avoid ambiguity such that (split-string-and-unquote (combine-and-quote-strings strs)) == strs Only some SEPARATORs will work properly. Note that this is not intended to protect STRINGS from interpretation by shells, use `shell-quote-argument' for that. (fn STRINGS &optional SEPARATOR)Fsplit-string-and-unquote Split the STRING into a list of strings. It understands Emacs Lisp quoting within STRING, such that (split-string-and-unquote (combine-and-quote-strings strs)) == strs The SEPARATOR regexp defaults to "\s-+". (fn STRING &optional SEPARATOR)Fsubst-char-in-string Replace FROMCHAR with TOCHAR in STRING each time it occurs. Unless optional argument INPLACE is non-nil, return a new string. (fn FROMCHAR TOCHAR STRING &optional INPLACE)Freplace-regexp-in-string Replace all matches for REGEXP with REP in STRING. Return a new string containing the replacements. Optional arguments FIXEDCASE, LITERAL and SUBEXP are like the arguments with the same names of function `replace-match'. If START is non-nil, start replacements at that index in STRING. REP is either a string used as the NEWTEXT arg of `replace-match' or a function. If it is a function, it is called with the actual text of each match, and its value is used as the replacement text. When REP is called, the match data are the result of matching REGEXP against a substring of STRING, the same substring that is the actual text of the match which is passed to REP as its argument. To replace only the first match (if any), make REGEXP match up to \\=' and replace a sub-expression, e.g. (replace-regexp-in-string "\\(foo\\).*\\\='" "bar" " foo foo" nil nil 1) => " bar foo" (fn REGEXP REP STRING &optional FIXEDCASE LITERAL SUBEXP START)Fstring-prefix-p Return non-nil if PREFIX is a prefix of STRING. If IGNORE-CASE is non-nil, the comparison is done without paying attention to case differences. (fn PREFIX STRING &optional IGNORE-CASE)Fstring-suffix-p Return non-nil if SUFFIX is a suffix of STRING. If IGNORE-CASE is non-nil, the comparison is done without paying attention to case differences. (fn SUFFIX STRING &optional IGNORE-CASE)Fbidi-string-mark-left-to-right Return a string that can be safely inserted in left-to-right text. Normally, inserting a string with right-to-left (RTL) script into a buffer may cause some subsequent text to be displayed as part of the RTL segment (usually this affects punctuation characters). This function returns a string which displays as STR but forces subsequent text to be displayed as left-to-right. If STR contains any RTL character, this function returns a string consisting of STR followed by an invisible left-to-right mark (LRM) character. Otherwise, it returns STR. (fn STR)Fstring-greaterp Return non-nil if STRING1 is greater than STRING2 in lexicographic order. Case is significant. Symbols are also allowed; their print names are used instead. (fn STRING1 STRING2)Fload-history-regexp Form a regexp to find FILE in `load-history'. FILE, a string, is described in the function `eval-after-load'. (fn FILE)Fload-history-filename-element Get the first elt of `load-history' whose car matches FILE-REGEXP. Return nil if there isn't one. (fn FILE-REGEXP)Feval-after-load Arrange that if FILE is loaded, FORM will be run immediately afterwards. If FILE is already loaded, evaluate FORM right now. FORM can be an Elisp expression (in which case it's passed to `eval'), or a function (in which case it's passed to `funcall' with no argument). If a matching file is loaded again, FORM will be evaluated again. If FILE is a string, it may be either an absolute or a relative file name, and may have an extension (e.g. ".el") or may lack one, and additionally may or may not have an extension denoting a compressed format (e.g. ".gz"). When FILE is absolute, this first converts it to a true name by chasing symbolic links. Only a file of this name (see next paragraph regarding extensions) will trigger the evaluation of FORM. When FILE is relative, a file whose absolute true name ends in FILE will trigger evaluation. When FILE lacks an extension, a file name with any extension will trigger evaluation. Otherwise, its extension must match FILE's. A further extension for a compressed format (e.g. ".gz") on FILE will not affect this name matching. Alternatively, FILE can be a feature (i.e. a symbol), in which case FORM is evaluated at the end of any file that `provide's this feature. If the feature is provided when evaluating code not associated with a file, FORM is evaluated immediately after the provide statement. Usually FILE is just a library name like "font-lock" or a feature name like `font-lock'. This function makes or adds to an entry on `after-load-alist'. (fn FILE FORM)Feval-after-load--anon-cmacro (fn WHOLE FILE FORM)Fwith-eval-after-load Execute BODY after FILE is loaded. FILE is normally a feature name, but it can also be a file name, in case that file does not provide any feature. See `eval-after-load' for more details about the different forms of FILE and their semantics. (fn FILE &rest BODY)Vafter-load-functions Special hook run after loading a file. Each function there is called with a single argument, the absolute name of the file just loaded.Fdo-after-load-evaluation Evaluate all `eval-after-load' forms, if any, for ABS-FILE. ABS-FILE, a string, should be the absolute true name of a file just loaded. This function is called directly from the C code. (fn ABS-FILE)Feval-next-after-load Read the following input sexp, and run it whenever FILE is loaded. This makes or adds to an entry on `after-load-alist'. FILE should be the name of a library, with no directory name. (fn FILE)Fdisplay-delayed-warnings Display delayed warnings from `delayed-warnings-list'. Used from `delayed-warnings-hook' (which see).Fcollapse-delayed-warnings Remove duplicates from `delayed-warnings-list'. Collapse identical adjacent warnings into one (plus count). Used from `delayed-warnings-hook' (which see).Vdelayed-warnings-hook Normal hook run to process and display delayed warnings. By default, this hook contains functions to consolidate the warnings listed in `delayed-warnings-list', display them, and set `delayed-warnings-list' back to nil.Fdelay-warning Display a delayed warning. Aside from going through `delayed-warnings-list', this is equivalent to `display-warning'. (fn TYPE MESSAGE &optional LEVEL BUFFER-NAME)Fadd-to-invisibility-spec Add ELEMENT to `buffer-invisibility-spec'. See documentation for `buffer-invisibility-spec' for the kind of elements that can be added. (fn ELEMENT)Fremove-from-invisibility-spec Remove ELEMENT from `buffer-invisibility-spec'. (fn ELEMENT)Fwith-syntax-table Evaluate BODY with syntax table of current buffer set to TABLE. The syntax table of the current buffer is saved, BODY is evaluated, and the saved table is restored, even in case of an abnormal exit. Value is what BODY returns. (fn TABLE &rest BODY)Fmake-syntax-table Return a new syntax table. Create a syntax table which inherits from OLDTABLE (if non-nil) or from `standard-syntax-table' otherwise. (fn &optional OLDTABLE)Fsyntax-after Return the raw syntax descriptor for the char after POS. If POS is outside the buffer's accessible portion, return nil. (fn POS)Fsyntax-class Return the code for the syntax class described by SYNTAX. SYNTAX should be a raw syntax descriptor; the return value is a integer which encodes the corresponding syntax class. See Info node `(elisp)Syntax Table Internals' for a list of codes. If SYNTAX is nil, return nil. (fn SYNTAX)Vword-move-empty-char-table Used in `forward-word-strictly' and `backward-word-strictly' to countermand the effect of `find-word-boundary-function-table'.Fforward-word-strictly Move point forward ARG words (backward if ARG is negative). If ARG is omitted or nil, move point forward one word. Normally returns t. If an edge of the buffer or a field boundary is reached, point is left there and the function returns nil. Field boundaries are not noticed if `inhibit-field-text-motion' is non-nil. This function is like `forward-word', but it is not affected by `find-word-boundary-function-table'. It is also not interactive. (fn &optional ARG)Fbackward-word-strictly Move backward until encountering the beginning of a word. With argument ARG, do this that many times. If ARG is omitted or nil, move point backward one word. This function is like `forward-word', but it is not affected by `find-word-boundary-function-table'. It is also not interactive. (fn &optional ARG)Fforward-whitespace Move point to the end of the next sequence of whitespace chars. Each such sequence may be a single newline, or a sequence of consecutive space and/or tab characters. With prefix argument ARG, do it ARG times if positive, or move backwards ARG times if negative. (fn ARG)Fforward-symbol Move point to the next position that is the end of a symbol. A symbol is any sequence of characters that are in either the word constituent or symbol constituent syntax class. With prefix argument ARG, do it ARG times if positive, or move backwards ARG times if negative. (fn ARG)Fforward-same-syntax Move point past all characters with the same syntax class. With prefix argument ARG, do it ARG times if positive, or move backwards ARG times if negative. (fn &optional ARG)Ftext-clone--maintain Propagate the changes made under the overlay OL1 to the other clones. This is used on the `modification-hooks' property of text clones. (fn OL1 AFTER BEG END &optional LEN)Ftext-clone-create Create a text clone of START...END at point. Text clones are chunks of text that are automatically kept identical: changes done to one of the clones will be immediately propagated to the other. The buffer's content at point is assumed to be already identical to the one between START and END. If SYNTAX is provided it's a regexp that describes the possible text of the clones; the clone will be shrunk or killed if necessary to ensure that its text matches the regexp. If SPREADP is non-nil it indicates that text inserted before/after the clone should be incorporated in the clone. (fn START END &optional SPREADP SYNTAX)Fdefine-mail-user-agent Define a symbol to identify a mail-sending package for `mail-user-agent'. SYMBOL can be any Lisp symbol. Its function definition and/or value as a variable do not matter for this usage; we use only certain properties on its property list, to encode the rest of the arguments. COMPOSEFUNC is program callable function that composes an outgoing mail message buffer. This function should set up the basics of the buffer without requiring user interaction. It should populate the standard mail headers, leaving the `to:' and `subject:' headers blank by default. COMPOSEFUNC should accept several optional arguments--the same arguments that `compose-mail' takes. See that function's documentation. SENDFUNC is the command a user would run to send the message. Optional ABORTFUNC is the command a user would run to abort the message. For mail packages that don't have a separate abort function, this can be `kill-buffer' (the equivalent of omitting this argument). Optional HOOKVAR is a hook variable that gets run before the message is actually sent. Callers that use the `mail-user-agent' may install a hook function temporarily on this hook variable. If HOOKVAR is nil, `mail-send-hook' is used. The properties used on SYMBOL are `composefunc', `sendfunc', `abortfunc', and `hookvar'. (fn SYMBOL COMPOSEFUNC SENDFUNC &optional ABORTFUNC HOOKVAR)Fbacktrace--print-frame Print a trace of a single stack frame to `standard-output'. EVALD, FUNC, ARGS, FLAGS are as in `mapbacktrace'. (fn EVALD FUNC ARGS FLAGS)Fbacktrace Print a trace of Lisp function calls currently active. Output stream used is value of `standard-output'.Fbacktrace-frames Collect all frames of current backtrace into a list. If non-nil, BASE should be a function, and frames before its nearest activation frames are discarded. (fn &optional BASE)Fbacktrace-frame Return the function and arguments NFRAMES up from current execution point. If non-nil, BASE should be a function, and NFRAMES counts from its nearest activation frame. If the frame has not evaluated the arguments yet (or is a special form), the value is (nil FUNCTION ARG-FORMS...). If the frame has evaluated its arguments and called its function already, the value is (t FUNCTION ARG-VALUES...). A &rest arg is represented as the tail of the list ARG-VALUES. FUNCTION is whatever was supplied as car of evaluated list, or a lambda expression for macro calls. If NFRAMES is more than the number of frames, the value is nil. (fn NFRAMES &optional BASE)Vcalled-interactively-p-functions Special hook called to skip special frames in `called-interactively-p'. The functions are called with 3 arguments: (I FRAME1 FRAME2), where FRAME1 is a "current frame", FRAME2 is the next frame, I is the index of the frame after FRAME2. It should return nil if those frames don't seem special and otherwise, it should return the number of frames to skip (minus 1).Fcalled-interactively-p Return t if the containing function was called by `call-interactively'. If KIND is `interactive', then only return t if the call was made interactively by the user, i.e. not in `noninteractive' mode nor when `executing-kbd-macro'. If KIND is `any', on the other hand, it will return t for any kind of interactive call, including being called as the binding of a key or from a keyboard macro, even in `noninteractive' mode. This function is very brittle, it may fail to return the intended result when the code is debugged, advised, or instrumented in some form. Some macros and special forms (such as `condition-case') may also sometimes wrap their bodies in a `lambda', so any call to `called-interactively-p' from those bodies will indicate whether that lambda (rather than the surrounding function) was called interactively. Instead of using this function, it is cleaner and more reliable to give your function an extra optional argument whose `interactive' spec specifies non-nil unconditionally ("p" is a good way to do this), or via (not (or executing-kbd-macro noninteractive)). The only known proper use of `interactive' for KIND is in deciding whether to display a helpful message, or how to display it. If you're thinking of using it for any other purpose, it is quite likely that you're making a mistake. Think: what do you want to do when the command is called from a keyboard macro? (fn &optional KIND)Finteractive-p Return t if the containing function was run directly by user input. This means that the function was called with `call-interactively' (which includes being called as the binding of a key) and input is currently coming from the keyboard (not a keyboard macro), and Emacs is not running in batch mode (`noninteractive' is nil). The only known proper use of `interactive-p' is in deciding whether to display a helpful message, or how to display it. If you're thinking of using it for any other purpose, it is quite likely that you're making a mistake. Think: what do you want to do when the command is called from a keyboard macro or in batch mode? To test whether your function was called with `call-interactively', either (i) add an extra optional argument and give it an `interactive' spec that specifies non-nil unconditionally (such as "p"); or (ii) use `called-interactively-p'. To test whether a function can be called interactively, use `commandp'.Finternal-push-keymap (fn KEYMAP SYMBOL)Finternal-pop-keymap (fn KEYMAP SYMBOL)Fset-transient-map Set MAP as a temporary keymap taking precedence over other keymaps. Normally, MAP is used only once, to look up the very next key. However, if the optional argument KEEP-PRED is t, MAP stays active if a key from MAP is used. KEEP-PRED can also be a function of no arguments: it is called from `pre-command-hook' and if it returns non-nil, then MAP stays active. Optional arg ON-EXIT, if non-nil, specifies a function that is called, with no arguments, after MAP is deactivated. This uses `overriding-terminal-local-map' which takes precedence over all other keymaps. As usual, if no match for a key is found in MAP, the normal key lookup sequence then continues. This returns an "exit function", which can be called with no argument to deactivate this transient map, regardless of KEEP-PRED. (fn MAP &optional KEEP-PRED ON-EXIT)Fprogress-reporter-update Report progress of an operation in the echo area. REPORTER should be the result of a call to `make-progress-reporter'. If REPORTER is a numerical progress reporter---i.e. if it was made using non-nil MIN-VALUE and MAX-VALUE arguments to `make-progress-reporter'---then VALUE should be a number between MIN-VALUE and MAX-VALUE. If REPORTER is a non-numerical reporter, VALUE should be nil. This function is relatively inexpensive. If the change since last update is too small or insufficient time has passed, it does nothing. (fn REPORTER &optional VALUE)Fmake-progress-reporter Return progress reporter object for use with `progress-reporter-update'. MESSAGE is shown in the echo area, with a status indicator appended to the end. When you call `progress-reporter-done', the word "done" is printed after the MESSAGE. You can change the MESSAGE of an existing progress reporter by calling `progress-reporter-force-update'. MIN-VALUE and MAX-VALUE, if non-nil, are starting (0% complete) and final (100% complete) states of operation; the latter should be larger. In this case, the status message shows the percentage progress. If MIN-VALUE and/or MAX-VALUE is omitted or nil, the status message shows a "spinning", non-numeric indicator. Optional CURRENT-VALUE is the initial progress; the default is MIN-VALUE. Optional MIN-CHANGE is the minimal change in percents to report; the default is 1%. CURRENT-VALUE and MIN-CHANGE do not have any effect if MIN-VALUE and/or MAX-VALUE are nil. Optional MIN-TIME specifies the minimum interval time between echo area updates (default is 0.2 seconds.) If the OS is not capable of measuring fractions of seconds, this parameter is effectively rounded up. (fn MESSAGE &optional MIN-VALUE MAX-VALUE CURRENT-VALUE MIN-CHANGE MIN-TIME)Fprogress-reporter-force-update Report progress of an operation in the echo area unconditionally. The first two arguments are the same as in `progress-reporter-update'. NEW-MESSAGE, if non-nil, sets a new message for the reporter. (fn REPORTER &optional VALUE NEW-MESSAGE)Vprogress-reporter--pulse-characters Characters to use for pulsing progress reporters.Fprogress-reporter-do-update (fn REPORTER VALUE)Fprogress-reporter-done Print reporter's message followed by word "done" in echo area. (fn REPORTER)Fdotimes-with-progress-reporter Loop a certain number of times and report progress in the echo area. Evaluate BODY with VAR bound to successive integers running from 0, inclusive, to COUNT, exclusive. Then evaluate RESULT to get the return value (nil if RESULT is omitted). At each iteration MESSAGE followed by progress percentage is printed in the echo area. After the loop is finished, MESSAGE followed by word "done" is printed. This macro is a convenience wrapper around `make-progress-reporter' and friends. (fn (VAR COUNT [RESULT]) MESSAGE BODY...)Vversion-separator Specify the string used to separate the version elements. Usually the separator is ".", but it can be any other string.Vversion-regexp-alist Specify association between non-numeric version and its priority. This association is used to handle version string like "1.0pre2", "0.9alpha1", etc. It's used by `version-to-list' (which see) to convert the non-numeric part of a version string to an integer. For example: String Version Integer List Version "0.9snapshot" (0 9 -4) "1.0-git" (1 0 -4) "1.0.cvs" (1 0 -4) "1.0pre2" (1 0 -1 2) "1.0PRE2" (1 0 -1 2) "22.8beta3" (22 8 -2 3) "22.8 Beta3" (22 8 -2 3) "0.9alpha1" (0 9 -3 1) "0.9AlphA1" (0 9 -3 1) "0.9 alpha" (0 9 -3) Each element has the following form: (REGEXP . PRIORITY) Where: REGEXP regexp used to match non-numeric part of a version string. It should begin with the `^' anchor and end with a `$' to prevent false hits. Letter-case is ignored while matching REGEXP. PRIORITY a negative integer specifying non-numeric priority of REGEXP.Fversion-to-list Convert version string VER into a list of integers. The version syntax is given by the following EBNF: VERSION ::= NUMBER ( SEPARATOR NUMBER )*. NUMBER ::= (0|1|2|3|4|5|6|7|8|9)+. SEPARATOR ::= `version-separator' (which see) | `version-regexp-alist' (which see). The NUMBER part is optional if SEPARATOR is a match for an element in `version-regexp-alist'. Examples of valid version syntax: 1.0pre2 1.0.7.5 22.8beta3 0.9alpha1 6.9.30Beta 2.4.snapshot .5 Examples of invalid version syntax: 1.0prepre2 1.0..7.5 22.8X3 alpha3.2 Examples of version conversion: Version String Version as a List of Integers ".5" (0 5) "0.9 alpha" (0 9 -3) "0.9AlphA1" (0 9 -3 1) "0.9snapshot" (0 9 -4) "1.0-git" (1 0 -4) "1.0.7.5" (1 0 7 5) "1.0.cvs" (1 0 -4) "1.0PRE2" (1 0 -1 2) "1.0pre2" (1 0 -1 2) "22.8 Beta3" (22 8 -2 3) "22.8beta3" (22 8 -2 3) See documentation for `version-separator' and `version-regexp-alist'. (fn VER)Fversion-list-< Return t if L1, a list specification of a version, is lower than L2. Note that a version specified by the list (1) is equal to (1 0), (1 0 0), (1 0 0 0), etc. That is, the trailing zeros are insignificant. Also, a version given by the list (1) is higher than (1 -1), which in turn is higher than (1 -2), which is higher than (1 -3). (fn L1 L2)Fversion-list-= Return t if L1, a list specification of a version, is equal to L2. Note that a version specified by the list (1) is equal to (1 0), (1 0 0), (1 0 0 0), etc. That is, the trailing zeros are insignificant. Also, a version given by the list (1) is higher than (1 -1), which in turn is higher than (1 -2), which is higher than (1 -3). (fn L1 L2)Fversion-list-<= Return t if L1, a list specification of a version, is lower or equal to L2. Note that integer list (1) is equal to (1 0), (1 0 0), (1 0 0 0), etc. That is, the trailing zeroes are insignificant. Also, integer list (1) is greater than (1 -1) which is greater than (1 -2) which is greater than (1 -3). (fn L1 L2)Fversion-list-not-zero Return the first non-zero element of LST, which is a list of integers. If all LST elements are zeros or LST is nil, return zero. (fn LST)Fversion< Return t if version V1 is lower (older) than V2. Note that version string "1" is equal to "1.0", "1.0.0", "1.0.0.0", etc. That is, the trailing ".0"s are insignificant. Also, version string "1" is higher (newer) than "1pre", which is higher than "1beta", which is higher than "1alpha", which is higher than "1snapshot". Also, "-GIT", "-CVS" and "-NNN" are treated as snapshot versions. (fn V1 V2)Fversion<= Return t if version V1 is lower (older) than or equal to V2. Note that version string "1" is equal to "1.0", "1.0.0", "1.0.0.0", etc. That is, the trailing ".0"s are insignificant. Also, version string "1" is higher (newer) than "1pre", which is higher than "1beta", which is higher than "1alpha", which is higher than "1snapshot". Also, "-GIT", "-CVS" and "-NNN" are treated as snapshot versions. (fn V1 V2)Fversion= Return t if version V1 is equal to V2. Note that version string "1" is equal to "1.0", "1.0.0", "1.0.0.0", etc. That is, the trailing ".0"s are insignificant. Also, version string "1" is higher (newer) than "1pre", which is higher than "1beta", which is higher than "1alpha", which is higher than "1snapshot". Also, "-GIT", "-CVS" and "-NNN" are treated as snapshot versions. (fn V1 V2)Vpackage--builtin-versions Alist giving the version of each versioned builtin package. I.e. each element of the list is of the form (NAME . VERSION) where NAME is the package name as a symbol, and VERSION is its version as a list.Fpackage--description-file (fn DIR)Fwith-mutex Invoke BODY with MUTEX held, releasing MUTEX when done. This is the simplest safe way to acquire and release a mutex. (fn MUTEX &rest BODY)Vdefinition-prefixes Hash table mapping prefixes to the files in which they're used. This can be used to automatically fetch not-yet-loaded definitions. More specifically, if there is a value of the form (FILES...) for a string PREFIX it means that the FILES define variables or functions with names that start with PREFIX. Note that it does not imply that all definitions starting with PREFIX can be found in those files. E.g. if prefix is "gnus-article-" there might still be definitions of the form "gnus-article-toto-titi" in other files, which would presumably appear in this table under another prefix such as "gnus-" or "gnus-article-toto-".Fregister-definition-prefixes Register that FILE uses PREFIXES. (fn FILE PREFIXES)Vmenu-bar-separator Separator for menus.Funmsys--file-name Produce the canonical file name for FILE from its MSYS form. On systems other than MS-Windows, just returns FILE. On MS-Windows, converts /d/foo/bar form of file names passed by MSYS Make into d:/foo/bar that Emacs can grok. This function is called from lisp/Makefile and leim/Makefile. (fn FILE)Scommon-win.elc Vx-alternatives-map Keymap of possible alternative meanings for some keys.Fx-setup-function-keys Set up `function-key-map' on the graphical frame FRAME.Vx-display-name The name of the window display on which Emacs was started. On X, the display name of individual X frames is recorded in the `display' frame parameter.Fx-handle-display Handle -display DISPLAY option.Fx-handle-args Process the X (or Nextstep) related command line options in ARGS. This is done before the user's startup file is loaded. Copies the options in ARGS to `x-invocation-args'. It then extracts the X (or Nextstep) options according to the handlers defined in `command-line-x-option-alist' (or `command-line-ns-option-alist'). For example, `x-handle-switch' handles a switch like "-fg" and its value "black". This function returns ARGS minus the arguments that have been processed.Vx-colors List of basic colors available on color displays. For X, the list comes from the `rgb.txt' file,v 10.41 94/02/20. For Nextstep, this is a list of non-PANTONE colors returned by the operating system.Fxw-defined-colors Internal function called by `defined-colors', which see.Sinternal.elc Vmsdos-key-remapping-map Keymap for remapping special keys on MS-DOS keyboard.Fmsdos-setup-keyboard Setup `local-function-key-map' for MS-DOS keyboard.VIT-unicode-translations A list of strings that should be used to represent Unicode characters on a DOS terminal which does not have corresponding glyphs built into the installed codepage.FIT-setup-unicode-display Set up display table TABLE for displaying mule-unicode-* characters on a DOS terminal whose codepage provides the coding-system CODING. If TABLE is nil or omitted, `standard-display-table' is used.Vdos-locale-alist Alist of MS-DOS country codes and the corresponding locale names.Fdos-codepage-setup Set up multilingual environment for the installed DOS codepage. This function sets coding systems, display tables, and the language environment options as appropriate for the current value of `dos-codepage'. This function is automatically run at startup via the `after-init-hook' list. You can (and should) also run it if and when the value of `dos-codepage' changes.Sns-win.elc Fns-handle-nxopen (fn SWITCH &optional TEMP)Fns-handle-nxopentemp (fn SWITCH)Fns-ignore-1-arg (fn SWITCH)Fns-parse-geometry Parse a Nextstep-style geometry string GEOM. Returns an alist of the form ((top . TOP), (left . LEFT) ... ). The properties returned may include `top', `left', `height', and `width'. (fn GEOM)Fns-define-service (fn PATH)Fns-open-file-service Open multiple files when selecting a multiline string FILENAMES. (fn FILENAMES)Fns-spi-service-call Respond to a service request.Vns-working-overlay Overlay used to highlight working text during compose sequence insert. When text is in th echo area, this just stores the length of the working text.Fns-in-echo-area Whether, for purposes of inserting working composition text, the minibuffer is currently being used.Fns-insert-working-text Insert contents of `ns-working-text' as UTF-8 string and mark with `ns-working-overlay'. Any previously existing working text is cleared first. The overlay is assigned the face `ns-working-text-face'.Fns-echo-working-text Echo contents of `ns-working-text' in message display area. See `ns-insert-working-text'.Fns-delete-working-text Delete working text and clear `ns-working-overlay'.Fns-insert-file Insert contents of file `ns-input-file' like insert-file but with less prompting. If file is a directory perform a `find-file' on it.Vns-select-overlay Overlay used to highlight areas in files requested by Nextstep apps.Fns-open-file-select-line Open a buffer containing the file `ns-input-file'. Lines are highlighted according to `ns-input-line'.Fns-unselect-line Removes any Nextstep highlight a buffer may contain.Fget-lisp-resource (fn ARG1 ARG2)Fx-file-dialog Read file name, prompting with PROMPT in directory DIR. Use a file selection dialog. Select DEFAULT-FILENAME in the dialog's file selection box, if specified. If MUSTMATCH is non-nil, the returned file or directory must exist. This function is only defined on NS, MS Windows, and X Windows with the Motif or Gtk toolkits. With the Motif toolkit, ONLY-DIR-P is ignored. Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories. (fn PROMPT DIR DEFAULT_FILENAME MUSTMATCH ONLY_DIR_P)Fns-open-file-using-panel Pop up open-file panel, and load the result in a buffer.Fns-write-file-using-panel Pop up save-file panel, and save buffer in resulting name.Fns-find-file Do a `find-file' with the `ns-input-file' as argument.Fns-drag-n-drop Edit the files listed in the drag-n-drop EVENT. Switch to a buffer editing the last file dropped. (fn EVENT &optional NEW-FRAME FORCE-TEXT)Fns-drag-n-drop-other-frame Edit the files listed in the drag-n-drop EVENT, in other frames. May create new frames, or reuse existing ones. The frame editing the last file dropped is selected. (fn EVENT)Fns-drag-n-drop-as-text Drop the data in EVENT as text. (fn EVENT)Fns-drag-n-drop-as-text-other-frame Drop the data in EVENT as text in a new frame. (fn EVENT)Fns-next-frame Switch to next visible frame.Fns-prev-frame Switch to previous visible frame.Fns-toggle-toolbar Switches the tool bar on and off in frame FRAME. If FRAME is nil, the change applies to the selected frame. (fn &optional FRAME)Fns-print-buffer Interactive front-end to `print-buffer': asks for user confirmation first.Fns-respond-to-change-font Respond to changeFont: event, expecting `ns-input-font' and `ns-input-fontsize' of new font.Vns-standard-fontset-spec String of fontset spec of the standard fontset. This defines a fontset consisting of the Courier and other fonts that come with macOS. See the documentation of `create-fontset-from-fontset-spec' for the format.Fns-face-at-pos (fn POS)Vns-initialized Non-nil if Nextstep windowing has been initialized.Spc-win.elc Vmsdos-color-values A list of MS-DOS console colors, their indices and 16-bit RGB values.Fmsdos-face-setup Initial setup of faces for the MS-DOS display.Fmsdos-handle-reverse-video Handle the reverse-video frame parameter on MS-DOS frames. (fn FRAME PARAMETERS)Fmsdos-create-frame-with-faces Create a frame on MS-DOS display. Optional frame parameters PARAMETERS specify the frame parameters. Parameters not specified by PARAMETERS are taken from `default-frame-alist'. If either PARAMETERS or `default-frame-alist' contains a `reverse' parameter, handle that. Value is the new frame created. (fn &optional PARAMETERS)Fx-list-fonts Return a list of the names of available fonts matching PATTERN. If optional arguments FACE and FRAME are specified, return only fonts the same size as FACE on FRAME. PATTERN should be a string containing a font name in the XLFD, Fontconfig, or GTK format. A font name given in the XLFD format may contain wildcard characters: the * character matches any substring, and the ? character matches any single character. PATTERN is case-insensitive. The return value is a list of strings, suitable as arguments to `set-face-font'. Fonts Emacs can't use may or may not be excluded even if they match PATTERN and FACE. The optional fourth argument MAXIMUM sets a limit on how many fonts to match. The first MAXIMUM fonts are reported. The optional fifth argument WIDTH, if specified, is a number of columns occupied by a character of a font. In that case, return only fonts the WIDTH times as wide as FACE on FRAME. (fn PATTERN &optional FACE FRAME MAXIMUM WIDTH)Fx-display-pixel-width Return the width in pixels of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the pixel width for all physical monitors associated with DISPLAY. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional FRAME)Fx-display-pixel-height Return the height in pixels of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the pixel height for all physical monitors associated with DISPLAY. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional FRAME)Fx-display-planes Return the number of bitplanes of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional FRAME)Fx-display-color-cells Return the number of color cells of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional FRAME)Fx-server-max-request-size Return the maximum request size of the server of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional FRAME)Fx-server-vendor Return the "vendor ID" string of the GUI software on TERMINAL. (Labeling every distributor as a "vendor" embodies the false assumption that operating systems cannot be developed and distributed noncommercially.) For GNU and Unix systems, this queries the X server software; for MS-Windows, this queries the OS. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional FRAME)Fx-server-version Return the version numbers of the GUI software on TERMINAL. The value is a list of three integers specifying the version of the GUI software in use. For GNU and Unix system, the first 2 numbers are the version of the X Protocol used on TERMINAL and the 3rd number is the distributor-specific release number. For MS-Windows, the 3 numbers report the version and the build number of the OS. See also the function `x-server-vendor'. The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional FRAME)Fx-display-screens Return the number of screens on the server of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional FRAME)Fx-display-mm-height Return the height in millimeters of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the height in millimeters for all physical monitors associated with DISPLAY. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional FRAME)Fx-display-mm-width Return the width in millimeters of DISPLAY. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. On "multi-monitor" setups this refers to the width in millimeters for all physical monitors associated with TERMINAL. To get information for each physical monitor, use `display-monitor-attributes-list'. (fn &optional FRAME)Fx-display-backing-store Return an indication of whether DISPLAY does backing store. The value may be `always', `when-mapped', or `not-useful'. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional FRAME)Fx-display-visual-class Return the visual class of DISPLAY. The value is one of the symbols `static-gray', `gray-scale', `static-color', `pseudo-color', `true-color', or `direct-color'. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. (fn &optional FRAME)Vx-display-name The name of the window display on which Emacs was started. On X, the display name of individual X frames is recorded in the `display' frame parameter.Vx-colors List of basic colors available on color displays. For X, the list comes from the `rgb.txt' file,v 10.41 94/02/20. For Nextstep, this is a list of non-PANTONE colors returned by the operating system.Fw16-selection-owner-p (fn SELECTION)Vmsdos-last-help-message The last help message received via `show-help-function'. This is used by `msdos-show-help'.Vmsdos-previous-message The content of the echo area before help echo was displayed.Fmsdos-show-help Function installed as `show-help-function' on MS-DOS frames. (fn HELP)Fterminal-init-internal Terminal initialization function for the MS-DOS "internal" terminal. Errors out because it is not supposed to be called, ever.Stty-colors.elc Vcolor-name-rgb-alist An alist of X color names and associated 16-bit RGB values.Vtty-standard-colors An alist of 8 standard tty colors, their indices and RGB values.Vtty-color-mode-alist An alist of supported standard tty color modes and their aliases.Ftty-color-alist Return an alist of colors supported by FRAME's terminal. FRAME defaults to the selected frame. Each element of the returned alist is of the form: (NAME INDEX R G B) where NAME is the name of the color, a string; INDEX is the index of this color to be sent to the terminal driver when the color should be displayed; it is typically a small integer; R, G, and B are the intensities of, accordingly, red, green, and blue components of the color, represented as numbers between 0 and 65535. The file `etc/rgb.txt' in the Emacs distribution lists the standard RGB values of the X colors. If RGB is nil, this color will not be considered by `tty-color-translate' as an approximation to another color.Ftty-modify-color-alist Put the association ELT into the alist of terminal colors for FRAME. ELT should be of the form (NAME INDEX R G B) (see `tty-color-alist' for details). If the association for NAME already exists in the color alist, it is modified to specify (INDEX R G B) as its cdr. Otherwise, ELT is appended to the end of the color alist. If FRAME is unspecified or nil, it defaults to the selected frame. Value is the modified color alist for FRAME.Ftty-register-default-colors Register the default set of colors for a character terminal.Ftty-color-canonicalize Return COLOR in canonical form. A canonicalized color name is all-lower case, with any blanks removed.Ftty-color-24bit Return 24-bit color pixel value for RGB value on DISPLAY. DISPLAY can be a display name or a frame, and defaults to the selected frame's display. If DISPLAY is not on a 24-but TTY terminal, return nil.Ftty-color-define Specify a tty color by its NAME, terminal INDEX and RGB values. NAME is a string, INDEX is typically a small integer used to send to the terminal driver a command to switch this color on, and RGB is a list of 3 numbers that specify the intensity of red, green, and blue components of the color. If specified, each one of the RGB components must be a number between 0 and 65535. If RGB is omitted, the specified color will never be used by `tty-color-translate' as an approximation to another color. FRAME is the frame where the defined color should be used. If FRAME is not specified or is nil, it defaults to the selected frame.Ftty-color-clear Clear the list of supported tty colors for frame FRAME. If FRAME is unspecified or nil, it defaults to the selected frame.Ftty-color-off-gray-diag Compute the angle between the color given by R,G,B and the gray diagonal. The gray diagonal is the diagonal of the 3D cube in RGB space which connects the points corresponding to the black and white colors. All the colors whose RGB coordinates belong to this diagonal are various shades of gray, thus the name.Ftty-color-approximate Find the color in `tty-color-alist' that best approximates RGB. Value is a list of the form (NAME INDEX R G B). The argument RGB should be an rgb value, that is, a list of three integers in the 0..65535 range. FRAME defaults to the selected frame.Ftty-color-standard-values Return standard RGB values of the color COLOR. The result is a list of integer RGB values--(RED GREEN BLUE). These values range from 0 to 65535; white is (65535 65535 65535). The returned value reflects the standard X definition of COLOR, regardless of whether the terminal can display it, so the return value should be the same regardless of what display is being used.Ftty-color-translate Given a color COLOR, return the index of the corresponding TTY color. COLOR must be a string that is either the color's name, or its X-style specification like "#RRGGBB" or "RGB:rr/gg/bb", where each primary. color can be given with 1 to 4 hex digits. If COLOR is a color name that is found among supported colors in `tty-color-alist', the associated index is returned. Otherwise, the RGB values of the color, either as given by the argument or from looking up the name in `color-name-rgb-alist', are used to find the supported color that is the best approximation for COLOR in the RGB space. If COLOR is neither a valid X RGB specification of the color, nor a name of a color in `color-name-rgb-alist', the returned value is nil. If FRAME is unspecified or nil, it defaults to the selected frame.Ftty-color-by-index Given a numeric index of a tty color, return its description. FRAME, if unspecified or nil, defaults to the selected frame. Value is a list of the form (NAME INDEX R G B).Ftty-color-values Return RGB values of the color COLOR on a termcap frame FRAME. If COLOR is not directly supported by the display, return the RGB values for a supported color that is its best approximation. The value is a list of integer RGB values--(RED GREEN BLUE). These values range from 0 to 65535; white is (65535 65535 65535). If FRAME is omitted or nil, use the selected frame.Ftty-color-desc Return the description of the color COLOR for a character terminal. Value is a list of the form (NAME INDEX R G B). The returned NAME or RGB value may not be the same as the argument COLOR, because the latter might need to be approximated if it is not supported directly.Ftty-color-gray-shades Return the number of gray colors supported by DISPLAY's terminal. A color is considered gray if the 3 components of its RGB value are equal.Sw32-win.elc Fw32-handle-dropped-file (fn WINDOW FILE-NAME)Fw32-drag-n-drop Edit the files listed in the drag-n-drop EVENT. Switch to a buffer editing the last file dropped. (fn EVENT &optional NEW-FRAME)Fw32-drag-n-drop-other-frame Edit the files listed in the drag-n-drop EVENT, in other frames. May create new frames, or reuse existing ones. The frame editing the last file dropped is selected. (fn EVENT)Fw32-menu-bar-open Start key navigation of the menu bar in FRAME. This initially activates the first menu-bar item, and you can then navigate with the arrow keys, select a menu entry with the Return key or cancel with one or two Escape keypresses. (Two Escape keypresses are needed when a menu was already dropped down by pressing Return.) If FRAME has no menu bar, this function does nothing. If FRAME is nil or not given, use the selected frame. If FRAME does not have the menu bar enabled, display a text menu using `tmm-menubar'. (fn &optional FRAME)Vw32-standard-fontset-spec String of fontset spec of the standard fontset. This defines a fontset consisting of the Courier New variations for European languages which are distributed with Windows as "Multilanguage Support". See the documentation of `create-fontset-from-fontset-spec' for the format.Fw32-win-suspend-error Report an error when a suspend is attempted.Vw32-initialized Non-nil if the w32 window system has been initialized.Fw32--set-selection (fn TYPE VALUE)Fw32--get-selection (fn &optional TYPE DATA-TYPE)Fw32--selection-owner-p (fn SELECTION)Fw32-version Return the MS-Windows version numbers. The value is a list of three integers: the major and minor version numbers, and the build number.Fw32-using-nt Return non-nil if running on a Windows NT descendant. That includes all Windows systems except for 9X/Me.Sx-win.elc Fx-handle-no-bitmap-icon (fn SWITCH)Fx-handle-parent-id (fn SWITCH)Fx-handle-smid (fn SWITCH)Vemacs-save-session-functions Special hook run when a save-session event occurs. The functions do not get any argument. Functions can return non-nil to inform the session manager that the window system shutdown should be aborted. See also `emacs-session-save'.Femacs-session-filename Construct a filename to save the session in based on SESSION-ID. Return a filename in `user-emacs-directory', unless the session file already exists in the home directory. (fn SESSION-ID)Femacs-session-save This function is called when the window system is shutting down. If this function returns non-nil, the window system shutdown is canceled. When a session manager tells Emacs that the window system is shutting down, this function is called. It calls the functions in the hook `emacs-save-session-functions'. Functions are called with the current buffer set to a temporary buffer. Functions should use `insert' to insert lisp code to save the session state. The buffer is saved in a file in the home directory of the user running Emacs. The file is evaluated when Emacs is restarted by the session manager. If any of the functions returns non-nil, no more functions are called and this function returns non-nil. This will inform the session manager that it should abort the window system shutdown.Femacs-session-restore Restore the Emacs session if started by a session manager. The file saved by `emacs-session-save' is evaluated and deleted if it exists. (fn PREVIOUS-SESSION-ID)Fvendor-specific-keysyms Return the appropriate value of `system-key-alist' for VENDOR. VENDOR is a string containing the name of the X Server's vendor, as returned by `x-server-vendor'. (fn VENDOR)Fx-clipboard-yank Insert the clipboard contents, or the last stretch of killed text.Fx-menu-bar-open Open the menu bar if it is shown. `popup-menu' is used if it is off. (fn &optional FRAME)Fx-win-suspend-error Report an error when a suspend is attempted. This returns an error if any Emacs frames are X frames.Vx-initialized Non-nil if the X window system has been initialized.Fx-gtk-map-stock Map icon with file name FILE to a Gtk+ stock name. This uses `icon-map-list' to map icon file names to stock icon names. (fn FILE)Sfill.elc Vfill-paragraph-function Mode-specific function to fill a paragraph, or nil if there is none. If the function returns nil, then `fill-paragraph' does its normal work. A value of t means explicitly "do nothing special". Note: This only affects `fill-paragraph' and not `fill-region' nor `auto-fill-mode', so it is often better to use some other hook, such as `fill-forward-paragraph-function'.Vfill-paragraph-handle-comment Non-nil means paragraph filling will try to pay attention to comments.Venable-kinsoku Non-nil means enable "kinsoku" processing on filling paragraphs. Kinsoku processing is designed to prevent certain characters from being placed at the beginning or end of a line by filling. See the documentation of `kinsoku' for more information.Fset-fill-prefix Set the fill prefix to the current line up to point. Filling expects lines to start with the fill prefix and reinserts the fill prefix in each resulting line.Vfill-indent-according-to-mode Whether or not filling should try to use the major mode's indentation.Fcurrent-fill-column Return the fill-column to use for this line. The fill-column to use for a buffer is stored in the variable `fill-column', but can be locally modified by the `right-margin' text property, which is subtracted from `fill-column'. The fill column to use for a line is the first column at which the column number equals or exceeds the local fill-column - right-margin difference.Fcanonically-space-region Remove extra spaces between words in region. Leave one space between words, two at end of sentences or after colons (depending on values of `sentence-end-double-space', `colon-double-space', and `sentence-end-without-period'). Remove indentation from each line.Ffill-common-string-prefix Return the longest common prefix of strings S1 and S2, or nil if none.Ffill-context-prefix Compute a fill prefix from the text between FROM and TO. This uses the variables `adaptive-fill-regexp' and `adaptive-fill-function' and `adaptive-fill-first-line-regexp'. `paragraph-start' also plays a role; we reject a prefix based on a one-line paragraph if that prefix would act as a paragraph-separator.Ffill-single-word-nobreak-p Don't break a line after the first or before the last word of a sentence.Ffill-french-nobreak-p Return nil if French style allows breaking the line at point. This is used in `fill-nobreak-predicate' to prevent breaking lines just after an opening paren or just before a closing paren or a punctuation mark such as `?' or `:'. It is common in French writing to put a space at such places, which would normally allow breaking the line at those places.Ffill-single-char-nobreak-p Return non-nil if a one-letter word is before point. This function is suitable for adding to the hook `fill-nobreak-predicate', to prevent the breaking of a line just after a one-letter word, which is an error according to some typographical conventions.Ffill-nobreak-p Return nil if breaking the line at point is allowed. Can be customized with the variables `fill-nobreak-predicate' and `fill-nobreak-invisible'.Vfill-find-break-point-function-table Char-table of special functions to find line breaking point.Vfill-nospace-between-words-table Char-table of characters that don't use space between words.Ffill-find-break-point Move point to a proper line breaking position of the current line. Don't move back past the buffer position LIMIT. This function is called when we are going to break the current line after or before a non-ASCII character. If the charset of the character has the property `fill-find-break-point-function', this function calls the property value as a function with one arg LIMIT. If the charset has no such property, do nothing.Ffill-delete-prefix Delete the fill prefix from every line except the first. The first line may not even have a fill prefix. Point is moved to just past the fill prefix on the first line.Ffill-move-to-break-point Move to the position where the line should be broken. The break position will be always after LINEBEG and generally before point.Ffill-indent-to-left-margin Indent current line to the column given by `current-left-margin'.Ffill-region-as-paragraph Fill the region as one paragraph. It removes any paragraph breaks in the region and extra newlines at the end, indents and fills lines between the margins given by the `current-left-margin' and `current-fill-column' functions. (In most cases, the variable `fill-column' controls the width.) It leaves point at the beginning of the line following the paragraph. Normally performs justification according to the `current-justification' function, but with a prefix arg, does full justification instead. From a program, optional third arg JUSTIFY can specify any type of justification. Fourth arg NOSQUEEZE non-nil means not to make spaces between words canonical before filling. Fifth arg SQUEEZE-AFTER, if non-nil, means don't canonicalize spaces before that position. Return the `fill-prefix' used for filling. If `sentence-end-double-space' is non-nil, then period followed by one space does not end a sentence, so don't break a line there.Fskip-line-prefix If point is inside the string PREFIX at the beginning of line, move past it.Ffill-minibuffer-function Fill a paragraph in the minibuffer, ignoring the prompt.Vfill-forward-paragraph-function Function to move over paragraphs used by the filling code. It is called with a single argument specifying the number of paragraphs to move. Just like `forward-paragraph', it should return the number of paragraphs left to move.Ffill-paragraph Fill paragraph at or after point. If JUSTIFY is non-nil (interactively, with prefix argument), justify as well. If `sentence-end-double-space' is non-nil, then period followed by one space does not end a sentence, so don't break a line there. The variable `fill-column' controls the width for filling. If `fill-paragraph-function' is non-nil, we call it (passing our argument to it), and if it returns non-nil, we simply return its value. If `fill-paragraph-function' is nil, return the `fill-prefix' used for filling. The REGION argument is non-nil if called interactively; in that case, if Transient Mark mode is enabled and the mark is active, call `fill-region' to fill each of the paragraphs in the active region, instead of just filling the current paragraph.Ffill-comment-paragraph Fill current comment. If we're not in a comment, just return nil so that the caller can take care of filling. JUSTIFY is used as in `fill-paragraph'.Ffill-region Fill each of the paragraphs in the region. A prefix arg means justify as well. The `fill-column' variable controls the width. Noninteractively, the third argument JUSTIFY specifies which kind of justification to do: `full', `left', `right', `center', or `none' (equivalent to nil). A value of t means handle each paragraph as specified by its text properties. The fourth arg NOSQUEEZE non-nil means to leave whitespace other than line breaks untouched, and fifth arg TO-EOP non-nil means to keep filling to the end of the paragraph (or next hard newline, if variable `use-hard-newlines' is on). Return the fill-prefix used for filling the last paragraph. If `sentence-end-double-space' is non-nil, then period followed by one space does not end a sentence, so don't break a line there.Fcurrent-justification How should we justify this line? This returns the value of the text-property `justification', or the variable `default-justification' if there is no text-property. However, it returns nil rather than `none' to mean "don't justify".Fset-justification Set the region's justification style to STYLE. This commands prompts for the kind of justification to use. If the mark is not active, this command operates on the current paragraph. If the mark is active, it operates on the region. However, if the beginning and end of the region are not at paragraph breaks, they are moved to the beginning and end (respectively) of the paragraphs they are in. If variable `use-hard-newlines' is true, all hard newlines are taken to be paragraph breaks. When calling from a program, operates just on region between BEGIN and END, unless optional fourth arg WHOLE-PAR is non-nil. In that case bounds are extended to include entire paragraphs as in the interactive command.Fset-justification-none Disable automatic filling for paragraphs in the region. If the mark is not active, this applies to the current paragraph.Fset-justification-left Make paragraphs in the region left-justified. This means they are flush at the left margin and ragged on the right. This is usually the default, but see the variable `default-justification'. If the mark is not active, this applies to the current paragraph.Fset-justification-right Make paragraphs in the region right-justified. This means they are flush at the right margin and ragged on the left. If the mark is not active, this applies to the current paragraph.Fset-justification-full Make paragraphs in the region fully justified. This makes lines flush on both margins by inserting spaces between words. If the mark is not active, this applies to the current paragraph.Fset-justification-center Make paragraphs in the region centered. If the mark is not active, this applies to the current paragraph.Fjustify-current-line Do some kind of justification on this line. Normally does full justification: adds spaces to the line to make it end at the column given by `current-fill-column'. Optional first argument HOW specifies alternate type of justification: it can be `left', `right', `full', `center', or `none'. If HOW is t, will justify however the `current-justification' function says to. If HOW is nil or missing, full justification is done by default. Second arg EOP non-nil means that this is the last line of the paragraph, so it will not be stretched by full justification. Third arg NOSQUEEZE non-nil means to leave interior whitespace unchanged, otherwise it is made canonical.Funjustify-current-line Remove justification whitespace from current line. If the line is centered or right-justified, this function removes any indentation past the left margin. If the line is full-justified, it removes extra spaces between words. It does nothing in other justification modes.Funjustify-region Remove justification whitespace from region. For centered or right-justified regions, this function removes any indentation past the left margin from each line. For full-justified lines, it removes extra spaces between words. It does nothing in other justification modes. Arguments BEGIN and END are optional; default is the whole buffer.Ffill-nonuniform-paragraphs Fill paragraphs within the region, allowing varying indentation within each. This command divides the region into "paragraphs", only at paragraph-separator lines, then fills each paragraph using as the fill prefix the smallest indentation of any line in the paragraph. When calling from a program, pass range to fill as first two arguments. Optional third and fourth arguments JUSTIFYP and CITATION-REGEXP: JUSTIFYP to justify paragraphs (prefix arg). When filling a mail message, pass a regexp for CITATION-REGEXP which will match the prefix of a line which is a citation marker plus whitespace, but no other kind of prefix. Also, if CITATION-REGEXP is non-nil, don't fill header lines.Ffill-individual-paragraphs Fill paragraphs of uniform indentation within the region. This command divides the region into "paragraphs", treating every change in indentation level or prefix as a paragraph boundary, then fills each paragraph using its indentation level as the fill prefix. There is one special case where a change in indentation does not start a new paragraph. This is for text of this form: foo> This line with extra indentation starts foo> a paragraph that continues on more lines. These lines are filled together. When calling from a program, pass the range to fill as the first two arguments. Optional third and fourth arguments JUSTIFY and CITATION-REGEXP: JUSTIFY to justify paragraphs (prefix arg). When filling a mail message, pass a regexp for CITATION-REGEXP which will match the prefix of a line which is a citation marker plus whitespace, but no other kind of prefix. Also, if CITATION-REGEXP is non-nil, don't fill header lines.Spage.elc Fforward-page Move forward to page boundary. With arg, repeat, or go back if negative. A page boundary is any line whose beginning matches the regexp `page-delimiter'.Fbackward-page Move backward to page boundary. With arg, repeat, or go fwd if negative. A page boundary is any line whose beginning matches the regexp `page-delimiter'.Fmark-page Put mark at end of page, point at beginning. A numeric arg specifies to move forward or backward by that many pages, thus marking a page other than the one point was originally in.Fnarrow-to-page Make text outside current page invisible. A numeric arg specifies to move forward or backward by that many pages, thus showing a page other than the one point was originally in.Fcount-lines-page Report number of lines on current page, and how many are before or after point.Fwhat-page Print page and line number of point.Sparagraphs.elc Vuse-hard-newlines Non-nil if Use-Hard-Newlines mode is enabled. Use the command `use-hard-newlines' to change this variable.Fuse-hard-newlines Toggle distinguishing between hard and soft newlines. With a prefix argument ARG, enable the feature if ARG is positive, and disable it otherwise. If called from Lisp, enable it if ARG is omitted or nil. When enabled, the functions `newline' and `open-line' add the text-property `hard' to newlines that they insert, and a line is only considered as a candidate to match `paragraph-start' or `paragraph-separate' if it follows a hard newline. When enabling, if there are newlines in the buffer but no hard newlines, ask the user whether to mark as hard any newlines preceding a `paragraph-start' line. From a program, second arg INSERT specifies whether to do this; it can be `never' to change nothing, t or `always' to force marking, `guess' to try to do the right thing with no questions, nil or anything else to ask the user. Newlines not marked hard are called "soft", and are always internal to paragraphs. The fill functions insert and delete only soft newlines.Fsentence-end Return the regexp describing the end of a sentence. This function returns either the value of the variable `sentence-end' if it is non-nil, or the default value constructed from the variables `sentence-end-base', `sentence-end-double-space', `sentence-end-without-period' and `sentence-end-without-space'. The default value specifies that in order to be recognized as the end of a sentence, the ending period, question mark, or exclamation point must be followed by two spaces, with perhaps some closing delimiters in between. See Info node `(elisp)Standard Regexps'.Fforward-paragraph Move forward to end of paragraph. With argument ARG, do it ARG times; a negative argument ARG = -N means move backward N paragraphs. A line which `paragraph-start' matches either separates paragraphs (if `paragraph-separate' matches it also) or is the first line of a paragraph. A paragraph end is the beginning of a line which is not part of the paragraph to which the end of the previous line belongs, or the end of the buffer. Returns the count of paragraphs left to move.Fbackward-paragraph Move backward to start of paragraph. With argument ARG, do it ARG times; a negative argument ARG = -N means move forward N paragraphs. A paragraph start is the beginning of a line which is a `paragraph-start' or which is ordinary text and follows a `paragraph-separate'ing line; except: if the first real line of a paragraph is preceded by a blank line, the paragraph starts at that blank line. See `forward-paragraph' for more information.Fmark-paragraph Put point at beginning of this paragraph, mark at end. The paragraph marked is the one that contains point or follows point. With argument ARG, puts mark at end of a following paragraph, so that the number of paragraphs marked equals ARG. If ARG is negative, point is put at end of this paragraph, mark is put at beginning of this or a previous paragraph. Interactively (or if ALLOW-EXTEND is non-nil), if this command is repeated or (in Transient Mark mode) if the mark is active, it marks the next ARG paragraphs after the ones already marked.Fkill-paragraph Kill forward to end of paragraph. With arg N, kill forward to Nth end of paragraph; negative arg -N means kill backward to Nth start of paragraph.Fbackward-kill-paragraph Kill back to start of paragraph. With arg N, kill back to Nth start of paragraph; negative arg -N means kill forward to Nth end of paragraph.Ftranspose-paragraphs Interchange the current paragraph with the next one. With prefix argument ARG a non-zero integer, moves the current paragraph past ARG paragraphs, leaving point after the current paragraph. If ARG is positive, moves the current paragraph forwards, if ARG is negative moves it backwards. If ARG is zero, exchanges the current paragraph with the one containing the mark.Fforward-sentence Move forward to next end of sentence. With argument, repeat. With negative argument, move backward repeatedly to start of sentence. The variable `sentence-end' is a regular expression that matches ends of sentences. Also, every paragraph boundary terminates sentences as well.Frepunctuate-sentences Put two spaces at the end of sentences from point to the end of buffer. It works using `query-replace-regexp'.Fbackward-sentence Move backward to start of sentence. With arg, do it arg times. See `forward-sentence' for more information.Fkill-sentence Kill from point to end of sentence. With arg, repeat; negative arg -N means kill back to Nth start of sentence.Fbackward-kill-sentence Kill back from point to start of sentence. With arg, repeat, or kill forward to Nth end of sentence if negative arg -N.Fmark-end-of-sentence Put mark at end of sentence. Arg works as in `forward-sentence'. If this command is repeated, it marks the next ARG sentences after the ones already marked.Ftranspose-sentences Interchange the current sentence with the next one. With prefix argument ARG a non-zero integer, moves the current sentence past ARG sentences, leaving point after the current sentence. If ARG is positive, moves the current sentence forwards, if ARG is negative moves it backwards. If ARG is zero, exchanges the current sentence with the one containing the mark.Stext-mode.elc Vtext-mode-hook Normal hook run when entering Text mode and many related modes.Vtext-mode-variant Non-nil if this buffer's major mode is a variant of Text mode. Use (derived-mode-p \='text-mode) instead.Vtext-mode-syntax-table Syntax table used while in `text-mode'.Vtext-mode-map Keymap for `text-mode'. Many other modes, such as `mail-mode', `outline-mode' and `indented-text-mode', inherit all the commands defined in this map.Ftext-mode Major mode for editing text written for humans to read. In this mode, paragraphs are delimited only by blank or white lines. You can thus get the full benefit of adaptive filling (see the variable `adaptive-fill-mode'). \{text-mode-map} Turning on Text mode runs the normal hook `text-mode-hook'.Fparagraph-indent-text-mode Major mode for editing text, with leading spaces starting a paragraph. In this mode, you do not need blank lines between paragraphs when the first line of the following paragraph starts with whitespace. `paragraph-indent-minor-mode' provides a similar facility as a minor mode. Special commands: \{text-mode-map} Turning on Paragraph-Indent Text mode runs the normal hooks `text-mode-hook' and `paragraph-indent-text-mode-hook'.Vparagraph-indent-minor-mode Non-nil if Paragraph-Indent minor mode is enabled. Use the command `paragraph-indent-minor-mode' to change this variable.Fparagraph-indent-minor-mode Minor mode for editing text, with leading spaces starting a paragraph. In this mode, you do not need blank lines between paragraphs when the first line of the following paragraph starts with whitespace, as with `paragraph-indent-text-mode'. Turning on Paragraph-Indent minor mode runs the normal hook `paragraph-indent-text-mode-hook'.Ftext-mode-hook-identify Mark that this mode has run `text-mode-hook'. This is how `toggle-text-mode-auto-fill' knows which buffers to operate on.Ftoggle-text-mode-auto-fill Toggle whether to use Auto Fill in Text mode and related modes. This command affects all buffers that use modes related to Text mode, both existing buffers and buffers that you subsequently create.Fcenter-paragraph Center each nonblank line in the paragraph at or after point. See `center-line' for more info.Fcenter-region Center each nonblank line starting in the region. See `center-line' for more info.Fcenter-line Center the line point is on, within the width specified by `fill-column'. This means adjusting the indentation so that it equals the distance between the end of the text and `fill-column'. The argument NLINES says how many lines to center.Stool-bar.elc Ftool-bar-mode Toggle the tool bar in all graphical frames (Tool Bar mode). With a prefix argument ARG, enable Tool Bar mode if ARG is positive, and disable it otherwise. If called from Lisp, enable Tool Bar mode if ARG is omitted or nil. See `tool-bar-add-item' and `tool-bar-add-item-from-menu' for conveniently adding tool bar items.Ftoggle-tool-bar-mode-from-frame Toggle tool bar on or off, based on the status of the current frame. See `tool-bar-mode' for more information.Vtool-bar-map Keymap for the tool bar. Define this locally to override the global tool bar.Ftool-bar-make-keymap Generate an actual keymap from `tool-bar-map'. Its main job is to figure out which images to use based on the display's color capability and based on the available image libraries.Ftool-bar-make-keymap-1 Generate an actual keymap from `tool-bar-map', without caching.Ftool-bar-add-item Add an item to the tool bar. ICON names the image, DEF is the key definition and KEY is a symbol for the fake function key in the menu keymap. Remaining arguments PROPS are additional items to add to the menu item specification. See Info node `(elisp)Tool Bar'. Items are added from left to right. ICON is the base name of a file containing the image to use. The function will first try to use low-color/ICON.xpm if `display-color-cells' is less or equal to 256, then ICON.xpm, then ICON.pbm, and finally ICON.xbm, using `find-image'. Use this function only to make bindings in the global value of `tool-bar-map'. To define items in any other map, use `tool-bar-local-item'.Ftool-bar--image-expression Return an expression that evaluates to an image spec for ICON.Ftool-bar-local-item Add an item to the tool bar in map MAP. ICON names the image, DEF is the key definition and KEY is a symbol for the fake function key in the menu keymap. Remaining arguments PROPS are additional items to add to the menu item specification. See Info node `(elisp)Tool Bar'. Items are added from left to right. ICON is the base name of a file containing the image to use. The function will first try to use low-color/ICON.xpm if `display-color-cells' is less or equal to 256, then ICON.xpm, then ICON.pbm, and finally ICON.xbm, using `find-image'.Ftool-bar-add-item-from-menu Define tool bar binding for COMMAND in keymap MAP using the given ICON. This makes a binding for COMMAND in `tool-bar-map', copying its binding from the menu bar in MAP (which defaults to `global-map'), but modifies the binding by adding an image specification for ICON. It finds ICON just like `tool-bar-add-item'. PROPS are additional properties to add to the binding. MAP must contain appropriate binding for `[menu-bar]' which holds a keymap. Use this function only to make bindings in the global value of `tool-bar-map'. To define items in any other map, use `tool-bar-local-item-from-menu'.Ftool-bar-local-item-from-menu Define local tool bar binding for COMMAND using the given ICON. This makes a binding for COMMAND in IN-MAP, copying its binding from the menu bar in FROM-MAP (which defaults to `global-map'), but modifies the binding by adding an image specification for ICON. It finds ICON just like `tool-bar-add-item'. PROPS are additional properties to add to the binding. FROM-MAP must contain appropriate binding for `[menu-bar]' which holds a keymap.Stooltip.elc Ftooltip-mode Toggle Tooltip mode. With a prefix argument ARG, enable Tooltip mode if ARG is positive, and disable it otherwise. If called from Lisp, enable the mode if ARG is omitted or nil. When this global minor mode is enabled, Emacs displays help text (e.g. for buttons and menu items that you put the mouse on) in a pop-up window. When Tooltip mode is disabled, Emacs displays help text in the echo area, instead of making a pop-up window.Vtooltip-functions Functions to call to display tooltips. Each function is called with one argument EVENT which is a copy of the last mouse movement event that occurred. If one of these functions displays the tooltip, it should return non-nil and the rest are not called.Vtooltip-timeout-id The id of the timeout started when Emacs becomes idle.Vtooltip-last-mouse-motion-event A copy of the last mouse motion event seen.Vtooltip-hide-time Time when the last tooltip was hidden.Ftooltip-event-buffer Return the buffer over which event EVENT occurred. This might return nil if the event did not occur over a buffer.Ftooltip-delay Return the delay in seconds for the next tooltip.Ftooltip-cancel-delayed-tip Disable the tooltip timeout.Ftooltip-start-delayed-tip Add a one-shot timeout to call function `tooltip-timeout'.Ftooltip-timeout Function called when timer with id `tooltip-timeout-id' fires.Ftooltip-set-param Change the value of KEY in alist ALIST to VALUE. If there's no association for KEY in ALIST, add one, otherwise change the existing association. Value is the resulting alist.Ftooltip-show Show a tooltip window displaying TEXT. Text larger than `x-max-tooltip-size' is clipped. If the alist in `tooltip-frame-parameters' includes `left' and `top' parameters, they determine the x and y position where the tooltip is displayed. Otherwise, the tooltip pops at offsets specified by `tooltip-x-offset' and `tooltip-y-offset' from the current mouse position. Optional second arg USE-ECHO-AREA non-nil means to show tooltip in echo area.Ftooltip-hide Hide a tooltip, if one is displayed. Value is non-nil if tooltip was open.Ftooltip-identifier-from-point Extract the identifier at POINT, if any. Value is nil if no identifier exists at point. Identifier extraction is based on the current syntax table.Ftooltip-expr-to-print Return an expression that should be printed for EVENT. If a region is active and the mouse is inside the region, print the region. Otherwise, figure out the identifier around the point where the mouse is.Ftooltip-process-prompt-regexp Return regexp matching the prompt of PROCESS at the end of a string. The prompt is taken from the value of `comint-prompt-regexp' in the buffer of PROCESS.Ftooltip-strip-prompt Return OUTPUT with any prompt of PROCESS stripped from its end.Vtooltip-help-message The last help message received via `show-help-function'. This is used by `tooltip-show-help' and `tooltip-show-help-non-mode'.Vtooltip-previous-message The previous content of the echo area.Ftooltip-show-help-non-mode Function installed as `show-help-function' when Tooltip mode is off. It is also called if Tooltip mode is on, for text-only displays.Ftooltip-show-help Function installed as `show-help-function'. MSG is either a help string to display, or nil to cancel the display.Ftooltip-help-tips Hook function to display a help tooltip. This is installed on the hook `tooltip-functions', which is run when the timer with id `tooltip-timeout-id' fires. Value is non-nil if this function handled the tip.Suniquify.elc Vuniquify-list-buffers-directory-modes List of modes for which uniquify should obey `list-buffers-directory'. That means that when `buffer-file-name' is set to nil, `list-buffers-directory' contains the name of the directory which the buffer is visiting.Funiquify-item-p--cmacro compiler-macro for inlining `uniquify-item-p'. (fn CL-WHOLE-ARG CL-X)Funiquify-item-p (fn CL-X)Funiquify-item-base--cmacro compiler-macro for inlining `uniquify-item-base'. (fn CL-WHOLE-ARG CL-X)Funiquify-item-base Access slot "base" of `(uniquify-item (:constructor nil) (:copier nil) (:constructor uniquify-make-item (base dirname buffer &optional proposed)))' struct CL-X. (fn CL-X)Funiquify-item-dirname--cmacro compiler-macro for inlining `uniquify-item-dirname'. (fn CL-WHOLE-ARG CL-X)Funiquify-item-dirname Access slot "dirname" of `(uniquify-item (:constructor nil) (:copier nil) (:constructor uniquify-make-item (base dirname buffer &optional proposed)))' struct CL-X. (fn CL-X)Funiquify-item-buffer--cmacro compiler-macro for inlining `uniquify-item-buffer'. (fn CL-WHOLE-ARG CL-X)Funiquify-item-buffer Access slot "buffer" of `(uniquify-item (:constructor nil) (:copier nil) (:constructor uniquify-make-item (base dirname buffer &optional proposed)))' struct CL-X. (fn CL-X)Funiquify-item-proposed--cmacro compiler-macro for inlining `uniquify-item-proposed'. (fn CL-WHOLE-ARG CL-X)Funiquify-item-proposed Access slot "proposed" of `(uniquify-item (:constructor nil) (:copier nil) (:constructor uniquify-make-item (base dirname buffer &optional proposed)))' struct CL-X. (fn CL-X)Funiquify-make-item--cmacro compiler-macro for inlining `uniquify-make-item'. (fn CL-WHOLE-ARG BASE DIRNAME BUFFER &optional PROPOSED)Funiquify-make-item Constructor for objects of type `uniquify-item'. (fn BASE DIRNAME BUFFER &optional PROPOSED)Vuniquify-managed Non-nil if the name of this buffer is managed by uniquify. It actually holds the list of `uniquify-item's corresponding to the conflict.Funiquify-buffer-base-name Return the base name of the current buffer. Return nil if the buffer is not managed by uniquify.Funiquify-rationalize-file-buffer-names Make file buffer names unique by adding segments from file name. If `uniquify-min-dir-content' > 0, always pulls that many file name elements. Arguments BASE, DIRNAME, and NEWBUF specify the new buffer that causes this rationalization. (fn BASE DIRNAME NEWBUF)Funiquify-buffer-file-name Return name of directory, file BUFFER is visiting, or nil if none. Works on ordinary file-visiting buffers and buffers whose mode is mentioned in `uniquify-list-buffers-directory-modes', otherwise returns nil. (fn BUFFER)Funiquify-rerationalize-w/o-cb Re-rationalize the buffers in FIX-LIST, but ignoring `current-buffer'. (fn FIX-LIST)Funiquify-rationalize (fn FIX-LIST)Funiquify-item-greaterp (fn ITEM1 ITEM2)Funiquify-rationalize-a-list (fn FIX-LIST &optional DEPTH)Funiquify-get-proposed-name (fn BASE DIRNAME &optional DEPTH)Funiquify-rationalize-conflicting-sublist (fn CONF-LIST OLD-NAME DEPTH)Funiquify-rename-buffer (fn ITEM NEWNAME)Funiquify-maybe-rerationalize-w/o-cb Re-rationalize buffer names, ignoring current buffer.Funiquify-kill-buffer-function Re-rationalize buffer names, ignoring current buffer. For use on `kill-buffer-hook'.Funiquify--rename-buffer-advice Uniquify buffer names with parts of directory name. (fn RB-FUN NEWNAME &optional UNIQUE &rest ARGS)Funiquify--create-file-buffer-advice Uniquify buffer names with parts of directory name. (fn CFB-FUN FILENAME &rest ARGS)Funiquify-unload-function Unload the uniquify library.Sediff-hook.elc Svc-hooks.elc Fvc-mode Version Control minor mode. This minor mode is automatically activated whenever you visit a file under control of one of the revision control systems in `vc-handled-backends'. VC commands are globally reachable under the prefix `\[vc-prefix-map]': \{vc-prefix-map}Vvc-file-prop-obarray Obarray for per-file properties.Fvc-file-setprop Set per-file VC PROPERTY for FILE to VALUE.Fvc-file-getprop Get per-file VC PROPERTY for FILE.Fvc-file-clearprops Clear all VC properties of FILE.Fvc-make-backend-sym Return BACKEND-specific version of VC symbol SYM.Fvc-find-backend-function Return BACKEND-specific implementation of FUN. If there is no such implementation, return the default implementation; if that doesn't exist either, return nil.Fvc-call-backend Call for BACKEND the implementation of FUNCTION-NAME with the given ARGS. Calls (apply \='vc-BACKEND-FUN ARGS) if vc-BACKEND-FUN exists (after trying to find it in vc-BACKEND.el) and else calls (apply \='vc-default-FUN BACKEND ARGS) It is usually called via the `vc-call' macro.Fvc-call A convenience macro for calling VC backend functions. Functions called by this macro must accept FILE as the first argument. ARGS specifies any additional arguments. FUN should be unquoted. BEWARE!! FILE is evaluated twice!!Fvc-parse-buffer Find PATTERN in the current buffer and return its Ith submatch.Fvc-insert-file Insert the contents of FILE into the current buffer. Optional argument LIMIT is a regexp. If present, the file is inserted in chunks of size BLOCKSIZE (default 8 kByte), until the first occurrence of LIMIT is found. Anything from the start of that occurrence to the end of the buffer is then deleted. The function returns non-nil if FILE exists and its contents were successfully inserted.Fvc-find-root Find the root of a checked out project. The function walks up the directory tree from FILE looking for WITNESS. If WITNESS if not found, return nil, otherwise return the root.Fvc-registered Return non-nil if FILE is registered in a version control system. This function performs the check each time it is called. To rely on the result of a previous call, use `vc-backend' instead. If the file was previously registered under a certain backend, then that backend is tried first.Fvc-backend Return the version control type of FILE-OR-LIST, nil if it's not registered. If the argument is a list, the files must all have the same back end.Fvc-backend-subdirectory-name Return where the repository for the current directory is kept.Fvc-checkout-model Indicate how FILES are checked out. If FILES are not registered, this function always returns nil. For registered files, the possible values are: `implicit' FILES are always writable, and checked out `implicitly' when the user saves the first changes to the file. `locking' FILES are read-only if up-to-date; user must type \[vc-next-action] before editing. Strict locking is assumed. `announce' FILES are read-only if up-to-date; user must type \[vc-next-action] before editing. But other users may be editing at the same time.Fvc-user-login-name Return the name under which the user accesses the given FILE.Fvc-state Return the version control state of FILE. A return of nil from this function means we have no information on the status of this file. Otherwise, the value returned is one of: `up-to-date' The working file is unmodified with respect to the latest version on the current branch, and not locked. `edited' The working file has been edited by the user. If locking is used for the file, this state means that the current version is locked by the calling user. This status should *not* be reported for files which have a changed mtime but the same content as the repo copy. USER The current version of the working file is locked by some other USER (a string). `needs-update' The file has not been edited by the user, but there is a more recent version on the current branch stored in the repository. `needs-merge' The file has been edited by the user, and there is also a more recent version on the current branch stored in the repository. This state can only occur if locking is not used for the file. `unlocked-changes' The working version of the file is not locked, but the working file has been changed with respect to that version. This state can only occur for files with locking; it represents an erroneous condition that should be resolved by the user (vc-next-action will prompt the user to do it). `added' Scheduled to go into the repository on the next commit. Often represented by vc-working-revision = "0" in VCSes with monotonic IDs like Subversion and Mercurial. `removed' Scheduled to be deleted from the repository on next commit. `conflict' The file contains conflicts as the result of a merge. For now the conflicts are text conflicts. In the future this might be extended to deal with metadata conflicts too. `missing' The file is not present in the file system, but the VC system still tracks it. `ignored' The file showed up in a dir-status listing with a flag indicating the version-control system is ignoring it, Note: This property is not set reliably (some VCSes don't have useful directory-status commands) so assume that any file with vc-state nil might be ignorable without VC knowing it. `unregistered' The file is not under version control.Fvc-state-refresh Quickly recompute the `state' of FILE.Fvc-up-to-date-p Convenience function that checks whether `vc-state' of FILE is `up-to-date'.Fvc-working-revision Return the repository version from which FILE was checked out. If FILE is not registered, this function always returns nil.Fvc-default-registered Check if FILE is registered in BACKEND using vc-BACKEND-master-templates.Fvc-check-master-templates Return non-nil if there is a master corresponding to FILE. TEMPLATES is a list of strings or functions. If an element is a string, it must be a control string as required by `format', with two string placeholders, such as "%sRCS/%s,v". The directory part of FILE is substituted for the first placeholder, the basename of FILE for the second. If a file with the resulting name exists, it is taken as the master of FILE, and returned. If an element of TEMPLATES is a function, it is called with the directory part and the basename of FILE as arguments. It should return non-nil if it finds a master; that value is then returned by this function.Fvc-default-make-version-backups-p Return non-nil if unmodified versions should be backed up locally. The default is to switch off this feature.Fvc-version-backup-file-name Return a backup file name for REV or the current version of FILE. If MANUAL is non-nil it means that a name for backups created by the user should be returned; if REGEXP is non-nil that means to return a regexp for matching all such backup files, regardless of the version.Fvc-delete-automatic-version-backups Delete all existing automatic version backups for FILE.Fvc-make-version-backup Make a backup copy of FILE, which is assumed in sync with the repository. Before doing that, check if there are any old backups and get rid of them.Fvc-before-save Function to be called by `basic-save-buffer' (in files.el).Vvc-dir-buffers List of vc-dir buffers.Fvc-after-save Function to be called by `basic-save-buffer' (in files.el).Fvc-mode-line Set `vc-mode' to display type of version control for FILE. The value is set in the current buffer, which should be the buffer visiting FILE. If BACKEND is passed use it as the VC backend when computing the result.Fvc-default-mode-line-string Return a string for `vc-mode-line' to put in the mode line for FILE. Format: "BACKEND-REV" if the file is up-to-date "BACKEND:REV" if the file is edited (or locked by the calling user) "BACKEND:LOCKER:REV" if the file is locked by somebody else "BACKEND@REV" if the file was locally added "BACKEND!REV" if the file contains conflicts or was removed "BACKEND?REV" if the file is under VC, but is missing This function assumes that the file is registered.Fvc-follow-link If current buffer visits a symbolic link, visit the real file. If the real file is already visited in another buffer, make that buffer current, and kill the buffer that visits the link.Fvc-refresh-state Refresh the VC state of the current buffer's file. This command is more thorough than `vc-state-refresh', in that it also supports switching a back-end or removing the file from VC. In the latter case, VC mode is deactivated for this buffer.Fvc-kill-buffer-hook Discard VC info about a file when we kill its buffer.Sversion.elc Vemacs-major-version Major version number of this version of Emacs. This variable first existed in version 19.23.Vemacs-minor-version Minor version number of this version of Emacs. This variable first existed in version 19.23.Vemacs-build-system Name of the system on which Emacs was built, or nil if not available.Vemacs-build-time Time at which Emacs was dumped out, or nil if not available.Vemacs-build-number The build number of this version of Emacs. This is an integer that increments each time Emacs is built in a given directory (without cleaning). This is likely to only be relevant when developing Emacs.Femacs-version Return string describing the version of Emacs that is running. If optional argument HERE is non-nil, insert string at point. Don't use this function in programs to choose actions according to the system configuration; look at `system-configuration' instead.Vemacs-repository-version String giving the repository revision from which this Emacs was built. Value is nil if Emacs was not built from a repository checkout, or if we could not determine the revision.Femacs-repository-version-git Ask git itself for the version information for directory DIR.Femacs-repository-get-version Try to return as a string the repository revision of the Emacs sources. The format of the returned string is dependent on the VCS in use. Value is nil if the sources do not seem to be under version control, or if we could not determine the revision. Note that this reports on the current state of the sources, which may not correspond to the running Emacs. Optional argument DIR is a directory to use instead of `source-directory'. Optional argument EXTERNAL is ignored.Sw32-fns.elc Fw32-shell-name Return the name of the shell being used.Fw32-shell-dos-semantics Return non-nil if the interactive shell being used expects MS-DOS shell semantics.Fw32-check-shell-configuration Check the configuration of shell variables on Windows. This function is invoked after loading the init files and processing the command line arguments. It issues a warning if the user or site has configured the shell with inappropriate settings.Vw32-valid-locales List of locale ids known to be supported.Fw32-list-locales List the name and id of all locales supported by Windows.Fw32-convert-standard-filename Convert a standard file's name to something suitable for MS-Windows. This means to guarantee valid names and perhaps to canonicalize certain patterns. This function is called by `convert-standard-filename'. Replace invalid characters and turn Cygwin names into native names.Fw32-set-system-coding-system Set the coding system used by the Windows system to CODING-SYSTEM. This is used for things like passing font names with non-ASCII characters in them to the system. For a list of possible values of CODING-SYSTEM, use \[list-coding-systems]. This function is provided for backward compatibility, since `w32-system-coding-system' is now an alias for `locale-coding-system'.Fw32-add-charset-info Function to add character sets to display with Windows fonts. Creates entries in `w32-charset-info-alist'. XLFD-CHARSET is a string which will appear in the XLFD font name to identify the character set. WINDOWS-CHARSET is a symbol identifying the Windows character set this maps to. For the list of possible values, see the documentation for `w32-charset-info-alist'. CODEPAGE can be a numeric codepage that Windows uses to display the character set, t for Unicode output with no codepage translation or nil for 8 bit output with no translation.Fw32-batch-update-autoloads Like `batch-update-autoloads', but takes the name of the autoloads file from the command line. This is required because some Windows build environments, such as MSYS, munge command-line arguments that include file names to a horrible mess that Emacs is unable to cope with.Fw32-append-code-lines Append non-empty non-comment lines in the file EXTRA to the file ORIG. This function saves all buffers and kills the Emacs session, without asking for any permissions. This is required because the Windows build environment is not required to include Sed, which is used by leim/Makefile.in to do the job.Sw32-vars.elc Vw32-list-proportional-fonts Include proportional fonts in the default font dialog.Swidget.elc Fdefine-widget Define a new widget type named NAME from CLASS. NAME and CLASS should both be symbols, CLASS should be one of the existing widget types, or nil to create the widget from scratch. After the new widget has been defined, the following two calls will create identical widgets: * (widget-create NAME) * (apply #\='widget-create CLASS ARGS) The third argument DOC is a documentation string for the widget.Swindow.elc Finternal--after-save-selected-window (fn STATE)Fsave-selected-window Execute BODY, then select the previously selected window. The value returned is the value of the last form in BODY. This macro saves and restores the selected window, as well as the selected window in each frame. If the previously selected window is no longer live, then whatever window is selected at the end of BODY remains selected. If the previously selected window of some frame is no longer live at the end of BODY, that frame's selected window is left alone. This macro saves and restores the current buffer, since otherwise its normal operation could make a different buffer current. The order of recently selected windows and the buffer list ordering are not altered by this macro (unless they are altered in BODY). (fn &rest BODY)Vtemp-buffer-window-setup-hook Normal hook run by `with-temp-buffer-window' before buffer display. This hook is run by `with-temp-buffer-window' with the buffer to be displayed current.Vtemp-buffer-window-show-hook Normal hook run by `with-temp-buffer-window' after buffer display. This hook is run by `with-temp-buffer-window' with the buffer displayed and current and its window selected.Ftemp-buffer-window-setup Set up temporary buffer specified by BUFFER-OR-NAME. Return the buffer. (fn BUFFER-OR-NAME)Ftemp-buffer-window-show Show temporary buffer BUFFER in a window. Return the window showing BUFFER. Pass ACTION as action argument to `display-buffer'. (fn BUFFER &optional ACTION)Fwith-temp-buffer-window Bind `standard-output' to BUFFER-OR-NAME, eval BODY, show the buffer. BUFFER-OR-NAME must specify either a live buffer, or the name of a buffer (if it does not exist, this macro creates it). Make the buffer specified by BUFFER-OR-NAME empty before running BODY and bind `standard-output' to that buffer, so that output generated with `prin1' and similar functions in BODY goes into that buffer. Do not make that buffer current for running the forms in BODY. Use `with-current-buffer-window' instead if you need to run BODY with that buffer current. At the end of BODY, mark the specified buffer unmodified and read-only, and display it in a window (but do not select it). The display happens by calling `display-buffer' passing it the ACTION argument. If `temp-buffer-resize-mode' is enabled, the corresponding window may be resized automatically. Return the value returned by BODY, unless QUIT-FUNCTION specifies a function. In that case, run that function with two arguments - the window showing the specified buffer and the value returned by BODY - and return the value returned by that function. If the buffer is displayed on a new frame, the window manager may decide to select that frame. In that case, it's usually a good strategy if QUIT-FUNCTION selects the window showing the buffer before reading any value from the minibuffer; for example, when asking a `yes-or-no-p' question. This runs the hook `temp-buffer-window-setup-hook' before BODY, with the specified buffer temporarily current. It runs the hook `temp-buffer-window-show-hook' after displaying the buffer, with that buffer temporarily current, and the window that was used to display it temporarily selected. This construct is similar to `with-output-to-temp-buffer' but, neither runs `temp-buffer-setup-hook' which usually puts the buffer in Help mode, nor `temp-buffer-show-function' (the ACTION argument replaces this). (fn BUFFER-OR-NAME ACTION QUIT-FUNCTION &rest BODY)Fwith-current-buffer-window Evaluate BODY with a buffer BUFFER-OR-NAME current and show that buffer. This construct is like `with-temp-buffer-window' but unlike that, makes the buffer specified by BUFFER-OR-NAME current for running BODY. (fn BUFFER-OR-NAME ACTION QUIT-FUNCTION &rest BODY)Fwith-displayed-buffer-window Show a buffer BUFFER-OR-NAME and evaluate BODY in that buffer. This construct is like `with-current-buffer-window' but unlike that, displays the buffer specified by BUFFER-OR-NAME before running BODY. (fn BUFFER-OR-NAME ACTION QUIT-FUNCTION &rest BODY)Fwindow-right Return WINDOW's right sibling. Return nil if WINDOW is the root window of its frame. WINDOW can be any window. (fn WINDOW)Fwindow-left Return WINDOW's left sibling. Return nil if WINDOW is the root window of its frame. WINDOW can be any window. (fn WINDOW)Fwindow-child Return WINDOW's first child window. WINDOW can be any window. (fn WINDOW)Fwindow-child-count Return number of WINDOW's child windows. WINDOW can be any window. (fn WINDOW)Fwindow-last-child Return last child window of WINDOW. WINDOW can be any window. (fn WINDOW)Fwindow-normalize-buffer Return buffer specified by BUFFER-OR-NAME. BUFFER-OR-NAME must be a live buffer, a string naming a live buffer or nil which means to return the current buffer. This function is commonly used to process the (usually optional) "BUFFER-OR-NAME" argument of window related functions where nil stands for the current buffer. (fn BUFFER-OR-NAME)Fwindow-normalize-frame Return frame specified by FRAME. FRAME must be a live frame or nil which means to return the selected frame. This function is commonly used to process the (usually optional) "FRAME" argument of window and frame related functions where nil stands for the selected frame. (fn FRAME)Fwindow-normalize-window Return window specified by WINDOW. If WINDOW is nil, return the selected window. Otherwise, if WINDOW is a live or an internal window, return WINDOW; if LIVE-ONLY is non-nil, return WINDOW for a live window only. Otherwise, signal an error. This function is commonly used to process the (usually optional) "WINDOW" argument of window related functions where nil stands for the selected window. (fn WINDOW &optional LIVE-ONLY)Fframe-char-size Return the value of `frame-char-height' for WINDOW-OR-FRAME. If WINDOW-OR-FRAME is a live frame, return the value of `frame-char-height' for that frame. If WINDOW-OR-FRAME is a valid window, return the value of `frame-char-height' for that window's frame. In any other case, return the value of `frame-char-height' for the selected frame. Optional argument HORIZONTAL non-nil means to return the value of `frame-char-width' for WINDOW-OR-FRAME. (fn &optional WINDOW-OR-FRAME HORIZONTAL)Vignore-window-parameters If non-nil, standard functions ignore window parameters. The functions currently affected by this are `split-window', `delete-window', `delete-other-windows' and `other-window'. An application may bind this to a non-nil value around calls to these functions to inhibit processing of window parameters.Vwindow-safe-min-height The absolute minimum number of lines of any window. Anything less might crash Emacs.Fwindow-safe-min-pixel-height Return the absolute minimum pixel height of WINDOW. (fn &optional WINDOW)Fwindow-min-pixel-height Return the minimum pixel height of window WINDOW. (fn &optional WINDOW)Vwindow-safe-min-width The absolute minimum number of columns of a window. Anything less might crash Emacs.Fwindow-safe-min-pixel-width Return the absolute minimum pixel width of WINDOW. (fn &optional WINDOW)Fwindow-min-pixel-width Return the minimum pixel width of window WINDOW. (fn &optional WINDOW)Fwindow-safe-min-pixel-size Return the absolute minimum pixel height of WINDOW. Optional argument HORIZONTAL non-nil means return the absolute minimum pixel width of WINDOW. (fn &optional WINDOW HORIZONTAL)Fwindow-min-pixel-size Return the minimum pixel height of WINDOW. Optional argument HORIZONTAL non-nil means return the minimum pixel width of WINDOW. (fn &optional WINDOW HORIZONTAL)Fwindow-combined-p Return non-nil if WINDOW has siblings in a given direction. WINDOW must be a valid window and defaults to the selected one. HORIZONTAL determines a direction for the window combination. If HORIZONTAL is omitted or nil, return non-nil if WINDOW is part of a vertical window combination. If HORIZONTAL is non-nil, return non-nil if WINDOW is part of a horizontal window combination. (fn &optional WINDOW HORIZONTAL)Fwindow-combination-p Return WINDOW's first child if WINDOW is a vertical combination. WINDOW can be any window and defaults to the selected one. Optional argument HORIZONTAL non-nil means return WINDOW's first child if WINDOW is a horizontal combination. (fn &optional WINDOW HORIZONTAL)Fwindow-combinations Return largest number of windows vertically arranged within WINDOW. WINDOW must be a valid window and defaults to the selected one. If HORIZONTAL is non-nil, return the largest number of windows horizontally arranged within WINDOW. (fn WINDOW &optional HORIZONTAL)Fwalk-window-tree-1 Helper function for `walk-window-tree' and `walk-window-subtree'. (fn FUN WALK-WINDOW-TREE-WINDOW ANY &optional SUB-ONLY)Fwalk-window-tree Run function FUN on each live window of FRAME. FUN must be a function with one argument - a window. FRAME must be a live frame and defaults to the selected one. ANY, if non-nil, means to run FUN on all live and internal windows of FRAME. Optional argument MINIBUF t means run FUN on FRAME's minibuffer window even if it isn't active. MINIBUF nil or omitted means run FUN on FRAME's minibuffer window only if it's active. In both cases the minibuffer window must be part of FRAME. MINIBUF neither nil nor t means never run FUN on the minibuffer window. This function performs a pre-order, depth-first traversal of the window tree. If FUN changes the window tree, the result is unpredictable. (fn FUN &optional FRAME ANY MINIBUF)Fwalk-window-subtree Run function FUN on the subtree of windows rooted at WINDOW. WINDOW defaults to the selected window. FUN must be a function with one argument - a window. By default, run FUN only on live windows of the subtree. If the optional argument ANY is non-nil, run FUN on all live and internal windows of the subtree. If WINDOW is live, run FUN on WINDOW only. This function performs a pre-order, depth-first traversal of the subtree rooted at WINDOW. If FUN changes that tree, the result is unpredictable. (fn FUN &optional WINDOW ANY)Fwindow-with-parameter Return first window on FRAME with PARAMETER non-nil. FRAME defaults to the selected frame. Optional argument VALUE non-nil means only return a window whose window-parameter value for PARAMETER equals VALUE (comparison is done with `equal'). Optional argument ANY non-nil means consider internal windows too. Optional argument MINIBUF t means consider FRAME's minibuffer window even if it isn't active. MINIBUF nil or omitted means consider FRAME's minibuffer window only if it's active. In both cases the minibuffer window must be part of FRAME. MINIBUF neither nil nor t means never consider the minibuffer window. (fn PARAMETER &optional VALUE FRAME ANY MINIBUF)Fwindow-atom-root Return root of atomic window WINDOW is a part of. WINDOW must be a valid window and defaults to the selected one. Return nil if WINDOW is not part of an atomic window. (fn &optional WINDOW)Fwindow-make-atom Make WINDOW an atomic window. WINDOW must be an internal window. Return WINDOW. (fn WINDOW)Fdisplay-buffer-in-atom-window Display BUFFER in an atomic window. This function displays BUFFER in a new window that will be combined with an existing window to form an atomic window. If the existing window is already part of an atomic window, add the new window to that atomic window. Operations like `split-window' or `delete-window', when applied to a constituent of an atomic window, are applied atomically to the root of that atomic window. ALIST is an association list of symbols and values. The following symbols can be used. `window' specifies the existing window the new window shall be combined with. Use `window-atom-root' to make the new window a sibling of an atomic window's root. If an internal window is specified here, all children of that window become part of the atomic window too. If no window is specified, the new window becomes a sibling of the selected window. By default, the `window-atom' parameter of the existing window is set to `main' provided it is live and was not set before. `side' denotes the side of the existing window where the new window shall be located. Valid values are `below', `right', `above' and `left'. The default is `below'. By default, the `window-atom' parameter of the new window is set to this value. The return value is the new window, nil when creating that window failed. (fn BUFFER ALIST)Fwindow--atom-check-1 Subroutine of `window--atom-check'. (fn WINDOW)Fwindow--atom-check Check atomicity of all windows on FRAME. FRAME defaults to the selected frame. If an atomic window is wrongly configured, reset the atomicity of all its windows on FRAME to nil. An atomic window is wrongly configured if it has no child windows or one of its child windows is not atomic. (fn &optional FRAME)Vwindow--sides-shown Non-nil if this buffer was shown in a side window once. If this variable is non-nil in a buffer, `switch-to-prev-buffer' and `switch-to-next-buffer' will refrain from showing this buffer within the main window area. `display-buffer-in-side-window' sets this variable automatically. Killing buffer local variables after showing the buffer in a side window annihilates any effect provided by this variable.Vwindow--sides-inhibit-check Non-nil means inhibit any checks on side windows.Fwindow--sides-reverse-on-frame-p Return non-nil when side windows should appear reversed on FRAME. This uses some heuristics to guess the user's intentions when the selected window of FRAME is a side window . (fn FRAME)Fwindow-main-window Return the main window of specified FRAME. The optional argument FRAME must be a live frame and defaults to the selected one. If FRAME has no side windows, return FRAME's root window. Otherwise, return either an internal non-side window such that all other non-side windows on FRAME descend from it, or the single live non-side window of FRAME. (fn &optional FRAME)Fwindow--make-major-side-window-next-to Return window to split for making a major side window. SIDE must be one of the symbols `left', `top', `right' or `bottom'. This is an auxiliary function of `window--make-major-side-window' and must not be called when a window on SIDE exists already. (fn SIDE)Fwindow--make-major-side-window Display BUFFER in a new major side window on the selected frame. SIDE must be one of `left', `top', `right' or `bottom'. SLOT specifies the slot to use. ALIST is an association list of symbols and values as passed to `display-buffer-in-side-window'. Return the new window, nil if its creation failed. This is an auxiliary function of `display-buffer-in-side-window' and may be called only if no window on SIDE exists yet. (fn BUFFER SIDE SLOT &optional ALIST)Fdisplay-buffer-in-side-window Display BUFFER in a side window of the selected frame. ALIST is an association list of symbols and values. The following special symbols can be used in ALIST. `side' denotes the side of the frame where the new window shall be located. Valid values are `bottom', `right', `top' and `left'. The default is `bottom'. `slot' if non-nil, specifies the window slot where to display BUFFER. A value of zero or nil means use the middle slot on the specified side. A negative value means use a slot preceding (that is, above or on the left of) the middle slot. A positive value means use a slot following (that is, below or on the right of) the middle slot. The default is zero. If the current frame size or the settings of `window-sides-slots' do not permit making a new window, a suitable existing window may be reused and have its `window-slot' parameter value accordingly modified. Unless `display-buffer-mark-dedicated' is non-nil, dedicate the side window used to BUFFER so that it does not get reused by other `display-buffer' action functions. Return the window used for displaying BUFFER, nil if no suitable window can be found. This function installs the `window-side' and `window-slot' parameters and makes them persistent. It neither modifies ALIST nor installs any other window parameters unless they have been explicitly provided via a `window-parameters' entry in ALIST. (fn BUFFER ALIST)Fwindow-toggle-side-windows Toggle display of side windows on specified FRAME. FRAME must be a live frame and defaults to the selected one. If FRAME has at least one side window, delete all side windows on FRAME after saving FRAME's state in the FRAME's `window-state' frame parameter. Otherwise, restore any side windows recorded in FRAME's `window-state' parameter, leaving FRAME's main window alone. Signal an error if FRAME has no side windows and no saved state for it is found. (fn &optional FRAME)Fwindow--sides-reverse-all Maybe reverse side windows on all frames.Fwindow--sides-reverse-frame Maybe reverse side windows on FRAME. (fn FRAME)Fwindow--sides-reverse-side Maybe reverse windows on SIDE of FRAME. (fn FRAME SIDE)Fwindow--sides-reverse Helper function for customizing `window-sides-reversed'. (fn SYMBOL VALUE)Fwindow--sides-verticalize-frame Maybe change side windows layout on specified FRAME. (fn &optional FRAME)Fwindow--sides-verticalize Helper function for customizing `window-sides-vertical'. (fn SYMBOL VALUE)Fwindow--sides-check-failed Helper function for `window--sides-check'. (fn FRAME)Fwindow--sides-check Check side windows configuration of FRAME. In a valid side windows configuration there can be at most one internal side window on each side and all its children must be live and have the same `window-side' parameter and no other window with the same `window-side' parameter exists on FRAME. If there is no such internal window, there may be at most one window with this side's `window-side' parameter on FRAME. If the configuration is invalid, reset the `window-side' parameters of all windows on FRAME. (fn FRAME)Fwindow--check Check atomic and side windows on FRAME. FRAME defaults to the selected frame. (fn &optional FRAME)Fwindow--dump-window Dump WINDOW to buffer *window-frame-dump*. WINDOW must be a valid window and defaults to the selected one. Optional argument ERASE non-nil means erase *window-frame-dump* before writing to it. (fn &optional WINDOW ERASE)Fwindow--dump-frame Dump WINDOW-OR-FRAME to buffer *window-frame-dump*. WINDOW-OR-FRAME can be a frame or a window and defaults to the selected frame. When WINDOW-OR-FRAME is a window, dump that window's frame. The buffer *window-frame-dump* is erased before dumping to it. (fn &optional WINDOW-OR-FRAME)Fwindow-total-size Return the total height or width of WINDOW. WINDOW must be a valid window and defaults to the selected one. If HORIZONTAL is omitted or nil, return the total height of WINDOW, in lines. If WINDOW is live, its total height includes, in addition to the height of WINDOW's text, the heights of WINDOW's mode and header line and a bottom divider, if any. If HORIZONTAL is non-nil, return the total width of WINDOW, in columns. If WINDOW is live, its total width includes, in addition to the width of WINDOW's text, the widths of WINDOW's fringes, margins, scroll bars and its right divider, if any. If WINDOW is internal, return the respective size of the screen areas spanned by its children. Optional argument ROUND is handled as for `window-total-height' and `window-total-width'. (fn &optional WINDOW HORIZONTAL ROUND)Fwindow-size Return the height or width of WINDOW. WINDOW must be a valid window and defaults to the selected one. If HORIZONTAL is omitted or nil, return the total height of WINDOW, in lines, like `window-total-height'. Otherwise return the total width, in columns, like `window-total-width'. Optional argument PIXELWISE means return the pixel size of WINDOW like `window-pixel-height' and `window-pixel-width'. Optional argument ROUND is ignored if PIXELWISE is non-nil and handled as for `window-total-height' and `window-total-width' otherwise. (fn &optional WINDOW HORIZONTAL PIXELWISE ROUND)Vwindow-size-fixed Non-nil in a buffer means windows displaying the buffer are fixed-size. If the value is `height', then only the window's height is fixed. If the value is `width', then only the window's width is fixed. Any other non-nil value fixes both the width and the height. Emacs won't change the size of any window displaying that buffer, unless it has no other choice (like when deleting a neighboring window).Fwindow--preservable-size Return height of WINDOW as `window-preserve-size' would preserve it. Optional argument HORIZONTAL non-nil means to return the width of WINDOW as `window-preserve-size' would preserve it. (fn WINDOW &optional HORIZONTAL)Fwindow-preserve-size Preserve height of window WINDOW. WINDOW must be a live window and defaults to the selected one. Optional argument HORIZONTAL non-nil means preserve the width of WINDOW. PRESERVE t means to preserve the current height/width of WINDOW's body in frame and window resizing operations whenever possible. The height/width of WINDOW will change only if Emacs has no other choice. Resizing a window whose height/width is preserved never throws an error. PRESERVE nil means to stop preserving the height/width of WINDOW, lifting the respective restraint induced by a previous call of `window-preserve-size' for WINDOW. Calling `enlarge-window', `shrink-window', `split-window' or `fit-window-to-buffer' with WINDOW as argument also removes the respective restraint. Other values of PRESERVE are reserved for future use. (fn &optional WINDOW HORIZONTAL PRESERVE)Fwindow-preserved-size Return preserved height of window WINDOW. WINDOW must be a live window and defaults to the selected one. Optional argument HORIZONTAL non-nil means to return preserved width of WINDOW. (fn &optional WINDOW HORIZONTAL)Fwindow--preserve-size Return non-nil when the height of WINDOW shall be preserved. Optional argument HORIZONTAL non-nil means to return non-nil when the width of WINDOW shall be preserved. (fn WINDOW HORIZONTAL)Fwindow-safe-min-size Return safe minimum size of WINDOW. WINDOW must be a valid window and defaults to the selected one. Optional argument HORIZONTAL non-nil means return the minimum number of columns of WINDOW; otherwise return the minimum number of WINDOW's lines. Optional argument PIXELWISE non-nil means return the minimum pixel-size of WINDOW. (fn &optional WINDOW HORIZONTAL PIXELWISE)Fwindow-min-size Return the minimum size of WINDOW. WINDOW must be a valid window and defaults to the selected one. Optional argument HORIZONTAL non-nil means return the minimum number of columns of WINDOW; otherwise return the minimum number of WINDOW's lines. The optional argument IGNORE has the same meaning as for `window-resizable'. Optional argument PIXELWISE non-nil means return the minimum pixel-size of WINDOW. (fn &optional WINDOW HORIZONTAL IGNORE PIXELWISE)Fwindow--min-size-ignore-p Return non-nil if IGNORE says to ignore size restrictions for WINDOW. (fn WINDOW IGNORE)Fwindow--min-size-1 Internal function of `window-min-size'. (fn WINDOW HORIZONTAL IGNORE PIXELWISE)Fwindow-sizable Return DELTA if DELTA lines can be added to WINDOW. WINDOW must be a valid window and defaults to the selected one. Optional argument HORIZONTAL non-nil means return DELTA if DELTA columns can be added to WINDOW. A return value of zero means that no lines (or columns) can be added to WINDOW. This function looks only at WINDOW and, recursively, its child windows. The function `window-resizable' looks at other windows as well. DELTA positive means WINDOW shall be enlarged by DELTA lines or columns. If WINDOW cannot be enlarged by DELTA lines or columns return the maximum value in the range 0..DELTA by which WINDOW can be enlarged. DELTA negative means WINDOW shall be shrunk by -DELTA lines or columns. If WINDOW cannot be shrunk by -DELTA lines or columns, return the minimum value in the range DELTA..0 by which WINDOW can be shrunk. The optional argument IGNORE has the same meaning as for `window-resizable'. Optional argument PIXELWISE non-nil means interpret DELTA as pixels. (fn WINDOW DELTA &optional HORIZONTAL IGNORE PIXELWISE)Fwindow-sizable-p Return t if WINDOW can be resized by DELTA lines. WINDOW must be a valid window and defaults to the selected one. For the meaning of the arguments of this function see the doc-string of `window-sizable'. (fn WINDOW DELTA &optional HORIZONTAL IGNORE PIXELWISE)Fwindow--size-fixed-1 Internal function for `window-size-fixed-p'. (fn WINDOW HORIZONTAL IGNORE)Fwindow-size-fixed-p Return non-nil if WINDOW's height is fixed. WINDOW must be a valid window and defaults to the selected one. Optional argument HORIZONTAL non-nil means return non-nil if WINDOW's width is fixed. The optional argument IGNORE has the same meaning as for `window-resizable'. If this function returns nil, this does not necessarily mean that WINDOW can be resized in the desired direction. The function `window-resizable' can tell that. (fn &optional WINDOW HORIZONTAL IGNORE)Fwindow--min-delta-1 Internal function for `window-min-delta'. (fn WINDOW DELTA &optional HORIZONTAL IGNORE TRAIL NOUP PIXELWISE)Fwindow-min-delta Return number of lines by which WINDOW can be shrunk. WINDOW must be a valid window and defaults to the selected one. Return zero if WINDOW cannot be shrunk. Optional argument HORIZONTAL non-nil means return number of columns by which WINDOW can be shrunk. The optional argument IGNORE has the same meaning as for `window-resizable'. Optional argument TRAIL restricts the windows that can be enlarged. If its value is `before', only windows to the left of or above WINDOW can be enlarged. If it is `after', only windows to the right of or below WINDOW can be enlarged. Optional argument NOUP non-nil means don't go up in the window tree, but try to enlarge windows within WINDOW's combination only. Optional argument NODOWN non-nil means don't check whether WINDOW itself (and its child windows) can be shrunk; check only whether at least one other window can be enlarged appropriately. Optional argument PIXELWISE non-nil means return number of pixels by which WINDOW can be shrunk. (fn &optional WINDOW HORIZONTAL IGNORE TRAIL NOUP NODOWN PIXELWISE)Fframe-windows-min-size Return minimum number of lines of FRAME's windows. HORIZONTAL non-nil means return number of columns of FRAME's windows. The optional argument IGNORE has the same meaning as for `window-resizable'. PIXELWISE non-nil means return sizes in pixels. (fn &optional FRAME HORIZONTAL IGNORE PIXELWISE)Fwindow--max-delta-1 Internal function of `window-max-delta'. (fn WINDOW DELTA &optional HORIZONTAL IGNORE TRAIL NOUP PIXELWISE)Fwindow-max-delta Return maximum number of lines by which WINDOW can be enlarged. WINDOW must be a valid window and defaults to the selected one. The return value is zero if WINDOW cannot be enlarged. Optional argument HORIZONTAL non-nil means return maximum number of columns by which WINDOW can be enlarged. The optional argument IGNORE has the same meaning as for `window-resizable'. Optional argument TRAIL restricts the windows that can be enlarged. If its value is `before', only windows to the left of or above WINDOW can be enlarged. If it is `after', only windows to the right of or below WINDOW can be enlarged. Optional argument NOUP non-nil means don't go up in the window tree but try to obtain the entire space from windows within WINDOW's combination. Optional argument NODOWN non-nil means do not check whether WINDOW itself (and its child windows) can be enlarged; check only whether other windows can be shrunk appropriately. Optional argument PIXELWISE non-nil means return number of pixels by which WINDOW can be enlarged. (fn &optional WINDOW HORIZONTAL IGNORE TRAIL NOUP NODOWN PIXELWISE)Fwindow--resizable Return DELTA if WINDOW can be resized vertically by DELTA lines. WINDOW must be a valid window and defaults to the selected one. Optional argument HORIZONTAL non-nil means return DELTA if WINDOW can be resized horizontally by DELTA columns. A return value of zero means that WINDOW is not resizable. DELTA positive means WINDOW shall be enlarged by DELTA lines or columns. If WINDOW cannot be enlarged by DELTA lines or columns, return the maximum value in the range 0..DELTA by which WINDOW can be enlarged. DELTA negative means WINDOW shall be shrunk by -DELTA lines or columns. If WINDOW cannot be shrunk by -DELTA lines or columns, return the minimum value in the range DELTA..0 that can be used for shrinking WINDOW. The optional argument IGNORE has the same meaning as for `window-resizable'. Optional argument TRAIL `before' means only windows to the left of or below WINDOW can be shrunk. Optional argument TRAIL `after' means only windows to the right of or above WINDOW can be shrunk. Optional argument NOUP non-nil means don't go up in the window tree but check only whether space can be obtained from (or given to) WINDOW's siblings. Optional argument NODOWN non-nil means don't go down in the window tree. This means do not check whether resizing would violate size restrictions of WINDOW or its child windows. Optional argument PIXELWISE non-nil means interpret DELTA as number of pixels. (fn WINDOW DELTA &optional HORIZONTAL IGNORE TRAIL NOUP NODOWN PIXELWISE)Fwindow--resizable-p Return t if WINDOW can be resized vertically by DELTA lines. WINDOW must be a valid window and defaults to the selected one. For the meaning of the arguments of this function see the doc-string of `window--resizable'. Optional argument PIXELWISE non-nil means interpret DELTA as pixels. (fn WINDOW DELTA &optional HORIZONTAL IGNORE TRAIL NOUP NODOWN PIXELWISE)Fwindow-resizable Return DELTA if WINDOW can be resized vertically by DELTA lines. WINDOW must be a valid window and defaults to the selected one. Optional argument HORIZONTAL non-nil means return DELTA if WINDOW can be resized horizontally by DELTA columns. A return value of zero means that WINDOW is not resizable. DELTA positive means WINDOW shall be enlarged by DELTA lines or columns. If WINDOW cannot be enlarged by DELTA lines or columns return the maximum value in the range 0..DELTA by which WINDOW can be enlarged. DELTA negative means WINDOW shall be shrunk by -DELTA lines or columns. If WINDOW cannot be shrunk by -DELTA lines or columns, return the minimum value in the range DELTA..0 that can be used for shrinking WINDOW. Optional argument IGNORE, if non-nil, means to ignore restraints induced by fixed size windows or the values of the variables `window-min-height' and `window-min-width'. The following values have special meanings: `safe' means that in addition live windows are allowed to get as small as `window-safe-min-height' lines and `window-safe-min-width' columns. `preserved' means to ignore only restrictions induced by `window-preserve-size'. If IGNORE is a window, then ignore restrictions for that window only. Optional argument PIXELWISE non-nil means interpret DELTA as pixels. (fn WINDOW DELTA &optional HORIZONTAL IGNORE PIXELWISE)Fwindow-resizable-p Return t if WINDOW can be resized vertically by DELTA lines. WINDOW must be a valid window and defaults to the selected one. For the meaning of the arguments of this function see the doc-string of `window-resizable'. (fn WINDOW DELTA &optional HORIZONTAL IGNORE PIXELWISE)Fwindow-full-height-p Return t if WINDOW is as high as its containing frame. More precisely, return t if and only if the total height of WINDOW equals the total height of the root window of WINDOW's frame. WINDOW must be a valid window and defaults to the selected one. (fn &optional WINDOW)Fwindow-full-width-p Return t if WINDOW is as wide as its containing frame. More precisely, return t if and only if the total width of WINDOW equals the total width of the root window of WINDOW's frame. WINDOW must be a valid window and defaults to the selected one. (fn &optional WINDOW)Fwindow-body-size Return the height or width of WINDOW's text area. WINDOW must be a live window and defaults to the selected one. If HORIZONTAL is omitted or nil, return the height of the text area, like `window-body-height'. Otherwise, return the width of the text area, like `window-body-width'. In either case, the optional argument PIXELWISE is passed to the functions. (fn &optional WINDOW HORIZONTAL PIXELWISE)Fwindow-font-width Return average character width for the font of FACE used in WINDOW. WINDOW must be a live window and defaults to the selected one. If FACE is nil or omitted, the default face is used. If FACE is remapped (see `face-remapping-alist'), the function returns the information for the remapped face. (fn &optional WINDOW FACE)Fwindow-font-height Return character height for the font of FACE used in WINDOW. WINDOW must be a live window and defaults to the selected one. If FACE is nil or omitted, the default face is used. If FACE is remapped (see `face-remapping-alist'), the function returns the information for the remapped face. (fn &optional WINDOW FACE)Fwindow-max-chars-per-line Return the number of characters that can be displayed on one line in WINDOW. WINDOW must be a live window and defaults to the selected one. The character width of FACE is used for the calculation. If FACE is nil or omitted, the default face is used. If FACE is remapped (see `face-remapping-alist'), the function uses the remapped face. This function is different from `window-body-width' in two ways. First, it accounts for the portions of the line reserved for the continuation glyph. Second, it accounts for the size of the font. (fn &optional WINDOW FACE)Fwindow-current-scroll-bars Return the current scroll bar types for WINDOW. WINDOW must be a live window and defaults to the selected one. The return value is a cons cell (VERTICAL . HORIZONTAL) where VERTICAL specifies the current location of the vertical scroll bar (`left', `right' or nil), and HORIZONTAL specifies the current location of the horizontal scroll bar (`bottom' or nil). Unlike `window-scroll-bars', this function reports the scroll bar type actually used, once frame defaults and `scroll-bar-mode' are taken into account. (fn &optional WINDOW)Fwalk-windows Cycle through all live windows, calling FUN for each one. FUN must specify a function with a window as its sole argument. The optional arguments MINIBUF and ALL-FRAMES specify the set of windows to include in the walk. MINIBUF t means include the minibuffer window even if the minibuffer is not active. MINIBUF nil or omitted means include the minibuffer window only if the minibuffer is active. Any other value means do not include the minibuffer window even if the minibuffer is active. ALL-FRAMES nil or omitted means consider all windows on the selected frame, plus the minibuffer window if specified by the MINIBUF argument. If the minibuffer counts, consider all windows on all frames that share that minibuffer too. The following non-nil values of ALL-FRAMES have special meanings: - t means consider all windows on all existing frames. - `visible' means consider all windows on all visible frames on the current terminal. - 0 (the number zero) means consider all windows on all visible and iconified frames on the current terminal. - A frame means consider all windows on that frame only. Anything else means consider all windows on the selected frame and no others. This function changes neither the order of recently selected windows nor the buffer list. (fn FUN &optional MINIBUF ALL-FRAMES)Fwindow-at-side-p Return t if WINDOW is at SIDE of its containing frame. WINDOW must be a valid window and defaults to the selected one. SIDE can be any of the symbols `left', `top', `right' or `bottom'. The default value nil is handled like `bottom'. (fn &optional WINDOW SIDE)Fwindow-at-side-list Return list of all windows on SIDE of FRAME. FRAME must be a live frame and defaults to the selected frame. SIDE can be any of the symbols `left', `top', `right' or `bottom'. The default value nil is handled like `bottom'. (fn &optional FRAME SIDE)Fwindow--in-direction-2 Support function for `window-in-direction'. (fn WINDOW POSN &optional HORIZONTAL)Fwindow-in-direction Return window in DIRECTION as seen from WINDOW. More precisely, return the nearest window in direction DIRECTION as seen from the position of `window-point' in window WINDOW. DIRECTION must be one of `above', `below', `left' or `right'. WINDOW must be a live window and defaults to the selected one. Do not return a window whose `no-other-window' parameter is non-nil. If the nearest window's `no-other-window' parameter is non-nil, try to find another window in the indicated direction. If, however, the optional argument IGNORE is non-nil, return that window even if its `no-other-window' parameter is non-nil. Optional argument SIGN a negative number means to use the right or bottom edge of WINDOW as reference position instead of `window-point'. SIGN a positive number means to use the left or top edge of WINDOW as reference position. Optional argument WRAP non-nil means to wrap DIRECTION around frame borders. This means to return for WINDOW at the top of the frame and DIRECTION `above' the minibuffer window if the frame has one, and a window at the bottom of the frame otherwise. Optional argument MINI nil means to return the minibuffer window if and only if it is currently active. MINI non-nil means to return the minibuffer window even when it's not active. However, if WRAP is non-nil, always act as if MINI were nil. Return nil if no suitable window can be found. (fn DIRECTION &optional WINDOW IGNORE SIGN WRAP MINI)Fget-window-with-predicate Return a live window satisfying PREDICATE. More precisely, cycle through all windows calling the function PREDICATE on each one of them with the window as its sole argument. Return the first window for which PREDICATE returns non-nil. Windows are scanned starting with the window following the selected window. If no window satisfies PREDICATE, return DEFAULT. MINIBUF t means include the minibuffer window even if the minibuffer is not active. MINIBUF nil or omitted means include the minibuffer window only if the minibuffer is active. Any other value means do not include the minibuffer window even if the minibuffer is active. ALL-FRAMES nil or omitted means consider all windows on the selected frame, plus the minibuffer window if specified by the MINIBUF argument. If the minibuffer counts, consider all windows on all frames that share that minibuffer too. The following non-nil values of ALL-FRAMES have special meanings: - t means consider all windows on all existing frames. - `visible' means consider all windows on all visible frames on the current terminal. - 0 (the number zero) means consider all windows on all visible and iconified frames on the current terminal. - A frame means consider all windows on that frame only. Anything else means consider all windows on the selected frame and no others. (fn PREDICATE &optional MINIBUF ALL-FRAMES DEFAULT)Fget-lru-window Return the least recently used window on frames specified by ALL-FRAMES. Return a full-width window if possible. A minibuffer window is never a candidate. A dedicated window is never a candidate unless DEDICATED is non-nil, so if all windows are dedicated, the value is nil. Avoid returning the selected window if possible. Optional argument NOT-SELECTED non-nil means never return the selected window. The following non-nil values of the optional argument ALL-FRAMES have special meanings: - t means consider all windows on all existing frames. - `visible' means consider all windows on all visible frames on the current terminal. - 0 (the number zero) means consider all windows on all visible and iconified frames on the current terminal. - A frame means consider all windows on that frame only. Any other value of ALL-FRAMES means consider all windows on the selected frame and no others. (fn &optional ALL-FRAMES DEDICATED NOT-SELECTED)Fget-mru-window Return the most recently used window on frames specified by ALL-FRAMES. A minibuffer window is never a candidate. A dedicated window is never a candidate unless DEDICATED is non-nil, so if all windows are dedicated, the value is nil. Optional argument NOT-SELECTED non-nil means never return the selected window. The following non-nil values of the optional argument ALL-FRAMES have special meanings: - t means consider all windows on all existing frames. - `visible' means consider all windows on all visible frames on the current terminal. - 0 (the number zero) means consider all windows on all visible and iconified frames on the current terminal. - A frame means consider all windows on that frame only. Any other value of ALL-FRAMES means consider all windows on the selected frame and no others. (fn &optional ALL-FRAMES DEDICATED NOT-SELECTED)Fget-largest-window Return the largest window on frames specified by ALL-FRAMES. A minibuffer window is never a candidate. A dedicated window is never a candidate unless DEDICATED is non-nil, so if all windows are dedicated, the value is nil. Optional argument NOT-SELECTED non-nil means never return the selected window. The following non-nil values of the optional argument ALL-FRAMES have special meanings: - t means consider all windows on all existing frames. - `visible' means consider all windows on all visible frames on the current terminal. - 0 (the number zero) means consider all windows on all visible and iconified frames on the current terminal. - A frame means consider all windows on that frame only. Any other value of ALL-FRAMES means consider all windows on the selected frame and no others. (fn &optional ALL-FRAMES DEDICATED NOT-SELECTED)Fget-buffer-window-list Return list of all windows displaying BUFFER-OR-NAME, or nil if none. BUFFER-OR-NAME may be a buffer or the name of an existing buffer and defaults to the current buffer. If the selected window displays BUFFER-OR-NAME, it will be the first in the resulting list. MINIBUF t means include the minibuffer window even if the minibuffer is not active. MINIBUF nil or omitted means include the minibuffer window only if the minibuffer is active. Any other value means do not include the minibuffer window even if the minibuffer is active. ALL-FRAMES nil or omitted means consider all windows on the selected frame, plus the minibuffer window if specified by the MINIBUF argument. If the minibuffer counts, consider all windows on all frames that share that minibuffer too. The following non-nil values of ALL-FRAMES have special meanings: - t means consider all windows on all existing frames. - `visible' means consider all windows on all visible frames on the current terminal. - 0 (the number zero) means consider all windows on all visible and iconified frames on the current terminal. - A frame means consider all windows on that frame only. Anything else means consider all windows on the selected frame and no others. (fn &optional BUFFER-OR-NAME MINIBUF ALL-FRAMES)Fminibuffer-window-active-p Return t if WINDOW is the currently active minibuffer window. (fn WINDOW)Fcount-windows Return the number of live windows on the selected frame. The optional argument MINIBUF specifies whether the minibuffer window shall be counted. See `walk-windows' for the precise meaning of this argument. (fn &optional MINIBUF)Fwindow--size-to-pixel For WINDOW convert SIZE lines to pixels. SIZE is supposed to specify a height of WINDOW in terms of text lines. The return value is the number of pixels specifying that height. WINDOW must be a valid window. Optional argument HORIZONTAL non-nil means convert SIZE columns to pixels. Optional argument PIXELWISE non-nil means SIZE already specifies pixels but may have to be adjusted to a multiple of the character size of WINDOW's frame. Optional argument ROUND-MAYBE non-nil means round to the nearest multiple of the character size of WINDOW's frame if the option `window-resize-pixelwise' is nil. (fn WINDOW SIZE &optional HORIZONTAL PIXELWISE ROUND-MAYBE)Fwindow--pixel-to-total-1 Subroutine of `window--pixel-to-total'. (fn WINDOW HORIZONTAL CHAR-SIZE)Fwindow--pixel-to-total On FRAME assign new total window heights from pixel heights. FRAME must be a live frame and defaults to the selected frame. Optional argument HORIZONTAL non-nil means assign new total window widths from pixel widths. (fn &optional FRAME HORIZONTAL)Fwindow--resize-reset Reset resize values for all windows on FRAME. FRAME defaults to the selected frame. This function stores the current value of `window-size' applied with argument HORIZONTAL in the new total size of all windows on FRAME. It also resets the new normal size of each of these windows. (fn &optional FRAME HORIZONTAL)Fwindow--resize-reset-1 Internal function of `window--resize-reset'. (fn WINDOW HORIZONTAL)Fwindow--resize-mini-window Resize minibuffer window WINDOW by DELTA pixels. If WINDOW cannot be resized by DELTA pixels make it as large (or as small) as possible, but don't signal an error. (fn WINDOW DELTA)Fwindow--resize-apply-p Return t when a window on FRAME shall be resized vertically. Optional argument HORIZONTAL non-nil means return t when a window shall be resized horizontally. (fn FRAME &optional HORIZONTAL)Fwindow-resize Resize WINDOW vertically by DELTA lines. WINDOW can be an arbitrary window and defaults to the selected one. An attempt to resize the root window of a frame will raise an error though. DELTA a positive number means WINDOW shall be enlarged by DELTA lines. DELTA negative means WINDOW shall be shrunk by -DELTA lines. Optional argument HORIZONTAL non-nil means resize WINDOW horizontally by DELTA columns. In this case a positive DELTA means enlarge WINDOW by DELTA columns. DELTA negative means WINDOW shall be shrunk by -DELTA columns. Optional argument IGNORE, if non-nil, means to ignore restraints induced by fixed size windows or the values of the variables `window-min-height' and `window-min-width'. The following values have special meanings: `safe' means that in addition live windows are allowed to get as small as `window-safe-min-height' lines and `window-safe-min-width' columns. `preserved' means to ignore only restrictions induced by `window-preserve-size'. If IGNORE is a window, then ignore restrictions for that window only. Optional argument PIXELWISE non-nil means resize WINDOW by DELTA pixels. This function resizes other windows proportionally and never deletes any windows. If you want to move only the low (right) edge of WINDOW consider using `adjust-window-trailing-edge' instead. (fn WINDOW DELTA &optional HORIZONTAL IGNORE PIXELWISE)Fwindow-resize-no-error Resize WINDOW vertically if it is resizable by DELTA lines. This function is like `window-resize' but does not signal an error when WINDOW cannot be resized. For the meaning of the optional arguments see the documentation of `window-resize'. (fn WINDOW DELTA &optional HORIZONTAL IGNORE PIXELWISE)Fwindow--resize-child-windows-skip-p Return non-nil if WINDOW shall be skipped by resizing routines. (fn WINDOW)Fwindow--resize-child-windows-normal Recursively set new normal height of child windows of window PARENT. HORIZONTAL non-nil means set the new normal width of these windows. WINDOW specifies a child window of PARENT that has been resized by THIS-DELTA lines (columns). Optional argument TRAIL either `before' or `after' means set values only for windows before or after WINDOW. Optional argument OTHER-DELTA, a number, specifies that this many lines (columns) have been obtained from (or returned to) an ancestor window of PARENT in order to resize WINDOW. (fn PARENT HORIZONTAL WINDOW THIS-DELTA &optional TRAIL OTHER-DELTA)Fwindow--resize-child-windows Resize child windows of window PARENT vertically by DELTA pixels. PARENT must be a vertically combined internal window. Optional argument HORIZONTAL non-nil means resize child windows of PARENT horizontally by DELTA pixels. In this case PARENT must be a horizontally combined internal window. WINDOW, if specified, must denote a child window of PARENT that is resized by DELTA pixels. The optional argument IGNORE has the same meaning as for `window-resizable'. Optional arguments TRAIL and EDGE, when non-nil, restrict the set of windows that shall be resized. If TRAIL equals `before', resize only windows on the left or above EDGE. If TRAIL equals `after', resize only windows on the right or below EDGE. Also, preferably only resize windows adjacent to EDGE. If the optional argument CHAR-SIZE is a positive integer, it specifies the number of pixels by which windows are incrementally resized. If CHAR-SIZE is nil, this means to use the value of `frame-char-height' or `frame-char-width' of WINDOW's frame. Return the symbol `normalized' if new normal sizes have been already set by this routine. (fn PARENT DELTA &optional HORIZONTAL WINDOW IGNORE TRAIL EDGE CHAR-SIZE)Fwindow--resize-siblings Resize other windows when WINDOW is resized vertically by DELTA pixels. Optional argument HORIZONTAL non-nil means resize other windows when WINDOW is resized horizontally by DELTA pixels. WINDOW itself is not resized by this function. The optional argument IGNORE has the same meaning as for `window-resizable'. Optional arguments TRAIL and EDGE, when non-nil, refine the set of windows that shall be resized. If TRAIL equals `before', resize only windows on the left or above EDGE. If TRAIL equals `after', resize only windows on the right or below EDGE. Also, preferably only resize windows adjacent to EDGE. (fn WINDOW DELTA &optional HORIZONTAL IGNORE TRAIL EDGE CHAR-SIZE)Fwindow--resize-this-window Resize WINDOW vertically by DELTA pixels. Optional argument HORIZONTAL non-nil means resize WINDOW horizontally by DELTA pixels. The optional argument IGNORE has the same meaning as for `window-resizable'. Optional argument ADD non-nil means add DELTA to the new total size of WINDOW. Optional arguments TRAIL and EDGE, when non-nil, refine the set of windows that shall be resized. If TRAIL equals `before', resize only windows on the left or above EDGE. If TRAIL equals `after', resize only windows on the right or below EDGE. Also, preferably only resize windows adjacent to EDGE. If the optional argument CHAR-SIZE is a positive integer, it specifies the number of pixels by which windows are incrementally resized. If CHAR-SIZE is nil, this means to use the value of `frame-char-height' or `frame-char-width' of WINDOW's frame. This function recursively resizes WINDOW's child windows to fit the new size. Make sure that WINDOW is `window--resizable' before calling this function. Note that this function does not resize siblings of WINDOW or WINDOW's parent window. You have to eventually call `window-resize-apply' in order to make resizing actually take effect. (fn WINDOW DELTA &optional HORIZONTAL IGNORE ADD TRAIL EDGE CHAR-SIZE)Fwindow--resize-root-window Resize root window WINDOW vertically by DELTA lines. HORIZONTAL non-nil means resize root window WINDOW horizontally by DELTA columns. IGNORE non-nil means ignore any restrictions imposed by fixed size windows, `window-min-height' or `window-min-width' settings. This function is only called by the frame resizing routines. It resizes windows proportionally and never deletes any windows. (fn WINDOW DELTA HORIZONTAL IGNORE PIXELWISE)Fwindow--resize-root-window-vertically Resize root window WINDOW vertically by DELTA lines. If DELTA is less than zero and we can't shrink WINDOW by DELTA lines, shrink it as much as possible. If DELTA is greater than zero, this function can resize fixed-size windows in order to recover the necessary lines. Return the number of lines that were recovered. Third argument PIXELWISE non-nil means to interpret DELTA as pixels and return the number of pixels that were recovered. This function is called by the minibuffer window resizing routines. (fn WINDOW DELTA PIXELWISE)Fwindow--sanitize-window-sizes Assert that all windows on selected frame are large enough. If necessary and possible, make sure that every window on frame FRAME has its minimum height. Optional argument HORIZONTAL non-nil means to make sure that every window on frame FRAME has its minimum width. The minimum height/width of a window is the respective value returned by `window-min-size' for that window. Return t if all windows were resized appropriately. Return nil if at least one window could not be resized as requested, which may happen when the FRAME is not large enough to accommodate it. (fn HORIZONTAL)Fadjust-window-trailing-edge Move WINDOW's bottom edge by DELTA lines. Optional argument HORIZONTAL non-nil means move WINDOW's right edge by DELTA columns. WINDOW must be a valid window and defaults to the selected one. Optional argument PIXELWISE non-nil means interpret DELTA as number of pixels. If DELTA is greater than zero, move the edge downwards or to the right. If DELTA is less than zero, move the edge upwards or to the left. If the edge can't be moved by DELTA lines or columns, move it as far as possible in the desired direction. (fn WINDOW DELTA &optional HORIZONTAL PIXELWISE)Fenlarge-window Make the selected window DELTA lines taller. Interactively, if no argument is given, make the selected window one line taller. If optional argument HORIZONTAL is non-nil, make selected window wider by DELTA columns. If DELTA is negative, shrink selected window by -DELTA lines or columns. (fn DELTA &optional HORIZONTAL)Fshrink-window Make the selected window DELTA lines smaller. Interactively, if no argument is given, make the selected window one line smaller. If optional argument HORIZONTAL is non-nil, make selected window narrower by DELTA columns. If DELTA is negative, enlarge selected window by -DELTA lines or columns. (fn DELTA &optional HORIZONTAL)Fmaximize-window Maximize WINDOW. Make WINDOW as large as possible without deleting any windows. WINDOW must be a valid window and defaults to the selected one. If the option `window-resize-pixelwise' is non-nil maximize WINDOW pixelwise. (fn &optional WINDOW)Fminimize-window Minimize WINDOW. Make WINDOW as small as possible without deleting any windows. WINDOW must be a valid window and defaults to the selected one. If the option `window-resize-pixelwise' is non-nil minimize WINDOW pixelwise. (fn &optional WINDOW)Fwindow-edges Return a list of the edge distances of WINDOW. WINDOW must be a valid window and defaults to the selected one. The list returned has the form (LEFT TOP RIGHT BOTTOM). If the optional argument BODY is nil, this means to return the edges corresponding to the total size of WINDOW. BODY non-nil means to return the edges of WINDOW's body (aka text area). If BODY is non-nil, WINDOW must specify a live window. Optional argument ABSOLUTE nil means to return edges relative to the position of WINDOW's native frame. ABSOLUTE non-nil means to return coordinates relative to the origin - the position (0, 0) - of FRAME's display. On non-graphical systems this argument has no effect. Optional argument PIXELWISE nil means to return the coordinates in terms of the canonical character width and height of WINDOW's frame, rounded if necessary. PIXELWISE non-nil means to return the coordinates in pixels where the values for RIGHT and BOTTOM are one more than the actual value of these edges. Note that if ABSOLUTE is non-nil, PIXELWISE is implicitly non-nil too. (fn &optional WINDOW BODY ABSOLUTE PIXELWISE)Fwindow-body-edges Return a list of the edge coordinates of WINDOW's body. The return value is that of `window-edges' called with argument BODY non-nil. (fn &optional WINDOW)Fwindow-pixel-edges Return a list of the edge pixel coordinates of WINDOW. The return value is that of `window-edges' called with argument PIXELWISE non-nil. (fn &optional WINDOW)Fwindow-body-pixel-edges Return a list of the edge pixel coordinates of WINDOW's body. The return value is that of `window-edges' called with arguments BODY and PIXELWISE non-nil. (fn &optional WINDOW)Fwindow-absolute-pixel-edges Return a list of the edge pixel coordinates of WINDOW. The return value is that of `window-edges' called with argument ABSOLUTE non-nil. (fn &optional WINDOW)Fwindow-absolute-body-pixel-edges Return a list of the edge pixel coordinates of WINDOW's text area. The return value is that of `window-edges' called with arguments BODY and ABSOLUTE non-nil. (fn &optional WINDOW)Fwindow-absolute-pixel-position Return display coordinates of POSITION in WINDOW. If the buffer position POSITION is visible in window WINDOW, return the display coordinates of the upper/left corner of the glyph at POSITION. The return value is a cons of the X- and Y-coordinates of that corner, relative to an origin at (0, 0) of WINDOW's display. Return nil if POSITION is not visible in WINDOW. WINDOW must be a live window and defaults to the selected window. POSITION defaults to the value of `window-point' of WINDOW. (fn &optional POSITION WINDOW)Fframe-root-window-p Return non-nil if WINDOW is the root window of its frame. (fn WINDOW)Fwindow--subtree Return window subtree rooted at WINDOW. Optional argument NEXT non-nil means include WINDOW's right siblings in the return value. See the documentation of `window-tree' for a description of the return value. (fn WINDOW &optional NEXT)Fwindow-tree Return the window tree of frame FRAME. FRAME must be a live frame and defaults to the selected frame. The return value is a list of the form (ROOT MINI), where ROOT represents the window tree of the frame's root window, and MINI is the frame's minibuffer window. If the root window is not split, ROOT is the root window itself. Otherwise, ROOT is a list (DIR EDGES W1 W2 ...) where DIR is nil for a horizontal split, and t for a vertical split. EDGES gives the combined size and position of the child windows in the split, and the rest of the elements are the child windows in the split. Each of the child windows may again be a window or a list representing a window split, and so on. EDGES is a list (LEFT TOP RIGHT BOTTOM) as returned by `window-edges'. (fn &optional FRAME)Fother-window Select another window in cyclic ordering of windows. COUNT specifies the number of windows to skip, starting with the selected window, before making the selection. If COUNT is positive, skip COUNT windows forwards. If COUNT is negative, skip -COUNT windows backwards. COUNT zero means do not skip any window, so select the selected window. In an interactive call, COUNT is the numeric prefix argument. Return nil. If the `other-window' parameter of the selected window is a function and `ignore-window-parameters' is nil, call that function with the arguments COUNT and ALL-FRAMES. This function does not select a window whose `no-other-window' window parameter is non-nil. This function uses `next-window' for finding the window to select. The argument ALL-FRAMES has the same meaning as in `next-window', but the MINIBUF argument of `next-window' is always effectively nil. (fn COUNT &optional ALL-FRAMES)Fone-window-p Return non-nil if the selected window is the only window. Optional arg NOMINI non-nil means don't count the minibuffer even if it is active. Otherwise, the minibuffer is counted when it is active. Optional argument ALL-FRAMES specifies the set of frames to consider, see also `next-window'. ALL-FRAMES nil or omitted means consider windows on the selected frame only, plus the minibuffer window if specified by the NOMINI argument. If the minibuffer counts, consider all windows on all frames that share that minibuffer too. The remaining non-nil values of ALL-FRAMES with a special meaning are: - t means consider all windows on all existing frames. - `visible' means consider all windows on all visible frames on the current terminal. - 0 (the number zero) means consider all windows on all visible and iconified frames on the current terminal. - A frame means consider all windows on that frame only. Anything else means consider all windows on the selected frame and no others. (fn &optional NOMINI ALL-FRAMES)Fwindow-deletable-p Return t if WINDOW can be safely deleted from its frame. WINDOW must be a valid window and defaults to the selected one. Return `frame' if WINDOW is the root window of its frame and that frame can be safely deleted. (fn &optional WINDOW)Fwindow--in-subtree-p Return t if WINDOW is either ROOT or a member of ROOT's subtree. (fn WINDOW ROOT)Fdelete-window Delete WINDOW. WINDOW must be a valid window and defaults to the selected one. Return nil. If the variable `ignore-window-parameters' is non-nil or the `delete-window' parameter of WINDOW equals t, do not process any parameters of WINDOW. Otherwise, if the `delete-window' parameter of WINDOW specifies a function, call that function with WINDOW as its sole argument and return the value returned by that function. Otherwise, if WINDOW is part of an atomic window, call `delete-window' with the root of the atomic window as its argument. Signal an error if WINDOW is either the only window on its frame, the last non-side window, or part of an atomic window that is its frame's root window. (fn &optional WINDOW)Fdelete-other-windows Make WINDOW fill its frame. WINDOW must be a valid window and defaults to the selected one. Return nil. If the variable `ignore-window-parameters' is non-nil or the `delete-other-windows' parameter of WINDOW equals t, do not pay attention to any other parameters of WINDOW. Otherwise, if the `delete-other-windows' parameter of WINDOW specifies a function, call that function with WINDOW as its sole argument and return the value returned by that function. Else, if WINDOW is part of an atomic window, call this function with the root of the atomic window as its argument. Signal an error if that root window is the root window of WINDOW's frame. Also signal an error if WINDOW is a side window. Do not delete any window whose `no-delete-other-windows' parameter is non-nil. (fn &optional WINDOW)Fdelete-other-windows-vertically Delete the windows in the same column with WINDOW, but not WINDOW itself. This may be a useful alternative binding for \[delete-other-windows] if you often split windows horizontally. (fn &optional WINDOW)Frecord-window-buffer Record WINDOW's buffer. WINDOW must be a live window and defaults to the selected one. (fn &optional WINDOW)Funrecord-window-buffer Unrecord BUFFER in WINDOW. WINDOW must be a live window and defaults to the selected one. BUFFER must be a live buffer and defaults to the buffer of WINDOW. (fn &optional WINDOW BUFFER)Fset-window-buffer-start-and-point Set WINDOW's buffer to BUFFER. WINDOW must be a live window and defaults to the selected one. Optional argument START non-nil means set WINDOW's start position to START. Optional argument POINT non-nil means set WINDOW's point to POINT. If WINDOW is selected this also sets BUFFER's `point' to POINT. If WINDOW is selected and the buffer it showed before was current this also makes BUFFER the current buffer. (fn WINDOW BUFFER &optional START POINT)Fswitch-to-prev-buffer In WINDOW switch to previous buffer. WINDOW must be a live window and defaults to the selected one. Return the buffer switched to, nil if no suitable buffer could be found. Optional argument BURY-OR-KILL non-nil means the buffer currently shown in WINDOW is about to be buried or killed and consequently shall not be switched to in future invocations of this command. As a special case, if BURY-OR-KILL equals `append', this means to move the buffer to the end of WINDOW's previous buffers list so a future invocation of `switch-to-prev-buffer' less likely switches to it. (fn &optional WINDOW BURY-OR-KILL)Fswitch-to-next-buffer In WINDOW switch to next buffer. WINDOW must be a live window and defaults to the selected one. Return the buffer switched to, nil if no suitable buffer could be found. (fn &optional WINDOW)Fget-next-valid-buffer Search LIST for a valid buffer to display in FRAME. Return nil when all buffers in LIST are undesirable for display, otherwise return the first suitable buffer in LIST. Buffers not visible in windows are preferred to visible buffers, unless VISIBLE-OK is non-nil. If the optional argument FRAME is nil, it defaults to the selected frame. If BUFFER is non-nil, ignore occurrences of that buffer in LIST. (fn LIST &optional BUFFER VISIBLE-OK FRAME)Flast-buffer Return the last buffer in FRAME's buffer list. If BUFFER is the last buffer, return the preceding buffer instead. Buffers not visible in windows are preferred to visible buffers, unless optional argument VISIBLE-OK is non-nil. Optional third argument FRAME nil or omitted means use the selected frame's buffer list. If no such buffer exists, return the buffer `*scratch*', creating it if necessary. (fn &optional BUFFER VISIBLE-OK FRAME)Fwindow--delete Delete WINDOW if possible. WINDOW must be a live window and defaults to the selected one. Optional argument DEDICATED-ONLY non-nil means to delete WINDOW only if it's dedicated to its buffer. Optional argument KILL means the buffer shown in window will be killed. Return non-nil if WINDOW gets deleted or its frame is auto-hidden. (fn &optional WINDOW DEDICATED-ONLY KILL)Fbury-buffer Put BUFFER-OR-NAME at the end of the list of all buffers. There it is the least likely candidate for `other-buffer' to return; thus, the least likely buffer for \[switch-to-buffer] to select by default. You can specify a buffer name as BUFFER-OR-NAME, or an actual buffer object. If BUFFER-OR-NAME is nil or omitted, bury the current buffer. Also, if BUFFER-OR-NAME is nil or omitted, remove the current buffer from the selected window if it is displayed there. (fn &optional BUFFER-OR-NAME)Funbury-buffer Switch to the last buffer in the buffer list.Fnext-buffer In selected window switch to next buffer.Fprevious-buffer In selected window switch to previous buffer.Fdelete-windows-on Delete all windows showing BUFFER-OR-NAME. BUFFER-OR-NAME may be a buffer or the name of an existing buffer and defaults to the current buffer. Interactively, prompt for the buffer. The following non-nil values of the optional argument FRAME have special meanings: - t means consider all windows on the selected frame only. - `visible' means consider all windows on all visible frames on the current terminal. - 0 (the number zero) means consider all windows on all visible and iconified frames on the current terminal. - A frame means consider all windows on that frame only. Any other value of FRAME means consider all windows on all frames. Interactively, FRAME is the prefix argument, so you can use \[universal-argument] 0 to specify all windows only on the current terminal's frames. If a frame's root window shows the buffer specified by BUFFER-OR-NAME and is dedicated to that buffer and that frame does not host the active minibuffer window and there is at least one other frame on that frame's terminal, delete that frame. Otherwise, do not delete a frame's root window if it shows the buffer specified by BUFFER-OR-NAME and do not delete any frame's main window showing that buffer either. Rather, in any such case, call `switch-to-prev-buffer' to show another buffer in that window and make sure the window is no more dedicated to its buffer. If the buffer specified by BUFFER-OR-NAME is shown in a minibuffer window, do nothing for that window. For any window that does not show that buffer, remove the buffer from that window's lists of previous and next buffers. (fn &optional BUFFER-OR-NAME FRAME)Freplace-buffer-in-windows Replace BUFFER-OR-NAME with some other buffer in all windows showing it. BUFFER-OR-NAME may be a buffer or the name of an existing buffer and defaults to the current buffer. When a window showing BUFFER-OR-NAME is dedicated, that window is deleted. If that window is the only window on its frame, the frame is deleted too when there are other frames left. If there are no other frames left, some other buffer is displayed in that window. This function removes the buffer denoted by BUFFER-OR-NAME from all window-local buffer lists. (fn &optional BUFFER-OR-NAME)Fquit-restore-window Quit WINDOW and deal with its buffer. WINDOW must be a live window and defaults to the selected one. According to information stored in WINDOW's `quit-restore' window parameter either (1) delete WINDOW and its frame, (2) delete WINDOW, (3) restore the buffer previously displayed in WINDOW, or (4) make WINDOW display some other buffer than the present one. If non-nil, reset `quit-restore' parameter to nil. Optional second argument BURY-OR-KILL tells how to proceed with the buffer of WINDOW. The following values are handled: nil means to not handle the buffer in a particular way. This means that if WINDOW is not deleted by this function, invoking `switch-to-prev-buffer' will usually show the buffer again. `append' means that if WINDOW is not deleted, move its buffer to the end of WINDOW's previous buffers so it's less likely that a future invocation of `switch-to-prev-buffer' will switch to it. Also, move the buffer to the end of the frame's buffer list. `bury' means that if WINDOW is not deleted, remove its buffer from WINDOW'S list of previous buffers. Also, move the buffer to the end of the frame's buffer list. This value provides the most reliable remedy to not have `switch-to-prev-buffer' switch to this buffer again without killing the buffer. `kill' means to kill WINDOW's buffer. (fn &optional WINDOW BURY-OR-KILL)Fquit-window Quit WINDOW and bury its buffer. WINDOW must be a live window and defaults to the selected one. With prefix argument KILL non-nil, kill the buffer instead of burying it. According to information stored in WINDOW's `quit-restore' window parameter either (1) delete WINDOW and its frame, (2) delete WINDOW, (3) restore the buffer previously displayed in WINDOW, or (4) make WINDOW display some other buffer than the present one. If non-nil, reset `quit-restore' parameter to nil. (fn &optional KILL WINDOW)Fquit-windows-on Quit all windows showing BUFFER-OR-NAME. BUFFER-OR-NAME may be a buffer or the name of an existing buffer and defaults to the current buffer. Optional argument KILL non-nil means to kill BUFFER-OR-NAME. KILL nil means to bury BUFFER-OR-NAME. Optional argument FRAME is handled as by `delete-windows-on'. This function calls `quit-window' on all candidate windows showing BUFFER-OR-NAME. (fn &optional BUFFER-OR-NAME KILL FRAME)Fsplit-window Make a new window adjacent to WINDOW. WINDOW must be a valid window and defaults to the selected one. Return the new window which is always a live window. Optional argument SIZE a positive number means make WINDOW SIZE lines or columns tall. If SIZE is negative, make the new window -SIZE lines or columns tall. If and only if SIZE is non-nil, its absolute value can be less than `window-min-height' or `window-min-width'; so this command can make a new window as small as one line or two columns. SIZE defaults to half of WINDOW's size. Optional third argument SIDE nil (or `below') specifies that the new window shall be located below WINDOW. SIDE `above' means the new window shall be located above WINDOW. In both cases SIZE specifies the new number of lines for WINDOW (or the new window if SIZE is negative) including space reserved for the mode and/or header line. SIDE t (or `right') specifies that the new window shall be located on the right side of WINDOW. SIDE `left' means the new window shall be located on the left of WINDOW. In both cases SIZE specifies the new number of columns for WINDOW (or the new window provided SIZE is negative) including space reserved for fringes and the scrollbar or a divider column. Any other non-nil value for SIDE is currently handled like t (or `right'). PIXELWISE, if non-nil, means to interpret SIZE pixelwise. If the variable `ignore-window-parameters' is non-nil or the `split-window' parameter of WINDOW equals t, do not process any parameters of WINDOW. Otherwise, if the `split-window' parameter of WINDOW specifies a function, call that function with all three arguments and return the value returned by that function. Otherwise, if WINDOW is part of an atomic window, "split" the root of that atomic window. The new window does not become a member of that atomic window. If WINDOW is live, properties of the new window like margins and scrollbars are inherited from WINDOW. If WINDOW is an internal window, these properties as well as the buffer displayed in the new window are inherited from the window selected on WINDOW's frame. The selected window is not changed by this function. (fn &optional WINDOW SIZE SIDE PIXELWISE)Fsplit-window-no-error Make a new window adjacent to WINDOW. This function is like `split-window' but does not signal an error when WINDOW cannot be split. For the meaning of all arguments see the documentation of `split-window'. (fn &optional WINDOW SIZE SIDE PIXELWISE)Fsplit-window-below Split the selected window into two windows, one above the other. The selected window is above. The newly split-off window is below and displays the same buffer. Return the new window. If optional argument SIZE is omitted or nil, both windows get the same height, or close to it. If SIZE is positive, the upper (selected) window gets SIZE lines. If SIZE is negative, the lower (new) window gets -SIZE lines. If the variable `split-window-keep-point' is non-nil, both windows get the same value of point as the selected window. Otherwise, the window starts are chosen so as to minimize the amount of redisplay; this is convenient on slow terminals. (fn &optional SIZE)Fsplit-window-right Split the selected window into two side-by-side windows. The selected window is on the left. The newly split-off window is on the right and displays the same buffer. Return the new window. If optional argument SIZE is omitted or nil, both windows get the same width, or close to it. If SIZE is positive, the left-hand (selected) window gets SIZE columns. If SIZE is negative, the right-hand (new) window gets -SIZE columns. Here, SIZE includes the width of the window's scroll bar; if there are no scroll bars, it includes the width of the divider column to the window's right, if any. (fn &optional SIZE)Fbalance-windows-2 Subroutine of `balance-windows-1'. WINDOW must be a vertical combination (horizontal if HORIZONTAL is non-nil). (fn WINDOW HORIZONTAL)Fbalance-windows-1 Subroutine of `balance-windows'. (fn WINDOW &optional HORIZONTAL)Fbalance-windows Balance the sizes of windows of WINDOW-OR-FRAME. WINDOW-OR-FRAME is optional and defaults to the selected frame. If WINDOW-OR-FRAME denotes a frame, balance the sizes of all windows of that frame. If WINDOW-OR-FRAME denotes a window, recursively balance the sizes of all child windows of that window. (fn &optional WINDOW-OR-FRAME)Fwindow-fixed-size-p Return t if WINDOW cannot be resized in DIRECTION. WINDOW defaults to the selected window. DIRECTION can be nil (i.e. any), `height' or `width'. (fn &optional WINDOW DIRECTION)Vwindow-area-factor Factor by which the window area should be over-estimated. This is used by `balance-windows-area'. Changing this globally has no effect.Fbalance-windows-area-adjust Wrapper around `window-resize' with error checking. Arguments WINDOW, DELTA and HORIZONTAL are passed on to that function. (fn WINDOW DELTA HORIZONTAL PIXELWISE)Fbalance-windows-area Make all visible windows the same area (approximately). See also `window-area-factor' to change the relative size of specific buffers.Fwindow--state-get-1 Helper function for `window-state-get'. (fn WINDOW &optional WRITABLE)Fwindow-state-get Return state of WINDOW as a Lisp object. WINDOW can be any window and defaults to the root window of the selected frame. Optional argument WRITABLE non-nil means do not use markers for sampling `window-point' and `window-start'. Together, WRITABLE and the variable `window-persistent-parameters' specify which window parameters are saved by this function. WRITABLE should be non-nil when the return value shall be written to a file and read back in another session. Otherwise, an application may run into an `invalid-read-syntax' error while attempting to read back the value from file. The return value can be used as argument for `window-state-put' to put the state recorded here into an arbitrary window. The value can be also stored on disk and read back in a new session. (fn &optional WINDOW WRITABLE)Vwindow-state-put-list Helper variable for `window-state-put'.Vwindow-state-put-stale-windows Helper variable for `window-state-put'.Fwindow--state-put-1 Helper function for `window-state-put'. (fn STATE &optional WINDOW IGNORE TOTALS PIXELWISE)Fwindow--state-put-2 Helper function for `window-state-put'. (fn IGNORE PIXELWISE)Fwindow-state-put Put window state STATE into WINDOW. STATE should be the state of a window returned by an earlier invocation of `window-state-get'. Optional argument WINDOW must specify a valid window and defaults to the selected one. If WINDOW is not live, replace WINDOW by a live one before putting STATE into it. Optional argument IGNORE non-nil means ignore minimum window sizes and fixed size restrictions. IGNORE equal `safe' means windows can get as small as `window-safe-min-height' and `window-safe-min-width'. (fn STATE &optional WINDOW IGNORE)Fwindow-swap-states Swap the states of live windows WINDOW-1 and WINDOW-2. WINDOW-1 must specify a live window and defaults to the selected one. WINDOW-2 must specify a live window and defaults to the window following WINDOW-1 in the cyclic ordering of windows, excluding minibuffer windows and including live windows on all visible frames. Optional argument SIZE non-nil means to try swapping the sizes of WINDOW-1 and WINDOW-2 as well. A value of `height' means to swap heights only, a value of `width' means to swap widths only, while t means to swap both widths and heights, if possible. Frames are not resized by this function. (fn &optional WINDOW-1 WINDOW-2 SIZE)Fdisplay-buffer-record-window Record information for window used by `display-buffer'. TYPE specifies the type of the calling operation and must be one of the symbols `reuse' (when WINDOW existed already and was reused for displaying BUFFER), `window' (when WINDOW was created on an already existing frame), or `frame' (when WINDOW was created on a new frame). WINDOW is the window used for or created by the `display-buffer' routines. BUFFER is the buffer that shall be displayed. This function installs or updates the quit-restore parameter of WINDOW. The quit-restore parameter is a list of four elements: The first element is one of the symbols `window', `frame', `same' or `other'. The second element is either one of the symbols `window' or `frame' or a list whose elements are the buffer previously shown in the window, that buffer's window start and window point, and the window's height. The third element is the window selected at the time the parameter was created. The fourth element is BUFFER. (fn TYPE WINDOW BUFFER)Fspecial-display-p Return non-nil if a buffer named BUFFER-NAME gets a special frame. More precisely, return t if `special-display-buffer-names' or `special-display-regexps' contain a string entry equaling or matching BUFFER-NAME. If `special-display-buffer-names' or `special-display-regexps' contain a list entry whose car equals or matches BUFFER-NAME, the return value is the cdr of that entry. (fn BUFFER-NAME)Fspecial-display-popup-frame Pop up a frame displaying BUFFER and return its window. If BUFFER is already displayed in a visible or iconified frame, raise that frame. Otherwise, display BUFFER in a new frame. Optional argument ARGS is a list specifying additional information. If ARGS is an alist, use it as a list of frame parameters. If these parameters contain (same-window . t), display BUFFER in the selected window. If they contain (same-frame . t), display BUFFER in a window of the selected frame. If ARGS is a list whose car is a symbol, use (car ARGS) as a function to do the work. Pass it BUFFER as first argument, and pass the elements of (cdr ARGS) as the remaining arguments. (fn BUFFER &optional ARGS)Fsame-window-p Return non-nil if buffer BUFFER-NAME would be shown in the "same" window. This function returns non-nil if `display-buffer' or `pop-to-buffer' would show a buffer named BUFFER-NAME in the selected rather than (as usual) some other window. See `same-window-buffer-names' and `same-window-regexps'. (fn BUFFER-NAME)Fwindow-splittable-p Return non-nil if `split-window-sensibly' may split WINDOW. Optional argument HORIZONTAL nil or omitted means check whether `split-window-sensibly' may split WINDOW vertically. HORIZONTAL non-nil means check whether WINDOW may be split horizontally. WINDOW may be split vertically when the following conditions hold: - `window-size-fixed' is either nil or equals `width' for the buffer of WINDOW. - `split-height-threshold' is an integer and WINDOW is at least as high as `split-height-threshold'. - When WINDOW is split evenly, the emanating windows are at least `window-min-height' lines tall and can accommodate at least one line plus - if WINDOW has one - a mode line. WINDOW may be split horizontally when the following conditions hold: - `window-size-fixed' is either nil or equals `height' for the buffer of WINDOW. - `split-width-threshold' is an integer and WINDOW is at least as wide as `split-width-threshold'. - When WINDOW is split evenly, the emanating windows are at least `window-min-width' or two (whichever is larger) columns wide. (fn WINDOW &optional HORIZONTAL)Fsplit-window-sensibly Split WINDOW in a way suitable for `display-buffer'. WINDOW defaults to the currently selected window. If `split-height-threshold' specifies an integer, WINDOW is at least `split-height-threshold' lines tall and can be split vertically, split WINDOW into two windows one above the other and return the lower window. Otherwise, if `split-width-threshold' specifies an integer, WINDOW is at least `split-width-threshold' columns wide and can be split horizontally, split WINDOW into two windows side by side and return the window on the right. If this can't be done either and WINDOW is the only window on its frame, try to split WINDOW vertically disregarding any value specified by `split-height-threshold'. If that succeeds, return the lower window. Return nil otherwise. By default `display-buffer' routines call this function to split the largest or least recently used window. To change the default customize the option `split-window-preferred-function'. You can enforce this function to not split WINDOW horizontally, by setting (or binding) the variable `split-width-threshold' to nil. If, in addition, you set `split-height-threshold' to zero, chances increase that this function does split WINDOW vertically. In order to not split WINDOW vertically, set (or bind) the variable `split-height-threshold' to nil. Additionally, you can set `split-width-threshold' to zero to make a horizontal split more likely to occur. Have a look at the function `window-splittable-p' if you want to know how `split-window-sensibly' determines whether WINDOW can be split. (fn &optional WINDOW)Fwindow--try-to-split-window Try to split WINDOW. Return value returned by `split-window-preferred-function' if it represents a live window, nil otherwise. (fn WINDOW &optional ALIST)Fwindow--frame-usable-p Return FRAME if it can be used to display a buffer. (fn FRAME)Fwindow--even-window-sizes Even sizes of WINDOW and selected window. Even only if these windows are the only children of their parent, `even-window-sizes' has the appropriate value and the selected window is larger than WINDOW. (fn WINDOW)Fwindow--display-buffer Display BUFFER in WINDOW. TYPE must be one of the symbols `reuse', `window' or `frame' and is passed unaltered to `display-buffer-record-window'. ALIST is the alist argument of `display-buffer'. Set `window-dedicated-p' to DEDICATED if non-nil. Return WINDOW if BUFFER and WINDOW are live. (fn BUFFER WINDOW TYPE &optional ALIST DEDICATED)Fwindow--maybe-raise-frame (fn FRAME)Vdisplay-buffer-mark-dedicated If non-nil, `display-buffer' marks the windows it creates as dedicated. The actual non-nil value of this variable will be copied to the `window-dedicated-p' flag.Vdisplay-buffer--action-function-custom-type Custom type for `display-buffer' action functions.Vdisplay-buffer--action-custom-type Custom type for `display-buffer' actions.Vdisplay-buffer-overriding-action Overriding action for buffer display. This action overrides all the other actions in the action variables and arguments passed to `display-buffer'. The value should be a cons cell (FUNCTIONS . ALIST), where FUNCTIONS is a function or a list of functions. Each function should accept two arguments: a buffer to display and an alist similar to ALIST. See `display-buffer' for details. This variable is not intended for user customization. Lisp programs should never set this variable permanently but may bind it around calls of buffer display functions like `display-buffer' or `pop-to-buffer'. Since such a binding will affect any nested buffer display requests, this variable should be used with utmost care.Vdisplay-buffer-fallback-action Default fallback action for `display-buffer'. This is the action used by `display-buffer' if no other actions have been specified, for example, by the user options `display-buffer-alist' or `display-buffer-base-action', or they all fail. It should never be set by programs or users. See `display-buffer'.Fdisplay-buffer-assq-regexp Retrieve ALIST entry corresponding to BUFFER-NAME. This returns the cdr of the alist entry ALIST if either its key is a string that matches BUFFER-NAME, as reported by `string-match-p'; or if the key is a function that returns non-nil when called with three arguments: the ALIST key, BUFFER-NAME and ACTION. ACTION should have the form of the action argument passed to `display-buffer'. (fn BUFFER-NAME ALIST ACTION)Vdisplay-buffer--same-window-action A `display-buffer' action for displaying in the same window. Specifies to call `display-buffer-same-window'.Vdisplay-buffer--other-frame-action A `display-buffer' action for displaying in another frame. Specifies to call `display-buffer-reuse-window', and if that fails, call `display-buffer-pop-up-frame'.Fdisplay-buffer Display BUFFER-OR-NAME in some window, without selecting it. BUFFER-OR-NAME must be a buffer or a string naming a live buffer. Return the window chosen for displaying that buffer, or nil if no such window is found. Optional argument ACTION, if non-nil, should specify a buffer display action of the form (FUNCTIONS . ALIST). FUNCTIONS is either an "action function" or a possibly empty list of action functions. ALIST is a possibly empty "action alist". An action function is a function that accepts two arguments: the buffer to display and an action alist. Based on those arguments, it should try to display the buffer in a window and return that window. An action alist is an association list mapping symbols to values. Action functions use the action alist passed to them to fine-tune their behaviors. `display-buffer' builds a list of action functions and an action alist by combining any action functions and alists specified by `display-buffer-overriding-action', `display-buffer-alist', the ACTION argument, `display-buffer-base-action', and `display-buffer-fallback-action' (in order). Then it calls each function in the combined function list in turn, passing the buffer as the first argument and the combined action alist as the second argument, until one of the functions returns non-nil. Action functions and the action they try to perform are: `display-buffer-same-window' -- Use the selected window. `display-buffer-reuse-window' -- Use a window already showing the buffer. `display-buffer-in-previous-window' -- Use a window that did show the buffer before. `display-buffer-use-some-window' -- Use some existing window. `display-buffer-pop-up-window' -- Pop up a new window. `display-buffer-below-selected' -- Use or pop up a window below the selected one. `display-buffer-at-bottom' -- Use or pop up a window at the bottom of the selected frame. `display-buffer-pop-up-frame' -- Show the buffer on a new frame. `display-buffer-in-child-frame' -- Show the buffer in a child frame. `display-buffer-no-window' -- Do not display the buffer and have `display-buffer' return nil immediately. Action alist entries are: 'inhibit-same-window' -- A non-nil value prevents the same window from being used for display. 'inhibit-switch-frame' -- A non-nil value prevents any frame used for showing the buffer from being raised or selected. 'reusable-frames' -- The value specifies the set of frames to search for a window that already displays the buffer. Possible values are nil (the selected frame), t (any live frame), visible (any visible frame), 0 (any visible or iconified frame) or an existing live frame. 'pop-up-frame-parameters' -- The value specifies an alist of frame parameters to give a new frame, if one is created. 'window-height' -- The value specifies the desired height of the window chosen and is either an integer (the total height of the window), a floating point number (the fraction of its total height with respect to the total height of the frame's root window) or a function to be called with one argument - the chosen window. The function is supposed to adjust the height of the window; its return value is ignored. Suitable functions are `shrink-window-if-larger-than-buffer' and `fit-window-to-buffer'. 'window-width' -- The value specifies the desired width of the window chosen and is either an integer (the total width of the window), a floating point number (the fraction of its total width with respect to the width of the frame's root window) or a function to be called with one argument - the chosen window. The function is supposed to adjust the width of the window; its return value is ignored. 'preserve-size' -- The value should be either (t . nil) to preserve the width of the chosen window, (nil . t) to preserve its height or (t . t) to preserve its height and width in future changes of the window configuration. 'window-parameters' -- The value specifies an alist of window parameters to give the chosen window. 'allow-no-window' -- A non-nil value means that `display-buffer' may not display the buffer and return nil immediately. The entries 'window-height', 'window-width' and 'preserve-size' are applied only when the window used for displaying the buffer never showed another buffer before. The ACTION argument can also have a non-nil and non-list value. This means to display the buffer in a window other than the selected one, even if it is already displayed in the selected window. If called interactively with a prefix argument, ACTION is t. Non-interactive calls should always supply a list or nil. The optional third argument FRAME, if non-nil, acts like a (reusable-frames . FRAME) entry appended to the action alist specified by the ACTION argument. (fn BUFFER-OR-NAME &optional ACTION FRAME)Fdisplay-buffer-other-frame Display buffer BUFFER preferably in another frame. This function attempts to look for a window displaying BUFFER, on all the frames on the current terminal, skipping the selected window; if that fails, it pops up a new frame. This uses the function `display-buffer' as a subroutine; see its documentation for additional customization information. (fn BUFFER)Fdisplay-buffer-use-some-frame Display BUFFER in an existing frame that meets a predicate. The default predicate is to use any frame other than the selected frame. If successful, return the window used; otherwise return nil. If ALIST has a non-nil `inhibit-switch-frame' entry, avoid raising the frame. If ALIST has a non-nil `frame-predicate' entry, its value is a function taking one argument (a frame), returning non-nil if the frame is a candidate; this function replaces the default predicate. If ALIST has a non-nil `inhibit-same-window' entry, avoid using the currently selected window (only useful with a frame-predicate that allows the selected frame). (fn BUFFER ALIST)Fdisplay-buffer-same-window Display BUFFER in the selected window. This fails if ALIST has an `inhibit-same-window' element whose value is non-nil, or if the selected window is a minibuffer window or is dedicated to another buffer; in that case, return nil. Otherwise, return the selected window. (fn BUFFER ALIST)Fdisplay-buffer--maybe-same-window Conditionally display BUFFER in the selected window. If `same-window-p' returns non-nil for BUFFER's name, call `display-buffer-same-window' and return its value. Otherwise, return nil. (fn BUFFER ALIST)Fdisplay-buffer-reuse-window Return a window that is already displaying BUFFER. Return nil if no usable window is found. If ALIST has a non-nil `inhibit-same-window' entry, the selected window is not eligible for reuse. If ALIST contains a `reusable-frames' entry, its value determines which frames to search for a reusable window: nil -- the selected frame (actually the last non-minibuffer frame) A frame -- just that frame `visible' -- all visible frames 0 -- all frames on the current terminal t -- all frames. If ALIST contains no `reusable-frames' entry, search just the selected frame if `display-buffer-reuse-frames' and `pop-up-frames' are both nil; search all frames on the current terminal if either of those variables is non-nil. If ALIST has a non-nil `inhibit-switch-frame' entry, then in the event that a window on another frame is chosen, avoid raising that frame. (fn BUFFER ALIST)Fdisplay-buffer-reuse-mode-window Return a window based on the mode of the buffer it displays. Display BUFFER in the returned window. Return nil if no usable window is found. If ALIST contains a `mode' entry, its value is a major mode (a symbol) or a list of modes. A window is a candidate if it displays a buffer that derives from one of the given modes. When ALIST contains no `mode' entry, the current major mode of BUFFER is used. The behavior is also controlled by entries for `inhibit-same-window', `reusable-frames' and `inhibit-switch-frame' as is done in the function `display-buffer-reuse-window'. (fn BUFFER ALIST)Fdisplay-buffer--special-action Return special display action for BUFFER, if any. If `special-display-p' returns non-nil for BUFFER, return an appropriate display action involving `special-display-function'. See `display-buffer' for the format of display actions. (fn BUFFER)Fdisplay-buffer-pop-up-frame Display BUFFER in a new frame. This works by calling `pop-up-frame-function'. If successful, return the window used; otherwise return nil. If ALIST has a non-nil `inhibit-switch-frame' entry, avoid raising the new frame. If ALIST has a non-nil `pop-up-frame-parameters' entry, the corresponding value is an alist of frame parameters to give the new frame. (fn BUFFER ALIST)Fdisplay-buffer-pop-up-window Display BUFFER by popping up a new window. The new window is created on the selected frame, or in `last-nonminibuffer-frame' if no windows can be created there. If successful, return the new window; otherwise return nil. If ALIST has a non-nil `inhibit-switch-frame' entry, then in the event that the new window is created on another frame, avoid raising the frame. (fn BUFFER ALIST)Fdisplay-buffer--maybe-pop-up-frame-or-window Try displaying BUFFER based on `pop-up-frames' or `pop-up-windows'. If `pop-up-frames' is non-nil (and not `graphic-only' on a text-only terminal), try with `display-buffer-pop-up-frame'. If that cannot be done, and `pop-up-windows' is non-nil, try again with `display-buffer-pop-up-window'. (fn BUFFER ALIST)Fdisplay-buffer-in-child-frame Display BUFFER in a child frame. By default, this either reuses a child frame of the selected frame or makes a new child frame of the selected frame. If successful, return the window used; otherwise return nil. If ALIST has a non-nil 'child-frame-parameters' entry, the corresponding value is an alist of frame parameters to give the new frame. A 'parent-frame' parameter specifying the selected frame is provided by default. If the child frame should be or become the child of any other frame, a corresponding entry must be added to ALIST. (fn BUFFER ALIST)Fdisplay-buffer-below-selected Try displaying BUFFER in a window below the selected window. If there is a window below the selected one and that window already displays BUFFER, use that window. Otherwise, try to create a new window below the selected one and show BUFFER there. If that attempt fails as well and there is a non-dedicated window below the selected one, use that window. (fn BUFFER ALIST)Fdisplay-buffer-at-bottom Try displaying BUFFER in a window at the bottom of the selected frame. This either reuses such a window provided it shows BUFFER already, splits a window at the bottom of the frame or the frame's root window, or reuses some window at the bottom of the selected frame. (fn BUFFER ALIST)Fdisplay-buffer-in-previous-window Display BUFFER in a window previously showing it. If ALIST has a non-nil `inhibit-same-window' entry, the selected window is not usable. A dedicated window is usable only if it already shows BUFFER. If ALIST contains a `previous-window' entry, the window specified by that entry is usable even if it never showed BUFFER before. If ALIST contains a `reusable-frames' entry, its value determines which frames to search for a usable window: nil -- the selected frame (actually the last non-minibuffer frame) A frame -- just that frame `visible' -- all visible frames 0 -- all frames on the current terminal t -- all frames. If ALIST contains no `reusable-frames' entry, search just the selected frame if `display-buffer-reuse-frames' and `pop-up-frames' are both nil; search all frames on the current terminal if either of those variables is non-nil. If more than one window is usable according to these rules, apply the following order of preference: - Use the window specified by any 'previous-window' ALIST entry, provided it is not the selected window. - Use a window that showed BUFFER before, provided it is not the selected window. - Use the selected window if it is either specified by a 'previous-window' ALIST entry or showed BUFFER before. (fn BUFFER ALIST)Fdisplay-buffer-use-some-window Display BUFFER in an existing window. Search for a usable window, set that window to the buffer, and return the window. If no suitable window is found, return nil. If ALIST has a non-nil `inhibit-switch-frame' entry, then in the event that a window in another frame is chosen, avoid raising that frame. (fn BUFFER ALIST)Fdisplay-buffer-no-window Display BUFFER in no window. If ALIST has a non-nil `allow-no-window' entry, then don't display a window at all. This makes possible to override the default action and avoid displaying the buffer. It is assumed that when the caller specifies a non-nil `allow-no-window' then it can handle a nil value returned from `display-buffer' in this case. (fn BUFFER ALIST)Fpop-to-buffer Display buffer specified by BUFFER-OR-NAME and select its window. BUFFER-OR-NAME may be a buffer, a string (a buffer name), or nil. If it is a string not naming an existent buffer, create a buffer with that name. If BUFFER-OR-NAME is nil, choose some other buffer. In either case, make that buffer current and return it. This uses `display-buffer' as a subroutine. The optional ACTION argument is passed to `display-buffer' as its ACTION argument. See `display-buffer' for more information. ACTION is t if called interactively with a prefix argument, which means to pop to a window other than the selected one even if the buffer is already displayed in the selected window. If a suitable window is found, select that window. If it is not on the selected frame, raise that window's frame and give it input focus. Optional third arg NORECORD non-nil means do not put this buffer at the front of the list of recently selected ones. (fn BUFFER-OR-NAME &optional ACTION NORECORD)Fpop-to-buffer-same-window Select buffer BUFFER in some window, preferably the same one. BUFFER may be a buffer, a string (a buffer name), or nil. If it is a string not naming an existent buffer, create a buffer with that name. If BUFFER is nil, choose some other buffer. Return the buffer. Optional argument NORECORD, if non-nil means do not put this buffer at the front of the list of recently selected ones. Unlike `pop-to-buffer', this function prefers using the selected window over popping up a new window or frame. Specifically, if the selected window is neither a minibuffer window (as reported by `window-minibuffer-p'), nor is dedicated to another buffer (see `window-dedicated-p'), BUFFER will be displayed in the currently selected window; otherwise it will be displayed in another window. (fn BUFFER &optional NORECORD)Fread-buffer-to-switch Read the name of a buffer to switch to, prompting with PROMPT. Return the name of the buffer as a string. This function is intended for the `switch-to-buffer' family of commands since these need to omit the name of the current buffer from the list of completions and default values. (fn PROMPT)Fwindow-normalize-buffer-to-switch-to Normalize BUFFER-OR-NAME argument of buffer switching functions. If BUFFER-OR-NAME is nil, return the buffer returned by `other-buffer'. Else, if a buffer specified by BUFFER-OR-NAME exists, return that buffer. If no such buffer exists, create a buffer with the name BUFFER-OR-NAME and return that buffer. (fn BUFFER-OR-NAME)Fswitch-to-buffer Display buffer BUFFER-OR-NAME in the selected window. WARNING: This is NOT the way to work on another buffer temporarily within a Lisp program! Use `set-buffer' instead. That avoids messing with the window-buffer correspondences. If the selected window cannot display the specified buffer because it is a minibuffer window or strongly dedicated to another buffer, call `pop-to-buffer' to select the buffer in another window. In interactive use, if the selected window is strongly dedicated to its buffer, the value of the option `switch-to-buffer-in-dedicated-window' specifies how to proceed. If called interactively, read the buffer name using `read-buffer'. The variable `confirm-nonexistent-file-or-buffer' determines whether to request confirmation before creating a new buffer. See `read-buffer' for features related to input and completion of buffer names. BUFFER-OR-NAME may be a buffer, a string (a buffer name), or nil. If BUFFER-OR-NAME is a string that does not identify an existing buffer, create a buffer with that name. If BUFFER-OR-NAME is nil, switch to the buffer returned by `other-buffer'. If optional argument NORECORD is non-nil, do not put the buffer at the front of the buffer list, and do not make the window displaying it the most recently selected one. If optional argument FORCE-SAME-WINDOW is non-nil, the buffer must be displayed in the selected window when called non-interactively; if that is impossible, signal an error rather than calling `pop-to-buffer'. The option `switch-to-buffer-preserve-window-point' can be used to make the buffer appear at its last position in the selected window. Return the buffer switched to. (fn BUFFER-OR-NAME &optional NORECORD FORCE-SAME-WINDOW)Fswitch-to-buffer-other-window Select the buffer specified by BUFFER-OR-NAME in another window. BUFFER-OR-NAME may be a buffer, a string (a buffer name), or nil. Return the buffer switched to. If called interactively, read the buffer name using `read-buffer'. The variable `confirm-nonexistent-file-or-buffer' determines whether to request confirmation before creating a new buffer. See `read-buffer' for features related to input and completion of buffer names. If BUFFER-OR-NAME is a string and does not identify an existing buffer, create a new buffer with that name. If BUFFER-OR-NAME is nil, switch to the buffer returned by `other-buffer'. Optional second argument NORECORD non-nil means do not put this buffer at the front of the list of recently selected ones. This uses the function `display-buffer' as a subroutine; see its documentation for additional customization information. (fn BUFFER-OR-NAME &optional NORECORD)Fswitch-to-buffer-other-frame Switch to buffer BUFFER-OR-NAME in another frame. BUFFER-OR-NAME may be a buffer, a string (a buffer name), or nil. Return the buffer switched to. If called interactively, read the buffer name using `read-buffer'. The variable `confirm-nonexistent-file-or-buffer' determines whether to request confirmation before creating a new buffer. See `read-buffer' for features related to input and completion of buffer names. If BUFFER-OR-NAME is a string and does not identify an existing buffer, create a new buffer with that name. If BUFFER-OR-NAME is nil, switch to the buffer returned by `other-buffer'. Optional second arg NORECORD non-nil means do not put this buffer at the front of the list of recently selected ones. This uses the function `display-buffer' as a subroutine; see its documentation for additional customization information. (fn BUFFER-OR-NAME &optional NORECORD)Fset-window-text-height Set the height in lines of the text display area of WINDOW to HEIGHT. WINDOW must be a live window and defaults to the selected one. HEIGHT doesn't include the mode line or header line, if any, or any partial-height lines in the text display area. Note that the current implementation of this function cannot always set the height exactly, but attempts to be conservative, by allocating more lines than are actually needed in the case where some error may be present. (fn WINDOW HEIGHT)Fenlarge-window-horizontally Make selected window DELTA columns wider. Interactively, if no argument is given, make selected window one column wider. (fn DELTA)Fshrink-window-horizontally Make selected window DELTA columns narrower. Interactively, if no argument is given, make selected window one column narrower. (fn DELTA)Fcount-screen-lines Return the number of screen lines in the region. The number of screen lines may be different from the number of actual lines, due to line breaking, display table, etc. Optional arguments BEG and END default to `point-min' and `point-max' respectively. If region ends with a newline, ignore it unless optional third argument COUNT-FINAL-NEWLINE is non-nil. The optional fourth argument WINDOW specifies the window used for obtaining parameters such as width, horizontal scrolling, and so on. The default is to use the selected window's parameters. Like `vertical-motion', `count-screen-lines' always uses the current buffer, regardless of which buffer is displayed in WINDOW. This makes possible to use `count-screen-lines' in any buffer, whether or not it is currently displayed in some window. (fn &optional BEG END COUNT-FINAL-NEWLINE WINDOW)Fwindow-buffer-height Return the height (in screen lines) of the buffer that WINDOW is displaying. WINDOW must be a live window and defaults to the selected one. (fn WINDOW)Fwindow--sanitize-margin Return MARGIN if it's a number between LEFT and RIGHT. Return 0 otherwise. (fn MARGIN LEFT RIGHT)Ffit-frame-to-buffer Adjust size of FRAME to display the contents of its buffer exactly. FRAME can be any live frame and defaults to the selected one. Fit only if FRAME's root window is live. MAX-HEIGHT, MIN-HEIGHT, MAX-WIDTH and MIN-WIDTH specify bounds on the new total size of FRAME's root window. MIN-HEIGHT and MIN-WIDTH default to the values of `window-min-height' and `window-min-width' respectively. These arguments are specified in the canonical character width and height of FRAME. If the optional argument ONLY is `vertically', resize the frame vertically only. If ONLY is `horizontally', resize the frame horizontally only. The new position and size of FRAME can be additionally determined by customizing the options `fit-frame-to-buffer-sizes' and `fit-frame-to-buffer-margins' or setting the corresponding parameters of FRAME. (fn &optional FRAME MAX-HEIGHT MIN-HEIGHT MAX-WIDTH MIN-WIDTH ONLY)Ffit-window-to-buffer Adjust size of WINDOW to display its buffer's contents exactly. WINDOW must be a live window and defaults to the selected one. If WINDOW is part of a vertical combination, adjust WINDOW's height. The new height is calculated from the actual height of the accessible portion of its buffer. The optional argument MAX-HEIGHT specifies a maximum height and defaults to the height of WINDOW's frame. The optional argument MIN-HEIGHT specifies a minimum height and defaults to `window-min-height'. Both MAX-HEIGHT and MIN-HEIGHT are specified in lines and include mode and header line and a bottom divider, if any. If WINDOW is part of a horizontal combination and the value of the option `fit-window-to-buffer-horizontally' is non-nil, adjust WINDOW's width. The new width of WINDOW is calculated from the maximum length of its buffer's lines that follow the current start position of WINDOW. The optional argument MAX-WIDTH specifies a maximum width and defaults to the width of WINDOW's frame. The optional argument MIN-WIDTH specifies a minimum width and defaults to `window-min-width'. Both MAX-WIDTH and MIN-WIDTH are specified in columns and include fringes, margins, a scrollbar and a vertical divider, if any. Optional argument PRESERVE-SIZE non-nil means to preserve the size of WINDOW (see `window-preserve-size'). Fit pixelwise if the option `window-resize-pixelwise' is non-nil. If WINDOW is its frame's root window and the option `fit-frame-to-buffer' is non-nil, call `fit-frame-to-buffer' to adjust the frame's size. Note that even if this function makes WINDOW large enough to show _all_ parts of its buffer you might not see the first part when WINDOW was scrolled. If WINDOW is resized horizontally, you will not see the top of its buffer unless WINDOW starts at its minimum accessible position. (fn &optional WINDOW MAX-HEIGHT MIN-HEIGHT MAX-WIDTH MIN-WIDTH PRESERVE-SIZE)Fwindow-safely-shrinkable-p Return t if WINDOW can be shrunk without shrinking other windows. WINDOW defaults to the selected window. (fn &optional WINDOW)Fshrink-window-if-larger-than-buffer Shrink height of WINDOW if its buffer doesn't need so many lines. More precisely, shrink WINDOW vertically to be as small as possible, while still showing the full contents of its buffer. WINDOW must be a live window and defaults to the selected one. Do not shrink WINDOW to less than `window-min-height' lines. Do nothing if the buffer contains more lines than the present window height, or if some of the window's contents are scrolled out of view, or if shrinking this window would also shrink another window, or if the window is the only window of its frame. Return non-nil if the window was shrunk, nil otherwise. (fn &optional WINDOW)Fwindow-largest-empty-rectangle--maximums-1 Support function for `window-largest-empty-rectangle'. (fn QUAD MAXIMUMS)Fwindow-largest-empty-rectangle--maximums Support function for `window-largest-empty-rectangle'. (fn QUAD MAXIMUMS COUNT)Fwindow-largest-empty-rectangle--disjoint-maximums Support function for `window-largest-empty-rectangle'. (fn MAXIMUMS COUNT)Fwindow-largest-empty-rectangle Return dimensions of largest empty rectangle in WINDOW. WINDOW must be a live window and defaults to the selected one. The return value is a triple of the width and the start and end Y-coordinates of the largest rectangle that can be inscribed into the empty space (the space not displaying any text) of WINDOW's text area. The return value is nil if the current glyph matrix of WINDOW is not up-to-date. Optional argument COUNT, if non-nil, specifies the maximum number of rectangles to return. This means that the return value is a list of triples specifying rectangles with the largest rectangle first. COUNT can be also a cons cell whose car specifies the number of rectangles to return and whose cdr, if non-nil, states that all rectangles returned must be disjoint. Note that the right edge of any rectangle returned by this function is the right edge of WINDOW (the left edge if its buffer displays RTL text). Optional arguments MIN-WIDTH and MIN-HEIGHT, if non-nil, specify the minimum width and height of any rectangle returned. Optional argument POSITIONS, if non-nil, is a cons cell whose car specifies the uppermost and whose cdr specifies the lowermost pixel position that must be covered by any rectangle returned. Note that positions are counted from the start of the text area of WINDOW. Optional argument LEFT, if non-nil, means to return values suitable for buffers displaying right to left text. (fn &optional WINDOW COUNT MIN-WIDTH MIN-HEIGHT POSITIONS LEFT)Fkill-buffer-and-window Kill the current buffer and delete the selected window.Fwindow-group-start Return position at which display currently starts in the group of windows containing WINDOW. When a grouping mode (such as Follow Mode) is not active, this function is identical to `window-start'. WINDOW must be a live window and defaults to the selected one. This is updated by redisplay or by calling `set-window*-start'. (fn &optional WINDOW)Fwindow-group-end Return position at which display currently ends in the group of windows containing WINDOW. When a grouping mode (such as Follow Mode) is not active, this function is identical to `window-end'. WINDOW must be a live window and defaults to the selected one. This is updated by redisplay, when it runs to completion. Simply changing the buffer text or setting `window-group-start' does not update this value. Return nil if there is no recorded value. (This can happen if the last redisplay of WINDOW was preempted, and did not finish.) If UPDATE is non-nil, compute the up-to-date position if it isn't already recorded. (fn &optional WINDOW UPDATE)Fset-window-group-start Make display in the group of windows containing WINDOW start at position POS in WINDOW's buffer. When a grouping mode (such as Follow Mode) is not active, this function is identical to `set-window-start'. WINDOW must be a live window and defaults to the selected one. Return POS. Optional third arg NOFORCE non-nil inhibits next redisplay from overriding motion of point in order to display at this exact start. (fn WINDOW POS &optional NOFORCE)Frecenter-window-group Center point in the group of windows containing the selected window and maybe redisplay frame. When a grouping mode (such as Follow Mode) is not active, this function is identical to `recenter'. With a numeric prefix argument ARG, recenter putting point on screen line ARG relative to the first window in the selected window group. If ARG is negative, it counts up from the bottom of the last window in the group. (ARG should be less than the total height of the window group.) If ARG is omitted or nil, then recenter with point on the middle line of the selected window group; if the variable `recenter-redisplay' is non-nil, also erase the entire frame and redraw it (when `auto-resize-tool-bars' is set to `grow-only', this resets the tool-bar's height to the minimum height needed); if `recenter-redisplay' has the special value `tty', then only tty frames are redrawn. Just C-u as prefix means put point in the center of the window and redisplay normally--don't erase and redraw the frame. (fn &optional ARG)Fpos-visible-in-window-group-p Return non-nil if position POS is currently on the frame in the window group containing WINDOW. When a grouping mode (such as Follow Mode) is not active, this function is identical to `pos-visible-in-window-p'. WINDOW must be a live window and defaults to the selected one. Return nil if that position is scrolled vertically out of view. If a character is only partially visible, nil is returned, unless the optional argument PARTIALLY is non-nil. If POS is only out of view because of horizontal scrolling, return non-nil. If POS is t, it specifies the position of the last visible glyph in the window group. POS defaults to point in WINDOW; WINDOW defaults to the selected window. If POS is visible, return t if PARTIALLY is nil; if PARTIALLY is non-nil, the return value is a list of 2 or 6 elements (X Y [RTOP RBOT ROWH VPOS]), where X and Y are the pixel coordinates relative to the top left corner of the window. The remaining elements are omitted if the character after POS is fully visible; otherwise, RTOP and RBOT are the number of pixels off-window at the top and bottom of the screen line ("row") containing POS, ROWH is the visible height of that row, and VPOS is the row number (zero-based). (fn &optional POS WINDOW PARTIALLY)Fselected-window-group Return the list of windows in the group containing the selected window. When a grouping mode (such as Follow Mode) is not active, the result is a list containing only the selected window.Fmove-to-window-group-line Position point relative to the current group of windows. When a grouping mode (such as Follow Mode) is not active, this function is identical to `move-to-window-line'. ARG nil means position point at center of the window group. Else, ARG specifies the vertical position within the window group; zero means top of first window in the group, negative means relative to the bottom of the last window in the group. (fn ARG)Vrecenter-last-op Indicates the last recenter operation performed. Possible values: `top', `middle', `bottom', integer or float numbers. It can also be nil, which means the first value in `recenter-positions'.Frecenter-top-bottom Move current buffer line to the specified window line. With no prefix argument, successive calls place point according to the cycling order defined by `recenter-positions'. A prefix argument is handled like `recenter': With numeric prefix ARG, move current line to window-line ARG. With plain `C-u', move current line to window center. (fn &optional ARG)Fmove-to-window-line-top-bottom Position point relative to window. With a prefix argument ARG, acts like `move-to-window-line'. With no argument, positions point at center of window. Successive calls position point at positions defined by `recenter-positions'. (fn &optional ARG)Fscroll-up-command Scroll text of selected window upward ARG lines; or near full screen if no ARG. If `scroll-error-top-bottom' is non-nil and `scroll-up' cannot scroll window further, move cursor to the bottom line. When point is already on that position, then signal an error. A near full screen is `next-screen-context-lines' less than a full screen. Negative ARG means scroll downward. If ARG is the atom `-', scroll downward by nearly full screen. (fn &optional ARG)Fscroll-down-command Scroll text of selected window down ARG lines; or near full screen if no ARG. If `scroll-error-top-bottom' is non-nil and `scroll-down' cannot scroll window further, move cursor to the top line. When point is already on that position, then signal an error. A near full screen is `next-screen-context-lines' less than a full screen. Negative ARG means scroll upward. If ARG is the atom `-', scroll upward by nearly full screen. (fn &optional ARG)Fscroll-up-line Scroll text of selected window upward ARG lines; or one line if no ARG. If ARG is omitted or nil, scroll upward by one line. This is different from `scroll-up-command' that scrolls a full screen. (fn &optional ARG)Fscroll-down-line Scroll text of selected window down ARG lines; or one line if no ARG. If ARG is omitted or nil, scroll down by one line. This is different from `scroll-down-command' that scrolls a full screen. (fn &optional ARG)Fscroll-other-window-down Scroll the "other window" down. For more details, see the documentation for `scroll-other-window'. (fn &optional LINES)Fbeginning-of-buffer-other-window Move point to the beginning of the buffer in the other window. Leave mark at previous position. With arg N, put point N/10 of the way from the true beginning. (fn ARG)Fend-of-buffer-other-window Move point to the end of the buffer in the other window. Leave mark at previous position. With arg N, put point N/10 of the way from the true end. (fn ARG)Vmouse-autoselect-window-timer Timer used by delayed window autoselection.Vmouse-autoselect-window-position-1 First mouse position recorded by delayed window autoselection.Vmouse-autoselect-window-position Last mouse position recorded by delayed window autoselection.Vmouse-autoselect-window-window Last window recorded by delayed window autoselection.Vmouse-autoselect-window-state When non-nil, special state of delayed window autoselection. Possible values are `suspend' (suspend autoselection after a menu or scrollbar interaction) and `select' (the next invocation of `handle-select-window' shall select the window immediately).Fmouse-autoselect-window-cancel Cancel delayed window autoselection. Optional argument FORCE means cancel unconditionally. (fn &optional FORCE)Fmouse-autoselect-window-start Start delayed window autoselection. MOUSE-POSITION is the last position where the mouse was seen as returned by `mouse-position'. Optional argument WINDOW non-nil denotes the window where the mouse was seen. Optional argument SUSPEND non-nil means suspend autoselection. (fn MOUSE-POSITION &optional WINDOW SUSPEND)Fmouse-autoselect-window-select Select window with delayed window autoselection. If the mouse position has stabilized in a non-selected window, select that window. The minibuffer window is selected only if the minibuffer is active. This function is run by `mouse-autoselect-window-timer'.Fhandle-select-window Handle select-window events. (fn EVENT)Ftruncated-partial-width-window-p Return non-nil if lines in WINDOW are specifically truncated due to its width. WINDOW must be a live window and defaults to the selected one. Return nil if WINDOW is not a partial-width window (regardless of the value of `truncate-lines'). Otherwise, consult the value of `truncate-partial-width-windows' for the buffer shown in WINDOW. (fn &optional WINDOW)Fwindow-adjust-process-window-size Adjust the window sizes of a process. WINDOWS is a list of windows associated with that process. REDUCER is a two-argument function used to combine the widths and heights of the given windows. (fn REDUCER WINDOWS)Fwindow-adjust-process-window-size-smallest Adjust the process window size of PROCESS. WINDOWS is a list of windows associated with PROCESS. Choose the smallest area available for displaying PROCESS's output. (fn PROCESS WINDOWS)Fwindow-adjust-process-window-size-largest Adjust the process window size of PROCESS. WINDOWS is a list of windows associated with PROCESS. Choose the largest area available for displaying PROCESS's output. (fn PROCESS WINDOWS)Fwindow--process-window-list Return an alist mapping processes to associated windows. A window is associated with a process if that window is displaying that processes's buffer.Fwindow--adjust-process-windows Update process window sizes to match the current window configuration.Sx-dnd.elc Vx-dnd-current-state The current state for a drop. This is an alist with one entry for each display. The value for each display is a vector that contains the state for drag and drop for that display. Elements in the vector are: Last buffer drag was in, last window drag was in, types available for drop, the action suggested by the source, the type we want for the drop, the action we want for the drop, any protocol specific data.Fx-dnd-init-frame Setup drag and drop for FRAME (i.e. create appropriate properties).Fx-dnd-get-state-cons-for-frame Return the entry in `x-dnd-current-state' for a frame or window.Fx-dnd-get-state-for-frame Return the state in `x-dnd-current-state' for a frame or window.Fx-dnd-default-test-function The default test function for drag and drop. WINDOW is where the mouse is when this function is called. It may be a frame if the mouse is over the menu bar, scroll bar or tool bar. ACTION is the suggested action from the source, and TYPES are the types the drop data can have. This function only accepts drops with types in `x-dnd-known-types'. It always returns the action private.Fx-dnd-current-type Return the type we want the DND data to be in for the current drop. FRAME-OR-WINDOW is the frame or window that the mouse is over.Fx-dnd-forget-drop Remove all state for the last drop. FRAME-OR-WINDOW is the frame or window that the mouse is over.Fx-dnd-maybe-call-test-function Call `x-dnd-test-function' if something has changed. WINDOW is the window the mouse is over. ACTION is the suggested action from the source. If nothing has changed, return the last action and type we got from `x-dnd-test-function'.Fx-dnd-save-state Save the state of the current drag and drop. WINDOW is the window the mouse is over. ACTION is the action suggested by the source. ACTION-TYPE is the result of calling `x-dnd-test-function'. If given, TYPES are the types for the drop data that the source supports. EXTRA-DATA is data needed for a specific protocol.Fx-dnd-handle-moz-url Handle one item of type text/x-moz-url. WINDOW is the window where the drop happened. ACTION is ignored. DATA is the moz-url, which is formatted as two strings separated by \r\n. The first string is the URL, the second string is the title of that URL. DATA is encoded in utf-16. Decode the URL and call `x-dnd-handle-uri-list'.Fx-dnd-insert-utf8-text Decode the UTF-8 text and insert it at point. TEXT is the text as a string, WINDOW is the window where the drop happened.Fx-dnd-insert-utf16-text Decode the UTF-16 text and insert it at point. TEXT is the text as a string, WINDOW is the window where the drop happened.Fx-dnd-insert-ctext Decode the compound text and insert it at point. TEXT is the text as a string, WINDOW is the window where the drop happened.Fx-dnd-handle-uri-list Split an uri-list into separate URIs and call `dnd-handle-one-url'. WINDOW is the window where the drop happened. STRING is the uri-list as a string. The URIs are separated by \r\n.Fx-dnd-handle-file-name Convert file names to URLs and call `dnd-handle-one-url'. WINDOW is the window where the drop happened. STRING is the file names as a string, separated by nulls.Fx-dnd-choose-type Choose which type we want to receive for the drop. TYPES are the types the source of the drop offers, a vector of type names as strings or symbols. Select among the types in `x-dnd-known-types' or KNOWN-TYPES if given, and return that type name. If no suitable type is found, return nil.Fx-dnd-drop-data Drop one data item onto a frame. EVENT is the client message for the drop, FRAME is the frame the drop occurred on. WINDOW is the window of FRAME where the drop happened. DATA is the data received from the source, and type is the type for DATA, see `x-dnd-types-alist'). Returns the action used (move, copy, link, private) if drop was successful, nil if not.Fx-dnd-handle-drag-n-drop-event Receive drag and drop events (X client messages). Currently XDND, Motif and old KDE 1.x protocols are recognized.Fx-dnd-handle-old-kde Open the files in a KDE 1.x drop.Vx-dnd-xdnd-to-action Mapping from XDND action types to lisp symbols.Fx-dnd-init-xdnd-for-frame Set the XdndAware property for FRAME to indicate that we do XDND.Fx-dnd-get-drop-width-height Return the width/height to be sent in a XDndStatus message. FRAME is the frame and W is the window where the drop happened. If ACCEPT is nil return 0 (empty rectangle), otherwise if W is a window, return its width/height, otherwise return the frame width/height.Fx-dnd-get-drop-x-y Return the x/y coordinates to be sent in a XDndStatus message. Coordinates are required to be absolute. FRAME is the frame and W is the window where the drop happened. If W is a window, return its absolute coordinates, otherwise return the frame coordinates.Fx-dnd-version-from-flags Return the version byte from the 32 bit FLAGS in an XDndEnter messageFx-dnd-more-than-3-from-flags Return the nmore-than3 bit from the 32 bit FLAGS in an XDndEnter messageFx-dnd-handle-xdnd Receive one XDND event (client message) and send the appropriate reply. EVENT is the client message. FRAME is where the mouse is now. WINDOW is the window within FRAME where the mouse is now. FORMAT is 32 (not used). MESSAGE is the data part of an XClientMessageEvent.Fx-dnd-init-motif-for-frame Set _MOTIF_DRAG_RECEIVER_INFO for FRAME to indicate that we do Motif DND.Vx-dnd-motif-message-types Mapping from numbers to Motif DND message types.Vx-dnd-motif-to-action Mapping from number to operation for Motif DND.