;ELC ;;; compiled by rms@mole.gnu.ai.mit.edu on Thu Aug 11 16:25:45 1994 ;;; from file /home/fsf/rms/e19/lisp/subr.el ;;; emacs version 19.25.92.3. ;;; bytecomp version FSF 2.10 ;;; optimization is on. ;;; this file uses opcodes which do not exist in Emacs 18. (if (and (boundp 'emacs-version) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19"))) (error "`/home/fsf/rms/e19/lisp/subr.el' was compiled for Emacs 19")) (defalias 'lambda '(macro . #[(&rest cdr) "\nBD" [function lambda cdr] 3 "\ Return a lambda expression. A call of the form (lambda ARGS DOCSTRING INTERACTIVE BODY) is self-quoting; the result of evaluating the lambda expression is the expression itself. The lambda expression may then be treated as a function, i. e. stored as the function value of a symbol, passed to funcall or mapcar, etcetera. ARGS should take the same form as an argument list for a `defun'. DOCSTRING should be a string, as described for `defun'. It may be omitted. INTERACTIVE should be a call to the function `interactive', which see. It may also be omitted. BODY should be a list of lisp expressions."])) (defalias 'one-window-p #[(&optional nomini all-frames) " \n = ! \n#)=" [selected-window base-window nomini minibuffer-window next-window arg all-frames] 5 "\ Returns non-nil if the selected window is the only window (in its frame). Optional arg NOMINI non-nil means don't count the minibuffer even if it is active. The optional arg ALL-FRAMES t means count windows on all frames. If it is `visible', count windows on all visible frames. ALL-FRAMES nil or omitted means count only the selected frame, plus the minibuffer it uses (which may be on another frame). If ALL-FRAMES is neither nil nor t, count only the selected frame."]) (defalias 'walk-windows #[(proc &optional minibuf all-frames) " !   # ! \f=?$*" [window-minibuffer-p selected-window t minibuf walk-windows-start walk-windows-current next-window all-frames proc] 5 "\ Cycle through all visible windows, calling PROC for each one. PROC is called with a window as argument. Optional second arg MINIBUF t means count the minibuffer window even if not active. If MINIBUF is neither t nor nil it means not to count the minibuffer even if it is active. Optional third arg ALL-FRAMES, if t, means include all frames. ALL-FRAMES nil or omitted means cycle within the selected frame, but include the minibuffer window (if MINIBUF says so) that that frame uses, even if it is on another frame. If ALL-FRAMES is neither nil nor t, stick strictly to the selected frame."]) (defalias 'minibuffer-window-active-p #[(window) " ‰# =? ‰# )=)" [previous-window window nil prev next-window should-be-same] 5 "\ Return t if WINDOW (a minibuffer window) is now active."]) (byte-code "\"#" [defalias undefined #[nil " " [ding] 1 nil nil] put suppress-keymap t] 4) (defalias 'suppress-keymap #[(map &optional nodigits) " \f$ 0 #X/ !#T)" [substitute-key-definition self-insert-command undefined map global-map nodigits nil loop define-key "-" negative-argument 48 57 char-to-string digit-argument] 6 "\ Make MAP override all normally self-inserting keys to be undefined. Normally, as an exception, digits and minus-sign are set to make prefix args, but optional second arg NODIGITS non-nil treats them like other chars."]) (defvar key-substitution-in-progress nil "\ Used internally by substitute-key-definition.") (defalias 'substitute-key-definition #[(olddef newdef keymap &optional oldmap prefix) "\n !\" \f\nB\n\f:\f@:\f@@\f@A \f\fI G\fIƉ ;` @B A J :r @:r A  9!Kw =  # !\n>  %,z\f@!z\f@GWyH \f\fI G\fIƉ ; @B A  :$ @:$ A  9=!=K) =T  #o !o\n>o  %,T+\fA," [prefix "" oldmap keymap scan vector nil vec1 vconcat prefix1 key-substitution-in-progress defn char 0 skipped inner-def fboundp olddef define-key newdef keymapp substitute-key-definition arrayp array len i] 7 "\ Replace OLDDEF with NEWDEF for any keys in KEYMAP now defined as OLDDEF. In other words, OLDDEF is replaced with NEWDEF where ever it appears. If optional fourth argument OLDMAP is specified, we redefine in KEYMAP as NEWDEF those chars which are defined as OLDDEF in OLDMAP."]) (defalias 'define-key-after #[(keymap key definition after) " ! D\"\fGV! ȉ\fH\n \f \f?  A@\n=C AA @=\\ A@=\\ A~ A@=h\f { \fHB AB  A &," [keymapp keymap signal wrong-type-argument key 1 error "multi-event key specified in `define-key-after'" nil 0 first inserted done tail after t definition] 5 "\ Add binding in KEYMAP for KEY => DEFINITION, right after AFTER's binding. This is like `define-key' except that the binding for KEY is placed just after the binding for the event AFTER, instead of at the beginning of the map. The order matters when the keymap is used as a menu. KEY must contain just one event type--that is to say, it must be a string or vector of length 1."]) (defalias 'keyboard-translate #[(from to) " ! GV\f GV: G Z\"P W6 I T$ * \fI" [arrayp keyboard-translate-table "" from to i make-string 256 0 table] 5 "\ Translate character FROM to TO at a low level. This function creates a `keyboard-translate-table' if necessary and then modifies one entry in it."]) (defvar global-map nil "\ Default global keymap mapping Emacs keyboard input into commands. The value is a keymap which is usually (but not necessarily) Emacs's global map.") (defvar esc-map nil "\ Default keymap for ESC (meta) commands. The normal global definition of the character ESC indirects to this keymap.") (defvar ctl-x-map nil "\ Default keymap for C-x commands. The normal global definition of the character C-x indirects to this keymap.") (defvar ctl-x-4-map (make-sparse-keymap) "\ Keymap for subcommands of C-x 4") (byte-code "\n\"\f#" [defalias ctl-x-4-prefix ctl-x-4-map define-key ctl-x-map "4"] 4) (defvar ctl-x-5-map (make-sparse-keymap) "\ Keymap for frame commands.") (byte-code "\n\"\f#\" \" \" " [defalias ctl-x-5-prefix ctl-x-5-map define-key ctl-x-map "5" lsh 1 7 listify-key-sequence-1 logior 23] 4) (defalias 'listify-key-sequence #[(key) " ! \" \"\"" [vectorp key append nil mapcar #[(c) "V  \"" [c 127 logxor listify-key-sequence-1] 3]] 5 "\ Convert a key sequence to a list of events."]) (defalias 'eventp #[(obj) "9N:@9@N" [obj event-symbol-elements] 2 "\ True if the argument is an event object."]) (put (quote eventp) (quote byte-optimizer) (quote byte-compile-inline-expand)) (defalias 'event-modifiers #[(event) "<\n @ 9 NA \"\"!(\fB \"\"!= \"YA\fB \"\"!Z \" \"U^\fB \"\"!n\fB \"\"!~\fB \"\"!\fB\f))" [event type event-symbol-elements nil list zerop logand lsh 1 23 meta 22 127 32 control 21 255 shift 20 hyper 19 super 18 alt] 7 "\ Returns a list of symbols representing the modifier keys in event EVENT. The elements of the list may include `meta', `control', `shift', `hyper', `super', `alt', `click', `double', `triple', `drag', and `down'."]) (defalias 'event-basic-type #[(event) ":@9N@\"S\"W*\",)" [event event-symbol-elements logand lsh 1 18 base 32 logior 64] 6 "\ Returns the basic type of the given event (all modifiers removed). The value is an ASCII printing character (not upper case) or a symbol."]) (defalias 'mouse-movement-p #[(object) ": @=" [object mouse-movement] 2 "\ Return non-nil if OBJECT is a mouse movement event."]) (put (quote mouse-movement-p) (quote byte-optimizer) (quote byte-compile-inline-expand)) (defalias 'event-start #[(event) "A@" [event] 1 "\ Return the starting position of EVENT. If EVENT is a mouse press or a mouse click, this returns the location of the event. If EVENT is a drag, this returns the drag's starting position. The return value is of the form (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP) The `posn-' functions access elements of such lists."]) (put (quote event-start) (quote byte-optimizer) (quote byte-compile-inline-expand)) (defalias 'event-end #[(event) " 8: \f 8" [2 event 1] 2 "\ Return the ending location of EVENT. EVENT should be a click or drag event. If EVENT is a click event, this function is the same as `event-start'. The return value is of the form (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP) The `posn-' functions access elements of such lists."]) (put (quote event-end) (quote byte-optimizer) (quote byte-compile-inline-expand)) (defalias 'event-click-count #[(event) " 8 8‡" [2 event 1] 2 "\ Return the multi-click count of EVENT, a click or drag event. The return value is a positive integer."]) (put (quote event-click-count) (quote byte-optimizer) (quote byte-compile-inline-expand)) (defalias 'posn-window #[(position) "@" [position] 1 "\ Return the window in POSITION. POSITION should be a list of the form (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP) as returned by the `event-start' and `event-end' functions."]) (put (quote posn-window) (quote byte-optimizer) (quote byte-compile-inline-expand)) (defalias 'posn-point #[(position) "A@:\fA@@A@" [position] 1 "\ Return the buffer location in POSITION. POSITION should be a list of the form (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP) as returned by the `event-start' and `event-end' functions."]) (put (quote posn-point) (quote byte-optimizer) (quote byte-compile-inline-expand)) (defalias 'posn-x-y #[(position) " 8" [2 position] 2 "\ Return the x and y coordinates in POSITION. POSITION should be a list of the form (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP) as returned by the `event-start' and `event-end' functions."]) (put (quote posn-x-y) (quote byte-optimizer) (quote byte-compile-inline-expand)) (defalias 'posn-col-row #[(position) " 8 @) A@: A@@ A@=, \n!S\"Bt A@:: A@@= A@=M \n!\"Bt\n!W\nZ\n!\f @\f! A\f!+B*" [2 position window pair vertical-scroll-bar 0 scroll-bar-scale window-height horizontal-scroll-bar window-width framep window-frame frame frame-char-width x frame-char-height y] 6 "\ Return the column and row in POSITION, measured in characters. POSITION should be a list of the form (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP) as returned by the `event-start' and `event-end' functions. For a scroll-bar event, the result column is 0, and the row corresponds to the vertical position of the click in the scroll bar."]) (defalias 'posn-timestamp #[(position) " 8" [3 position] 2 "\ Return the timestamp of POSITION. POSITION should be a list of the form (WINDOW BUFFER-POSITION (X . Y) TIMESTAMP) as returned by the `event-start' and `event-end' functions."]) (byte-code "#\"\"\"\"\"\"\"\"\"\"\"\"\"" [put posn-timestamp byte-optimizer byte-compile-inline-expand defalias dot point dot-marker point-marker dot-min point-min dot-max point-max window-dot window-point set-window-dot set-window-point read-input read-string send-string process-send-string send-region process-send-region show-buffer set-window-buffer buffer-flush-undo buffer-disable-undo eval-current-buffer eval-buffer compiled-function-p byte-code-function-p] 4) (defun baud-rate nil "\ Obsolete function returning the value of the `baud-rate' variable. Please convert your programs to use the variable `baud-rate' directly." baud-rate) (byte-code "\"\"\"\"\"\"\"\"\"\"K\"K\"\"\"\"" [defalias string= string-equal string< string-lessp move-marker set-marker eql eq not null rplaca setcar rplacd setcdr beep ding indent-to-column indent-to backward-delete-char delete-backward-char search-forward-regexp re-search-forward search-backward-regexp re-search-backward int-to-string number-to-string set-match-data store-match-data string-to-int string-to-number] 3) (defalias 'run-hooks #[(&rest hooklist) "C@ !: J: J<6 @=6  2 @ A')9 ))AƇ" [hooklist sym boundp value lambda functions nil] 3 "\ Takes hook names and runs each one in turn. 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."]) (defalias 'run-hook-with-args #[(hook &rest args) " !' J' JE @ J CD JBL" [boundp hook nil old lambda function append] 4 "\ Add to the value of HOOK the function FUNCTION. FUNCTION is not added if already present. FUNCTION is added (if necessary) at the beginning of the hook list unless the optional argument APPEND is non-nil, in which case FUNCTION is added at the end. HOOK should be a symbol, and FUNCTION may be any valid function. If HOOK is void, it is first set to nil. If HOOK's value is a single function, it is changed to a list of functions."]) (defalias 'remove-hook #[(hook function) " !? J?\n??/ J:#\n \"+ \n+ L)" [boundp hook function hook-value delete nil] 4 "\ Remove from the value of HOOK the function FUNCTION. HOOK should be a symbol, and FUNCTION may be any valid function. If FUNCTION isn't the value of HOOK, or, if FUNCTION doesn't appear in the list of hooks to run in HOOK, then nothing is done. See `add-hook'."]) (defalias 'eval-after-load #[(file form) " \n\"\f C\nB \n\"\f A \fC)\f" [assoc file after-load-alist elt form] 3 "\ Arrange that, if FILE is ever loaded, FORM will be run at that time. This makes or adds to an entry on `after-load-alist'. It does nothing if FORM is already on the list for FILE. FILE should be the name of a library, with no directory name."]) (defalias 'eval-next-after-load #[(file) " \"" [eval-after-load file read] 3 "\ Read the following input sexp, and run it whenever FILE is loaded. This makes or adds to an entry on `after-load-alist'. FILE should be the name of a library, with no directory name."]) (defalias 'read-quoted-char #[(&optional prompt) "\fWr\fU\" *\f*\n\nXZ\nXZ _\nZ\\\fT\n#!\fVj\nCӉ\nӉ \"\"Uق \"\"+" [0 nil char code count 3 help-form inhibit-quit prompt message "%s-" read-char quit-flag 48 55 8 format "%s %c" unread-command-events 259 logior logand lsh 1 23 128 255] 7 "\ Like `read-char', except that if the first character read is an octal digit, we read up to two more octal digits and return the character represented by the octal number consisting of those digits. Optional argument PROMPT specifies a string to use to prompt the user."]) (defalias 'force-mode-line-update #[(&optional all) "\n q) !" [all other-buffer set-buffer-modified-p buffer-modified-p] 2 "\ Force the mode-line of the current buffer to be redisplayed. With optional non-nil ALL, force redisplay of all mode-lines."]) (defalias 'momentary-string-display #[(string pos &optional exit-char message) "  \nˎ\fb!` V6 ҥ!!`\fVI\fb!)Q!\" =fC." [exit-char 32 nil t buffer-modified-p buffer-file-name insert-end name modified buffer-undo-list buffer-read-only ((byte-code "\n |)\n !" [insert-end pos name buffer-file-name set-buffer-modified-p modified] 2)) pos insert-before-markers string window-end recenter window-height 2 move-to-window-line 0 message "Type %s to continue editing." single-key-description read-event char unread-command-events] 6 "\ Momentarily display STRING in the buffer at POS. Display remains until next character is typed. If the char is EXIT-CHAR (optional third arg, default is SPC) it is swallowed; otherwise it is then available as input (as a command if nothing else). Display MESSAGE (optional fourth arg) in the echo area. If MESSAGE is nil, instructions to type EXIT-CHAR are displayed there."]) (defun ignore (&rest ignore) "\ Do nothing and return nil. This function accepts any number of arguments, but ignores them." (interactive)) (defalias 'error #[(&rest args) "\f\"C\"" [signal error apply format args] 5 "\ Signal an error, making error message by passing all args to `format'."]) (defalias (quote user-original-login-name) (quote user-login-name)) (defalias 'start-process-shell-command #[(name buffer &rest args) "=\f $\f #P%" [system-type vax-vms apply start-process name buffer args shell-file-name "-c" "exec " mapconcat identity " "] 10 "\ Start a program in a subprocess. Return the process object for it. Args are NAME BUFFER COMMAND &rest COMMAND-ARGS. NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer or (buffer-name) to associate with the process. Process output goes at end of that buffer, unless you specify an output stream or filter function to handle the output. BUFFER may be also nil, meaning that this process is not associated with any buffer Third arg is command name, the name of a shell command. Remaining arguments are the arguments for the command. Wildcards and redirection are handled as usual in the shell."]) (defalias 'save-match-data '(macro . #[(&rest body) "!\nDCB\nDEE)" [make-symbol "match-data" original let (match-data) unwind-protect progn body store-match-data] 6 "\ Execute the BODY forms, restoring the global value of the match data."])) (defalias 'shell-quote-argument #[(argument) "\f#' \f O TOR T \fOP+" ["" 0 nil end start result string-match "[^-0-9a-zA-Z_./]" argument "\\"] 6 "\ Quote an argument for passing as argument to an inferior shell."]) (defalias 'make-syntax-table #[(&optional oldtable) "! X!\f I TX5\f I T$XI\f I T8X]\f I TL\f*" [oldtable copy-syntax-table nil i table 0 31 13 65 90 97 122 128 255] 4 "\ Return a new syntax table. It inherits all letters and control characters from the standard syntax table; other characters are copied from the standard syntax table."])