Fexpand-abbrev Expand the abbrev before point, if any. Effective when explicitly called even when `abbrev-mode' is nil. Returns t if expansion took place. arguments: () 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.Vlast-abbrev The abbrev-symbol of the last abbrev expanded. See the function `abbrev-symbol'.Vlast-abbrev-text The exact text of the last abbrev expanded. nil if the abbrev has already been unexpanded.Vlast-abbrev-location The location of the start of the last abbrev expanded.Vabbrev-start-location Buffer position for `expand-abbrev' to use as the start of the abbrev. nil means 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'.Vabbrev-all-caps *Non-nil means expand multi-word abbrevs all caps if abbrev was so.Vpre-abbrev-expand-hook Function or functions to be called before abbrev expansion is done. This is the first thing that `expand-abbrev' does, and so this may change the current abbrev table before abbrev lookup happens.Fcons Create a new cons, give it CAR and CDR as components, and return it. arguments: (CAR CDR) Flist Return a newly created list with specified arguments as elements. Any number of arguments, even zero arguments, are allowed.Fmake-list Return a newly created list of length LENGTH, with each element being INIT. arguments: (LENGTH INIT) Fmake-vector Return a newly created vector of length LENGTH, with each element being INIT. See also the function `vector'. arguments: (LENGTH INIT) Fvector Return a newly created vector with specified arguments as elements. Any number of arguments, even zero arguments, are allowed.Fmake-bit-vector Return a newly created bit vector of length LENGTH. Each element is set to INIT. See also the function `bit-vector'. arguments: (LENGTH INIT) Fbit-vector Return a newly created bit vector with specified arguments as elements. Any number of arguments, even zero arguments, are allowed.Fmake-byte-code Create a compiled-function object. Usage: (arglist instructions constants stack-size &optional doc-string interactive-spec) Note that, unlike all other emacs-lisp functions, calling this with five arguments is NOT the same as calling it with six arguments, the last of which is nil. If the INTERACTIVE arg is specified as nil, then that means that this function was defined with `(interactive)'. If the arg is not specified, then that means the function is not interactive. This is terrible behavior which is retained for compatibility with old `.elc' files which expected these semantics.Fmake-symbol Return a newly allocated uninterned symbol whose name is NAME. Its value and function definition are void, and its property list is nil. arguments: (STR) Fmake-marker Return a newly allocated marker which does not point at any place. arguments: () Fmake-string Return a newly created string of length LENGTH, with each element being INIT. LENGTH must be an integer and INIT must be a character. arguments: (LENGTH INIT) Fpurecopy Make a copy of OBJECT in pure storage. Recursively copies contents of vectors and cons cells. Does not copy symbols. arguments: (OBJ) Fgarbage-collect Reclaim storage for Lisp objects no longer needed. Returns info on amount of space in use: ((USED-CONSES . FREE-CONSES) (USED-SYMS . FREE-SYMS) (USED-MARKERS . FREE-MARKERS) USED-STRING-CHARS USED-VECTOR-SLOTS PLIST) where `PLIST' is a list of alternating keyword/value pairs providing more detailed information. Garbage collection happens automatically if you cons more than `gc-cons-threshold' bytes of Lisp data since previous garbage collection. arguments: () Fconsing-since-gc Return the number of bytes consed since the last garbage collection. "Consed" is a misnomer in that this actually counts allocation of all different kinds of objects, not just conses. If this value exceeds `gc-cons-threshold', a garbage collection happens. arguments: () 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. The value is divided by 1024 to make sure it will fit in a lisp integer. arguments: () Vgc-cons-threshold *Number of bytes of consing between garbage collections. "Consing" is a misnomer in that this actually counts allocation of all different kinds of objects, not just conses. 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 when `eval' or `funcall' are called. (Note that `funcall' is called implicitly as part of evaluation.) By binding this temporarily to a large number, you can effectively prevent garbage collection during a part of the program. See also `consing-since-gc'.Vpure-bytes-used Number of bytes of sharable Lisp data allocated so far.Vdata-bytes-used Number of bytes of unshared memory allocated in this session.Vdata-bytes-free Number of bytes of unshared memory remaining available in this session.Vdebug-allocation If non-zero, print out information to stderr about all objects allocated. See also `debug-allocation-backtrace-length'.Vdebug-allocation-backtrace-length Length (in stack frames) of short backtrace printed out by `debug-allocation'.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.Vpre-gc-hook Function or functions to be run just before each garbage collection. Interrupts, garbage collection, and errors are inhibited while this hook runs, so be extremely careful in what you add here. In particular, avoid consing, and do not interact with the user.Vpost-gc-hook Function or functions to be run just after each garbage collection. Interrupts, garbage collection, and errors are inhibited while this hook runs, so be extremely careful in what you add here. In particular, avoid consing, and do not interact with the user.Vgc-message String to print to indicate that a garbage collection is in progress. This is printed in the echo area. If the selected frame is on a window system and `gc-pointer-glyph' specifies a value (i.e. a pointer image instance) in the domain of the selected frame, the mouse pointer will change instead of this message being printed.Vgc-pointer-glyph Pointer glyph used to indicate that a garbage collection is in progress. If the selected window is on a window system and this glyph specifies a value (i.e. a pointer image instance) in the domain of the selected window, the pointer will be changed as specified during garbage collection. Otherwise, a message will be printed in the echo area, as controlled by `gc-message'.Fbufferp T if OBJECT is an editor buffer. arguments: (OBJECT) Fbuffer-live-p T if OBJECT is an editor buffer that has not been deleted. arguments: (OBJECT) Fbuffer-list Return a list of all existing live buffers. The order is specific to the selected frame; if the optional FRAME argument is provided, the ordering for that frame is returned instead. If the FRAME argument is t, then the global (non-frame) ordering is returned instead. arguments: (&optional FRAME) Fdecode-buffer Validate BUFFER or if BUFFER is nil, return the current buffer. If BUFFER is a valid buffer or a string representing a valid buffer, the corresponding buffer object will be returned. Otherwise an error will be signaled. arguments: (BUFFER) Fget-buffer Return the buffer named NAME (a string). If there is no live buffer named NAME, return nil. NAME may also be a buffer; if so, the value is that buffer. arguments: (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. Normally, the comparison is done by canonicalizing FILENAME (using `expand-file-name') and comparing that to the value of `buffer-file-name' for each existing buffer. However, If `find-file-compare-truenames' is non-nil, FILENAME will be converted to its truename and the search will be done on each buffer's value of `buffer-file-truename' instead of `buffer-file-name'. Otherwise, if `find-file-use-truenames' is non-nil, FILENAME will be converted to its truename and used for searching, but the search will still be done on `buffer-file-name'. arguments: (FILENAME) Fget-buffer-create Return the buffer named NAME, or create such a buffer and return it. A new buffer is created if there is no live buffer named NAME. If NAME starts with a space, the new buffer does not keep undo information. If NAME is a buffer instead of a string, then it is the value returned. The value is never nil. arguments: (NAME) Fmake-indirect-buffer Create and return an indirect buffer for buffer BASE, named NAME. BASE should be an existing buffer (or buffer name). NAME should be a string which is not the name of an existing buffer. If BASE is an indirect buffer itself, the base buffer for that buffer is made the base buffer for the newly created buffer. (Thus, there will never be indirect buffers whose base buffers are themselves indirect.) arguments: (BASE-BUFFER NAME) 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 `', incrementing NUMBER 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. arguments: (NAME &optional IGNORE) Fbuffer-name Return the name of BUFFER, as a string. With no argument or nil as argument, return the name of the current buffer. arguments: (&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. arguments: (&optional BUFFER) Fbuffer-base-buffer Return the base buffer of indirect buffer BUFFER. If BUFFER is not indirect, return nil. arguments: (&optional BUFFER) Fbuffer-indirect-children Return a list of all indirect buffers whose base buffer is BUFFER. If BUFFER is indirect, the return value will always be nil; see `make-indirect-buffer'. arguments: (&optional 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. arguments: (&optional BUFFER) Fbuffer-dedicated-frame Return the frame dedicated to this BUFFER, or nil if there is none. No argument or nil as argument means use current buffer as BUFFER. arguments: (&optional BUFFER) Fset-buffer-dedicated-frame For this BUFFER, set the FRAME dedicated to it. FRAME must be a frame or nil. arguments: (BUFFER FRAME) 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. arguments: (&optional BUFFER) Fset-buffer-modified-p Mark BUFFER as modified or unmodified according to FLAG. A non-nil FLAG means mark the buffer modified. No argument or nil as BUFFER means use current buffer. arguments: (FLAG &optional BUFFER) 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. arguments: (&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, one can set UNIQUE with a prefix argument. Returns the name we actually gave the buffer. This does not change the name of the visited file (if any). arguments: (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 third argument VISIBLE-OK is non-nil. If no other buffer exists, the buffer `*scratch*' is returned. If BUFFER is omitted or nil, some interesting buffer is returned. The ordering is for this frame; If second optional argument FRAME is provided, then the ordering is for that frame. If the second arg is t, then the global ordering is returned. Note: In FSF Emacs, this function takes two arguments: BUFFER and VISIBLE-OK. arguments: (&optional BUFFER FRAME VISIBLE-OK) Fbuffer-disable-undo Make BUFFER stop keeping undo information. Any undo records it already has are discarded. No argument or nil as argument means do this for the current buffer. arguments: (&optional BUFFER) Fbuffer-enable-undo Start keeping undo information for buffer BUFFER. No argument or nil as argument means do this for the current buffer. arguments: (&optional BUFFER) Fkill-buffer Kill the buffer BUFNAME. The argument may be a buffer or may be the name of a buffer. An argument of nil means kill the current buffer. Value is t if the buffer is actually killed, nil if user says no. The value of `kill-buffer-hook' (which may be local to that buffer), if not void, is a list of functions to be called, with no arguments, before the buffer is actually killed. The buffer to be killed is current when the hook functions are called. Any processes that have this buffer as the `process-buffer' are killed with `delete-process'. arguments: (BUFNAME) Frecord-buffer Place buffer BUF first in the buffer order. Call this function when a buffer is selected "visibly". This function changes the global buffer order and the per-frame buffer order for the selected frame. The buffer order keeps track of recency of selection so that `other-buffer' will return a recently selected buffer. See `other-buffer' for more information. arguments: (BUF) Fset-buffer-major-mode Set an appropriate major mode for BUFFER, according to `default-major-mode'. Use this function before selecting the buffer, since it may need to inspect the current buffer's major mode. arguments: (BUF) Fcurrent-buffer Return the current buffer as a Lisp object. arguments: () Fset-buffer Make the buffer BUFNAME current for editing operations. BUFNAME may be a buffer or the name of an existing buffer. See also `save-excursion' 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. arguments: (BUFNAME) Fbarf-if-buffer-read-only Signal a `buffer-read-only' error if the buffer is read-only. Optional argument BUFFER defaults to the current buffer. If optional argument START is non-nil, all extents in the buffer which overlap that part of the buffer are checked to ensure none has a `read-only' property. (Extents that lie completely within the range, however, are not checked.) END defaults to the value of START. If START and END are equal, the range checked is [START, END] (i.e. closed on both ends); otherwise, the range checked is (START, END) (open on both ends), except that extents that lie completely within [START, END] are not checked. See `extent-in-region-p' for a fuller discussion. arguments: (&optional BUFFER START END) Fbury-buffer Put BUFFER 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. If BUFFER is nil or omitted, bury the current buffer. Also, if BUFFER is nil or omitted, remove the current buffer from the selected window if it is displayed there. If BEFORE is non-nil, it specifies a buffer before which BUFFER will be placed, instead of being placed at the end. arguments: (&optional BUFFER BEFORE) Ferase-buffer Delete the entire contents of the BUFFER. Any clipping restriction in effect (see `narrow-to-region') is removed, so the buffer is truly empty after this. BUFFER defaults to the current buffer if omitted. arguments: (&optional BUFFER) 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 category table is set from `standard-category-table' (if support for Mule exists), local keymap is set to nil, the abbrev table is set from `fundamental-mode-abbrev-table', and all specifier specifications whose locale is the current buffer are removed. This function also forces redisplay of the modeline. 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'. arguments: () Fbuffer-memory-usage Return stats about the memory usage of buffer BUFFER. The values returned are in the form an alist of usage types and byte counts. The byte counts attempt to encompass all the memory used by the buffer (separate from the memory logically associated with a buffer or frame), including internal structures and any malloc() overhead associated with them. In practice, the byte counts are underestimated because certain memory usage is very hard to determine (e.g. the amount of memory used inside the Xt library or inside the X server) and because there is other stuff that might logically be associated with a window, buffer, or frame (e.g. window configurations, glyphs) but should not obviously be included in the usage counts. Multiple slices of the total memory usage may be returned, separated by a nil. Each slice represents a particular view of the memory, a particular way of partitioning it into groups. Within a slice, there is no overlap between the groups of memory, and each slice collectively represents all the memory concerned. arguments: (BUFFER) Vchange-major-mode-hook List of hooks to be run before killing local variables in a buffer. This should be used by any mode that temporarily alters the contents or the read-only state of the buffer. See also `kill-all-local-variables'.Vfind-file-compare-truenames If this is true, then the find-file command will check the truenames of all visited files when deciding whether a given file is already in a buffer, instead of just the buffer-file-name. This means that if you attempt to visit another file which is a symbolic-link to a file which is already in a buffer, the existing buffer will be found instead of a newly- created one. This works if any component of the pathname (including a non- terminal component) is a symbolic link as well, but doesn't work with hard links (nothing does). See also the variable find-file-use-truenames.Vfind-file-use-truenames If this is true, then a buffer's visited file-name will always be chased back to the real file; it will never be a symbolic link, and there will never be a symbolic link anywhere in its directory path. That is, the buffer-file-name and buffer-file-truename will be equal. This doesn't work with hard links. See also the variable find-file-compare-truenames.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.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 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 characters deleted, and the post-change beginning and end are at the same place.) Buffer changes made while executing `after-change-functions' don't call any before-change or after-change functions.Vbefore-change-function Vafter-change-function 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.Vundo-threshold Keep no more undo information once it exceeds this size. This threshold is applied when garbage collection happens. The size is counted as the number of bytes occupied, which includes both saved text and other data.Vundo-high-threshold Don't keep more than this much size of undo information. A command which pushes past this size is itself forgotten. This threshold is applied when garbage collection happens. The size is counted as the number of bytes occupied, which includes both saved text and other data.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' extent property or text property if the property value is a member of the list.Vkill-buffer-query-functions List of functions called with no args to query before killing a buffer.Vdelete-auto-save-files *Non-nil means delete auto-save file when a buffer is saved or killed.Vdefault-modeline-format Default value of `modeline-format' for buffers that don't override it. This is the same as (default-value 'modeline-format).Vdefault-abbrev-mode Default value of `abbrev-mode' for buffers that do not override it. This is the same as (default-value 'abbrev-mode).Vdefault-ctl-arrow Default value of `ctl-arrow' for buffers that do not override it. This is the same as (default-value 'ctl-arrow).Vdefault-display-direction Default display-direction for buffers that do not override it. This is the same as (default-value 'display-direction). Note: This is not yet implemented.Vdefault-truncate-lines Default value of `truncate-lines' for buffers that do not override it. This is the same as (default-value 'truncate-lines).Vdefault-fill-column Default value of `fill-column' for buffers that do not override it. This is the same as (default-value 'fill-column).Vdefault-left-margin Default value of `left-margin' for buffers that do not override it. This is the same as (default-value 'left-margin).Vdefault-tab-width Default value of `tab-width' for buffers that do not override it. This is the same as (default-value 'tab-width).Vdefault-case-fold-search Default value of `case-fold-search' for buffers that don't override it. This is the same as (default-value 'case-fold-search).Vdefault-buffer-file-type Default file type for buffers that do not override it. This is the same as (default-value 'buffer-file-type). The file type is nil for text, t for binary.Vmodeline-format Template for displaying modeline for current buffer. Each buffer has its own value of this variable. Value may be a string, a symbol or a list or cons cell. For a symbol, its value is used (but it is ignored if t or nil). A string appearing directly as the value of a symbol is processed verbatim in that the %-constructs below are not recognized. For a glyph, it is inserted as is. For a list whose car is a symbol, the symbol's value is taken, and if that is non-nil, the cadr of the list is processed recursively. Otherwise, the caddr of the list (if there is one) is processed. For a list whose car is a string or list, each element is processed recursively and the results are effectively concatenated. For a list whose car is an integer, the cdr of the list is processed and padded (if the number is positive) or truncated (if negative) to the width specified by that number. For a list whose car is an extent, the cdr of the list is processed normally but the results are displayed using the face of the extent, and mouse clicks over this section are processed using the keymap of the extent. (In addition, if the extent has a help-echo property, that string will be echoed when the mouse moves over this section.) See `generated-modeline-string' for more information. For a list whose car is a face, the cdr of the list is processed normally but the results will be displayed using the face in the car. For a list whose car is a keymap, the cdr of the list is processed normally but the keymap will apply for mouse clicks over the results, in addition to `modeline-map'. Nested keymap specifications are handled properly. A string is printed verbatim in the modeline except for %-constructs: (%-constructs are processed when the string is the entire modeline-format or when it is found in a cons-cell or a list) %b -- print buffer name. %c -- print the current column number. %f -- print visited file name. %* -- print %, * or hyphen. %+ -- print *, % or hyphen. % 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. %S -- print name of selected frame (only meaningful under X Windows). %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 -- Under MS-DOS, print T if files is text, B if binary. %C -- under XEmacs/mule, print the mnemonic for `buffer-file-coding-system'. %[ -- print one [ for each recursive editing level. %] similar. %% -- print %. %- -- print infinitely many dashes. Decimal digits after the % specify field width to which to pad.Vdefault-major-mode *Major mode for new buffers. Defaults to `fundamental-mode'. nil here means use current buffer's major mode.Vfundamental-mode-abbrev-table The abbrev table of mode-specific abbrevs for Fundamental Mode.Vmajor-mode Symbol for current buffer's major mode.Vmode-name Pretty name of current buffer's major mode (a string).Vabbrev-mode Non-nil turns on automatic expansion of abbrevs as they are inserted. Automatically becomes buffer-local when set in any fashion.Vcase-fold-search *Non-nil if searches should ignore case. Automatically becomes buffer-local when set in any fashion. BUG: Under XEmacs/Mule, translations to or from non-ASCII characters (this includes chars in the range 128 - 255) are ignored by the string/buffer-searching routines. Thus, `case-fold-search' will not correctly conflate a-umlaut and A-umlaut even if the case tables call for this.Vfill-column *Column beyond which automatic line-wrapping should happen. Automatically becomes buffer-local when set in any fashion.Vleft-margin *Column for the default indent-line-function to indent to. Linefeed indents to this column in Fundamental mode. Automatically becomes buffer-local when set in any fashion. Do not confuse this with the specifier `left-margin-width'; that controls the size of a margin that is displayed outside of the text area.Vtab-width *Distance between tab stops (for display of tab characters), in columns. Automatically becomes buffer-local when set in any fashion.Vctl-arrow *Non-nil means display control chars with uparrow. Nil means use backslash and octal digits. An integer means characters >= ctl-arrow are assumed to be printable, and will be displayed as a single glyph. Any other value is the same as 160 - the code SPC with the high bit on. The interpretation of this variable is likely to change in the future. Automatically becomes buffer-local when set in any fashion. This variable does not apply to characters whose display is specified in the current display table (if there is one).Vtruncate-lines *Non-nil means do not display continuation lines; give each line of text one frame line. Automatically becomes buffer-local when set in any fashion. 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.Vdefault-directory Name of default directory of current buffer. Should end with slash. Each buffer has its own value of this variable.Vbuffer-file-type "Non-nil if the visited file is a binary file. This variable is meaningful on MS-DOS and Windows NT. On those systems, it is automatically local in every buffer. On other systems, this variable is normally always nil.Vdefault-buffer-file-coding-system Default value of `buffer-file-coding-system' for buffers that do not override it. This is the same as (default-value 'buffer-file-coding-system). This value is used both for buffers without associated files and for buffers whose files do not have any apparent coding system. See `buffer-file-coding-system'.Vbuffer-file-coding-system *Current coding system for the current buffer. When the buffer is written out into a file, this coding system will be used for the encoding. Automatically buffer-local when set in any fashion. This is normally set automatically when a file is loaded in based on the determined coding system of the file (assuming that `buffer-file-coding-system-for-read' is set to `undecided', which calls for automatic determination of the file's coding system). Normally the modeline indicates the current file coding system using its mnemonic abbreviation. The default value for this variable (which is normally used for buffers without associated files) is also used when automatic detection of a file's encoding is called for and there was no discernable encoding in the file (i.e. it was entirely or almost entirely ASCII). The default value should generally *not* be set to nil (equivalent to `no-conversion'), because if extended characters are ever inserted into the buffer, they will be lost when the file is written out. A good choice is `iso-2022-8' (the simple ISO 2022 8-bit encoding), which will write out ASCII and Latin-1 characters in the standard (and highly portable) fashion and use standard escape sequences for other charsets. Another reasonable choice is `escape-quoted', which is equivalent to `iso-2022-8' but prefixes certain control characters with ESC to make sure they are not interpreted as escape sequences when read in. This latter coding system results in more "correct" output in the presence of control characters in the buffer, in the sense that when read in again using the same coding system, the result will virtually always match the original contents of the buffer, which is not the case with `iso-2022-8'; but the output is less portable when dealing with binary data -- there may be stray ESC characters when the file is read by another program. `buffer-file-coding-system' does *not* control the coding system used when a file is read in. Use the variables `buffer-file-coding-system-for-read' and `buffer-file-coding-system-alist' for that. From a Lisp program, if you wish to unilaterally specify the coding system used for one particular operation, you should bind the variable `coding-system-for-read' rather than changing the other two variables just mentioned, which are intended to be used for global environment specification. */ ); #endif /* MULE */ DEFVAR_BUFFER_LOCAL ("auto-fill-function", auto_fill_function /* Function called (if non-nil) to perform auto-fill. It is called after self-inserting a space at a column beyond `fill-column'. Each buffer has its own value of this variable. NOTE: This variable is not an ordinary hook; It may not be a list of functions.Vbuffer-file-name Name of file visited in current buffer, or nil if not visiting a file. Each buffer has its own value of this variable.Vbuffer-file-truename The real name of the file visited in the current buffer, or nil if not visiting a file. This is the result of passing buffer-file-name to the `file-truename' function. Every buffer has its own value of this variable. This variable is automatically maintained by the functions that change the file name associated with a buffer.Vbuffer-auto-save-file-name Name of file for auto-saving current buffer, or nil if buffer should not be auto-saved. Each buffer has its own value of this variable.Vbuffer-read-only Non-nil if this buffer is read-only. Each buffer has its own value of this variable.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. Each buffer has its own value of this variable.Vbuffer-saved-size Length of current buffer when last read in, saved or auto-saved. 0 initially. Each buffer has its own value of this variable.Vselective-display Non-nil enables selective display: Integer N as value means display only lines that start with less than n columns of space. A value of t means, after a ^M, all the rest of the line is invisible. Then ^M's in the file are written into files as newlines. Automatically becomes buffer-local when set in any fashion.Vselective-display-ellipses t means display ... on previous line when a line is invisible. Automatically becomes buffer-local when set in any fashion.Vlocal-abbrev-table Local (mode-specific) abbrev table of current buffer.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. Automatically becomes buffer-local when set in any fashion.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) indicates that the buffer previously had "unmodified" status. HIGH and LOW are the high and low 16-bit portions of 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 of the form EXTENT indicates that EXTENT was attached in the buffer. Undoing an entry of this form detaches EXTENT. An entry of the form (EXTENT START END) indicates that EXTENT was detached from the buffer. Undoing an entry of this form attaches EXTENT from START to END. 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. nil marks 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.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. Automatically local in all buffers.Vbuffer-invisibility-spec Invisibility spec of this buffer. The default is t, which means that text is invisible if it has (or is covered by an extent with) a non-nil `invisible' property. If the value is a list, a text character is invisible if its `invisible' property is an element in that list. If an element is a cons cell of the form (PROP . ELLIPSIS), then characters with property value PROP are invisible, and they have an ellipsis as well if ELLIPSIS is non-nil. Note that the actual characters used for the ellipsis are controllable using `invisible-text-glyph', and default to "...".Vgenerated-modeline-string String of characters in this buffer's modeline as of the last redisplay. Each time the modeline is recomputed, the resulting characters are stored in this string, which is resized as necessary. You may not set this variable, and modifying this string will not change the modeline; you have to change `modeline-format' if you want that. For each extent in `modeline-format' that is encountered when processing the modeline, a corresponding extent is placed in `generated-modeline-string' and covers the text over which the extent in `modeline-format' applies. The extent in `generated-modeline-string' is made a child of the extent in `modeline-format', which means that it inherits all properties from that extent. Note that the extents in `generated-modeline-string' are managed automatically. You should not explicitly put any extents in `generated-modeline-string'; if you do, they will disappear the next time the modeline is processed. For extents in `modeline-format', the following properties are currently handled: `face' Affects the face of the modeline text. Currently, faces do not merge properly; only the most recently encountered face is used. This is a bug. `keymap' Affects the disposition of button events over the modeline text. Multiple applicable keymaps *are* handled properly, and `modeline-map' still applies to any events that don't have bindings in extent-specific keymaps. `help-echo' If a string, causes the string to be displayed when the mouse moves over the text.Fbyte-code Function used internally in byte-compiled code. The first argument is a string of byte code; the second, a vector of constants; the third, the maximum stack depth used in this function. If the third argument is incorrect, Emacs may crash. arguments: (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.Finteractive Specify a way of parsing arguments for interactive use of a function. For example, write (defun foo (arg) "Doc string" (interactive "p") ...use arg...) to make ARG be the prefix argument 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. The argument of `interactive' is usually a string containing a code letter followed by a prompt. (Some code letters do not use I/O to get the argument and do not need prompts.) To prompt for multiple arguments, give a code letter, its prompt, a newline, and another code letter, etc. 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 function. Just `(interactive)' means pass no args when calling interactively. Code letters available are: a -- Function name: symbol with a function definition. b -- Name of existing buffer. B -- Name of buffer, possibly nonexistent. c -- Character. C -- Command name: symbol with interactive function definition. d -- Value of point as number. Does not do I/O. D -- Directory name. e -- Last mouse-button or misc-user event that invoked this command. If used more than once, the Nth `e' returns the Nth such event. Does not do I/O. f -- Existing file name. F -- Possibly nonexistent file name. i -- Always nil, ignore. Use to skip arguments when interactive. k -- Key sequence (a vector of events). K -- Key sequence to be redefined (do not automatically down-case). m -- Value of mark as number. Does not do I/O. n -- Number read using minibuffer. N -- Prefix arg converted to number, 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. S -- Any symbol. v -- Variable name: symbol that is user-variable-p. x -- Lisp expression read but not evaluated. X -- Lisp expression read and evaluated. z -- Coding system. (Always nil if no Mule support.) Z -- Coding system, nil if no prefix arg. (Always nil if no Mule support.) In addition, if the string begins with `*' then an error is signaled if the buffer is read-only. This happens before reading any arguments. If the string begins with `@', then the window the mouse is over is selected before anything else is done. If the string begins with `_', then this command will not cause the region to be deactivated when it completes; that is, `zmacs-region-stays' will be set to t when the command exits successfully. You may use any of `@', `*' and `_' at the beginning of the string; they are processed in the order that they appear.Fcall-interactively Call FUNCTION, reading 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'. If optional second arg RECORD-FLAG is the symbol `lambda', the interactive calling arguments for FUNCTION are read and returned as a list, but the function is not called on them. If RECORD-FLAG is `t' then unconditionally put this command in the command-history. Otherwise, this 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. arguments: (FUNCTION &optional RECORD-FLAG KEYS) Fprefix-numeric-value Return numeric meaning of raw prefix argument ARG. A raw prefix argument is what you get from `(interactive "P")'. Its numeric meaning is what you would get from `(interactive "p")'. arguments: (RAW) 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.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.Fcall-process-internal Call PROGRAM synchronously in separate process, with coding-system specified. Arguments are (PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS). 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. Remaining arguments are strings passed as command arguments to PROGRAM. If BUFFER 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.Fgetenv Return the value of environment variable VAR, as a string. VAR is a string, the name of the variable. When invoked interactively, prints the value in the echo area. arguments: (VAR &optional INTERACTIVEP) Vbinary-process-input *If non-nil then new subprocesses are assumed to take binary input.Vbinary-process-output *If non-nil then new subprocesses are assumed to produce binary output.Vshell-file-name *File name to load inferior shells from. Initialized from the SHELL environment variable.Vexec-path *List of directories to search programs to run in subprocesses. Each element is a string (directory name) or nil (try default directory).Vexec-directory Directory of architecture-dependent files that come with XEmacs, especially executable programs intended for XEmacs to invoke.Vdata-directory Directory of architecture-independent files that come with XEmacs, intended for XEmacs to use. Use of this variable in new code is almost never correct. See the function `locate-data-directory' and the variable `data-directory-list'.Vdata-directory-list List of directories of architecture-independent files that come with XEmacs or were installed as packages, and are intended for XEmacs to use.Vsite-directory Directory of architecture-independent files that do not come with XEmacs, intended for XEmacs to use.Vdoc-directory Directory containing the DOC file that comes with XEmacs. This is usually the same as exec-directory.Vprefix-directory The default directory under which XEmacs is installed.Vprocess-environment List of environment variables for subprocesses to inherit. Each element should be a string of the form ENVVARNAME=VALUE. The environment which Emacs inherits is placed in this variable when Emacs starts.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.Vinfopath-internal The configured initial value of Info-default-directory-list.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. See also `capitalize', `downcase' and `upcase-initials'. Optional second arg BUFFER specifies which buffer's case tables to use, and defaults to the current buffer. arguments: (OBJ &optional BUFFER) 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. Optional second arg BUFFER specifies which buffer's case tables to use, and defaults to the current buffer. arguments: (OBJ &optional BUFFER) Fcapitalize Convert argument to capitalized form and return that. This means that each word's first character is upper case and the rest is 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. Optional second arg BUFFER specifies which buffer's case tables to use, and defaults to the current buffer. arguments: (OBJ &optional BUFFER) Fupcase-initials Convert the initial of each word in the argument to upper case. Do not change the other letters of each word. 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 second arg BUFFER specifies which buffer's case tables to use, and defaults to the current buffer. arguments: (OBJ &optional BUFFER) 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'. Optional third arg BUFFER defaults to the current buffer. arguments: (B E &optional BUFFER) 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. Optional third arg BUFFER defaults to the current buffer. arguments: (B E &optional BUFFER) Fcapitalize-region Convert the region to capitalized form. Capitalized form means each word's first character is upper case and the rest of it is lower case. In programs, give two arguments, the starting and ending character positions to operate on. Optional third arg BUFFER defaults to the current buffer. arguments: (B E &optional BUFFER) Fupcase-initials-region Upcase the initial of each word in the region. Subsequent letters of each word are not changed. In programs, give two arguments, the starting and ending character positions to operate on. Optional third arg BUFFER defaults to the current buffer. arguments: (B E &optional BUFFER) Fupcase-word Convert following word (or ARG words) to upper case, moving over. With negative argument, convert previous words but do not move. See also `capitalize-word'. Optional second arg BUFFER defaults to the current buffer. arguments: (ARG &optional BUFFER) Fdowncase-word Convert following word (or ARG words) to lower case, moving over. With negative argument, convert previous words but do not move. Optional second arg BUFFER defaults to the current buffer. arguments: (ARG &optional BUFFER) Fcapitalize-word Capitalize the following word (or ARG words), moving over. This gives the word(s) a first character in upper case and the rest lower case. With negative argument, capitalize previous words but do not move. Optional second arg BUFFER defaults to the current buffer. arguments: (ARG &optional BUFFER) Fcase-table-p Return t iff ARG is a case table. See `set-case-table' for more information on these data structures. arguments: (TABLE) Fcurrent-case-table Return the case table of BUFFER, which defaults to the current buffer. arguments: (&optional BUFFER) Fstandard-case-table Return the standard case table. This is the one used for new buffers. arguments: () Fset-case-table Select a new case table for the current buffer. A case table is a list (DOWNCASE UPCASE CANONICALIZE EQUIVALENCES) where each element is either nil or a string of length 256. DOWNCASE maps each character to its lower-case equivalent. UPCASE maps each character to its upper-case equivalent; 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 cyclicly permutes each equivalence class (of characters with the same canonical equivalent); it may be nil, in which case it is deduced from CANONICALIZE. BUG: Under XEmacs/Mule, translations to or from non-ASCII characters (this includes chars in the range 128 - 255) are ignored by the string/buffer-searching routines. Thus, `case-fold-search' will not correctly conflate a-umlaut and A-umlaut even if the case tables call for this. arguments: (TABLE) Fset-standard-case-table Select a new standard case table for new buffers. See `set-case-table' for more info on case tables. arguments: (TABLE) Fchar-table-p Return non-nil if OBJECT is a char table. A char table is a table that maps characters (or ranges of characters) to values. Char tables are specialized for characters, only allowing particular sorts of ranges to be assigned values. Although this loses in generality, it makes for extremely fast (constant-time) lookups, and thus is feasible for applications that do an extremely large number of lookups (e.g. scanning a buffer for a character in a particular syntax, where a lookup in the syntax table must occur once per character). When Mule support exists, the types of ranges that can be assigned values are -- all characters -- an entire charset -- a single row in a two-octet charset -- a single character When Mule support is not present, the types of ranges that can be assigned values are -- all characters -- a single character To create a char table, use `make-char-table'. To modify a char table, use `put-char-table' or `remove-char-table'. To retrieve the value for a particular character, use `get-char-table'. See also `map-char-table', `clear-char-table', `copy-char-table', `valid-char-table-type-p', `char-table-type-list', `valid-char-table-value-p', and `check-char-table-value'. arguments: (OBJECT) Fchar-table-type-list Return a list of the recognized char table types. See `valid-char-table-type-p'. arguments: () Fvalid-char-table-type-p Return t if TYPE if a recognized char table type. Each char table type is used for a different purpose and allows different sorts of values. The different char table types are `category' Used for category tables, which specify the regexp categories that a character is in. The valid values are nil or a bit vector of 95 elements. Higher-level Lisp functions are provided for working with category tables. Currently categories and category tables only exist when Mule support is present. `char' A generalized char table, for mapping from one character to another. Used for case tables, syntax matching tables, `keyboard-translate-table', etc. The valid values are characters. `generic' An even more generalized char table, for mapping from a character to anything. `display' Used for display tables, which specify how a particular character is to appear when displayed. #### Not yet implemented. `syntax' Used for syntax tables, which specify the syntax of a particular character. Higher-level Lisp functions are provided for working with syntax tables. The valid values are integers. arguments: (TYPE) Fchar-table-type Return the type of char table TABLE. See `valid-char-table-type-p'. arguments: (TABLE) Freset-char-table Reset a char table to its default state. arguments: (TABLE) Fmake-char-table Make a new, empty char table of type TYPE. Currently recognized types are 'char, 'category, 'display, 'generic, and 'syntax. See `valid-char-table-type-p'. arguments: (TYPE) Fcopy-char-table Make a new char table which is a copy of OLD-TABLE. It will contain the same values for the same characters and ranges as OLD-TABLE. The values will not themselves be copied. arguments: (OLD-TABLE) Fget-char-table Find value for char CH in TABLE. arguments: (CH TABLE) Fget-range-char-table Find value for a range in TABLE. If there is more than one value, return MULTI (defaults to nil). arguments: (RANGE TABLE &optional MULTI) Fvalid-char-table-value-p Return non-nil if VALUE is a valid value for CHAR-TABLE-TYPE. arguments: (VALUE CHAR-TABLE-TYPE) Fcheck-valid-char-table-value Signal an error if VALUE is not a valid value for CHAR-TABLE-TYPE. arguments: (VALUE CHAR-TABLE-TYPE) Fput-char-table Set the value for chars in RANGE to be VAL in TABLE. RANGE specifies one or more characters to be affected and should be one of the following: -- t (all characters are affected) -- A charset (only allowed when Mule support is present) -- A vector of two elements: a two-octet charset and a row number (only allowed when Mule support is present) -- A single character VAL must be a value appropriate for the type of TABLE. See `valid-char-table-type-p'. arguments: (RANGE VAL TABLE) Fmap-char-table Map FUNCTION over entries in TABLE, calling it with two args, each key and value in the table. RANGE specifies a subrange to map over and is in the same format as the RANGE argument to `put-range-table'. If omitted or t, it defaults to the entire table. arguments: (FUNCTION TABLE &optional RANGE) Fcategory-table-p Return t if ARG is a category table. A category table is a type of char table used for keeping track of categories. Categories are used for classifying characters for use in regexps -- you can refer to a category rather than having to use a complicated [] expression (and category lookups are significantly faster). There are 95 different categories available, one for each printable character (including space) in the ASCII charset. Each category is designated by one such character, called a "category designator". They are specified in a regexp using the syntax "\cX", where X is a category designator. A category table specifies, for each character, the categories that the character is in. Note that a character can be in more than one category. More specifically, a category table maps from a character to either the value nil (meaning the character is in no categories) or a 95-element bit vector, specifying for each of the 95 categories whether the character is in that category. Special Lisp functions are provided that abstract this, so you do not have to directly manipulate bit vectors. arguments: (OBJ) Fcheck-category-at Return t if category of a character at POS includes DESIGNATOR, else return nil. Optional third arg specifies which buffer (defaulting to current), and fourth specifies the CATEGORY-TABLE, (defaulting to the buffer's category table). arguments: (POS DESIGNATOR &optional BUFFER CATEGORY-TABLE) Fchar-in-category-p Return t if category of character CHR includes DESIGNATOR, else nil. Optional third arg specifies the CATEGORY-TABLE to use, which defaults to the system default table. arguments: (CHR DESIGNATOR &optional CATEGORY-TABLE) Fcategory-table Return the current category table. This is the one specified by the current buffer, or by BUFFER if it is non-nil. arguments: (&optional BUFFER) Fstandard-category-table Return the standard category table. This is the one used for new buffers. arguments: () 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. arguments: (&optional TABLE) Fset-category-table Select a new category table for BUFFER. One argument, a category table. BUFFER defaults to the current buffer if omitted. arguments: (TABLE &optional BUFFER) Fcategory-designator-p Return t if ARG is a category designator (a char in the range ' ' to '~'). arguments: (OBJ) Fcategory-table-value-p Return t if ARG is a category table value. Valid values are nil or a bit vector of size 95. arguments: (OBJ) Freally-early-error-handler You should almost certainly not be using this. arguments: (X) Frecursive-edit Invoke the editor command loop recursively. To get out of the recursive edit, a command can do `(throw 'exit nil)'; that tells this function to return. Alternately, `(throw 'exit t)' makes this function signal an error. arguments: () Fcommand-loop-1 Invoke the internals of the canonical editor command loop. Don't call this unless you know what you're doing. arguments: () Vcommand-loop-level Number of recursive edits in progress.Vdisabled-command-hook Value is called instead of any command that is disabled, i.e. has a non-nil `disabled' property.Vleave-window-hook Not yet implemented.Venter-window-hook Not yet implemented.Vtop-level Form to evaluate when Emacs starts up. Useful to set before you dump a modified Emacs.Vcommand-loop Function or one argument to call to read and process keyboard commands. The passed argument specifies whether or not to handle errors.Fforward-char Move point right ARG characters (left if ARG negative). On reaching end of buffer, stop and signal error. Error signaling is suppressed if `signal-error-on-buffer-boundary' is nil. If BUFFER is nil, the current buffer is assumed. arguments: (&optional ARG BUFFER) Fbackward-char Move point left ARG characters (right if ARG negative). On attempt to pass beginning or end of buffer, stop and signal error. Error signaling is suppressed if `signal-error-on-buffer-boundary' is nil. If BUFFER is nil, the current buffer is assumed. arguments: (&optional ARG BUFFER) Fforward-line Move ARG lines forward (backward if ARG is negative). Precisely, if point is on line I, move to the start of line I + ARG. 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 ARG - number of lines moved; if backward, ARG + number moved. With positive ARG, a non-empty line at the end counts as one line successfully moved (for the return value). If BUFFER is nil, the current buffer is assumed. arguments: (&optional ARG BUFFER) Fpoint-at-bol Return the character position of the first 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 does not move point. arguments: (&optional ARG BUFFER) Fbeginning-of-line Move point to beginning of current line. With argument ARG not nil or 1, move forward ARG - 1 lines first. If scan reaches end of buffer, stop there without error. If BUFFER is nil, the current buffer is assumed. arguments: (&optional ARG BUFFER) Fpoint-at-eol 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 does not move point. arguments: (&optional ARG BUFFER) Fend-of-line Move point to end of current line. With argument ARG not nil or 1, move forward ARG - 1 lines first. If scan reaches end of buffer, stop there without error. If BUFFER is nil, the current buffer is assumed. arguments: (&optional ARG BUFFER) Fdelete-char Delete the following ARG characters (previous, with negative arg). Optional second arg KILLFLAG non-nil means kill instead (save in kill ring). Interactively, ARG is the prefix arg, and KILLFLAG is set if ARG was explicitly specified. arguments: (ARG &optional KILLFLAG) Fdelete-backward-char Delete the previous ARG characters (following, with negative ARG). Optional second arg KILLFLAG non-nil means kill instead (save in kill ring). Interactively, ARG is the prefix arg, and KILLFLAG is set if ARG was explicitly specified. arguments: (ARG &optional KILLFLAG) Fself-insert-command Insert the character you type. Whichever character you type to run this command is inserted. arguments: (ARG) Fself-insert-internal Invoke `self-insert-command' as if CH is entered from keyboard. arguments: (CH) Vself-insert-face If non-nil, set the face of the next self-inserting character to this. See also `self-insert-face-command'.Vself-insert-face-command This is the command that set up `self-insert-face'. If `last-command' does not equal this value, we ignore `self-insert-face'.Vblink-paren-function Function called, if non-nil, whenever a close parenthesis is inserted. More precisely, a char with closeparen syntax is self-inserted.Vsignal-error-on-buffer-boundary *t means beep when movement would take point past (point-min) or (point-max).Fvalid-console-type-p Given a CONSOLE-TYPE, return t if it is valid. Valid types are 'x, 'tty, and 'stream. arguments: (CONSOLE-TYPE) Fconsole-type-list Return a list of valid console types. arguments: () Fcdfw-console Given a console, device, frame, or window, return the associated console. Return nil otherwise. arguments: (OBJ) Fselected-console Return the console which is currently active. arguments: () Fselect-console Select the console CONSOLE. Subsequent editing commands apply to its selected device, selected frame, and selected window. The selection of CONSOLE lasts until the next time the user does something to select a different console, or until the next time this function is called. arguments: (CONSOLE) Fconsolep Return non-nil if OBJECT is a console. arguments: (OBJECT) Fconsole-live-p Return non-nil if OBJECT is a console that has not been deleted. arguments: (OBJECT) Fconsole-type Return the type of the specified console (e.g. `x' or `tty'). Value is `tty' for a tty console (a character-only terminal), `x' for a console that is an X display, `win32' for a console that is a Windows or Windows NT connection (not yet implemented), `pc' for a console that is a direct-write MS-DOS connection (not yet implemented), `stream' for a stream console (which acts like a stdio stream), and `dead' for a deleted console. arguments: (&optional CONSOLE) Fconsole-name Return the name of the specified console. arguments: (&optional CONSOLE) Fconsole-connection Return the connection of the specified console. CONSOLE defaults to the selected console if omitted. arguments: (&optional CONSOLE) Ffind-console Look for an existing console attached to connection CONNECTION. Return the console if found; otherwise, return nil. If TYPE is specified, only return consoles of that type; otherwise, return consoles of any type. (It is possible, although unlikely, that two consoles of different types could have the same connection name; in such a case, the first console found is returned.) arguments: (CONNECTION &optional TYPE) Fget-console Look for an existing console attached to connection CONNECTION. Return the console if found; otherwise, signal an error. If TYPE is specified, only return consoles of that type; otherwise, return consoles of any type. (It is possible, although unlikely, that two consoles of different types could have the same connection name; in such a case, the first console found is returned.) arguments: (CONNECTION &optional TYPE) Fdelete-console Delete CONSOLE, permanently eliminating it from use. Normally, you cannot delete the last non-minibuffer-only frame (you must use `save-buffers-kill-emacs' or `kill-emacs'). However, if optional second argument FORCE is non-nil, you can delete the last frame. (This will automatically call `save-buffers-kill-emacs'.) arguments: (CONSOLE &optional FORCE) Fconsole-list Return a list of all consoles. arguments: () Fconsole-device-list Return a list of all devices on CONSOLE. If CONSOLE is nil, the selected console will be used. arguments: (&optional CONSOLE) Fconsole-enable-input Enable input on console CONSOLE. arguments: (CONSOLE) Fconsole-disable-input Disable input on console CONSOLE. arguments: (CONSOLE) Fconsole-on-window-system-p Return non-nil if this console is on a window system. This generally means that there is support for the mouse, the menubar, the toolbar, glyphs, etc. arguments: (&optional CONSOLE) Fsuspend-emacs Stop Emacs and return to superior process. You can resume later. On systems that don't have 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 superior shell. 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 will start a subshell and wait for it to exit. arguments: (&optional STUFFSTRING) Fsuspend-console Suspend a console. For tty consoles, it sends a signal to suspend the process in charge of the tty, and removes the devices and frames of that console from the display. If optional arg CONSOLE is non-nil, it is the console to be suspended. Otherwise it is assumed to be the selected console. Some operating systems cannot stop processes and resume them later. On such systems, who knows what will happen. arguments: (&optional CONSOLE) Fresume-console Re-initialize a previously suspended console. For tty consoles, do stuff to the tty to make it sane again. arguments: (CONSOLE) Fset-input-mode Set mode of reading keyboard input. First arg is ignored, for backward compatibility. 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. First three arguments only apply to TTY consoles. Optional fourth arg QUIT if non-nil specifies character to use for quitting. Optional fifth arg CONSOLE specifies console to make changes to; nil means the selected console. See also `current-input-mode'. arguments: (IGNORED FLOW META &optional QUIT CONSOLE) Fcurrent-input-mode Return information about the way Emacs currently reads keyboard input. Optional arg CONSOLE specifies console to return information about; nil means the selected console. The value is a list of the form (nil FLOW META QUIT), where 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. FLOW, and META are only meaningful for TTY consoles. The elements of this list correspond to the arguments of `set-input-mode'. arguments: (&optional CONSOLE) Vcreate-console-hook Function or functions to call when a console is created. One argument, the newly-created console. This is called after the first frame has been created, but before calling the `create-device-hook' or `create-frame-hook'. Note that in general the console will not be selected.Vdelete-console-hook Function or functions to call when a console is deleted. One argument, the to-be-deleted console.Vdefault-function-key-map Default value of `function-key-map' for consoles that don't override it. This is the same as (default-value 'function-key-map).Vfunction-key-map Keymap mapping ASCII function key sequences onto their preferred forms. This allows Emacs to recognize function keys sent from ASCII terminals at any point in a key sequence. The `read-key-sequence' function replaces any subsequence bound by `function-key-map' with its binding. More precisely, when the active keymaps have no binding for the current key sequence but `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. The events that come from bindings in `function-key-map' are not themselves looked up in `function-key-map'. For example, suppose `function-key-map' binds `ESC O P' to [f1]. Typing `ESC O P' to `read-key-sequence' would return [#]. Typing `C-x ESC O P' would return [# #]. If [f1] were a prefix key, typing `ESC O P x' would return [# #].Vtty-erase-char The ERASE character as set by the user with stty. When this value cannot be determined or would be meaningless (on non-TTY consoles, for example), it is set to nil.Vdefining-kbd-macro Non-nil while a console macro is being defined. Don't set this!Vlast-kbd-macro Last kbd macro defined, as a vector of events; nil if none defined.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").Vdefault-minibuffer-frame Minibufferless frames use this frame's minibuffer. Emacs cannot create minibufferless frames unless this is set to an appropriate surrogate. XEmacs consults this variable only when creating minibufferless frames; once the frame is created, it sticks with its assigned minibuffer, no matter what this variable is set to. This means that this variable doesn't necessarily say anything meaningful about the current set of frames, or where the minibuffer is currently being displayed.Voverriding-terminal-local-map Keymap that overrides all other local keymaps, for the selected console only. If this variable is non-nil, it is used as a keymap instead of the buffer's local map, and the minor mode keymaps and text property keymaps.Vterminal-console The initial console-object, which represents XEmacs' stdout.Vterminal-device The initial device-object, which represents XEmacs' stdout.Vterminal-frame The initial frame-object, which represents XEmacs' stdout.Fwrong-type-argument Signal an error until the correct type value is given by the user. This function loops, signalling a continuable `wrong-type-argument' error with PREDICATE and VALUE as the data associated with the error and then calling PREDICATE on the returned value, until the value gotten satisfies PREDICATE. At that point, the gotten value is returned. arguments: (PREDICATE VALUE) Feq T if the two args are the same Lisp object. arguments: (OBJ1 OBJ2) Fold-eq T if the two args are (in most cases) the same Lisp object. Special kludge: A character is considered `old-eq' to its equivalent integer even though they are not the same object and are in fact of different types. This is ABSOLUTELY AND UTTERLY HORRENDOUS but is necessary to preserve byte-code compatibility with v19. This kludge is known as the "char-to-int confoundance disease" and appears in a number of other functions with `old-foo' equivalents. Do not use this function! arguments: (OBJ1 OBJ2) Fnull T if OBJECT is nil. arguments: (OBJECT) Fconsp T if OBJECT is a cons cell. arguments: (OBJECT) Fatom T if OBJECT is not a cons cell. This includes nil. arguments: (OBJECT) Flistp T if OBJECT is a list. This includes nil. arguments: (OBJECT) Fnlistp T if OBJECT is not a list. Lists include nil. arguments: (OBJECT) Fsymbolp T if OBJECT is a symbol. arguments: (OBJECT) Fkeywordp T if OBJECT is a keyword. arguments: (OBJECT) Fvectorp T if OBJECT is a vector. arguments: (OBJECT) Fbit-vector-p T if OBJECT is a bit vector. arguments: (OBJECT) Fstringp T if OBJECT is a string. arguments: (OBJECT) Farrayp T if OBJECT is an array (string, vector, or bit vector). arguments: (OBJECT) Fsequencep T if OBJECT is a sequence (list or array). arguments: (OBJECT) Fmarkerp T if OBJECT is a marker (editor pointer). arguments: (OBJECT) Fsubrp T if OBJECT is a built-in function. arguments: (OBJECT) Fsubr-min-args Return minimum number of args built-in function SUBR may be called with. arguments: (SUBR) Fsubr-max-args Return maximum number of args built-in function SUBR may be called with, or nil if it takes an arbitrary number of arguments or is a special form. arguments: (SUBR) Fcompiled-function-p t if OBJECT is a byte-compiled function object. arguments: (OBJECT) Fcharacterp t if OBJECT is a character. Unlike in XEmacs v19 and Emacs, a character is its own primitive type. Any character can be converted into an equivalent integer using `char-to-int'. To convert the other way, use `int-to-char'; however, only some integers can be converted into characters. Such an integer is called a `char-int'; see `char-int-p'. Some functions that work on integers (e.g. the comparison functions <, <=, =, /=, etc. and the arithmetic functions +, -, *, etc.) accept characters and implicitly convert them into integers. In general, functions that work on characters also accept char-ints and implicitly convert them into characters. WARNING: Neither of these behaviors is very desirable, and they are maintained for backward compatibility with old E-Lisp programs that confounded characters and integers willy-nilly. These behaviors may change in the future; therefore, do not rely on them. Instead, use the character-specific functions such as `char='. arguments: (OBJECT) Fchar-to-int Convert a character into an equivalent integer. The resulting integer will always be non-negative. The integers in the range 0 - 255 map to characters as follows: 0 - 31 Control set 0 32 - 127 ASCII 128 - 159 Control set 1 160 - 255 Right half of ISO-8859-1 If support for Mule does not exist, these are the only valid character values. When Mule support exists, the values assigned to other characters may vary depending on the particular version of XEmacs, the order in which character sets were loaded, etc., and you should not depend on them. arguments: (CH) Fint-to-char Convert an integer into the equivalent character. Not all integers correspond to valid characters; use `char-int-p' to determine whether this is the case. If the integer cannot be converted, nil is returned. arguments: (INTEGER) Fchar-int-p t if OBJECT is an integer that can be converted into a character. See `char-to-int'. arguments: (OBJECT) Fchar-or-char-int-p t if OBJECT is a character or an integer that can be converted into one. arguments: (OBJECT) Fchar-or-string-p t if OBJECT is a character (or a char-int) or a string. It is semi-hateful that we allow a char-int here, as it goes against the name of this function, but it makes the most sense considering the other steps we take to maintain compatibility with the old character/integer confoundedness in older versions of E-Lisp. arguments: (OBJECT) Fintegerp t if OBJECT is an integer. arguments: (OBJECT) Finteger-or-marker-p t if OBJECT is an integer or a marker (editor pointer). arguments: (OBJECT) Finteger-or-char-p t if OBJECT is an integer or a character. arguments: (OBJECT) Finteger-char-or-marker-p t if OBJECT is an integer, character or a marker (editor pointer). arguments: (OBJECT) Fnatnump t if OBJECT is a nonnegative integer. arguments: (OBJECT) Fbitp t if OBJECT is a bit (0 or 1). arguments: (OBJECT) Fnumberp t if OBJECT is a number (floating point or integer). arguments: (OBJECT) Fnumber-or-marker-p t if OBJECT is a number or a marker. arguments: (OBJECT) Fnumber-char-or-marker-p t if OBJECT is a number, character or a marker. arguments: (OBJECT) Ffloatp t if OBJECT is a floating point number. arguments: (OBJECT) Ftype-of Return a symbol representing the type of OBJECT. arguments: (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'. arguments: (LIST) Fcar-safe Return the car of OBJECT if it is a cons cell, or else nil. arguments: (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'. arguments: (LIST) Fcdr-safe Return the cdr of OBJECT if it is a cons cell, or else nil. arguments: (OBJECT) Fsetcar Set the car of CONSCELL to be NEWCAR. Returns NEWCAR. arguments: (CONSCELL NEWCAR) Fsetcdr Set the cdr of CONSCELL to be NEWCDR. Returns NEWCDR. arguments: (CONSCELL NEWCDR) Findirect-function Return the function at the end of OBJECT's function chain. If OBJECT is a symbol, follow all function indirections and return the final function binding. If OBJECT is not a symbol, just return it. Signal a void-function error if the final symbol is unbound. Signal a cyclic-function-indirection error if there is a loop in the function chain of symbols. arguments: (OBJECT) Faref Return the element of ARRAY at index INDEX. ARRAY may be a vector, bit vector, string, or byte-code object. IDX starts at 0. arguments: (ARRAY IDX) Faset Store into the element of ARRAY at index IDX the value NEWVAL. ARRAY may be a vector, bit vector, or string. IDX starts at 0. arguments: (ARRAY IDX NEWVAL) Fcompiled-function-instructions Return the byte-opcode string of the compiled-function object. arguments: (FUNCTION) Fcompiled-function-constants Return the constants vector of the compiled-function object. arguments: (FUNCTION) Fcompiled-function-stack-depth Return the max stack depth of the compiled-function object. arguments: (FUNCTION) Fcompiled-function-arglist Return the argument list of the compiled-function object. arguments: (FUNCTION) Fcompiled-function-interactive Return the interactive spec of the compiled-function object, or nil. If non-nil, the return value will be a list whose first element is `interactive' and whose second element is the interactive spec. arguments: (FUNCTION) Fcompiled-function-doc-string Return the doc string of the compiled-function object, if available. Functions that had their doc strings snarfed into the DOC file will have an integer returned instead of a string. arguments: (FUNCTION) Fcompiled-function-annotation Return the annotation of the compiled-function object, or nil. The annotation is a piece of information indicating where this compiled-function object came from. Generally this will be a symbol naming a function; or a string naming a file, if the compiled-function object was not defined in a function; or nil, if the compiled-function object was not created as a result of a `load'. arguments: (FUNCTION) Fcompiled-function-domain Return the domain of the compiled-function object, or nil. This is only meaningful if I18N3 was enabled when emacs was compiled. arguments: (FUNCTION) F= T if two args, both numbers, characters or markers, are equal. arguments: (NUM1 NUM2) F< T if first arg is less than second arg. Both must be numbers, characters or markers. arguments: (NUM1 NUM2) F> T if first arg is greater than second arg. Both must be numbers, characters or markers. arguments: (NUM1 NUM2) F<= T if first arg is less than or equal to second arg. Both must be numbers, characters or markers. arguments: (NUM1 NUM2) F>= T if first arg is greater than or equal to second arg. Both must be numbers, characters or markers. arguments: (NUM1 NUM2) F/= T if first arg is not equal to second arg. Both must be numbers, characters or markers. arguments: (NUM1 NUM2) Fzerop T if NUMBER is zero. arguments: (NUMBER) Fnumber-to-string Convert NUM to a string by printing it in decimal. Uses a minus sign if negative. NUM may be an integer or a floating point number. arguments: (NUM) Fstring-to-number Convert STRING to a number by parsing it as a decimal number. This parses both integers and floating point numbers. It ignores leading spaces and tabs. 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). Floating point numbers always use base 10. arguments: (STRING &optional BASE) F+ Return sum of any number of arguments. The arguments should all be numbers, characters or markers.F- Negate number or subtract numbers, characters or markers. With one arg, negates it. With more than one arg, subtracts all but the first from the first.F* Return product of any number of arguments. The arguments should all be numbers, characters or markers.F/ Return first argument divided by all the remaining arguments. The arguments must be numbers, characters or markers.F% Return remainder of first arg divided by second. Both must be integers, characters or markers. arguments: (NUM1 NUM2) Fmod Return X modulo Y. The result falls between zero (inclusive) and Y (exclusive). Both X and Y must be numbers, characters or markers. If either argument is a float, a float will be returned. arguments: (X Y) Fmax Return largest of all the arguments. All arguments must be numbers, characters or markers. The value is always a number; markers and characters are converted to numbers.Fmin Return smallest of all the arguments. All arguments must be numbers, characters or markers. The value is always a number; markers and characters are converted to numbers.Flogand Return bitwise-and of all the arguments. Arguments may be integers, or markers or characters converted to integers.Flogior Return bitwise-or of all the arguments. Arguments may be integers, or markers or characters converted to integers.Flogxor Return bitwise-exclusive-or of all the arguments. Arguments may be integers, or markers or characters converted to integers.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. arguments: (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. arguments: (VALUE COUNT) F1+ Return NUMBER plus one. NUMBER may be a number or a marker. Markers and characters are converted to integers. arguments: (NUMBER) F1- Return NUMBER minus one. NUMBER may be a number or a marker. Markers and characters are converted to integers. arguments: (NUMBER) Flognot Return the bitwise complement of NUMBER. NUMBER must be an integer. arguments: (NUMBER) Fweak-list-p Return non-nil if OBJECT is a weak list. arguments: (OBJECT) Fmake-weak-list Create a new weak list. A weak list object is an object that contains a list. This list behaves like any other list except that its elements do not count towards garbage collection -- if the only pointer to an object in inside a weak list (other than pointers in similar objects such as weak hash tables), the object is garbage collected and automatically removed from the list. This is used internally, for example, to manage the list holding the children of an extent -- an extent that is unused but has a parent will still be reclaimed, and will automatically be removed from its parent's list of children. Optional argument TYPE specifies the type of the weak list, and defaults to `simple'. Recognized types are `simple' Objects in the list disappear if not pointed to. `assoc' Objects in the list disappear if they are conses and either the car or the cdr of the cons is not pointed to. `key-assoc' Objects in the list disappear if they are conses and the car is not pointed to. `value-assoc' Objects in the list disappear if they are conses and the cdr is not pointed to. arguments: (&optional TYPE) Fweak-list-type Return the type of the given weak-list object. arguments: (WEAK) Fweak-list-list Return the list contained in a weak-list object. arguments: (WEAK) Fset-weak-list-list Change the list contained in a weak-list object. arguments: (WEAK NEW-LIST) Vdebug-issue-ebola-notices If non-nil, note when your code may be suffering from char-int confoundance. That is to say, if XEmacs encounters a usage of `eq', `memq', `equal', etc. where a int and a char with the same value are being compared, it will issue a notice on stderr to this effect, along with a backtrace. In such situations, the result would be different in XEmacs 19 versus XEmacs 20, and you probably don't want this. Note that in order to see these notices, you have to byte compile your code under XEmacs 20 -- any code byte-compiled under XEmacs 19 will have its chars and ints all confounded in the byte code, making it impossible to accurately determine Ebola infection.Vdebug-ebola-backtrace-length Length (in stack frames) of short backtrace printed out in Ebola notices. See `debug-issue-ebola-notices'.Fvalid-device-class-p Given a DEVICE-CLASS, return t if it is valid. Valid classes are 'color, 'grayscale, and 'mono. arguments: (DEVICE-CLASS) Fdevice-class-list Return a list of valid device classes. arguments: () Fdfw-device Given a device, frame, or window, return the associated device. Return nil otherwise. arguments: (OBJ) Fselected-device Return the device which is currently active. If optional CONSOLE is non-nil, return the device that would be currently active if CONSOLE were the selected console. arguments: (&optional CONSOLE) Fselect-device Select the device DEVICE. Subsequent editing commands apply to its console, selected frame, and selected window. The selection of DEVICE lasts until the next time the user does something to select a different device, or until the next time this function is called. arguments: (DEVICE) Fset-device-selected-frame Set the selected frame of device object DEVICE to FRAME. If DEVICE is nil, the selected device is used. If DEVICE is the selected device, this makes FRAME the selected frame. arguments: (DEVICE FRAME) Fdevicep Return non-nil if OBJECT is a device. arguments: (OBJECT) Fdevice-live-p Return non-nil if OBJECT is a device that has not been deleted. arguments: (OBJECT) Fdevice-name Return the name of the specified device. DEVICE defaults to the selected device if omitted. arguments: (&optional DEVICE) Fdevice-connection Return the connection of the specified device. DEVICE defaults to the selected device if omitted. arguments: (&optional DEVICE) Fdevice-console Return the console of the specified device. DEVICE defaults to the selected device if omitted. arguments: (&optional DEVICE) Ffind-device Look for an existing device attached to connection CONNECTION. Return the device if found; otherwise, return nil. If TYPE is specified, only return devices of that type; otherwise, return devices of any type. (It is possible, although unlikely, that two devices of different types could have the same connection name; in such a case, the first device found is returned.) arguments: (CONNECTION &optional TYPE) Fget-device Look for an existing device attached to connection CONNECTION. Return the device if found; otherwise, signal an error. If TYPE is specified, only return devices of that type; otherwise, return devices of any type. (It is possible, although unlikely, that two devices of different types could have the same connection name; in such a case, the first device found is returned.) arguments: (CONNECTION &optional TYPE) Fmake-device Create a new device of type TYPE, attached to connection CONNECTION. The valid values for CONNECTION are device-specific; however, CONNECTION is generally a string. (Specifically, for X devices, CONNECTION should be a display specification such as "foo:0", and for TTY devices, CONNECTION should be the filename of a TTY device file, such as "/dev/ttyp4", or nil to refer to XEmacs' standard input/output.) PROPS, if specified, should be a plist of properties controlling device creation. If CONNECTION specifies an already-existing device connection, that device is simply returned; no new device is created, and PROPS have no effect. arguments: (TYPE CONNECTION &optional PROPS) Fdelete-device Delete DEVICE, permanently eliminating it from use. Normally, you cannot delete the last non-minibuffer-only frame (you must use `save-buffers-kill-emacs' or `kill-emacs'). However, if optional second argument FORCE is non-nil, you can delete the last frame. (This will automatically call `save-buffers-kill-emacs'.) arguments: (DEVICE &optional FORCE) Fdevice-frame-list Return a list of all frames on DEVICE. If DEVICE is nil, the selected device will be used. arguments: (&optional DEVICE) Fdevice-class Return the class (color behavior) of DEVICE. This will be one of 'color, 'grayscale, or 'mono. arguments: (&optional DEVICE) Fset-device-class Set the class (color behavior) of DEVICE. CLASS should be one of 'color, 'grayscale, or 'mono. This is only allowed on device such as TTY devices, where the color behavior cannot necessarily be determined automatically. arguments: (DEVICE CLASS) Fdevice-pixel-width Return the width in pixels of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fdevice-pixel-height Return the height in pixels of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fdevice-mm-width Return the width in millimeters of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fdevice-mm-height Return the height in millimeters of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fdevice-bitplanes Return the number of bitplanes of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fdevice-color-cells Return the number of color cells of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fset-device-baud-rate Set the output baud rate of DEVICE to RATE. On most systems, changing this value will affect the amount of padding and other strategic decisions made during redisplay. arguments: (DEVICE RATE) Fdevice-baud-rate Return the output baud rate of DEVICE. arguments: (&optional DEVICE) Vcreate-device-hook Function or functions to call when a device is created. One argument, the newly-created device. This is called after the first frame has been created, but before calling the `create-frame-hook'. Note that in general the device will not be selected.Vdelete-device-hook Function or functions to call when a device is deleted. One argument, the to-be-deleted device.Fdirectory-files Return a list of names of files in DIRECTORY. There are four optional arguments: If FULL is non-nil, absolute pathnames of the files are returned. If MATCH is non-nil, only pathnames containing that regexp are returned. 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. If FILES-ONLY is the symbol t, then only the "files" in the directory will be returned; subdirectories will be excluded. If FILES-ONLY is not nil and not t, then only the subdirectories will be returned. Otherwise, if FILES-ONLY is nil (the default) then both files and subdirectories will be returned. arguments: (DIRNAME &optional FULL MATCH NOSORT FILES-ONLY) Ffile-name-completion Complete file name FILE in directory DIR. Returns the longest string common to all filenames in DIR that start with FILE. If there is only one and FILE matches it exactly, returns t. Returns nil if DIR contains no name starting with FILE. Filenames which end with any member of `completion-ignored-extensions' are not considered as possible completions for FILE unless there is no other possible completion. `completion-ignored-extensions' is not applied to the names of directories. arguments: (FILE DIRNAME) Ffile-name-all-completions Return a list of all completions of file name FILE in directory DIR. These are all file names in directory DIR which begin with FILE. Filenames which end with any member of `completion-ignored-extensions' are not considered as possible completions for FILE unless there is no other possible completion. `completion-ignored-extensions' is not applied to the names of directories. arguments: (FILE DIRNAME) Ffile-name-all-versions Return a list of all versions of file name FILE in directory DIR. arguments: (FILE DIRNAME) Ffile-version-limit Return the maximum number of versions allowed for FILE. Returns nil if the file cannot be opened or if there is no version limit. arguments: (FILENAME) Ffile-attributes Return a list of attributes of file FILENAME. Value is nil if specified file cannot be opened. Otherwise, list elements are: 0. t for directory, string (name linked to) for symbolic link, or nil. 1. Number of links to file. 2. File uid. 3. File gid. 4. Last access time, as a list of two integers. First integer has high-order 16 bits of time, second has low 16 bits. 5. Last modification time, likewise. 6. Last status change time, likewise. 7. Size in bytes. (-1, if number is out of range). 8. File modes, as a string of ten letters or dashes as in ls -l. 9. t iff file's gid would change if file were deleted and recreated. 10. inode number. 11. Device number. If file does not exist, returns nil. arguments: (FILENAME) Vcompletion-ignored-extensions *Completion ignores filenames ending in any string in this list. This variable does not affect lists of possible completions, but does affect the commands that actually do completions. It is used by the functions `file-name-completion' and `file-name-all-completions'.Fdocumentation Return the documentation string of FUNCTION. Unless a non-nil second argument is given, the string is passed through `substitute-command-keys'. arguments: (FUNCTION &optional RAW) Fdocumentation-property Return the documentation string that is SYMBOL's PROP property. This is like `get', but it can refer to strings stored in the `doc-directory/DOC' file; and if the value is a string, it is passed through `substitute-command-keys'. A non-nil third argument avoids this translation. arguments: (SYM PROP &optional RAW) FSnarf-documentation Used during Emacs initialization, before dumping runnable Emacs, to find pointers to doc strings stored in `.../lib-src/DOC' and record them in function definitions. One arg, FILENAME, a string which does not include a directory. The file is written to `../lib-src', and later found in `exec-directory' when doc strings are referred to in the dumped Emacs. arguments: (FILENAME) FVerify-documentation Used to make sure everything went well with Snarf-documentation. Writes to stderr if not. arguments: () Fsubstitute-command-keys Substitute key descriptions for command names in STRING. Return a new string which is STRING with substrings of the form \=\[COMMAND] replaced by either: a keystroke sequence that will invoke COMMAND, or "M-x COMMAND" if COMMAND is not on any keys. Substrings of the form \=\{MAPVAR} are replaced by summaries (made by describe-bindings) of the value of MAPVAR, taken as a keymap. Substrings of the form \=\ specify to use the value of MAPVAR as the keymap for future \=\[COMMAND] substrings. \=\= quotes the following character and is discarded; thus, \=\=\=\= puts \=\= into the output, and \=\=\=\[ puts \=\[ into the output. arguments: (STR) Vinternal-doc-file-name Name of file containing documentation strings of built-in symbols.Fchar-to-string Convert arg CH to a one-character string containing that character. arguments: (CH) Fstring-to-char Convert arg STRING to a character, the first character of that string. An empty string will return the constant `nil'. arguments: (STR) Fpoint Return value of point, as an integer. Beginning of buffer is position (point-min). If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpoint-marker Return value of point, as a marker object. This marker is a copy; you may modify it with reckless abandon. If optional argument DONT-COPY-P is non-nil, then it returns the real point-marker; modifying the position of this marker will move point. It is illegal to change the buffer of it, or make it point nowhere. If BUFFER is nil, the current buffer is assumed. arguments: (&optional DONT-COPY-P BUFFER) Fgoto-char Set point to POSITION, a number or marker. Beginning of buffer is position (point-min), end is (point-max). If BUFFER is nil, the current buffer is assumed. Return value of POSITION, as an integer. arguments: (POSITION &optional BUFFER) Fregion-beginning Return position of beginning of region in BUFFER, as an integer. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fregion-end Return position of end of region in BUFFER, as an integer. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fmark-marker Return this buffer's mark, as a marker object. If `zmacs-regions' is true, then this returns nil unless the region is currently in the active (highlighted) state. If optional argument FORCE is t, this returns the mark (if there is one) regardless of the zmacs-region state. You should *generally* not use the mark unless the region is active, if the user has expressed a preference for the zmacs-region model. Watch out! Moving this marker changes the mark position. If you set the marker not to point anywhere, the buffer will have no mark. If BUFFER is nil, the current buffer is assumed. arguments: (&optional FORCE BUFFER) Fsave-excursion Save point, mark, and current buffer; execute BODY; restore those things. Executes BODY just like `progn'. The values of point, mark and the current buffer are restored even in case of abnormal exit (throw or error).Fsave-current-buffer Save the current buffer; execute BODY; restore the current buffer. Executes BODY just like `progn'.Fbuffer-size Return the number of characters in BUFFER. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpoint-min Return the minimum permissible value of point in BUFFER. This is 1, unless narrowing (a buffer restriction) is in effect. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpoint-min-marker Return a marker to the minimum permissible value of point in BUFFER. This is the beginning, unless narrowing (a buffer restriction) is in effect. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpoint-max Return the maximum permissible value of point in BUFFER. This is (1+ (buffer-size)), unless narrowing (a buffer restriction) is in effect, in which case it is less. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpoint-max-marker Return a marker to the maximum permissible value of point BUFFER. This is (1+ (buffer-size)), unless narrowing (a buffer restriction) is in effect, in which case it is less. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Ffollowing-char Return the character following point. At the end of the buffer or accessible region, return 0. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpreceding-char Return the character preceding point. At the beginning of the buffer or accessible region, return 0. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) 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. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) 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. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fbolp Return T if point is at the beginning of a line. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) 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. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fchar-after Return character in BUFFER at position POS. POS is an integer or a buffer pointer. If POS is out of range, the value is nil. If BUFFER is nil, the current buffer is assumed. if POS is nil, the value of point is assumed. arguments: (&optional POS BUFFER) Fchar-before Return character in BUFFER before position POS. POS is an integer or a buffer pointer. If POS is out of range, the value is nil. If BUFFER is nil, the current buffer is assumed. if POS is nil, the value of point is assumed. arguments: (&optional POS BUFFER) 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 variable LOGNAME or USER is set, that determines the value of this function. If the optional argument UID is present, then environment variables are ignored and this function returns the login name for that UID, or nil. arguments: (&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'. arguments: () Fuser-uid Return the effective uid of Emacs, as an integer. arguments: () Fuser-real-uid Return the real uid of Emacs, as an integer. arguments: () Fuser-full-name Return the full name of the user logged in, as a string. If the optional argument USER is given, then the full name for that user is returned, or nil. USER may be either a login name or a uid. arguments: (&optional USER) Fsystem-name Return the name of the machine you are running on, as a string. arguments: () Femacs-pid Return the process ID of Emacs, as an integer. arguments: () 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 three integers. The first has the most significant 16 bits of the seconds, while the second has the least significant 16 bits. The third integer gives the microsecond count. The microsecond count is zero on systems that do not provide resolution finer than a second. arguments: () Fcurrent-process-time Return the amount of time used by this XEmacs process so far. The return value is a list of three floating-point numbers, expressing the user, system, and real times used by the process. The user time measures the time actually spent by the CPU executing the code in this process. The system time measures time spent by the CPU executing kernel code on behalf of this process (e.g. I/O requests made by the process). Note that the user and system times measure processor time, as opposed to real time, and only accrue when the processor is actually doing something: Time spent in an idle wait (waiting for user events to come in or for I/O on a disk drive or other device to complete) does not count. Thus, the user and system times will often be considerably less than the real time. Some systems do not allow the user and system times to be distinguished. In this case, the user time will be the total processor time used by the process, and the system time will be 0. Some systems do not allow the real and processor times to be distinguished. In this case, the user and real times will be the same and the system time will be 0. arguments: () Fformat-time-string Use FORMAT-STRING to format the time TIME. TIME is specified as (HIGH LOW . IGNORED) or (HIGH . LOW), as from `current-time' and `file-attributes'. If TIME is not specified it defaults to the current time. FORMAT-STRING may contain %-sequences to substitute parts of the time. %a is replaced by the abbreviated name of the day of week. %A is replaced by the full name of the day of week. %b is replaced by the abbreviated name of the month. %B is replaced by the full name of the month. %c is a synonym for "%x %X". %C is a locale-specific synonym, which defaults to "%A, %B %e, %Y" in the C locale. %d is replaced by the day of month, zero-padded. %D is a synonym for "%m/%d/%y". %e is replaced by the day of month, blank-padded. %h is a synonym for "%b". %H is replaced by the hour (00-23). %I is replaced by the hour (00-12). %j is replaced by the day of the year (001-366). %k is replaced by the hour (0-23), blank padded. %l is replaced by the hour (1-12), blank padded. %m is replaced by the month (01-12). %M is replaced by the minute (00-59). %n is a synonym for "\n". %p is replaced by AM or PM, as appropriate. %r is a synonym for "%I:%M:%S %p". %R is a synonym for "%H:%M". %S is replaced by the second (00-60). %t is a synonym for "\t". %T is a synonym for "%H:%M:%S". %U is replaced by the week of the year (00-53), first day of week is Sunday. %w is replaced by the day of week (0-6), Sunday is day 0. %W is replaced by the week of the year (00-53), first day of week is Monday. %x is a locale-specific synonym, which defaults to "%D" in the C locale. %X is a locale-specific synonym, which defaults to "%T" in the C locale. %y is replaced by the year without century (00-99). %Y is replaced by the year with century. %Z is replaced by the time zone abbreviation. The number of options reflects the `strftime' function. BUG: If the charset used by the current locale is not ISO 8859-1, the characters appearing in the day and month names may be incorrect. arguments: (FORMAT-STRING &optional -TIME) Fdecode-time Decode a time value as (SEC MINUTE HOUR DAY MONTH YEAR DOW DST ZONE). The optional SPECIFIED-TIME should be a list of (HIGH LOW . IGNORED) or (HIGH . LOW), as from `current-time' and `file-attributes', or `nil' to use the current 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 savings time is effect, otherwise nil. ZONE is an integer indicating the number of seconds east of Greenwich. (Note that Common Lisp has different meanings for DOW and ZONE.) arguments: (&optional SPECIFIED-TIME) Fencode-time Convert SECOND, MINUTE, HOUR, DAY, MONTH, YEAR and ZONE to internal time. This is the reverse operation of `decode-time', which see. ZONE defaults to the current time zone rule. This can be a string (as from `set-time-zone-rule'), or it can be a list (as from `current-time-zone') or an integer (as from `decode-time') applied without consideration for daylight savings 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 SEC, 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.Fcurrent-time-string Return the current 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. The format is `Sun Sep 16 01:03:52 1973'. If an argument is given, it specifies a time to format instead of the current time. The argument should have the form: (HIGH . LOW) or the form: (HIGH LOW . IGNORED). Thus, you can use times obtained from `current-time' and from `file-attributes'. arguments: (&optional SPECIFIED-TIME) 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 an argument is given, it specifies when the time zone offset is determined instead of using the current time. The argument should have the form: (HIGH . LOW) or the form: (HIGH LOW . IGNORED). Thus, you can use times obtained from `current-time' and from `file-attributes'. 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. arguments: (&optional SPECIFIED-TIME) Fset-time-zone-rule Set the local time zone using TZ, a string specifying a time zone rule. If TZ is nil, use implementation-defined default time zone information. arguments: (TZ) Finsert Insert the arguments, either strings or characters, at point. Point moves forward so that it ends up after the inserted text. Any other markers at the point of insertion remain before the text. If a string has non-null string-extent-data, new extents will be created.Finsert-before-markers Insert strings or characters at point, relocating markers after the text. Point moves forward so that it ends up after the inserted text. Any other markers at the point of insertion also end up after the text.Finsert-string Insert STRING into BUFFER at BUFFER's point. Point moves forward so that it ends up after the inserted text. Any other markers at the point of insertion remain before the text. If a string has non-null string-extent-data, new extents will be created. BUFFER defaults to the current buffer. arguments: (STRING &optional BUFFER) Finsert-char Insert COUNT (second arg) copies of CHR (first arg). Point and all markers are affected as in the function `insert'. COUNT defaults to 1 if omitted. The optional third arg IGNORED is INHERIT under FSF Emacs. This is highly bogus, however, and XEmacs always behaves as if `t' were passed to INHERIT. The optional fourth arg BUFFER specifies the buffer to insert the text into. If BUFFER is nil, the current buffer is assumed. arguments: (CHR &optional COUNT IGNORED BUFFER) Fbuffer-substring Return the contents of part of BUFFER as a string. The two arguments START and END are character positions; they can be in either order. If omitted, they default to the beginning and end of BUFFER, respectively. If there are duplicable extents in the region, the string remembers them in its extent data. If BUFFER is nil, the current buffer is assumed. arguments: (&optional START END BUFFER) Finsert-buffer-substring Insert before point a substring of the contents of buffer BUFFER. BUFFER may be a buffer or a buffer name. Arguments START and END are character numbers specifying the substring. They default to the beginning and the end of BUFFER. arguments: (BUFFER &optional START END) Fcompare-buffer-substrings Compare two substrings of two buffers; return result as number. the value is -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. Each substring is represented as three arguments: BUFFER, START and END. That makes six args in all, three for each substring. The value of `case-fold-search' in the current buffer determines whether case is significant or ignored. arguments: (BUFFER1 START1 END1 BUFFER2 START2 END2) 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. arguments: (START END FROMCHAR TOCHAR &optional NOUNDO) Ftranslate-region From START to END, translate characters according to TABLE. TABLE is a string; the Nth character in it is the mapping for the character with code N. Returns the number of characters changed. arguments: (START END TABLE) Fdelete-region Delete the text between point and mark. When called from a program, expects two arguments, positions (integers or markers) specifying the stretch to be deleted. If BUFFER is nil, the current buffer is assumed. arguments: (B E &optional BUFFER) Fwiden Remove restrictions (narrowing) from BUFFER. This allows the buffer's full text to be seen and edited. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fnarrow-to-region Restrict editing in 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. If BUFFER is nil, the current buffer is assumed. See also `save-restriction'. When calling from a program, pass two arguments; positions (integers or markers) bounding the text that should remain visible. arguments: (B E &optional BUFFER) 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. `save-restriction' can get confused if, within the BODY, you widen and then make changes outside the area within the saved restrictions. Note: if you are using both `save-excursion' and `save-restriction', use `save-excursion' outermost: (save-excursion (save-restriction ...))Fformat Format a string out of a control-string and arguments. The first argument is a control string. The other arguments are substituted into it to make the result, a string. It may contain %-sequences meaning to substitute the next argument. %s means print all objects as-is, using `princ'. %S means print all objects as s-expressions, using `prin1'. %d or %i means print as an integer in decimal (%o octal, %x lowercase hex, %X uppercase hex). %c means print as a single character. %f means print as a floating-point number in fixed notation (e.g. 785.200). %e or %E means print as a floating-point number in scientific notation (e.g. 7.85200e+03). %g or %G means print as a floating-point number in "pretty format"; depending on the number, either %f or %e/%E format will be used, and trailing zeroes are removed from the fractional part. The argument used for all but %s and %S must be a number. It will be converted to an integer or a floating-point number as necessary. %$ means reposition to read a specific numbered argument; for example, %3$s would apply the `%s' to the third argument after the control string, and the next format directive would use the fourth argument, the following one the fifth argument, etc. (There must be a positive integer between the % and the $). Zero or more of the flag characters `-', `+', ` ', `0', and `#' may be specified between the optional repositioning spec and the conversion character; see below. An optional minimum field width may be specified after any flag characters and before the conversion character; it specifies the minimum number of characters that the converted argument will take up. Padding will be added on the left (or on the right, if the `-' flag is specified), as necessary. Padding is done with spaces, or with zeroes if the `0' flag is specified. If the field width is specified as `*', the field width is assumed to have been specified as an argument. Any repositioning specification that would normally specify the argument to be converted will now specify where to find this field width argument, not where to find the argument to be converted. If there is no repositioning specification, the normal next argument is used. The argument to be converted will be the next argument after the field width argument unless the precision is also specified as `*' (see below). An optional period character and precision may be specified after any minimum field width. It specifies the minimum number of digits to appear in %d, %i, %o, %x, and %X conversions (the number is padded on the left with zeroes as necessary); the number of digits printed after the decimal point for %f, %e, and %E conversions; the number of significant digits printed in %g and %G conversions; and the maximum number of non-padding characters printed in %s and %S conversions. The default precision for floating-point conversions is six. If the precision is specified as `*', the precision is assumed to have been specified as an argument. The argument used will be the next argument after the field width argument, if any. If the field width was not specified as an argument, any repositioning specification that would normally specify the argument to be converted will now specify where to find the precision argument. If there is no repositioning specification, the normal next argument is used. The ` ' and `+' flags mean prefix non-negative numbers with a space or plus sign, respectively. The `#' flag means print numbers in an alternate, more verbose format: octal numbers begin with zero; hex numbers begin with a 0x or 0X; a decimal point is printed in %f, %e, and %E conversions even if no numbers are printed after it; and trailing zeroes are not omitted in %g and %G conversions. Use %% to put a single % into the output.Fchar-equal Return t if two characters match, optionally ignoring case. Both arguments must be characters (i.e. NOT integers). Case is ignored if `case-fold-search' is non-nil in BUFFER. If BUFFER is nil, the current buffer is assumed. arguments: (C1 C2 &optional BUFFER) Fchar= Return t if two characters match, case is significant. Both arguments must be characters (i.e. NOT integers). The optional buffer argument is for symmetry and is ignored. arguments: (C1 C2 &optional BUFFER) Ftranspose-regions Transpose region START1 to END1 with START2 to END2. The regions may 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 transpose any markers that happen to be located in the regions. (#### BUG: currently this function always acts as if LEAVE_MARKERS is non-nil.) Transposing beyond buffer boundaries is an error. arguments: (STARTR1 ENDR1 STARTR2 ENDR2 &optional LEAVE-MARKERS) Vzmacs-regions *Whether LISPM-style active regions should be used. This means that commands which operate on the region (the area between the point and the mark) will only work while the region is in the ``active'' state, which is indicated by highlighting. Executing most commands causes the region to not be in the active state, so (for example) \[kill-region] will only work immediately after activating the region. More specifically: - Commands which operate on the region only work if the region is active. - Only a very small set of commands cause the region to become active: Those commands whose semantics are to mark an area, like mark-defun. - The region is deactivated after each command that is executed, except that: - "Motion" commands do not change whether the region is active or not. set-mark-command (C-SPC) pushes a mark and activates the region. Moving the cursor with normal motion commands (C-n, C-p, etc) will cause the region between point and the recently-pushed mark to be highlighted. It will remain highlighted until some non-motion command is executed. exchange-point-and-mark (\[exchange-point-and-mark]) activates the region. So if you mark a region and execute a command that operates on it, you can reactivate the same region with \[exchange-point-and-mark] (or perhaps \[exchange-point-and-mark] \[exchange-point-and-mark]) to operate on it again. Generally, commands which push marks as a means of navigation (like beginning-of-buffer and end-of-buffer (M-< and M->)) do not activate the region. But commands which push marks as a means of marking an area of text (like mark-defun (\[mark-defun]), mark-word (\[mark-word]) or mark-whole-buffer (\[mark-whole-buffer])) do activate the region. The way the command loop actually works with regard to deactivating the region is as follows: - If the variable `zmacs-region-stays' has been set to t during the command just executed, the region is left alone (this is how the motion commands make the region stay around; see the `_' flag in the `interactive' specification). `zmacs-region-stays' is reset to nil before each command is executed. - If the function `zmacs-activate-region' has been called during the command just executed, the region is left alone. Very few functions should actually call this function. - Otherwise, if the region is active, the region is deactivated and the `zmacs-deactivate-region-hook' is called.Vzmacs-region-active-p Do not alter this. It is for internal use only.Vzmacs-region-stays Commands which do not wish to affect whether the region is currently highlighted should set this to t. Normally, the region is turned off after executing each command that did not explicitly turn it on with the function zmacs-activate-region. Setting this to true lets a command be non-intrusive. See the variable `zmacs-regions'.Vatomic-extent-goto-char-p Do not use this -- it will be going away soon. Indicates if `goto-char' has just been run. This information is allegedly needed to get the desired behavior for atomic extents and unfortunately is not available by any other means.Fhashtablep Return t if OBJ is a hashtable, else nil. arguments: (OBJ) Fmake-hashtable Make a hashtable of initial size SIZE. Comparison between keys is done with TEST-FUN, which must be one of `eq', `eql', or `equal'. The default is `eql'; i.e. two keys must be the same object (or have the same floating-point value, for floats) to be considered equivalent. See also `make-weak-hashtable', `make-key-weak-hashtable', and `make-value-weak-hashtable'. arguments: (SIZE &optional TEST-FUN) Fcopy-hashtable Make a new hashtable which contains the same keys and values as the given table. The keys and values will not themselves be copied. arguments: (OLD-TABLE) Fgethash Find hash value for KEY in HASHTABLE. If there is no corresponding value, return DEFAULT (defaults to nil). arguments: (KEY HASHTABLE &optional DEFAULT) Fremhash Remove hash value for KEY in HASHTABLE. arguments: (KEY HASHTABLE) Fputhash Hash KEY to VAL in HASHTABLE. arguments: (KEY VAL HASHTABLE) Fclrhash Remove all entries from HASHTABLE. arguments: (HASHTABLE) Fhashtable-fullness Return number of entries in HASHTABLE. arguments: (HASHTABLE) Fmaphash Map FUNCTION over entries in HASHTABLE, calling it with two args, each key and value in the table. arguments: (FUNCTION HASHTABLE) Fmake-weak-hashtable Make a fully weak hashtable of initial size SIZE. A weak hashtable is one whose pointers do not count as GC referents: for any key-value pair in the hashtable, if the only remaining pointer to either the key or the value is in a weak hash table, then the pair will be removed from the table, and the key and value collected. A non-weak hash table (or any other pointer) would prevent the object from being collected. You can also create semi-weak hashtables; see `make-key-weak-hashtable' and `make-value-weak-hashtable'. arguments: (SIZE &optional TEST-FUN) Fmake-key-weak-hashtable Make a key-weak hashtable of initial size SIZE. A key-weak hashtable is similar to a fully-weak hashtable (see `make-weak-hashtable') except that a key-value pair will be removed only if the key remains unmarked outside of weak hashtables. The pair will remain in the hashtable if the key is pointed to by something other than a weak hashtable, even if the value is not. arguments: (SIZE &optional TEST-FUN) Fmake-value-weak-hashtable Make a value-weak hashtable of initial size SIZE. A value-weak hashtable is similar to a fully-weak hashtable (see `make-weak-hashtable') except that a key-value pair will be removed only if the value remains unmarked outside of weak hashtables. The pair will remain in the hashtable if the value is pointed to by something other than a weak hashtable, even if the key is not. arguments: (SIZE &optional TEST-FUN) Finvocation-name Return the program name that was used to run XEmacs. Any directory names are omitted. arguments: () Finvocation-directory Return the directory name in which the Emacs executable was located. arguments: () Frunning-temacs-p True if running temacs. This means we are in the dumping stage. This is false during normal execution of the `xemacs' program, and becomes false once `run-emacs-from-temacs' is run. arguments: () Frun-emacs-from-temacs Do not call this. It will reinitialize your XEmacs. You'll be sorry.Fkill-emacs Exit the XEmacs job and kill it. Ask for confirmation, without argument. If ARG is an integer, return ARG as the exit program code. If ARG is a string, stuff it as keyboard input. The value of `kill-emacs-hook', if not void, is a list of functions (of no args), all of which are called before XEmacs is actually killed. arguments: (&optional ARG) Fdump-emacs-data Dump current state of XEmacs into data file FILENAME. This function exists on systems that use HAVE_SHM. arguments: (INTONAME) Fdump-emacs Dump current state of XEmacs into executable file FILENAME. Take symbols from SYMFILE (presumably the file you executed to run XEmacs). This is used in the file `loadup.el' when building XEmacs. Remember to set `command-line-processed' to nil before dumping if you want the dumped XEmacs to process its command line and announce itself normally when it is run. arguments: (INTONAME SYMNAME) Fnoninteractive Non-nil return value means XEmacs is running without interactive terminal. arguments: () Fquantify-start-recording-data Start recording Quantify data. arguments: () Fquantify-stop-recording-data Stop recording Quantify data. arguments: () Fquantify-clear-data Clear all Quantify data. arguments: () Vsuppress-early-error-handler-backtrace Non-nil means early error handler shouldn't print a backtraceVcommand-line-args Args passed by shell to XEmacs, as a list of strings.Vinvocation-name The program name that was used to run XEmacs. Any directory names are omitted.Vinvocation-directory The directory in which the XEmacs executable was found, to run it. The value is simply the program name if that directory's name is not known.Vsystem-type Value is symbol indicating type of operating system you are using.Vsystem-configuration Value is string indicating configuration XEmacs was built for.Vsystem-configuration-options String containing the configuration options XEmacs was built with.Vemacs-major-version Major version number of this version of Emacs, as an integer. Warning: this variable did not exist in Emacs versions earlier than: FSF Emacs: 19.23 XEmacs: 19.10Vemacs-minor-version Minor version number of this version of Emacs, as an integer. Warning: this variable did not exist in Emacs versions earlier than: FSF Emacs: 19.23 XEmacs: 19.10Vemacs-beta-version Beta number of this version of Emacs, as an integer. The value is nil if this is an officially released version of XEmacs. Warning: this variable does not exist in FSF Emacs or in XEmacs versions earlier than 20.3.Vxemacs-codename Codename of this version of Emacs (a string).Vpackage-path List of directories configured for package searching.Vnoninteractive Non-nil means XEmacs is running without interactive terminal.Vinhibit-package-init Set to non-nil when the package-path should not be searched at startup.Vemacs-priority Priority for XEmacs to run at. This value is effective only if set before XEmacs is dumped, and only if the XEmacs executable is installed with setuid to permit it to change priority. (XEmacs sets its uid back to the real uid.) Currently, you need to define SET_EMACS_PRIORITY in `config.h' before you compile XEmacs, to enable the code for this feature.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.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.Fif (if COND THEN ELSE...): 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.Fcond (cond CLAUSES...): 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 no clause succeeds, cond returns nil. If a clause has one element, as in (CONDITION), CONDITION's value if non-nil is returned from the cond-form.Fprogn (progn BODY...): eval BODY forms sequentially and return value of last one.Fprog1 (prog1 FIRST BODY...): eval FIRST and BODY sequentially; value from FIRST. The value of FIRST is saved during the evaluation of the remaining args, whose values are discarded.Fprog2 (prog2 X Y BODY...): eval X, Y and BODY sequentially; value from Y. The value of Y is saved during the evaluation of the remaining args, whose values are discarded.Flet* (let* VARLIST BODY...): 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.Flet (let VARLIST BODY...): 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.Fwhile (while TEST BODY...): 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.Fsetq (setq SYM VAL SYM VAL ...): 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.Fquote Return the argument, without evaluating it. `(quote x)' yields `x'.Ffunction Like `quote', but preferred for objects which are functions. In byte compilation, `function' causes its argument to be compiled. `quote' cannot do that.Fdefun (defun NAME ARGLIST [DOCSTRING] BODY...): define NAME as a function. The definition is (lambda ARGLIST [DOCSTRING] BODY...). See also the function `interactive'.Fdefmacro (defmacro NAME ARGLIST [DOCSTRING] BODY...): define NAME as a macro. The definition is (macro lambda ARGLIST [DOCSTRING] BODY...). When the macro is called, as in (NAME ARGS...), the function (lambda ARGLIST BODY...) is applied to the list ARGS... as it appears in the expression, and the result should be a form to be evaluated instead of the original.Fdefvar (defvar SYMBOL INITVALUE DOCSTRING): define SYMBOL as a variable. You are not required to define a variable in order to use it, but the definition can supply documentation and an initial value in a way that tags can recognize. INITVALUE is evaluated, and used to set SYMBOL, only if SYMBOL's value is void. (However, when you evaluate a defvar interactively, it acts like a defconst: SYMBOL's value is always set regardless of whether it's currently void.) If SYMBOL is buffer-local, its default value is what is set; buffer-local values are not affected. INITVALUE and DOCSTRING are optional. If DOCSTRING starts with *, this variable is identified as a user option. This means that M-x set-variable and M-x edit-options recognize it. If INITVALUE is missing, SYMBOL's value is not set. In lisp-interaction-mode defvar is treated as defconst.Fdefconst (defconst SYMBOL INITVALUE DOCSTRING): define SYMBOL as a constant variable. The intent is that programs do not change this value, but users may. Always sets the value of SYMBOL to the result of evalling INITVALUE. If SYMBOL is buffer-local, its default value is what is set; buffer-local values are not affected. DOCSTRING is optional. If DOCSTRING starts with *, this variable is identified as a user option. This means that M-x set-variable and M-x edit-options recognize it. Note: do not use `defconst' for user options in libraries that are not normally loaded, since it is useful for users to be able to specify their own values for such variables before loading the library. Since `defconst' unconditionally assigns the variable, it would override the user's choice.Fuser-variable-p Return t if VARIABLE is intended to be set and modified by users. (The alternative is a variable used internally in a Lisp program.) Determined by whether the first character of the documentation for the variable is `*'. arguments: (VARIABLE) Fmacroexpand-internal 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 species an environment of macro definitions to shadow the loaded ones for use in file byte-compilation. arguments: (FORM &optional ENV) Fcatch (catch TAG BODY...): eval BODY allowing nonlocal exits using `throw'. TAG is evalled to get the tag to use. Then the BODY is executed. Within BODY, (throw TAG) with same tag exits BODY and exits 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'.Fthrow (throw TAG VALUE): throw to the catch for TAG and return VALUE from it. Both TAG and VALUE are evalled. arguments: (TAG VAL) Funwind-protect Do BODYFORM, protecting with UNWINDFORMS. Usage looks like (unwind-protect BODYFORM UNWINDFORMS...). If BODYFORM completes normally, its value is returned after executing the UNWINDFORMS. If BODYFORM exits nonlocally, the UNWINDFORMS are executed anyway.Fcondition-case Regain control when an error is signalled. Usage looks like (condition-case VAR BODYFORM HANDLERS...). 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. As a special case, a CONDITION-NAME of t matches all errors, even those without the `error' condition name on them (e.g. `quit'). The car of a handler may be a list of condition names instead of a single condition name. When a handler handles an error, control returns to the condition-case and the handler BODY... is executed with VAR bound to (SIGNALED-CONDITIONS . SIGNAL-DATA). VAR may be nil; then you do not get access to the signal information. The value of the last BODY form is returned from the condition-case. See also the function `signal' for more info. Note that at the time the condition handler is invoked, the Lisp stack and the current catches, condition-cases, and bindings have all been popped back to the state they were in just before the call to `condition-case'. This means that resignalling the error from within the handler will not result in an infinite loop. If you want to establish an error handler that is called with the Lisp stack, bindings, etc. as they were when `signal' was called, rather than when the handler was set, use `call-with-condition-handler'.Fcall-with-condition-handler Regain control when an error is signalled, without popping the stack. Usage looks like (call-with-condition-handler HANDLER FUNCTION &rest ARGS). This function is similar to `condition-case', but the handler is invoked with the same environment (Lisp stack, bindings, catches, condition-cases) that was current when `signal' was called, rather than when the handler was established. HANDLER should be a function of one argument, which is a cons of the args (SIG . DATA) that were passed to `signal'. It is invoked whenever `signal' is called (this differs from `condition-case', which allows you to specify which errors are trapped). If the handler function returns, `signal' continues as if the handler were never invoked. (It continues to look for handlers established earlier than this one, and invokes the standard error-handler if none is found.)Fsignal Signal a continuable error. Args are ERROR-SYMBOL, and associated DATA. An error symbol is a symbol defined using `define-error'. DATA should be a list. Its elements are printed as part of the error message. If the signal is handled, DATA is made available to the handler. See also the function `signal-error', and the functions to handle errors: `condition-case' and `call-with-condition-handler'. Note that this function can return, if the debugger is invoked and the user invokes the "return from signal" option. arguments: (ERROR-SYMBOL DATA) Fcommandp T if FUNCTION makes provisions for interactive calling. This means it contains a description for how to read arguments to give it. The value is nil for an invalid function or a symbol with no function definition. 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 (i.e. the interactive flag) -- compiled-function objects with a non-nil `compiled-function-interactive' value -- subrs (built-in functions) that are interactively callable Also, a symbol satisfies `commandp' if its function definition does so. arguments: (FUNCTION) Fcommand-execute Execute CMD as an editor command. CMD must be an object that satisfies the `commandp' predicate. Optional second arg RECORD-FLAG is as in `call-interactively'. The argument KEYS specifies the value to use instead of (this-command-keys) when reading the arguments. arguments: (CMD &optional RECORD KEYS) Finteractive-p Return t if function in which this appears was called interactively. 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 in keyboard macro). arguments: () 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. arguments: (FUNCTION FILE &optional DOCSTRING INTERACTIVE TYPE) Feval Evaluate FORM and return its value. arguments: (FORM) Ffuncall Call first argument as a function, passing remaining arguments to it. Thus, (funcall 'cons 'x 'y) returns (x . y).Ffunction-min-args Return the number of arguments a function may be called with. The function may be any form that can be passed to `funcall', any special form, or any macro. arguments: (FUNCTION) Ffunction-max-args Return the number of arguments a function may be called with. If the function takes an arbitrary number of arguments or is a built-in special form, nil is returned. The function may be any form that can be passed to `funcall', any special form, or any macro. arguments: (FUNCTION) Fapply Call FUNCTION with our remaining args, using our last arg as list of args. Thus, (apply '+ 1 2 '(3 4)) returns 10.Ffetch-bytecode If byte-compiled OBJECT is lazy-loaded, fetch it now. arguments: (OBJECT) Frun-hooks Run each hook in HOOKS. Major mode functions use this. 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. To make a hook variable buffer-local, use `make-local-hook', not `make-local-variable'.Frun-hook-with-args Run HOOK with the specified arguments ARGS. HOOK should be a symbol, a hook variable. If HOOK 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 the given arguments and its return value is returned. If it is a list of functions, those functions are called, in order, with the given arguments ARGS. It is best not to depend on the value return by `run-hook-with-args', as that may change. To make a hook variable buffer-local, use `make-local-hook', not `make-local-variable'.Frun-hook-with-args-until-success Run HOOK with the specified arguments ARGS. HOOK should be a symbol, a hook variable. Its value should be a list of functions. We call those functions, one by one, passing arguments ARGS to each of them, until one of them returns a non-nil value. Then we return that value. If all the functions return nil, we return nil. To make a hook variable buffer-local, use `make-local-hook', not `make-local-variable'.Frun-hook-with-args-until-failure Run HOOK with the specified arguments ARGS. HOOK should be a symbol, a hook variable. Its value should be a list of functions. We call those functions, one by one, passing arguments ARGS to each of them, until one of them returns nil. Then we return nil. If all the functions return non-nil, we return non-nil. To make a hook variable buffer-local, use `make-local-hook', not `make-local-variable'.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. arguments: (LEVEL FLAG) Fbacktrace Print a trace of Lisp function calls currently active. Option arg STREAM specifies the output stream to send the backtrace to, and defaults to the value of `standard-output'. Optional second arg DETAILED means show places where currently active variable bindings, catches, condition-cases, and unwind-protects were made as well as function calls. arguments: (&optional STREAM DETAILED) Fbacktrace-frame Return the function and arguments N frames up from current execution point. If that frame has not evaluated the arguments yet (or is a special form), the value is (nil FUNCTION ARG-FORMS...). If that 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 N is more than the number of frames, the value is nil. arguments: (NFRAMES) Vmax-specpdl-size Limit on number of Lisp variable bindings & unwind-protects before error.Vmax-lisp-eval-depth Limit on depth in `eval', `apply' and `funcall' before error. This limit is 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.Vquit-flag Non-nil causes `eval' to abort, unless `inhibit-quit' is non-nil. Typing C-G sets `quit-flag' non-nil, regardless of `inhibit-quit'.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 signalled as soon as `inhibit-quit' is nil. To prevent this happening, set `quit-flag' to nil before making `inhibit-quit' nil. The value of `inhibit-quit' is ignored if a critical quit is requested by typing control-shift-G in an X frame.Vstack-trace-on-error *Non-nil means automatically display a backtrace buffer after any error that is not handled by a `condition-case'. If the value is a list, an error only means to display a backtrace if one of its condition symbols appears in the list. See also variable `stack-trace-on-signal'.Vstack-trace-on-signal *Non-nil means automatically display a backtrace buffer after any error that is signalled, whether or not it is handled by a `condition-case'. If the value is a list, an error only means to display a backtrace if one of its condition symbols appears in the list. See also variable `stack-trace-on-error'.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-error *Non-nil means enter debugger if an unhandled error is signalled. The debugger will not be entered if the error is handled by a `condition-case'. If the value is a list, an error only means to enter the debugger if one of its condition symbols appears in the list. This variable is overridden by `debug-ignored-errors'. See also variables `debug-on-quit' and `debug-on-signal'.Vdebug-on-signal *Non-nil means enter debugger if an error is signalled. The debugger will be entered whether or not the error is handled by a `condition-case'. If the value is a list, an error only means to enter the debugger if one of its condition symbols appears in the list. See also variable `debug-on-quit'.Vdebug-on-quit *Non-nil means enter debugger if quit is signalled (C-G, for example). Does not apply if quit is handled by a `condition-case'. Entering the debugger can also be achieved at any time (for X11 console) by typing control-shift-G to signal a critical quit.Vdebug-on-next-call Non-nil means enter debugger before next `eval', `apply' or `funcall'.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.Fmake-event Create a new, empty event. The TYPE and PLIST arguments must be nil. WARNING, the event object returned may be a reused one; see the function `deallocate-event'. arguments: (&optional TYPE PLIST) Fdeallocate-event Allow the given event structure to be reused. You MUST NOT use this event object after calling this function with it. You will lose. It is not necessary to call this function, as event objects are garbage-collected like all other objects; however, it may be more efficient to explicitly deallocate events when you are sure that it is safe to do so. arguments: (EVENT) Fcopy-event Make a copy of the given event object. If a second argument is given, the first event is copied into the second and the second is returned. If the second argument is not supplied (or is nil) then a new event will be made as with `allocate-event.' See also the function `deallocate-event'. arguments: (EVENT1 &optional EVENT2) Fevent-to-character Return the closest ASCII approximation to the given event object. If the event isn't a keypress, this returns nil. If the ALLOW-EXTRA-MODIFIERS argument is non-nil, then this is lenient in its translation; it will ignore modifier keys other than control and meta, and will ignore the shift modifier on those characters which have no shifted ASCII equivalent (Control-Shift-A for example, will be mapped to the same ASCII code as Control-A). If the ALLOW-META argument is non-nil, then the Meta modifier will be represented by turning on the high bit of the byte returned; otherwise, nil will be returned for events containing the Meta modifier. If the ALLOW-NON-ASCII argument is non-nil, then characters which are present in the prevailing character set (see the `character-set-property' variable) will be returned as their code in that character set, instead of the return value being restricted to ASCII. Note that specifying both ALLOW-META and ALLOW-NON-ASCII is ambiguous, as both use the high bit; `M-x' and `oslash' will be indistinguishable. arguments: (EVENT &optional ALLOW-EXTRA-MODIFIERS ALLOW-META ALLOW-NON-ASCII) Fcharacter-to-event Converts a keystroke specifier into an event structure, replete with bucky bits. The keystroke is the first argument, and the event to fill in is the second. This function contains knowledge about what the codes ``mean'' -- for example, the number 9 is converted to the character ``Tab'', not the distinct character ``Control-I''. Note that CH (the keystroke specifier) can be an integer, a character, a symbol such as 'clear, or a list such as '(control backspace). If the optional second argument is an event, it is modified; otherwise, a new event object is created. Optional third arg CONSOLE is the console to store in the event, and defaults to the selected console. If CH is an integer or character, the high bit may be interpreted as the meta key. (This is done for backward compatibility in lots of places.) If USE-CONSOLE-META-FLAG is nil, this will always be the case. If USE-CONSOLE-META-FLAG is non-nil, the `meta' flag for CONSOLE affects whether the high bit is interpreted as a meta key. (See `set-input-mode'.) If you don't want this silly meta interpretation done, you should pass in a list containing the character. Beware that character-to-event and event-to-character are not strictly inverse functions, since events contain much more information than the ASCII character set can encode. arguments: (CH &optional EVENT CONSOLE USE-CONSOLE-META-FLAG) Feventp True if OBJECT is an event object. arguments: (OBJECT) Fevent-live-p True if OBJECT is an event object that has not been deallocated. arguments: (OBJECT) Fevent-type Return the type of EVENT. This will be a symbol; one of key-press A key was pressed. button-press A mouse button was pressed. button-release A mouse button was released. misc-user Some other user action happened; typically, this is a menu selection or scrollbar action. motion The mouse moved. process Input is available from a subprocess. timeout A timeout has expired. eval This causes a specified action to occur when dispatched. magic Some window-system-specific event has occurred. empty The event has been allocated but not assigned. arguments: (EVENT) Fevent-timestamp Return the timestamp of the event object EVENT. arguments: (EVENT) Fevent-key Return the Keysym of the key-press event EVENT. This will be a character if the event is associated with one, else a symbol. arguments: (EVENT) Fevent-button Return the button-number of the given button-press or button-release event. arguments: (EVENT) Fevent-modifier-bits Return a number representing the modifier keys which were down when the given mouse or keyboard event was produced. See also the function event-modifiers. arguments: (EVENT) Fevent-modifiers Return a list of symbols, the names of the modifier keys which were down when the given mouse or keyboard event was produced. See also the function event-modifier-bits. arguments: (EVENT) Fevent-window-x-pixel Return the X position in pixels of mouse event EVENT. The value returned is relative to the window the event occurred in. This will signal an error if the event is not a mouse event. See also `mouse-event-p' and `event-x-pixel'. arguments: (EVENT) Fevent-window-y-pixel Return the Y position in pixels of mouse event EVENT. The value returned is relative to the window the event occurred in. This will signal an error if the event is not a mouse event. See also `mouse-event-p' and `event-y-pixel'. arguments: (EVENT) Fevent-x-pixel Return the X position in pixels of mouse event EVENT. The value returned is relative to the frame the event occurred in. This will signal an error if the event is not a mouse event. See also `mouse-event-p' and `event-window-x-pixel'. arguments: (EVENT) Fevent-y-pixel Return the Y position in pixels of mouse event EVENT. The value returned is relative to the frame the event occurred in. This will signal an error if the event is not a mouse event. See also `mouse-event-p' `event-window-y-pixel'. arguments: (EVENT) Fevent-over-text-area-p Return t if the mouse event EVENT occurred over the text area of a window. The modeline is not considered to be part of the text area. arguments: (EVENT) Fevent-over-modeline-p Return t if the mouse event EVENT occurred over the modeline of a window. arguments: (EVENT) Fevent-over-border-p Return t if the mouse event EVENT occurred over an internal border. arguments: (EVENT) Fevent-over-toolbar-p Return t if the mouse event EVENT occurred over a toolbar. arguments: (EVENT) Fevent-channel Return the channel that the event EVENT occurred on. This will be a frame, device, console, or nil for some types of events (e.g. eval events). arguments: (EVENT) Fevent-window Return the window over which mouse event EVENT occurred. This may be nil if the event occurred in the border or over a toolbar. The modeline is considered to be within the window it describes. arguments: (EVENT) Fevent-point Return the character position of the mouse event EVENT. If the event did not occur over a window, or did not occur over text, then this returns nil. Otherwise, it returns a position in the buffer visible in the event's window. arguments: (EVENT) Fevent-closest-point Return the character position closest to the mouse event EVENT. If the event did not occur over a window or over text, return the closest point to the location of the event. If the Y pixel position overlaps a window and the X pixel position is to the left of that window, the closest point is the beginning of the line containing the Y position. If the Y pixel position overlaps a window and the X pixel position is to the right of that window, the closest point is the end of the line containing the Y position. If the Y pixel position is above a window, return 0. If it is below the last character in a window, return the value of (window-end). arguments: (EVENT) Fevent-x Return the X position of the mouse event EVENT in characters. This is relative to the window the event occurred over. arguments: (EVENT) Fevent-y Return the Y position of the mouse event EVENT in characters. This is relative to the window the event occurred over. arguments: (EVENT) Fevent-modeline-position Return the character position in the modeline that EVENT occurred over. EVENT should be a mouse event. If EVENT did not occur over a modeline, nil is returned. You can determine the actual character that the event occurred over by looking in `generated-modeline-string' at the returned character position. Note that `generated-modeline-string' is buffer-local, and you must use EVENT's buffer when retrieving `generated-modeline-string' in order to get accurate results. arguments: (EVENT) Fevent-glyph Return the glyph that the mouse event EVENT occurred over, or nil. arguments: (EVENT) Fevent-glyph-extent Return the extent of the glyph that the mouse event EVENT occurred over. If the event did not occur over a glyph, nil is returned. arguments: (EVENT) Fevent-glyph-x-pixel Return the X pixel position of EVENT relative to the glyph it occurred over. EVENT should be a mouse event. If the event did not occur over a glyph, nil is returned. arguments: (EVENT) Fevent-glyph-y-pixel Return the Y pixel position of EVENT relative to the glyph it occurred over. EVENT should be a mouse event. If the event did not occur over a glyph, nil is returned. arguments: (EVENT) Fevent-toolbar-button Return the toolbar button that the mouse event EVENT occurred over. If the event did not occur over a toolbar button, nil is returned. arguments: (EVENT) Fevent-process Return the process of the given process-output event. arguments: (EVENT) Fevent-function Return the callback function of EVENT. EVENT should be a timeout, misc-user, or eval event. arguments: (EVENT) Fevent-object Return the callback function argument of EVENT. EVENT should be a timeout, misc-user, or eval event. arguments: (EVENT) Fevent-drag-and-drop-data Return the Dnd data list of EVENT. EVENT should be a dnd_drop event. arguments: (EVENT) Fevent-properties Return a list of all of the properties of EVENT. This is in the form of a property list (alternating keyword/value pairs). arguments: (EVENT) Vcharacter-set-property A symbol used to look up the 8-bit character of a keysym. To convert a keysym symbol to an 8-bit code, as when that key is bound to self-insert-command, we will look up the property that this variable names on the property list of the keysym-symbol. The window- system-specific code will set up appropriate properties and set this variable.Fut-log-text Log a usage-tracking message if `usage-tracking' is non-nil. Args are the same as to `format'. Returns whether the message was actually logged. If usage-tracking support was not compiled in, this function has no effect and always returns `nil'. See function `has-usage-tracking-p'.Vusage-tracking Whether usage tracking is turned on (Sun internal use only). Has no effect if usage tracking support has not been compiled in.Ftooltalk-message-p Return non-nil if OBJECT is a tooltalk message. arguments: (OBJECT) Ftooltalk-pattern-p Return non-nil if OBJECT is a tooltalk pattern. arguments: (OBJECT) Freceive-tooltalk-message Run tt_message_receive(). This function is the process handler for the ToolTalk connection process. arguments: (&optional IGNORE1 IGNORE2) Fget-tooltalk-message-attribute Return the indicated Tooltalk message attribute. Attributes are identified by symbols with the same name (underscores and all) as the suffix of the Tooltalk tt_message_ function that extracts the value. String attribute values are copied, enumerated type values (except disposition) are converted to symbols - e.g. TT_HANDLER is 'TT_HANDLER, uid and gid are represented by fixnums (small integers), opnum is converted to a string, and disposition is converted to a fixnum. We convert opnum (a C int) to a string, e.g. 123 => "123" because there's no guarantee that opnums will fit within the range of Lisp integers. Use the 'plist attribute instead of the C API 'user attribute for user defined message data. To retrieve the value of a message property specify the indicator for argn. For example to get the value of a property called 'rflag, use (get-tooltalk-message-attribute message 'plist 'rflag) To get the value of a message argument use one of the 'arg_val (strings), 'arg_ival (integers), or 'arg_bval (strings with embedded nulls), attributes. For example to get the integer value of the third argument: (get-tooltalk-message-attribute message 'arg_ival 2) As you can see, argument numbers are zero based. The type of each argument can be retrieved with the 'arg_type attribute; however, Tooltalk doesn't define any semantics for the string value of 'arg_type. Conventionally "string" is used for strings and "int" for 32 bit integers. Note that Emacs Lisp stores the lengths of strings explicitly (unlike C) so treating the value returned by 'arg_bval like a string is fine. arguments: (MESSAGE ATTRIBUTE &optional ARGN) Fset-tooltalk-message-attribute Initialize one Tooltalk message attribute. Attribute names and values are the same as for `get-tooltalk-message-attribute'. A property list is provided for user data (instead of the 'user message attribute); see `get-tooltalk-message-attribute'. The value of callback should be the name of a function of one argument. It will be applied to the message and matching pattern each time the state of the message changes. This is usually used to notice when the messages state has changed to TT_HANDLED (or TT_FAILED), so that reply argument values can be used. If one of the argument attributes is specified, 'arg_val, 'arg_ival, or 'arg_bval then argn must be the number of an already created argument. New arguments can be added to a message with add-tooltalk-message-arg. arguments: (VALUE MESSAGE ATTRIBUTE &optional ARGN) Freturn-tooltalk-message Send a reply to this message. The second argument can be 'reply, 'reject or 'fail; the default is 'reply. Before sending a reply all message arguments whose mode is TT_INOUT or TT_OUT should have been filled in - see set-tooltalk-message-attribute. arguments: (MESSAGE &optional MODE) Fcreate-tooltalk-message Create a new tooltalk message. The messages session attribute is initialized to the default session. Other attributes can be initialized with `set-tooltalk-message-attribute'. `make-tooltalk-message' is the preferred to create and initialize a message. Optional arg NO-CALLBACK says don't add a C-level callback at all. Normally don't do that; just don't specify the Lisp callback when calling `make-tooltalk-message'. arguments: (&optional NO-CALLBACK) Fdestroy-tooltalk-message Apply tt_message_destroy() to the message. It's not necessary to destroy messages after they've been processed by a message or pattern callback; the Lisp/Tooltalk callback machinery does this for you. arguments: (MESSAGE) Fadd-tooltalk-message-arg Append one new argument to the message. MODE must be one of TT_IN, TT_INOUT, or TT_OUT; VTYPE must be a string; and VALUE can be a string or an integer. Tooltalk doesn't define any semantics for VTYPE, so only the participants in the protocol you're using need to agree what types mean (if anything). Conventionally "string" is used for strings and "int" for 32 bit integers. Arguments can initialized by providing a value or with `set-tooltalk-message-attribute'. The latter is necessary if you want to initialize the argument with a string that can contain embedded nulls (use 'arg_bval). arguments: (MESSAGE MODE VTYPE &optional VALUE) Fsend-tooltalk-message Send the message on its way. Once the message has been sent it's almost always a good idea to get rid of it with `destroy-tooltalk-message'. arguments: (MESSAGE) Fcreate-tooltalk-pattern Create a new Tooltalk pattern. Its session attribute is initialized to be the default session. arguments: () Fdestroy-tooltalk-pattern Apply tt_pattern_destroy() to the pattern. This effectively unregisters the pattern. arguments: (PATTERN) Fadd-tooltalk-pattern-attribute Add one value to the indicated pattern attribute. All Tooltalk pattern attributes are supported except 'user. The names of attributes are the same as the Tooltalk accessors used to set them less the "tooltalk_pattern_" prefix and the "_add" ... arguments: (VALUE PATTERN ATTRIBUTE) Fadd-tooltalk-pattern-arg Add one fully specified argument to a tooltalk pattern. Mode must be one of TT_IN, TT_INOUT, or TT_OUT, type must be a string. Value can be an integer, string or nil. If value is an integer then an integer argument (tt_pattern_iarg_add) added otherwise a string argument is added. At present there's no way to add a binary data argument. arguments: (PATTERN MODE VTYPE &optional VALUE) Fregister-tooltalk-pattern Emacs will begin receiving messages that match this pattern. arguments: (PATTERN) Funregister-tooltalk-pattern Emacs will stop receiving messages that match this pattern. arguments: (PATTERN) Ftooltalk-pattern-prop-get Return the value of PROPERTY in tooltalk pattern PATTERN. This is the last value set with `tooltalk-pattern-prop-set'. arguments: (PATTERN PROPERTY) Ftooltalk-pattern-prop-set Set the value of PROPERTY to VALUE in tooltalk pattern PATTERN. It can be retrieved with `tooltalk-pattern-prop-get'. arguments: (PATTERN PROPERTY VALUE) Ftooltalk-pattern-plist-get Return the a list of all the properties currently set in PATTERN. arguments: (PATTERN) Ftooltalk-default-procid Return current default process identifier for your process. arguments: () Ftooltalk-default-session Return current default session identifier for the current default procid. arguments: () Ftooltalk-open-connection Opens a connection to the ToolTalk server. Returns t if successful, nil otherwise. arguments: () Vtooltalk-fd File descriptor returned by tt_initialize; nil if not connected to ToolTalk.Vtooltalk-message-handler-hook List of functions to be applied to each ToolTalk message reply received. This will always occur as a result of our sending a request message. Functions will be called with two arguments, the message and the corresponding pattern. This hook will not be called if the request message was created without a C-level callback function (see `tooltalk-unprocessed-message-hook').Vtooltalk-pattern-handler-hook List of functions to be applied to each pattern-matching ToolTalk message. This is all messages except those handled by `tooltalk-message-handler-hook'. Functions will be called with two arguments, the message and the corresponding pattern.Vtooltalk-unprocessed-message-hook List of functions to be applied to each unprocessed ToolTalk message. Unprocessed messages are messages that didn't match any patterns.Fpopup-menu Pop up the given menu. A menu description is a list of menu items, strings, and submenus. The first element of a menu must be a string, which is the name of the menu. This is the string that will be displayed in the parent menu, if any. For toplevel menus, it is ignored. This string is not displayed in the menu itself. If an element of a menu is a string, then that string will be presented in the menu as unselectable text. If an element of a menu is a string consisting solely of hyphens, then that item will be presented as a solid horizontal line. If an element of a menu is a list, it is treated as a submenu. The name of that submenu (the first element in the list) will be used as the name of the item representing this menu on the parent. Otherwise, the element must be a vector, which describes a menu item. A menu item can have any of the following forms: [ "name" callback ] [ "name" callback "suffix" ] [ "name" callback : : ... ] The name is the string to display on the menu; it is filtered through the resource database, so it is possible for resources to override what string is actually displayed. If the `callback' of a menu item is a symbol, then it must name a command. It will be invoked with `call-interactively'. If it is a list, then it is evaluated with `eval'. The possible keywords are this: :active
Same as in the first two forms: the expression is evaluated just before the menu is displayed, and the menu will be selectable only if the result is non-nil. :suffix "string" Same as "suffix" in the second form: the suffix is appended to the displayed name, providing a convenient way of adding the name of a command's ``argument'' to the menu, like ``Kill Buffer NAME''. :keys "string" Normally, the keyboard equivalents of commands in menus are displayed when the `callback' is a symbol. This can be used to specify keys for more complex menu items. It is passed through `substitute-command-keys' first. :style